DomainU¤ÎºîÀ®ÊýË¡


My Reserches/Xen3.1.0

INDEX

DomainU(¥²¥¹¥ÈOS)¤Î¹½ÃÛ

DomainU¤Î¹½ÃÛ­¡(Dom0¡áDebian, DomU¡áDebian¤Î¾ì¹ç)

ɬÍפʥѥ屡¼¥¸

¥Ñ¥Ã¥±¡¼¥¸Ì¾
debootstrap

DomainUÍѤΥǥ£¥ì¥¯¥È¥êºîÀ®

$ sudo mkdir -p /xen/domU

root¥Ñ¡¼¥Æ¥£¥·¥ç¥ó¤ÎºîÀ®

  • bs¥Ð¥¤¥È¤Î¥Ö¥í¥Ã¥¯¤òcount¸Ä¥¼¥í¤Ç½ñ¤­¹þ¤à(¥ë¡¼¥È¥Ñ¡¼¥Æ¥£¥·¥ç¥ó¤Î¾ì½ê¤Î³ÎÊÝ)
    $ sudo dd if=/dev/zero of=/xen/rom0/root.img bs=512 count=8MB
     2000000+0 records in
     2000000+0 records out
     1024000000 bytes (1.0GB) copied, 25.5836 seconds, 40.0 MB/s 
  • ext3¤Ç¥Õ¥©¡¼¥Þ¥Ã¥È¤¹¤ë
    $ sudo mkfs -t ext3 /xen/dom0/root.img
      :
     /xen/domU/root.img is not a block specisal device [Enter]
      :

swap¥Ñ¡¼¥Æ¥£¥·¥ç¥ó¤ÎºîÀ®

  • bs¥Ð¥¤¥È¤Î¥Ö¥í¥Ã¥¯¤òcount¸Ä¥¼¥í¤Ç½ñ¤­¹þ¤à(swap¥Ñ¡¼¥Æ¥£¥·¥ç¥ó¤Î¾ì½ê¤Î³ÎÊÝ)
    $ sudo dd if=/dev/zero of=/xen/rom0/swap.img bs=512 count=2MB
     1000000+0 records in
     1000000+0 records out
     512000000 bytes (512KB) copied, 7.6196 seconds, 67.2 MB/s
  • swapÎΰè¤ÎºîÀ®
    $ sudo mkswap /xen/dom0/swap.img
     Setting up swapspace version 1, size = 511995 kB
     no label, UUID= ...ά

¥ë¡¼¥×¥Ð¥Ã¥¯¥Þ¥¦¥ó¥È¤ò¤¹¤ë

$ sudo mount -o loop /xen/domU/root.img /mnt/domU-root
 kjournald starting. Commit interval 5 seconds
 EXT3 FS on loop0, internal journal
 EXT3-fs: mounted filasystem with orderedata mode.
  • ¤³¤ì¤Ë¤è¤ê/mnt/dom0-root°Ê²¼¤Ø¥ë¡¼¥È¥Ç¥£¥ì¥¯¥È¥ê¤È¤·¤ÆÆþ¤ì¤ë
    • loopback¥Þ¥¦¥ó¥È¤È¤Ï¡¤¥¤¥á¡¼¥¸¥Õ¥¡¥¤¥ë¤ò¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤È¤·¤Æ¥Þ¥¦¥ó¥È¤Ç¤­¤ëµ¡Ç½¤Ç¤¢¤ë¡¥¤½¤Î¤¿¤á¡¤loopback¥Ç¥Ð¥¤¥¹¤òÍøÍѤ·¤Æ¥Õ¥¡¥¤¥ë(º£²ó¤Ï/xen/domU/root.img)¤ä¥á¥â¥ê¾å¤Ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ò¹½ÃۤǤ­¤ë¡¥

Debian´Ä¶­¤Î¹½ÃÛ

  • debootstrap¤Ë¤è¤êDebian ¾å¤Ç Debian ´Ä¶­¤ò¹½ÃÛ¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë
    • ¤Ä¤Þ¤ê¡¢¥Û¥¹¥È¤È¥²¥¹¥È¤¬¤È¤â¤ËDebian½Ð¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤
    • ¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¾¤ÎÊýË¡¤ò¤È¤ëɬÍפ¬¤¢¤ë¡£
      $ sudo /usr/sbin/debootstrap --arch i386 etch /mnt/dom0-root http://ftp.jp.debian.org/debian
  • ($ sudo chroot /mnt/dom0-root /bin/bash)

¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¥Æ¡¼¥Ö¥ë¤ÎÀßÄê

  • /etc/fstab¤ò°Ê²¼¤Î¤è¤¦¤ËÊÔ½¸¤·¤¿
    /dev/sda1   /     ext3   errors=remount-ro   0   1
    /dev/sda2   none  swap   sw                  0   0
    proc        /proc proc   defaults            0   0

