一些程序使用/etc/fstab
文件来确定哪些文件系统被默认加载了,加载的顺序以及哪些必须在加载前进行检查 (完整性错误校验)。如下所示创建一个新的文件系统表:
cat > /etc/fstab << "EOF"
# Begin /etc/fstab
# file system mount-point type options dump fsck
# order
/dev/<xxx>
/ <fff>
defaults 1 1
/dev/<yyy>
swap swap pri=1 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
devpts /dev/pts devpts gid=4,mode=620 0 0
tmpfs /dev/shm tmpfs defaults 0 0
# End /etc/fstab
EOF
使用你的系统上的适当值替换<xxx>
,<yyy>
和<fff>
, 比如hda2
,hda5
和ext3
。 关于文件中六个字段的详细信息,请参考man 5
fstab。
/dev/shm
挂载点是为了tmpfs
能包括启用POSIX共享内存。 这需要内核必须在编的时候支持这个选项才能起作用 (更多相关信息在下一章)。请注意, 目前很少软件使用POSIX共享内存。因而,认为/dev/shm
加载点是可选的。 更多信息,请参考内核源码目录中的Documentation/filesystems/tmpfs.txt
。
带有MS-DOS或Windows血统的文件系统 (比如 vfat, ntfs, smbfs,
cifs,iso9660, udf) 为了正确理解文件名中的非ASCII字符,需要“iocharset”加载点。 这个选项和你的所处位置特征是一样的, 用这个方式调整内核支持它。 如果需要操作相关的特征定义 (在 File systems -> Native Language Support下可找到) 可以编译进内核里或编译成模块。“codepage” 选项同样也是为 vfat 和 smbfs 文件系统所需要。 它应该被设置为 MS-DOS 在你的国家里使用的 codepage 数字号。举个例子,为了挂在 USB flash 设备,ru_RU.KOI8-R 的使用者需要在/etc/fstab
里的以下行:
noauto,user,quiet,showexec,iocharset=koi8r,codepage=866
ru_RU.UTF-8 使用者的相应行:
noauto,user,quiet,showexec,iocharset=utf8,codepage=866
在后面的例子里,内核发出如下信息
FAT: utf8 is not a recommended IO charset for FAT filesystems,
filesystem will be case sensitive!
这个否定的建议应该可以被忽略,因为所有的其他"iocharset" 值选项造成UTF-8 locales 文件名的错误显示。
在内核配置过程中, 对于一些文件系统, 也可以指定默认的代码页(codepage)和 iocharset 值。相应的参数被称为 “默认 NLS 选项” (CONFIG_NLS_DEFAULT
), “默认远程 NLS 选项” (CONFIG_SMB_NLS_DEFAULT
), “FAT 的默认 codepage ” (CONFIG_FAT_DEFAULT_CODEPAGE
), 和 “FAT 默认 iocharset” (CONFIG_FAT_DEFAULT_IOCHARSET
)。 在内核编译时, 没办法为ntfs文件系统指定这些设置。
对于一些硬盘类型,可以使 ext3 文件系统可靠地跨越停电(reliable across power failures)。要做到这一点,请将挂载参数barrier=1
加入到/etc/fstab
。 要检查是否磁盘驱动器支持这个参数,请在该磁盘驱动器上执行 hdparm
。例如,如果下面的命令:
hdparm -I /dev/sda | grep NCQ
返回非空的输出,就说明支持这个选项。
注意: 基于分区的逻辑卷管理 (LVM)不能使用barrier
参数。