第一周作业(2016.8.7)

时间:2021-02-20 16:20:51

1、描述计算机的组成及其功能。

   计算机核心主要可分为三大类:*处理器cpu,存储器,输入输出设备。其中*处理器cpu(Central Processing Unit)包括算术逻辑单元和控制单元,

算术逻辑单元主要负责程序运算与逻辑判断,控制单元主要协调各组件之间的工作。存储设备包括内存,硬盘设备,光盘和U盘。输入输出设备包括键盘,

鼠标,显示器等。由上,我们知道了计算机的组成部分,那么他们是如何工作的,又实现了怎样的功能呢,下面我来一一到来。

下面我来做一个不恰当的比喻,假如把咱们的计算机比作是一个严密的蚂蚁王国,那么cpu中的控制单元作为蚁后控制着整个王国,蚁后将粮食库(内存)中的

美食(数据)通过高速公路(总线)传输到工蚁(算术逻辑单元)处。工蚁不愧是女王的护卫,忠心耿耿的执行者女王的每一项任务。美食通过工蚁的加工处理,

又通过高速公路运回了粮食库,最后粮食就被分发到各处小兵(所有的输入输出设备)手中。小兵们开始享用自己的美食,待准备完毕后,就要开始一项伟大的工作了。

哈哈,小蚂蚁的故事先讲到这里,下面我再来介绍一下计算机其他部件,除了上面介绍的cpu,内存,硬盘,键盘,鼠标,显示器外,咱们的计算机还包括主板,显卡和电源。

那么我先来说说主板吧,主板就像是一个伟大的蚂蚁王国,由藏兵洞(pcl,usb插槽),高速公路(总线,南北桥),蚁后皇宫(cpu插槽)粮食库(内存插槽,硬盘接口),

供电室(电源接口)组成,正因为有了这样一个平台,能使蚁后的命令到达王国各处,从此一个伟大的王国诞生了。那么一个王国老是闭关锁国是不成的,历史证明,闭关锁国终究是

坐井观天,王国虽小,却也需要通过外交将王国的土特产展示出去,于是独立显卡诞生了,世界也因此了解到在东方有一个强大的王国,在这个王国,召唤计算机七大部件可出现神龙,

帮助大家完成非常多的愿望。哈哈,说到这,大家可以发现,我们已经了解了七颗龙珠的六颗在哪了,最后一颗你出来吧!没错,就是他,他是整个王国的关键,没有它,王国将陷入瘫痪

他就是电(电源)。电源虽小,却发挥着巨大的作用,龙珠七颗,缺一不可。七颗集齐,召唤神龙!

2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。

linux的发行版:

slackware系列:

suse

二次发行:opensuse

debian系列:

ubuntu

mintLinux

redhat:

rhel:redhat enterprise linux

每18个月发行

CentOS:兼容rhel的格式,是rhel的社区版本

fedora:每六个月发行一个新版本,也是社区版,是新开发软件的测试地

ArchLinux:独立的版本

Gentoo:独立的版本

LFS:Linux From scratch

根据书本自行发行版本

Android:kernel+busybox+Java虚拟机

以上是马哥的笔记记载,同时我cp了一张详细图,见链接

http://futurist.se/gldt/wp-content/uploads/12.10/gldt1210.png


3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。

1.一切皆文件,所有的设备,资源,程序都是以文件形式存在

2.Linux主要由短小,且目的单一的程序组成(所以一个命令一般只干一件事)

3.将多个短小的程序串联起来可以完成复杂的任务

4.尽量避免捕获用户接口(尽量避免跟用户进行接触,从发起-->回车,全自动,不需要用户再操作)

5.通过文件保存软件的配置信息(只需要一个简单的文本编辑器就可以操作整个系统)

以上是马哥的笔记学习,我自己的想法是linux社区开源的精神是知识无国界,知识是全世界人民的宝贵财富。同时开源精神鼓舞我们热心的教导新手,大家一起进步。


4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。

ifconfig - 配置网络接口

ifconfig [接口] 

ifconfig 接口 [aftype] options | address ...  

常用的选项及参数

ifconfig :

显示所有的网卡配置信息

ifconfig -a:

显示所有的配置网络网卡

ifconfig eth#:

显示#网卡的配置信息

网卡eth#配置文件:

目录:/etc/sysconfig/network-scripts/ifcfg-eth#

