Difference between revisions of "DRBL"

From Ilianko
 
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
== Какво е Diskless Remote Boot in Linux сървър и за какво се използва? ==
 +
DRBL е безплатно приложение с помощта, на което е възможно да се управляват голяма група  GNU/Linux или Windows базирани системи. Технологията позволява системите (клиентите) да се инсталират и поддържат много бързо и удобно, което улеснява и спестява много разходи на фирмите, които се занимават с поддръжката на голям брой компютри.  Приложението се поддържа от Debian, Ubuntu, Mandriva, Red Hat, Fedora, CentOS и SuSE операционни системи. DRBL използва споделените ресурси на системата, на която е инсталирана, което позволява на клиентските компютри да работят с тях като собствени. Приложението може да се използва съвместно с  Clonezilla и/или други програми за управление и поддръжката на твърдите дискове подобни на Symantec Ghost®.
  
== Каво е Diskless Remote Boot in Linux сървър и за какво се използва? ==
+
== Подготовка на сървъра за инсталация на DRBL средата ==
DRBL е безплатно приложение с помощта на което е възможно да се управляват GNU/Linux или Winows базирани системи използвани за работа на повечето компютри. Технологията позволява системите (клиентите) да се инсталират и подържат много бързо и удобно, което улеснява и спестява много разходи на фирмите които се занимават с поддръжката на голям брой компютри.  Приложението се поддържа от Debian, Ubuntu, Mandriva, Red Hat, Fedora, CentOS и SuSE операционни системи. DRBL използва споделените ресурси на системата на която е инсталирана, което позволява на клиентските компютри да работят с тях като собствени. Приложението може да се използва съвместно с  Clonezilla и/или други програми за управление и поддръжката на твърдите дискове подобни на Symantec Ghost®.
 
  
== Подготовка на сървъра за инсталация на DRBL средата ==
+
* Инсталираме избраната дистрибуция (в случая Ubuntu) и конфигурираме  мрежовите карти.
 +
* Използваме "eth0" за връзка с Интернет.
 +
* Останалите мрежови карти се ползват като връзки с клиентите на DRBL сървъра. За предпочитане е да се зададат частни IP адреси от типа: 192.168.X.x за eth1, 192.168.Y.x за eth2 и т.н.
  
* Инсталираме избраната дистрибуция (в случея Ubuntu) и конфигурираме  мрежовите карти. Използваме “eth0” за връзка с интернет, а останалите мрежови карти като връзки  с клиентите на DRBL сървъра ( за предпочитане е да се зададат частни IP адреси от типа: 192.168.101.254 за eth1, 192.168.102.254 за eth2, 192.168.103.254 за eth3 и така с всички мрежови карти ). Важно е да се спазва това правило, относно частните адреси тъй като те са в основата на DRBL. Ако мрежовия мениджър на вашата линукс дистрибуция се стартира автоматично препоръчително е или да се забрани или направо да се премахне. В случея за Ubuntu се препоръчва да се деинсталира мрежовият мениджър напълно, използвайки командата:
+
'''Важно''' Ако е инсталиран мрежов мениджър на вашата Линукс дистрибуция, който се стартира автоматично, препоръчително е да се деактивира или деинсталира. За Ubuntu деинсталирането на мрежовият мениджър напълно става с командата:
  
 
  apt-get remove network-manager
 
  apt-get remove network-manager
  
Трябва да се пренастрои и защитната стена на операционната система при конфигурирането на DRBL сървъра. ''' ВАЖНО ''' е при тази стъпка, да се оставят активни ''' NFS, NIS, tftp ''' и ''' dhcp ''' услугите т. да не се ограничават или забраняват при конфигурацията на защитната стена.
+
'''Важно''' Ако разполагате само с една мрежова карта, може създадете [[Linux виртуални интерфейси|два виртуални интерфейса]], като настроите два IP адреса единият на eth0 за връзка с Интернет и eth0:1- който ще се използва за DRBL сървъра. Възможно е IP адреса на виртуалния интерфейс (eth0:1) да предизвиква проблеми ако не зададем статични адреси на клиентските системи, посредством техния MAC адрес. Препоръчва се използването на повече от една мрежова карта за улеснение на начинаещите, тъй като в противен случай трябва да се запишат MAC адресите в DHCP сървъра, което за начинаещите представлява трудност. Затова се препоръчва използването на 2 или повече мрежови адаптера.
 
 
* Може да се повиши производителността на системата като направим следното ( стъпка не е задължителна):
 
 
 
