项目二任务二:认识Linux的文件系统

子任务一:熟悉Linux系统中的目录结构
第1步:理解Linux系统的目录结构树

Linux使用的是目录结构,所以在安装的时候,安装程序已经为用户创建了文件系统和完整的固定目录组成形式,并指示了每个目录的作用和其中的文件类型。


打开虚拟机的CentOS选择root登入方便后面的操作。

点击打开计算机点击文件系统就可以看见Linux的目录结构了

Linux文件目录采用的是树型结构。最上层是根目录,其他的所有目录都是从根目录出发而生成的。微软的DOS和windows也是采用树型结构,但是在DOS和 windows中这样的树型结构的根是磁盘分区的盘符,有几个分区就有几个树型结构,他们之间的关系是并列的。但是在Linux中,无论操作系统管理几个磁盘分区,这样的目录树只有一个。从结构上讲,各个磁盘分区上的树型目录不一定是并列的。

第2歩对比理解Linux系统的文档结构

Linux的文件结构是呈现一个树的形式,树的根就是这个文件结构的根文件系统,使用/来表示,各分区通过mount载以文件夹的形式进行访问。文件与文件之间的衔接很密切,安装文件并不是像windows那样将一个软件的文件基本上都放在一个目录,而是按照不同的功能放在不同的位置 。

第3歩:列出Linux下一些常用目录的功能

/, 根目录。

/bin ,存放必要的命令。

/boot ,存放内核以及启动所需的文件(最好占一个分区)。

/dev,存放设备文件。

/etc ,存放系统配置文件(最好占一个分区)。

/home, 普通用户的宿主目录,用户数据存放在其主目录中(推荐占一个分区)。

/lib, 存放必要的运行库。

/mnt ,存放临时的映射文件系统,通常用来挂载使用。

/proc ,存放存储进程和系统信息。

/root ,超级用户的主目录(推荐占一个分区)。

/sbin ,存放系统管理程序。

/tmp ,存放临时文件。

/usr ,存放应用程序,命令程序文件、程序库、手册和其它文档。(推荐占一个分区)。

/var,在正常操作中被改变的文件。

子任务二:了解Linux系统中的路径规则

第1步:理解绝对路径

绝对路径路径的写法一定由根目录“/”写起,例如/usr/local/mysql 这就是绝对路径。

第2步:理解相对路劲

相对路径:路径的写法不是由根目录“/”写起,例如,首先用户进入到/ 然后再进入到home,命令为【cd /home】,然后使用【cd test】命令,此时用户所在的路径为/home/test。第一个cd命令跟/home,第二个cd命令后跟test,并没有斜杠,这个test是相对于/home目录来讲的,所以叫做相对路径。

子任务三:掌握Linux系统中的基本命令
 对于一个Linux新手来说,使用Linux命令来帮助执行任务是一个最基本的要求。下面这些命令是每一个Linux新手都必须掌握的基本命令。
第一步:使用【pwd】命令进入文件的目录

在Linux系统中,只显示当前工作的目录,没有显示完整的路径,使用【pwd】命令打印当前完整的工作路径。

选择一个文件夹右键选择在终端中打开就会出现输入命令的终端输入pwd回车就会打印出当前完整的工作路径


第二步:使用【cd】命令进入文件的目录
【cd】命令是Linux中最基本的命令语句,其他的命令语句要进行操作,都是建立在使用【cd】命令基础上的。
【cd/usr/local】进入到/usr/local目录。
【pwd】打印 当前工作目录。
【cd./】还是当前目录。

【cd../】进入当前目录的上级目录。


第三歩:使用【is】命令显示文件信息
【ls】命令是列表的命令,在【ls】命令后加上-1就是以长列表的形式显示出来。
【ls-1】或【11】显示当前文件夹内文件详细信息。
【ls-a】显示当前文件夹内隐藏文件。
【ls~】显示用户宿主目录的文件信息。

