转载http://xiexiaojun.blog.51cto.com/2305291/1669668
一、/etc/fstab文件的作用
磁盘被手动挂载之后都必须把挂载信息写入/etc/fstab这个文件中,否则下次开机启动时仍然需要重新挂载。
系统开机时会主动读取/etc/fstab这个文件中的内容,根据文件里面的配置挂载磁盘。这样我们只需要将磁盘的挂载信息写入这个文件中我们就不需要每次开机启动之后手动进行挂载了。
mount -a 将/etc/fstab的所有内容重新加载。
二、挂载的限制
1、根目录是必须挂载的,而且一定要先于其他mount point被挂载。因为根目录是所有目录的跟目录,其他木有都是由 根目录 /衍生出来的。
2、挂载点必须是已经存在的目录。
3、挂载点的指定可以任意,但必须遵守必要的系统目录架构原则
4、所有挂载点在同一时间只能被挂载一次
5、所有分区在同一时间只能挂在一次
6、若进行卸载,必须将工作目录退出挂载点(及其子目录)之外。
三、/etc/fstab文件中的参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | [root@localhost ~] # cat /etc/fstab # # /etc/fstab # Created by anaconda on Mon Jun 8 18:39:48 2015 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=3ca94f19-885f-4ceb-a358-e517936c29f5 / ext4 defaults 1 1 UUID=dbfbfa8d-65ca-48eb-9bb1-59fa3e929de6 /home ext4 defaults 1 2 UUID=5098319e-c317-441a-8997-dc2f8cf84dfb /usr ext4 defaults 1 2 UUID=a6e82449-fe6d-44cd-995f-7b6e27849b64 /var ext4 defaults 1 2 UUID=6e9b5627-b72d-4dcf-9d4b-5d42fc0f6bd4 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 UUID=c619d19f-3a52-4f3a-b295-79ed72e7c8d9 /test ext4 defaults 0 0 UUID=bfc5ca7b-e1f3-4211-b963-9ae4fc55267d /data ext4 defaults 0 0 |
第一列 Device
磁盘设备文件名或者该设备的Label或者UUID
1)查看分区的label和uuid
Label就是分区的标签,在最初安装系统是填写的挂载点就是标签的名字。可以通过查看一个分区的superblock中的信息找到UUID和Label name。
例如我们要查看/dev/sda1这个设备的uuid和label name
1 2 3 4 5 6 7 8 9 10 | [root@wpg u02] # dumpe2fs -h /dev/sda1 dumpe2fs 1.35 (28-Feb-2004) Filesystem volume name: /boot // 这个就是Label name Last mounted on: <not available> Filesystem UUID: 3b10fe13-def4-41b6-baae-9b4ef3b3616c //UUID Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super Default mount options: (none) Filesystem state: clean |
简单点的方式我们可以通过下面这个命令来查看
1 2 | [root@wpg u02] # blkid /dev/sda1 /dev/sda1 : LABEL= "/boot" UUID= "3b10fe13-def4-41b6-baae-9b4ef3b3616c" SEC_TYPE= "ext3" TYPE= "ext2" |
2)使用设备名和label及uuid作为标识的不同
使用设备名称(/dev/sda)来挂载分区时是被固定死的,一旦磁盘的插槽顺序发生了变化,就会出现名称不对应的问题。因为这个名称是会改变的。
不过使用label挂载就不用担心插槽顺序方面的问题。不过要随时注意你的Label name。
至于UUID,每个分区被格式化以后都会有一个UUID作为唯一的标识号。使用uuid挂载的话就不用担心会发生错乱的问题了。
第二列 Mount point
设备的挂载点,就是你要挂载到哪个目录下。
第三列 filesystem
磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
第四列 parameters
文件系统的参数
Async/sync
设置是否为同步方式运行,默认为async
auto/noauto 当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto
rw/ro 是否以以只读或者读写模式挂载
exec/noexec 限制此文件系统内是否能够进行"执行"的操作
user/nouser 是否允许用户使用mount命令挂载
suid/nosuid 是否允许SUID的存在
Usrquota 启动文件系统支持磁盘配额模式
Grpquota 启动文件系统对群组磁盘配额模式的支持
Defaults 同事具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置
第五列:能否被dump备份命令作用
dump是一个用来作为备份的命令。通常这个参数的值为0或者1
0 代表不要做dump备份
1 代表要每天进行dump的操作
2 代表不定日期的进行dump操作
第六列 是否检验扇区
开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean)。
0 不要检验
1 最早检验(一般根目录会选择)
2 1级别检验完成之后进行检验