一、故障现象
现网的一台小库主机(使用的redhat 6.x)在一次例行维护进行重启后,发现无法正常启动。通过HP ILO口登陆查看主机停留下“ An error occurred during the file system check” 处报错。具体截图类似如下(问题时未截图,该图为网上找来的图):
二、故障处理
在修复时,查看主机的/etc/fstab查看主机的分区挂载信息类似如下 :
# cat /etc/fstab
/dev/sda1 swap swap defaults 0 0
/dev/sda2 / ext3 acl,user_xattr 1 1
/dev/sda3 /boot ext3 acl,user_xattr 1 2
/dev/sda8 /home ext3 acl,user_xattr 1 2
/dev/sda9 /opt ext3 acl,user_xattr 1 2
/dev/sda6 /tmp ext3 acl,user_xattr 1 2
/dev/sda5 /usr ext3 acl,user_xattr 1 2
/dev/sda7 /var ext3 acl,user_xattr 1 2
可以看到除了根分区和swap之外,每项最后面的值都是1 2 ,最后两例的作用分别是是否做dump备份和做开机会扇区检查 ,这里全部选择了开机,如果有扇区检查不通过时,就会出现上面的界面。这里将所有的1 2 改为0 0,如下:
# cat /etc/fstab
/dev/sda1 swap swap defaults 0 0
/dev/sda2 / ext3 acl,user_xattr 1 1
/dev/sda3 /boot ext3 acl,user_xattr 0 0
/dev/sda8 /home ext3 acl,user_xattr 0 0
/dev/sda9 /opt ext3 acl,user_xattr 0 0
/dev/sda6 /tmp ext3 acl,user_xattr 0 0
/dev/sda5 /usr ext3 acl,user_xattr 0 0
/dev/sda7 /var ext3 acl,user_xattr 0 0
保存后再重新开机,发现可以正常启动。
三、故障总结
故障原因就是扇区开机自检时不通过导致主机无法正常启动。这里将/etc/fstab从第二到第列的内容再做下记录:
- 第二列 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级别检验完成之后进行检验 |