
我遇過一個有趣的場景。
我有一些 Debian Live CD 映像(我已經嘗試過debian-8.11.0-amd64-netinst.iso,debian-9.6.0-amd64-netinst.iso以及我使用 live-build 構建的一些自訂圖像)並將dd
圖像保存到 USB 驅動器上。
我使用 USB 驅動器啟動電腦並將 Debian 安裝到硬碟上。
安裝完成後,電腦將重新啟動。
此時,登入後,我發現無法使用仍插入的 USB 隨身碟。
我可以看到它/dev/sdb
,但/dev
沒有顯示 USB 驅動器的任何分割區。
我嘗試過fdisk -l /dev/sdb
但得到了fdisk: cannot open /dev/sdb: No medium found
。
我看到相關的唯一dmesg
兩行是
sd 2:0:0:0: Attached scsi generic sg1 type0
sd 2:0:0:0: [sdb] Attached SCSI removable disk
這是有趣的部分。
如果我拔下驅動器並重新插入,它會被檢測到並且工作正常。
如果我重新啟動盒子(或reboot
然後poweroff
打開電源),它就不起作用。
但是,如果在盒子斷電後,我拔下驅動器並重新插入,則在下次啟動時它可以工作。
我想知道 Debian 安裝程式中是否有某種機制可以阻止 USB 驅動器工作以避免重新啟動安裝循環。
我查看了一些文件,發現/bin/live-medium-eject
它沒有對 USB 設備執行任何操作,並且有以下評論:
# ignoring usb mass storage devices
# (they need coldreboot to recover)
造成這種行為的原因是什麼?
編輯1
我還嘗試了 Ubuntu 18.04 和 CentOS 7.6。 Ubuntu 產生與 Debian 相同的行為,但 CentOS 可以在首次啟動時識別 USB 驅動器。