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

1)计算机是由运算器、控制器、存储器、输入设备和输出设备组成的。

2)功能:

  运算器:核心部件是加法器,做一些简单的二进制运算(逻辑运算和算术运算),有加减乘除等,乘除减法也是换算为加法进行的。

  控制器:控制整个计算机各部件的协调工作;控制器和运算器合称为CPU

  存储器:是编址存储设备,内存里的每个空间都是有地址的;

      存储运算器所需运算的数据和运算后的结果数据;

  输入设备和输出设备是IO设备,它们不是最主要的部件,是与外面部件交互的设备,速度慢;常用的IO设备:磁盘、网卡、键盘、鼠标、显示器等;


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

Linux三大主流发行版:slackwaredebianredhat

  slackware:是基于SLS的发行版,但是SLS昙花一现;特点:安装灵活,目录结构严谨,版本力求稳定而非追新;不依赖图形界面的文本化系统配置、传统的服务管理方式和不解决依赖的包管理方式。

    SuSEslackware的二次发行版,欧洲最为流行;第一个版本出现在1994年年初,2004年被Novell公司收购。20114,Attachmate集团完成了对Novell(包括SUSE业务)的收购把Novell拆分成两个独立部门运营,SUSE作为一个独立的业务部门。

      opensuse:slackware的三次发行版,开源的;

  debian:三大发行版中唯一一个不是由商业化组织维护的;比较原汁原味的Linux,主要是专业人士使用;

    Ubuntu:基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发版放弃了Gnome桌面环境,改为Unity6个月会发布一个新版本;目标:为一般用户提供一个最新的、同时又相当稳定的操作系统;

      mint:基于Ubuntulinux发行版, 是一个为PCX86电脑设计的操作系统;可以在Linux Mint下访问Windows分区;

  redhat:分为桌面版和企业版RHEL,从redhat 7.0后开始发行RHEL,升级到redhat9.0之后就不维护桌面版了,把桌面版捐给Fedora进行维护,主要用于测试新软件、新驱动程序。

    RHELredhatenterprise linux20101111日发布EnterpriseLinux 6正式版,包含更强大的可伸缩性和虚拟化特性,并全面改进系统资源分配和节能。RHEL一般每18个月发行一个新版本;

    CentOSCommunityENTerprise Operating System;中文意思是:社区企业操作系统,主要由一个社区进行维护;是一个基于RHEL提供的可自由使用源代码的企业级Linux发行版本;兼容RHEL的格式,更新一般晚RHEL一个月左右;2014年,被redhat收购。CentOS 7201477号正式发布;

    Fedora Fedora是基于Red HatLinux的发行版,大约每6个月发行一个新版本;Red HatLinux终止发行后,红帽公司计划以Fedora来取代Red Hat Linux在个人领域的应用,而另外发行的RHEL则取代Red Hat Linux在商业应用的领域。对于用户而言,它是一套功能完备、更新快速的免费操作系统;Red Hat公司而言,它是许多新技术的测试平台,被认为可用的技术最终会加入到RHEL中。

  ArchLinux:是一个完全独立的分支,以轻量、简洁、代码最小化为设计理念;Arch项目受 CRUX 发行版启发,由 JuddVinet2002年启动。

  Gentoo:是一种可以针对任何应用和需要而自动优化和自定义的特殊的Linux发行版;拥有优秀的性能、高度的可配置性和一流的用户及开发社区;有一套先进的包管理系统叫作Portage(用Python编写的);20110309日,GentooLinux 11.0 发布,该版本使用最新稳定内核2.6.37版本。

  LFSLinux Fromscratch;是一本书,叫你如何自己制作一个linux系统;


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

1)在Linux系统上,一切皆文件;

     把几乎所有的资源,包括硬件设备都组织为文件格式;

2)组合小程序完成复杂任务;

     由众多单一目的的小程序组成,一个程序只实现一个功能,而且要做好。

3)尽量避免跟用户交互;

     目标:实现脚本编程,以自动完成某些功能;

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

     目标:使用一款文本编辑器即能完成系统配置工作;


