LINUX.ORG.RU
ФорумAdmin

Стереть бэд блок так, чтоб диск к нему не обращался

 


0

2

Я делал remap плохого сектора Викторией но после этого Линух снова видит 1 нестабильный сектор)

А как вообще убрать сектор? При этом доступный объем должен уменьшится на этот сектор. Как так сделать?

Сразу отвечу на вопрос почему спрашиваю если уже экспериментировал с Викторией) Всё дело в том, что Виктория не находит на диске ни одного нестабильного сектора) Виктория находит всего 4 зелёных сектора и на её взгляд диск в идеальном состоянии)

А как узнать размер доступной резервной области для замены?

★★

Последнее исправление: CrX (всего исправлений: 1)

Можно попробовать блины в диске заменить. Новые обычно можно заказать у производителя. Не забудьте делать это в безвоздушной среде.

Ещё можно попробовать перепрошить контроллер диска чтобы он игнорировал желаемые секторы.


А если серьёзно, то размер резервной области вам может быть не подскажет производитель
и значения smart подменять не надо, диску от этого лучше не станет. Купите новый когда этот перестанет нравиться

ЗЫ. вроде раньше можно было ставить реакции собственному комментарию

Flotsky ★★★
()
Последнее исправление: Flotsky (всего исправлений: 1)

но после этого Линух снова видит 1 нестабильный сектор)

Видит кем?

При этом доступный объем должен уменьшится на этот сектор.

Если сектор помечен как бэд то обьем будет меньше, но в выхлопах df и т.п. вы этого конечно не увидите.

anc ★★★★★
()

remap делают не какие-то проги а контроллер диска, когда ты пишешь что-то в сектор который он уже заметил битым. То есть это происходит автоматически при обычной эксплуатации диска и предпринимать ничего не надо специально.

А вот это:

Линух снова видит 1 нестабильный сектор)

какая-то бредятина.

firkax ★★★★★
()

А как узнать размер доступной резервной области для замены?

Никак. Это внутрянка самого винта. Если производитель побеспокоился о продлении жизни диска, то на нем есть резервная область которая доступна только прошивке диска. Вот туда она автоматом делает ремап. Для системы это полностью прозрачно.

Что касается глючащих секторов, то единственное что можно сделать – это прогнать раздел при помощи testdisk и выхлоп скормить проге создания ФС, чтоб в последующем ФС эти сектора обходила стороной.

iron ★★★★★
()

Диск это блочное устройство, там все блоки пронумерованы от нуля до N, и их никак нельзя выбросить. Только если файлсистема умеет аккуратно пропускать некоторые блоки из списка, можно пользоваться частично исправным диском. Либо, как выше сказали, через логическую разметку поместить файлсистемы в рабочие диапазоны блоков. Я ещё не уверен что это сработает с SSD, так как физические ячейки постоянно ремапаются с другими индексами.

neumond
()
Ответ на: комментарий от anc

Ну вообще-то диск-дорожка-сектор.

Просто к сведению, это древний-древний вариант адресации для ОС типа *DOS, для LBA - это уже не используется. В LBA - как раз с нуля(или единицы - не помню) до N.

Atlant ★★★★★
()
Ответ на: комментарий от anc

Видит кем?

Всем. Даже Chrystal Disk бьёт тревогу из-за 1-го нестабильного сектора. Но стоит в выне установить диск вне сети и запустить Викторию как та показывает - диск с завода)

Я думаю вместо мучений с рэмапом блок надо пометить BAD и после этого никто туда не будет лезть Я правильно мыслю?

Я об этом и спрашивал Как не ремапить, а убрать блок вообще? Дошло что для этого и есть пометка BAD) Но пометить надо не на уровне ОС и фс, а ниже

mirek ★★
() автор топика
Последнее исправление: mirek (всего исправлений: 2)

Линух снова видит

