Linux 磁盘配置文件 /etc/fstab 详解

fstab (/etc/fstab) 是linux下比较重要的配置文件,它包含了系统在启动时挂载文件系统和存储设备的详细信息。

简介
  • 任何硬件设备连接后,操作系统使用硬件,即需要挂载。windows只不过是自动“挂载”了,linux需要手动自己搞。在Linux系统下,例如每次挂载/dev/sr0(光盘设备文件)需要手动使用命令mount。
  • 每次计算机重启时,硬盘一般也是被自动挂载的,而自动挂载的信息就记录在/etc/fstab文件中。
  • 系统每次启动都会读取/etc/fstab中的配置内容,自动挂载该文件中被记录的设备和分区。
文件示例

一个示例 fstab 文件

代码语言:javascript

复制

$ cat /etc/fstab 

# <file system>        <dir>         <type>    <options>             <dump> <pass>
tmpfs                  /tmp          tmpfs     nodev,nosuid          0      0
/dev/sda1              /             ext4      defaults,noatime      0      1
/dev/sda2              none          swap      defaults              0      0
/dev/sda3              /home         ext4      defaults,noatime      0      2

字段定义

/etc/fstab 文件包含了如下字段,通过空格或 Tab 分隔:

<file system> <dir> <type> <options> <dump> <pass>

字段

含义

<file systems>

要挂载的分区或存储设备. 设备名称,LABEL,UUID,伪文件系统名称

<dir>

<file systems>的挂载位置。

<type>

要挂载设备或是分区的文件系统类型,支持许多种不同的文件系统:ext2, ext3, ext4, reiserfs, xfs, jfs, smbfs, iso9660, vfat, ntfs, swap 及 auto。 设置成auto类型,mount 命令会猜测使用的文件系统类型,对 CDROM 和 DVD 等移动设备是非常有用的。

<options>

挂载时使用的参数,注意有些mount 参数是特定文件系统才有的。一些比较常用的参数有:auto - 在启动时或键入了 mount -a 命令时自动挂载。noauto - 只在你的命令下被挂载。exec - 允许执行此分区的二进制文件。noexec - 不允许执行此文件系统上的二进制文件。ro - 以只读模式挂载文件系统。rw - 以读写模式挂载文件系统。user - 允许任意用户挂载此文件系统,若无显示定义,隐含启用 noexec, nosuid, nodev 参数。users - 允许所有 users 组中的用户挂载文件系统.nouser - 只能被 root 挂载。owner - 允许设备所有者挂载.sync - I/O 同步进行。async - I/O 异步进行。dev - 解析文件系统上的块特殊设备。nodev - 不解析文件系统上的块特殊设备。suid - 允许 suid 操作和设定 sgid 位。这一参数通常用于一些特殊任务,使一般用户运行程序时临时提升权限。nosuid - 禁止 suid 操作和设定 sgid 位。noatime - 不更新文件系统上 inode 访问记录,可以提升性能(参见 atime 参数)。nodiratime - 不更新文件系统上的目录 inode 访问记录,可以提升性能(参见 atime 参数)。relatime - 实时更新 inode access 记录。只有在记录中的访问时间早于当前访问才会被更新。(与 noatime 相似,但不会打断如 mutt 或其它程序探测文件在上次访问后是否被修改的进程。),可以提升性能(参见 atime 参数)。flush - vfat 的选项,更频繁的刷新数据,复制对话框或进度条在全部数据都写入后才消失。defaults - 使用文件系统的默认挂载参数,例如 ext4 的默认参数为:rw, suid, dev, exec, auto, nouser, async.

<dump>

dump 工具通过它决定何时作备份. dump 会检查其内容,并用数字来决定是否对这个文件系统进行备份。 允许的数字是 0 和 1 。0 表示忽略, 1 则进行备份。大部分的用户是没有安装 dump 的 ,对他们而言 <dump> 应设为 0。转储频率: 0表示不进行dump备份,1代表每天进行dump备份,2代表不定日期的进行dump备份

<pass>

fsck 读取 <pass> 的数值来决定需要检查的文件系统的检查顺序。允许的数字是0, 1, 和2。 根目录应当获得最高的优先权 1, 其它所有需要被检查的设备设置为 2. 0 表示设备不会被 fsck 所检查。开机时自检(非0),自检次序:(如果开机系统自检不过,就无法正常开机)0:不自检 1:最先自检,一般为/ 2…:数越小优先级最大

问题:如果设备不小心被破坏,开机自检不过,无法正常启用,该怎么办? 原理很简单,只需要修复一下文件系统就好了,(如果不能修复,可以去/etc/fstab中把自检改为0)

添加磁盘挂载示例
挂载物理磁盘

代码语言:javascript

复制

lsblk -f

  • 可以查看没有挂载的磁盘信息

代码语言:javascript

复制

sda                   xfs         VS1   9aef7b09-cc65-400d-b3c0-c93709c8bff7      5.4T    

  • 以VS1磁盘为例,在fstab文件中挂载他
  • fstab文件中加入这样一行即可

代码语言:javascript

复制

UUID=9aef7b09-cc65-400d-b3c0-c93709c8bff7 	/disk/nas1 	xfs 	defaults 	0 	0

nfs 挂载网络磁盘
  • 通过 showmount -e 查看当前可以挂载的网络位置
  • fstab 文件中加入 [网络位置] [挂载位置] [挂载协议] [参数]

代码语言:javascript

复制

192.168.1.222:/disk/nas1			/mnt/nas1	nfs	defaults    0 	0

fstab 文件迅速生效

代码语言:javascript

复制

mount -a
  • 即可挂载编辑后的 fstab 文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值