Chinaunix首页 | 论坛 | 博客
  • 博客访问: 273116
  • 博文数量: 76
  • 博客积分: 1500
  • 博客等级: 上尉
  • 技术积分: 594
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-05 23:43
文章分类

全部博文(76)

文章存档

2014年(4)

2013年(3)

2012年(20)

2011年(49)

分类: LINUX

2011-10-19 20:32:18

在开机的时候就将我要的档案系统都挂好呢,这样我就不需要每次进入Linux系统都还要在挂载一次 方法就是直接到/etc/fstab里面去修修就行了! 不过,在开始说明前,这里要先跟大家说一说系统挂载的一些限制:

  • 根目录/是必须挂载的﹐而且一定要先于其它mount point被挂载进来。
  • 其它mount point必须为已建立的目录﹐可任意指定﹐但一定要遵守必须的系统目录架构原则
  • 所有mount point在同一时间之内﹐只能挂载一次。
  • 所有partition在同一时间之内﹐只能挂载一次。
  • 如若进行卸载﹐您必须先将工作目录移到mount point(及其子目录)之外。

让我们直接查阅一下/etc/fstab这个档案的内容吧!

cat /etc/fstab
Device(第一栏) Mount point(第二栏) filesystem(第三栏) parameters(第四栏) dump(第五栏) fsck(第六栏)
LABEL=/1 / ext3 defaults 1 1
LABEL=/home /home ext3 defaults 1 2
LABEL=/boot /boot ext3 defaults 1 2
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
LABEL=SWAP-hdc5 swap swap defaults 0 0

#上述特殊字体的部分与实际硬盘有关!其他则是虚拟档案系统或与记忆体置换空间(swap)有关。

其实/etc/fstab (filesystem table)就是将我们利用指令进行挂载时,
将所有的选项与参数写入到这个档案中就是了。

除此之外,/etc/fstab还加入了dump这个备份用指令的支援!
与开机时是否进行档案系统检验等指令有关。

这个档案的内容共有六个栏位,这六个栏位非常的重要 一定要背起来才好。各个栏位的详细资料如下:

第一栏:硬盘装置档名该装置的Label:
这个栏位请填入档案系统的装置档名。
但是由上面表格的预设值我们知道系统预设使用的是Label名称! 在鸟哥的这个测试系统中/dev/hdc2标头名称为/1,所以上述表格中的『LABEL=/1』也可以被取代成为『/dev/hdc2』的意思。 至于Label可以使用指令来查阅的。
记得有一次有个网友写信给鸟哥,他说,依照的设定去练习修改自己的partition的Label name之后,却发现,再也无法顺利开机成功! 后来才发现,原来他的/etc/fstab就是以Label name去挂载的 但是因为在练习的时候,将Label name改名字过了,导致在开机的过程当中再也找不到相关的Label name了。 
    所以啦,所以,这里再次的强调,利用装置名称(ex> /dev/hda1)来挂载partition时,虽然是被固定死的,所以您的硬盘不可以随意插在任意的插槽,不过他还是有好处的。而使用Label name来挂载,虽然就没有插槽方面的问题,不过,您就得要随时注意您的Label name! 尤其是新增硬盘的時候 ^_^ 

第二栏:挂载点(mount point):就是挂载点啊!挂载点是什么? 一定是目录啊~要知道啊!

第三栏:硬盘分区的文件系统:
在手动挂载时可以让系统自动测试挂载,但在这个档案当中我们必须要手动写入档案系统才行!
 包括ext3, reiserfs, nfs, vfat等等。

第四栏:文件系统参数:
记不记得我们在这个指令中谈到很多特殊的档案系统参数? 还有我们使用过的『-o iocharset=cp950』? 这些特殊的参数就是写入在这个栏位啦! 这里我们利用表格的方式再汇整一下:

参数內容意義内容意义
async/sync 
非同步/同步
设定硬盘是否以非同步方式运作!预设为async(效能较佳)
auto/noauto 
自动/非自动
当下达mount -a时,此文件系统是否会被主动测试挂载。 预设为auto。
rw/ro 
可读写/唯读
让该分区以可读写或者是唯读的型态挂载上来,如果你想要分享的资料是不给使用者随意变更的,这里也能够设定为唯读。则不论在此档案系统的档案是否设定w权限,都无法写入喔!
exec/noexec 
可执行/不可执行
限制在此档案系统内是否可以进行『执行』的工作? 如果是纯粹用来储存资料的,那么可以设定为noexec会比较安全,相对的,会比较麻烦!
user/nouser 
允许/不允许使用者挂载
是否允许使用者使用mount指令来挂载? 一般而言,我们当然不希望一般身份的user能使用mount啰,因为太不安全了,因此这里应该要设定为nouser!
suid/nosuid 
具有/不具有suid权限
该档案系统是否允许SUID的存在?如果不是执行档放置目录,也可以设定为nosuid来取消这个功能!
usrquota注意名称是『 usrquota 』不要拼错了! 这个是在启动filesystem支援模式,更多资料我们在第四篇再谈。
grpquota注意名称是『 grpquota 』,启动filesystem对群组磁碟配额模式的支援。
defaults同时具有rw, suid, dev, exec, auto, nouser, async等参数。 基本上,预设情况使用defaults设定即可!

第五栏:能否被dump备份指令作用:
dump是一个用来做为备份的指令(我们会在中谈到这个指令),我们可以透过fstab指定哪个档案系统必须要进行dump备份! 0代表不要做dump备份, 1代表要每天进行dump的动作。 2也代表其他不定日期的dump备份动作,通常这个数值不是0就是1!

第六栏是否以fsck检验磁区:
开机的过程中,系统预设会以检验我们的filesystem是否完整(clean)。
 不过,某些filesystem是不需要检验的,例如记忆体置换空间(swap) ,或者是特殊档案系统例如/proc与/sys等等。 所以,在这个栏位中,我们可以设定是否要以fsck检验该filesystem喔。0是不要检验, 1表示最早检验(一般只有根目录会设定为1), 2也是要检验,不过1会比较早被检验啦! 一般来说,根目录设定为1 ,其他的要检验的filesystem都设定为2就好了。

/etc/fstab是开机时的设定档,不过, 实际filesystem的挂载是记录到/etc/mtab/proc/mounts这两个档案当中的 。每次我们在更动filesystem的挂载时,也会同时更动这两个档案! 但是,万一发生您在/etc/fstab输入的资料错误,导致无法顺利开机成功,而进入单人维护模式当中,那时候的/可是read only的状态,当然您就无法修改/etc/fstab ,也无法更新/etc/mtab~那怎么办?没关系,可以利用底下这一招:

mount -n -o remount,rw /

阅读(1403) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~