idkqh7の研究日誌

基本は翻訳。{セキュリティ|プログラミング|バイオインフォマティクス|数学}について。

Ubuntu 14.04に仮想マシン管理ソフトをインストールしてPython3でSphinx

インストール(ホストPC)

本当はqemu-system virt-managerだけで良いはずだが、推奨パッケージ(suggests)も一応入れている。

sudo apt-get install qemu-system virt-manager qemu-kvm qemu radvd virt-viewer python-guestfs python-spice-client-gtk

一般ユーザでvirt-managerを立ち上げOSをインストール(ホストPC)

# vim /etc/libvirt/libvirtd.conf
unix_sock_group = "libvirtd"
unix_sock_rw_perms = "0770"
...
auth_unix_ro = "none"
auth_unix_rw = "none"

上記ように修正。

sudo service libvirt-bin restart
virt-manager

一般ユーザで起動。インストールするOSはDebian(jessie)に決定。 インストール時に'Web server'の項目をONにした。

※sudo起動してしまった場合

一度sudoで起動したあと、一般ユーザ権限で起動すると'No write access to 〜'という表示が出る。

sudo rm -rf ~/.virt-manager

で設定ファイルを消せばエラーは消えるはず。

そもそもlibvirtdグループに入ってない人は

sudo adduser USER_NAME libvirtd

という感じで。

Debian(jessie)の設定(仮想PC)

仮想マシン上にあるdebianの設定をしていく。

sudoを使えるように

sudoグループに一般ユーザを追加する。 ただし、一度ログアウトする必要がある?

su
apt-get install sudo
adduser USER_NAME sudo
logout
Python-3.4.2インストール

本当はapt-get installしたいが、ensurepipがまだ使えないのでソースからビルド。ついでにwget短縮URL使う方法も紹介。

sudo apt-get build-dep python3.4
wget --trust-server-names http://goo.gl/fHJ7Bo
tar -xvf Python-3.4.2.tar.xz
cd Python-3.4.2
./configure
make
make test
sudo make install
python3 -m ensurepip --upgrade
Sphinxのセットアップ

このときソースとビルドを分けるオプションを有効にする。

sudo pip3 install sphinx
mkdir ~/Labdoc
cd ~/Labdoc
sphinx-quickstart
apacheのセットアップ
sudo mv /var/www/html /var/www/html.bak
sudo ln -s ~/Labdoc/build/html /var/www/html
sudo service apache2 reload

物理ネットワークに接続させる(ホストPC)

仮想マシンの設定画面(iボタンをクリック)からNICを選択。

ソースデバイス: ホストデバイス eth0:macvtap
ソースモード: Bridge

※Bridge接続した後にホストマシンのネットワークが繋がらない問題が発生した場合

おそらくカーネルのアップデートで再起動が必要なときなので、素直に再起動してからBridge接続の設定をやり直す。

※それでもうまく行かない場合

Wifiアダプタをぶっさして、代わりにソースデバイスに指定する。

仮想マシンを静的IPに変更(仮想PC)

このとき、192.168..の中身は、物理ネットワークのゾーンを指定する。

sudo cp /etc/network/interfaces /etc/network/interfaces
sudo vi /etc/network/interfaces 
# vi /etc/network/interfaces
auto eth0
iface eth0 inet static
  address   192.168.*.*
  network   192.168.*.0
  netmask   255.255.255.0
  broadcast 192.168.*.255
  gateway   192.168.*.1

eth0を再起動。

sudo service ifup@eth0 stop
sudo service ifup@eth0 start

参考文献