Difference between revisions of "Creating a CentOS 6 Template"
m |
|||
Line 5: | Line 5: | ||
At a CentOS 6 host as root do:<br/> | At a CentOS 6 host as root do:<br/> | ||
− | + | ||
− | yum install yum-utils<br/> | + | yum install yum-utils<br/> |
− | yumdownloader centos-release.x86_64<br/> | + | yumdownloader centos-release.x86_64<br/> |
− | mkdir -p /newroot/var/lib/<br/> | + | mkdir -p /newroot/var/lib/<br/> |
− | touch /newroot/var/lib/random-seed #without it, the initscript installation script will fail <br/> | + | touch /newroot/var/lib/random-seed #without it, the initscript installation script will fail <br/> |
− | rpm --rebuilddb --root=/newroot<br/> | + | rpm --rebuilddb --root=/newroot<br/> |
− | rpm -i --root=/newroot --nodeps centos-release-6-3.el6.centos.9.x86_64.rpm<br/> | + | rpm -i --root=/newroot --nodeps centos-release-6-3.el6.centos.9.x86_64.rpm<br/> |
− | yum --installroot=/newroot install -y openssh-clients openssh-server yum yum-utils man wget sudo tar passwd<br/> | + | yum --installroot=/newroot install -y openssh-clients openssh-server yum yum-utils man wget sudo tar passwd<br/> |
− | yum --installroot=/newroot clean all<br/> | + | yum --installroot=/newroot clean all<br/> |
− | ln -s /proc/mounts /newroot/etc/mtab<br/> | + | ln -s /proc/mounts /newroot/etc/mtab<br/> |
− | rm -f /newroot/dev/null<br/> | + | rm -f /newroot/dev/null<br/> |
− | mknod -m 600 /newroot/dev/console c 5 1 | + | mknod -m 600 /newroot/dev/console c 5 1 |
− | |||
<br/> | <br/> | ||
Create /newroot/etc/fstab that looks like this: | Create /newroot/etc/fstab that looks like this: | ||
− | + | none /dev/pts devpts rw,gid=5,mode=620 0 0 | |
− | + | none /dev/shm tmpfs defaults 0 0 | |
Edit /newroot/etc/sysconfig/init | Edit /newroot/etc/sysconfig/init | ||
Change the line | Change the line | ||
− | + | ACTIVE_CONSOLES=/dev/tty[1-6] | |
to | to | ||
− | + | ACTIVE_CONSOLES= | |
+ | |||
+ | Change timezone (if needed) | ||
+ | |||
+ | rm /newroot/etc/localtime <br /> | ||
+ | ln -s /usr/share/zoneinfo/Your/Timezone /newroot/etc/localtime | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
The only thing missing is to create a tarball of our new root. | The only thing missing is to create a tarball of our new root. | ||
− | + | tar zcf /vz/template/cache/centos-6-x86_64.tar.gz -C /newroot . | |
You probably want to get rid of /newroot<br /> | You probably want to get rid of /newroot<br /> | ||
− | + | rm -rf /newroot | |
− | rm -rf /newroot | + | |
− | + | And you are done! |
Revision as of 12:33, 24 October 2012
This guide requires that you already have a CentOS 6 - If you do not have CentOS 6 installed, do it in KVM or VirtualBox or whatever you want.
At a CentOS 6 host as root do:
yum install yum-utils
yumdownloader centos-release.x86_64
mkdir -p /newroot/var/lib/
touch /newroot/var/lib/random-seed #without it, the initscript installation script will fail
rpm --rebuilddb --root=/newroot
rpm -i --root=/newroot --nodeps centos-release-6-3.el6.centos.9.x86_64.rpm
yum --installroot=/newroot install -y openssh-clients openssh-server yum yum-utils man wget sudo tar passwd
yum --installroot=/newroot clean all
ln -s /proc/mounts /newroot/etc/mtab
rm -f /newroot/dev/null
mknod -m 600 /newroot/dev/console c 5 1
Create /newroot/etc/fstab that looks like this:
none /dev/pts devpts rw,gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0
Edit /newroot/etc/sysconfig/init Change the line
ACTIVE_CONSOLES=/dev/tty[1-6]
to
ACTIVE_CONSOLES=
Change timezone (if needed)
rm /newroot/etc/localtime
ln -s /usr/share/zoneinfo/Your/Timezone /newroot/etc/localtime
The only thing missing is to create a tarball of our new root.
tar zcf /vz/template/cache/centos-6-x86_64.tar.gz -C /newroot .
You probably want to get rid of /newroot
rm -rf /newroot
And you are done!