use*_*788 6 dvd usb blu-ray 20.04
我有一个日立 LG-WH16NS6 SATA DVD 和蓝光驱动器,安装在 OWC Mercury Pro 外置 USB 3 盒中。
当我将设备连接到我的计算机并尝试在 Ubuntu (20.04 LTS) 下插入 DVD 时,光盘旋转并且驱动器尝试读取它,但光盘从未安装。
最终,驱动器转速下降。如果我在此之后尝试关闭或重新启动计算机,关闭过程将挂起,我必须进行硬重置。
如果我启动计算机并使用驱动器中的光盘启动到 Ubuntu,由于某种原因,分区efi和boot会出现在文件浏览器中(通常情况下不会出现)。光盘仍然无法安装。
矛盾的是,我可以在 Ubuntu 中使用驱动器读取和安装蓝光光盘而没有任何问题。另外,我的机器是 Windows/Ubuntu 双引导设置,驱动器可以在 Windows 10 中安装和读取 DVD 和所有其他光盘,没有任何问题。所有在 Ubuntu 下无法安装的光盘在 Windows 下安装和读取都没有问题,所以我不认为我的驱动器或介质有问题。我尝试过连接到不同的 USB 端口,也尝试过不同的 USB 电缆,但均未成功。
我已经在 Ubuntu 下安装了udftools、libdvdcss和软件包libdvdread4,libdvdnav4但这对 Linux 下驱动器的行为没有影响。
我应该如何调试和解决这个问题?
更新
这是dmesg当我连接没有光盘的驱动器时的输出:
[ 314.839390] usb 2-6: new SuperSpeed Gen 1 USB device number 3 using xhci_hcd
[ 314.860059] usb 2-6: New USB device found, idVendor=1e91, idProduct=de2c, bcdDevice= 1.00
[ 314.860064] usb 2-6: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 314.860068] usb 2-6: Product: Mercury Pro Optical
[ 314.860071] usb 2-6: Manufacturer: Other World Computing
[ 314.860073] usb 2-6: SerialNumber: 002933006777
[ 314.862325] usb-storage 2-6:1.0: USB Mass Storage device detected
[ 314.863118] scsi host6: usb-storage 2-6:1.0
[ 315.877560] scsi 6:0:0:0: CD-ROM HL-DT-ST BD-RE WH16NS60 1.00 PQ: 0 ANSI: 0
[ 315.885579] sr 6:0:0:0: [sr0] scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray
[ 315.899982] sr 6:0:0:0: Attached scsi CD-ROM sr0
[ 315.900172] sr 6:0:0:0: Attached scsi generic sg0 type 5
[ 315.976530] pktcdvd: pktcdvd0: writer mapped to sr0
Run Code Online (Sandbox Code Playgroud)
这是syslog当我连接没有磁盘的驱动器时的输出:
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.860059] usb 2-6: New USB device found, idVendor=1e91, idProduct=de2c, bcdDevice= 1.00
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.860064] usb 2-6: New USB device strings: Mfr=2, Product=3, SerialNumber=1
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.860068] usb 2-6: Product: Mercury Pro Optical
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.860071] usb 2-6: Manufacturer: Other World Computing
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.860073] usb 2-6: SerialNumber: 002933006777
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.862325] usb-storage 2-6:1.0: USB Mass Storage device detected
Apr 2 12:10:58 evan-System-Product-Name kernel: [ 314.863118] scsi host6: usb-storage 2-6:1.0
Apr 2 12:10:58 evan-System-Product-Name mtp-probe: checking bus 2, device 3: "/sys/devices/pci0000:00/0000:00:14.0/usb2/2-6"
Apr 2 12:10:58 evan-System-Product-Name mtp-probe: bus: 2, device: 3 was not an MTP device
Apr 2 12:10:58 evan-System-Product-Name mtp-probe: checking bus 2, device 3: "/sys/devices/pci0000:00/0000:00:14.0/usb2/2-6"
Apr 2 12:10:58 evan-System-Product-Name mtp-probe: bus: 2, device: 3 was not an MTP device
Apr 2 12:10:59 evan-System-Product-Name kernel: [ 315.877560] scsi 6:0:0:0: CD-ROM HL-DT-ST BD-RE WH16NS60 1.00 PQ: 0 ANSI: 0
Apr 2 12:10:59 evan-System-Product-Name kernel: [ 315.885579] sr 6:0:0:0: [sr0] scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray
Apr 2 12:10:59 evan-System-Product-Name kernel: [ 315.899982] sr 6:0:0:0: Attached scsi CD-ROM sr0
Apr 2 12:10:59 evan-System-Product-Name kernel: [ 315.900172] sr 6:0:0:0: Attached scsi generic sg0 type 5
Apr 2 12:10:59 evan-System-Product-Name kernel: [ 315.976530] pktcdvd: pktcdvd0: writer mapped to sr0
Run Code Online (Sandbox Code Playgroud)
以下是dmesg将光盘插入驱动器时的输出:
[ 499.517922] sr0: detected capacity change from 1073741312 to 7584526336
[ 531.487920] usb 2-6: reset SuperSpeed Gen 1 USB device number 3 using xhci_hcd
[ 531.508719] sr 6:0:0:0: [sr0] tag#0 FAILED Result: hostbyte=DID_TIME_OUT driverbyte=DRIVER_OK cmd_age=31s
[ 531.508721] sr 6:0:0:0: [sr0] tag#0 CDB: Read(10) 28 00 00 00 02 00 00 00 02 00
[ 531.508722] blk_update_request: I/O error, dev sr0, sector 2048 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0
[ 562.209122] usb 2-6: reset SuperSpeed Gen 1 USB device number 3 using xhci_hcd
Run Code Online (Sandbox Code Playgroud)
以下是syslog将光盘插入驱动器时的输出:
Apr 2 12:14:02 evan-System-Product-Name kernel: [ 499.517922] sr0: detected capacity change from 1073741312 to 7584526336
Apr 2 12:14:34 evan-System-Product-Name kernel: [ 531.487920] usb 2-6: reset SuperSpeed Gen 1 USB device number 3 using xhci_hcd
Apr 2 12:14:34 evan-System-Product-Name kernel: [ 531.508719] sr 6:0:0:0: [sr0] tag#0 FAILED Result: hostbyte=DID_TIME_OUT driverbyte=DRIVER_OK cmd_age=31s
Apr 2 12:14:34 evan-System-Product-Name kernel: [ 531.508721] sr 6:0:0:0: [sr0] tag#0 CDB: Read(10) 28 00 00 00 02 00 00 00 02 00
Apr 2 12:14:34 evan-System-Product-Name kernel: [ 531.508722] blk_update_request: I/O error, dev sr0, sector 2048 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0
Apr 2 12:15:01 evan-System-Product-Name CRON[5043]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Apr 2 12:15:03 evan-System-Product-Name systemd-udevd[358]: sr0: Worker [5033] processing SEQNUM=4430 is taking a long time
Apr 2 12:15:05 evan-System-Product-Name kernel: [ 562.209122] usb 2-6: reset SuperSpeed Gen 1 USB device number 3 using xhci_hcd
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920324] INFO: task scsi_eh_6:4849 blocked for more than 120 seconds.
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920332] Not tainted 5.8.0-48-generic #54~20.04.1-Ubuntu
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920335] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920338] scsi_eh_6 D 0 4849 2 0x00004000
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920344] Call Trace:
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920358] __schedule+0x394/0xa60
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920365] schedule+0x55/0xc0
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920371] schedule_preempt_disabled+0xe/0x10
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920377] __mutex_lock.isra.0+0x17d/0x4e0
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920384] ? newidle_balance+0x1d4/0x3c0
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920391] __mutex_lock_slowpath+0x13/0x20
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920396] mutex_lock+0x32/0x40
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920406] device_reset+0x22/0x50 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920413] scsi_eh_ready_devs+0x580/0xa40
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920419] ? __pm_runtime_resume+0x60/0x80
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920425] scsi_error_handler+0x446/0x520
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920430] kthread+0x114/0x150
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920436] ? scsi_eh_get_sense+0x210/0x210
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920438] ? kthread_park+0x90/0x90
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920445] ret_from_fork+0x22/0x30
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920451] INFO: task usb-storage:4851 blocked for more than 120 seconds.
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920455] Not tainted 5.8.0-48-generic #54~20.04.1-Ubuntu
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920457] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920460] usb-storage D 0 4851 2 0x00004000
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920464] Call Trace:
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920470] __schedule+0x394/0xa60
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920476] schedule+0x55/0xc0
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920479] schedule_timeout+0x111/0x160
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920485] ? usb_hcd_submit_urb+0xa5/0x2e0
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920491] wait_for_completion+0x94/0x100
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920496] usb_sg_wait+0xea/0x170
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920504] usb_stor_bulk_transfer_sglist.part.0+0x6c/0xc0 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920511] usb_stor_bulk_srb+0x4b/0x80 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920518] usb_stor_Bulk_transport+0x171/0x410 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920527] usb_stor_invoke_transport+0x3e/0x520 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920530] ? schedule_timeout+0x111/0x160
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920536] ? wait_for_completion_interruptible+0xc3/0x140
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920543] usb_stor_transparent_scsi_command+0xe/0x10 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920551] usb_stor_control_thread+0x195/0x290 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920555] kthread+0x114/0x150
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920561] ? storage_probe+0x2b0/0x2b0 [usb_storage]
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920564] ? kthread_park+0x90/0x90
Apr 2 12:17:49 evan-System-Product-Name kernel: [ 725.920569] ret_from_fork+0x22/0x30
Run Code Online (Sandbox Code Playgroud)
Disks当光盘插入驱动器时,应用程序将不会启动。当驱动器已连接且为空时,我会看到以下显示:
小智 4
尝试这个:
sudo cp /usr/lib/udev/rules.d/60-persistent-storage.rules /etc/udev/rules.d/60-persistent-storage.rules
sudo vim /etc/udev/rules.d/60-persistent-storage.rules
Run Code Online (Sandbox Code Playgroud)
并在 中添加以下行/etc/udev/rules.d/60-persistent-storage.rules:
# probe filesystem metadata of optical drives which have a media inserted
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="?*", \
IMPORT{builtin}="blkid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}"
# single-session CDs do not have ID_CDROM_MEDIA_SESSION_LAST_OFFSET
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="", \
IMPORT{builtin}="blkid --noraid"
Run Code Online (Sandbox Code Playgroud)
看起来像这样:
# probe filesystem metadata of optical drives which have a media inserted
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="?*", \
GOTO="persistent_storage_end"
## IMPORT{builtin}="blkid --offset=$env{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}"
# single-session CDs do not have ID_CDROM_MEDIA_SESSION_LAST_OFFSET
KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="", \
GOTO="persistent_storage_end"
## IMPORT{builtin}="blkid --noraid"
Run Code Online (Sandbox Code Playgroud)
(这些IMPORT...语句已被注释掉并替换为GOTO...替换内容)
重新启动,然后再次尝试您的 DVD 电影媒体 - 现在应该可以工作了。
参考:
我遇到了与 OP 描述的完全相同的问题,但使用了不同的 SATA 转 USB 外壳 (Vantec NST-536S3-BK NexStar DX) 和不同的蓝光驱动器 (LG WH16NS40)。经过大量挖掘后,我在 Fedora 系统上发现了这个错误报告,其中提到了更多不同硬件上的类似问题。它们的一个共同点是在 SATA 转 USB3 外部外壳中使用蓝光驱动器。
该错误报告表明,他们的问题在于将blkid光学介质插入驱动器时的不良行为。和他一样,我能够验证该驱动器在 Win10 系统上运行良好,但在多台 Ubuntu 20.04 计算机上,DVD 电影介质会导致驱动器挂起一段时间,并且操作系统永远无法识别该介质。
另一个错误报告被引用为源材料,其中引用了此问题的解决方法,此处。
不幸的是,这两个错误报告最终因过期而因未解决而被关闭。我很乐意将其提交给 util-linux 软件包维护者和内核维护者之一,以了解真正应该在哪里实现此问题的修复。