linuxファイルシステム読み取り専用原因と監視スクリプト監視ファイルシステム読み取り専用


ガイド:日常の仕事の中で、よくサーバーがいろいろな原因でIO読み取り専用の故障が発生して、機械を再起動した後、故障は回復することができて、具体的な故障の原因が見つかりません.頻度は数日または数週間に1回発生する可能性があります.
 
HDDパーティションが読み取り専用になる原因は、次のとおりです.
ファイルシステムエラー
カーネル関連ハードウェアドライバbug
FWファームウェア類の問題
ディスクトラック
HDDバックプレーンの障害
HDDケーブル障害
HBAカード障害
RAIDカード障害
 
linuxファイルシステムの読み取り専用後の修復方法
1システムを再起動して、自動的に修復できるかどうかを確認します.
2 fsck-y/dev/sda 1を使用して自動修復を行います.(「-y」オプションでハードディスク(HDD)のチェックと修復を行います)
追加パラメータ:fsck-y-C-t ext 3/dev/sda 1(一般的に修復が完了すると、すべてのファイルがlost+foundディレクトリに移動し、ファイル名が変更されます)
(-C進捗バーを表示-tファイルシステムタイプを指定-yデフォルト自動yes修復)
 
3.fsck修復が完了した後も、起動システムは自己読み取りのままです.
#mountは、どのモジュールの入力が読み取り専用かを表示します.一般的には、次のように表示されます.
/dev/nb 1 on/EarthView/RAW type ext 3(ロ)(読み取り専用になった)
再mount、またはumount以降remount
umount/dev/nb 1「device is busy」というプロンプトが見つかった場合、どのプロセスが彼をbusyさせるかを見つけます.
fuser-m/mnt/dataは、このモジュールを使用するpid fuser-mk/mnt/dataがそのpidを直接killすることを示します.
それから再びmountすればいいです.
もう1つの方法は直接remountで、コマンドは
  mount -o rw,remount/mnt/data
 
スクリプトモニタリングlinuxシステムファイル読み取り専用
最も愚かな原理を使用しました
サーバパーティションを取得し、各パーティションでファイルを作成します.ファイルの作成に成功した場合、ファイルを削除し、作成しなかった場合、アラームファイルシステムは読み取り専用になります.
 
#!/bin/bash


datetime=`date '+%F %T'`
hostn=`hostname`
ip=`/sbin/ifconfig | grep 192.168|sed 's/ //g;s/Bcast//g'|awk -F : '{print $2}'`


read_only()
{
        partition=(`df -Th | awk '{print $7}' | xargs`)
        for (( i=`expr ${#partition[@]} - 1`;i>0;i-- ))
        do
                cd ${partition[i]}
                touch readonly_test
                if [ -f "readonly_test" ];then
                        rm -rf readonly_test
                else
                        the_partition[i]="${partition[i]}"
                fi
        done
        if [[ ${#the_partition[*]} != "0" ]];then
                message="${the_partition[*]}      "
                echo “      ”
        fi
}
read_only

 
オリジナルシナリオ、転載はご返信ください!