4、说明Linux系统上命令的使用格式;详细介绍ifconfigechottystartxexportpwdhistoryshutdownpoweroffreboothwclockdate命令的使用,并配合相应的示例来阐述。

答:命令使用格式:

     COMMAND [OPTION . . . ][ARGUMENTS . . . ]

      选项:用于启动或关闭命令的某个或某些功能;

        短选项:-c,例如:-l-h

          多个短选项可合并使用,例如:-l -h,可写作-lh

        长选项:--word,例如:--long--human-readable

             长选项一般不能合并使用;

       参数:命令的作用对象,用于向命令提供数据的;


ifconfig命令:

  用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在系统重启后就会失效;想把配置信息永久保存的话,就需要修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0,这里ifcfg-eth0为第一块网卡的配置文件。

 

实例:

 

显示网络设备信息(激活状态的):

[root@c66-moban~]# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:02:12:34 

          inet addr:192.168.1.110  Bcast:192.168.1.255  Mask:255.255.255.0

          inet6 addr:fe80::20c:29ff:fe02:1234/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500 Metric:1

         RX packets:178 errors:0 dropped:0 overruns:0 frame:0

          TX packets:100 errors:0 dropped:0overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:18842 (18.4 KiB)  TX bytes:12005 (11.7 KiB)

 

lo        Link encap:Local Loopback 

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:65536 Metric:1

          RX packets:4 errors:0 dropped:0overruns:0 frame:0

          TX packets:4 errors:0 dropped:0 overruns:0carrier:0

          collisions:0 txqueuelen:0

          RX bytes:380 (380.0 b)  TX bytes:380 (380.0 b)

 

说明:

eth0 表示第一块网卡,HWaddr表示网卡的物理地址,inet addr表示网卡的IP地址,Bcast是广播地址,Mask是子网掩码;

lo 是主机的回环地址,一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回坏地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。

  第四行:UP表示网卡是开启状态,RUNNING表示网卡的网线已连接上,MTU:65536表示最大传输单元是65536字节;

  第五、六行:表示接受、发送数据包情况统计;

  第八行:接收、发送数据字节数统计信息。

 

临时启动和关闭指定网卡:

~] #ifconfig eth0 up      #启动eth0网卡;

~] #ifconfig eth0 down    #禁用eth0网卡;

 

配置IP地址:

~] #ifconfig eth0 192.168.1.100

~] #ifconfig eth0 192.168.1.100 netmask 255.255.255.0

~] #ifconfig eth0 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255


设置最大传输单元:

~] # ifconfig eth0 mtu 1500     #设置能通过的最大数据包大小为1500字节;


