一、/etc/fstab文件的作用

磁盘被手动挂载之后都必须把挂载信息写入/etc/fstab这个文件中,否则下次开机启动时仍然需要重新挂载。

系统开机时会主动读取/etc/fstab这个文件中的内容,根据文件里面的配置挂载磁盘。这样我们只需要将磁盘的挂载信息写入这个文件中我们就不需要每次开机启动之后手动进行挂载了。

二、挂载的限制

在说明这个文件的作用之前我想先强调一下挂载的限制。

  1、根目录是必须挂载的,而且一定要先于其他mount point被挂载。因为mount是所有目录的跟目录,其他木有都是由根目录 /衍生出来的。

  2、挂载点必须是已经存在的目录。

  3、挂载点的指定可以任意,但必须遵守必要的系统目录架构原则

  4、所有挂载点在同一时间只能被挂载一次

  5、所有分区在同一时间只能挂在一次

  6、若进行卸载,必须将工作目录退出挂载点(及其子目录)之外。

三、/etc/fstab文件中的参数

下面我们看看看/etc/fstab文件,这是我的linux环境中/etc/fstab文件中的内容

cat /etc/fstab 查看当前系统已经存在的挂载信息

在文件中我已经把每一列都做出来表示方便识别,我们可以看到一共有六列。

第一列:Device:磁盘设备文件或者该设备的Label或者UUID

  1)查看分区的label和uuid

    Label就是分区的标签,在最初安装系统时填写的挂载点就是标签的名字。可以通过查看一个分区的superblock中的信息找到UUID和Label name。

    例如:我们要查看/dev/sda1这个设备的uuid和label name

dumpe2fs -h /dev/sda1

dumpe2fs 1.35 (28-Feb-2004)

Filesystem volume name:   /boot   //这个就是Label name

Last mounted on:          <not available>

Filesystem UUID:          3b10fe13-def4-41b6-baae-9b4ef3b3616c    //UUID

Filesystem magic number:  0xEF53

Filesystem revision #:    1 (dynamic)

Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super

Default mount options:    (none)

Filesystem state:         clean

简单点的方式我们可以通过下面这个命令来查看

blkid

blkid /dev/vda1

  2)使用设备名和label及uuid作为标识的不同

  使用设备名称(/dev/sda)来挂载分区时是被固定死的,一旦磁盘的插槽顺序发生了变化,就会出现名称不对应的问题。因为这个名称是会改变的。

不过使用label挂载就不用担心插槽顺序方面的问题。不过要随时注意你的Label name。至于UUID,每个分区被格式化以后都会有一个UUID作为唯一的标识号。使用uuid挂载的话就不用担心会发生错乱的问题了。

第二列:Mount point:设备的挂载点,就是你要挂载到哪个目录下。

第三列:filesystem:磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等

第四列:parameters:文件系统的参数

Async/sync

设置是否为同步方式运行,默认为async

auto/noauto

当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto

rw/ro

是否以以只读或者读写模式挂载

exec/noexec

限制此文件系统内是否能够进行"执行"的操作

user/nouser

是否允许用户使用mount命令挂载

suid/nosuid

是否允许SUID的存在

Usrquota

启动文件系统支持磁盘配额模式

Grpquota

启动文件系统对群组磁盘配额模式的支持

Defaults

同事具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置

第五列:能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1

0

代表不要做dump备份

1

代表要每天进行dump的操作

2

代表不定日期的进行dump操作

第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean)。

0

不要检验

1

最早检验(一般根目录会选择)

2

1级别检验完成之后进行检验

今天工作的时候发现所有IO节点服务器上的UUID值被人误操作全部被修改为特定的值,所以写了一个shell将所有/etc/fstab中的UUID值重新修改为blkid 正确的值。

#!/bin/bash
#blkid | grep sda3 |awk '{print $2}' |cut -c -
uuid3=`blkid | grep sda3 |awk '{print $2}' |cut -c -`
echo sed -i "s/c3522ef4-720a-4b2e-bfb4-92fdeadf4436/$uuid3/" /etc/fstab
sed -i "s/c3522ef4-720a-4b2e-bfb4-92fdeadf4436/$uuid3/" /etc/fstab #blkid | grep sda1|awk '{print $2}' |cut -c -
uuid1=`blkid | grep sda1|awk '{print $2}' | cut -c -`
echo sed -i "s/fbf5dd66-d85a-4c25-bd6e-9c637263e95c/$uuid1/" /etc/fstab
sed -i "s/fbf5dd66-d85a-4c25-bd6e-9c637263e95c/$uuid1/" /etc/fstab #blkid |grep sda2|awk '{print $2}' |cut -c -
uuid2=`blkid |grep sda2|awk '{print $2}' |cut -c -`
echo sed -i "s/8c353c4d-f3be-47e5-bc66-36e7a1947d18/$uuid2/" /etc/fstab
sed -i "s/8c353c4d-f3be-47e5-bc66-36e7a1947d18/$uuid2/" /etc/fstab

