昨日、Linuxファイルサーバーにクライアントからのデータを保存しようとすると「データの書き込みに失敗しました」となり保存できません。
サーバの保存先を見るに、ディレクトリに鍵のようなマークが付いており、「このフォルダは空です」となっています。
「じぇじぇじぇ!!」
原因が不明なので、ファイルサーバーを再起動しようとするとエラーで起動できません。
No such file or directory which trying to open /dev/
An error occurred during the file system check. Dropping you to a shell; the system will reboot when you leave the shell. Give root passwrd for maintenance (or type Control-D to continue):
fstab の記述が原因で起動できないようです。
# vi /etc/fstab
で不具合があると思われるファイルサーバーのデータが入っているデバイスを編集しようとしましたができません。
ググってみると、読み込み専用でマウントされているので書き込めないとのことです。
読み書きできるように再マウントさせます
# mount -o remount ,rw /
そしてfstabを編集
# vi /etc/fstab
サーバーを再起動
# reboot
起動できました。
しかし # fdisk -l
で見るにデータが入っているドライブだけは見えません。
もう一度サーバーを再起動させ、BIOSを見てみると不具合があると思われるドライブが接続されているSATAの状態が[None]となっています。
その後、SATAケーブルを差し替えたり、SATAのポートを変えましたがやはり認識できません。
ハードディスクの故障と思われます。該当のハードディスクをサーバーから外しました。
幸いデータは定期的にバックアップを取っていたのでリストアできました。
故障が発生した時のログです。
kernel: ata5.00: exception Emask 0x0 SAct 0x7 SErr 0x0 action 0x6 frozen kernel: ata5.00: failed command: WRITE FPDMA QUEUED
kernel: ata5.00: cmd 61/08:00:af:00:00/00:00:00:00:00/40 tag 0 ncq 4096 out kernel: res 40/00:00:00:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout) kernel: ata5.00: status: { DRDY }
kernel: ata5.00: failed command: WRITE FPDMA QUEUED kernel: ata5.00: cmd 61/08:08:3f:40:98/00:00:1a:00:00/40 tag 1 ncq 4096 out
kernel: res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) kernel: ata5.00: status: { DRDY }
kernel: ata5.00: failed command: WRITE FPDMA QUEUED kernel: ata5.00: cmd 61/20:10:8f:00:c0/00:00:1a:00:00/40 tag 2 ncq 16384 out
kernel: res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout) kernel: ata5.00: status: { DRDY }
kernel: ata5: hard resetting link
kernel: ata5: softreset failed (device not ready)
kernel: ata5: hard resetting link
kernel: ata5: softreset failed (device not ready)
kernel: ata5: hard resetting link
kernel: Buffer I/O error on device sdc1, logical block 56098826
kernel: lost page write due to I/O error on sdc1
kernel: Buffer I/O error on device sdc1, logical block 56098827
kernel: lost page write due to I/O error on sdc1
kernel: Buffer I/O error on device sdc1, logical block 56098828
kernel: lost page write due to I/O error on sdc1
kernel: Buffer I/O error on device sdc1, logical block 56098829
kernel: end_request: I/O error, dev sdc, sector 452237583
kernel: end_request: I/O error, dev sdc, sector 452237831
kernel: end_request: I/O error, dev sdc, sector 452238079
kernel: end_request: I/O error, dev sdc, sector 452238327
kernel: end_request: I/O error, dev sdc, sector 452238575
kernel: EXT4-fs (sdc1): delayed block allocation failed for inode 26476552 at logical offset 855642 with max blocks 2048 with error -5
kernel:
kernel: This should not happen!! Data will be lost
kernel: end_request: I/O error, dev sdc, sector 446185535
kernel: end_request: I/O error, dev sdc, sector 446185535
kernel: EXT4-fs (sdc1): delayed block allocation failed for inode 26476552 at logical offset 857691 with max blocks 2048 with error -5
kernel: kernel: This should not happen!! Data will be lost
kernel: end_request: I/O error, dev sdc, sector 446185535
kernel: end_request: I/O error, dev sdc, sector 446185535
kernel: EXT4-fs (sdc1): delayed block allocation failed for inode 26476552 at logical offset 859740 with max blocks 2048 with error -5
kernel:
kernel: end_request: I/O error, dev sdc, sector 487062151
kernel: Aborting journal on device sdc1-8.
kernel: end_request: I/O error, dev sdc, sector 486801471
kernel: JBD2: I/O error detected when updating journal superblock for sdc1-8.
kernel: EXT4-fs error (device sdc1): ext4_journal_start_sb: Detected aborted journal
kernel: EXT4-fs (sdc1): Remounting filesystem read-only
kernel: end_request: I/O error, dev sdc, sector 446185535
kernel: end_request: I/O error, dev sdc, sector 446185535
kernel: EXT4-fs (sdc1): delayed block allocation failed for inode 26476552 at logical offset 876132 with max blocks 2048 with error -5