第四步:使用【more】或【less】命令分屏显示文件与目录
【more】以一页一页的形式显示文件。
【less】命令作用与【more】命令相似,都可以用来浏览文字档案的内容。
【j】以行为单位向下;【k】以行为单位向上。
【ls/etc/more】让/etc中文件与目录分屏显示,只能向下查看。

【ls/etc|less】让/etc中文件与目录分屏显示,可以上下查看。

【less/etc/squid/squid.conf】分屏显示squid.conf中的内容。

第五步:使用【cat】命令查看文件内容
【cat】通常用于查看某个文件的内容,主要有三大功能:
(1)一次性显示整个文件:【cat filename】。
(2)从键盘创建一个文件:【cat>filename】。
(3)将几个文件合并为一个文件:【cat lilel file2>file】。
【cat/etc/passwd】查看文件passwd文件中的内容。

【cat/etc/passwd|less】查看文件passwd文件中的内容,可以上下移动,按q键退出。

【cat/etc/fstab】查看/etc/fstab文件中的内容。
第六步:使用【mkdir】命令创建目录
【mkdir yhy】在当前路径中创建yhy目录。
【mkdir yhy1 yhy2 yhy3】在当前路径中同时创建yhy1、yhy2、yhy3共三个目录。


第七步:使用【touch】命令创建文件
【touch】命令用于创建的空文件或者修改已有的文件的时间戳,常用方法如下。
【touch fileA】如果fileA存在,使用【touch】指令可更改这个文件或目录的日期时间;如果其不存在,指令会在当前目录下新建一个空白文件fileA。
【touch file1 file2】在当前目录下创建文件file1和file2两个。
【touch/home/file1 file2】在/home目录下创建两个文件。
【touch -t 201601142234.50 log.log】设定文件的时间戳。
【mkdir dirl dir2】在当前目录下创建子目录。


第八步:使用【rmdir】命令删除目录
【rmidr/tmp/test/yhy】删除yhy目录。
【ls/tmp/test】查看目录下的文件及目录。
【mkdir-p d1/d2/d3】依次建立文件夹。
【rmdir-p d1/d2/d3】依次删除文件夹。
第九步:使用【rm】命令删除目录或者文件
【rmdir】命令只能删除目录但不能删除文件或非空目录,要想删除一个文件,则要用【rm】命令。
【rm-f/root/dir2/myfile1】使用绝对路径删除文件。
【rm-i/root/dir2/myfile2】-i当删除文件时会提示用户是否真的删除,如果删除,输入【y】,否则输入【n】。
【rm-rf/root/dir1】当删除目录时加-r选项。
【rm-rf/root/dir2】删除dir2子目录,包括里面的文件。

第十步:使用【cp】命令复制文件

【cp】命令用于复制文件或目录。

【cp /etc/grub.conf./】将/etc/grub.conf文件复制到当前目录中。

【cp /etc/passwd/root/passwd.bak】复制文件,并重命名。

