すべてのファイルが読み取り専用であるなどの奇妙なエラー

すべてのファイルが読み取り専用であるなどの奇妙なエラー

私の Ubuntu 14.04.2 コンピューターに突然、さまざまな重大なエラーが表示されるようになりました。

これは、Ruby on Rails アプリで作業していたときに、しばらく放置して戻ってきて、 を使用してサーバーを再起動しようとしたときに発生しましたrails s。その結果、次のエラーが返されました。

Rails Error: Unable to access log file. Please ensure that /home/user/app/log/development.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.

およびなどchmod 0666 /home/user/app/log/development.logのさまざまな chmod コマンドを実行してみました。そのたびに、次の結果が返されました。chmod 0664chmod 777

chmod: changing permissions of ‘/home/user/app/log/development.log’: Read-only file system

他の Rails アプリを試してみましたが、同じエラーが発生しました。その後、Komodo IDE で作業していたファイルを保存して終了しようとしましたが、Komodo はファイルが読み取り専用であり保存できないと表示しました。

その後、Skype がサインアウトしていることに気づき、再度サインインしようとすると、すでにサインインしていると表示されました。

そこでコンピュータを再起動しました。ログイン画面に次のようなエラーメッセージが表示されました。Errors were found when searching directory /. Press f to fix, I to ignore, and M to run a manual reboot.

無視するために I を押してサインインしました。今では Skype も Komodo もまったく開けません。アイコンをクリックすると、開こうとしているようにアイコンが数回点滅しますが、その後点滅が止まり、何も起こりません。

また、rails sはエラーを返さなくなり、文字通りターミナル ウィンドウを閉じるだけになりました。

を実行するとmount、半分の時間はターミナルが閉じるだけですが、残りの半分の時間は次のメッセージが表示されます。

$ mount
/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /sys/firmware/efi/efivars type efivarfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda1 on /boot/efi type vfat (rw)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=greg)

mount: warning: /etc/mtab is not writable (e.g. read-only filesystem).
   It's possible that information reported by mount(8) is not
   up to date. For actual information about system mount points
   check the /proc/mounts file.

また、すべてのファイルにロック アイコンが付いていることに気付きました。これは、すべてのファイルが読み取り専用であることを意味していると思います。

出力:

sudo smartctl --all --tolerance=verypermissive /dev/sda

できるここで見つかりました

何が起こっているのでしょうか??

答え1

これはたくさんドライブ障害が発生する前にファイル システムが読み取り専用でマウントされているなど...

それでコンピュータの使用を中止し、完全にシャットダウンして、次の操作を行ってください。

  1. コンピュータを開いてハードディスクをチェックしてください。コントローラボードに接続されていない場合は、現在のハードドライブよりも大きい新しい外付けハードドライブを購入してください。コントローラーボードに取り付けられている場合は、新しいものを購入してください内部同じコネクタタイプのハードドライブ。
  2. それをコンピュータに挿入します(ノートパソコンの場合は、上記の手順で外付けUSB HDDを購入してください)
  3. Ubuntu Live DVDを起動し、Try Ubuntu
  4. Ctrl+ Alt+を押してTターミナルに移動し、次のように入力します。

    sudo apt-get install gddrescue
    sudo ddrescue --binary-prefixes --cluster-size=64 --sparse --timeout=20s /dev/WdX /dev/YdZ
    

    注: Wおよび は、Xほぼ壊れたハード ドライブのドライブ文字であり、Yおよび は、Z新しいハード ドライブのドライブ文字です。

  5. それがエラーなく正常に動作したら、私の直感が正しいかどうかをテストします。

    sudo apt-get install smartmontools
    sudo smartclt --scan
    
  6. 次に以下を実行します:

    sudo smartctl /--test:short dev/XdY
    

スキャン中に表示されたすべてのデバイスに対して。

それではフィードバックをお願いします!

編集: 大変残念ですが、ドライブが故障したようです。

外付けドライブを内蔵ドライブと交換し、古いドライブを接続せずに新しいドライブに Ubuntu を再インストールしてください。次に、古いドライブを USB エンクロージャに接続して、もう一度試してください... おそらく (極めてありそうにない) そうすれば、さらに多くのデータを回復できます。

関連情報