LINUX.ORG.RU

Проблема с винтом IBM Ericson 40GB


0

0

Вот уже второй раз сталкиваюсь: при активной работе винчестера (subj)
он вдруг начинает заикаться и все виснет. Перезагрузиться не удается,
ибо корневой и домашний разделы испорчены. Кстати, на обоих машинах
эти разделы под ReiserFS. /boot под ext2 и с ним ничего плохого не
происходило (хотя, думаю, дело тут не в этом).

После переформатирования и переустановки все, вроде бы, нормально,
однако думается мне, что появились на них битые блоки. Только как вот
их искать на таких громадных дисках? badblocks, кажется, будет это
делать не один месяц при непрерывной работе :-((( Кстати, когда я его
запускаю, в 12-ю консоль гонятся сообщения об ошибках I/O на
некоторых секторах, но сам badblocks не сообщает о битых блоках, и
как же это понимать?!

В общем, помогите please, а то вроде как и
поменять винты можно еще, но для этого нужно самому выяснить есть ли
на них битые фрагменты. И еще: можно ли как-нибудь отыскать на
испорченном разделе остатки информации, хотя бы в сыром виде,
обрывками?

Буду очень благодарен за помощь!!

anonymous

У меня портились диски (две штуки, один из них ибм). Из-за сочетания hdparm и материнской платы. То есть можно даже сказать что в то время я был обладателем технологии почти гарантированного выведения из строя любого винчестера.

badblocks не так уж катастрофически долго работает.. Надеюсь у тебя 7200.. Не больше часа имхо..

почему badblocks не сообщает о битых блоках.. Попробуй verbose -v. А еще надежнее режим с записью, но он деструктивный.

> можно ли как-нибудь отыскать на > испорченном разделе остатки информации, хотя бы > в сыром виде, обрывками?

битый сектор вряд ли можно программным образом прочитать. А так -- если есть лишнее место то можешь локализовать битые секторы, потом с помощью dd ... seek=... skip=... сделать образ раздела. Недостающие блоки заполнить из /dev/zero. Сделать fsck образа, примонтировать его и вытягивать то что осталось в живых.

dilmah ★★★★★
()

> Кстати, когда я его запускаю, в 12-ю консоль гонятся сообщения об ошибках I/O на некоторых секторах, но сам badblocks не сообщает о битых блоках, и как же это понимать?!

Ядро пытается прочитать сектор насколько раз, и сообщает об ошибках на консоль, но если в итоге чтение удалось, то badblocks об этих ошибках не узнает. Ты можешь ему явно указать, чтобы он пометил блоки с этими секторами, как неисправные.

ansky ★★★★★
()

>У меня портились диски (две штуки, один из них ибм). Из-за сочетания
>hdparm и материнской платы. То есть можно даже сказать что в то время
>я был обладателем технологии почти гарантированного выведения из
>строя любого винчестера.

У меня плата Chaintech 6BTM, DMA включен. Раньше в этом компе стоял
Quantum 3GB и он жил долго и сейчас живет.

>badblocks не так уж катастрофически долго работает.. Надеюсь у тебя
>7200.. Не больше часа имхо..

У меня UDMA-33, наверное поэтому так все медленно :-(

>почему badblocks не сообщает о битых блоках.. Попробуй verbose -v. А
>еще надежнее режим с записью, но он деструктивный.

verbose включил, но проверяю в read-only, все еще надеюсь данные
как-нибудь выцарапать... Кстати, есть еще non-destructive read-write
mode, опция -n (сейчас man еще раз прочитал :-)).
Может быть он так долго жует каждый блок из-за read-only? И еще,
я проверяю диск с опцией [-c очень_большое_число]
(сейчас на работе просто, точно сказать не могу, но что-то около
100000), это ведь по идее должно зверски ускорить процесс...

>битый сектор вряд ли можно программным образом прочитать. А так --
>если есть лишнее место то можешь локализовать битые секторы, потом с
>помощью dd ... seek=... skip=... сделать образ раздела. Недостающие
>блоки заполнить из /dev/zero. Сделать fsck образа, примонтировать его
>и вытягивать то что осталось в живых.

А как мне fsck и монтировать его, если система вообще не понимает
теперь, что на нем есть какая-то fs? :-(((( debugreiserfs говорит,
что ничего от reiserfs на разделе не обнаруживается :-(((((((

anonymous
()

>Ядро пытается прочитать сектор насколько раз, и сообщает об ошибках
>на консоль, но если в итоге чтение удалось, то badblocks об этих
>ошибках не узнает. Ты можешь ему явно указать, чтобы он пометил блоки
>с этими секторами, как неисправные.

А как ему это явно указать?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.