У меня есть управляемая питанием Карта памяти, которая выключается если не используемый, и просыпается автоматически при доступе. Это используется в качестве резервного диска из корневого сценария, который монтирует его при необходимости. Иногда команда монтирования перестала работать, потому что я подозреваю, что она не всегда ожидает диска вращаться (хотя это - предположение).
Я хотел бы поместить команду в сценарий, который будет зондировать диск и заставлять его вращаться, таким образом, это будет готово, когда монтирование выпущено. Я попробовал lsusb
но это не работает, и команды файловой системы не делают ни одного, поскольку это еще не смонтировано. fdisk -l
действительно кажется, работает, но там что-то лучше, что я мог использовать?
ОБНОВЛЕНИЕ
Как предложено @vidarlo я проверил dmesg после следующего раза отказавшее монтирование:
[Sun Aug 5 01:30:04 2018] usb 1-1: reset high-speed USB device number 2 using xhci_hcd [Sun Aug 5 01:30:04 2018] usb 1-1: device firmware changed [Sun Aug 5 01:30:04 2018] usb 1-1: USB disconnect, device number 2 [Sun Aug 5 01:30:04 2018] sd 2:0:0:0: [sdb] tag#0 FAILED Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK [Sun Aug 5 01:30:04 2018] sd 2:0:0:0: [sdb] tag#0 CDB: Read(10) 28 00 00 00 00 41 00 00 02 00 [Sun Aug 5 01:30:04 2018] print_req_error: I/O error, dev sdb, sector 65 [Sun Aug 5 01:30:04 2018] EXT4-fs (sdb1): unable to read superblock [Sun Aug 5 01:30:04 2018] usb 1-1: new high-speed USB device number 4 using xhci_hcd [Sun Aug 5 01:30:05 2018] usb 1-1: New USB device found, idVendor=152d, idProduct=2339 [Sun Aug 5 01:30:05 2018] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=5 [Sun Aug 5 01:30:05 2018] usb 1-1: Product: USB to ATA/ATAPI Bridge [Sun Aug 5 01:30:05 2018] usb 1-1: Manufacturer: JMicron [Sun Aug 5 01:30:05 2018] usb 1-1: SerialNumber: 152D203380B6 [Sun Aug 5 01:30:05 2018] usb-storage 1-1:1.0: USB Mass Storage device detected [Sun Aug 5 01:30:05 2018] scsi host2: usb-storage 1-1:1.0 [Sun Aug 5 01:30:07 2018] scsi 2:0:0:0: Direct-Access SAMSUNG HD321KJ PQ: 0 ANSI: 2 CCS [Sun Aug 5 01:30:07 2018] sd 2:0:0:0: Attached scsi generic sg1 type 0 [Sun Aug 5 01:30:07 2018] sd 2:0:0:0: [sdb] 625142448 512-byte logical blocks: (320 GB/298 GiB) [Sun Aug 5 01:30:07 2018] sd 2:0:0:0: [sdb] Write Protect is off [Sun Aug 5 01:30:07 2018] sd 2:0:0:0: [sdb] Mode Sense: 00 38 00 00 [Sun Aug 5 01:30:07 2018] sd 2:0:0:0: [sdb] Asking for cache data failed [Sun Aug 5 01:30:07 2018] sd 2:0:0:0: [sdb] Assuming drive cache: write through [Sun Aug 5 01:30:08 2018] sdb: sdb1 [Sun Aug 5 01:30:08 2018] sd 2:0:0:0: [sdb] Attached SCSI disk
Независимо от ошибки диск, кажется, заканчивает тем, что стал доступным. Я полагаю, что, если бы я повторно выполнил резервный сценарий в этой точке, это работало бы.
Любое чтение должно инициировать его:
sudo dd if=/dev/sdx1 bs=1k count=1 of=/dev/zero
попытается читать из него и должен разбудить его.
Обратите внимание, что я несколько сомневаюсь, что это - причина, монтируются, не работает. Вы получаете какие-либо сообщения об ошибках? Что делает dmesg | tail -n 25
показать после неудавшейся попытки монтирования?
Ваша управляемая питанием Карта памяти выключается если не используемый, и просыпается автоматически при доступе, но иногда слишком медленно. В этом случае это это ни не размонтированный, ни извлеченный, и я думаю команда
sudo partprobe
должен разбудить его.
Не в этом случае, но в некоторых связанных случаях
sleep 5
помог бы путем предоставления операционной системе 5 секунд для подготовки к следующей команде (резервное копирование).
Если Вы размонтировали все разделы на Карте памяти с sudo umount ...
, это все еще включено и подключено к a /dev/sdx
(где x
буква диска, например b
или c
), и можно смонтировать разделы на нем снова с sudo mount ...
.
При извлечении USB pendrive который является типичным действием от файлового браузера, когда Вы нажимаете на извлечь значок, все разделы на нем размонтированы, и это выключается и больше не подключается с /dev/sdx
. Я подразумеваю, что Вы не можете разбудить его никакой командой, указав /dev/sdx
.
Когда Вы отключите и включите извлеченную Карту памяти снова, она будет включена и подключена с /dev/sdx
.
Никогда не отключайте Карту памяти, которая имеет смонтированный раздел, потому что существует высокий риск, что файловая система в разделе будет повреждена.
Таким образом, необходимо размонтировать или извлечь (или завершить работу компьютера) перед отключением.