echo命令:

  回显命令,用于在shell中打印shell变量的值,或者直接输出指定的字符串。

  语法:

     echo [选项] [参数]

  选项:

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

    -e :允许使用转义符;

      \a :发出警告声;

      \b :删除前一个字符;

      \c :最后不加上换行符号;

      \f :换行,但光标仍旧停留在原来的位置;

      \n :换行,且光标移至行首;

      \r :光标移至行首,但不换行;

      \t :插入制表符Tab

      \v :与 \f相同;

      \\ :插入“\”字符;

      \nnn  :插入nnn(八进制)所代表的ASCII字符;

 

   实例:用echo命令打印带有色彩的文字;

      设置文字色:

       ~]# echo -e"\e[1;31mThis is red text\e[0m"

   This is red text

  说明:

    \e[1;31m:将颜色设置为红色;

    \e[0m:将颜色重新置回;

  前景色颜色码:

重置=0,黑色=30,红色=31,绿色=32,×××=33,蓝色=34,洋红=35,青色=36,白色=37

 

     设置背景色:

      ~]# echo -e "\e[1;42mGreed Background\e[0m"

  Greed Background

 

 说明:

 背景色颜色码:重置=0,黑色=40,红色=41,绿色=42,×××=43,蓝色=44,洋红=45,青色=46,白色=47

 

设置文字闪动:

[root@c66-moban ~]# echo -e "\033[37;31;5mMySQL ServerStop...\033[39;49;0m"

MySQL Server Stop...    (此处红色字体在闪动)

 

说明:

    红色数字处还有其他数字参数:0关闭所有属性,1设置高亮度(加粗),4下划线,5闪烁,7反显,8消隐;


tty命令:

   打印连接到标准输入的终端的文件名;

  语法:

    tty [选项]. . .

   选项:

      -s--silent--quiet :什么也不打印,只是返回退出状态码;

      --help:打印帮助信息;

      --version:打印版本信息并退出;

 

   返回状态码:

      0 表示标准输入是一个终端;

      1 表示标准输入不是一个终端;

      2 表示给定的参数是不正确的参数;

      3 表示发生了写错误;

 

  实例:

  查看当前的标准终端文件描述符号:

    [root@c66-moban~]# tty

/dev/pts/1

说明:这里输入tty之后,输出“/dev/pts/1”就是当前连接的终端对应的文件描述符号,我们可以通过向这个文件写入数据,这样会看到当前终端会输出我们写入的数据,例如:

[root@c66-moban ~]# echo mytest >/dev/pts/1

mytest

可见,向/dev/pts/1文件写入的内容,直接显示到我们的终端上面了。如果我们在机器上面开了多个终端,然后在别的终端上输入上面的echo命令,那么将会看到对应“/dev/pts/1”的终端上面会显示相应的字符了。


startx命令:

  用来启动X window,实际上启动Xwindow的程序是xinitxinit命令是linuxX-window系统的初始化程序,主要完成X服务器的初始化设置;

 

  实例:

    启动图形界面:

     ~]# startx     #前提是有安装了图形界面;

 

    强制启动图形界面:

     ~]# startx –w

 

    使用 .xinitrc脚本启动图形界面:

     ~]# startx -x  .xinitrc

 

    使用mwm窗口管理器启动图形界面:

     ~]# startx -m mwm


export命令:

  用于将shell变量或shell函数输出为环境变量;一个变量创建时,它不会自动地为它之后创建的shell进程所知;而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原来脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。

  语法:

     export选项 参数

  选项:

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

     -n:删除指定的变量;变量实际上并未删除,只是不会输出到后续指令的执行环境中;

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

 

  实例;

    查看已经存在的环境变量:

     ~]# export    # 默认是有加–p;

 

pwd命令:

   以绝对路径的方式显示用户当前工作目录;

   语法:

      pwd [选项]

   选项:

     -L--logicaluse PWD from environment, even if it contains symlinks

     -P--physicalavoid all symlinks

     --help :显示帮助信息;

     --version :显示版本信息;

 

   实例:

    显示当前工作目录:

     [root@ilinux~]# pwd

     /root


history命令:

  管理命令历史;登录shell时,会读取命令历史文件(~/.bash_history)中记录下的命令;登录shell后新执行的命令只会记录在缓存中,这些命令会在用户退出时“追加”到命令历史文件中;

  语法:

     history [选项] [参数]

  选项:

     -a:将历史命令缓冲区中的命令追加到历史命令文件中;

     -c:清空当前历史命令;

     -d:删除命令历史中指定的命令;

    -w:将历史命令缓冲区中的命令覆盖到历史命令文件中;

  参数:

     n:显示最近的n条历史命令;


  快捷操作:

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

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

     !!:重复运行上一条命令;

 

  实例:

    [root@ilinux~]# history 5   #显示最近使用的5条命令;

    242  manhistory

    243 history 3

    244 history 10

    245  cd-

    246 history 5

    [root@ilinux~]# !245     #调用命令历史中第245条命令;

    cd-

    /tmp

    [root@ilinuxtmp]# !tou    #调用命令历史中最近一个以tou开头的命令;

    touchinstall.log

    [root@ilinuxtmp]# !!      #重复运行上一条命令;

    touchinstall.log