Ако използвате Gnome като графична среда, може да изтрием някой от езиковите пакети (при Ubuntu те се намират в директория ''' ”/var/lib/gconf/defaults/” '''). Това ще спести доста дисково пространство (например, ако изпълнявате команда ''' %gconf-tree.xml и %gconf-tree-zh_TW.xml ''' това ще спести 40 MB пространство на сървъра за един клиент, но ако имаме 40 клиента това ще спести 1,6 GB дисково пространство), а и натоварването на NFS сървъра ще намалее. Друго което може да направим е да премахнем ненужните локални файлове като използваме командата ''' „localepurge” '''.
 
 
 
* Ако Linux дистрибуцията поддържа по-бързата ''' ReiserFS ''' файлова система е по-добре да се използва тя с цел повишаване на производителността в сравнение с ''' ext2/ext3 ''' файловите системи. За тест маже да използвате този benchmark.
 
 
 
*   След като се инсталира Linux дистрибуцията на сървъра, проверяваме дали DMA режима е включен. Това ще доведе до ускоряване на времето за достъп до файловете на твърдия диск. Използваме команда ''' "hdparm /dev/hdx" ''' за да проверим дали DMA режима е включен или изключен. Ако е изключен с ''' "hdparm -d1 -c3 -k1 /dev/hdx" ''' го включимаме. Заместваме ''' /dev/hdx ''' във ''' /dev/hda '''  ако  ''' IDE HD ''' за използвания Linux е в режим ''' "Primary IDE" '''.
 
  
''' Забележка: ''' с изключение на ''' Selinux ''' дистрибуцията, при ядрото на Fedora Core 3 и по късните версии – Освен ако не сте администратор който е наясно със  ''' Selinux ''', е по-добре да  го  изключим, или рискуваме да се сблъскаме с проблеми от типа ''' „Достапът отказан” '''. За да изключим  ''' Selinux ''', настройваме:
+
'''Важно''' Ако има включен firewall, трябва да се позволят ''' NFS, NIS, tftp ''' и ''' dhcp ''' услугите т.е.
 
SELINUX=disabled в директорията /etc/sysconfig/selinux  или /etc/selinux/config
 
  
след което рестартираме машината.
+
== Настройка на DRBL сървъра ==
  
* Ако разполагаме  само с една мрежова карта, може да настроите само два IP адреса единият eth0 и eth0:1- който ще се използва за DRBL сървъра, а с eth0 се осъществяваме връзка с интернет.
+
Тази стъпка се изпълнява при настройката на сървъра с цел използване от клиентите.
 
   
 
   
• ''' Забележка: ''' възможно е да IP адреса на виртуалния интерфейс (eth0:1) да предизвиква проблеми ако не зададем статични адреси на клиентските системи, посредством техния MAC адрес. Препоръчва се използването на повече от една мрежова карта за улеснение  на начинаещите, тъй като в противен случай трябва  да се запишат MAC адресите в DHCP сървъра което за начинаещите представлява трудност. Затова се препоръчва използването на 2 или повече мрежови адаптера.
+
*В зависимост от избраната Linux дистрибуция, инсталацията и настройката на DRBL сървъра протича по различни начини. Ние сме избрали Ubuntu (производна на Debian)
 
+
*Настройка на aptitude за удостоверяване на тегления софтуер. Ако дистрибуцията поддържа ''' apt (aptitude)''' опцията може да добавим следния ключ: ''' (ID: 1024D/D7E8DF3A, Key fingerprint = F532 A131 65AF 2168 1634 DB1B 4000 9511 D7E8 DF3A) '''. Това може да стане по два:
== Настойка на потребителските компютри ==
+
$ wget -q http://drbl.org/GPG-KEY-DRBL -O- | sudo apt-key add -
 
+
или да свалите ключа от сървъра, който за DRBL приложението е http://keyserv.nic-se.se:11371/pks/lookup?op=vindex&search=drbl&fingerprint=on D7E8DF3A
Тази стъпка се изпълнява при настройката на сървъра с цел използване от клиентите. Важно е да се завърши напълно първа стъпка преди да се продължи.
+
  $ gpg --keyserver subkeys.pgp.net --recv-key D7E8DF3A  
+
$ gpg -a --export D7E8DF3A | apt-key add -  
* В зависимост от избраната дистрибуция, инсталацията и настройката на DRBL сървъра протича по различни начини
 
 
 
* Debian и Ubuntu дистрибуции
 
 
 
Ако дистрибуцията поддържа ''' apt (aptitude)''' опцията може да добавим следния ключ: ''' (ID: 1024D/D7E8DF3A, Key fingerprint = F532 A131 65AF 2168 1634 DB1B 4000 9511 D7E8 DF3A) '''. Това може да стане по два начина показани тук. ''' "wget -q http://drbl.org/GPG-KEY-DRBL -O- | sudo apt-key add -" ''', при втория обаче трябва да свалите ключа от сървъра, който за DRBL приложението е D7E8DF3A, това се прави с команда:
 
 
 
  "gpg --keyserver subkeys.pgp.net --recv-key D7E8DF3A"
 
 
 
