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

    计算机是由硬件和软件组成。

(一)硬件是由运算器、控制器、存储器、输入设备、输出设备组成。

1、  运算器:数据逻辑运算功能

2、  控制器:控制器从存储器中读取数据解析指令,调用运算器进行运算,使各组件在控制器的统一控制下完成功能。

3、  存储器:数据存储

4、  输入设备:向计算机输入信息的设备。

5、  输出设备:计算机向外输出信息的设备

(二)软件分为系统软件和应用软件,实现了用户与硬件交互的功能。

    系统软件:管理计算机硬件的程序

    应用软件:为实现某个特定功能的程序

 

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

    Linux主要分为三大系列

    1.  Slackeware:suse,opensuse

    2.  Debian:ubuntu,mint

    Debian是由社区组织、个人进行维护的,不是商业性质的。

    3.  Redhat: rhel,centos,fedora

    Rhel:企业版,是redhat公司为企业开发的linux版本,稳定但更新速度慢。

    Ferora:社区版,是社区组织、个人自己维护的,更新速度快。

    Centos:是rhel的克隆版

        还有ArchLinux,Gentoo很多分支发行版。

    不同的发行版是不同公司、个人或社区组织对Linux内核进行包装

 

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

1.一切皆文件

Linux将一切都视为文件统一化处理,包括设备文件。

2.由众多目的的小程序实现

通过命令组合实现复杂的功能,程序小实现的功能单一,程序重复利率用越高。

    3.尽量避免与用户交互:

        减少与用户的交互,实现脚本编程以自动完成某些功能,既减少了由于用户疏忽可能导致的错误,又加快了程序运行速度,I/O设备的速度比内存读取速度要慢。

    4.使用纯文本文件保存配置信息

 

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

    命令格式:COMMAND [OPTIONS..][ATGUMENTS]

    以下命令我只列出比较常用的选项。

    1)ifconfig:

      显示本机的网络配置信息

    选项:

    -a:显示所有接口信息

    Interface:显示指定接口信息

    up:打开某接口,当前会话有效,永久生效修改/etc/sysconfig/network-scripts下的接口文件,root用户才有权限执行此命令

    down:关闭某接口,同样只在当前会话有效

 

  2) echo:

    显示文本信息

    选项:

    -e:启用反斜杠转移功能

    -E:不启用反斜杠转移功能,默认

 

    eg.

[yannic@localhost~]$ echo "hello world\nyannic"
hello world\nyannic
[yannic@localhost~]$ echo -e "hello world\nyannic"
hello world
yannic

 

    3)tty

    显示连接的终端号


    4)startx

    初始化X协议窗口


    5)export

    为shell变量赋值

    用法:export [-fn][name[=value] ...]

    选项:

        -p:显示所有变量和函数的值

    eg.

export HOME="/home/yannic"  //当前会话生效,永久生效需要修改相应的文件
                            //比如.bash_profile

    6) pwd

    显示当前文件路径

    用法:pwd [OPTION]...

 

    7)       history

    显示历史命令。

    用户登录进系统后,显示历史文件中记录下的命令,当前会话的历史命令只会存储在内存中,只有退出再次登录后才会写入历史文件中。

    用法:history [options…]

    选项:

    -c:清除所有的历史记录

    -a:追加当前会话执行的命令到历史文件中

    -d:删除历史文件中某条历史命令

 

    eg.

    1.删除某条历史记录

[root@localhost ~]#history 5
   36 hwclock -w
   37 date
   38 hwclock
   39 man hwclock
   40 history 5
[root@localhost ~]#history -d 38
[root@localhost ~]#history 5
   37 date
   38 man hwclock
   39 history 5
   40 history -d 38
     41 history 5

    2.追加命令道历史文件中

[root@localhost ~]#tail .bash_history
cd
cd etc
cd /
ls
cd etc
ls
cd
ls
su - yannic
ifconfig eth0 down
[root@localhost ~]#history -a
[root@localhost ~]#tail .bash_history
hwclock
hwclock -w
date
man hwclock
history 5
history -d 38
history 5
tail .bash_profile
tail .bash_history
history –a

 

    8) shutdown

    关机

    用法:shutdown[OPTION]...  TIME [MESSAGE]

    选项:

    -r:重启系统

    -c:取消操作

    -h:关机

    参数:TIME:

       now:立刻

         +m:相对时间表示法,m分钟后执行操作

         hhmm:绝对时间表示法

    eg.

    1.3分钟后关机

