Difference between revisions of "Creating a Virtual Machine from an Existing one Manually"

From Supercomputación y Cálculo Científico UIS
Line 37: Line 37:
 
proc                    /proc                  proc    defaults        0 0
 
proc                    /proc                  proc    defaults        0 0
 
</nowiki></pre>}}
 
</nowiki></pre>}}
It is important that in the moment the files were copied, the directories /proc and /dev have been left out.  Now it is important to create those directories. First mount the partition:
+
It is important that in the moment the files were copied, the directories /proc and /dev had been left out.  Now it is important to create those directories. First mount the partition:
 
{{Command|<nowiki>mount /dev/volumegroup-name/machine-name /mnt/some-directory</nowiki>}}
 
{{Command|<nowiki>mount /dev/volumegroup-name/machine-name /mnt/some-directory</nowiki>}}
 
Then create the directories:
 
Then create the directories:
{{Command|<nowiki>cd /mnt/some-directory</nowiki>}}
+
{{Command|<nowiki>cd /mnt/some-directory
{{Command|<nowiki>mkdir proc dev</nowiki>}}
+
mkdir proc dev</nowiki>}}
 
And then create the devices for the virtual machines
 
And then create the devices for the virtual machines
{{Command|<nowiki>cd /mnt/some-directory/dev</nowiki>}}
+
{{Command|<nowiki>cd /mnt/some-directory/dev
{{Command|<nowiki>mknod xvc0 c 204 191</nowiki>}}
+
mknod xvc0 c 204 191
{{Command|<nowiki>mknod hvc0 c 229 0</nowiki>}}
+
mknod hvc0 c 229 0
{{Command|<nowiki>mknod xvda b 202 0</nowiki>}}
+
mknod xvda b 202 0
{{Command|<nowiki>mknod xvda1 b 202 1</nowiki>}}
+
mknod xvda1 b 202 1</nowiki>}}

Revision as of 20:34, 27 August 2014

Back to: Xen on Debian

Assuming an LVM setup, this is the command for allocating the required disk space (in this example 20Gb) for the main disk of the virtual machine. Another amount is required for the swap space.

lvcreate -L20G -n machine-name volumegroup-name lvcreate -L2G -n machine-name-swap volumegroup-name

where machine-name and volumegroup-name are specific to the intended configuration.

The virtual units are formatted

mkfs.ext4 /dev/volumegroup-name/machine-name mkswap /dev/volumegroup-name/machine-name-swap

After the file copy, it is necessary to edit some configuration files: securetty, inittab and fstab. First edit securetty

vi securetty

A line containing hvc0 should be in the file.

File: /etc/securetty
#...

# IBM iSeries/pSeries virtual console
hvc0
hvc1
#...

Then search inittab for a line with tty like the one below:

File: /etc/inittab
#c1:12345:respawn:/sbin/agetty 38400 tty1 linux

and edit it to:

File: /etc/inittab
c1:12345:respawn:/sbin/agetty 38400 hvc0 linux

Next, edit fstab to reflect the virtual drive configuration

File: /etc/fstab
/dev/xvda1               /                       ext3    defaults        1 1
/dev/xvda4               swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

It is important that in the moment the files were copied, the directories /proc and /dev had been left out. Now it is important to create those directories. First mount the partition:

mount /dev/volumegroup-name/machine-name /mnt/some-directory

Then create the directories:

cd /mnt/some-directory mkdir proc dev

And then create the devices for the virtual machines

cd /mnt/some-directory/dev mknod xvc0 c 204 191 mknod hvc0 c 229 0 mknod xvda b 202 0 mknod xvda1 b 202 1