след това ''' "gpg -a --export D7E8DF3A | apt-key add -" ''' което се добавя към „apt”  опцията.
 
 
 
* Редактира се сорслист файла който се намира в ''' /etc/apt/sources.list '''
 
 
 
deb http://ftp.us.debian.org/debian/ lenny main
 
deb http://drbl.sourceforge.net/drbl-core drbl stable
 
 
 
Ако използвате Ubuntu Maverick (10.10):
 
 
 
deb http://archive.ubuntu.com/ubuntu maverick main restricted universe multiverse
 
deb http://drbl.sourceforge.net/drbl-core drbl stable
 
 
 
Ако използвате Ubuntu Lucid (10.04):
 
 
 
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
 
deb http://drbl.sourceforge.net/drbl-core drbl stable
 
  
* Първия ред с команди може да се замени с друга опция за Debian или Ubuntu. Вторият ред, обаче се отнася до копията на допълнителните програми и приложения, които може да откриете тук!
+
*Редактира се файла съдържащ лист със софтуерните хранилища (Repository), като се добави съответния на версията линк
 +
$sudo vi /etc/apt/sources.list // отваряне на файла
 
   
 
   
Ако искате да използвате тестова установка, заменете вторият ред с:
+
deb http://free.nchc.org.tw/drbl-core drbl stable// добавя се
  
 +
**Страница с връзки към други мирори [http://drbl.sourceforge.net/one4all/#mirror-sites]!
 +
**Ако искате да използвате тестова версия стабилна/ нестабилна изпoлзвайте
 
  deb http://drbl.sourceforge.net/drbl-core drbl stable testing
 
  deb http://drbl.sourceforge.net/drbl-core drbl stable testing
 
По желание може да се инсталира някоя от нестабилните версии, като заменим втория ред с:
 
 
 
  deb http://drbl.sourceforge.net/drbl-core drbl stable testing unstable
 
  deb http://drbl.sourceforge.net/drbl-core drbl stable testing unstable
  
Изпълняваме командата
+
* Update на софтуерните хранилища
 +
  $sudo apt-get update
  
  "apt-get update"
+
* Същинско инсталиране на drbl
 +
  $sudo apt-get install drbl
  
Изпълняваме командата
+
* Конфигуриране на drbl
 +
** A) Изпълнете
 +
  $/usr/sbin/drblsrv -i
 +
Ако не сте сигурни за настройките просто  оставете тези по подразбиране.
 +
** B) Директно зареждане на стойностите по подрабиране
 +
$ /usr/sbin/drbl4imp
 +
ВАЖНО Е ДА СЕ ИМА В ПРЕДВИД, че е възможно да има несъответствие със средата,  засягащи основно ''' "обхвата" на dhcp ''' опцията на сървъра (клиентите няма да получават един и същи ip адрес всеки път). Ако искаме настройката да е съгласувана с установка изпълняваме последната А).
  
  "apt-get install drbl" за да инсталираме DRBL програмата.
+
== Настройка на предоставяните услуги от DRBL сървъра ==
 +
Изпълняваме командата:
 +
  $sudo /usr/sbin/drblpush -i
  
• '''  Забележка! '''  Има два основни сайта от който може да се свали ядрото на DRBL приложението.
+
Софтуерът сканира системата и задава въпроси относно настройките. Въпросите имат отговор по подразбиране, така че натискането на "Enter" e достатъчно за настройките, които не искате да променяте или не разбирате. Примерна конфигурация [http://drbl.sourceforge.net/one4all/examples/drblcli_desktop_example.txt].  
  
  http://ftp.twaren.net/local-distfiles/drbl-core/   (1)
+
*''' Важно!!! ''' Ако след изпълнението на тази стъпка се инсталират допълнителни пакети, трябва да изпълним ''' "/opt/drbl/sbin/drblpush -i" ''' или ''' "/opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf" ''' (това ще зареди последните запазени настройки) за да могат новите пакети да се добавят на клиентите.
  http://free.nchc.org.tw/drbl-core                  (2)
 
  
''' Вариант едно: ''' Ако имате бърза връзка с интернет и дистрибуцията подържа apt опцията. Изпълнете "/opt/drbl/sbin/drblsrv -i".
+
*''' Важно!!! ''' не се препоръчва да се използва мениджъра за автоматично обновяване на Линукс, Тъй като при  инсталиране на нови пакети на сървъра,  ако не се  изпълни ''' "/opt/drbl/sbin/drblpush -i" ''' командата, новата версия инсталирана на сървъра може да не е съвместима с тази на клиента. Ако искате да включите мениджъра за автоматично обновяване, не забравяйте да изпълнявате споменатата по-горе процедура за да се обновяват и клиентските пакети автоматично.
  
''' • Бележка: ''' Има интервал преди ''' "-i" ''' опцията. Ето пример. Ако не сте сигурни за настройките просто  оставете тези по подразбиране.
+
== Настройка на клиентите за използване на DRBL средата ==
  
'''Вариант две : ''' Ако нямате връзка с интернет или връзката ви е бавна и не искате автоматично да се инсталира ядрото, а  дистрибуцията не подържа ''' „apt” ''' опцията. Може да инсталирате ядрото сами, като необходимите пакети може да видите като напишете:
+
* Ако клиента разполага с PXE мрежова карта, BIOS-ът на клиента се настройва да зарежда от ''' "LAN" ''' или ''' "network" '''.
  
"/opt/drbl/sbin/drblsrv-offline -r"
+
* Има и други варианти - ако клиента разполага с флопи, CD-ROM или твърд диск. За повече информация може да видите http://drbl.sourceforge.net/one4all/
  
След като инсталираме необходимите пакети и сме сигурни в настройките на сървъра може да изпълним  командата
+
== Инструмент за стартиране на услугите на DRBL сървъра ==
 
 
"/opt/drbl/sbin/drblsrv-offline -r"
 
  
или може да свалим по-подходящо ядро за сървърна платформа, ако възникне проблем със съвместимостта на клиентите. При смяна на ядрото изпълняваме командата
+
Програмата dcs задава услугата, която ще се предлага на отдалечените клиенти
 
 
"/opt/drbl/sbin/drblsrv-offline -k $KERNEL_PKG"
 
 
 
(като  заменим  $KERNEL_PKG с името на rpm или deb файла на новото ядро). Ако не сме сигурни просто натискаме Enter за да приемем стойността зададена по подразбиране.
 
 
 
* За по – нетърпеливите: ако имате бърза връзка с интернет и дистрибуцията подържа „apt” опцията. Въведете
 
 
   
 
   
  "/opt/drbl/sbin/drbl4imp"
+
  $sudo /opt/drbl/sbin/dcs
 
 
командата за да изпълните казаното дотук.''' "drbl4imp" ''' използваме настройките по подразбиране за  DRBL  сървъра. ''' ВАЖНО Е ДА СЕ ИМА В ПРЕДВИД ''', че е възможно да има несъответствие със средата '''(конфликти) ''',  засягащи основно ''' “обхвата” на dhcp ''' опцията на сървъра (клиентите няма да получават един и същи ip адрес всеки път). Ако искаме настройката да е съгласувана с установка изпълняваме последната точка повторно, стъпка по стъпка.
 
 
 
== Настройка на файловата система на клиентите, в сървъра ==
 
 
 
* Познаване и подредба на  работната установка в реална среда.
 
 
 
* Да вземем за пример библиотечна компютърна зала в която има 40 компютърни системи, които ще бъдат наши клиенти. С цел DRBL сървъра да работи по-ефективно, разделяме клиентите в четири подмрежи например: ''' 192.168.100.0, 192.168.101.0, 192.168.102.0 и 192.168.103.0 '''. За целта  сървъра има 4 мрежови карти. Едната се използва като WAN порт, а останалите остават за локална мрежова връзка. IP адресите които използваме за тези мрежови карти са съответно: ''' 192.168.100.254, 192.168.101.254, 192.168.102.254 ''' и ''' 192.168.3.254 ''', услугите като ''' DHCP, TFTP, NFS ''' и др. се обслужват съответно от ''' eth0:1, eth1, eth2, ''' и ''' eth3 '''.
 
 
 
 
 
 
 
 
 
[[Image:drbl.png|500px|frame|center|Принципна структурата на DRBL сървъра.]]
 
 
 
 
 
 
 
* Има четири модула вградени  в DRBL приложението,  от версия 1.6.3 и нагоре. Пълна версия на  DRBL, Clonezilla, DRBL SSI (Single System Image) и Clonezilla Box. Изискванията към размера на дисковото пространство и бързината на връзката са завишени за първите два модула, но всички настройки са запазени на сървъра така, че всеки клиент да може да запази индивидуалните си настройки. От друга страна  модула ''' DRBL SSI '''  използва виртуално копие на една единствена операционна система използвана от всички клиенти, а необходимите им настройки се генерират със стартирането на клиента. Това намалява необходимостта от повече дисково пространство на сървъра, тъй като се използва само едно копие на операционната система. Недостатък обаче е това, че потребителите не могат да запазват локално настройки си.  В ''' DRBL SSI ''' модула, ако се наложи да се увеличи броя на клиентите, е необходимо само да се модифицира конфигурационния файл ''' „dhcpd.conf” ''', след което да изпълним
 
 
 
"/opt/drbl/sbin/dcs -> others -> gen_3N_conf"
 
 
 
за да се добавят промените, а чрез командата
 
 
"/opt/drbl/sbin/drbl-3n-conf generate"
 
 
 
се създават необходимите файлове. Този режим на работа към DRBL сървъра могат  да се включат до 253 клиентски компютъра. Четвъртия модул е базиран на ''' DRBL SSI ''' използван широко при клонираните системи. Ако искате да работите с DRBL SSI модула по добре е клиентските машини да имат минимум 512MB  RAM памет, а останалите параметри ( видеокарти и т.н.) е желателно да бъдат еднакви. Ето някой помощни материали относно четирите модула.
 
 
 
* ''' Указания за използващите няколко мрежови карти и комутатор, когато се използват няколко мрежови карти '''
 
 
 
* Когато се използват повече  мрежови карти, с цел да се увеличи честотната лента, е препоръчително да зададем твърдо (статично) IP адресите на отделните ''' „възли” ''' така , че те да получават един и същ IP адрес всеки път. В стъпка ''' <3а> ''', когато изпълним командата
 
 
 
"/opt/drbl/sbin/drblpush -i"
 
 
 
системата ще пита оператора ( искате ли да обвърже IP адреса с конкретен MAC адрес, в този случай потвърждаваме). Ако ''' НЕ ''' обвържете твърдо IP адресите с MAC адресите (от сега нататък ще наричаме това „обвързване”) и разполагаме само с един 48 портов комутатор (или много комутатори включени един към друг) и използвате 4 (или повече от 2) мрежови  карти, възниква проблем (някой от клиентите може да не получи адрес от DRBL сървъра) и като последствие от това няма да може да стартира.
 
От друга страна, ако DRBL сървъра има четири отделни мрежови карти с които да разширим честотната лента (тоест четирите карти всяка от който отговаря за отделна подмрежа като:''' 192.168.100.x, 192.168,101,x, 192.168.102.x, 192.168.103.x ''' ) и разполагате с четири отделни комутатора, които не са вързани един към друг, тогава също може да се използва ''' „обвързване” ''' ( в този случай обаче не е необходимо да се обвързват  IP адресите с MAC адресите на клиентите ). Да не забравяме, че ако използваме N броя мрежови карта за разширяване на честотната лента, в комбинация с метода на ''' „обхвата” ''' , трябва да имаме и N на брой комутатори, които НЕ трябва да бъдат свързани един към друг.
 
 
 
* Модификации на конфигурационния файл преди стъпка <3а>
 
 
 
1. Възможно е да се разреши споделянето на някой от директориите на DRBL сървъра като например ''' /work1 ''', за целта е необходимо. С помощта на текстов редактор да се отвори: ''' /opt/drbl/conf/drbl.conf ''' файла и да се промени директорията ''' diskless_root_dir_ro_user_add="/work1" ''' (ако искаме клиентите да могат единствено да четат от директорията), или ''' diskless_root_dir_rw_user_add="/work1" ''' (ако искаме клиентите да могат да четат и записват в директорията).
 
 
''' Внимание!!! drbl.conf  е МНОГО ВАЖЕН файл, затова трябва да се ВНИМАВА когато се модифицира!!! '''
 
 
 
2. Ако всички клиенти разполагат със собствен твърд диск с форматирани дялове (например: /dev/hda, форматирана в ext3) и искаме клиентите да зареждаме дял ''' /dev/hda1 ''' като ''' /localwork ''' по време на зареждането. Трябва да променим ''' /opt/drbl/conf/client-append-fstab ''', синтаксиса му е подобен ''' /etc/fstab '''. Като пример за  редакция на ''' /opt/drbl/conf/client-append-fstab ''' е ''' /dev/hda1 /localwork ext3 defaults 0 0 '''.
 
 
 
'''• Подсказка: ''' не се налага да създаваме ръчно директория ''' /tftpboot/node_root/localwork ''' на DRBL сървъра, това ще стане автоматично).
 
 
 
