快轉到主要內容

QEMU/KVM虛擬機設定靜態IP + 透過SSHFS與Host OS共享資料夾

· 民國112年癸卯年
·
切換繁體/簡體 ·
分類 資訊科技 虛擬機與容器技術
標籤 QEMU-KVM Libvirt OpenSSH FUSEFS
目錄

Shared Folder in QEMU/KVM between Linux Host and Windows Guest.

如果想要與QEMU/KVM虛擬機共享資料夾,可考慮用SSHFS掛載Linux Host的目錄給虛擬機存取,方便傳輸檔案。

SSHFS是透過網路掛載的檔案系統,適用於各大作業系統,安全性也比較高。

本文以Linux Host OS + Windows 11 Guest OS為例子。

請先在Linux安裝Windows 11虛擬機,網路使用預設的NAT模式。

1. 設定虛擬機靜態IP
#

Virt Manager界面無法直接改,需要用到Libvirt的virsh指令。

  1. 將虛擬機關機

  2. 查詢虛擬機的mac地址

sudo virsh list --all

sudo virsh  dumpxml  "Windows11" | grep 'mac address'
  1. 編輯預設網路,這裡是NAT網卡
sudo virsh net-list

sudo virsh net-edit default
  1. 找到<dnsmasq>這段,在<range>下方填寫虛擬機的mac地址、虛擬機名稱,與想要賦予的靜態IP
<dhcp>
<range start='192.168.122.2' end='192.168.122.254'/>
<host mac='虛擬機的mac地址' name='Windows11' ip='192.168.122.234'/>
</dhcp>
  1. 重新啟動網路
sudo virsh  net-destroy  default
sudo virsh  net-start    default

2. 設定SSHFS服務
#

  1. 於Linux Host安裝SSH服務
sudo pacman -S openssh
sudo systemctl enable --now sshd
  1. 安裝SSHFS套件
sudo pacman -S sshfs
  1. 接著開機進入Windows虛擬機,安裝圖形化程式SSHFS-Win Manager。該程式為指令版SSHFS-Win的前端封裝。

  2. 點選Add Connection

  3. 首先在IP填入Linux OS的區域IP(區域IP可以用ip addr指令查看)。User填寫Linux Host的使用者名稱,Password填寫密碼,Remote PATH則是要掛載的目錄,例如Linux Host的Downloads

  4. 按下電源插頭的圖示,它就會將Linux的目錄掛載為本機硬碟

參考資料
#

KVM/libvirt: How to configure static guest IP addresses on the virtualisation host

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。