zoukankan      html  css  js  c++  java
  • 【转发】linux文件系统变为只读的修复

    详细解决方法:http://smartmontools.sourceforge.net/badblockhowto.html

    相关问题,更换硬盘:http://blog.chinaunix.net/uid-7573623-id-3442608.html

    来之:http://hi.baidu.com/ttl289/item/95c9ac4c7c3649abde2a9fce

    linux系统重启或无故变为只读造成网站无法正常访问的简单临时的做法:

    1、mount:
      用于查看哪个模块输入只读,一般显示为:

      /dev/hda1 on / type ext3 (rw)
      none on /proc type proc (rw)
      usbdevfs on /proc/bus/usb type usbdevfs (rw)
      none on /dev/pts type devpts (rw,gid=5,mode=620)
      /dev/hda5 on /home type ext3 (rw)
      none on /dev/shm type tmpfs (rw)
      /dev/hda2 on /usr/local type ext3 (rw)
      /dev/nb1 on /EarthView/RAW type ext3 (ro)(变为只读了)


      2、如果发现有ro,就重新mount,或者umount以后再remount

      3、umount /dev/nb1
      如果发现有提示“device is busy”,找到是什么进程使得他busy

      fuser -m /mnt/data 将会显示使用这个模块的pid
      fuser -mk /mnt/data 将会直接kill那个pid

      然后重新mount即可。

      4、还有一种方法是直接remount,命令为

      mount -o rw,remount /mnt/data

    具体深入的做法,情况不同可以自行选择:

    服务器/var/log/messages报错 :

    end_request: I/O error, dev sda, sector 122194293 Buffer I/O error on device sda1, logical block 446493 lost page write due to I/O error on sda1

    下面是整个处理全过程

    [root@php5 ~]# fdisk -lu #第一步 :找出本地扇片所在的分区。
    Disk /dev/sda: 73.4 GB, 73407868928 bytes
    255 heads, 63 sectors/track, 8924 cylinders, total 143374744 sectors
    Units = sectors of 1 * 512 = 512 bytes

    Device Boot Start End Blocks Id System
    /dev/sda1 * 63 4096574 2048256 83 Linux
    /dev/sda2 4096575 75778604 35841015 83 Linux
    /dev/sda3 75778605 129034079 26627737+ 83 Linux
    /dev/sda4 129034080 143364059 7164990 5 Extended
    /dev/sda5 129034143 139267484 5116671 83 Linux
    /dev/sda6 139267548 143364059 2048256 82 Linux swap


    [root@php5 ~]# tune2fs -l /dev/sda3 |grep "Block size" #找到block大小。
    Block size: 4096

    (122194293-75778605)*512/4096 =528691 利用公式算出逻辑块地址

    b = (int)((L-S)*512/B)

    [root@php5 ~]# debugfs
    debugfs 1.35 (28-Feb-2004)
    debugfs: open /deb/sda3
    /deb/sda3: No such file or directory while opening filesystem
    debugfs: open /dev/sda3
    debugfs: icheck 582391
    Block Inode number
    582391 277584
    debugfs: ncheck 277584
    Inode Pathname
    277584 /users/inn.net.cn/data/upload/download/innshow004.rar
    debugfs: quit
    [root@php5 ~]#dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=582391 #找到这个快的文件之后,需要做好备份,我们强制把它设置为0字节。
    [root@php5 ~]# sync

    写在最后(写给自己):

    其实/dev/sr0就是虚拟机设置的ISO镜像本身,挂载盘大小与ISO镜像大小一致,所以可以完全忽略这个问题(不要考虑在此盘上删除、cp之类的操作)

  • 相关阅读:
    commit(), commitNow()和commitAllowingStateLoss()
    Android 7.0 Nougat牛轧糖 发布啦
    Android Weekly Notes Issue #219
    Android Weekly Notes Issue #218
    CoordinatorLayout, AppBarLayout, CollapsingToolbarLayout使用
    Using Dagger2 in Android
    冰雪奇缘,白色世界:四个IT人的四姑娘山双桥沟游记
    你必须知道的容器日志 (2) 开源日志管理方案 ELK/EFK
    你必须知道的容器日志 (1) Docker logs & logging driver
    2019 .NET China Conf:路一直都在,社区会更好
  • 原文地址:https://www.cnblogs.com/dsc65749924/p/5834116.html
Copyright © 2011-2022 走看看