基础系列(二):FHS和man的使用

1、Linux文件系统目录

    Linux主要由文件系统、内核、shell和各种应用程序组成,通过将各种可利用资源模拟成文件的形式,利用shell接口的交互性,可以顺利访问到各文件。Linux文件系统分层标准(Filesystem Hierarchy Standard)为一个倒置的树状结构,通过根的自引用可以访问到文件系统之下的各个文件。在众多linux发行版之中,都遵循次原则,下面以centos7介绍一下各目录。

  wKioL1eYJ-2A6RDxAACv03MYjcM294.jpg

    /bin:普通用户可执行的二进制程序文件

    /sbin:系统管理命令,这里存放的是系统管理员使用的管理程序  

        注:在centos7上,/bin和/sbin都指向了/usr/bin和/usr/sbin  

    /boot:内核的存放位置以及引导系统的各种程序文件 

    /dev:设备特殊文件,包括字符设备和块设备文件

          字符设备文件:顺序访问,无缓存(键盘,鼠标[输入流必须按照特定的顺序])

              /dev/null

              /dev/zero

              /dev/tty

              用主设备号、此设备号加以区分

          块设备文件:随机访问,有缓存(光盘,硬盘[随机读取数据])

              /dev/sda

          设备号码:

              主设备号:major number, 标识设备类型

              次设备号:minor number, 标识同一类型下的不同设备

          设备文件是依靠这些设备号来识别设备文件的

    /etc:全局配置文件目录 

         /etc/rc.d 启动的配置文件和脚本
   /home:普通用户的家目录,比如用户user的主目录就是/home/user,可以用~user表示

    /root:系统管理员的主目录(呵呵,特权阶级)

   /lib:标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件

    /lib64:64位系统特有的存放64位共享库的的路径

        注:在centos7上,/lib和/lib64都指向了/usr/lib和/usr/lib64  

   /tmp:公用的临时文件存储点
   /mnt:系统提供这个目录是让用户临时挂载其他的文件系统

    /media:系统提供这个目录让用户挂载可移动设备
   /proc:伪文件系统,并不占用外存空间,是动态从系统内核读出所需信息并提交的,用户和应用程            序可以通过proc得到系统的信息,并可以改变内核的某些参数      

           /proc/meminfo

           /proc/cpuinfo

           /proc/partitions

    /sys:存放硬件信息的虚拟目录
   /var:存储各种变化的数据目录,像日志文件,网页文件,ftp站点文件
   /usr:HFS定义的二层文件系统,包含第三方应用程序文件、帮助文档和二进制程序等

          /usr/local:第三方程序的安装位置

          /usr/share/man:帮助文档     (分为不同的几个章节,如下,且在/etc/man.config中                                            使用man的MANPATH定义了这个路径)

          /usr/share/doc:帮助文档

          /usr/share/dict:linux字库

          /usr/bin:普通用户可执行的二进制程序文件

          /usr/sbin:系统管理命令,这里存放的是系统管理员使用的管理程序 

          /usr/lib:系统的库文件

          /usr/include:系统的头文件

    注:在centos6的一些版本之上的/misc目录之下,直接执行cd cd可以挂载光盘

centos7显示misc目录的方法

<span style="font-size:14px;"># 步骤一
[root@centos7/etc/yum.repos.d]#yum install autofs
Loaded plugins: fastestmirror, langpacks
make                                                                                                          | 2.9 kB  00:00:00     
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
...
# 步骤二
[root@centos7/etc/yum.repos.d]#systemctl start autofs
# 步骤三
[root@centos7/]#ls
a    boot  dev  f1     ftp   lib    media  mnt  opt   root  sbin  sys      testyum  usr
bin  data  etc  file1  home  lib64  misc   net  proc  run   srv   testdir  tmp      var</span>

说明了misc目录只不过时由一个软件包提供的服务而已。




2、linux帮助手册的使用

    使用帮助手册之前,使用type命令查看是内部命令还是外部命令

    type [COMMAND]

  wKioL1eYRXjhkIiIAAAW2hhuZ4Q194.png

    如果是内部命令

        help COMMAND

    如果是外部命令

        COMMAND --help

        man COMMAND

    *下面简单介绍一下man的使用

         Linux中使用man来查看各资源的帮助信息。man就是manual的缩写,用来查看系统中自带的各种参考手册,但是手册页分为好几个部分,如下所示

 