это не страшно… у меня был мертвый винт - вообще мертвый, даже не определялся, я его взял к питанию на ходу подключил - он раскрутился, нагрелся, после чего был запушен в работу и матка его увидела, стал устанавливать линукс и первая установка оказалась неудачной - винт завис во время установки и опять перестал определяться, небеда - раскрутил принудительно по новой, после чего диск определился и линукс установился без проблем, какое то время линукс работал, но диск переодически зависал, с каждым днем эти зависания были все реже и реже пока не пропали совсем, сейчас использую этот компьютер практически каждый день - последнее зависание 3 месяца назад было, то есть линукс не прсото работает на битом винте - он его еще оживил… кстати линукс - наш родной скрепный alt.

anonymous
()
Ответ на: комментарий от neumond

На внешних дорожках теперь больше секторов.

И что? Адресация от этого не изменилась.

Старая математика уже не работает.

Угу, а головы теперь при позиционировании ведут последовательный отсчет...

anc ★★★★★
()
Ответ на: комментарий от mirek

Я думаю вместо мучений с рэмапом блок надо пометить BAD и после этого никто туда не будет лезть Я правильно мыслю?

Честно говоря я думал, что виктория и помечает. А оно нет так оказывается?

anc ★★★★★
()
Ответ на: комментарий от anonymous

сейчас использую этот компьютер практически каждый день

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

anc ★★★★★
()

fsck -c или -l

        -c     This option causes e2fsck to use badblocks(8)  program  to  do  a
              read-only scan of the device in order to find any bad blocks.  If
              any  bad  blocks are found, they are added to the bad block inode
              to prevent them from being allocated to a file or directory.   If
              this  option  is specified twice, then the bad block scan will be
              done using a non-destructive read-write test.
       -l filename
              Add the block numbers listed in the file specified by filename to
              the  list  of bad blocks.  The format of this file is the same as
              the one generated by the badblocks(8)  program.   Note  that  the
              block  numbers  are  based  on  the blocksize of the file system.
              Hence, badblocks(8) must be given the blocksize of the file  sys‐
              tem  in order to obtain correct results.  As a result, it is much
              simpler and safer to use the -c option to e2fsck, since  it  will
              assure  that  the  correct parameters are passed to the badblocks
              program.
sergej ★★★★★
()
Ответ на: комментарий от anc

запустить этот хард в работу

это экспериментальная машина для ознакомления с alt linux - ничего кроме системы на винте нет, даже если покрашится нежалко - информация сохраняется в другом месте, вот прямо сейчас с этого пишу

$ fastfetch
           ##############                   root@alt
         ######################             --------
       ##########################           OS: ALT Regular x86_64
     ##+##########################          Kernel: Linux 6.13.6-6.13-alt1
   ######*###%+######################       Uptime: 13 mins
  ########%*#%########################      Packages: 956 (rpm)
 ############*#*#######%+##############     Shell: bash 5.2.37
#############%#############%############    Display (DVI-I-2): 1920x1080 @ 60 Hz in 22" [External]
#############+##########################    DE: labwc:wlroots
##############################*#########    WM: wlroots wm (X11)
##############+################+########    Terminal: foot 1.20.2
############################+##%########    Terminal Font: consolas (16pt)
###############+########################    CPU: AMD Athlon(tm) II X2 240 (2) @ 2.80 GHz
#############*################%#+#######    GPU: AMD Radeon HD 4670 [Discrete]
############+#################%#*#######    Memory: 735.84 MiB / 3.83 GiB (19%)
 #############*######+#+#####+##*######     Swap: 0 B / 1.91 GiB (0%)
  ###########%#####:%###########*#####      Disk (/): 4.53 GiB / 47.76 GiB (9%) - ext4
   ########%#+#######################       Local IP (eth0): 192.168.1.36/24
     #######%:######:##############         Locale: en_US.UTF-8
       ##+##*####################
         ######################                                     
             ##########
anonymous
()

Вы сначала напишите как в оригинале (на английском) называется «нестабильный сектор». Если это параметр SMART «Current_Pending_Sector», то, может ничего и не сделать, а может запись во все сектора (затирание всех данных) обнулит это значение.

mky ★★★★★
()
Ответ на: комментарий от anc

