Я пытаюсь отключить DMA на жестком диске SATA 3.5 "для работы в режиме PIO, потому что для восстановления некоторых поврежденных секторов с неисправного диска с помощью GNU ddrescue

Я использую PartedMagic Linux live CD, и я попытался изменить его с помощью hdparm. Диск использует UDMA6, поэтому я запускаю:

hdparm -p4 /dev/sda  

Он показал мне следующую ошибку (и я пробовал с несколькими режимами, а не только PIO4):

Attempting to set PIO mode to 0
HDIO_SET_PIO_MODE failed: Inappropriate ioctl for device

Кроме того, я попробовал другие живые системы Linux, такие как SystemRescueCD, добавив параметр ядра libata.dma = 0 во время загрузки. Те же результаты, и это все еще показывает мне, что используется с UDMA6 ...

Я читал о libata.force, но не очень хорошо понимаю команду. Я попробовал следующие параметры во время загрузки SystemRescueCD, и система не распознала жесткий диск на этот раз LOL (поэтому я перезапустил снова после этого, оставив эту команду в стороне).

libata.dma=0 libata.force=

Я смотрю на параметры BIOS, и я не нашел ни одного варианта DMA или аналогичного ...

Какие-либо предложения?

От записи

Это старый настольный компьютер (13 лет x64 AMD), и у меня нет другого компьютера для восстановления (мой другой компьютер - ноутбук, и я не могу подключить диск напрямую к материнской плате без каких-либо проблем). .)

1 ответ1

0

Не уверен, как режим PIO/DMA влияет на то, как диск будет читать плохие сектора.

Но попробуй это.

  • Отключить AHCI в BIOS.

  • Какая версия ядра на вашем живом CD? Попробуйте использовать что-то как можно более свежее, например, live CD Debian (на нем должны быть ddrescue и hdparm - если нет, вы можете установить их с помощью apt-get install .) Некоторые функции hdparm могут быть странными, если ядро Linux слишком старое.

  • Загрузочная система с открытым корпусом и отсоединенным кабелем питания. Дождитесь загрузки живого CD, затем аккуратно подключите кабель питания. Это безопасно для дисков SATA, если вы не касаетесь печатной платы привода (держите ее только за края и устанавливаете на нестатической приподнятой поверхности, например на верхней части компьютера) и не подвержены статическому электричеству (прикасайтесь к металлической части корпуса перед тем, как приступить к работе с диском ). Это позволит обойти любые команды безопасности ATA, которые BIOS может отправлять при загрузке и создавать помехи. Попробуйте сделать то, что отвечает принятый ответ на этот вопрос, если диск не виден после подключения.

РЕДАКТИРОВАТЬ: В соответствии с этим диски SATA могут не поддерживать режим PIO (PIO был EIDE до появления SATA). Однако я думаю, что если вы отключите AHCI в BIOS, контроллер по сути эмулирует EIDE, поэтому он все еще может работать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .