Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3506064
  • 博文数量: 1450
  • 博客积分: 11163
  • 博客等级: 上将
  • 技术积分: 11101
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-25 14:40
文章分类

全部博文(1450)

文章存档

2017年(5)

2014年(2)

2013年(3)

2012年(35)

2011年(39)

2010年(88)

2009年(395)

2008年(382)

2007年(241)

2006年(246)

2005年(14)

分类: LINUX

2010-01-28 21:09:59

1、fstab文件的作用

   使用权限 : 超级使用者

  使用方式 : 使用编辑器来修改 /etc/fstab (eg. vi /etc/fstab)

  说明 : 存放档案系统与目录结构对应资料的档案

文 件/etc/fstab存放的是系统中的文件系统信息。当正确的设置了该文件,则可以通过"mount/directoryname"命令来加载一个文件 系统,每种文件系统都对应一个独立的行,每行中的字段都有空格或tab键分开。同时fsck、 mount、umount的等命令都利用该程序。

这个文件描述系统中各种文件系统的信息。一般而言,应用程序仅读取这个文件,而不对它进行写操作。对它的维护是系统管理员的工作。在这个文件中,每个文件系统用一行来描述,在每一行中,用空格或TAB符号来分隔各个字段,文件中以*开头的行是注释信息。Fstab文件中的纪录的排序十分重要。因为fsck,mount或umount等程序在做它们的工作时会按此顺序进行。 

2、下面是/etc/fatab文件的一个示例行:
fs_spec fs_file fs_type fs_options fs_dump fs_pass 
/dev/hda1 /   ext2  defaults    1    1 

fs_spec - 该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来说:IDE设备一般描述为 /dev/hdaXN,X是IDE 设备通道(a, b, or c),N代表分区号;SCSI设备一描述为/dev/sdaXN。对于NFS情况,格式一般为:,例如: `knuth.aeb.nl:/'。对于procfs,使用`proc'来定义。 对文件系统的定义(fs spec),它描述了将被装载的块设备或远程文件系统。对于通常的mount操作而言,这个字段应该包括一个将被装载的块设备的设备结点(通过mknod 命令来创建)或指向这类结点的连接(例如/dev/cdrom或/dev/sdb),对于NFS mount操作,这个字段应该包含host:dir格式的信息,例如:knuth.aeb.nl:/,对于进程文件系统procfs,使用proc。

  除了显示的使用设备名,你可以使用设备的UUID或设备的卷标签,例如,你可以在这个字段写成“LABAL=root”或 “UUID=3e6be9de -8139-11d1-9106-a43f08d823a6”,这将使系统更具伸缩性。例如,如果你的系统添加或移除了一个SCSI硬盘,这有可以改变你 的设备名,但它不会修改你的卷标签。

fs_file - 该字段描述希望的文件系统加 载的目录点,对于swap设备,该字段为none;对于加载目录名包含空格的情况,用40来表示空格。描述文件系统的载入点,对于交换分区(swap), 这个字段定义为none,如果在载入点的路径中包含空格符,可以用“\040”来替代空格符。

fs_type - 定义了该设备上的文件系统, 一般常见的文件类型为ext2 (Linux设备的常用文件类型)、vfat(Windows系统的fat32格式)、NTFS、iso9600等.文件 系统类型(fs vfstype),主要用来定义文件系统的类型。Linux系统支持大量的文件类型,包括sdfs,affs,autofs,jfs,minix, msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs,,smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs等等。如果想了解你的kernel目前支持哪些文件系统,可以查看/proc/filesystems的内容。如果这个字段定义为swap,这条纪 录将关联到一个用于交换目的的文件或分区。如果这个字段定义为ignored,这行将被忽略。这对于显示目前没有使用的分区非常有用。
 
fs_options  - 指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来。文件系统选项(fs mntops)在装载文件系统时使用的装载选项。多个选项之间用逗号做分隔符,这些选项列表包括了装载类型以及对于该文件系统合适的其它装载选项。对于非 NFS系统可用的装载选项可以参看mount命令的说明,对于nfs系统的选项可以查看关于nfs的文档。对于所有文件系统都适用的选项有noauto (当使用mount –a命令时不载入),user(允许用户进行装载),owner(允许设备所有人装载),_netdev(设备需要网络),后两个选项是linux系统所 特有的。

对于大多数系统使用"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过程来访问这个文件的内容。

3、修改/etc/fstab实现自动挂载Windows分区,并显示中文目录
LABEL=/            /               ext3      defaults                  1 1
none                  /dev/pts   devpts gid=5,mode=620 0 0
none                  /proc        proc    defaults                   0 0
none                  /dev/shm tmpfs defaults                   0 0
LABEL=/usr     /usr           ext3    defaults                   1 2
/dev/hda9          swap       swap defaults                    0 0
/dev/scd0         /media/cdrom0 udf,iso9660 ro,user,noauto 0 0
/media/Ubuntu-5.04-install-i386.iso /media/Ubuntu_5.04 iso9660 rw,loop 0 0
#添加如下几行
/dev/hda1 /mnt/win_c vfat codepage=936,iocharset=cp936 0 0
/dev/hda5 /mnt/win_d vfat codepage=936,iocharset=cp936 0 0
/dev/hda6 /mnt/win_e vfat codepage=936,iocharset=cp936 0 0

#soft选项告诉内核遇到网络问题时向用户进程发送I/O错误(EIO).默认的hard选项将导致进程被挂起,直到能够访问NFS服务器.
my.nfs.server.com:/path/on/server /path/on/client nfs rw,soft 0 0

4、对部分分区格式的支持需要编译相关的支持到内核了来实现,如NTFS。
阅读(889) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~