Я давно где-то в сети этот совет увидел. Там аргументация такая, что мол бывает брак на диске и часть секторов сыпется в каком-то одном месте. Размечаешь диск так, чтоб разделы не затрагивали сбойные сектора. Поскольку они все в одном месте, то это сделать несложно. Ну там ещё пару сотен метров отступить на всякий. Сообщалось также, что такие диски продолжают работать годами. Разумеется это не поможет в том случае, когда диск исчерпал свой ресурс и начал сыпаться.

u5er ★★
()
Ответ на: комментарий от targitaj

Неплохо, значит всё-таки есть в HDD ремаппинг и резервная область. Не уверен что во всех, и неясно какой объём. Во всяком случае топикстартер давно бы уже забыл про свой битый сектор, если бы этот ремаппинг сработал. Была бы разовая ошибка чтения, которая сама собой поправилась.

neumond
()

Целый тред, а про badblocks никто не упомянул.

man mke2fs на предмет ключа -c

спойлер: с этим ключем mke2fs запускает предварительно badblocks и исключает найденные плохие сектора из ФС.

anonymous
()
Ответ на: комментарий от neumond

Ну что ты упираешься? Диски, как и раньше, состоят из поверхностей, на которых размечены дорожки, на которых размечены сектора. И всё это, как и раньше, имеет свою нумерацию. Да, теперь диск её остальному компу не показывает, но она только спряталась, а вовсе не исчезла.

И ты же сам предлагаешь точно такую же скрытую от компа абстракцию:

Диск это блочное устройство, там все блоки пронумерованы от нуля до N, и их никак нельзя выбросить. Только если файлсистема умеет аккуратно пропускать некоторые блоки из списка,

Ведь компу и настоящие линейные адреса тоже не показываются, ему показываются транслированные с учётом ремапа. И вот из этих транслированных выкинуть сектор очень даже можно, что контроллер и делает при обнаружении сбойного.

firkax ★★★★★
()
Ответ на: комментарий от neumond

Неплохо, значит всё-таки есть в HDD ремаппинг и резервная область. Не уверен что во всех, и неясно какой объём

Да, не во всех. В дисках из 90-х этого не было. И в начале 2000-х, возможно, тоже. Во всех современных (2010 так уж точно) это уже есть. Объём небольшой. Большой не нужен: если появилось много бэдов - это не единичные проблемы а сыпется диск, и его надо менять, а не ремапить.

Во всяком случае топикстартер давно бы уже забыл про свой битый сектор, если бы этот ремаппинг сработал

Подозреваю что он и сработал, а автор видит reallocated count в смарте и думает как его скрутить оттуда.

firkax ★★★★★
()
Ответ на: комментарий от u5er

Я давно где-то в сети этот совет увидел.

Не читайте советских газет.

Там аргументация такая, что мол бывает брак на диске и часть секторов сыпется в каком-то одном месте.

В советских газетах и не такую дичь могут написать. Начнем с того, что бэды появляются после того как резервная область себя исчерпает, т.е. хард уже сыпиться и сыпиться возможно давно, где располагаются те самые ремапнутые вы не знаете, а их много. Ну и закончим вопросом «как пересчитать номера логических секторов на физические?». Представьте, что это «одно место» представляет пятнышко на диске захватывающее три дорожки, как вы собираетесь вычислить номера логических секторов этого «рядом с уже появившимся»?

anc ★★★★★
()
Ответ на: комментарий от anc

сыпиться и сыпиться

тся

как пересчитать номера логических секторов на физические?

Хз даже. Я знаю только то, что сналача викой прогоняется тест поверхности. В ней номера идут по порядку.

Для примера возьмём условый блин, который состоит из 100 секторов. Прогоняем его викой и она показывает, что сектора 45, 47 и 50 либо плохие либо медленные. Размечаем диск так, чтоб первый раздел заканчивался на секторе 40, а второй начинался на секторе 55.

То есть какой смысл вычислять номера физических секторов, если «снаружи» они идут по порядку?

u5er ★★
()