¥¢¥ó¥Þ¥¦¥ó¥È

  • ¤³¤ì¤ò˺¤ì¤ë¤È¿§¡¹Áàºî¤¬¤Ç¤­¤Ê¤¤¤Î¤ÇÃí°Õ
    $ umount /mnt/demU-root

DomainU¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤ÎºîÀ®

  • example¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥³¥Ô¡¼¤·¤ÆÊÔ½¸¤¹¤ë¤È¤è¤¤
    $ sudo cp /etc/xen/xmsample1 /xen/domU/xconfig
  • /xen/domU/xconfig¤ò°Ê²¼¤Î¤è¤¦¤ËÊÔ½¸¤·¤¿
    kernel = "/boot/vmlinuz-2.6-xen"
    memory = 64
    name = "debian-domU"
    nics=1
    vif = [ 'mac=00:16:3e:00:00:11, bridge=xenbr1' ]
    disk = [ 'file:/xen/domU/root.img,sda1,w','file:/xen/domU/swap.img,sda2,w' ]
    root = "/dev/sda1 ro"
    • bridge=***¤Ïxend¤Î¥¹¥¿¡¼¥È¸åifconfig¤ÇÆ°¤¤¤Æ¤¤¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò³Îǧ¤¹¤ë¤È¤è¤¤¡£xenbr0¤Î¾ì¹ç¤¬¤¢¤ë....¤é¤¤¤·¡£

DomainU¤Î¹½ÃÛ­¢(Dom0=DomU=Ǥ°Õ)

¹½ÃÛÊýË¡

  • ¤½¤Î­¡¤ÈƱÍͤˤ·¤Æ°Ê²¼¤ò¹Ô¤¦
    • root¥Ñ¡¼¥Æ¥£¥·¥ç¥ó¤ÎºîÀ®
    • swap¥Ñ¡¼¥Æ¥£¥·¥ç¥ó¤ÎºîÀ®
    • ¥ë¡¼¥×¥Ð¥Ã¥¯¥Þ¥¦¥ó¥È¤ò¤¹¤ë(¥Þ¥¦¥ó¥È¥Ý¥¤¥ó¥È=/mnt)
  • °Ê²¼¤Î¥³¥Þ¥ó¥É¤òÆþÎϤ·¡¢dom0¤ÈƱ¤¸´Ä¶­¤ò¹½ÃÛ¤¹¤ë
    cp -axv /{root,dev,var,etc,usr,bin,sbin,lib} /mnt
    mkdir /mnt/{proc,sys,home,tmp}
  • ¤³¤ÎÊýË¡¤À¤ÈÀßÄê¤Þ¤ÇƱ¤¸¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤ÇºÇÄã¸Â°Ê²¼¤ò½¤Àµ¤¹¤ë
    • /etc/hostname
    • /etc/fstab
    • /etc/network/interface
  • ¤½¤Î¸å¡¢­¡¤ÈƱÍͤ˰ʲ¼¤ò¹Ô¤¦
    • ¥¢¥ó¥Þ¥¦¥ó¥È
    • DomainU¤ÎÀßÄê¥Õ¥¡¥¤¥ë¤ÎºîÀ®

Ãí°Õ

  • À®¸ù¤·¤¿¤¿¤á¤·¤¬¤Ê¤¤

DomainU¤Î¹½ÃÛ­£(DomU=Some OS, Dom0=Ǥ°Õ)

  • ¸µ¤«¤é¤Ç¤­¤Æ¤¤¤ëVM¥¤¥á¡¼¥¸¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ëÊýË¡
  • ¤«¤Ê¤ê¤ª¼ê·Ú

¥À¥ó¥í¡¼¥É¤Ç¤­¤ëVM¥¤¥á¡¼¥¸

  • 2007/02/29¸½ºß¡ÊÆü¤ËÆü¤Ë¹¹¿·¤µ¤ì¤Æ¤¤¤ëµ¤¤¬¤¹¤ë¡£¡£¡Ë
    • CentOS 5.1
    • CentOS 5.1 64-bit
    • Debian 4.0
    • Debian 4.0 64-bit
    • Fedora 8
    • Fedora 8 64-bit
    • Gentoo 2007.0
    • Slackware 12
    • Ubuntu 7.04 (Feisty)

¹½ÃÛÊýË¡

  • VM¥¤¥á¡¼¥¸¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ë°ÜÆ°
    cd /xens/name_of_new_VM_to_be/
  • links¥³¥Þ¥ó¥É¤Ç¥À¥¦¥ó¥í¡¼¥ÉÀè¤ËÀܳ
    • [Show]¤òÁªÂò¤·¤ÆÍߤ·¤¤¥¤¥á¡¼¥¸¤òÁªÂò¤¹¤ë
      links http://jailtime.org/
  • ¥À¥¦¥ó¥í¡¼¥É¤·¤¿°µ½Ì¥Õ¥¡¥¤¥ë¤òŬÅö¤Ë²òÅà(CentOS¤Ê¤é)
    bunzip2 centos.5-0.20070424.img.tar.bz2
    tar -xvf centos.5-0.20070424.img.tar
    #if you like: rm centos.5-0.20070424.img.tar (its ~1gb)
  • ¸å¤ÎÀßÄê¤ÏÁ°½Ò¤ÎÄ̤ê

