無需拔掉插頭即可更新 USB ISO 的更好方法

無需拔掉插頭即可更新 USB ISO 的更好方法

我正在建立一個小型作業系統,當我進行更改時,我會建立 ISO。這個ISO可以與qemu一起正常工作,但是當我必須測試一些硬體問題時,我需要在另一台電腦上啟動它。所以:

  1. 我將 USB 插入電腦
  2. 我使用 dd 將 ISO 複製到 USBsudo dd if=my_os.iso of=/dev/sdb
  3. 我從電腦上拔掉插頭
  4. 我將其插入其他計算機,然後重新啟動。

Bios 正確啟動新作業系統編譯。

每天早上100次之後,這真是令人沮喪。所以我正在尋找一種方法來避免拔出、啟動 dd 腳本等。

我探索過使用SD卡等無線方式,本教程展示如何遠端更改資料夾。我認為這不是一個解決方案,因為本質上,該卡有一個小型的類似linux的作業系統來安裝數據,並且我需要覆蓋BIOS啟動的一部分內存。

我探索的另一種方法是使用樹莓派,透過USB連接(我不知道是否可以直接使用)並嘗試使用像MTP這樣的協議來模擬USB作為內存,這樣我可以創建一個腳本來發送新的iso到樹莓派,用iso 更新部分內存,然後打開另一台在RAM 中加載新作業系統編譯的電腦。

我沒有更多的計劃,我認為這是不可能的,那麼,有什麼想法可以解決這個問題嗎?

更新:我的問題類似於這個帖子。我將嘗試使其適應這一點並避免購買更多硬體(除了 wifi SD)

答案1

令人驚訝的是,沒有任何商業產品直接針對這個問題。這裡有一些需要調查的事情。

  1. 使用具有額外 USB 連接埠(例如 CDROM)的 kvm(鍵盤/視訊/滑鼠)開關。這個任意的例子 TK-222DVK 聲稱擁有2 個額外 USB 共用端口,用於儲存裝置或印表機。我的理解是,您可以因此在兩台主機之間切換設備,但我可能是錯的(沒有關於該主題的文檔)。請注意,您的第二台電腦必須能夠處理集線器後面的 USB 裝置。

  2. 如果兩台電腦之間的距離很遠,您可以考慮使用 ip-kvm,即網路上的 kvm。任意的例子 lantronix 蜘蛛 說它提供虛擬媒體支持。我的理解是,這允許您的第二台電腦看到 USB cdrom 設備,該設備的資料來自另一台電腦上的「共享」通過網路。用戶指南提供了一些信息,但不足以確定。我想我見過類似的設備有一個專用的 USB 端口,在這種情況下,CDROM 可能不在集線器後面。

  3. 我不是硬體專家,但有人提到過 TS3USB221A這是一個 專為高速USB 2.0訊號切換而設計的高頻寬開關,2條路徑之間。它有一個評估模組我認為您會看到 1 個 USB 插座在另外 2 個 USB 插座之間切換。儘管它們指的是輸出切換,但它表示該設備是雙向的,因此這可能無關緊要。您可能需要成為一家公司才能訂購該板。

  4. 有許多具有 USB 功能的微控制器。一個被包裹成更有吸引力的東西的是 pyboard它允許您在板上運行 python,而不是 C,從而使開發更簡單。 pyboard 有一個 SD 卡插槽,可以在第二台電腦的 USB 上顯示為大容量儲存設備,但它也有幾個 ttl 級串行端口,因此您可以連接 FTDI 類型的 (ttl) 串行到 USB 適配器,並編寫一些python 透過從第一台電腦透過串列連結發送資料來更新sdcard 資料。

  5. 您已經看過帶有 wifi 的 SD 卡。另一張這樣的卡是東芝閃光空氣。它似乎對開發非常開放,您可能會發現可以用它做您想做的事情。

相關內容