• 欢迎访问极客公园网站,WordPress信息,WordPress教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入极客公园 QQ群
  • Git主题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 最新版Git主题已支持说说碎语功能,可像添加文章一样直接添加说说,新建说说页面即可,最后重新保存固定连接,演示地址
  • 百度口碑求点赞啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊http://koubei.baidu.com/s/gitcafe.net
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏极客公园吧

(原创)Linux文件系统只读Read-only file system的快速解决方法

原创总结 博客教主 11年前 (2013-10-28) 84248次浏览 3个评论

问题描述:上周公司的私有云(底层架构是Openstack+KVM,目前稳定性还不够好,开发团队在改进中)一个计算节点挂掉,之后恢复后发现这个计算节点的所有Linux虚拟机系统都变成只读了,复制文件提示:Read-only file system,如图所示:

问题原因:系统没有正常关机,导致虚拟磁盘出现文件系统错误。

解决方法:使用fsck手动修复,具体操作如下:

重启系统后使用root进入单用户模式,运行

fsck.ext3 -y /dev/vda3

说明:ext3的文件系统使用fsck.ext3,ext4文件系统使用fsck.etx4。/dev/vda3是系统/根分区。运行完毕后,reboot重启系统就恢复正常。20多台出问题的都是这样修复的,无失败案例。fsck.ext3开始进入扫描、修正文件系统,这个过程有时很快,有时比较长,中间有数次停顿的过程,只需等待即可,千万不要以为死机而重启服务器。修正完文件系统后,如果没有提示重启系统,也需要reboot来重启系统。

扩展知识:fsck简介

fsck不仅可以对文件系统进行扫描,还能修正文件系统的一些问题。注意的是fsck扫描文件系统时一定要在单用户模式、修复模式或把设备umount后进行。建议在单用户模式下运行。如果扫描正常运行中的系统,会造成系统文件损坏。

文件系统扫描工具有fsck、fsck.ext2、fsck.ext3、fsck.ext4、fsck.msdos、fsck.cramfs、fsck.ext4dev、fsck.vfat。最好是根据不同的文件系统来调用不同的扫描工具,比如ext3的文件系统使用fsck.ext3,ext4文件系统使用fsck.ext4等。

/dev/vda3是ext3的文件系统,这里介绍fsck.ext3的参数:

fsck.ext3

[语法]
fsck.ext3[必要参数][选择参数][设备代号]

[功能]
fsck.ext3命令:针对ext3文件系统进行检测修复

[执行权限]
root

[参数]

必要参数

-a非互交模式,自动修复
-c检查是否存在有损坏的区块。
-C fsck.ext3命令会把全部的执行过程,都交由其逆向叙述,便于监控程序
-d详细显示命令执行过程
-f强制进行检查
-F检查文件系统之前,先清理该保存设备块区内的数据
-l把文件中所列出的损坏区块,加入标记
-L清除所有损坏标志,重新标记
-n非交互模式,把欲检查的文件系统设成只读
-P 设置fsck.ext2命令所能处理的inode大小为多少
-r交互模式
-R忽略目录
-s顺序检查
-S效果和指定“-s”参数类似
-t 显示fsck.ext2命令的时序信息。
-v显示详细的处理过程
-y关闭互动模式

选择参数

-b指定分区的第一个磁区的起始地址/Super Block
-B 设置该分区每个区块的大小
-I设置欲检查的文件系统,其inode缓冲区的区块数目
-V显示版本信息


极客公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:(原创)Linux文件系统只读Read-only file system的快速解决方法
喜欢 (0)

您必须 登录 才能发表评论!

(3)个小伙伴在吐槽
  1. 如果内核不支持,上面怎么fsck都没用.
    nobody2013-10-29 09:39
  2. 条件许可的话建议文件系统都用ext4,fsck修复文件系统的速度和ext3不是一个等级 T级以上的ext3分区,fsck修复的时间让人崩溃
    csz2013-10-31 16:46
  3. 我也碰到过类似问题,linux vm可以用fsck修复,但windows vm怎么修复?
    Nico2014-05-09 00:08