shutdown命令:

  系统关机命令;shutdown可以关闭所有程序,并依用户的需要,进行重启或关机操作;

  语法:

     shutdown [选项] [参数]

  选项:

     -c:取消操作;

     -hhalt,将系统关机;

     -rreboot,系统重启;

     -f:重启时不执行fsck

     -F:重启时执行fsck

        fsck命令用于检查并且试图修复文件系统中的错误;

     -k:只发送信息给所用用户,但不会实际关机;

     -n:不调用init程序进行关机,而是由shutdown自己进行;

     -t<秒数> :发出警告信息和删除信息之间要延迟多少秒;

 

     注意:不加任何选项的话,是进入单用户模式,可用exit退出单用户模式;

         例如:shutdown now  立刻进入单用户模式;

 

  参数:

     [时间] :设置多久后执行shutdown命令;

        now :立刻,或者写0

        + m :相对时间表示法,从命令提交开始多少分钟之后;例如:+3

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

     [警告信息] :要发送给所有登录用户的信息;

 

  实例:

    指定现在立刻重启:

     ~]# shutdown –r now

 

    指定5分钟后关机,同时发送警告信息给登录用户;

     ~] # shutdown –h +5  “Systemwill shutdown after 5 minutes!”

 

    指定1200重启系统:

     ~]# shutdown –r 1200 


poweroff命令:

  关闭系统并切断电源;

  语法:

      poweroff  [选项]

  选项:

     -n:关闭系统不执行sync操作;Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的时候再写入磁盘,以提高系统的运行效率。sync命令可用来强制将内存缓冲区中的数据立即写入磁盘中。

     -d:关机时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;

     -f:强制关机;

     -i:关机之前先关闭所有的网络接口;

     -h:关机前将系统中所有的硬件设置为备用模式;

  实例:

    如果系统中已没有用户登录且所有数据都已保存,需要立刻关机,可使用poweroff命令:

     ~]# poweroff


reboot命令:

  重启系统;

   语法:

      reboot  [选项]

   选项:

      -d:重新开机时,不把数据写入记录文件 /var/log/wtmp

      -f:强制重启,不调用shutdown命令;

      -I:在重启之前先关闭所有的网络接口;

      -n:重启前不检查是否有未结束的程序;

      -w:仅做测试,并不真正重启系统,只会把重启的数据写入到 /var/log/wtmp记录文件中;

  实例:

     ~]# reboot   # 重启系统;

     ~]# reboot  -w   #做个重启的模拟(只有记录,并不会真的重启);


hwclock命令:

   是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可以设置系统时间为硬件时钟的时间。

   Linux中有硬件时钟和系统时钟两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS里面设定的时钟;系统时钟则是指linux内核通过CPU的工作频率进行计时的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有linux相关指令与函数都是读取系统时钟的设定。

  语法:

      hwclock  [选项]

  选项:

     -s- -hctosys :将系统时钟调整为与目前的硬件时钟一致;

     -w- -systohc :将硬件时钟调整为与目前的系统时钟一致;

     --adjust hwclock每次更改硬件时钟时,都会记录在 /etc/adjtime文件中。使用- -adjust选项,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟。

     --debug :显示hwclock执行时详细的信息;

     --directisa hwclock预设从 /dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟。

     --set –date=<日期与时间> :设定硬件时钟;

     --show :显示硬件时钟的时间与日期;

     --test :仅测试程序,而不会实际更改硬件时钟;

     --utc :若要使用格林威治时间,加入此参数,hwclock会执行转换的工作;

     --version :显示版本信息;

 

   实例:

     查看当前的硬件时钟的时间:

       ~]# hwclock

 

     将硬件时钟调整为与系统时钟一致:

       ~]# hwclock –w       #方法一

       ~]# hwclock –systohc   #方法二

 

     将系统时钟调整为与硬件时钟一致:

       ~]# hwclock –s        #方法一

       ~]# hwclock –hctosys    #方法二

 

     查看clock文件,确认是否设置了UTC

       [root@ilinux ~]# cat/etc/sysconfig/clock    #redhat系列clock查看方式;

       ZONE="Asia/Shanghai"    #这里没有设置“UTC=false”,默认应该是启动了。

 

                             ~]#cat /etc/default/rcS      #一些其他版本系列的clock查看方式;


