Бездисковая загрузка для компьютерного клуба по протоколу ISCSI

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

В первом уровне у нас придается индивидуальность компьютеру, т.е. имя компьютера, драйвера, изменения в реестре для некоторых программ.

Со вторым уровнем клонов работает непосредственно пользователь компьютерного клуба,который при перезагрузке компьютера пользователя, полностью уничтожается и создается заново с клона 1-го уровня.

Тут и возникает проблема как же эту индивидуальность сделать?
Бегать по всем компьютерам клуба и менять имя компьютера в ручную это мягко сказать извращение :), а после обновления базового образа (например обновление драйверов видео карты) эту процедуру необходимо повторить, что превращает эту процедуру в извращение в квадрате :).

Я решил эту проблему следующим образом:
В скрипте, который создает клон необходимо добавить условие проверки существования файла (клона 1-го уровня): file="/mnt/win/winon-cow/winon.1"
if [ -e $file ]; then
echo «Фаил существует»
дальше ваш код по созданию клона 2-го уровня с клона 1-го уровня

else
echo «Фаилотсутствует»
дальше ваш код по созданию клона 1-го уровня с базового образа

Теперь при загрузке клиента и отсутствии клона 1-го уровня, создается клон 1-го уровня и этот же клон загружается.

После загрузки необходимо в автозагрузку системы выставить запуск программы hostname.exe которая определит имя компьютера и сравнит 2 последние цифры с двумя последними цифрами IP адреса.

Если совпадает то ничего не происходит можно работать с компьютером, если же нет, то:
1. Происходит смена имени компьютера на Copm и 2 последние цифры IP адреса. Если адрес имеет вид 192.168.1.1 то значение примет -1
Например:
Было:
Имя компьютера: Copm15
IP адрес: 192.168.1.1
После запуска программы:
Имя компьютера: Copm-1
IP адрес: 192.168.1.1

2. Программа определяет устанавливаются ли сейчас какие либо драйвера или выполняется поиск устройств и после завершения установки отправляет компьютер на перезагрузку.

Далее при загрузке на сервере ISCSI выполняется скрипт по проверке существования файла образа клона 1-го уровня и выполняется его часть, где создается клон 2-го уровня с клона 1-го уровня и происходит загрузка клона 2-го уровня.

Параметры запуска hostname:
-subnetwork - по умолчанию 192. Можно указать вашу подсетку первые 3 цыфры.
-hostname - имя которое будет присваиваться. По умолчанию: Comp
-zero - во что превращать 0. Пример -zero - получим Comp-1

Запускаются батники:
Вариант когда имя компа меняется выполняется батник reboot.bat в котором прописана команда перезагрузки и по желанию туда можно добавить своего
Вариант когда имя компа не меняется start.bat.

Скачать эту чудо программу можно здесь..