在对集群测试过程中发现系统中某一节点中的磁盘变成read-only file system,从而导致测试任务出错,从网上查找资料,找到以下解决方案:

这个报错的意思是硬盘属性变成只读,不可写入;

VOS本身是不可能更改你的硬盘属性的,只有操作系统有这样的能力;

一般可能原因有三点:

  1.硬盘与主板的不兼容性导致;

  2.硬盘损坏;

  3.人为修改

首先利用fsck修复一下,

  1. [root@localhost ~]# fsck
  2. fsck 1.39 (29-May-2006)
  3. e2fsck 1.39 (29-May-2006)
  4. /dev/VolGroup00/LogVol00: recovering journal
  5. Clearing orphaned inode 302154356 (uid=48, gid=48, mode=0100600, size=0)
  6. Clearing orphaned inode 57245765 (uid=0, gid=0, mode=0100600, size=0)
  7. Clearing orphaned inode 57245703 (uid=27, gid=27, mode=0100600, size=0)
  8. Clearing orphaned inode 57245702 (uid=27, gid=27, mode=0100600, size=0)
  9. Clearing orphaned inode 57245701 (uid=27, gid=27, mode=0100600, size=0)
  10. Clearing orphaned inode 57245700 (uid=27, gid=27, mode=0100600, size=0)
  11. Clearing orphaned inode 57245699 (uid=27, gid=27, mode=0100600, size=0)
  12. /dev/VolGroup00/LogVol00: clean, 7592796/365756416 files, 80372202/365740032 blocks
  13. e2fsck 1.39 (29-May-2006)
  14. /dev/sda1 is mounted.
  15. WARNING!!! Running e2fsck on a mounted filesystem may cause
  16. SEVERE filesystem damage.
  17. Do you really want to continue (y/n)? no
  18. check aborted.
  19.  
  20. -----------------------------

尝试执行了一下fsck 直接出现了 修复提示,无任何异常!

如果出现这样的提示,就需要小心:

  1. root@test ~]# fsck
  2. fsck 1.35 (28-Feb-2004)
  3. e2fsck 1.35 (28-Feb-2004)
  4. /dev/sda1 is mounted.
  5. WARNING!!! Running e2fsck on a mounted filesystem may cause
  6. SEVERE filesystem damage.
  7. Do you really want to continue (y/n)? no
  8. check aborted.
  9. [root@test ~]#

一定要选择NO,先拆卸文件系统,否则 对文件系统造成毁灭性的打击。
6.修复完成后,reboot 系统 正常启动

运行正常的一台机器linux服务器,早上发现挂了。满屏幕是 read-only file system的提示.检查/etc/fstab设置没有问题。重启计算机,init初始的过程中,不断的read-only file system提示。进入repair模式,人工干预地/分区进行fsck.
fsck /var -y 在不断的yes之后,修复完成.(真想给enter键上压个秤砣)
重启计算机,OK了.进入系统后进行检查,没有发现有价值的信息.系统出问题前没有重启过.排除了掉电的可能.只在dmesg找了一点线索
  1. [root@cacti ~]# dmesg |grep error
  2. hdb: packet command error: status=0x51 { DriveReady SeekComplete Error }
  3. hdb: packet command error: error=0x54

利用 mount 指令解决 Read-only file system的问题
刚才在VirtualBox下装起了liveAndroid ,可是在利用wget下载apk包的时候,总是提示Read-only file system,也就是说系统是只读的,什么也写不了。于是在网上到处找了一下,发现解决起来挺容易的。一条命令就可以了

  1. mount -o remount rw /

系统启动的时候报:

  1. Updating /etc/fstab Unable to open /etc/fstab for writing:Read-only file system [FAILED]
  2. touch:createing '/var/lock/subsys/kudzu':Read-only file system [OK]
  3. Bringing up lookback interface: modprobe: modprobe: Can't locate module ...(此处看不到了)
  4. modprobe:modprobe:Can'g locate module net-pf-4
  5. modprobe:modprobe:Can'g locate module net-pf-5
  6. modprobe:modprobe:Can'g locate module net-pf-18
  7. modprobe:modprobe:Can'g locate module net-pf-9
  8. Bringing up interface eth0: Inter(R) PRO/100 Network Driver -version ...(此处看不到了)
  9. Copyright (c) 2003 Inter Corporation
  10. PCI:Fount IRQ 9 for device 00:06.0
  11. e100:eth0: Inter(R) PRO/100 Network Connection
  12. Hardware receive checksums enabled
  13. cpu cycle saver enabled