DEVICE=: 设备名称,一般为eth#

BOOTPROTO={static|none|dhcp|bootp}: 使用静态地址:static或none;dhcp表示使用DHCP服务器获取地址;

IPADDR=: IPv4地址

NETMASK=:子网掩码

GATEWAY=:设定网关;

ONBOOT=:是否开机自启

HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省;

USERCTL={yes|no}: 是否允许普通用户控制此接口;

PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定

DNS配置文件:

目录:/etc/resolv.conf

domain DHCP

search DHCP HOST

nameserver  第一个DNS地址

nameserver  第二个DNS地址


setup管理器:可以通过setup查看或修改网卡配置信息

ifup/ifdown eth#:启动或停止网卡


echo:回显命令

-n:禁止自动添加换行符号

-e:允许使用转义符

\n:换行

\t:制表符

echo "$VAR_NAME":变量会替换,双引号表弱引用

echo '$VAR_NAME':变量不会替换,强引用


tty:显示当前登录的终端


startx:在终端上启动x会话


export:

设置或显示环境变量

export [-fnp][变量名称]=[变量设置值]

-f:代表变量名称为函数名称

-n:不输出此变量到后续环境中

-p:列出所有的shell赋予程序的环境变量

pwd:显示当前文件路径

路径:

绝对路径:从根目录起始的路径;

相对路径:从当前位置起始的路径;

当前位置的表示方式:

1. ./:

2.省略上述符号

3. ..表示当前目录的上一级目录


history:管理命令历史:

登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history

登录进shell后新执行的命令只会记录在缓存中:这些新执行的命令会在用户退出时“追加”至命令文件中

-a 手动追加本次会话新执行的命令历史列表到内存中

-d 删除命令 历史中指定的命令:使用编号指定

-c 清空命令历史

快捷操作: 

!#:调用历史中第#条命令:

!string:调用历史中最近一个以string开头的命令

!!:重复上一条命令


    环境变量:

HISTSIZE:命令历史记录的条数

HISTFILE:~/.bash_history:

HISTFILESIZE:命令历史文件记录历史的条数

调用上一条命令的最后一个参数

!$:

esc,.:

alt+.:

控制命令历史的记录方式:

环境变量:HISTCONTROL

     ignoredups:忽略重复的命令:连续且相同的命令

 ignorespace:忽略所有以空白开头的命令

 ignoreboth:ignoredups ignorespace:

修改环境变量值的方式:export 变量名=" 值 "

变量赋值:把赋值符号后面的数据存储于变量名指向的内存空间

shutdown:

1.可以*选择关机模式

2.可以设置关机时间

3.可以自定义推送关机消息

4.可以发出警告消息

5.可以选择是否检查文件系统

shutdown [OPTION]...  TIME [MESSAGE]

-r:重启

-h:关机

-c:取消关机或重启操作

TIME:

now:立刻

+m:相对时间表示,从命令提交开始多久之后:

hh:mm:绝对时间表示,指明具体时间


poweroff:关闭电源

poweroff -f


reboot:重启

-f:强制,不调用shutdown

-p:切断电源


hwclock:显示硬件时钟

-s --hctosys 跟随系统时间

-w --systohc 跟随硬件时钟

date:

date [OPTION]... [+FORMAT]  显示

date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 设置

MM 月份

DD 几号

hh 小时

mm 分钟

YY 两位年份

CCYY 四位年份

.ss 秒钟


5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。

内部命令:

# help COMMAND

外部命令:都有一个可执行程序,位于文件系统内 使用which,whereis

shell程序搜寻可执行程序文件的路径定义在PATH环境变量中

echo $PATH

内部帮助:hash:shell搜寻到的外部命令的路径结果会缓存至KV(key-value)存储中

hash:hits为命中值

-d 删除单条缓存

-r 删除全部缓存

外部帮助:

(1)# COMMAND --help

# COMMAND -h


(2)使用手册(manual)  

# man COMMAND

 

(3)信息页   支持超链接

# info COMMAND

(4)程序自身的帮助文档

README

INSTALL

ChangeLog

(5)程序官方文档

官方站点:Documentation

 

(6)发行版的官方文档

(7)Google

man:手册页存放:

/usr/share/man  man1-8

man1 :用户命令

man2 :系统调用

man3 :c库调用

man4 :设备文件及特殊文件

