LoginSignup
2
3

More than 5 years have passed since last update.

virt-manager(KVM)で共有フォルダを使うには(Ubuntu15)

Posted at

virt-manager、もしくはvirt-installで作成した仮想マシンとディレクトリを共有するにはNFS(Network File System)を使う。

NFSインストール

ホスト

$ sudo apt-get install nfs-common nfs-kernel-server

ゲスト

$ sudo apt-get install nfs-common

ホストの設定

共有するディレクトリを /etc/exportsに書く。
書式: パス マウントを許可するアドレス(オプション)

$ cat /etc/exports
/dir/path 192.168.122.0/24(rw,sync,no_subtree_check,fsid=0) 
$ sudo exportfs -rav  #設定反映

オプションのfsid=0/dir/pathをルートとして扱うという意味。
読み取り専用にしたいときはrwroにすればいい。

ファイアウォールを使っているなら下記の方法で使用するポートを確認して開放する。

$ rpcinfo -p

筆者の環境(ufw)の場合は。

sudo ufw allow from 192.168.122.0/24 to any port 111
sudo ufw allow from 192.168.122.0/24 to any port 2049
sudo ufw allow from 192.168.122.0/24 to any port 48218 proto udp
sudo ufw allow from 192.168.122.0/24 to any port 38309 proto tcp
sudo ufw allow from 192.168.122.0/24 to any port 48900 proto udp
sudo ufw allow from 192.168.122.0/24 to any port 41747 proto tcp

ゲストの設定

とくに設定は必要ないのであとはマウントするだけ。
192.168.1.2をホストだとすると。

ホストで公開されてるディレクトリを表示。
実行しても応答がない場合はファイアウォールで阻まれている可能性がある。

$ showmount -e 192.168.1.2

ホストで公開されているルートディレクトリをマウント。
/etc/exportsfsid=0が設定されているディレクトリがルートになる。

$ sudo mount 192.168.1.2:/ /mnt

再起動しても自動でマウントしたい場合は/etc/fstabを編集する。
今回の場合は下記の出力の最後の行を追記すればいい。

$ cat /etc/fstab
/dev/sda1      /     ext4   errors=remount-ro 0 1
/dev/sda2      none  swap   sw 0 0
192.168.1.2:/  /mnt  nfs4   rsize=8192,wsize=8192,timeo=14,_netdev 0 0
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3