发布时间:2014-09-05 16:46:40作者:知识屋
昨天,我们介绍的都是手动执行命令来实现挂载,如果你常常需要挂载某些文件系统,那么我如何让系统在启动时就自动挂载,应该怎样做呢?下面介绍两种方法:
方法1.
把挂载的命令放在/etc/rc.d/rc.local中。
这个虽然是一种方法,但不建议这么做,因为我们的系统中有统一规划的解决方案,所以建议用第二种方法。
方法2.
修改配置文件/etc/fstab,这个文件就是设置在启动时加挂的文件系统,下面我们就一起来研究一下/etc/fstab
[root@yufei ~]# cat /etc/fstab
此处省略多行无用信息
UUID=8e4f6141-20f9-4f5a-aad4-bac048374152 / ext4 defaults 1 1
UUID=c70cd6a4-09cd-4aea-ba94-f3641df4e981 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。#关于这些信息的查询可以通过tune2fs 或者是dumpe2fs来查询。
[root@yufei ~]# tune2fs -l /dev/sdb1 |more
[root@yufei ~]# dumpe2fs /dev/sdb1 |more
只显示有用信息
Filesystem volume name: opsers_tech
Last mounted on: /mnt
Filesystem UUID: 994ae2b7-d28a-4f7c-9464-c1763860378b
所以这一栏可以有下面三种表示方法,效果都是一样的,都是表示的是同一个设备。
/dev/sdb1
LABEL=opsers_tech
UUID=994ae2b7-d28a-4f7c-9464-c1763860378b
第二栏:挂载点。#强烈建议用一个空目录
第三栏:文件系统类型。#在手动挂载时可以让系统自动测试挂载,但在这个文件中必须要手动写入文件系统的类型。文件系统类型主要有:ext3、ext4、vfat、ntfs、nfs、smbfs、swap等等。
第四栏:文件系统参数。#这个和我们前面介绍的mount是一样的,在这里再做一个简单的介绍,因为这个很重要。
async/sync 异步/同步:设定磁盘的运作方式,预设为async(效能较佳),是把内容写入日志,然后保存到磁盘。
auto/noauto 自动/非自动:当下达mount -a 时,此文件系统是否会被主动测试挂载。预设为auto。
rw/ro 读写/只读:如果你想要分享的数据是不给用户随意变更的,就可以设置成ro的,无论在此文件系统的文件是否有w 权限,都是无法写入内容。
exec/noexec 可被执行/不可被执行:限制在此文件系统内是否可以进行执行的操作,如果此文件系统是纯粹用来储存资料的,那么可以设定为noexec 会比较安全。
user/nouser 允许/不允许其他用户挂载:正常情况下,系统为了安全,不希望一般身份的用户能使用mount命令的,因为太不安全了,默认是设定为nouser。
suid/nosuid 具有/不具有suid权限:该文件系统是否允许SUID的存在。因为这个也和系统的安全相关。如果不是执行文件存放的目录,可以设定为nosuid来取消这个功能。
usrquota 注意不要拼错了。这个是在启动文件系统的时候,让其支持磁盘配额,这个是针对用户的。
grpquota 和上面一样,支持用户组的磁盘配额。
defaults 同时具有rw, suid, dev, exec, acl, async参数。
而我们基本上预设使用defaults即可。
第五栏:能否被dump备份指令使用。#dump是一个用来备份的命令,我们可以通过fstab指定哪个文件系统必须要进行dump备份。0代表不要做dump备份,1代表要每天进行dump的动作,2也代表其他不定日期的dump备份。通常这个数值不是0就是1。
第六栏:是否用fsck 检验扇区:#开机的过程中,系统默认会用fsck检验文件系统是否完整。不过,某些文件系统是不需要检验的,例如swap以及特殊文件系统/proc、/sys等等。0是不要检验,1表示最先检验(一般只有根目录会设定为1),2也是要检验,只是1是最先,2是其次才进行检验。这一项只针对操作系统的分区有效果,其他的文件系统根据需要来设置,因为他不影响系统的引导。
特别提醒1:因为/etc/fstab这个文件和系统启动有很大的关系,如果你一不小心,把里面的内容写错了,可能导致系统无法启动。为了防止这个问题的发现,当你增加了相应的挂载内容后,最好用
mount -a命令进行一下测试,在没有错误的情况,才能保证下次在系统启动的时候是正常的。
特别提醒2:如果我在此文件中修改了相应的挂载参数的话,你需要用mount -o remount来重新使新的参数生效。而mount -a则是加载不了已经挂载了文件系统的参数信息。可以用mount命令查看到参数的信息。
最后我们把昨天格式化出来的分区写到/etc/fstab文件中。在开始编辑文件前,我再给大家介绍一个很实用的工具blkid,他会显示出系统中所有的文件系统的信息,包括设备名、卷标、UUID以及文件系统类型。下面的看效果
[root@yufei ~]# blkid
/dev/sda1: UUID="8e4f6141-20f9-4f5a-aad4-bac048374152" TYPE="ext4"
/dev/sda2: UUID="c70cd6a4-09cd-4aea-ba94-f3641df4e981" TYPE="swap"
/dev/sdb1: LABEL="opsers_tech" UUID="994ae2b7-d28a-4f7c-9464-c1763860378b" TYPE="ext4"
/dev/sdb2: SEC_TYPE="msdos" UUID="7F29-8A7A" TYPE="vfat"
[root@yufei ~]# vim /etc/fstab
/dev/sdb1 /mnt ext4 defaults 0 0
UUID=7F29-8A7A /test vfat defaults 0 0
[root@yufei ~]# mount -a
[root@yufei ~]# mount -a
没有错误提示,说明我们的配置是没有错误的,那么在下次系统启动后就不会有错误了,而导致系统启动不了。
启动系统后,用df -T来查看挂载在系统中的磁盘信息情况
[root@yufei ~]# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/sda1 ext4 15118728 6980432 7370296 49% /
tmpfs tmpfs 255784 0 255784 0% /dev/shm
/dev/sdb1 ext4 1033560 40980 939568 5% /mnt
/dev/sdb2 vfat 409424 0 409424 0% /test
用mount命令可以查看系统中的挂载情况
[root@yufei ~]# mount
/dev/sda1 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sdb1 on /mnt type ext4 (rw)
/dev/sdb2 on /test type vfat (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
none on /proc/fs/vmblock/mountPoint type vmblock (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/etc/fstab 是开机时的配置文件,实际上文件系统的挂载是记录在/etc/mtab 与/proc/mounts 这两个文件中的。如果万一在/etc/fstab中写入的数据错误时候,会导致无法顺利开机成功,而进入单人维护模式,而这时候/ 是只读的状态,要想修改/etc/fstab,就要用到下面这个常用的系统修复命令了。
mount -o remount,rw /
摘自 羽飞博客
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能