$ sudo emerge --oneshot -avt gftp $ grep gftp /var/lib/portage/world $ sudo emerge --noreplace net-ftp/gftp $ grep -i gftp /var/lib/portage/world net-ftp/gftp
2011-04-30
一時的にインストールしたソフトをworldに登録する
kvmのハードディスクを縮小する
debianのハードディスクファイルを縮小する。
virt-managerなどからdebianを停止させる。
あたらしいディスクイメージを作成する。(8GB)
ファイルの状態を確認する。
手動で、新しいハードディスク、古いハードディスク、linuxのCDを指定して、CDからブートさせる。
VNCクライアントでログインしてgentooのインストールCDの設定を行う。
sshでログインする。ディスクの中身のコピーなどを行う。
ディレクトリ作成。
元のディスクをリードオンリーでマウントする。設定によって異なる。/etc/fstabを見て確認しておく。
新しいディスクをフォーマットする。 始まりが2048になっているが大丈夫???
確認する。
新しいディスクのパーテーションを作成する。UUIDを確認する。
元のディスクと同じ構成でマウントする。
元のディスクを新しいディスクにコピーする。
このコマンドの場合、元のディスクのルートディレクトリに/.htaccessなどの隠しファイルがあってもコピーされない。
chrootで新しいディスクに入る。
UUIDを更新してgrubをインストールする。
終わり。 shutdown終了後に、手動で起動したkvmが終了しなければkvmを手動で終了させる。
virt-managerなどの本来の起動方法で起動する。
うまく行けば起動する。
deianのレスキューモード => bashと打つ。シェルを変更する場合。
起動しない原因はUUIDが違うため。 UUIDを使わない場合、設定に使うlinuxのバージョンなどによってデバイス名が違う。
参考。
http://orangesooda.com/no/2011/02/kvm.html
http://www.gentoo.org/doc/ja/handbook/handbook-x86.xml?part=1&chap=6
https://forums.ubuntulinux.jp/viewtopic.php?pid=44967
http://www.bigegg.net/post/913233960/0x07-linux-os-vmware-server
http://sokohakato.wordpress.com/linux/centos/xenimgmount/
ホストOS上で直接コピーする。(失敗)
マウントする。
フォーマットする。
元のディスクをマウントする。
新しいディスクをマウントする。
コピーする。
grubのインストールができなさそうなことと、ホストOS上で作業すると失敗しそうなのでkvm上で作業することにする。
virt-managerなどからdebianを停止させる。
あたらしいディスクイメージを作成する。(8GB)
$ sudo mv -i debian.img debian.img.old $ sudo dd if=/dev/zero of=debian.img bs=1024M count=8
ファイルの状態を確認する。
$ qemu-img info debian.img $ filefrag debian.img $ filefrag -v debian.img $ sudo hdparm --fibmap debian.img
手動で、新しいハードディスク、古いハードディスク、linuxのCDを指定して、CDからブートさせる。
$ sudo /usr/bin/kvm -k ja -m 1024 -smp 1 -hda debian.img -hdb debian.img.old -net nic,macaddr=52:54:00:12:34:58 -net tap,ifname=tap2,script=no,downscript=no -cdrom ../tmp/install-amd64-minimal-20110421.iso -boot d
VNCクライアントでログインしてgentooのインストールCDの設定を行う。
<< Load keymap (Enter for default):jp $ ifconfig $ ifconfig eth0 192.168.0.xxx # 設定されていない場合に手動で設定する。 $ passwd $ /etc/init.d/sshd start
sshでログインする。ディスクの中身のコピーなどを行う。
$ ssh root@192.168.0.xxx
ディレクトリ作成。
$ cd /mnt/ $ mkdir disk{1,2}
元のディスクをリードオンリーでマウントする。設定によって異なる。/etc/fstabを見て確認しておく。
$ mount -r /dev/sdb3 disk2/ $ mount -r /dev/sdb1 disk2/boot/
新しいディスクをフォーマットする。 始まりが2048になっているが大丈夫???
$ fdisk /dev/sda Device Boot Start End Blocks Id System /dev/sda1 2048 264191 131072 83 Linux /dev/sda2 264192 1312767 524288 82 Linux swap / Solaris /dev/sda3 1312768 16777215 7732224 83 Linux
確認する。
$ fdisk -l /dev/sda
新しいディスクのパーテーションを作成する。UUIDを確認する。
$ mke2fs -j /dev/sda1 $ mke2fs -j /dev/sda3 $ mkswap /dev/sda2 $ blkid | grep ^/dev/sda
元のディスクと同じ構成でマウントする。
$ mount /dev/sda3 disk1/ $ mkdir disk1/boot $ mount /dev/sda1 disk1/boot/
元のディスクを新しいディスクにコピーする。
このコマンドの場合、元のディスクのルートディレクトリに/.htaccessなどの隠しファイルがあってもコピーされない。
$ cd disk1/ $ cp -pir ../disk2/* .
chrootで新しいディスクに入る。
$ mount -t proc none proc/ $ mount -o bind /dev dev/ $ chroot . /bin/bash $ source /etc/profile $ export PS1="(chroot) $PS1"
UUIDを更新してgrubをインストールする。
$ cd /etc/ $ cp -pi fstab fstab.old $ blkid | grep ^/dev/sda $ vi fstab $ grub-install /dev/sda $ update-grub $ exit
終わり。 shutdown終了後に、手動で起動したkvmが終了しなければkvmを手動で終了させる。
$ shutdown -h now
virt-managerなどの本来の起動方法で起動する。
うまく行けば起動する。
deianのレスキューモード => bashと打つ。シェルを変更する場合。
起動しない原因はUUIDが違うため。 UUIDを使わない場合、設定に使うlinuxのバージョンなどによってデバイス名が違う。
/dev/sda /dev/hda /dev/vda など。
参考。
http://orangesooda.com/no/2011/02/kvm.html
http://www.gentoo.org/doc/ja/handbook/handbook-x86.xml?part=1&chap=6
https://forums.ubuntulinux.jp/viewtopic.php?pid=44967
http://www.bigegg.net/post/913233960/0x07-linux-os-vmware-server
http://sokohakato.wordpress.com/linux/centos/xenimgmount/
ホストOS上で直接コピーする。(失敗)
マウントする。
$ mkdir /tmp/disk1 $ mkdir /tmp/disk2 $ sudo fdisk debian.img $ fdisk -l debian.img|tail -n4 デバイス ブート 始点 終点 ブロック Id システム debian.img1 2048 264191 131072 83 Linux debian.img2 264192 1312767 524288 82 Linux スワップ / Solaris debian.img3 1312768 16777215 7732224 83 Linux $ sudo losetup /dev/loop0 debian.img $ sudo losetup /dev/loop1 debian.img.old $ sudo kpartx -l /dev/loop0 $ sudo kpartx -l /dev/loop1 $ sudo kpartx -a /dev/loop0 $ sudo kpartx -a /dev/loop1 $ ls -l /dev/mapper/
フォーマットする。
$ sudo mke2fs -j /dev/mapper/loop0p1 $ sudo mke2fs -j /dev/mapper/loop0p3 $ sudo mkswap /dev/mapper/loop0p2
元のディスクをマウントする。
$ sudo mount -r /dev/mapper/loop1p3 /tmp/disk2/ $ sudo mount -r /dev/mapper/loop1p1 /tmp/disk2/boot/
新しいディスクをマウントする。
$ sudo mount /dev/mapper/loop0p3 /tmp/disk1/ $ sudo mkdir /tmp/disk1/boot $ sudo mount /dev/mapper/loop0p1 /tmp/disk1/boot/ $ df -h|grep ^/dev/map $ mount|grep ^/dev/map
コピーする。
$ sudo rsync -a /tmp/disk2/ /tmp/disk1/
grubのインストールができなさそうなことと、ホストOS上で作業すると失敗しそうなのでkvm上で作業することにする。
2011-04-27
portupgradeでfetchのパッシブモードを外す
portupgradeでパッシブモードでダウンロードできない場合に、
FTP_PASSIVE_MODE=NOを設定してもダウンロードできない。
FETCH_BEFORE_ARGS=-vを/etc/make.confに追加するとパッシブモードのままになっているのが見える。
別のコマンドではパッシブモード無しでダウンロードできる。
fetchコマンドもパッシブモード無しでダウンロードできる。
fetchコマンドのオプションを変更する。-pを外して-vを追加する。
-pをOFFにするオプションが有るのであればFETCH_AFTER_ARGSが良いかもしれない。
説明。
OSのバージョン。
更新に使用したコマンド。
FTP_PASSIVE_MODE=NOを設定してもダウンロードできない。
FETCH_BEFORE_ARGS=-vを/etc/make.confに追加するとパッシブモードのままになっているのが見える。
別のコマンドではパッシブモード無しでダウンロードできる。
$ wget --no-passive-ftp ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/local-distfiles/blackend/freebsd-doc-20110416.tar.gz
fetchコマンドもパッシブモード無しでダウンロードできる。
$ echo $SHELL /usr/local/bin/bash $ FTP_PASSIVE_MODE=NO fetch -v ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/local-distfiles/blackend/freebsd-doc-20110416.tar.gz
fetchコマンドのオプションを変更する。-pを外して-vを追加する。
-pをOFFにするオプションが有るのであればFETCH_AFTER_ARGSが良いかもしれない。
$ cat /etc/make.conf # added by use.perl 2011-04-09 09:12:29 PERL_VERSION=5.10.1 FETCH_ARGS="-AFrv"
説明。
$ grep -A10 -n "^# *FETCH_ARGS" /usr/ports/Mk/bsd.port.mk 845:# FETCH_ARGS - Arguments to ftp/http fetch command. 846-# Default: "-AFpr" 847-# FETCH_CMD - ftp/http fetch command. 848-# Default: ${FETCH_BINARY} ${FETCH_ARGS} 849-# FETCH_BEFORE_ARGS 850-# - Arguments to ${FETCH_CMD} before filename. 851-# Default: none 852-# FETCH_AFTER_ARGS 853-# - Arguments to ${FETCH_CMD} following filename. 854-# Default: none 855-# FETCH_ENV - Environment to pass to ${FETCH_CMD}.
OSのバージョン。
$ uname -a FreeBSD freebsd.localnet 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Thu Feb 17 02:41:51 UTC 2011 root@mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
更新に使用したコマンド。
freebsd-update fetch freebsd-update install portsnap fetch portsnap update portupgrade -a -R -y
2011-04-26
rcsのメモ
http://webos-goodies.jp/archives/50581134.html
現在の状態を保存する。
編集する。
変更後の状態を保存する。
例えば同じディレクトリにコピーを取る。
ディレクトリを移動する。
初期登録
最初からやり直す場合、ファイルを消してコピーしたファイルを元のファイル名でコピーする。
書き込みの権限が強制的に変化するので、0644は大丈夫だが、
0664, 0666 などの場合、変更無しにできない?。
現在の状態を保存する。
$ cd /etc/config-archive/etc/portage/ $ sudo cp -pi /etc/portage/package.unmask . $ sudo rcs -ko -M -l package.unmask $ sudo ci -m'backup. maybe recorded if changed' package.unmask
編集する。
$ sudo vi /etc/portage/package.unmask
変更後の状態を保存する。
$ sudo cp -pi /etc/portage/package.unmask . $ sudo rcs -ko -M -l package.unmask $ sudo ci -m'commit' package.unmask
例えば同じディレクトリにコピーを取る。
$ cd /etc/portage/ $ sudo cp -pi package.unmask package.unmask.`date +%Y-%m-%d`
ディレクトリを移動する。
$ cd /etc/config-archive/etc/portage/
初期登録
$ sudo ci -u /etc/portage/package.unmask package.unmask,v $ sudo co -l /etc/portage/package.unmask package.unmask,v修正
$ sudo vi /etc/portage/package.unmask修正を登録
$ sudo ci -u /etc/portage/package.unmask package.unmask,v $ sudo co -l /etc/portage/package.unmask package.unmask,vログ
$ rlog package.unmask,v修正の差分(-r1.2が最新で差分無し)
$ rcsdiff -r1.1 /etc/portage/package.unmask package.unmask,v $ rcsdiff -r1.2 /etc/portage/package.unmask package.unmask,v
最初からやり直す場合、ファイルを消してコピーしたファイルを元のファイル名でコピーする。
$ sudo rm -i /etc/portage/package.unmask package.unmask,v $ sudo cp -pi /etc/portage/package.unmask.2011-04-24 /etc/portage/package.unmask
書き込みの権限が強制的に変化するので、0644は大丈夫だが、
0664, 0666 などの場合、変更無しにできない?。
2011-04-24
virt-managerでfreebsdが起動しない例
virt-managerでfreebsdのインストールをしたが、いつのまにか起動画面の10秒待つ部分で停止している状態になっていた。
http://wiki.libvirt.org/page/QEMUSwitchToLibvirt#-no-kvm
http://qemu-forum.ipi.fi/viewtopic.php?f=14&t=719
修正します。
修正後。
sys-kernel/gentoo-sourcesの2.6.36-r8から2.6.37-r4にホストOSのkernelを更新したからかもしれない。
2.6.38-gentoo-r2に更新しても-no-kvm無しで起動できなかった。
2.6.36-gentoo-r8に戻したところ-no-kvm無しで起動できた。
バージョンを上げる理由が無ければ2.6.32-r24が良いのかもしれない。
http://wiki.libvirt.org/page/QEMUSwitchToLibvirt#-no-kvm
http://qemu-forum.ipi.fi/viewtopic.php?f=14&t=719
修正します。
$ sudo virsh edit freebsd
修正後。
$ sudo grep -n "domain type" /etc/libvirt/qemu/{centos5,freebsd}.xml /etc/libvirt/qemu/centos5.xml:1:<domain type='kvm'> /etc/libvirt/qemu/freebsd.xml:1:<domain type='qemu'>
sys-kernel/gentoo-sourcesの2.6.36-r8から2.6.37-r4にホストOSのkernelを更新したからかもしれない。
2.6.38-gentoo-r2に更新しても-no-kvm無しで起動できなかった。
2.6.36-gentoo-r8に戻したところ-no-kvm無しで起動できた。
$ sudo grep -n "domain type" /etc/libvirt/qemu/{centos5,freebsd}.xml /etc/libvirt/qemu/centos5.xml:1:<domain type='kvm'> /etc/libvirt/qemu/freebsd.xml:1:<domain type='kvm'> $ uname -a Linux amdgentoo 2.6.36-gentoo-r8 #1 SMP Sun Apr 24 20:30:35 JST 2011 x86_64 AMD Phenom(tm) 9350e Quad-Core Processor AuthenticAMD GNU/Linux
バージョンを上げる理由が無ければ2.6.32-r24が良いのかもしれない。
2011-04-21
virt-managerでdebianが起動しない例
手動でkvmを起動させる場合には起動するが、そのディスクファイルを指定してvirt-managerで起動すると起動しない。
mkinitramfsで/boot/initrd.img-2.6.26-2-amd64を再作成しても変化無かった。
手動でkvmを起動させる場合で、使うCPU数を1=>2にして、しばらくすると停止する。
lenny => squeezeへアップグレードした。
実際に更新する。大量の更新と設定の確認が行われる。
更新後にvirt-managerでディスクファイルを指定して新規登録する。起動できた。
MACアドレスが変わっている場合、その設定を消す。(再起動で再作成されるはず。)
mkinitramfsで/boot/initrd.img-2.6.26-2-amd64を再作成しても変化無かった。
手動でkvmを起動させる場合で、使うCPU数を1=>2にして、しばらくすると停止する。
lenny => squeezeへアップグレードした。
$ diff /etc/apt/sources.list.2011-04-21 /etc/apt/sources.list 6,8c6,8 < deb http://security.debian.org/ lenny/updates main < deb-src http://security.debian.org/ lenny/updates main < deb http://ftp.jp.debian.org/debian/ lenny main --- > deb http://security.debian.org/ squeeze/updates main > deb-src http://security.debian.org/ squeeze/updates main > deb http://ftp.jp.debian.org/debian/ squeeze main
実際に更新する。大量の更新と設定の確認が行われる。
$ sudo aptitude update && sudo aptitude full-upgrade
更新後にvirt-managerでディスクファイルを指定して新規登録する。起動できた。
MACアドレスが変わっている場合、その設定を消す。(再起動で再作成されるはず。)
$ sudo mv -i /etc/udev/rules.d/70-persistent-net.rules /etc/udev/rules.d/70-persistent-net.rules.old
2011-04-20
virt-managerでcentos5が起動しない例
手動で作成したイメージをvirt-managerで起動できない。
http://communities.vmware.com/thread/288708
virt-managerの「新しい仮想マシンの作成」からレスキューモードでブートする。
initrdを再作成する。
デフォルトのカーネルを確認する。default=0の場合、1番最初のtitle~の部分辺りの名前。
たぶん番号の多いものがデフォルトなので見なくても良い。
変わっていればネットワークを設定しなおす。HWADDRなど。
virt-managerの設定を手動で変更する場合、止めてからの方が良い。
mount could not find filesystem ' dev root'
http://communities.vmware.com/thread/288708
virt-managerの「新しい仮想マシンの作成」からレスキューモードでブートする。
boot: linux rescue 言語 : english キーボード : jp106 ネットワーク: 無し マウント : する(書き込みOKで)
initrdを再作成する。
$ chroot /mnt/sysimage/ $ cd /boot/ # デフォルトのカーネルを確認する。 $ mv -i initrd-2.6.18-238.9.1.el5.img initrd-2.6.18-238.9.1.el5.img.old $ mkinitrd initrd-2.6.18-238.9.1.el5.img 2.6.18-238.9.1.el5 $ reboot
デフォルトのカーネルを確認する。default=0の場合、1番最初のtitle~の部分辺りの名前。
たぶん番号の多いものがデフォルトなので見なくても良い。
$ sudo lv /boot/grub/grub.conf default=0 ... title CentOS (2.6.18-238.9.1.el5) ... initrd /boot/initrd-2.6.18-238.9.1.el5.img ...
変わっていればネットワークを設定しなおす。HWADDRなど。
$ ll /etc/sysconfig/network-scripts/ifcfg-eth0* -rw-r--r-- 1 root root 245 2011-04-20 02:39:45 /etc/sysconfig/network-scripts/ifcfg-eth0 -rw-r--r-- 1 root root 230 2011-04-20 01:47:10 /etc/sysconfig/network-scripts/ifcfg-eth0.bak
virt-managerの設定を手動で変更する場合、止めてからの方が良い。
$ sudo /etc/init.d/libvirtd stop $ sudo vi /etc/libvirt/qemu/centos5.xml $ sudo grep img /etc/libvirt/qemu/centos5.xml <source file='/mnt/share/kvm/centos5/centos5.img'/> $ sudo /etc/init.d/libvirtd start
libvirt, virt-manager
管理ソフトでkvmを起動します。
useフラグを追加してインストールします。
http://bugs.gentoo.org/305407
起動します。
新規作成します。
新しい仮想マシンの作成 => CDを選んだりします。
その際ディスクをすでにfedora14が入っているファイルにします。
今度は作成済みのユーザーが表示されるログイン画面になったのでCDから起動していないです。
仮想マシンの設定をします。
監視項目の追加をします。ディスクI/O、ネットワークI/Oを追加します。
起動オプションが長いので、手動でやるより監視ソフトを使うのが良いようです。
仮想マシンを停止します。ゲストOSはスリープ状態になります。
起動とスリープはlibvirtだけでいいかもしれませんが設定、管理などがvirt-managerが無いと大変そうです。
spiceを試した。
kvmが対応していなかった。(-vga qxl)
違うものを入れるようだ。ハードマスクされているのでやめておく。
ルート権限で起動させるため アプリケーション => システムツール => 仮想マシンマネージャー を変更した。(gnomeの場合)
useフラグを追加してインストールします。
http://bugs.gentoo.org/305407
$ eix "^(libvirt|virt-manager)$" [I] app-emulation/libvirt Available versions: **0.8.5-r2 0.8.8-r1 ~0.9.0 ~0.9.0-r1 **9999 {avahi caps debug iscsi +json +libvirtd lvm +lxc macvtap +network nfs nls numa openvz parted pcap phyp policykit python qemu sasl selinux udev uml virt-network virtualbox xen} Installed versions: 0.8.8-r1(16時23分30秒 2011年04月19日)(avahi json libvirtd lxc network nls python qemu -caps -debug -iscsi -lvm -macvtap -nfs -numa -openvz -parted -pcap -phyp -policykit -sasl -selinux -udev -uml -virt-network -virtualbox -xen) Homepage: http://www.libvirt.org/ Description: C toolkit to manipulate virtual machines [I] app-emulation/virt-manager Available versions: ~0.8.6 (~)0.8.7 **9999 {gnome-keyring policykit sasl} Installed versions: 0.8.7(16時01分08秒 2011年03月29日)(-gnome-keyring -policykit -sasl) Homepage: http://virt-manager.org/ Description: A graphical tool for administering virtual machines (KVM/Xen) Found 2 matches.
$ grep -iP "libvirt|virt-manager" /etc/portage/package.{keywords,mask,unmask,use}|grep -v ":#" /etc/portage/package.keywords:=app-emulation/virt-manager-0.8.7 ~amd64 /etc/portage/package.use:app-emulation/libvirt qemu
起動します。
$ sudo /etc/init.d/libvirtd start $ sudo rc-update add libvirtd default $ sudo virt-manager (ホストOSのGUIの画面で)アプリケーション => システムツール => 仮想マシンマネージャーで起動するには設定が必要なのかもしれません。
新規作成します。
新しい仮想マシンの作成 => CDを選んだりします。
その際ディスクをすでにfedora14が入っているファイルにします。
$ sudo grep mnt /etc/libvirt/qemu/fedora14.xml <source file='/mnt/share/kvm/fedora/fedora.img'/>CDから起動した状態の画面が表示されますが、この場合すぐに再起動します。
今度は作成済みのユーザーが表示されるログイン画面になったのでCDから起動していないです。
仮想マシンの設定をします。
設定ファイル $ ll /etc/libvirt/qemu/fedora14.xml グラフィカルな画面で設定します。 fedora14仮想マシン 表示 => 詳細 => Boot Options => 自動起動 => ホスト起動時に仮想マシンを起動する Processor => Configration => phenom 設定が追加されます。 $ sudo grep phenom /etc/libvirt/qemu/fedora14.xml <model>phenom</model>
監視項目の追加をします。ディスクI/O、ネットワークI/Oを追加します。
仮想マシンマネージャー(スーパーユーザーで) 編集 => 設定 => 統計 => 統計情報の監視を有効に => チェックする 表示 => グラフ => チェックする
起動オプションが長いので、手動でやるより監視ソフトを使うのが良いようです。
$ ps aux|grep /usr/bin/qemu-system-x86_64|grep -v grep root 24528 3.5 11.2 1255004 908796 ? Sl 17:39 1:02 /usr/bin/qemu-system-x86_64 --enable-kvm -S -M pc-0.13 -cpu phenom -enable-nesting -enable-kvm -m 1024 -smp 2,sockets=2,cores=1,threads=1 -name fedora14 -uuid 848b5932-0a0c-5fbf-d0df-de4aa5b08fee -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/fedora14.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -boot c -drive file=/mnt/share/kvm/fedora/fedora.img,if=none,id=drive-virtio-disk0,boot=on,format=raw -device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=15,id=hostnet0 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:c4:84:e4,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -device usb-tablet,id=input0 -vnc 127.0.0.1:0 -vga cirrus -device AC97,id=sound0,bus=pci.0,addr=0x4 -incoming fd:12 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6
仮想マシンを停止します。ゲストOSはスリープ状態になります。
$ sudo /etc/init.d/libvirtd stop * Stopping libvirtd ... * Shutting down domain(s): * fedora14 [ ok ] $ ssh 192.168.0.212 ssh: connect to host 192.168.0.212 port 22: No route to host $ sudo /etc/init.d/libvirtd start * Starting libvirtd ... [ ok ] $ ssh 192.168.0.212 user@192.168.0.212's password:
起動とスリープはlibvirtだけでいいかもしれませんが設定、管理などがvirt-managerが無いと大変そうです。
spiceを試した。
$ sudo ACCEPT_KEYWORDS="**" emerge --oneshot -avt =app-emulation/spice-0.8.0
kvmが対応していなかった。(-vga qxl)
$ kvm --help | grep -n ^-vga -A1 71:-vga [std|cirrus|vmware|xenfb|none] 72- select video card type
違うものを入れるようだ。ハードマスクされているのでやめておく。
$ eix qemu-kvm -c [I] app-emulation/qemu-kvm (0.13.0-r2@2011年03月28日): QEMU + Kernel-based Virtual Machine userland tools [N] app-emulation/qemu-kvm-spice (--): Spiced QEMU + Kernel-based Virtual Machine userland tools Found 2 matches.
ルート権限で起動させるため アプリケーション => システムツール => 仮想マシンマネージャー を変更した。(gnomeの場合)
virt-manager => gksudo virt-manager
2011-04-18
kvmのdebian(lenny)のcpu数
debianでsmpの指定が-smp 2だけの場合に起動しない。
centos5.6,fedora14の場合は指定しなくても起動する。
設定を変更して様子を見た。
centos5.6,fedora14の場合は指定しなくても起動する。
/usr/bin/kvm -k ja -m 2048 -cpu phenom -smp 2,maxcpus=2,cores=2 \ -hda /mnt/share/kvm/debian/debian.img \ -net nic,macaddr=52:54:00:12:34:57 -net tap,ifname=tap1,script=no,downscript=no &
$ kvm --help | grep "^-smp" -A6 -smp n[,maxcpus=cpus][,cores=cores][,threads=threads][,sockets=sockets] set the number of CPUs to 'n' [default=1] maxcpus= maximum number of total cpus, including offline CPUs for hotplug, etc cores= number of CPU cores on one socket threads= number of threads on one CPU core sockets= number of discrete sockets in the systemしばらくすると反応が無くなるので、多分止まっているので、-smp指定無しにした。
設定を変更して様子を見た。
/usr/bin/kvm -k ja -m 2048 -cpu phenom -smp 2,maxcpus=2,cores=1,threads=1,sockets=2 \ -hda /mnt/share/kvm/debian/debian.img \ -net nic,macaddr=52:54:00:12:34:57 -net tap,ifname=tap1,script=no,downscript=no &
2011-04-17
kvmのマウスの利用
fedora14のインストールを行った際のメモです。
vncクライアントで127.0.0.1:5902などでアクセスする場合です。
http://www.linux-kvm.org/page/FAQ#When_I_click_the_guest_operating_system_window.2C_mouse_is_grabbed._How_can_I_get_mouse_to_not_to_do_that.3F_OR_Mouse_doesn.27t_show_up_.2F_doesn.27t_work_in_the_guest._What_do_I_do.3F
http://wiki.clug.org.za/wiki/QEMU_mouse_not_working
http://blog.livedoor.jp/les_paul_sp/archives/694273.html
オプションを追加する。(-usb -usbdevice tablet)
オプションを追加してもマウスが動かない場合に起動前に追加する。(export SDL_VIDEO_X11_DGAMOUSE=0)
使用できるメモリをある程度増やして起動しないとまともに動作しない。(-m 2048)
ハードディスクの場合はrawにしたほうが良いです。
ssdなどの場合は -f qcow2 でも良いかもしれません。
コンバート。1.5G => 20G(設定したサイズ)まで増えた。
ネットワークの設定。
●起動の設定。
vncクライアントで127.0.0.1:5902などでアクセスする場合です。
http://www.linux-kvm.org/page/FAQ#When_I_click_the_guest_operating_system_window.2C_mouse_is_grabbed._How_can_I_get_mouse_to_not_to_do_that.3F_OR_Mouse_doesn.27t_show_up_.2F_doesn.27t_work_in_the_guest._What_do_I_do.3F
http://wiki.clug.org.za/wiki/QEMU_mouse_not_working
http://blog.livedoor.jp/les_paul_sp/archives/694273.html
$ export SDL_VIDEO_X11_DGAMOUSE=0 $ sudo kvm -k ja -hda fedora.img -cdrom /tmp/Fedora-14-x86_64-Live-Desktop.iso -boot d \ -net nic,macaddr=52:54:00:12:34:58 -net tap,ifname=tap2,script=no,downscript=no \ -usb -usbdevice tablet -cpu phenom -smp 2 -m 2048
オプションを追加する。(-usb -usbdevice tablet)
オプションを追加してもマウスが動かない場合に起動前に追加する。(export SDL_VIDEO_X11_DGAMOUSE=0)
使用できるメモリをある程度増やして起動しないとまともに動作しない。(-m 2048)
ハードディスクの場合はrawにしたほうが良いです。
ssdなどの場合は -f qcow2 でも良いかもしれません。
sudo qemu-img create -f raw fedora.img 8G
コンバート。1.5G => 20G(設定したサイズ)まで増えた。
$ sudo qemu-img convert -O raw debian.img.2011-04-16 debian.img
ネットワークの設定。
$ cat net | grep -v ^# | grep -v ^$ bridge_br0="eth0 tap0 tap1 tap2" config_eth0=( "null" ) config_br0=( "192.168.0.100/24" ) routes_br0=( "default via 192.168.0.1" ) dns_servers_br0="192.168.0.1" brctl_br0=( "setfd 0" "sethello 10" "stp off" ) RC_NEED_br0=( "net.tap0" "net.tap1" "net.tap2" "net.eth0" ) depend_br0 () { need net.eth0 net.tap0 net.tap1 net.tap2 } config_tap0=( "null" ) tuntap_tap0="tap" tunctl_tap0="-u root" mac_tap0="52:54:01:12:34:56" config_tap1=( "null" ) tuntap_tap1="tap" tunctl_tap1="-u root" mac_tap1="52:54:01:12:34:57" config_tap2=( "null" ) tuntap_tap2="tap" tunctl_tap2="-u root" mac_tap2="52:54:01:12:34:58" config_eth0=( "null" ) config_dummy0=( "192.168.0.101 netmask 255.255.255.255" )
●起動の設定。
$ cat /etc/conf.d/local.start | grep -v ^# | grep -v ^$ /usr/bin/kvm -k ja -m 2048 -cpu phenom -smp 2 \ -hda /mnt/share/kvm/centos5/centos5.img \ -net nic,macaddr=52:54:00:12:34:56 -net tap,ifname=tap0,script=no,downscript=no & /usr/bin/kvm -k ja -m 2048 -cpu phenom -smp 1 \ -hda /mnt/share/kvm/debian/debian.img \ -net nic,macaddr=52:54:00:12:34:57 -net tap,ifname=tap1,script=no,downscript=no & SDL_VIDEO_X11_DGAMOUSE=0 /usr/bin/kvm -k ja -m 2048 -cpu phenom -smp 2 -usb -usbdevice tablet \ -hda /mnt/share/kvm/fedora/fedora.img \ -net nic,macaddr=52:54:00:12:34:58 -net tap,ifname=tap2,script=no,downscript=no &ホストOS終了時にシャットダウンするようにしないとまずいかもしれない。
登録:
投稿 (Atom)