Linux命令-自动挂载文件/etc/fstab功能详解[转]的更多相关文章

  1. 【转载】Linux命令-自动挂载文件/etc/fstab功能详解[转]

    博客园 首页 新随笔 联系 订阅 管理 随笔 - 322  文章 - 0  评论 - 19 Linux命令-自动挂载文件/etc/fstab功能详解[转]     一./etc/fstab文件的作用 ...

  2. Linux命令-自动挂载文件/etc/fstab功能详解

    Linux命令-自动挂载文件etcfstab功能详解 一./etc/fstab文件的作用 磁盘被手动挂载之后都必须把挂载信息写入/etc/fstab这个文件中,否则下次开机启动时仍然需要重新挂载. 系 ...

  3. 自动挂载文件/etc/fstab功能详解

    今天看了这篇文章,对于自动挂载中的一些小细节和参数有了更深的理解,所以这次把它摘下来,留做查询 一./etc/fstab文件的作用 1.我们把磁盘手动挂载之后如果不把它写入/etc/fstab这个文件 ...

  4. 【转】 /etc/fstab功能详解

    [转] /etc/fstab功能详解 最近去客户现场时,遇到 了一个关于挂载文件/etc/fstab文件的问题,就写了一下/etc/fstab文件的作用一个文件中各个参数的含义.供大家参考有不正确的地 ...

  5. 给虚拟机添加新硬盘并分区,fdisk查看分区,分区,重新读取分区表信息partprobe,格式化,挂载,查看分区挂载信息,自动挂载文件/etc/fstab,/etc/fstab文件错误导致重启崩溃后的修复

    1.虚拟机关机断电 2.添加硬盘 2.开机 3.fdisk -l查看刚才新添加的硬盘 [root@localhost ~]# fdisk -l 磁盘 /dev/sda:21.5 GB, 2147483 ...

  6. Linux开机自动挂载文件fstab介绍

    这个文件描述系统中各种文件系统的信息.一般而言,应用程序仅读取这个文件,而不对它进行写操作.对它的维护是系统管理员的工作. [root@localhost mnt]# cat /etc/fstab # ...

  7. Linux之facl----设置文件访问控制列表(详解)

    setfacl命令 是用来在命令行里设置ACL(访问控制列表) 选项 -b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留. -k,--remove ...

  8. 打包文件 MANIFEST.MF 功能详解

    最近研究了如何在java工程打包,期间遇到的一些问题进行总结,如打包成test.jar 文件 Manifest-Version: 1.0 Main-Class: windows.VideoWindow ...

  9. Linux命令 ls -l s输出内容含义详解

    1. ls  只显示文件名或者文件目录 2. ls -l(这个参数是字母L的小写,不是数字1) 用来查看详细的文件资料 在某个目录下键入ls -l可能会显示如下信息: 文件属性(占10个字符空间)  ...

随机推荐

  1. x01.TestViewContent: 插件测试

    开发神器 SharpDevelop 的插件系统,很有学习的必要. 1.首先在 github 上下载源代码,确保编译运行无误. 2.在 AddIns/Misc 下添加 SharpDevelop 插件项目 ...

  2. python学习笔记-import utils报错

    今天遇到一个坑爹的问题,查找了半天原因,终于解决了,在此特地记录一下. 运行环境:Windows eclipse 我在eclipse中配置了python的运行环境,在eclipse中编写python代 ...

  3. webform开发基础

    ASP.NET WebForm C/S(Client/Server):客户端服务器 B/S(Browser/Server):浏览器服务器 C/S和B/S的区别: 首先必须强调的是C/S和B/S并没有本 ...

  4. [No000097]程序员面试题集【下】

    1.下面中共包含()个正方形?40 计算规律,设大长方形长是5,宽是4,小正方形边长是1,那么图中.小正方形的个数是,4*5个,边长是2的正方形的个数是3*4个,边长是3的正方形的个数是2*3个,边长 ...

  5. node基础12:动态网页

    1.显示动态网页 又到了激动人心的时刻,马上就可以使用node创建动态网站了,其原理为: 在HTML模板中使用占位符 根据请求路径,确定需要返回的页面 根据请求参数来确定静态模板中占位符的值 使用正则 ...

  6. JUnit 4 与 TestNG 对比

    原文出处: 付学良的网志 原文出处2: http://www.importnew.com/16270.html -------------------------------------------- ...

  7. C#创建Excel(.xls和.xlsx)文件的三种方法

    生成EXCEL文件是经常需要用到的功能,我们利用一些开源库可以很容易实现这个功能. 方法一:利用excellibrary,http://code.google.com/p/excellibrary/ ...

  8. Django ORM、一对一、一对多、多对多、详解

    上篇博客也提到这些知识点,可能大家还是不太清楚,这篇博客为大家详细讲解ORM中的几个知识点 1.1首先我们先看一个小案例: #_*_coding:utf-8_*_ from django.db imp ...

  9. 滚来滚去,滚来滚去...Scroller完全解析

    API: 1 mScroller.getCurrX() //获取mScroller当前水平滚动的位置 2 mScroller.getCurrY() //获取mScroller当前竖直滚动的位置 3 m ...

  10. 解决vs崩溃 无法打开工程 新建工程显示未找到约束

    一般是因为windows更新引起的,可以删除与.net framework有关的更新补丁如果补丁太多可以试试如下方法: 解决方法: 1.关闭VS: 2.去C:/Users/<your users ...