linux文件系统管理.docx_第1页
linux文件系统管理.docx_第2页
linux文件系统管理.docx_第3页
linux文件系统管理.docx_第4页
linux文件系统管理.docx_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

文件系统管理在Linux服务器中,格式化好的文件系统要有一个“挂载”的过程,然后才能通过挂载点文件夹访问该文件系统。那如何挂载各种不同类型的文件系统、如何使服务器开机后或在需要时自动挂载,是运维工程师必然会遇到的问题。1查看/识别Linux文件系统。2文件系统挂/卸载、配置自动挂载。3使用autofs触发挂载。1查看、识别Linux文件系统1)使用e2label查看EXT分区的卷标(格式:e2label 设备名)查看文件系统/dev/sda1的卷标:1. rootsvr5 # e2label /dev/sda12. /boot查看文件系统/dev/sdb1的卷标:1. rootsvr5 # e2label /dev/sdb1 /输出为空,未设置卷标2.3. rootsvr5 #查看文件系统/dev/sdb5的卷标(不支持非EXT分区):1. rootsvr5 # e2label /dev/sdb5 /无法将Swap分区视为EXT分区2. e2label: Bad magic number in super-block while trying to open /dev/sdb53. Couldnt find valid filesystem superblock.2)使用e2label设置EXT分区的卷标(格式:e2label 设备名 卷标名)将文件系统 /dev/sdb1 的卷标设为 disk2part1:1. rootsvr5 # e2label /dev/sdb1 disk2part1 /设置卷标2. rootsvr5 # e2label /dev/sdb1 /查看设置结果3. disk2part1若要取消已设置的卷标名,直接将其设为空串即可:1. rootsvr5 # e2label /dev/sdb1 /将卷标设为空串2. rootsvr5 # e2label /dev/sdb1 /查看设置结果3.4. rootsvr5 #3)查看块存储设备的ID识别信息1. rootsvr5 # blkid /dev/sdb1 /查看sdb1的ID信息2. /dev/sdb1: UUID=d7182c46-a0ab-48f4-982c-c05a892434ef SEC_TYPE=ext2 TYPE=ext3 LABEL=disk2part13. rootsvr5 # blkid /dev/sdb5 /查看sdb5的ID信息4. /dev/sdb5: TYPE=swap4)查看EXT分区的超级块信息使用tune2fs -l列出文件系统设备/dev/sdb1的超级块信息:1. rootsvr5 # tune2fs -l /dev/sdb12. tune2fs 1.39(29-May-2006)3. Filesystem volume name: disk2part14. Last mounted on:5. Filesystem UUID: d7182c46-a0ab-48f4-982c-c05a892434ef6. Filesystem magic number:0xEF537. Filesystem revision #:1(dynamic)8. Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file9. Default mount options:(none)10. Filesystem state: clean11. Errors behavior: Continue12. Filesystem OS type: Linux13. Inode count:244320014. Block count:4885760 /总的存储块个数15. Reserved block count:24428816. Free blocks:4765027 /空闲块的数量17. Free inodes:244318918. First block:019. Block size:4096 /默认存储块的大小20. Fragment size:409621. Reserved GDT blocks:102222. Blocks per group:3276823. Fragments per group:3276824. Inodes per group:1628825. Inode blocks per group:50926. Filesystem created: Mon Sep 3002:24:06201327. Last mount time: Mon Sep 3002:56:16201328. Last write time: Mon Sep 3003:24:03201329. Mount count:130. Maximum mount count:2231. Last checked: Mon Sep 3002:24:06201332. Check interval:15552000(6 months)33. Next check after: Sat Mar 2902:24:06201434. Reserved blocks uid:0(user root)35. Reserved blocks gid:0(group root)36. First inode:1137. Inode size:12838. Journal inode:839. Default directory hash: tea40. Directory Hash Seed: 53eab693-7c13-4edf-805b-15448415660941. Journal backup: inode blocks2文件系统挂/卸载、配置自动挂载1)mount挂载的基本使用格式:mount 选项 设备名 挂载点其中,挂载点必须是一个文件夹,设备名为包含有效文件系统的磁盘分区、网络共享、镜像文件等,典型的选项有“-t 文件系统类型”。但在Linux系统中,通常-t选项可以省略,由系统自动识别,查看/etc/filesystems文件了解当前所支持的文件系统:1. rootsvr5 # cat /etc/filesystems2. ext33. ext24. nodev proc5. nodev devpts6. iso96607. vfat8. hfs9. hfsplus比如,以下操作将格式化/dev/sdb2分区,并将其挂载到/media/tools文件夹:1. rootsvr5 # mkfs.ext3 /dev/sdb22. .3. rootsvr5 # mkdir /media/tools /创建挂载点文件夹4. rootsvr5 # mount -t ext3 /dev/sdb2 /media/tools/ 5. /挂载设备sdb2,其中 -t ext3 可省略若要了解当前已挂载了哪些文件系统,可执行不带参数的mount命令:1. rootsvr5 # mount /列出当前已挂载的文件系统2. /dev/sda2 on / type ext3(rw) /根文件系统3. proc on /proc type proc(rw) /伪文件系统/proc4. sysfs on /sys type sysfs(rw) /伪文件系统/sys5. devpts on /dev/pts type devpts(rw,gid=5,mode=620)6. /dev/sda1 on /boot type ext3(rw)7. tmpfs on /dev/shm type tmpfs(rw)8. none on /proc/sys/fs/binfmt_misc type binfmt_misc(rw)9. none on /proc/fs/vmblock/mountPoint type vmblock(rw)10. sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs(rw)11. /dev/sdb1 on /home type ext3(rw) / /home文件系统12. /dev/sdb2 on /media/tools type ext3(rw) /刚挂载的sdb2注:其中伪文件系统不占用实际的磁盘空间。或者,使用df可查看当前挂载的磁盘文件系统,-h人性化修按时、-T列出文件系统类型;与直接mount查看的输出相比,隐藏了proc、sysfs等伪文件系统,阅读起来更加直观简洁:1. rootsvr5 # df -hT2. 文件系统 类型 容量 已用 可用 已用% 挂载点3. /dev/sda2 ext3 19G 6.5G 12G 36%/4. /dev/sda1 ext3 99M 47M 48M 50%/boot5. tmpfs tmpfs 500M 0 500M 0%/dev/shm6. /dev/sdb1 ext3 19G 193M 18G 2%/home7. /dev/sdb2 ext3 19G 173M 18G 1%/media/tools成功挂载设备以后,通过挂载点来访问对应的设备,比如从/dev/sdb2读取数据、写入数据:1. rootsvr5 # ls /media/tools/test.file /写入测试文件2. rootsvr5 # ls -ld /media/tools/* /测试读取3. drwx- 2 root root 16384 09-30 09:03 /media/tools/lost+found4. -rw-r-r- 1 root root 310 09-30 09:25 /media/tools/test.file2)mount挂载时设备名的表示设备名除了直接以设备文件的路径表示以外,也可以用卷标、UUID等方式来表示。同一个文件系统可以挂载多次、到不同的挂载点目录。以卷标的方式挂载/dev/sdb2:1. rootsvr5 # e2label /dev/sdb2 tools /为sdb2设置卷标2. rootsvr5 # mkdir /media/tools2 /新建一个挂载点3. rootsvr5 # mount LABEL=tools /media/tools2/ /以卷标方式挂载sdb24. rootsvr5 # mount | grep sdb2 /确认挂载结果5. /dev/sdb2 on /media/tools type ext3(rw)6. /dev/sdb2 on /media/tools2 type ext3(rw)以UUID的方式挂载/devsdb2:1. rootsvr5 # blkid /dev/sdb2 /查看设备sdb2的UUID2. /dev/sdb2: LABEL=tools UUID=b2f33fce-a5bb-4cad-8e58-b85dbcc5d3e3 TYPE=ext33. rootsvr5 # mkdir /media/tools3 /再新建一个挂载点4. rootsvr5 # mount UUID=b2f33fce-a5bb-4cad-8e58-b85dbcc5d3e35. /media/tools3 /以UUID方式挂载sdb26. rootsvr5 # mount | grep sdb2 /确认挂载结果7. /dev/sdb2 on /media/tools type ext3(rw)8. /dev/sdb2 on /media/tools2 type ext3(rw)9. /dev/sdb2 on /media/tools3 type ext3(rw)3)umount卸载指定的设备尽管一个设备可挂载到多个位置,但为了避免混乱,尽量还是别这么做。使用umount命令可卸载已挂载的设备:1. rootsvr5 # umount /media/tools3 /以指定挂载点的方式卸载2. rootsvr5 # mount | grep sdb2 /确认卸载结果3. /dev/sdb2 on /media/tools type ext3(rw)4. /dev/sdb2 on /media/tools2 type ext3(rw)5. rootsvr5 # umount /dev/sdb2 /以指定设备名的方式卸载6. rootsvr5 # mount | grep sdb2 /确认卸载结果7. /dev/sdb2 on /media/tools type ext3(rw)4)使用mount挂载不同的设备/文件系统将光盘挂载到已有的/media/tools3文件夹:1. rootsvr5 # mount /dev/cdrom /media/tools3 /挂载光盘设备2. mount: block device /dev/cdrom is write-protected, mounting read-only 3. rootsvr5 # mount | grep iso96604. /dev/hdc on /media/tools3 type iso9660(ro)在RHEL5系统中,光盘设备/dev/cdrom是一个符号链接,实际指向系统识别到的真正的光盘设备:1. rootsvr5 # ls -lh /dev/cdrom /dev/hdc2. lrwxrwxrwx 1 root root 309-3001:08/dev/cdrom - hdc3. brw-rw-1 root disk 22,009-3001:08/dev/hdc从刚刚挂载的RHEL5光盘目录中,找到images/boot.iso镜像文件,复制出来并挂载到文件夹/media/tools2/,查看其中包含的文档:1. rootsvr5 # ls -lh /media/tools3/images/boot.iso2. -r-r-r-4 root root 15M 2012-11-30/media/tools3/images/boot.iso3. rootsvr5 # cp /media/tools3/images/boot.iso /usr/src/4. /复制boot.iso作为测试文件5. rootsvr5 # mount -o loop /usr/src/boot.iso /media/tools26. /挂载.iso镜像时,需添加-o loop选项7. rootsvr5 # mount | grep loop /确认挂载结果8. /usr/src/boot.iso on /media/tools2 type iso9660(rw,loop=/dev/loop0)9. rootsvr5 # ls /media/tools2/ /查看镜像文件包含的内容10. isolinux TRANS.TBL将FAT32分区/dev/sdb6挂载到新建挂载点/media/mp4,测试读写:1. rootsvr5 # mkdir /mnt/mp4 /建立挂载点目录2. rootsvr5 # mount /dev/sdb6 /mnt/mp4/ /挂载sdb63. rootsvr5 # mount | grep sdb6 /确认挂载结果4. /dev/sdb6 on /mnt/mp4 type vfat(rw)5. rootsvr5 # echo Test Baby./mnt/mp4/w.file /测试写入成功6. rootsvr5 # cat /mnt/mp4/w.file /测试读取成功7. Test Baby.特殊情况下,也可以将一个文件夹挂载到另一个文件夹,以下操作可将/usr/src/文件夹挂载到/media/tools/src/,使得从/media/tools/src/目录也可以访问/usr/src/目录下的内容:1. rootsvr5 # mkdir /media/tools/src /建立挂载点目录2. rootsvr5 # mount -bind /usr/src/media/tools/src/3. /挂载文件夹时,需使用 -bind选项4. rootsvr5 # mount | grep bind /确认挂载结果5. /usr/src on /media/tools/src type none(rw,bind)6. rootsvr5 # ls /media/tools/src/usr/src/ /对比源目录和挂载点7. /media/tools/src/:8. boot.iso debug httpd-2.2.25 kernels redhat vmware-tools-distrib9.10. /usr/src:11. boot.iso debug httpd-2.2.25 kernels redhat vmware-tools-distrib5)umount -a卸载所有已挂载的设备1. rootsvr5 # mount /确认卸载前的挂载情况2. /dev/sda2 on / type ext3(rw)3. proc on /proc type proc(rw)4. sysfs on /sys type sysfs(rw)5. devpts on /dev/pts type devpts(rw,gid=5,mode=620)6. /dev/sda1 on /boot type ext3(rw)7. tmpfs on /dev/shm type tmpfs(rw)8. none on /proc/sys/fs/binfmt_misc type binfmt_misc(rw)9. none on /proc/fs/vmblock/mountPoint type vmblock(rw)10. sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs(rw)11. /dev/sdb1 on /home type ext3(rw)12. /dev/sdb2 on /media/tools type ext3(rw)13. /dev/hdc on /media/tools3 type iso9660(ro)14. /usr/src/boot.iso on /media/tools2 type iso9660(rw,loop=/dev/loop0)15. /usr/src on /media/tools/src type none(rw,bind)16. rootsvr5 # umount -a /卸载所有可卸载的设备17. umount:/var/lib/nfs/rpc_pipefs: device is busy18. umount:/: device is busy /不能卸载正在使用的设备执行umount -a操作后,再次确认时可发现,此前挂载的sdb1、sdb2、boot.iso等设备,以及系统默认的/boot分区都已经卸载掉了:1. rootsvr5 # mount /查看卸载后的挂载情况2. /dev/sda2 on / type ext3(rw)3. proc on /proc type proc(rw)4. sysfs on /sys type sysfs(rw)5. devpts on /dev/pts type devpts(rw,gid=5,mode=620)6. sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs(rw)6)mount -a挂载所有已在/etc/fstab文件中配置的设备(交换分区除外)1. rootsvr5 # mount -a /挂载所有已在fstab配置的设备2. rootsvr5 # mount /确认挂载结果3. /dev/sda2 on / type ext3(rw)4. proc on /proc type proc(rw)5. sysfs on /sys type sysfs(rw)6. devpts on /dev/pts type devpts(rw,gid=5,mode=620)7. sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs(rw)8. /dev/sda1 on /boot type ext3(rw)9. tmpfs on /dev/shm type tmpfs(rw)7)通过配置文件/etc/fstab实现开机自动挂载为交换分区/dev/sdb5配置自动挂载,下次开机后无需手动执行:1. rootsvr5 # vim /etc/fstab2. .3. LABEL=SWAP-sda3 swapswapdefaults 00 /原有的交换分区4. /dev/sdb5 swapswapdefaults00 /新增加的交换分区为/home分区/dev/sdb1配置自动挂载,下次开机后无需手动执行:1. rootsvr5 # vim /etc/fstab2. .3. LABEL=SWAP-sda3 swapswapdefaults 00 /原有的交换分区4. /dev/sdb5 swapswapdefaults00 /新增加的交换分区5. /dev/sdb1/homeext3defaults00 /设置/home挂载修改完成后,可以执行mount -a来自动挂载,检查发现/home挂载成功:1. rootsvr5 # mount -a2. rootsvr5 # mount | grep home3. /dev/sdb1 on /home type ext3(rw)对于已经在/etc/fstab有对应设置的设备,执行卸载、挂载操作时,设备名和挂载点只需要指定其中一个参数就可以完成,比如下列对/dev/sdb1的卸载、挂载操作:1. rootsvr5 # umount /dev/sdb1 /卸载sdb1设备2. rootsvr5 # mount | grep /dev/sdb1/检查发现已成功卸载3. rootsvr5 # mount /dev/sdb1 /挂载sdb1设备4. rootsvr5 # mount | grep /dev/sdb1 /检查发现已成功挂载5. /dev/sdb1 on /home type ext3(rw)6. rootsvr5 # umount /home /卸载/home文件夹7. rootsvr5 # mount | grep /dev/sdb1 /检查发现已成功卸载8. rootsvr5 # mount /home /卸载/home文件夹9. rootsvr5 # mount | grep /dev/sdb1 /检查发现已成功挂载10. /dev/sdb1 on /home type ext3(rw)3使用autofs触发挂载1)了解autofs自动文件系统服务利用autofs可实现触发挂载,需要访问挂载点时自动挂载预先配置的设备统,不再使用挂载点时(300秒)则卸载对应的设备,其功能由默认安装的autofs软件包提供:1. rootsvr5 # rpm -qi autofs2. Name : autofs Relocations:(not relocatable)3. Version :5.0.1 Vendor: Red Hat, Inc.4. Release :0.rc2.177.el5 Build Date:2012年11月12日 星期一 12时03分35秒5. Install Date:2013年07月10日 星期三 17时15分58秒 Build Host: 6. Group : System Environment/Daemons Source RPM: autofs-5.0.1-0.rc2.177.el5.src.rpm7. Size :2090983 License: GPL8. Signature : DSA/SHA1,2012年11月13日 星期二 19时49分50秒, Key ID 53268101370171869. Packager : Red Hat, Inc.10. Summary : 自动挂载和卸载文件系统的工具。11. Description :12. autofs是一个后台程序,当你使用某文件系统时自动支持该系统,不使用时则不支持。这些文件系统包括网络文件系统,CDROM,软盘及其它。查看触发挂载主配置文件/etc/auto.master:1. rootsvr5 # grep -vE #|$/etc/auto.master2. /misc /etc/auto.misc /定义本地挂载父目录/misc3. /net -hosts /网络挂载4. +auto.master /主配置映射优先其中第一列为存放挂载点(触发挂载时,挂载点目录会自动重新创建)的父目录,第二列为对应的资源位置。比如上例中的“/misc /etc/auto.misc”,表示将根据资源文件/etc/auto.misc内的设置在/misc/文件夹下自动建立挂载点。查看默认的资源配置文件/etc/auto.misc:1. rootsvr5 # grep -vE #|$/etc/auto.misc2. cd -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom唯一启用的一列有效配置,定义了自动挂载点/misc/cd所对应的设备/dev/cdrom和挂载参数(-o iso9660,ro,nosuid,nodev) 。使用触发挂载需确保autofs服务在运行,当然,RHEL 5.9系统中autofs服务是默认自动开启的:1. rootsvr5 # service autofs status2. automount(pid 4037) 正在运行.3. rootsvr5 # chkconfig -list autofs4. autofs 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭未访问时自动卸载的超时时间在/etc/sysconfig/autofs文件内定义:1. rootsvr5 # grep TIMEOUT/etc/sysconfig/autofs2. TIMEOUT=3002)查看自动挂载点/misc/cd,验证触发挂载未访问/misc/cd的情况下,此目录是不存在的:1. rootsvr5 # ls -lh /misc /默认为空目录2. 总计 0使用ls命令访问一次/misc/cd,看到什么了:1. rootsvr5 # ls /misc/cd /可看到光盘内的目录和文件2. Clu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论