VirtualBox 可讓您在虛擬機器內模擬序列(COM)埠,使您能夠執行舊版應用程式、連接實體序列裝置,或在虛擬系統之間建立通訊。透過正確設定 VirtualBox 的 COM 埠,您可以將序列資料重新導向到主機、共用真實硬體,或使用管道與網路 Socket 建立虛擬連線。
本文說明 VirtualBox 序列埠的運作方式、可用的設定選項,以及在虛擬環境中連接與管理 COM 埠的實用方法。
VirtualBox 中的序列埠模擬與管理
VirtualBox 中建立的虛擬序列埠,預設會被作業系統辨識為標準的 16550A 相容 UART 裝置。VBoxManage modifyvm 指令可讓該連接埠模擬其他類型的 UART 裝置。虛擬序列埠支援資料接收與傳輸,以進行雙向通訊。與主機的連線可透過其作業系統的功能進行自訂。
使用者可透過 VirtualBox 的「設定」分頁或使用 VBoxManage 指令來設定虛擬序列埠。每部虛擬機器最多可設定四個虛擬序列埠。連接埠編號會在設定期間指派,通常會模擬 COM1、COM2 等標準值。在建立虛擬序列埠時,也可使用使用者自訂名稱。
VirtualBox 中的埠模式選項與通訊技術
選取連接埠模式時有多種選擇,這會影響虛擬連接埠的連線。您的選擇包括:
- 未連線 – 客體作業系統會辨識該裝置,但會將其視為未連接至連接埠。
- 主機裝置 – 此選項會將虛擬序列連接埠連結至主機電腦的實體序列連接埠。路徑會反映主機作業系統的格式。例如,Linux 使用 /dev/ttyS0,而 Windows 系統使用 COM1。
- 主機管道 – 此選項會在 Windows 系統上建立命名管道,或在 Mac、Linux 或 Oracle Solaris 上使用本機網域通訊端。這是從軟體到主機作業系統建立管道連線的偏好設定。
- 原始檔案 – 此模式會將虛擬序列連接埠的輸出儲存到檔案中,可用來收集客體作業系統的診斷資料。
- TCP 通訊端 – 使用此模式會建立 VirtualBox 序列連接埠直通,並允許序列資料透過 TCP/IP 網路轉送。VM 可作為伺服器或用戶端。
當建立多個虛擬序列連接埠時,如果連接埠使用相同的中斷層級,則不應實作中斷共用,以避免通訊衝突。
使用者可以透過 虛擬空調變數據機連線 在虛擬機器之間建立通訊。其中一個 VM 會設定為管道或通訊端,第二個 VM 則用它來連線至第一台機器。
TCP 通訊端模式支援透過 TCP 建立對客體機器序列連接埠的外部連線。VirtualBox 同時支援 TCP 伺服器模式(可用 telnet 等工具存取)以及 TCP 用戶端模式,適用於虛擬空調變數據機纜線。
了解 VirtualBox 序列連接埠可為開發人員與系統程式設計師提供一項有價值的工具,以擴充其 VM 的功能。這些連接埠可用於裝置共用、核心除錯,或建立網路橋接,而無需實體序列介面。
VirtualBox 串列埠技術細節
VirtualBox 每部虛擬機器最多支援 四個虛擬序列埠。每個埠都會模擬標準 PC COM 介面,並且需要特定的硬體參數,以確保與舊版軟體和作業系統的相容性。
VirtualBox 中的預設 COM 連接埠設定
手動設定序列埠時,您必須指定 I/O 基底位址 與 IRQ 編號。VirtualBox 遵循傳統的 PC 序列埠配置:
| COM 連接埠 | I/O 基底位址 | IRQ |
| COM1 | 0x3F8 | 4 |
| COM2 | 0x2F8 | 3 |
| COM3 | 0x3E8 | 4 |
| COM4 | 0x2E8 | 3 |
使用這些預設值有助於避免衝突,並確保客體作業系統能正確偵測到序列裝置。
透過 VBoxManage 設定序列埠
除了 VirtualBox 的圖形介面之外,也可以使用 VBoxManage 命令列工具來設定序列埠。這種方式適用於自動化、撰寫腳本或無頭環境。
VirtualBox 提供的命令選項例如:
--uart– 定義序列埠編號與硬體參數--uartmode– 指定連接埠的連線方式(主機裝置、管線、socket、檔案等)--uarttype– 設定 UART 模擬的類型
透過命令列設定可讓進階使用者在不依賴 GUI 的情況下,精準控制序列埠行為。
VirtualBox 序列埠直通搭配序列轉乙太網路連接器
為了簡化 VirtualBox 序列埠直通並啟用對實體序列裝置的存取,您可以使用 Serial to Ethernet Connector。此軟體可讓 VirtualBox 虛擬機器透過在 VM 內建立虛擬序列埠,連線到連接在本機或遠端 Windows 主機上的序列裝置。
透過使用 Serial to Ethernet Connector,虛擬機器可完全控制透過網路連線的序列周邊裝置,就如同它們是直接連接一般。此方法為序列裝置管理增添彈性,使硬體可在不同的虛擬工作階段之間輕鬆重新指派,而無需重新設定虛擬機器。
在 VirtualBox 中設定 COM 連接埠
下列步驟示範如何建立並與您的虛擬機器共用虛擬序列埠。
1. 下載並在將分享實體序列埠的電腦上安裝 Serial to Ethernet Connector。
2. 啟動程式並開啟伺服器連線分頁。
3. 提供主機的 COM 連接埠名稱,以及將監控通訊的 TCP 連接埠。
4. 選取「建立伺服器連線」
5. 在將存取共用實體埠的來賓作業系統中,於用戶端連線分頁將序列埠連線至虛擬機器。
6. 提供在建立伺服器期間定義的 TCP 連接埠名稱,以及主機電腦的 IP 位址。
7. 為虛擬機器的序列埠選擇名稱。
8. 選擇「建立用戶端連線」
影片教學
COM Port Redirector 讓您能在虛擬機環境中存取序列埠。建立用戶端連線後,COM Port Redirector(亦稱 Serial to Ethernet Connector)可在使用已連接裝置時,為來賓 VM 提供與直接實體連線相同等級的功能。