Внешний диск не монтируется во время загрузки
У меня есть внешний жесткий диск (с внешним питанием) с диском 8TB внутри. Я добавил его в /etc/fstab следующим образом:
/dev/sdc2 /big ext4 rw,nosuid,nodev,relatime,nofail,data=ordered 0 0
Диск не монтируется во время загрузки. И я не могу смонтировать его вручную, используя sudo mount /dev/sdc2
потому что я не вижу диск в /dev/
,
Посоветуйте, пожалуйста, что мне делать, чтобы автоматически смонтировать диск. Диск не виден в lsusb
neigher.
Что я уже пробовал:
- Я пытался удалить
nofail
ключевое слово. Это приводит к тому, что во время загрузки я получаю следующее:
Welcome to emergency mode! After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot, "systemctl default" to try again to boot into default mode.
Я пытался заменить
/dev/sdc2
сUUID=...
, но это не имеет никакого влияния.Я попытался включить и выключить диск с помощью кнопки физического питания на коробке с диском. - Это помогло! Диск появился в /dev, он был смонтирован автоматически и появился в
lsusb
как:Bus 004 Device 002: ID 174c:55aa ASMedia Technology Inc. ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge
Я планирую использовать компьютер с диском удаленно, поэтому мне нужно, чтобы он монтировался автоматически, а не вручную, включив и выключив переключатель.
Заранее спасибо.
EDIT2: я использую следующее оборудование:
Внешняя коробка AKASA AK-TL3SEB-BK Lokstor X31, 3,5 "
HDD Seagate Archive, 3,5 ", SATAIII, 128 МБ - 8 ТБ
ноутбук Lenovo IdeaPad U410
EDIT3: я считаю, что внешняя коробка была неисправна. Я пытался подключить корпус к USB2.0, и он не работал вообще, я пытался подключить корпус к другим компьютерам и к компьютеру с Windows, и он не работал. Я благодарю @LDJames за его предложение в комментариях, что корпус может быть сломан, и за его предложение купить новый корпус. Я принес новый, и все работает отлично. Я отметил его ответ как принятый, и я очень благодарен.
2 ответа
Возможно, устройство недоступно во время загрузки. Вы можете решить свою реальную проблему, имея доступный диск, добавив скрипт для его запуска в свой /etc/rc.local
файл... файл, который автоматически запускается после загрузки системы.
Просто сделайте такой скрипт /usr/local/bin/mountdrive.sh
и добавьте эту строку в /etc/rc.local
файл.
/usr/local/bin/mountdrive.sh:
#!/bin/bash
mount /dev/sdc2
В качестве альтернативы, чтобы избежать получения already mounted
ошибка, которую вы могли бы использовать это в вашем mountdrive.sh
файл:
#!/bin/bash
mountpoint -q /big && mount /big
Результаты тестирования вашей записи в fstab:
Я подключил USB-накопитель Seagate 4 Gig Drive, использовал точную запись и добился успеха. После этого я изменил запись, чтобы использовать UUID в случае изменения спецификации диска. Вы можете получить UUID вашего раздела /dev/sda1 с помощью:
$ lsblk -o name,mountpoint,label,size,uuid,fstype
Это модифицированный fstab
Линия, которая также работает:
UUID=2a14ecf1-e4f6-45fb-8cb7-5c5317e3189e /big ext4 rw,nosuid,nodev,relatime,nofail,data=ordered 0 0
Если вы ищете монтирование во время загрузки, другой ответ от LD James и последующие комментарии - правильный путь. Однако, если вы хотите автоматически монтировать накопитель, когда это возможно, т.е. когда он доступен, вам нужно сделать две вещи
Используйте опцию auto в опциях монтирования в fstab
Используйте устройство, сопоставленное с помощью uuid, например: /dev/disks/by-uuid/《device uuid》 Это приведет к тому, что устройство обычно монтируется при каждом входе в систему.
Заметки:
При использовании внешнего USB-устройства содержимое sda sdb sdc постоянно меняется, поэтому метод будет часто давать сбой.
Если ваше внешнее устройство будет включено независимо от вашего ноутбука, оно может перейти в спящий режим для экономии энергии. Это объясняет поведение, которое вы видите.