3. Ако искаме да има допълнителни услуги (като ''' apmd ''' и ''' bluetooth ''') които да са включени когато клиента зареди, трябва да променим ''' /opt/drbl/conf/client-extra-service ''', ''' let service_extra_added="apmd bluetooth" ''' .
 
 
 
4. По желание може да се променият някои или всички имена зададени автоматично на клиентите, включени в съответната работна група използвайки ''' "drblpush -i" ''', след което се променя ''' "/opt/drbl/conf/client-ip-hostname" ''' директорията . Тук може да се провери и формата на файловата система. Ако новото името на някой от клиентите не присъства, приложението ''' drblpush ''' използва това което сървъра е назначил по подрезбиране.
 
 
 
* Стъпка <3а> изпълняваме ''' "/opt/drbl/sbin/drblpush -i" ''' командата. Софтуерът сканира автоматично системата и ще разпознае необходимия аргумент. Ако той не е зададен предварително, ще се появи съобщение с искане за въвеждане му. Ето пример тук.
 
 
 
• ''' Забележка!!! ''' Ако след изпълнението на тази стъпка се инсталират допълнителни пакети, трябва да изпълним ''' "/opt/drbl/sbin/drblpush -i" ''' или ''' "/opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf" ''' (това ще зареди последните запазени настройки) за да могат новите пакети да се добавят на клиентите.
 
 
 