date命令:

  显示或设置系统时间与日期。很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC197011000秒起流逝的秒数。

 

  语法:

     date  [选项]  [参数]

  选项:

     -d<字符串> :显示字符串所指的日期与时间,字符串需加双引号;

     -s<字符串> :根据字符串来设置日期与时间,字符串需加双引号;

     -u:显示GMT

     --help:在线帮助;

     --version:显示版本信息;

  参数:

     <+时间日期格式> :指定显示时使用的日期时间格式;


  日期格式字符串列表:

     %H%k  小时,24小时制(00-23);

    %I,%l小时,12小时制(01-12);

     %M  分钟(00-59);

     %p  显示AMPM

     %r  显示时间,12小时制(hh:mm:ss%p

     %s  19701100:00:00到目前经历的秒数;

     %S  显示秒(00-59);

     %T  显示时间,24小时制(hh:mm:ss);

     %X  显示时间的格式(%H:%M:%S);

     %Z  显示时区,日期域(CST);

     %a  星期的简称(Sun~Sat);

     %A  星期的全称(Sunday~Saturday);

     %h%b  月的简称(Jan~Dec);

     %B  月的全称(January~December);

     %c  日期和时间(Tue Nov 2014:15:50 2015);

     %d  一个月的第几天(01-31);

     %x%D  日期(mm/dd/yy);

     %j  一年的第几天(001-365);

     %m  月份(01-12);

     %w  一个星期的第几天(0代表星期天);

     %W  一年的第几个星期(00-53,星期一为第一天);

     %y  年的最后两个数字(若2016,则显示16);

 

  实例:

    格式化输出:

     [root@ilinux~]# date +"%Y-%m-%d"  #此处用单引号也可以;

     2016-08-10

 

     输出昨天的日期:

     [root@ilinux~]# date -d "1 day ago" +"%Y-%m-%d"

      2016-08-09

 

     传说中的1234567890秒:

     [root@ilinux~]# date -d "1970-01-01 1234567890 seconds" +"%Y-%m-%d%H:%m:%S"

     2009-02-1323:02:30

                  

    普通转格式:

     [root@ilinux~]# date -d "2016-08-10" +"%Y/%m/%d %H:%M.%S"

      2016/08/1000:00.00

 

     apache格式转换:

     [root@ilinux~]# date -d "Aug 10, 2016 10:20:30 AM" +"%Y-%m-%d%H:%M.%S"   

      2016-08-1010:20.30

 

     格式转换后时间游走:

     [roo@t~]#date -d "Aug 10, 2016 10:20:30 AM 2 year ago"  +"%Y-%m-%d %H:%M.%S"

      2014-08-1010:20.30

 

    日期时间加减操作:

     [root@ilinux~]# date +"%Y-%m-%d"

     2016-08-10

     [root@ilinux~]# date -d "-1 day" +"%Y-%m-%d"

     2016-08-09

     [root@ilinux~]# date -d "+1 day" +"%Y-%m-%d"

     2016-08-11

     [root@ilinux~]# date -d "-1 month" +"%Y-%m-%d"  

     2016-07-10

     [root@ilinux~]# date -d "+1 month" +"%Y-%m-%d"

     2016-09-10

     [root@ilinux~]# date -d "-1 year" +"%Y-%m-%d"     

     2015-08-10

     [root@ilinux~]# date -d "+1 year" +"%Y-%m-%d"

     2017-08-10

 

    设定时间:

     ~]#date -s "2016-8-11 00:20"   #设置当前时间,只有root权限才能设置;

 Thu Aug 11 00:20:00 CST 2016

     ~]#date -s 20160811   

      ThuAug 11 00:00:00 CST 2016

     ~]#date -s 00:25:20        #设置具体时间,不会对日期做更改;

 Thu Aug 11 00:25:20 CST 2016

 ~]# date -s "00:27:00 2016-08-11"    #可以设置全部时间

 Thu Aug 11 00:27:00 CST 2016

 ~]# date -s "00:27:00 20160811"     #可以设置全部时间

 Thu Aug 11 00:27:00 CST 2016

 ~]# date -s "2016-08-11 00:27:00"    #可以设置全部时间

 Thu Aug 11 00:27:00 CST 2016

 ~]# date -s "20160811 00:27:00"     #可以设置全部时间

 Thu Aug 11 00:27:00 CST 2016


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

