R.A. Epigonos et al.

[virtualbox] Debian Jessie に Guest Additions の導入

debian から virtual box は nonfree contrib セクションに入った。debian on viatualbox on windows7 でどうしたかのまとめ。ホストマシン、debian のインストール済みイメージ、これからインストールするイメージ。sandbox 用の virtualbox システムを作るまでの記録。

んー結局うまくいかないなぁ。grubのインストールが成功したように見えて起動しないのはなんでだろー

ホスト側の作業

新しくインストールの hdd イメージ (10GiB) を作成。

%gt; "c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" createhd --filename "debian-10GiB.vdi" --sizebyte 10737418240

10GiBのバイト数は以下。

$ echo '10 * 2^30' | bc -l
10737418240

作成したイメージを sdb にマウントしてインストール済みのゲストを起動。

インストール済みゲスト側の作業

debian-installer の netboot イメージを使ってインストールする。イメージをを配置する (新規システムからは見えなくなります) ための /dev/sdb にパーティション (~1GiB) を作って、MBR に grub をインストールして、debian-installer を配置する

# for CMD in \
	'mklabel msdos' \
	'unit s mkpart primary ext4 2048s 1GiB' \
	'set 1 boot on' \
	'align-check optimal 1' \
	'unit s print' \
	;
do
	parted --align optimal /dev/sdb -- ${CMD};
done
# mkfs.ext4 /dev/sdb1
# mount /dev/sdb1 /mnt/
# grub-install --boot-directory=/mnt/boot /dev/sdb
grub-mkconfig -o /mnt/boot/grub/grub.cfg
# mkdir /mnt/di
# cd /mnt/di
# wget 'http://ftp.jp.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz'
# wget 'http://ftp.jp.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux'
# cd
# umount /mnt/

新規インストールのインストール

新規インストールハードディスクイメージで起動

新規インストール側の作業

cdrom: を コメントアウト

# sed -i \
	-e 's/^\(deb\(-src\|\) cdrom:\)/# \1/' \
	/etc/apt/sources.list \
	;

RecommendsとSuggestsパッケージは手作業で入れる方針

# cat << 'EOT' > "/etc/apt/apt.conf.d/01norecommend";
APT::Install-Recommends "0";
APT::Install-Suggests "0";
EOT
# apt-config dump \
	| grep -e 'APT::Install-';

openssh-server のインストール。ホスト側のマシン設定でNATからホストオンリーアダプタまたはブリッジアダプタにしておく。

# apt-get install openssh-server

Virtualbox Guest Additions をインストールするためにリポジトリのセクション追加。更新、インストール。これで共有フォルダとかが使えるようになる。

# grep -v -e '^$' -e '#' /etc/apt/sources.list \
	|  sed -e 's/main$/contrib non-free/' \
	> /etc/apt/sources.list.d/01sources.contrib_non-free.list
# apt-get update
# apt-get install linux-headers-$(uname -r) virtualbox-guest-dkms

Xen on VartualBox

Xen のインストール。終了して Xen dom0 で再起動。イメージ作成。

# apt-get install xen-linux-system-amd64 xen-tools
# shutdown -h now
# xen-create-image \
	--hostname testxen \
	--dhcp \
	--dir /srv/testxen \
	--size=2G \
	--dist=jessie \
	--role=udev \
	--passwd \
	;

必要ならばデフォルト起動カーネルを Xen dom0 に。

# mv /etc/grub.d/20_linux_xen /etc/grub.d/09_linux_xen
# update-grub

bridge-utilsのインストール。ブリッジの作成。

# apt-get install bridge-utils
# xl create /etc/xen/testxen.cfg
Parsing config from /etc/xen/testxen.cfg
libxl: error: libxl_dm.c:1255:libxl__spawn_local_dm: device model /usr/lib/xen-4.4/bin/qemu-dm is not executable: No such file or directory
libxl: error: libxl_dm.c:1393:device_model_spawn_outcome: (null): spawn failed (rc=-3)
libxl: error: libxl_create.c:1186:domcreate_devmodel_started: device model did not start: -3
# apt-get install qemu-system-x86
# cat << 'EOT' > /etc/xen/testxen.cfg
device_model_version = 'qemu-xen'
device_model_override = '/usr/bin/qemu-system-x86_64'
EOT
# xl create /etc/xen/testxen.cfg -c

dum0 から dumU の root パスワードを変える。要は domU の / ファイルシステムに chroot して passwd コマンド実行している。

root@dom0:~# file /srv/testxen/domains/testxen/disk.img
/srv/testxen/domains/testxen/disk.img: Linux rev 1.0 ext3 filesystem data, UUID=********-****-****-****-************ (large files)
root@dom0:~# mount /srv/testxen/domains/testxen/disk.img /mnt/
root@dom0:~# chroot /mnt/ passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
root@dom0:~# umount /mnt/
# apt-get install qemu

リファレンス

  1. Xen Project Beginners Guide - Xen
  2. Xen - Debian Wiki
  3. XL - Xen management tool, based on LibXenlight
  4. Xen Man Pages - Xen
  5. QEMU Upstream - Xen
  6. Stray Penguin - Linux Memo (KVM)

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2008-05-28T10:02:06+09:00
  2. Modified: 2008-05-28T10:02:06+09:00
  3. Generated: 2023-08-27T23:09:12+09:00