• ''' Забележка!!! ''' не се препоръчва да се използва мениджъра за автоматично обновяване. Тъй като при  инсталиране на нови пакети на сървъра,  ако не се  изпълни ''' "/opt/drbl/sbin/drblpush -i" ''' командата, клиента новата версия инсталирана на сървъра може да не е съвместима с тази на клиента. Ако искате да включите мениджъра за автоматично обновяване, не забравяйте да изпълнявате споменатата по горе процедура за да се обновяват и клиентските пакети автоматично.
 
 
 
== Настройка на клиентите за използване на DRBL средата ==
 
 
 
• Има няколко при които  клиента може да зареди през мрежата: 1.клиента разполага с PXE мрежова карта, 2. клиента разполага с флопи, 3. клиента разполага със CD-ROM, 4. клиента разполага с локален твърд диск.  В примери 2 и 4 използваме etherboot версия 5.4.3.
 
Забележа! С DRBL версия 1.3.9 или по късна е необходимо да се използва ethrboot версия 5.4.0 или по нова.
 
o Вариант 1: Клиента разполага с PXE мрежова карта
 
 Настройваме BIOS-а на клиента да зарежда от "LAN" или "network" опцията.
 
 За пример може да разгледаме ръководството на някой от моделите дънни платки, произведени от Asus.
 
1. Ако в BIOS –а на клиента опцията за зареждане през LAN е забранена първо трябва да я разрешим.
 
2. Обикновено се налага да рестартираме, за да може BIOS –а на клиента да приеме новите настройки.
 
3. След като системата се рестартира, отново влизаме в BIOS–а намираме менюто което отговаря за реда на зареждане, след което поставяме на първо място опцията за зареждане през мрежовата карта.
 
 И това е! рестартираме и оставяме клиента да получи настройки от DRBL сървъра.
 
o Вариант 2: Клиента разполага с флопи.
 
o Стъпка <4а> Първо намираме имейдж файл.
 
o За целта използваме универсалния имейдж /opt/drbl-etherboot/etherboot-net.zdsk от DRBL сървъра. Той подържа повечето модели съвременни мрежови карти. Подсказка: ако този имейдж не проработи, опитайте да използвате конкретен имейдж в зависимост от модела на клиентската мрежова карта. Тези имейдж файлов се намират в /opt/drbl-etherboot/. Да вземем за пример мрежова карта модел Realtek 8139, за нея може да използваме имейдж: /opt/drbl-etherboot/rtl8139.zdsk.
 
o Стъпка <4b> поставете дискета във флопито на DRBL сървъра
 
o Изпълнява се "cat /opt/drbl-etherboot/etherboot-net.zdsk > /dev/fd0" на сървъра.
 
o Ако искаме да създадем имейдж дискетата под Windows ще ни трябва този файл за да се запише ROM имейдж – а на дискетата.
 
o Стъпка <4c> поставяме записаната дискета във флопито на клиента и го настройваме, така че да зарежда първо от флопито. Ако не сте получили съобщение за грешка при изплнението на някоя от  стъпките, след няколко минути ще имате напълно готов за работа клиентски компютър. Профилите и паролите съответстват на тези които са зададени предварително на сървъра.
 
o Вариант 3: Клиента разполага със CD-ROM
 
 „Универсалния” имейдж се намира в /opt/drbl-etherboot/etherboot-net.iso
 
1. Запишете ISO файла на CD:
 
cdrecord -v speed=12 fs=16m dev=0,0,0 -data etherboot-net.iso
 
(ако е необходимо променете "dev=0,0,0" като изпълнете "cdrecord -scanbus" за да намерите записвачката си ).
 
