У меня есть жесткий диск Toshiba USB емкостью 1 ТБ, подключенный к порту USB 3.0 на моем ноутбуке (Asus X550C). Я использую Ubuntu 18.04 (ядро 4.15.0-166-универсальное).
Раньше я засыпал/пробуждал компьютер с подключенным USB-накопителем, и все возобновлялось нормально. Однако после одного обновления Ubuntu (я не могу сказать, какое) я получаю ошибки ввода-вывода с USB-диска после пробуждения:
пользователь@asus:/media/user/HDD$ ls
ls: чтение каталога '.': ошибка ввода/вывода
Все программы, у которых есть файл, открытый с USB-диска, аварийно завершают работу после возобновления работы, потому что они не могут получить доступ к диску.
Что я наблюдал методом проб и ошибок:
- Новые программы могут успешно получить доступ к диску. Однако те программы, которые прошли цикл сна/пробуждения, никогда не восстанавливают доступ, даже если диск снова работает.
- Есть одно исключение: если я оставляю оболочку открытой и указываю на каталог на диске, я получаю ошибки ввода-вывода. Однако, если я наберу
CD .
ошибки уходят и HDD снова работает (только CD .
, любая другая команда приводит к ошибке ввода-вывода)
- Если я подключаю жесткий диск к порту USB 2.0, он успешно просыпается
- Если я подключаю флешку (не HDD), он успешно просыпается
Это похоже на то, что текущий каталог каким-то образом теряется для программ, которые проходят через процесс сна/пробуждения. Программы, открытые после пробуждения, работают нормально. Это происходит только для жесткого диска, подключенного к USB 3.0 (например, в гоночных условиях).
$ судо фдиск -л
Диск /dev/sda: 447,1 ГиБ, 480103981056 байт, 937703088 секторов
Единицы: секторы 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода/вывода (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: dos
Идентификатор диска: 0x8cc1ecc7
Размер начальных и конечных секторов загрузки устройства Идентификатор типа
/dev/sda1 * 2048 206847 204800 100M 7 HPFS/NTFS/exFAT
/dev/sda2 206848 440526847 440320000 210G 7 HPFS/NTFS/exFAT
/dev/sda3 440526848 937701375 497174528 237.1G 83 Linux
Диск /dev/sdc: 931,5 ГиБ, 1000204883968 байт, 1953525164 сектора
Единицы: секторы 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода/вывода (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: dos
Идентификатор диска: 0x9b0f78c0
Размер начальных и конечных секторов загрузки устройства Идентификатор типа
/dev/sdc1 2048 983042047 983040000 468.8G 7 HPFS/NTFS/exFAT
/dev/sdc2 983042048 1953525163 970483116 462,8 ГБ 83 Linux
$ лсусб
Шина 002 Устройство 002: ID 8087:0024 Корпорация Intel Integrated Rate Matching Hub
Шина 002 Устройство 001: ID 1d6b:0002 Корневой концентратор Linux Foundation 2.0
Шина 001 Устройство 003: ID 04f2:b40a Chicony Electronics Co., Ltd.
Шина 001 Устройство 002: ID 8087:0024 Корпорация Intel Integrated Rate Matching Hub
Шина 001 Устройство 001: ID 1d6b:0002 Корневой концентратор Linux Foundation 2.0
Шина 004 Устройство 021: ID 0480:a00c Toshiba America Inc.
Шина 004 Устройство 001: ID 1d6b:0003 Корневой концентратор Linux Foundation 3.0
Шина 003 Устройство 007: ID 0835:8502 Action Star Enterprise Co., Ltd.
Шина 003 Устройство 006: ID 0835:8500 Action Star Enterprise Co., Ltd.
Шина 003 Устройство 005: ID 046d:c31c Клавиатура Logitech, Inc. K120
Шина 003 Устройство 004: ID 046d:c03e Мышь Logitech, Inc. Premium Optical Wheel Mouse (M-BT58)
Шина 003 Устройство 003: ID 0835:8501 Action Star Enterprise Co., Ltd.
Шина 003 Устройство 002: ID 0835:8500 Action Star Enterprise Co., Ltd.
Шина 003 Устройство 001: ID 1d6b:0002 Корневой концентратор Linux Foundation 2.0
вывод dmes с USB 3.0 (воспроизводится ошибка):
[80.707547] wlp2s0: деаутентификация с 54:a0:50:e4:82:30 по локальному выбору (причина: 3=DEAUTH_LEAVING)
[ 83.020979] PM: приостановить запись (глубоко)
[83.020982] PM: Синхронизация файловых систем... выполнена.
[83.034082] Замораживание процессов пользовательского пространства... (прошло 0,002 секунды) выполнено.
[ 83.036245] Убийца OOM отключен.
[ 83.036246] Замораживание оставшихся замораживаемых задач... (прошло 0,001 секунды) выполнено.
[ 83.037516] Приостановка консоли (консолей) (используйте no_console_suspend для отладки)
[83.056384] sd 0:0:0:0: [sda] Синхронизация кэша SCSI
[83.056445] sd 0:0:0:0: [sda] Остановка диска
[83.064227] sd 6:0:0:0: [sdb] Синхронизация кэша SCSI
[83.225059] ACPI: EC: прерывание заблокировано
[83.244915] ACPI: подготовка к переходу системы в спящий режим S3
[83.252323] ACPI: EC: событие заблокировано
[ 83.252325] ACPI: EC: EC остановлен
[ 83.252326] PM: Сохранение памяти NVS платформы
[83.252516] Отключение незагрузочных ЦП...
[83.268409] IRQ 31: больше не привязано к CPU1
[ 83.269427] smpboot: ЦП 1 теперь отключен
[ 83.294105] smpboot: ЦП 2 теперь отключен
[83.316526] IRQ 23: больше не связано с CPU3
[83.316533] IRQ 26: больше не привязано к CPU3
[83.316541] IRQ 29: больше не связано с CPU3
[ 83.317557] smpboot: ЦП 3 теперь отключен
[ 83.319808] ACPI: низкоуровневое возобновление завершено
[ 83.319884] ACPI: EC: EC запущен
[83.319885] PM: восстановление памяти платформы NVS
[83.321732] Включение незагрузочных ЦП...
[83.321805] x86: загрузка конфигурации SMP:
[83.321806] smpboot: загрузочный узел 0 процессор 1 APIC 0x2
[ 83.325400] кеш: родительский процессор 1 не должен спать
[ 83.325731] CPU1 работает
[83.325772] smpboot: загрузочный узел 0 процессор 2 APIC 0x1
[83.328403] кеш: родительский процессор 2 не должен спать
[ 83.329072] CPU2 работает
[83.329111] smpboot: загрузочный узел 0 процессор 3 APIC 0x3
[83.331670] кеш: родительский процессор 3 не должен спать
[ 83.332147] Процессор 3 работает
[83.336322] ACPI: выход из состояния сна системы S3
[83.415767] ACPI: EC: прерывание разблокировано
[83.436652] ACPI: EC: событие разблокировано
[83.436704] usb usb3: корневой концентратор потерял питание или был сброшен
[83.436709] usb usb4: корневой концентратор потерял питание или был сброшен
[83.437112] usb usb1: корневой концентратор потерял питание или был сброшен
[83.437889] usb usb2: корневой концентратор потерял питание или был сброшен
[83.441029] ehci-pci 0000:00:1a.0: размер строки кэша 64 не поддерживается
[83.441796] ehci-pci 0000:00:1d.0: размер строки кэша 64 не поддерживается
[83.444014] sd 0:0:0:0: [sda] Стартовый диск
[ 83.552768] r8169 0000:03:00.2 enp3s0f2: ссылка не работает
[83.734197] usb 2-1: сброс высокоскоростного USB-устройства номер 2 с помощью ehci-pci
[83.734220] usb 1-1: сброс высокоскоростного USB-устройства номер 2 с помощью ehci-pci
[83.768919] ata1: соединение SATA со скоростью 6,0 Гбит/с (SStatus 133 SControl 300)
[83.768963] ata3: соединение SATA со скоростью 1,5 Гбит/с (SStatus 113 SControl 300)
[83.770066] ata1.00: ACPI cmd f5/00:00:00:00:00:a0 (БЛОКИРОВКА БЕЗОПАСНОСТИ) отфильтрована
[83.770934] ata1.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[83.770939] ata1.00: команда ACPI ef/10:03:00:00:00:a0 (SET FEATURES) отфильтрована
[83.771145] ata3.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[ 83.771152] ata3.00: команда ACPI ef/10:03:00:00:00:a0 (SET FEATURES) отфильтрована
[83.772458] ata1.00: ACPI cmd f5/00:00:00:00:00:a0 (БЛОКИРОВКА БЕЗОПАСНОСТИ) отфильтрована
[83.772534] ata1.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[ 83.772539] ata1.00: команда ACPI ef/10:03:00:00:00:a0 (SET FEATURES) отфильтрована
[83.772644] ata1.00: настроен для UDMA/133
[83.776606] ata3.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[83.776612] ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) отфильтровано
[83.778387] ata3.00: настроен для UDMA/133
[84.205989] usb 1-1.3: сброс высокоскоростного USB-устройства номер 3 с помощью ehci-pci
[ 86.415072] Убийца OOM включен.
[86.415075] Перезапуск задач...
[86.415368] usb 4-1: отключение USB, номер устройства 2
[ 86.422799] сделано.
[86.425772] print_req_error: ошибка ввода-вывода, dev sdb, сектор 0
[86.437800] sd 6:0:0:0: [sdb] Синхронизация кэша SCSI
[86.437843] sd 6:0:0:0: [sdb] Ошибка синхронизации кэша (10): Результат: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
[86.493540] blk_partition_remap: сбой для раздела 2
[86.493568] Ошибка ввода-вывода буфера на dev sdb2, логический блок 60325888, потеря записи страницы синхронизации
[86.493581] JBD2: обнаружена ошибка -5 при обновлении суперблока журнала для sdb2-8.
[ 86.493583] Прерывание журнала на устройстве sdb2-8.
[86.493587] blk_partition_remap: сбой для раздела 2
[86.493588] Ошибка ввода-вывода буфера на dev sdb2, логический блок 60325888, потеря записи страницы синхронизации
[86.493590] JBD2: обнаружена ошибка -5 при обновлении суперблока журнала для sdb2-8.
[ 86.638576] PM: приостановить выход
[86.746072] IPv6: ADDRCONF(NETDEV_UP): enp3s0f2: ссылка не готова
[ 86.843335] r8169 0000:03:00.2 enp3s0f2: ссылка не работает
[86.843517] IPv6: ADDRCONF(NETDEV_UP): enp3s0f2: ссылка не готова
[86.846125] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: ссылка не готова
[86.996625] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: ссылка не готова
[87.053851] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: ссылка не готова
[87.320988] usb 4-1: новое устройство SuperSpeed USB номер 3 с использованием xhci_hcd
[87.344753] usb 4-1: найдено новое USB-устройство, idVendor=0480, idProduct=a00c
[ 87.344757] usb 4-1: новые строки USB-устройства: производитель = 1, продукт = 2, серийный номер = 3
[ 87.344759] usb 4-1: Продукт: Внешний USB 3.0
[87.344760] usb 4-1: Производитель: TOSHIBA
[87.344762] USB 4-1: Серийный номер: 20140114057420
[87.345967] usb-storage 4-1:1.0: Обнаружено запоминающее устройство USB
[ 87.347590 ] usb-storage 4-1: 1.0: совпадение причуд для vid 0480 pid a00c: 800000
[87.347626] scsi host6: usb-хранилище 4-1:1.0
[88.175858] wlp2s0: аутентификация с помощью 54:a0:50:e4:82:30
[ 88.185166] wlp2s0: отправить авторизацию на 54:a0:50:e4:82:30 (попробуйте 1/3)
[88.186656] wlp2s0: аутентифицировано
[ 88.188952] wlp2s0: связать с 54:a0:50:e4:82:30 (попробуйте 1/3)
[88.192934] wlp2s0: RX AssocResp от 54:a0:50:e4:82:30 (capab=0x1411 статус=0 помощь=5)
[88.193029] wlp2s0: связан
[88.214555] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: ссылка готова
[ 88.377019] scsi 6:0:0:0: Внешний USB 3.0 TOSHIBA с прямым доступом 5438 PQ: 0 ANSI: 6
[ 88.381543 ] sd 6: 0: 0: 0: подключенный scsi generic sg2 type 0
[ 88.382630] sd 6:0:0:0: [sdb] 1953525164 Логические блоки по 512 байт: (1,00 ТБ/932 ГиБ)
[88.382979] sd 6:0:0:0: [sdb] Защита от записи отключена
[ 88.382982] sd 6:0:0:0: [sdb] Значение режима: 23 00 00 00
[88.383327] sd 6:0:0:0: [sdb] Кэш записи: включен, кэш чтения: включен, не поддерживает DPO или FUA
[ 90.948674] сдб: сдб1 сдб2
[ 90.960736] sd 6:0:0:0: [sdb] Подключенный диск SCSI
[92.224427] EXT4-fs (sdb2): восстановление завершено
[92.284931] EXT4-fs (sdb2): смонтированная файловая система с режимом упорядоченных данных. Опции: (нулевой)
вывод dmes с USB 2.0 (без ошибок):
[101.037552] wlp2s0: деаутентификация с 54:a0:50:e4:82:30 по локальному выбору (причина: 3=DEAUTH_LEAVING)
[ 103.385167] PM: приостановить вход (глубокий)
[ 103.385170] PM: Синхронизация файловых систем... выполнена.
[103.397551] Замораживание процессов пользовательского пространства... (прошло 0,002 секунды) выполнено.
[ 103.399954] Убийца OOM отключен.
[ 103.399955] Замораживание оставшихся замораживаемых задач... (прошло 0,001 секунды) выполнено.
[ 103.401220] Приостановка работы консоли (используйте no_console_suspend для отладки)
[103.433979] sd 6:0:0:0: [sdb] Синхронизация кэша SCSI
[103.433981] sd 0:0:0:0: [sda] Синхронизация кэша SCSI
[ 103.434395] sd 0:0:0:0: [sda] Остановка диска
[103.603845] ACPI: EC: прерывание заблокировано
[103.623791] ACPI: подготовка к переходу системы в спящий режим S3
[103.755715] ACPI: EC: событие заблокировано
[ 103.755717] ACPI: EC: EC остановлен
[ 103.755718] PM: Сохранение памяти NVS платформы
[103.755866] Отключение незагрузочных ЦП...
[103.771717] IRQ 31: больше не привязано к CPU1
[ 103.772734] smpboot: ЦП 1 теперь отключен
[ 103.797121] smpboot: ЦП 2 теперь отключен
[103.819706] IRQ 23: больше не привязано к CPU3
[103.819714] IRQ 26: больше не привязано к CPU3
[ 103.819719] IRQ 27: больше не привязано к CPU3
[ 103.820738] smpboot: ЦП 3 теперь отключен
[ 103.823007] ACPI: низкоуровневое возобновление завершено
[ 103.823087] ACPI: EC: EC запущен
[ 103.823089] PM: восстановление памяти платформы NVS
[103.824934] Включение незагрузочных ЦП...
[103.825037] x86: загрузка конфигурации SMP:
[103.825038] smpboot: загрузочный узел 0 процессор 1 APIC 0x2
[103.828655] кеш: родительский процессор 1 не должен спать
[ 103.828991 ] ЦП1 работает
[103.829030] smpboot: загрузочный узел 0 процессор 2 APIC 0x1
[103.831690] кеш: родительский процессор 2 не должен спать
[ 103.832340 ] CPU2 работает
[103.832389] smpboot: загрузочный узел 0 процессор 3 APIC 0x3
[103.834918] кеш: родительский процессор 3 не должен спать
[ 103.835416 ] CPU3 работает
[103.839605] ACPI: выход из состояния сна системы S3
[103.902963] ACPI: EC: прерывание разблокировано
[ 103.923403] ACPI: EC: событие разблокировано
[103.923449] usb usb3: корневой концентратор потерял питание или был сброшен
[103.923454] usb usb4: корневой концентратор потерял питание или был сброшен
[103.925642] usb usb1: корневой концентратор потерял питание или был сброшен
[103.927446] usb usb2: корневой концентратор потерял питание или был сброшен
[103.929543] ehci-pci 0000:00:1a.0: размер строки кэша 64 не поддерживается
[103.931347] ehci-pci 0000:00:1d.0: размер строки кэша 64 не поддерживается
[ 103.935308] sd 0:0:0:0: [sda] Начальный диск
[ 104.035971] r8169 0000:03:00.2 enp3s0f2: ссылка не работает
[104.225463] usb 1-1: сброс высокоскоростного USB-устройства номер 2 с помощью ehci-pci
[104.225473] usb 2-1: сброс высокоскоростного USB-устройства номер 2 с помощью ehci-pci
[104.320371] ata3: подключение SATA до 1,5 Гбит/с (SStatus 113 SControl 300)
[104.320409] ata1: соединение SATA со скоростью 6,0 Гбит/с (SStatus 133 SControl 300)
[ 104.321734] ata1.00: команда ACPI f5/00:00:00:00:00:a0 (БЛОКИРОВКА БЕЗОПАСНОСТИ) отфильтрована
[104.322970] ata1.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[104.322978] ata1.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) отфильтровано
[104.323150] ata3.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[ 104.323158] ata3.00: команда ACPI ef/10:03:00:00:00:a0 (SET FEATURES) отфильтрована
[ 104.324340] ata1.00: команда ACPI f5/00:00:00:00:00:a0 (БЛОКИРОВКА БЕЗОПАСНОСТИ) отфильтрована
[104.324379] ata1.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[ 104.324383] ata1.00: команда ACPI ef/10:03:00:00:00:a0 (SET FEATURES) отфильтрована
[ 104.324562] ata1.00: настроен для UDMA/133
[104.328629] ata3.00: ACPI cmd ef/10:06:00:00:00:a0 (SET FEATURES) выполнено успешно
[104.328647] ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) отфильтровано
[104.330415] ata3.00: настроен для UDMA/133
[104.341631] usb 3-2: сброс высокоскоростного USB-устройства номер 2 с помощью xhci_hcd
[104.697412] usb 1-1.3: сброс высокоскоростного USB-устройства номер 3 с помощью ehci-pci
[ 104.837895] Убийца OOM включен.
[ 104.837899] Перезапуск задач... выполнено.
[ 105.098906] PM: приостановить выход
[105.182497] IPv6: ADDRCONF(NETDEV_UP): enp3s0f2: ссылка не готова
[ 105.283583] r8169 0000:03:00.2 enp3s0f2: ссылка не работает
[105.283671] IPv6: ADDRCONF(NETDEV_UP): enp3s0f2: ссылка не готова
[105.285124] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: ссылка не готова
[105.433822] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: ссылка не готова
[105.482910] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: ссылка не готова
[106.622874] wlp2s0: аутентификация с помощью 54:a0:50:e4:82:30
[ 106.627239] wlp2s0: отправить авторизацию на 54:a0:50:e4:82:30 (попробуйте 1/3)
[106.630373] wlp2s0: аутентифицирован
[ 106.633249] wlp2s0: связать с 54:a0:50:e4:82:30 (попробуйте 1/3)
[ 106.649449] wlp2s0: RX AssocResp от 54:a0:50:e4:82:30 (capab=0x1411 статус=0 помощь=5)
[106.649543] wlp2s0: связан
[106.671964] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: ссылка готова
Как видите, единственная разница между двумя логами заключается в том, что в USB 3.0 жесткий диск отключается от шины USB:
...
[86.415368] usb 4-1: отключение USB, номер устройства 2
...
Поэтому, когда ОС пытается получить доступ к файлам с жесткого диска, жесткий диск не готов, и возникает ошибка.
Любая идея, что может быть причиной этого отключения только под USB 3.0?
Заранее большое спасибо.