答:内部命令获取帮助:

     #help COMMAND


  外部命令获取帮助:

    1# COMMAND –help # COMMAND –h

    2)使用手册(manual

        # man COMMAND

    3)信息页

        # info COMMAND

    4)程序自身的帮助文档

        READMEINSTALLChangelog

    5)程序官方文档

       官方站点:Documentation

    6)发行版的官方文档

    7Google

    8slideshare

       http://www.slideshare.net/

        

   man手册页存放目录:/usr/share/man,分为man1man8,所有命令文件都是压缩存放的;

   man文档章节划分如下:

     man1:用户命令;

     man2:系统调用;

     man3C库调用;

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

     man5:配置文件格式;

     man6:游戏相关的;

     man7:杂项;

     man8:管理类的命令;

 

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

    查看指定章节中的手册:man # COMMAND  # 表示章节号)

  实例:

   [root@ilinux~]# man 5 passwd

   Formattingpage, please wait...

   PASSWD(5)     Linux Programmer’s Manual           PASSWD(5)

   NAME

          passwd - password file


  查看命令在哪些章节中有存放:whatis COMMAND


  实例:

     [root@ilinux~]# whatis passwd                                          passwd               (1)  - update user's authentication tokens

     passwd               (5)  - password file

     passwd[sslpasswd]          (1ssl)  - compute password hashes


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

答:

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

  /bin:供所有用户使用的基本命令;不能关联到独立分区,存放OS启动即会用到的命令;

  /sbin:管理类的基本命令,root用户才有权限使用的;不能关联到独立分区,存放OS启动即会用到的程序;

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

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

  /etc:配置文件存放目录(大多数是纯文本文件);

  /root:管理员的家目录;

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

  /media:便携式移动设备挂载点;

     /media/cdrom:挂载光盘;

     /media/usb:挂载usb设备;

  /mnt:临时文件系统挂载点;

  /dev:设备文件及特殊文件存储位置;

     bblock device,块设备是随机访问设备;

     ccharacter device,字符设备是线性访问设备;

  /opt:第三方应用程序的安装位置;

  /srv:系统上运行的服务用到的数据存储位置;

  /tmp:临时文件存放目录;

  /usruniversal sharedread-only data

     /usr/bin:保证系统拥有完整功能而提供的应用程序;

     /usr/sbin:管理员才有权限使用的命令;

     /usr/lib:常用的动态链接库和软件包的配置文件;

     /usr/lib64x86_64系统上常用的动态链接库和软件包的配置文件;

     /usr/includeC程序的头文件(header files);头文件是为了描述库文件的调用方式的;

     /usr/share:结构化独立的数据,例如:docman等;

     /usr/local:第三方应用程序的安装位置,取代早期的/opt;可以关联到完全独立的路径;

  /varvariable data files,存放一些经常变化的数据;

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

     /var/lib:存储应用程序状态信息数据;

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

     /var/lock:锁文件存储目录;

     /var/log:存放日志目录及文件;

     /var/opt:专用于为 /opt下的应用程序存储可变数据;

     /var/run:存放运行中的进程相关的数据;通常用于存储进程的pid文件;

     /var/spool:应用程序数据池;

     /var/tmp:保存系统两次重启之间产生的临时数据;

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

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

  /selinuxsecurity enhanced linux相关的安全策略等信息的存储位置;