2. Проверете дали клиента е настроен да зарежда от CD-ROM, слага се записаното cd в четеца, рестартираме и готово!
 
o Вариант 4: Клиента разполага с локален твърд диск.
 
 Ако клиента разполага с локален твърд диск на който има инсталиран grub файл от GNU/Linux:
 
1. Копираме файла "/opt/drbl-etherboot/etherboot-net.zlilo" в директория "/boot/"  на клиента върху локалния диск.
 
2. Добавяме една опция към менюто на клиента /boot/grub/menu.lst или /boot/grub/grub.conf в зависимост от различните дистрибуции ето пример:
 
---------------
 
title Etherboot-PXE
 
kernel /boot/etherboot-net.zlilo
 
---------------
 
3. Следва да  се настрои клиента да зарежда по подразбиране от  добавеното преди малко, като запишем като "default 1" в menu.lst или grub.conf файла му.
 
 Ако клиента използва Windows XP/2K:
 
Може да се инсталир WINGRUB. Сложете файла etherboot-net.zlilo в C:\, където се намират, C:\boot.ini и C:\GRUB\MENU.LST който изглеждат така: (този метод е подходящ единствено при инсталиране на Wingrub в BOOT.INI (Tool -> Install grub -> Boot from BOOT.INI). Ако е необходимо е възможно да се използват и други методи които Wingrub приложението предлага).
 
boot.ini:
 
---------------
 
[boot loader]
 
timeout=30
 
default=C:\GRLDR
 
[operating systems]
 
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
 
C:\GRLDR="Etherboot"
 
---------------
 
MENU.LST:
 
---------------
 
timeout 7
 
 
 
title etherboot
 
root (hd0,0)
 
kernel /etherboot-net.zlilo
 
 
 
title Windows at (hd0,0)
 
root (hd0,0)
 
chainloader +1
 
---------------
 
 Ако клиента има инсталиран Windows 9Х на локалния си твърд диск:
 
1. Копираме файла "/opt/drbl-etherboot/etherboot-net.com" на твърдия диск
 
2. Преименуваме го за да е с по малко символи, на например "eb-net.com".
 
3. Записва се конфигурационен файл с няколко опции за зареждане на клиента (пример: добавете на нов ред когато  промените  "eb-net.com" файла за улеснение).
 
  
== Настройка на боот през мрежатра ==
+
== Допълнителна информация ==
 +
http://drbl.sourceforge.net/
 +
http://www.nathanhunstad.com/blog/2010/03/moving-from-ghost-to-clonezilla/
  
прогамата dcs задава услугата, която ще се предлага на отдалечените клиенти
 
/opt/drbl/sbin/dcs
 
  
  
[[Category:Компютърни мрежи]]
+
[[Category:интернет услуги]]

Latest revision as of 14:27, 15 February 2018

Какво е Diskless Remote Boot in Linux сървър и за какво се използва?

DRBL е безплатно приложение с помощта, на което е възможно да се управляват голяма група GNU/Linux или Windows базирани системи. Технологията позволява системите (клиентите) да се инсталират и поддържат много бързо и удобно, което улеснява и спестява много разходи на фирмите, които се занимават с поддръжката на голям брой компютри. Приложението се поддържа от Debian, Ubuntu, Mandriva, Red Hat, Fedora, CentOS и SuSE операционни системи. DRBL използва споделените ресурси на системата, на която е инсталирана, което позволява на клиентските компютри да работят с тях като собствени. Приложението може да се използва съвместно с Clonezilla и/или други програми за управление и поддръжката на твърдите дискове подобни на Symantec Ghost®.

Подготовка на сървъра за инсталация на DRBL средата

  • Инсталираме избраната дистрибуция (в случая Ubuntu) и конфигурираме мрежовите карти.
  • Използваме "eth0" за връзка с Интернет.
  • Останалите мрежови карти се ползват като връзки с клиентите на DRBL сървъра. За предпочитане е да се зададат частни IP адреси от типа: 192.168.X.x за eth1, 192.168.Y.x за eth2 и т.н.

Важно Ако е инсталиран мрежов мениджър на вашата Линукс дистрибуция, който се стартира автоматично, препоръчително е да се деактивира или деинсталира. За Ubuntu деинсталирането на мрежовият мениджър напълно става с командата:

apt-get remove network-manager

