В конторе периодически закупаются новые компьютеры и сотрудникам IT-отдела приходится отрываться от более интересных дел и заниматься рутиной в виде установки и настройки операционной системы. Установка Ubuntu традиционным способом с помощью компакт-диска, установка драйверов, обновлений и дополнительных программ из интернета, настройка всего занимают слишком много времени. Одним из способов оптимизации процесса является создание типового образа операционной системы и затем быстрое его развертывание на новых компьютерах.
Создание эталонного образа.
Прежде всего необходимо создать эталонный образ Ubuntu. Для этого нам потребуется эмулятор виртуальных машин, например VirtualBox или VMWare. Далее:
- Устанавливаем Ubuntu в виртуальной машине.
Настраиваем установленную операционную систему. Например так:
- включить основные и дополнительные репозитарии и произвести обновление пакетов;
- установить полную локализацию системы;
- установить мультимедийные кодеки;
- установить пакеты с драйверами для видео карт nvidia и ati;
- установить flash плугин для браузера;
- установить плугин для открытия документов MSOffice 2007 (*.docx и др.) в OpenOffice;
- установить необходимые программы и утилиты: ssh сервер, vnc сервер, unrar, wine, virtualbox и много чего ещё...;
- указать сетевые настройки, например адреса dns и ntp серверов, маршруты;
- отключить загрузку не нужных демонов;
- отключить запуск не нужных заданий по расписанию cron;
- любые другие программы и/или настройки.
Настройка профиля пользователя по умолчанию. Для этого создаем пользователя, например testuser, логинимся под ним и производим настройку. Например:
- отключить эффекты рабочего стола;
- разрешить удаленный доступ к рабочему столу (vnc) и задать пароль для него;
- прописать настройки соединения в браузере: проски-сервер и прочее;
- в редакторе меню отключить запуск некоторых программ, например подменю "Игры";
- в настройках сеанса, отключить запуск не нужных программ;
- любые другие настройки.
После завершения настройки профиля, копируем содержимое /home/testuser в /etc/skel. Делаем владельцом пользователя root:
sudo chown -R root:root /etc/skel
Просматриваем директорию /etc/skel, удаляем все лишнее, заменяем в файлах абсолюный путь /home/testuser на относительный ~/.
Теперь при создании нового пользователя в его домашнюю директорию будет копироваться содержимое /etc/skel.
Для создания образа будем использовать livecd дистрибутив System Rescue CD.
После загрузки, поднимаем сеть:
sysresccd ~ # net-setup
Монтируем директорию по сети, куда мы будем копировать образ:
sysresccd ~ # mkdir /mnt/etalon
пример для sftp:
sysresccd ~ # mount -t fuse sshfs#login@192.168.0.1:/etalon /mnt/etalon
пример для smb:
sysresccd ~ # mount -t cifs -o user=login //192.168.0.2/etalon /mnt/etalon
Далее, монтируем жесткий диск виртуальной машины:
sysresccd ~ # mkdir /mnt/sda1 sysresccd ~ # mount /dev/sda1 /mnt/sda1
Создаем образ обычной утилитой tar:
sysresccd ~ # cd /mnt/sda1 sysresccd sda1 # tar cvzf /mnt/etalon/etalon-ubuntu8.04-20080704.tar.gz *
Образ операционной системы создан. У меня файл образа занимает около 1,5 Гб. Остается только записать его на dvd болванку.
Развертывание эталонного образа на новом компьютере
Развертывание образа эта операция ради которой и затевалось создание самого образа. Здесь нас снова поможет незаменимый инструмент системного администратора System Rescue CD. Загружаем новый компьютер с его помощью, при загрузке вводим опции, чтобы после можно было освободить dvd привод:
rescuecd docache doeject
Вытаскиваем livecd, устанавливаем в привод болванку с образом. Далее:
Разметка диска. Например: все место под корневой раздел, файловая система reiserfs, под swap 2ГБ:
sysresccd ~ # сfdisk /dev/sda sysresccd ~ # mkfs.reiserfs /dev/sda1 sysresccd ~ # mkswap /dev/sda2
Монтируем диски и разворачиваем эталон:
sysresccd ~ # mkdir /mnt/sda1 sysresccd ~ # mount /dev/sda1 /mnt/sda1 ... sysresccd ~ # mkdir /mnt/etalon sysresccd ~ # mount /dev/cdrom /mnt/etalon ... sysresccd ~ # tar -С /mnt/sda1 xvzf /mnt/etalon/etalon-ubuntu8.04-20080704.tar.gz
Правим файлы /mnt/sda1/etc/fstab и /mnt/sda1/boot/grub/menu.lst чтобы UUID метки дисков соответствовали новым томам. UUID метки можно узнать с помощью команды:
sysresccd ~ # blkid
Устанавливаем загрузчик grub в mbr область нового диска:
sysresccd ~ # grub-install --root-directory=/mnt/sda1 /dev/sda
Если все прошло успешно, то мы уже можем загрузить с операционную систему с жесткого диска. Дальше:
Сконфигурируем видео драйвер (в эталоне должен быть установлен универсальный драйвер vesa):
administrator@etalon:~# sudo dpkg-reconfigure -phigh xserver-xorg
После перезапуска иксов (Ctrl-Alt-Backspace) должен подняться нормальный видео драйвер.
Сменим имя хоста и сетевые настройки:
administrator@etalon:~# sudo gedit /etc/hostname administrator@etalon:~# sudo gedit /etc/network/interfaces
Компьютер готов к работе. После установки на рабочее место пользователя ещё потребуется настроить принтера, но это уже отдельная история.
После приобретения некоторого опыта установка операционной системы на новый компьютер занимает около 20 минут. Конечно предварительно должно быть потрачено время на создание эталонного образа и периодическое его обновление, но при больших количествах новых компьютеров оно окупается. Данный способ успешно применяется уже 1,5 года.
10 комментариев:
Спасибо за подробную инструкцию!
Надо будет на неделе заняться.
Не лучше ли будет поднапрячься еще немного, сделать загрузочный cd с помощью isolinux (инструкции: http://syslinux.zytor.com/iso.php), а в загрузочном скрипте initrd прописать автоматическое разбиение диска и разворачивание образа?
Если уж "напрягаться ещё немного", то стоит организовать полноценную сетевую установку. Тогда установка новой/замена старой машины вообще сводится к загрузке через PXE - по сути одно нажатие одной кнопке на старте машины.
Ссылку на инструкцию не привожу, ибо мы как раз написанием оной занимаемся.
Конечно PXE - да, или partimage или http://www.debian.org/releases/stable/i386/ch04s07.html.ru
велосипед
это давно обкатанный gentoo-way
странно что вы используете это для ubuntu, неужели там нет возможности собрать полноценный установочный custom cd?
2bappoy
Автоматическое разбиение диска не всегда приемлемо, особенно если дисков несколько.
2Dmitriy Maygurov
С удовольствием почитал бы вашу инструкцию. Одна из причин размещения данной статьи - может кто-нибудь посоветует лучшее решение. Пока вижу один недостаток PXE: при большом количестве офисов надо либо держать несколько серверов PXE либо новые компьютеры все время возить в центральный офис.
Как параноик добавлю перегенерацию ssh-ключей:
#rm /etc/ssh/ssh_host
#dpkg-reconfigure openssh-server
А то как-то небезопасно, знаете ли :)
Данный способ успешно применяется уже 1,5 года
решил проверить инструкцию, только в качестве лайвСД использивал puppyrus
образ сделал без проблем
при разворачивании cтолкнулся с рядом проблем
1, сначало cfdisk как-то криво разбил диск и разворот архива давал ошибки. запустил гпартед он показал ошибки. разбил из под него.
2, потом оказалось что UUID надо менять не только в fstab но и в грубе
3, раздел с подкачкой не получил UUID =/
ну а в остальном все хорошо =)
JW Marriott Spa - Hollywood Casino, St. Charles
Discover cheap deals for JW Marriott Spa in St. Charles starting at $89. Save 문경 출장안마 up 제주도 출장마사지 to 60% off with our 이천 출장샵 Hot Rate deals when 제주도 출장샵 booking a last 충청남도 출장안마 minute hotel room.
Отправить комментарий