Editing Creating OpenVZ LiveCD based on Centos 4.4
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 28: | Line 28: | ||
This part contains detailed description of LiveCD creation. I've removed the output of some | This part contains detailed description of LiveCD creation. I've removed the output of some | ||
commands in order to simplify the reading. | commands in order to simplify the reading. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Creating booted LiveCD root filesystem === | === Creating booted LiveCD root filesystem === | ||
Line 116: | Line 106: | ||
# cd livecd-root | # cd livecd-root | ||
# mkdir dev | # mkdir dev | ||
− | # cp -a /dev/* dev | + | # cp -a /dev/* root/dev |
# mkdir proc | # mkdir proc | ||
# mount -t proc proc proc/ | # mount -t proc proc proc/ | ||
− | # mkdir sys | + | # mkdir root/sys |
# mount -t sysfs sysfs sys/ | # mount -t sysfs sysfs sys/ | ||
# mkdir tmp | # mkdir tmp | ||
Line 346: | Line 336: | ||
<tt>tetex</tt>, <tt>latex</tt>, <tt>k3b</tt> and printing related packages: | <tt>tetex</tt>, <tt>latex</tt>, <tt>k3b</tt> and printing related packages: | ||
<pre> | <pre> | ||
− | # cp -r to_booted_livecd/ | + | # cp -r to_booted_livecd/ root/tmp/ |
− | # chroot | + | # chroot root/ |
# rpm -e lksctp-tools-1.0.2-6.4E.1.i386 | # rpm -e lksctp-tools-1.0.2-6.4E.1.i386 | ||
Line 387: | Line 377: | ||
Clean it: | Clean it: | ||
<pre> | <pre> | ||
− | # rm | + | # rm root/root/.bash_history |
</pre> | </pre> | ||
Here we have to make one step to workaround [[Checkpointing and live migration]] problem. The thing is that at the moment | Here we have to make one step to workaround [[Checkpointing and live migration]] problem. The thing is that at the moment | ||
Line 398: | Line 388: | ||
on this directory: | on this directory: | ||
<pre> | <pre> | ||
− | mkdir | + | mkdir root/vz/private/ |
</pre> | </pre> | ||
At the moment vzquota doesn't support <tt>tmpfs</tt> ([http://bugzilla.openvz.org/show_bug.cgi?id=558 Bug #558]). | At the moment vzquota doesn't support <tt>tmpfs</tt> ([http://bugzilla.openvz.org/show_bug.cgi?id=558 Bug #558]). | ||
Line 412: | Line 402: | ||
<pre> | <pre> | ||
# rm -f ovz-livecd/base/*.mo | # rm -f ovz-livecd/base/*.mo | ||
− | # | + | # mksquashfs root/lib/ ovz-livecd/base/bin.mo -keep-as-directory |
− | + | # mksquashfs root/etc/ ovz-livecd/base/etc.mo -keep-as-directory | |
− | + | # mksquashfs root/lib/ ovz-livecd/base/lib.mo -keep-as-directory | |
+ | # mksquashfs root/root/ ovz-livecd/base/root.mo -keep-as-directory | ||
+ | # mksquashfs root/sbin/ ovz-livecd/base/sbin.mo -keep-as-directory | ||
+ | # mksquashfs root/usr/ ovz-livecd/base/usr.mo -keep-as-directory # it can take long... | ||
+ | # mksquashfs root/var/ ovz-livecd/base/var.mo -keep-as-directory | ||
+ | # mksquashfs root/vz/ ovz-livecd/base/vz.mo -keep-as-directory | ||
</pre> | </pre> | ||
Line 422: | Line 417: | ||
than 8 characters) to kernel image, otherwise <tt>isolinux</tt> will not see it. | than 8 characters) to kernel image, otherwise <tt>isolinux</tt> will not see it. | ||
<pre> | <pre> | ||
− | # cp | + | # cp root/boot/vmlinuz-2.6.18-ovz028stab035.1-smp ovz-livecd/boot/ovz18 |
</pre> | </pre> | ||
Modify initrd image. More precisely, we need to add OpenVZ kernel modules there | Modify initrd image. More precisely, we need to add OpenVZ kernel modules there | ||
Line 439: | Line 434: | ||
# mount -o loop initrd-old mount-old/ | # mount -o loop initrd-old mount-old/ | ||
# dd if=/dev/zero of=initrd bs=1048576 count=100 | # dd if=/dev/zero of=initrd bs=1048576 count=100 | ||
− | |||
− | |||
− | |||
− | |||
# mkdir mount | # mkdir mount | ||
# mount -o loop initrd mount/ | # mount -o loop initrd mount/ | ||
Line 451: | Line 442: | ||
Copy modules to initrd: | Copy modules to initrd: | ||
<pre> | <pre> | ||
− | # cp -r ../ | + | # cp -r ../root/lib/modules/2.6.18-ovz028stab035.1-smp/ mount/lib/modules/ |
# rm -rf mount/lib/modules/2.6.18-ovz028stab035.1-smp/build # we don't neet it on initrd image | # rm -rf mount/lib/modules/2.6.18-ovz028stab035.1-smp/build # we don't neet it on initrd image | ||
</pre> | </pre> | ||
Line 494: | Line 485: | ||
# umount mount/ | # umount mount/ | ||
# gzip initrd | # gzip initrd | ||
− | # cp initrd.gz ../ovz-livecd/boot/initrd.gz | + | # /bin/cp initrd.gz ../ovz-livecd/boot/initrd.gz |
# cd .. | # cd .. | ||
</pre> | </pre> | ||
Line 524: | Line 515: | ||
Also '''don't forget''' to change <tt>ramdisk_size</tt> to 102400 for all kernels including Centos 4.4 default! | Also '''don't forget''' to change <tt>ramdisk_size</tt> to 102400 for all kernels including Centos 4.4 default! | ||
− | And I suggest to remove <tt> | + | And I suggest to remove <tt>quite</tt> parameter, to see what happens: it will help greatly if some problem will happen. |
=== Embellishment === | === Embellishment === | ||
Line 558: | Line 549: | ||
console=ttyS0,115200 console=tty | console=ttyS0,115200 console=tty | ||
</pre> | </pre> | ||
− | |||
− | |||
== External Links == | == External Links == |