[root@localhost ~]#shutdown +3
Broadcast messagefrom yannic@localhost.localdomain
         (/dev/pts/4) at 3:50 ...
The system is goingdown for maintenance in 3 minutes!

    2.取消关机

[root@localhost ~]#shutdown –c
shutdown: Shutdowncancelled

 

    9)poweroff

    关机

    用法:poweroff[OPTION]...

    选项:

    -f:强制立即关机,不建议,可能导致系统崩溃一些无法预测的错误

    -p:关机并且关闭电源


    10) reboot

    重启机器


    11) hwclock

    显示或设置硬件时钟

    用法:hwclock[functions] [options]

    选项:

    -w:将硬件时钟设置为系统时间

    -s:将系统时间为硬件时钟

    eg.

[root@localhost ~]#date
Mon Aug 15 19:16:02PDT 2016
[root@localhost ~]#hwclock
Mon 15 Aug 201612:17:33 PM PDT  -0.485509 seconds   //系统时间和硬件时钟不一致
[root@localhost ~]#hwclock -w
[root@localhost ~]#date
Mon Aug 15 19:17:21PDT 2016
[root@localhost ~]#hwclock
Mon 15 Aug 201607:18:29 PM PDT  -0.547804 seconds

 

    12)     date

    显示或设置系统时间

    用法:

    date [OPTION]...[+FORMAT]

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

    选项:

    %a:星期几

    %b:月份

    %c:日期和时间

    %d:几号

    %D:日期(%m/%d/%y)

    %F:日期(%Y-%m-%d)

    %H:小时(023)

    %M:分钟(00~59)

    %S:(00~59)

    %T:时间( %H:%M:%S)

 

    eg.

[root@localhost ~]# date +'%a'
Mon
[root@localhost ~]# date +'%b'
Aug
[root@localhost ~]# date +'%c'
Mon 15 Aug 2016 07:36:10 PM PDT
[root@localhost ~]# date +'%d'
15
[root@localhost ~]# date +'%D'
08/15/16
[root@localhost ~]# date +'%e'
15
[root@localhost ~]# date +'%F'
2016-08-15
[root@localhost ~]# date +'%h'
Aug
[root@localhost ~]# date +'%H'
19
[root@localhost ~]# date +'%T'
19:47:40

 

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

Linux系统获取命令帮助信息的方法:

1)  内部命令:help COMMAND

2)  外部命令

    1.COMMAND--help

      COMMAND -h

    2.使用手册(mannul)

      man COMMAND

    3.使用信息

      info COMMAND

    4.程序自身的文档

      readme,install,changelog

    man章节的划分:

        man1:用户用令

        man2:系统调用

        man3:C库调用

        man4:设备文件以及特殊文件

        man5:配置文件格式

        man6:游戏

        man7:杂项

        man8:管理类命令

        man9:内核

 

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

    /usr:该目录包含了用户所有的命令,程序库,文档和其他文件。

    /var:该目录包含了日志文件和操作中被改变的文件:加锁文件,临时文件等

/home:用户的家目录

    /root:root用户的家目录。

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

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

    /bin:该文件包含了基本命令和系统启动时需要的文件。该目录的文件可让普通用户执行。

    /sbin:该文件包含了高级命令和一些系统文件。该目录的文件不能被普通用户所执行。

    /etc: 操作系统的程序配置文件目录。

    /dev:设备文件所在的目录。

/lib:一些程序库和系统资源库文件所在目录。

/lib64:64位linux系统程序库

    /boot:开机时系统所需要加载的文件所在目录,GRUB文件也在内。

    /opt: 可选的程序安装目录。

/tmp:临时文件目录。关机后目录内容被删除。

/media:挂载其他存储设备

/mnt:临时文件系统挂载目录

 

如有错误之处,麻烦看官评论里指点一下,小女子不胜感激。