Ãí°Õ

  • ¥í¥°¥¤¥óÊýË¡
       login: root
    password: password

DomainU¤Î¹½ÃÛ­¤(DomU=Dom0=Ǥ°Õ)

  • DomainU¤Î¹½ÃÛ­¢¤è¤ê»È¤¨¤ëÊýË¡

¹½ÃÛÊýË¡

°Ê²¼¤ò¼Â¹Ô¤¹¤ë(SwapÎΰè¤ÎÀâÌÀ¤Ï¾Êά)

  • DomU¤ÎÎΰè³ÎÊÝ
    sudo dd if=/dev/zero of=./redhat9.img bs=1 count=1 seek=30G
  • ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¹½ÃÛ
    sudo /sbin/mkfs -t ext3 -F ./redhat9.img
  • ¥ë¡¼¥×¥Ð¥Ã¥¯
    sudo mount -o loop ./redhat9.img /mnt
  • ɬ¿Ü¥Ç¥£¥ì¥¯¥È¥ê¤ÎºîÀ®
    for i in dev etc proc sys tmp ; do mkdir /mnt/$i ; done
  • ¥¹¥Ú¥·¥ã¥ë¡¦¥Ç¥Ð¥¤¥¹¡¦¥Õ¥¡¥¤¥ë¤ÎºîÀ®
    for i in console null zero ; do sudo /dev/MAKEDEV -d /mnt/dev -x $i ; done
  • ɬ¿Ü¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¥Þ¥¦¥ó¥È
    sudo mount -t proc none /mnt/proc
    sudo mount -t sysfs none /mnt/sys #sysfs¤Ï¥Ð¡¼¥¸¥ç¥ó¤ÎÄ㤤OS¤À¤È¥¨¥é¡¼¤¬½Ð¤ë¤«¤â
  • yum¤ò»ÈÍѤ·¤Æ¥²¥¹¥ÈOS¤Î¥¤¥ó¥¹¥È¡¼¥ë
    • ¡ÖCore¡×¤È¡ÖBase¡×¥°¥ë¡¼¥×¤ò¥¤¥ó¥¹¥È¡¼¥ë
      sudo yum -y --installroot=/mnt groupinstall Core
      sudo yum -y --installroot=/mnt groupinstall Base
  • ¥¢¥ó¥Þ¥¦¥ó¥È¡Ê¤è¤¯Ëº¤ì¤ë¤Î¤ÇÃí°Õ¡£Ëº¤ì¤ë¤ÈVMµ¯Æ°¤Ç¤­¤Ê¤¤¡Ë
    sudo umount /mnt/proc
    sudo umount /mnt/sys
    sudo umount /mnt

Ãí°Õ

  • °Ê²¼¤Î¤è¤¦¤Ê²èÌ̤¬½Ð¤¿¤éIgnore¤òÁªÂò vmconfig2.JPG vmconfig.JPG

¤½¤Î¾

¥¤¥á¡¼¥¸¥µ¥¤¥º¤Î³ÈÄ¥ÊýË¡(Î㡧8GB¤Ë³ÈÄ¥)

  1. ¿·¤·¤¤¥Ç¥£¥¹¥¯¥¤¥á¡¼¥¸ÍѤÎÎΰè³ÎÊÝ
    sudo dd if=/dev/zero of=./new_image.img bs=1 count=1 seek=8G
  2. ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¹½ÃÛ
    sudo mkfs -t ext3 -F ./new_image.img
  3. ¿·¤·¤¤¥Ç¥£¥¹¥¯¥¤¥á¡¼¥¸¤ò¥ë¡¼¥×¥Ð¥Ã¥¯¥Þ¥¦¥ó¥È
    sudo mount -o loop ./new_image.img /mnt/new
  4. ¸Å¤¤¥Ç¥£¥¹¥¯¥¤¥á¡¼¥¸¤ò¥ë¡¼¥×¥Ð¥Ã¥¯¥Þ¥¦¥ó¥È
    sudo mount -o loop ./old_image.img /mnt/old
  5. ¥ë¡¼¥È¥Ç¥£¥ì¥¯¥È¥ê¤ÎÆâÍƤòÁ´¤Æ¥³¥Ô¡¼
    sudo cp -r /mnt/old/* /mnt/new
  6. ¥¢¥ó¥Þ¥¦¥ó¥È
    umount /mnt/new
    umount /mnt/old

Ãí°Õ

  • ¾åµ­¤Î¥³¥Þ¥ó¥É¤òsudo¤òÍѤ¤¤Æ¼Â¹Ô¤¹¤ë¤ÈÀ®¸ù¤¹¤ë³ÎΨ¤¬¹â¤¤