Минимальная установка CentOS 6 на VMware с kickstart-ом

В этом посте я хотел бы рассказать о том, как установить CentOS 6 с минимальным количеством софта в виртуальной машине VMware, потратив на это с помощью kickstart файла минимум времени. Вам понадобится VMWare Workstation 8, а также netinstall диск для i386 или x86_64. Указываемые мною ссылки являются ближайшими ко мне зеркалами, а вы можете загрузить необходимое из “мест не столь отдалённых” от вас.
Нам даже не понадобится Virtual CloneDrive для монтирования образа на винде, так как VMware может устанавливать операционную систему прямо из .iso файла.

Давайте начнём с создания новой виртуальной машины.

Step 1 - Запускаем мастер создания новой виртуальной машины

Рис. 1 Запускаем мастер создания новой виртуальной машины

Step 2 - Выбираем Workstation 8.0

Рис. 2 Выбираем Workstation 8.0

Step 3 - Указываем путь к загруженному netinstall образу

Рис. 3 Указываем путь к загруженному netinstall образу

Step 4 - Я устанавливаю CentOS 6.2 64 bit

Рис. 4 Я устанавливаю CentOS 6.2 64 bit

Step 5 -Указываем где создать виртуальную машину

Рис. 5 Указываем где создать виртуальную машину

Step 6 - У меня 4 ядра на i7 и я выделяю 2 из них под VM

Рис. 6 У меня 4 ядра на i7 и я выделяю 2 из них под VM

Step 7 - Из своих 16Gb RAM я отдаю 2 под CentOS VM

Рис. 7 Из своих 16Gb RAM я отдаю 2 под CentOS VM

Step 8 - Я использую статические IP адреса и bridged networking

Рис. 8 Я использую статические IP адреса и bridged networking

Step 9

Рис. 9 Соглашаемся с установками мастера

Step 10

Рис. 10 Соглашаемся с установками мастера

Step 11

Рис. 11 Соглашаемся с установками мастера

Step 12 -  В нашем минимальном наборе VM будет занимать меньше 1Gb. Так что 20Gb вполне хватит.

Рис. 12 В нашем минимальном наборе VM будет занимать меньше 1Gb.
Так что 20Gb вполне хватит.

Step 13

Рис. 13 Соглашаемся с установками мастера

Step 14 - Создание виртуальной машины закончено

Рис. 14 Создание виртуальной машины закончено

Step 15 - Нажимаем Tab для запуска инсталляции из kickstart-a

Рис. 15 Нажимаем Tab для запуска инсталляции из kickstart-a

Теперь несколько слов об установке из kickstart-а. Есть много различных вариантов, где может находиться kickstart файл. Я использовал HTTP способ. Вот здесь находится мой kickstart файл, но Вадим, который создал его для меня, может его удалить, поэтому, на всякий случай, я привожу его здесь.

text
skipx
install
url --url http://mirror.cogentco.com/pub/linux/centos/6/os/x86_64/
repo --name=epel --baseurl=http://download.fedoraproject.org/pub/epel/6/x86_64/
repo --name=updates --baseurl=http://mirror.cogentco.com/pub/linux/centos/6/updates/x86_64/
lang en_US.UTF-8
keyboard us
rootpw 123456
firewall --disabled
authconfig --enableshadow --passalgo=sha512
selinux --disabled
timezone Etc/UTC
bootloader --location=mbr
zerombr
clearpart --all --initlabel
part /boot --fstype ext4 --fsoptions="noatime" --size=200
part pv.1 --size 1 --grow
volgroup vg0 --pesize=4096 pv.1
logvol / --fstype ext4 --fsoptions="noatime" --name=root --vgname=vg0 --size=8192
logvol swap --fstype swap --name=swap --vgname=vg0 --size 2048
logvol /var --fstype ext4 --fsoptions="noatime,nodev" --name=var --vgname=vg0 --size=4096
logvol /home --fstype ext4 --fsoptions="noatime,nodev" --name=home --vgname=vg0 --size=2048
 
services --enabled=sendmail,network,ntpd,ntpdate
 
reboot
 
%packages --nobase
epel-release
openssh-clients
openssh-server
yum
at
acpid
vixie-cron
cronie-noanacron
crontabs
logrotate
ntp
ntpdate
tmpwatch
rsync
sendmail
mailx
which
wget
-postfix
-prelink
-selinux-policy-targeted
%end

Не хочу сейчас дискутировать на тему, является ли данная установка по-настоящему минимальной, так как я верю опыту Вадима. Давайте скажем, что это один из вариантов минимальной установки. Основные преимущества kickstart-ов – в возможности быстро переустанавливать ваши системы или повторять их снова и снова. Мы используем kickstart-ы в Nerrvana под руководством Вадима и при его участии. Наше ядро, FTPS сервера, Selenium Hub и CentOS RC устанавливаются из kickstart-ов. Мы можем поменять интернет-провайдера или добавить новый сервер в наше облако быстро, зная, что ничего не будет забыто и будет в точности совпадать с другими установленными системами, выполняющими те же функции. В таких kickstart-ах находятся подробные инструкции по натсройке системы, установке наших собственных RPM итд. итп.