Важно Ако разполагате само с една мрежова карта, може създадете два виртуални интерфейса, като настроите два IP адреса единият на eth0 за връзка с Интернет и eth0:1- който ще се използва за DRBL сървъра. Възможно е IP адреса на виртуалния интерфейс (eth0:1) да предизвиква проблеми ако не зададем статични адреси на клиентските системи, посредством техния MAC адрес. Препоръчва се използването на повече от една мрежова карта за улеснение на начинаещите, тъй като в противен случай трябва да се запишат MAC адресите в DHCP сървъра, което за начинаещите представлява трудност. Затова се препоръчва използването на 2 или повече мрежови адаптера.

Важно Ако има включен firewall, трябва да се позволят NFS, NIS, tftp и dhcp услугите т.е.

Настройка на DRBL сървъра

Тази стъпка се изпълнява при настройката на сървъра с цел използване от клиентите.

  • В зависимост от избраната Linux дистрибуция, инсталацията и настройката на DRBL сървъра протича по различни начини. Ние сме избрали Ubuntu (производна на Debian)
  • Настройка на aptitude за удостоверяване на тегления софтуер. Ако дистрибуцията поддържа apt (aptitude) опцията може да добавим следния ключ: (ID: 1024D/D7E8DF3A, Key fingerprint = F532 A131 65AF 2168 1634 DB1B 4000 9511 D7E8 DF3A) . Това може да стане по два:
$ wget -q http://drbl.org/GPG-KEY-DRBL -O- | sudo apt-key add -

или да свалите ключа от сървъра, който за DRBL приложението е http://keyserv.nic-se.se:11371/pks/lookup?op=vindex&search=drbl&fingerprint=on D7E8DF3A

$ gpg --keyserver subkeys.pgp.net --recv-key D7E8DF3A 
$ gpg -a --export D7E8DF3A | apt-key add - 
  • Редактира се файла съдържащ лист със софтуерните хранилища (Repository), като се добави съответния на версията линк
$sudo vi /etc/apt/sources.list // отваряне на файла

deb http://free.nchc.org.tw/drbl-core drbl stable// добавя се
    • Страница с връзки към други мирори [1]!
    • Ако искате да използвате тестова версия стабилна/ нестабилна изпoлзвайте
deb http://drbl.sourceforge.net/drbl-core drbl stable testing
deb http://drbl.sourceforge.net/drbl-core drbl stable testing unstable
  • Update на софтуерните хранилища
$sudo apt-get update 
  • Същинско инсталиране на drbl
$sudo apt-get install drbl
  • Конфигуриране на drbl
    • A) Изпълнете
$/usr/sbin/drblsrv -i

Ако не сте сигурни за настройките просто оставете тези по подразбиране.

    • B) Директно зареждане на стойностите по подрабиране
$ /usr/sbin/drbl4imp

ВАЖНО Е ДА СЕ ИМА В ПРЕДВИД, че е възможно да има несъответствие със средата, засягащи основно "обхвата" на dhcp опцията на сървъра (клиентите няма да получават един и същи ip адрес всеки път). Ако искаме настройката да е съгласувана с установка изпълняваме последната А).

Настройка на предоставяните услуги от DRBL сървъра

Изпълняваме командата:

$sudo /usr/sbin/drblpush -i

Софтуерът сканира системата и задава въпроси относно настройките. Въпросите имат отговор по подразбиране, така че натискането на "Enter" e достатъчно за настройките, които не искате да променяте или не разбирате. Примерна конфигурация [2].

  • Важно!!! Ако след изпълнението на тази стъпка се инсталират допълнителни пакети, трябва да изпълним "/opt/drbl/sbin/drblpush -i" или "/opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf" (това ще зареди последните запазени настройки) за да могат новите пакети да се добавят на клиентите.
  • Важно!!! не се препоръчва да се използва мениджъра за автоматично обновяване на Линукс, Тъй като при инсталиране на нови пакети на сървъра, ако не се изпълни "/opt/drbl/sbin/drblpush -i" командата, новата версия инсталирана на сървъра може да не е съвместима с тази на клиента. Ако искате да включите мениджъра за автоматично обновяване, не забравяйте да изпълнявате споменатата по-горе процедура за да се обновяват и клиентските пакети автоматично.

Настройка на клиентите за използване на DRBL средата

  • Ако клиента разполага с PXE мрежова карта, BIOS-ът на клиента се настройва да зарежда от "LAN" или "network" .
  • Има и други варианти - ако клиента разполага с флопи, CD-ROM или твърд диск. За повече информация може да видите http://drbl.sourceforge.net/one4all/

Инструмент за стартиране на услугите на DRBL сървъра

Програмата dcs задава услугата, която ще се предлага на отдалечените клиенти

$sudo /opt/drbl/sbin/dcs

Допълнителна информация

http://drbl.sourceforge.net/ http://www.nathanhunstad.com/blog/2010/03/moving-from-ghost-to-clonezilla/