mkdir: cannot create directory `test’: Read-only file system

问题现象:接监控组人员反馈,在某主机opt上当创建目录时,提示为只读Read-only file system,不允许写入或删除,根据以往经验这种问题有三种可能:

1、挂载时未给予w权限;

2、分区出现问题,需要fsck进行修复处理;

3、硬盘故障,需通过服务器原厂工具核实是否硬盘是否出现问题,更换硬盘以免丢失数据 。

注:有些人可能还会想到使用chattr 设置权限造成不能写和通过磁盘配额进行配置,不过这两种设置报错内容和这个报错不同

解决思路

1、通过mount查看当前参数

# mount
/dev/sda2 on / type ext3 (rw,acl,user_xattr)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/sda5 on /boot type ext3 (rw,acl,user_xattr)
/dev/sda9 on /home type ext3 (rw,acl,user_xattr)
/dev/sda10 on /opt type ext3 (rw,acl,user_xattr)
/dev/sda8 on /tmp type ext3 (rw,acl,user_xattr)
/dev/sda6 on /usr type ext3 (rw,acl,user_xattr)
/dev/sda7 on /var type ext3 (rw,acl,user_xattr)

通过查看可以发现,当前挂载的权限是rw权限。

2、fsck修复

[root@361way.com ~]# umount /opt/
umount: /opt: device is busy
umount: /opt: device is busy
[root@361way.com ~]# fuser -m /dev/sda10
/dev/sda10:           11334
[root@361way.com ~]# ps auxww|grep 11334
apache   11334  0.0  0.3  14288  6404 ?        S    09:47   0:00 /usr/sbin/httpd -k start -DSSL
root     12184  0.0  0.0   4128   684 pts/0    R+   09:50   0:00 grep 11334
[root@361way.com ~]# service httpd stop
Stopping httpd: [  OK  ]
[root@361way.com ~]# umount /opt/
[root@361way.com ~]# fsck -V -a /dev/sda10
fsck 1.39 (29-May-2006)
[/sbin/fsck.ext3 (1) -- /opt] fsck.ext3 -a /dev/sda10
/opt: recovering journal
/opt: clean, 1890281/20971520 files, 6941812/20970849 blocks

3、硬盘检测

这个可以根据OEM厂商提供的针对相关系统的工具而定,常用的如HP的hpacucli 、DELL的delldset、ATAE的disk_info_test等。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注