Как проигнорировать/dev/sda в смысле загрузочного диска?

Я хочу сделать старое (для использования правильного термина, древнего) работа ноутбука с Ubuntu 14.04. Установленный жесткий диск не функционирует правильно, и поэтому Ubuntu имеет ПАРТИИ для жалобы на. Вот ошибка:

ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata1.00: BMDMA stat 0x25
ata1.00: failed command: READ DMA
ata1.00: cmd c8/00:08:00:00:00/00:00:00:00:00/e0 tag 0 dma 4096 in
     res 51/40:08:00:00:00/00:00:00:00:00/e0 Emask 0x9 (media error)
ata1.00: status: { DRDY ERR }
ata1.00: error: { UNC }
end_request: I/O error, dev sda, sector x
Buffer I/O error on device sda, logical block x

Я попробовал:

  • добавление "nobootwait" к/dev/sda строке в/etc/fstab
  • вставка "опций libata noacpi=1" в/etc/modprobe.d/options

Прежде чем я добавил "опции libata noacpi=1", это на самом деле добралось до оболочки. Теперь, это просто зависает после нескольких минут.

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

2
задан 25 May 2014 в 08:18

3 ответа

Да, возможно сказать Linux игнорировать сбойный диск (1), физически не разъединяя его (2).

Взгляд на этот вопрос: , Как я могу сказать ядру Linux полностью игнорировать диск, как будто оно даже не было соединено?

патч ядра, прокомментированный там, включен в ядро 3.13 и, таким образом, в 14,04 необходимо быть в состоянии добавить параметр командной строки к ядру:

 libata.force=1.00:disable

И диск будет полностью проигнорирован (3). Если Вы нуждаетесь в помощи на добавляющих параметрах начальной загрузки ядра, см. , Как я добавляю параметр начальной загрузки ядра?

<час> Сноски:

(1) это не было возможно десять месяцев назад. Тогда я отправил связанный вопрос, потому что у меня был сбой на борту SDD, добрый разработчик ядра заметил его, добавил патч к ядру, и теперь у меня есть рабочая система. Это - действительная мощность Linux.

(2), Хотя, если Вы можете, лучшая стратегия состоит в том, чтобы физически избавиться от него. Никакой дренаж питания, никакой шум...

(3) примечание, что, очевидно, это означает, что диск не будет доступен вообще после начальной загрузки. Это будет, как будто это не существует (и это означает, что, например, в Вашем случае, диск, который был /dev/sdb, это будет теперь /dev/sda и так далее). Вы, возможно, должны принять это во внимание для загрузочной конфигурации.

0
ответ дан 7 October 2019 в 18:59

Вы могли также попытаться изменить запись в /etc/fstab. Значение по умолчанию для устройств там rw,suid,dev,exec,auto,nouser,async, что означает, что, если Ваше устройство /dev/sda имеет запись в /etc/fstab для монтирования /dev/sda1 тогда, необходимо переопределить поведение по умолчанию путем помещения noauto и возможно ro (только для чтения) для опций монтирования и 0 для дампа и 0 для fsck (проверка файловой системы). Мог бы выглядеть примерно так:

/dev/sda1     /mnt/windows     noauto,ro     0     0

Hope, которая помогает.

1
ответ дан 7 October 2019 в 18:59

Удаление/etc/fstab записи для/dev/sda не работают или что-то? IIRC, mountall (утилита для монтирования файловых систем при начальной загрузке) все еще попытается смонтировать файловую систему при начальной загрузке, даже если у Вас будет nobootwait.

0
ответ дан 7 October 2019 в 18:59

Другие вопросы по тегам:

Похожие вопросы: