一、/etc/fstab和/etc/mtab的区别

1./etc/fstab

/etc/fstab是开机自动挂载的配置文件,在开机时起作用。相当于启动linux的时候,自动使用检查分区的fsck命令和挂载分区的mount命令,检查分区和挂载分区都是根据/etc/fstab中记录的相关信息进行的。

2./etc/mtab
/etc/mtab是当前的分区挂载情况,记录的是当前系统已挂载的分区。每次挂载/卸载分区时会更新/etc/mtab文件中的信息(执行mount命令会改变/etc/mtab的信息)。

3.区别
/etc/fstab是在开机时起作用,相当于在开机时执行了mount和fsck命令,系统根据/etc/fstab配置的信息自动挂载相关分区,自动挂载之后,/etc/mtab会被更新。
/etc/mtab是当前分区的挂载信息,如果挂载信息改变就会更新/etc/mtab文件。开机后,系统根据/etc/fstab的配置信息自动挂载分区,再更新/etc/mtab中的信息。
mount命令的使用不会改变/etc/fstab,而会改变/etc/mtab。

4.综上所述
/etc/fstab是记录开机自动挂载信息的配置文件,开机时自动挂载是根据这个文件进行的。而/etc/mtab是记录当前系统的挂载信息,每次系统挂载情况的改变都会更新/etc/mtab文件。

二、fstab 和 mtab 文件

没有这两个文件,计算机将找不到驱动器设备和分区。修改前一定要做好备份。

1./etc/fstab
描述了各种不同的文件系统。"fsck"和"mount"等命令都需要这些文件才能工作。/etc/fstab文件的存在价值就是,让计算机内的程序能知道如何寻找各个分区
例:

<fs_spec分区>       <fs_file挂载点>     <fs_type文件系统>       <fs_options选项 >   <fs_dump>       <fs_pass>
/dev/hdb1 /     ext3 defaults 1 1
/dev/hdb6 /home     ext3 defaults 1 2
/dev/hdb5 swap     swap defaults 0 0
/dev/hda1 /mnt/win_c vfat iocharset=iso8859-1,codepage=850,umask=0 0 0
none /mnt/cdrom supermount dev=/dev/hdc,fs=auto,ro,--,iocharset=iso8859-1,codepage=850,umask=0 0 0
none /mnt/floppy supermount dev=/dev/fd0,fs=auto,--,iocharset=iso8859-1,sync,codepage=850,umask=0 0 0
/dev/sda1 /mnt/memory_card auto user,iocharset=iso8859-1,kudzu,codepage=850,noauto,umask=0,exec 0 0

前面列比较好理解,<分区><文件系统><加载选项>。比较特殊的是最后两列,重点说明一下
dump :转存列,被转存工具调用,用来决定是否备份文件系统。1表示备份,0表示不备份。本文档不会涉及转存工具的工作细节。
fsck order:fsck顺序列,表明系统启动时,fsck 检查文件系统的顺序。0表示不检查,CD和软盘之类的可以动存储设备需要指定为这个值。大于1的值告诉fsck启
动时需要检查这个文件系统。数字大小决定开机时检测这个文件系统的顺序。

fs_spec:设备名或者设备卷标名。该字段定义希望加载的文件系统所在的设备或远程文件系统,对于一般的本地块设备情况来说:IDE设备一般描述为/dev/hdaXN,
X是IDE设备通道(a, b, or c),N代表分区号;SCSI设备一描述为/dev/sdaXN。对于NFS情况,格式一 般为“IP:directory”: ,例如:`knuth.aeb.nl:/'。
对于procfs,使用‘proc'来定义。 当然,此列可以使用加载分区的label名称来代替具体的分区名称。
fs_file:设备挂载目录。该字段描述希望的文件系统加载的目录点,对于swap设备,该字段为none;对于加载目录名包含空格的情况,用40来表示空格。
fs_type:设备文件系统。此项定义了该设备上的文件系统,一般常见的文件类型为ext2 (Linux设备的常用文件类型)、vfat(Windows系统的fat32格式)、NTFS、iso9600等。
fs_options:挂载参数。指定加载该设备的文件系统是需要使用的特定参数选项,多个参数是由逗号分隔开来。对于大多数系统使用"defaults"就可以满足需要。其他常见的选项包括:

	ro	:read only以只读模式加载该文件系统
sync :不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是却降低了计算机速度
user :允许普通用户加载该文件系统
quota :强制在该文件系统上进行磁盘定额限制
noauto :不再使用mount -a命令(例如系统启动时)加载该文件系统
noexec :不允许可执行文件可执行,但千万不要把根分区挂为noexec,那就无法使用系统了,连mount命令都无法使用了,这时只有重新做系统了
nodev :不允许挂载设备文件
nosuid,nosgid :不允许有suid和sgid属性
nouser :不允许普通用户挂载

fs_dump:指明是否要备份。该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0。
0为不备份,1为要备份,一般根分区要备份。
fs_pass:指明自检顺序。该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字段的值应该为1,
其他文件系统应该为2。若该文件系统无需在启动时扫描,则设置该字段为0。

2./etc/mtab

这个文件记录已经加载的设备,本文件在 mount 命令执行后自动更新,本文件中列出的,都是已经加载好的设备
例:
/dev/hdb1 / ext3 rw 0 0
none /proc proc rw 0 0
none /proc/bus/usb usbdevfs rw 0 0
none /dev devfs rw 0 0
none /dev/pts devpts rw, mode=0620 0 0
/dev/hdb6 /home ext3 rw 0 0
none /mnt/cdrom supermount ro, dev=/dev/hdc,fs=auto,--,iocharset=iso8859-1,codepage=850,umask=0 0 0
none /mnt/cdrom2 supermount ro, dev=/dev/scd0,fs=auto,--,iocharset=iso8859-1,codepage=850,umask=0 0 0
none /mnt/floppy supermount rw, sync,dev=/dev/fd0,fs=auto,--,iocharset=iso8859-1,codepage=850,umask=0 0 0
/dev/hda1 /mnt/windows vfat rw, iocharset=iso8859-1,codepage=850,umask=0 0 0
/dev/hdb7 /usr ext3 rw 0 0
/dev/sda1 /mnt/memory_card vfat rw, nosuid,nodev,iocharset=iso8859-15,codepage=850,umask=0,user=julia 0 0

  

 

/etc/fstab和/etc/mtab的更多相关文章

  1. mount: can't find cdrom in /etc /fstab or /etc/mtab

    我用的linux操作系统类别是CentOS-6.5 首先在虚拟机选项的设置里设置CD/DVD选项其中勾选Connect at power on选项 在连接中选择Use ISO image file:即 ...

  2. /etc/fstab和/etc/mtab的区别

    etc/fstab文件的作用         记录了计算机上硬盘分区的相关信息,启动 Linux 的时候,检查分区的 fsck 命令,和挂载分区的 mount 命令,都需要 fstab 中的信息,来正 ...

  3. fstab设置开机挂载--鸟哥[阅读]

    設定開機掛載: 手動處理 mount 不是很人性化,我們總是需要讓系統『自動』在開機時進行掛載的!本小節就是在談這玩意兒! 另外,從 FTP 伺服器捉下來的映像檔能否不用燒錄就可以讀取內容?我們也需要 ...

  4. 攻城狮在路上(叁)Linux(二十四)--- linux设置开机挂载及镜像文件挂载

    虽然可以手动进行文件系统的挂载,但是每次都手动挂载就会很麻烦,开机挂载的目的就是实现文件系统的自动挂载. 一.开机挂载:/etc/fstab及/etc/mtab 主要是通过修改/etc/fstab文件 ...

  5. Linux some command(continue...)

    挂载硬盘 sudo mount -t ext4 /dev/sdb1 /media/hadoop 自动挂载相关 sudo blkid sudo fdisk -l vim /etc/fstab cat / ...

  6. VMware Workstation linux 问题

    1.can't find  /mnt/cdrom in etc/fstab or /etc/mtab mkdir /mnt/cdrom 2.80端口被占 一.查看哪些端口被打开 netstat -an ...

  7. Virtualbox虚拟机设置不完全笔记

    先说说我想实现的东西,我想在虚拟机安装各种开发环境,我个人在学习Node.然后我装了一个Ubuntu Server,所以我又想共享一个windows下的文件夹,这样可以让我在windows下开发,在L ...

  8. Linux磁盘管理命令

    1.磁盘分割: fdisk [root@linux ~]# fdisk [-l] 装置名称 参数: -l :输出后面接的装置所有的partition内容.若仅有fdisk -l时, 则系统将会把整个系 ...

  9. linux 学习之九、Linux 磁盘与文件系统管理(2)

    原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0230filesystem.php#filesys 磁盘挂载与卸除 挂载Ext2/Ext3文件系统 范例一: ...

随机推荐

  1. Spring的一些面试题(转)

    一.spring工作原理: 1.spring mvc的所有请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作.2.DispatcherServlet ...

  2. PHP保存Base64图片base64_decode的问题 文件打不开的问题

      PHP对Base64的支持非常好,有内置的base64_encode与base64_decode负责图片的Base64编码与解码. 编码上,只要将图片流读取到,而后使用base64_encode进 ...

  3. PHP文件锁 解决并发问题

    使用多线程或是多进程时. 难免会遇到并发问题. 处理简单的并发可以使用这个办法来解决 flock($fp = fopen($lock, 'w+'), LOCK_EX | LOCK_NB)   or e ...

  4. Linux 笔记 #04# Installing Tomcat 8 on Debian

    失败一 ※ 失败二  ※ 失败三 ※ 完 1- 确认机型: root@iZwz:~# lsb_release -a LSB Version: core-2.0-amd64:core-2.0-noarc ...

  5. HeyWeGo小组团队项目管理

    HeyWeGo团队小组项目管理 项目内容 使用java程序开发一款扫雷游戏 实现计划 第一周 明确项目内容.目标.分工,以及完成前期的一些准备 建立新的小组博客以及创建新的代码托管链接 第二周 实行初 ...

  6. 框架-spring入门总结

    框架-spring入门总结 参考: http://www.cnblogs.com/heavenyes/p/3908546.html http://www.cnblogs.com/heavenyes/p ...

  7. Tensorflow1.5.0+cuda9.0+cudnn7.0+gtx1080+ubuntu16.04

    目录 Tensorflow1.5.0+cuda9.0+cudnn7.0+gtx1080+ubuntu16.04 0. 前记 1. 环境说明 2. 安装GTX1080显卡驱动 3. CUDA 9.0安装 ...

  8. Qt5编译error01

    1.Qt551x86 vs2013 1.1.“error: C2001: 常量中有换行符” 问题还原:源码:“QString str = tr("已接收 %1MB (%2MB/s) \n共% ...

  9. 【Docker】Segmentation Fault or Critical Error encountered. Dumping core and abort

    背景 CentOS7 安装Docker后,load镜像时出现以下错误: Segmentation Fault or Critical Error encountered. Dumping core a ...

  10. HTML之页面镶嵌体验

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...