【cp /root/*.mp3/soft/ab】复制扩展名为mp3的所有文件到/soft/ab目录中。

【cp-r-f/root/soft/ab】复制一个目录到另一个目录,同时删除前面已经存在的目录。

【cp file1 file2 dir1】将file1和 file2复制到dir1中。


第十一步:使用【mv】命令移动或重命名文件/目录
【mv】用来移动文件或将文件改名。
【mv1.txt2.txt3.txt test3】移动文件。
【mv-t/opt/soft/test/test4/1.txt2.txt3.txt】移动文件。
【mv file1 file2 dir2】将文件从当前目录移动至dir2。
【mv/dir2/file1/dir2/myfile1】将文件改名为myfile1。
【mv/root/abc.jpg/etc/kk】将文件移动到/etc文件夹下。
【mv at.doc abc.doc】将文件at.doc改名为abc.doc。
【mv kk.zip.kk.zip】将文件隐藏。
【mv .kk.zip kk.zip】将文件除去隐藏。
【mb-i1.txt 2.txt】将文件改名,如果文件已存在,则询问是否覆盖。

第十二步:重启与关机
【reboot】重启系统。
【shutdown-r now】立刻重启(root用户使用)。
【shutdown-r 10】过十分钟自动重启。
【shutdown-r 20:35】在时间为20:35时重启。
关机命令
【halt】立刻关机。
【poweroff】立刻关机。
【shutdown-h now】立刻关机(root用户使用)。
【shutdown-h 10】十分钟后自动关机。
第十三步:查看系统相关状态
(1)【df】命令显示磁盘占用空间。
(2)【free】命令用于显示系统内存的使用情况信息。
(3)【cat /proc/meminfo】命令查看内存使用的详细信息。
(4)【cat /procuinfo】命令查看CPU信息。





第十四步:熟悉以下常用命令及功能

(1)【ls-al/root>file1】将用户root的家目录的所有目录列表保存至文件file1中。
(2)【ls-al/bin|grep in>file2】将文件名中包含in字符的文件名保存至文件file2中。
(3)【cat file1 file2】同时显示文件的内容。
(4)【cat file1 file2>file3】将文件1、2中的内容合并成新文件3。
(5)【head file3】显示文件file3的前十行内容。
(6)【head 15 file3】显示文件的前十五行内容。
(7)【tail 3 file3】显示文件的后三行内容。
(8)【wc-lw file1】统计文件中的行数、字数。
(9)【grep-c root file1】统计文件中包含root的行数。
(10)【find.-name“file*”】查找文件名中包含了file的文件。
(11)【ls-1|grep-c“file”】查找当前目录中是否有文件名包含file的文件。
(12)【find/bin-size-1000c>myresult】查找是否有1000字节以下的文件,并将查找结果保存。
(13)【find/bin-size100-print】查找是否有100块以上的文件。
(14)【find/-user test】查找是否有用户test创建的文件。

(15)【cp/config*/bak】将所有文件名中包含了字符config的文件复制到目录/bak中。

(16)【cut-d:-fl/etc/passwd】提取用户名,统计个数,并将结果保存至文件中。
(17)【ls/bin-al|wc-l】统计/bin目录下的文件目录项数。
(18)【ls-al|per-pi-e's/rootaz/g'】将用户当前目录下的文件目录显示列表中的所有root替换成wqaz,并显示替换结果。

子任务四】挂载外部文件到Linux系统中

第一步:理解挂载的概念
    Liunx采用树形的文件管理系统,也就是在Linux系统中,可以说已经没有分区的概念了。分区在Linux和其他设备一样都只是一个文件。要使用一个分区必须把它加载到文件系统中。Linux中树形的文件结构,最顶层是/ 目录。在安装系统时,必须选择把一个主分区挂载在/ 目录下,因为系统需要安装在/挂载的主分区下。否则系统会提示。所以挂载就是把目录和分区连接起来,Linux的文件系统是树形的,安装的系统必须是在/ 目录下,因为/目录下挂载了一个主分区。/目录是树形的根,其他所有目录都是他的子节点。 我们安装系统的时候已经把分区1挂载到 / 目录下了, 而这个时候没有挂载其他任何分区,所以/ 目录下的所有其他目录都在这个分区下,也就是说,在任何目录下读写操作实际都是操作的这个1号分区。如果我们想使用其他分区,就必须把这个分区挂载到一个目录下,这个目录可以是已经存在的目录。

第二步:使用挂载命令的参数
命令格式:mount [-t vfstype] [-o options] device dir 
其中: 
-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有: 
Linux最早使用的文件系统:minix
Linux目前常用的文件系统:ext4、ext3、ext2
光盘或光盘镜像:iso9660 
DOS fat16文件系统:msdos 
Windows 9x fat32文件系统:vfat 
Windows NT ntfs文件系统:ntfs 
Mount Windows文件网络共享:smbfs 
UNIX(LINUX) 文件网络共享:nfs
 自动检测文件常用:auto
OS/2文件系统常用:hpfs
第三步:使用挂载命令选项
-o,指定挂载文件系统时的选项
 ro :采用只读方式挂接设备
 rw :采用读写方式挂接设备
 user:可以让一般用户挂载设备