系统到这一步就不走了,半天没有反应,只能重启(事后发现此处等待n久时间是可以进入系统的,进入系统后也是没有主机名,文件系统只读)。
1,重启后进入单用户模式,打开/etc/fstab文件,查到如下信息:
/dev/sde1 /back ext3 noauto 2 3
有一个阵列柜上的分区加载,虽然只是noauto,不会自动加载,不过当时为了保险起见就像让把这一项去掉。去掉的时候提示文件系统治读。
不过用Mount 命令查看的时候是rw的。
2,这个时候用suse 10 x86的光盘引导进入恢复模式,进去的时候不能够发现本地的硬盘,只能够发现柜子的硬盘。
这个时候想起来了,是suse 10对这个型号的服务器的mageraid卡的驱动不支持,当时公司的这个型号的服务器只能安装radhat 3版本系列的操作系统,redhat 4和suse都不能安装上去。redhat 5出来后也可以安装redhat 5了。
3,想通过redhat 启动过程中的交互模式做点事情。
redhat 启动的时候会有一个按"I"进入的交互模式,可是这个服务器竟然没有这个选项,郁闷了,当时已经很久没有看到redhat 3的启动界面了,当时也不在现场,还以为redhat 3真的没有这个交互界面了。当时记得redhat 3u6是有的。
INIT: version 2.85 booting
Welcome to Red Hat Enterprise Linux AS
Press 'I' to enter interactive startup.
4,没有办法,只好去现在,去现场后用redhat 3u6的光盘引导系统。进入系统后用下面的命令Mount分区
mount -o rw /dev/sda1 /mnt/boot
mount -o rw /dev/sda3 /mnt/sysimage
发现是可以用读写方式加载的.打开系统的/etc/fstab文件,这个时候位置在/mnt/sysimage/etc/fstab。把这个文件的最后一行删除。重新启动还是不行。
5,用光盘引导进入系统后用
fsck.ext3 -f /dev/sda1
fsck.ext3 -f /dev/sda3
强制检查文件系统,没有发现异常。重启后还是不行。
6,系统启动的过程中会发现一些新硬件信息,此时弹出的配置界面都是乱码。应该是系统安装的时候配置的中文环境的缘故。用光盘引导系统,引导的过程中配置网络信息,配置加载本地的linux分区。
进去后修改/etc/sysconfig/i18n文件,这个文件的原信息为:
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"
修改为:
LANG="en_US.UTF-8"
SUPPORTED="en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
这个时候启动的时候就为英文了。
7,上面的这些操作一直都不行,然后就继续想系统启动的步骤,就检查系统启动的文件。
发现/etc/inittab文件的下面一行多了一个#号
si::sysinit:/etc/rc.d/rc.sysinit
把这个#号去掉后就一切Ok。

Linux操作系统报:read-only file system的更多相关文章

  1. windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决

    windows中修改catalina.sh上传到linux执行报错This file is needed to run this program解决 一.发现问题 由于tomcat内存溢出,在wind ...

  2. Linux启动报错missing operating system

    用UltraISO制作了一个Red Hat Enterprise Linux Server release 5.7系统的U盘启动盘,然后在一台PC上安装,由于安装过程中在干别的事情,有些选项没有细看. ...

  3. Linux系统启动错误 contains a file system with errors, check forced解决方法

    /dev/sda1 contains a file system with errors, check forced./dev/sda1: Inodes that were part of a cor ...

  4. linux开发板出现Read-only file system的解决办法

    @2018-11-29 创建文件夹出现如下提示 mkdir: can't create directory 'test': Read-only file system 使用命令 mount rw -o ...

  5. Linux 6.8 TFS(Taobao File System)使用文档-安装篇

    介绍  TFS(Taobao FileSystem)是一个高可扩展.高可用.高性能.面向互联网服务的分布式文件系统,其设计目标是支持海量的非结构化数据的存储:TFS使用C++语言开发,需要运行在64b ...

  6. Linux出现Read-only file system错误的解决方法

    造成这个问题的解决办法大多数是由于非正常关机后导致文件系统受损引起的,在系统重新启动之后,受损分区就会被Linux自己主动挂载为仅仅读.解决办法是通过fsck来修复文件系统,然后重新启动就可以,下面是 ...

  7. File system needs to be upgraded. You have version null and I want version 7

    安装hbase时候报错: File system needs to be upgraded. You have version null and I want version 7 注: 我安装的hba ...

  8. 解决adb push时出现的"Read-only file system"问题

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  9. File System Design Case Studies

    SRC=http://www.cs.rutgers.edu/~pxk/416/notes/13-fs-studies.html Paul Krzyzanowski April 24, 2014 Int ...

随机推荐

  1. Webform用户控件

    用户控件一 用户控件二

  2. gulp压缩js

    1.安装nodejs -> 全局安装gulp -> 项目安装gulp以及gulp插件 -> 配置gulpfile.js -> 运行任务 2.查看nodejs的版本号 3.npm ...

  3. py函数递归

    1.从前有座山,山中有座庙,庙里有一个老和尚在讲故事... 2.递归:程序调用自身. 3.形式:在函数定义有直接或间接调用自身. 例如:阶乘: n!= 1 x 2 x 3 x ... x n; 从后身 ...

  4. 清空DNS缓存

    昨天写了个Python的脚本,功能就是爬取一个网页上的Google ip地址再写入到本机的hosts里面去. 但是写完并且运行完成之后发现上不了Google.于是想到了是不是要清空一下DNS的缓存.不 ...

  5. knockout.js简单实用教程1

    第一次接触knockout是在一年多之前吧.当时是接手了一个别人的项目,在项目中有用到knockout来进行数据的绑定.也就开始学习起来knockout.在之后的项目中也多次用到了这个.在第一次开始学 ...

  6. js智能提示代码

    <reference path = "../../../Scripts/jQuery-1.4.1.js"/>

  7. iOS开发多线程-线程间通讯

    一.NSThread 线程间的通讯 - (void)demoAboutNSThread { NSLog(@"demoAboutNSThread %@", [NSThread cur ...

  8. 美国政府关于Google公司2013年度的财务报表红头文件

    请管理员移至新闻版块,谢谢! 来源:http://www.sec.gov/ 财务报表下载↓ 此文仅作参考分析. 10-K 1 goog2013123110-k.htm FORM 10-K   UNIT ...

  9. 学习DSP(三)安装C2833x/C2823x C/C++ 头文件和外设示例-压缩包

    进入http://www.ti.com.cn/product/cn/tms320f28335 下载C2833x/C2823x C/C++ 头文件和外设示例 即SPRC530,目前最新版本是V131.安 ...

  10. 剑指offer-面试题21.包含min函数的栈

    题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数. 在该栈中,调用min,push及pop的时间复杂度都是O(1). 这一题实际上需要一个辅助栈存储最小值: 1.在模板类定 ...