В данном случае мы не собираемся переустанавливать или переносить систему. Мы просто хотим установить её быстро, не тратя время на мастер установки. Возможно, в будущем мы расскажем о более сложных вариантах использования kickstart-ов, а также о том, как мы создаём виртуальные машины с различными версиями Windows и наборами браузеров разных версий для Nerrvana. Мы просто хотим поделиться тем, чему научились в процессе создания Nerrvana, чтобы у тех, кто решит создавать собственные системы тестирования на базе Selenum, это заняло меньше времени.

Возвращаясь к нашей теме. Положите kickstart файл так, чтобы он был доступен по HTTP. Если у вас нет доступных веб-серверов – самый простой способ будет поднять IIS на том же компе, где вы создаёте виртуальную машину и положить kickstart туда.

Step 16 - Добавляем параметры kickstart-a и нажимаем Enter

Рис. 16 Добавляем параметры kickstart-a и нажимаем Enter

Step 17 - Установка начинается

Рис. 17 Установка начинается

Step 18 - 'Asknetwork' параметр запрашивает параметры сети

Рис. 18 ‘asknetwork’ параметр запрашивает параметры сети

Step 19 - Вводим сетевые параметры

Рис. 19 Вводим сетевые параметры

Step 20 - Инсталляция продолжается

Рис. 20 Инсталляция продолжается

Step 21 - Если нужно смотрим логи во время установки нажав Alt+F3

Рис. 21 Если нужно, смотрим логи во время установки нажав Alt+F3

Step 22 - Устанавливается операционная система и пакеты, которые мы указали в kickstart-e

Рис. 22 Устанавливается операционная система и пакеты, которые мы указали в kickstart-e

Step 23 - Всё установлено. Можем доустанавливать что пожелаем.

Рис. 23 Всё установлено. Можем доустанавливать что пожелаем.

Step 24 - Пока VM занимает всего 725Mb

Рис. 24 Пока VM занимает всего 725Mb

Теперь можем войти рутом с root/123456, поменять ему пароль, настроить sshd, запретить руту заходить по ssh, создать account для себя и устанавить то, что нужно – MySQL, PHP итп.

Print this post | Home

19 comments

  1. Marcin EF says:

    This is excellent guide! Well documented and written.

    Thanks for sharing!

  2. PJ says:

    Hi,

    after the VM config, the CentOS just starts installing in a GUI. I don’t get the screen to choose the kickstart.
    How do I get that screen?
    thanks,

    PJ

  3. Igor Kryltsov says:

    Hi,

    On Fig 15 it says “Press [Tab] to edit options” and once you do it install pauses letting you put parameters shown on Fig 16 which tell install to use kickstart.

  4. @ndres says:

    Hello!!!

    I installed CentOS v6.3 on VMware WorkStation 9 using Easy Install and I don’t have access to the root account!!!

    Thanx!!!

  5. Igor Kryltsov says:

    I do not have version 9 of VMware WorkStation 9 and version 8 does not have Easy Install for CentOS. As I understand providing root password is a part of it which means you probably need to ask this on VMWare forum.

  6. Jon says:

    I don’t really have any idea how much time of my life you saved me but thank you my sir, thank you indeed

  7. Igor Kryltsov says:

    Glad to hear :)
    Check another related piece from us in our Selenium blog.

  8. vimal says:

    After successfull installation of automated Centos using ISO , i need to login automatically as root user but i dont have any idea on how to automate the same.

    If u have any solution pls share , it would be great to hear from you.. thnx

  9. Igor Kryltsov says:

    Did you use kickstart file we provided? If so, check kickstart file. It contains: “rootpw 123456″. You login as root with password 123456 :)

    Hope this helps.

  10. vimal says:

    thnx Igor, but my thought is not to type the password manually after installation is complete, it should automatically login as root with the given password.. pls clarify me whether the solution given by you is satisfy my question.

  11. Igor Kryltsov says:

    Hi Vimal,

    If you can, please explain why at the end of install you need to login as root?

    Igor

  12. vimal says:

    Yes Igor, I need to automate the entire installation( once installation complete and logged into the centos machine i have some packages to install that also needs to be automated) .

    So my plan is 1) installation of centos 2) login 3) installing my packages(it needs for my application to run)

    So these are the 3 steps i need to be automated and now completed only 1st..

  13. Igor Kryltsov says:

    You can install packages with kickstart, create files etc. Check this – https://projects.centos.org/trac/livecd/wiki/KickstartFile. A kickstart used in this post does not use this. Play with – http://ks.sdot.ru/. There are very few pieces of software you cannot automate installation (the way you want to do it is not a right way).

  14. vimal says:

    thnx for your discussion igor .. I will go through the links .

  15. Grover says:

    Hola
    Si desean conocer como instalar CentOS 6.4 en VMware 9, podrán encontrarlo en este post:
    http://isyskernel.blogspot.com/2013/03/instalar-centos-64-de-64-bits-en-vmware.html

  16. Igor Kryltsov says:

    If you want to know how to install CentOS 6.4 on VMware 9, look at this post:
    http://isyskernel.blogspot.com/2013/03/instalar-centos-64-de-64-bits-en-vmware.html

    Just translating to English :)
    Thanks Grover!

  17. Enayat says:

    I found your guide really useful and solved most of my questions.

  18. Demanther says:

    This is damn awesome! i love it! I used ESXi so a few parts were different, but overall i’d always wondered how to use a kickstart file… was flawless!

  19. Igor Kryltsov says:

    Glad to hear. If you have more questions abou kickstart creation – please ask.