nouser:使用一般用户无法挂载.
使用实例:
Windows 7系统挂载在hdal分区上,同时还挂载光盘和U盘。
【mkdir/mnt/winc】建立挂载点/mnt/winc。
【mount-t ntfs/deval /mnt/winc】挂载Windows 7的hdal分区
【mkdir/mnt/usb】建立挂载点/mnt/usb。
【mount-t vft /dev/sdal/mnt/sub】挂载U盘。
【mkdir/mntrom】建立挂载点/mntrom。
【mount-t iso9660/devrom/mntrom】挂载光盘。

【子任务五】掌握Linux系统中的自动挂载

   在给系统新增了磁盘以后,如果重启系统我们会发现找不到存储了;但是使用fdisk -l可以看到存储空间,说明存储还在。这是因为关机后,挂载已经自动卸载掉了。我们当然可以手动再次将其挂载,但如果每次重启都需要这样手动操作会很不方便;因此我们可以利用自动挂载,这样系统每次开机的时候就可以自动将磁盘挂载上去了。

自动挂载可以有两种方式。

1.修改/etc/fstab文件
  用vim打开 fstab文件,可以看到文件格式如下:


可以很明显的看到文件有6列。
      第一列可以是实际分区名,也可以是实际分区的卷标(Lable)。
如果磁盘是SATA接口,且有多个磁盘,则每个磁盘被标记为 /dev/hda 、 /dev/hdb、 /dev/hdc 等以此类推;而每个磁盘的分区被标记为 /dev/hda1、 /dev/hda2等。
如果磁盘是SCSI类型,则多个磁盘会被分别标记为 /dev/sda、/dev/sdb等等。分区同理。
如果使用标签来表示,则格式如:1 LABLE=/ 
 
       第二列是挂载点。
挂载点必须为当前已经存在的目录,为了兼容起见,最好在创建需要挂载的目标目录后,将其权限设置为777,以开放所有权限。
 
        第三列为此分区的文件系统类型。
Linux可以使用ext2、ext3等类型,此字段须与分区格式化时使用的类型相同。也可以使用 auto 这一特殊的语法,使系统自动侦测目标分区的分区类型。auto通常用于可移动设备的挂载。
 
      第四列是挂载的选项,用于设置挂载的参数。
常见参数如下:
auto: 系统自动挂载,fstab默认就是这个选项
defaults: rw, suid, dev, exec, auto, nouser, and async.
noauto 开机不自动挂载
nouser 只有超级用户可以挂载
ro 按只读权限挂载
rw 按可读可写权限挂载
user 任何用户都可以挂载
请注意光驱和软驱只有在装有介质时才可以进行挂载,因此它是noauto

       第五列是dump备份设置。
当其值设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作;

      第六列是fsck磁盘检查设置。
其值是一个顺序。当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。
       本文需将逻辑卷lv_study挂载到 /lvm_study ,文件系统为ext4 格式,不进行dump备份以及开机磁盘检查。
/dev/mapper/vg_study-lv_study  /lvm_study        ext4    defaults        0 0
      将上面的命令添加进fstab后,为了避免可能的错误,我们可以使用mount -a 命令来检验编辑的内容是否有错。执行mount -a命令后,用df -h查看会发现磁盘已经挂载成功,说明输入没有错误。下次重启的时候系统就可以自动进行挂载了。
实例图如下所示:

通常用户自动挂载的分区,第六列值应设置为2而不应该是1 。
 
 
注意:(1)根目录必须优先于其他挂载点
            (2)挂载点必须为已经存在的目录
            (3)卸载时必须保证当前磁盘没有发生读写操作
2.修改/etc/rc.d/rc.local文件
  将mount命令添加进rc.local文件是另一种实现开机自动挂载的方式

 mount /dev/mapper/vg_study-lv_study /lvm_study


猜你喜欢

转载自blog.csdn.net/tx16_38381516158/article/details/79600868