Linux系统开机自动挂载文件fstab介绍

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

转载声明:转载请注明出处,本技术博客是本人原创文章

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Linux系统开机自动挂载文件fstab介绍

Linux系统开机自动挂载文件fstab介绍

**一、fstab简介 **

fstab文件中包含了各种各样的文件系统描述信息,它可以被特殊的工具修改,fstab中每一个文件系统描述占一行,每一行是TAB或空格分隔。

二、fstab文件内容介绍

[root@Centos ~]# cat /etc/fstab 

/etc/fstab

Created by anaconda on Sun Aug  7 05:42:06 2016

Accessible filesystems, by reference, are maintained under ‘/dev/disk’

See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

/dev/mapper/VolGroup-lv_root /                                      ext4    defaults    1 1

UUID=4eff9bdb-7e0b-4d25-8931-dc776537bc73  /boot  ext4   defaults   1 2

/dev/mapper/VolGroup-lv_home /home         ext4    defaults        1 2

/dev/mapper/VolGroup-lv_swap swap           swap    defaults       0 0

tmpfs                   /dev/shm                tmpfs   defaults        0 0

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs                   /sys                       sysfs     defaults        0 0

proc                    /proc                      proc      defaults        0 0

第一列需要挂载的设备(/dev/sda)或远程文件系统(nfs)

第二列是文件系统的挂载点

第三列是需要挂载的文件系统

第四列挂载所需带有参数

async 此参数表明所涉及的文件系统I/O都是异步处理,不会同步写入磁盘能提高性能,生产环境一般不用

**atime **此参数表明在每一次数据访问时,同步更新每次的访问的inode时间,是默认参数,实际生产环境中高并发情况不建议使用

**auto **能够被自动挂载通过-a 选项

defaults 缺省值(rw,suid,dev,auto)

noatime不同步更新文件系统访问inode时间,提高I/O性能,实际生产环境常用

noauto不自动进行挂载

noexec不可执行可执行程序

第五列决定文件系统是否需要通过dump,通常设置为0或1

第六列控制文件是否需要开机进行fsck检查

0为不需要,根分区一般设置为1,/boot分区一般设置为2

三、配置fstab文件

[root@Centos ~]# **vi /etc/fstab **

/etc/fstab

Created by anaconda on Sun Aug  7 05:42:06 2016

Accessible filesystems, by reference, are maintained under ‘/dev/disk’

/dev/mapper/VolGroup-lv_home /home    ext4    defaults   1 2

devpts    /dev/pts      devpts  gid=5,mode=620  0 0

sysfs     /sys     sysfs   defaults    0 0

proc     /proc   proc    defaults   0 0

192.168.1.2:/data/bbs   /mnt    nfs    defaults    0 0

保存退出即可

四:配置测试

前面也提到过,我们可以把开机自动启动的文件放在/etc/rc.local下面

因此在测试此配置之前,我们先来测试下/etc/rc.local能否达到开机自动挂载的需求

[root@localhost ~]# **cat /etc/rc.local **

#!/bin/sh

This script will be executed after all the other init scripts.

You can put your own initialization stuff in here if you don’t

want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

[root@localhost ~]# **echo “/bin/mount -t nfs 192.168.1.2:/data/bbs /mnt”/etc/rc.local **

[root@localhost ~]# **tail -1 /etc/rc.local **

/bin/mount -t nfs 192.168.1.2:/data/bbs /mnt

[root@localhost ~]# reboot

重启系统测试开机挂载情况

[root@localhost /]# **df -h     **查看是否挂载成功

Filesystem                    Size  Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root   18G  3.3G   14G  20% /

tmpfs                         491M     0  491M   0% /dev/shm

/dev/sda1                     485M   35M  426M   8% /boot

192.168.1.2:/data/bbs          50G  3.5G   44G   8% /mnt

经测试可以实现开机自动挂载

接下来我们将自动挂载命令放在/etc/fstab下面测试下

这里注明下,在配置/etc/fstab文件前记得备份

