我在给我的RHEL6.3分区时留了一个独立分区,每次开机后不会自动挂载,总要手动,不是很方便!所以今天来说下自动挂载分区的问题!
1.这个要先了解下/etc/fstab这个文件,因为是通过修改它来实现开机自动挂载的!
这个文件描述系统中各种文件系统的信息。一般而言,应用程序仅读取这个文件,而不对它进行写操作。在这个文件中,每个文件系统用一行文字来描述,在每一行中,用空格或tab符号来分隔字段,文件中以#开头的行是注释信息,文件中各字段的排序十分重要,因为fsck,mount或umount等程序会按这些顺序进行工作!
来看下示例:
fs_spec fs_file fs_type fs_options fs_dump fs_pass
/dev/hda1 / ext2 defaults 1 1
第一个是要挂载的设备,
第二个是要挂载到的目录,
第三个是文件系统格式,比如ext4,fat32,ntfs等等,
第四个是选项,指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来,对于大多数系统使用"defaults"就可以满足需要。其他常见的选项包括:
选项 含义
ro 以只读模式加载该文件系统
sync 不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是却降低了计算机速度
user 允许普通用户加载该文件系统
quota 强制在该文件系统上进行磁盘定额限制
noauto 不再使用mount -a命令(例如系统启动时)加载该文件系统
第五个是fs_dump - 该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0.文件系统频率(fs_freq),被dump程序使用来确定哪个文件系统需要dump,如果最后一个字段没有设置,系统将认为其值为0,而dump程序则认为此文件系统无需dump。
第六个是fs_pass- 该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0.被fsck程序所使用来确定进行在系统重启进行文件系统检查时的顺序,对于根系统/这个值应设为1,其它文件系统可以设为2,在同一个物理硬盘内的文件系统应该被顺序检测,而不同硬盘中的文件系统则应该同时检测以充分利用系统的并行性。如果最后一个字段值为0或没有设置,fsck程序装跳过此文件系统的检测。在linux编程中可以用getmntent过程来访问这个文件的内容。
2.OK,介绍完fstab文件,我们就开始做吧!
>1.先说自动挂载linux分区
先创建一个用来挂载设备的目录,这个目录最好是空的,因为挂载后这个目录下以前的内容将不可用
mkdir /point
我的那个分区是sda2,所以我们先打开fstab文件
vi /etc/fstab
按i或a时行编辑
在最后面加上
/dev/sda2 /point /ext4 default 0 0
这样就自动挂载上linux分区了
>2.现在说自动挂载windows分区,
先说fat32
参数codepage=936和iocharset=cp936以支持中文文件名
再说ntfs
要先下载安装ntfs模块或安装ntfs-3g软件,再就是你自己编译内核让它支持ntfs格式
如果是ntfs模块这样写/dev/sda2 /point ntfs umask=000,nls=utf8
如果是ntfs-3g这样写 /dev/sdb2 /point ntfs-3g default 0 0