章节编号

 

章节名称

 

章节主要内容

 

1

 

GeneralCommands

 

用户在shell中可以操作的指令或者可执行文档

 

2

 

SystemCalls

 

系统调用的函数与工具等

 

3

 

Sunroutines

 

C语言库函数

 

4

 

SpecialFiles

 

设备或者特殊文件

 

5

 

FileFormats

 

文件格式与规则

 

6

 

Games

 

游戏及其他

 

7

 

MacrosandConventions

 

表示宏、包及其他杂项

 

8

 

MaintenenceCommands

 

表示系统管理员相关的命令

 

9

   

    <1>man的语法格式

        man [options] [arguments]

    <2>主要参数

        -a:显示查找资源的全部章节的帮助信息

        -k:以要查找的资源为关键字,在数据库中查找帮助信息

    <3>man手册的查看

        []:可选内容,不选择不会出错,只是不能执行某些功能

        <>: 必选内容

        a|b:二选一

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

    <4>man手册页的快捷键

        G:跳转到行首

        gg:跳转到行尾

        #:跳转到指定行

        space:向下翻一屏

        b:向上翻一屏

        ctrl+d:向下翻半屏

        ctrl+u:向上翻半屏

        enter:向下翻一行

        q:退出

    <5>man手册页的搜索

        /KEYWORD:以KEYWORD指定的字符串为关键字,向下搜索

        ?KEYWORD:以KEYWORD指定的字符串为关键字,向上搜索

            n: 跟搜索命令同方向

            N:跟搜索命令反方向

    <6>whatis数据库的创建

        有时候是可以查到某一命令或者文件的章节,但是无法使用man查看,此时要重新构建whatis数据库

        *centos6:makewhatis

        *centos7:mandb




3、小扩展

    <1>如果大家利用以上知识仍然无法获得帮助信息,可以访问以下站点

        https://redhat.com/docs

        http://tldp.org

    <2>如果阁下对英文实在不敏感,那就只能使用万能的Google了,再此分享几个小技巧,输入

        openstack filetype:pdf

            在Google中搜索与openstack相关的pdf文件

        rhca site:redhat.com/docs

            在redhat官网中查找rhca关键字的文档




4、bash中常用到的快捷键

    ctrl+a:光标移动到命令行首

    ctrl+e:光标移动到命令行尾

    ctrl+u:删除光标前面的所有字符

    ctrl+k:删除光标处的字符及其后面的全部字符

    ctrl+l:清屏

    clean:清屏




5、强引用、弱引用和反引号的区别

[root@centos7 ~]# echo "echo $USER"
echo root
[root@centos7 ~]# echo 'echo $USER'
echo $USER
[root@centos7 ~]# echo `echo $USER`
root




6、如何在centos中安装VMware Tools

    VMware Tools是cdrom自带的工具,可以选择性安装。VMware Tools的作用:包括可以自动捕获鼠标、文件的赋值粘贴操作、虚拟机驱动的更新等。

    <1>点击安装VMware Tools

    <2>VMware Tools会自动映射到/media目录下

    <3>复制VMware Tools到/tmp(当然可以是任意目录)

    <4>解压/tmp下的VMwareTools-9.9.3-2759765.tar.gz

    <5>进入/tmp/vmware-tools-distrib下,执行./vmware-install.pl -d

    <6>此过程会持续五分钟左右,此时VMware Tools的功能依然不可用,需要执行/usr/bin/vmware-user,再重启系统。

    <7>安装成功

    如果有安装失败的,可进入/tmp/vmware-tools-distrib/bin,执行./mware-uninstall-tools.pl,载重复以上过程即可。

    注意:此过程只是针对CentOS6,CentOS7上的VMware Tools将映射载/run/media目录下。不过安装VMware Tools和挂载本地光盘切不可同时进行。且在tty界面的话,VMware Tools将不再生效。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值