[root@localhost ~]# cp /etc/fstab /etc/fstab.ori.bak.20160818


[root@localhost /]# **vi /etc/fstab **

/etc/fstab

Created by anaconda on Fri Aug 19 20:33:46 2016

/dev/mapper/VolGroup-lv_swap swap        swap    defaults        0 0

tmpfs      /dev/shm  tmpfs   defaults      0 0

devpts   /dev/pts     devpts  gid=5,mode=620  0 0

sysfs     /sys         sysfs   defaults      0 0

proc      /proc         proc    defaults     0 0

192.168.1.2:/data/bbs   /mnt   nfs     defaults    0 0

“/etc/fstab” 16L, 833C written

[root@localhost /]# **tail -1 /etc/fstab    **检查配置

192.168.1.2:/data/bbs   /mnt    nfs   defaults   0 0

配置完成,重启系统

[root@localhost /]# reboot

[root@localhost ~]# df -h

Filesystem        Size  Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root   18G  3.3G   14G  20% /

tmpfs     491M   72K  491M   1% /dev/shm

/dev/sda1       485M   35M  426M   8% /boot

192.168.1.2:/data/bbs      50G  3.5G   44G   8% /mnt

同样也可以开机自动挂载成功

但是实际生产环境中,这种做法是不建议的,因为如果当NFS服务端处于不可用状态,那么客户端开机后可能会导致无法启动的风险,因开机启动的顺序是/etc/fatab先启动,/etc/rc.local后启动,因此要实际生产环境中,要形成一定规范,要么将启动内容放入/etc/rc.local,要么将启动内容放入/etc/fatab中。

五:fstab故障导致开机无法启动解决方法

故障环境操作系统是Centos 6.5

开机加载后出现如下提示,提示开机检查时出现一个错误

Linux系统开机自动挂载文件fstab介绍 系统加载错误,无法启动了

方法一:

提示输入root密码或control-D 继续,这里我们输入管理员密码

Linux系统开机自动挂载文件fstab介绍

编辑/etc/fstab时,提示无法写入

接下来执行下面命令进行修改

[root@localhost ~]# mount -o rw,remount /

[root@localhost ~]# cp /etc/fstab.ori.bak.20160818 /etc/fstab

[root@localhost ~]#** reboot**

Linux系统开机自动挂载文件fstab介绍 可以正常启动了

方法二:

利用系统光盘引导进行恢复,先设置好从光驱启动

Linux系统开机自动挂载文件fstab介绍

重启系统后选择救援模式

Linux系统开机自动挂载文件fstab介绍 进入后选择二个默认选项 Linux系统开机自动挂载文件fstab介绍 Linux系统开机自动挂载文件fstab介绍 Linux系统开机自动挂载文件fstab介绍

选择不从网卡启动

Linux系统开机自动挂载文件fstab介绍 Linux系统开机自动挂载文件fstab介绍

选择启动shell

Linux系统开机自动挂载文件fstab介绍 从上面得知目录被挂载在/mnt/sysimage下面,因此执行前面的备份文件进行恢复即可

重启系统,将启动设置为磁盘启动

Linux系统开机自动挂载文件fstab介绍 输入用户名与密码,成功登陆系统,恢复成功。 Linux系统开机自动挂载文件fstab介绍
本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

转载声明:转载请注明出处,本技术博客是本人原创文章

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Linux系统开机自动挂载文件fstab介绍


 上一篇
Linux系统NFS网络文件系统 Linux系统NFS网络文件系统
Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到本地系统可挂载的目录下 NFS实现是
2021-04-05
下一篇 
NFS客户端mount挂载优化 NFS客户端mount挂载优化
NFS客户端mount挂载优化 NFS作用 NFS服务可以让不同的客户端挂载使用同一个上目录,作为共享存储使用,这样可以保证不同节点的客户端数据的一致性,在集群环境中经常用到 NFS的优点 1、简单——容易上手,学习 2、方便——安装快速,
2021-04-05