man5 :配置文件格式

man6 :游戏

man7 :杂项

man8 :管理类的命令

注意:有些关键在不止一个章节中存在帮助手册:

要查看指定章节中的手册:man # COMMAND

man命令的配置文件: /etc/man.config

MANPATH /PATH/TO/SOMEWHERE:指明新的手册文件搜索位置

man -M /PATH/TO/SOMEWHERE COMMAND :到指定位置下搜索COMMAND命令的手册页并显示之;

帮助手册中的段落说明:

NAME  名字

SYNOPSIS  使用简要帮助

DESCRIPTION 详细功能

OPTIONS 专用选项

EXAMPLES 使用事例

AUTHOR  作者

REPORTING BUGS 提交bug的联系人

SEE ALSO  参考方式

SYNOPSIS:

[]:可选内容

<>:必选内容

a|b:二选一

...:同一内容出现多次

{}:辅助符号

man命令的操作方法:

Space,carl+V 或+f 或+F 向下翻页

b carl+B 向文件首部翻屏

d carl+D 向文件尾部翻半屏

u carl+U 向文件首部翻半屏

Enter 或carl+N 或e 或carl+E 或j 或carl+]:向文件尾部翻一行

y或carl+Y 或carl+P 或k 或carl+K :向文件首部翻一行

q 退出

#;跳转至第#行

1G:回到文件首部

G:回到文件尾部

文本搜索:

/KEYWORD

以KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索;默认不区分大小写

n:下一个

N:上一个

?KEYWORD

以KEYWORD指定的字符串为关键字,从当前位置向文件首部搜索;默认不区分大小写

n:跟搜索命令同方向下一个

N:跟搜索命令反方向上一个

其他帮助文档:

info

info command

程序自身的帮助文档

/usr/share/doc/COMMAND-VERSION

程序官方文档

发行版的官方文档

http://www.redhat.com/docs

google

www.slideshare.net



6、请罗列Linux发行版的基础目录名称命名法则及功用规定

根文件系统:(rootfs):

root filesystem

LSB FHS:(filesystem Heirache Standard)

/etc /usr /var /root /home /dev 

/boot:引导文件存放目录,内核文件(vmlinuz),引导加载器(bootloader,grub)都存放于此目录

/bin:供所有用户使用的基本命令:不能关联至独立分区。0S启动即会用到的程序:

/sbin:管理类的基本命令:不能关联至独立分区。0S启动即会用到的程序:

/lib:基本共享库文件,以及内核模块文件(/lib/modules)

/lib64:专用于x86_64系统上的辅助共享库文件存放位置:

/etc:配置文件目录(纯文本文件):

/home/USERNAME:普通用户的家目录:

/root:管理员用户的家目录:

/media:挂载便携式移动设备(光盘,U盘)

cdrom

usb

/mnt:挂载临时设备

/dev:设备文件特殊文件目录

b:block device 随机访问

c:character device 线性访问

/opt:第三方应用程序存放目录

/srv:系统上运行的服务用到的中间数据

/tmp:临时文件存放目录

非系统开机要使用的目录

/usr:universal shared readable:read-only data:

bin:保证系统拥有完整功能:

sbin:保证系统拥有完整功能:

lib:

lib64:专用于x86_64系统上的辅助共享库文件存放位置:

incloud:c语言开发调用的头文件(header fils):

share:结构化的独立的数据, doc man

local:本地层级结构,第三方应用程序的安装位置

bin,sbin,lib,etc,share

/var:variable data files 可变数据文件存放

cache:应用程序缓存数据目录:

lib:应用程序状态信息存放目录:

local:专用于为/usr/local下的应用程序存储可变数据

lock:锁文件

log:日志目录及文件

opt:专用于为/usr/local下的应用程序存储第三方

run:与运行中程序相关的数据:通常用于存储进程的pid文件

spool:应用程序数据池

tmp:系统重启临时文件存放目录

mail:邮箱

/proc:用于输出内核与进程相关的虚拟文件信息:

/sys:输出当前系统上硬件设备相关信息的虚拟文件信息:

/misc:备用杂项文件

/lost+found:ext文件系统产生的文件碎片

/selinux:security enhanced Linux:安全增强机制


本文出自 “linux启航” 博客,请务必保留此出处http://jiayimeng.blog.51cto.com/10604001/1835161