禁止使用 USB 隨身碟啟動

禁止使用 USB 隨身碟啟動

有沒有辦法讓 USB 隨身碟在重新啟動時不被偵測到,以避免 PC 嘗試使用它來啟動?假設您只能控制快閃磁碟機而不管理電腦。我知道您可以從 PC 上停用它,並且有多種方法可以使閃存驅動器啟動作業系統。

我的問題是,我有一個便攜式應用程式驅動器,裡面裝滿了有用的東西,但是當我重新啟動時,我必須將其拔出並重新插入,否則我當時正在使用的任何電腦都會掛起。

軟體解決方案是最好的,但如果有人知道 USB 裝置在啟動後一段時間才通電,那也會很有趣。

答案1

概括

引導至 Linux(即時或已安裝)並在連接到 USB 隨身碟的檔案所在位置sudo grub-install /dev/sdX運作。sdX要查找 USB 驅動器的位置,請使用sudo parted -lsudo fdisk -l [1](我不確定這將如何與 UEFI 韌體配合使用)

主要的

我的問題是我有一個用於備份的便攜式 USB 硬碟。我將 BIOS 設定為首先從 USB 啟動,因為有時我必須從 USB 啟動即時作業系統映像。當我重新啟動系統時,系統會嘗試啟動便攜式硬碟並掛起。

  • 首先,我嘗試清除分割區的啟動標誌。引導標誌沒有任何作用,因為大多數現代引導程式對此不感興趣,而且它主要由舊作業系統使用。[2]
  • 其次,我嘗試將 USB 驅動器的前 446 位元組清零,希望 BIOS 不會看到任何內容,然後繼續處理下一個驅動器。[3]事實證明 BIOS 並不是這樣運作的。據我所知,您(使用者)在 BIOS 配置中設定了啟動順序。如果 BIOS 在您指定的位置偵測到介質,它將「連接」到設備,將第一個磁區(512 位元組)複製到 RAM 並開始執行程式碼。如果該區域清零,機器就會掛起。
  • 最後,我嘗試了總結部分詳細介紹的方法。 grub-install 能夠找到我的所有作業系統,現在我不必拔掉 USB 來啟動。


[1]https://askubuntu.com/q/180023
[2]https://unix.stackexchange.com/a/23588/183350
[3] 第一個磁區(512 位元組)是主開機記錄 (MBR)。 MBR 有兩個部分:主分割區表和主開機程式碼。主引導程式碼從位元組 0-446 開始,包含系統將用來引導指定分割區的程式碼。位元組 447-512 包含實際的分割表。如果損壞或清零,系統可能無法讀取分割區。http://www.dewassoc.com/kbase/hard_drives/master_boot_record.htm
[4]https://unix.stackexchange.com/questions/259143/how-does-grub-stage1-exactly-access-load-stage-2

答案2

如果電腦嘗試從該分割區啟動,即使它沒有可啟動分割區,那麼您無法改變這一事實。

關於第二種可能性,即只有在電腦已經啟動的情況下它才會通電,這是不可能的。 USB 隨身碟會在機器需要時啟動,而不是在其他時間啟動。

抱歉,但看起來您每次啟動時都必須將其拔出(正如人們在某些硬體上使用軟碟和 CD 所做的那樣)。

筆記:這假設您無權訪問BIOS(正如我從問題中推斷出的那樣,您只控制閃存驅動器,而不是計算機)。

答案3

好吧,它對如何以其他方式做到這一點有很好的記錄,但我懷疑您需要做的就是關閉 USB 隨身碟上的啟動標誌使用一些分割區編輯器,例如 gparted。

與往常一樣,在執行任何操作之前備份驅動器,因為存在丟失所有資訊的輕微風險

答案4

如果由於某些原因 BIOS 設定不適合您。您可以查看如何將引導程式實際安裝到 USB 隨身碟上。

相關內容