このスレッドは解決済です(未解決に戻す場合はこちら)
<<戻る

logwatch にて Smartd でRaid1 エラー  このメッセージに返信する
日時: 2014/07/29(Tue) 23:32
名前: アサピーファン
URL:

自宅サーバーにてRAID1を組んでいます。
最近、logwatch に以下の表示が現れます。

--------------------- Smartd Begin ------------------------


Currently unreadable (pending) sectors detected:
/dev/sda [SAT] - 48 Time(s)
30 unreadable sectors detected

Offline uncorrectable sectors detected:
/dev/sda [SAT] - 48 Time(s)
30 offline uncorrectable sectors detected

---------------------- Smartd End -------------------------


 /var/log/messages を調べたら、以下の表示が30分ごとに吐かれていました。

Jul 29 21:20:53 xxxx smartd[2940]: Device: /dev/sda [SAT], 8 Offline uncorrectable sectors
Jul 29 21:50:53 xxxx smartd[2940]: Device: /dev/sda [SAT], 8 Currently unreadable (pending) sectors
Jul 29 21:50:53 xxxx smartd[2940]: Device: /dev/sda [SAT], 8 Offline uncorrectable sectors
Jul 29 22:20:53 xxxx smartd[2940]: Device: /dev/sda [SAT], 8 Currently unreadable (pending) sectors
Jul 29 22:20:53 xxxx smartd[2940]: Device: /dev/sda [SAT], 8 Offline uncorrectable sectors

不良セクタが有るらしいことはわかりました。
そこで以下を実行。

[root@xxxx ~]# smartctl -l selftest /dev/sda
smartctl 5.42 2011-10-20 r3458 [i686-linux-2.6.18-371.9.1.el5PAE] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 16335 -
# 2 Extended offline Aborted by host 90% 16332 -
# 3 Extended offline Aborted by host 90% 16332 -
# 4 Extended offline Aborted by host 90% 16332 -
# 5 Short offline Completed without error 00% 16271 -
# 6 Short offline Completed without error 00% 9628 -


 不良セクタの場所を見る。

[root@mfs01 ~]# fdisk -lu /dev/sda

Disk /dev/sda: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = セクタ数 of 1 * 512 = 512 bytes

デバイス Boot Start End Blocks Id System
/dev/sda1 * 63 208844 104391 fd Linux raid 自動検出
/dev/sda2 208845 3907024064 1953407610 fd Linux raid 自動検出


 どうやらbootに問題が有る事まではつきとめたのですが、これ以降のやり方がわかりません。
 どうかご教授願えますでしょうか、よろしくお願い致します。

 なお、HDDはSeagateST2000DM001 を2つRaid1として使用しています。
記事編集 編集
Re: logwatch にて Smartd でRaid1 エラー  このメッセージに返信する
日時: 2014/07/30(Wed) 10:43
名前: 通りすがり
URL:
/dev/sda1 が/bootでしょうか。
まず、セルフテストを実施し、1時間ほど待ちます。
smartctl -t long /dev/sda
1時間後、結果を確認
smartctl -A -l selftest /dev/sda
LBA_of_first_error」の部分が不良ブロックのLBA番号

で、ブロックサイズを調査します。
tune2fs -l /dev/sda1 | grep Block
おそらく、Block size: 4096

LBAがどのブロックに含まれているか、計算します。

b = (int)((L-S)*512/B)
where:
b = File System block number
B = File system block size in bytes
L = LBA of bad sector
S = Starting sector of partition as shown by fdisk -lu
and (int) denotes the integer part.

以下でブロック番号を求めます。

b = (int)((L - S) * 512 / 4096) = xxx

ブロック番号は、xxx

該当ブロックのinode情報を調べます。
debugfs
debugfs: open /dev/sda1
debugfs: icheck xxx
Block Inode number
xxx <block not found>
debugfs: quit

該当ブロックを再配置します。
dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=xxx

sync

再度セルフテストを実行、1時間程度待ちます
smartctl -t long /dev/sda

結果を確認
smartctl -A -l selftest /dev/sda

Current_Pending_Sectorが、0
セルフテスト結果も Completed without error となります

こんな感じで、出来るのではないかと思います。
くれぐれも自己責任で
記事編集 編集
Re: logwatch にて Smartd でRaid1 エラー  このメッセージに返信する
日時: 2014/08/05(Tue) 22:20
名前: アサピーファン
URL:
通りすがり様、有り難うございます。

申しわけございません、当方CentOS5を使用しております。
Block size : 1024

までは確認出来ますが、LBAの計算は当方未熟で解りません。



>/dev/sda1 が/bootでしょうか。
>まず、セルフテストを実施し、1時間ほど待ちます。
>smartctl -t long /dev/sda
>1時間後、結果を確認
>smartctl -A -l selftest /dev/sda
>LBA_of_first_error」の部分が不良ブロックのLBA番号
>
>で、ブロックサイズを調査します。
>tune2fs -l /dev/sda1 | grep Block
>おそらく、Block size: 4096
>
>LBAがどのブロックに含まれているか、計算します。
>
>b = (int)((L-S)*512/B)
>where:
>b = File System block number
>B = File system block size in bytes
>L = LBA of bad sector
>S = Starting sector of partition as shown by fdisk -lu
>and (int) denotes the integer part.
>
>以下でブロック番号を求めます。
>
>b = (int)((L - S) * 512 / 4096) = xxx
>
>ブロック番号は、xxx
>
>該当ブロックのinode情報を調べます。
>debugfs
>debugfs: open /dev/sda1
>debugfs: icheck xxx
>Block Inode number
>xxx <block not found>
>debugfs: quit
>
>該当ブロックを再配置します。
>dd if=/dev/zero of=/dev/sda1 bs=4096 count=1 seek=xxx
>
>sync
>
>再度セルフテストを実行、1時間程度待ちます
>smartctl -t long /dev/sda
>
>結果を確認
>smartctl -A -l selftest /dev/sda
>
>Current_Pending_Sectorが、0
>セルフテスト結果も Completed without error となります
>
>こんな感じで、出来るのではないかと思います。
>くれぐれも自己責任で
記事編集 編集
Re: logwatch にて Smartd でRaid1 エラー  このメッセージに返信する
日時: 2014/08/23(Sat) 02:51
名前: アサピーファン
URL:
 新たにHDDを購入いたしました。

 解決しました。
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -