LTSP/LocalBoot: различия между версиями

Материал из ALT Linux Wiki
(Новая: Категория:LTSP {{Викифицировать}} В качестве «спасибо» всем, кто терпел меня, и в облегчение жизни тем, ...)
 
м (Убрал пробелы в начале абзацев (и слил некоторые).)
Строка 1: Строка 1:
[[Категория:LTSP]]
[[Категория:LTSP]]
{{Викифицировать}}
{{Викифицировать}}
В качестве «спасибо» всем, кто терпел меня, и в облегчение жизни тем, кто  
В качестве «спасибо» всем, кто терпел меня, и в облегчение жизни тем, кто повторит такой путь.
повторит такой путь.


Это не состоялось бы без терпеливого участия Led, Michael Shigorin,  
Это не состоялось бы без терпеливого участия Led, Michael Shigorin, Michael A. Kangin
Michael A. Kangin


Дано: школьный класс с весьма немощными машинками (Pentium 166 + 32...64 RAM + HDD 0.5...2 Gb и Celeron 333 + 64...128 RAM + HDD 4...10 Gb), сетевую загрузку не поддерживают.
Дано: школьный класс с весьма немощными машинками (Pentium 166 + 32...64 RAM + HDD 0.5...2 Gb и Celeron 333 + 64...128 RAM + HDD 4...10 Gb), сетевую загрузку не поддерживают.


Хотелось: сделать их клиентами Alt Linux Terminal?, расположив на локальном HDD initrd.img и vmlinuz, а остальное дисковое пространство отдать под swap
Хотелось: сделать их клиентами Alt Linux Terminal?, расположив на локальном HDD initrd.img и vmlinuz, а остальное дисковое пространство отдать под swap


1. Для использования локального HDD под swap на сервере
1. Для использования локального HDD под swap на сервере надо указать USE_LOCAL_SWAP=Y в /etc/lts.conf
надо указать USE_LOCAL_SWAP=Y в /etc/lts.conf
 
2. На флэшку с терминального сервера сбрасываем /var/lib/ltsp5/i586/boot целиком и /etc/lilo.conf [[LTSP/Lilo.conf|Lilo.conf]] можно сразу поправить, у меня выглядит так (понятно, с излишествами в виде рюшечек):


2. На флэшку с терминального сервера сбрасываем /var/lib/ltsp5/i586/boot
целиком и /etc/lilo.conf
[[LTSP/Lilo.conf|Lilo.conf]] можно сразу поправить, у меня выглядит так: (понятно, с излишествами
в виде рюшечек)
-= lilo.conf=-
  map="/boot/map"
  map="/boot/map"
  lba32
  lba32
Строка 30: Строка 24:
  message="/boot/splash/message"
  message="/boot/splash/message"
  boot="/dev/hda"
  boot="/dev/hda"
 
  image="/boot/vmlinuz"
  image="/boot/vmlinuz"
:::: label="ALTLinuxTerminalClient"
    label="ALTLinuxTerminalClient"
:::: initrd="/boot/initrd.img"
    initrd="/boot/initrd.img"
:::: read-only
    read-only
-= end lilo.conf =-


3. Берем пару старых маленьких hdd, цепляем их парой master/slave на шлейф
3. Берем пару старых маленьких hdd, цепляем их парой master/slave на шлейф. На второй шлейф – DVD-читалку. Для полного счастья втыкаем флэшку (купил дешевый контроллер pci – usb для комфорта). Все, заправочная станция готова.
На второй шлейф – DVD-читалку
Для полного счастья втыкаем флэшку (купил дешевый контроллер pci – usb для  
комфорта). Все, заправочная станция готова.


4. Грузимся с установочного диска Alt Linux Terminal?, режим rescue (советовали  
4. Грузимся с установочного диска Alt Linux Terminal?, режим rescue (советовали грузиться с Live CD?, но я там не нашел /sbin/lilo).
грузиться с Live CD?, но я там не нашел /sbin/lilo)


  #ls /dev/hd* – а винты то мои живы? Живы, есть hda и hdb
  #ls /dev/hd* – а винты то мои живы? Живы, есть hda и hdb
Строка 50: Строка 39:
  # mount -t vfat /dev/sda1 /tmp/flash – сразу ее примонтируем
  # mount -t vfat /dev/sda1 /tmp/flash – сразу ее примонтируем


5. Создаем разделы на жестких дисках
5. Создаем разделы на жестких дисках


  fdisk /dev/hda
  fdisk /dev/hda
Строка 74: Строка 63:
  w – (запись и выход)
  w – (запись и выход)


То же самое проделываем со вторым диском /dev/hdb
То же самое проделываем со вторым диском /dev/hdb


6. Форматируем созданные разделы и монтируем
6. Форматируем созданные разделы и монтируем


  mkfs.ext3 /dev/hda1
  mkfs.ext3 /dev/hda1
Строка 83: Строка 72:
  mount /dev/hda1 /tmp/hda
  mount /dev/hda1 /tmp/hda


То же самое проделываем со вторым диском /dev/hdb
То же самое проделываем со вторым диском /dev/hdb


7. Теперь «заправляем» раздел диска
7. Теперь «заправляем» раздел диска


  # mkdir /tmp/hda/boot
  # mkdir /tmp/hda/boot
Строка 93: Строка 82:
  # mkdir /tmp/hda/proc
  # mkdir /tmp/hda/proc


С флэшки копируем /boot в /tmp/hda/boot, lilo.conf – в /tmp/hda/etc
С флэшки копируем /boot в /tmp/hda/boot, lilo.conf – в /tmp/hda/etc. Грешен, здесь использовал MC.
Грешен, здесь использовал MC


Повторяем эту процедуру для второго диска.
Повторяем эту процедуру для второго диска.


8. Делаем диск загрузочным
8. Делаем диск загрузочным


  # mount --bind /dev /tmp/hda/dev/
  # mount --bind /dev /tmp/hda/dev/
  # mount --bind /sys /tmp/hda/sys/
  # mount --bind /sys /tmp/hda/sys/
  # mount --bind /proc /tmp/hda/proc/
  # mount --bind /proc /tmp/hda/proc/
И, наконец
И, наконец
  # lilo -r /tmp/hda
  # lilo -r /tmp/hda


9. Проделать сразу же пункт 8 для второго диска у меня не получилось (собственно, не получилось отмонтировать /dev /sys /proc) – поэтому shutdown, отцепляю Master, на Slave переставляю перемычку на Master, снова гружусь resque, и повторяю  
9. Проделать сразу же пункт 8 для второго диска у меня не получилось (собственно, не получилось отмонтировать /dev /sys /proc) – поэтому shutdown, отцепляю Master, на Slave переставляю перемычку на Master, снова гружусь resque, и повторяю  
 
  # mkdir /tmp/hda
  # mkdir /tmp/hda
  # mount /dev/hda1 /tmp/hda
  # mount /dev/hda1 /tmp/hda
Строка 114: Строка 103:
  # lilo -r /tmp/hda
  # lilo -r /tmp/hda


Все. У нас есть пара терминалов!
Все. У нас есть пара терминалов!
Я прекрасно понимаю, что это не истина последней инстанции, но у меня это  
Я прекрасно понимаю, что это не истина последней инстанции, но у меня это получилось. Класс – 11 терминальных станций, и три залитых запасных винта.
получилось. Класс – 11 терминальных станций, и три залитых запасных винта.


PS: Сетевые карточки 10 мегабитные буду выбрасывать – тормоза ;-(
PS: Сетевые карточки 10 мегабитные буду выбрасывать – тормоза ;-(
PPS: Выпросил денег – серверу памяти до 2 гиг добавить.
PPS: Выпросил денег – серверу памяти до 2 гиг добавить.


С уважением, Сергей Спиридонов
С уважением, Сергей Спиридонов

Версия от 18:56, 20 сентября 2008

42px-Wikitext-ru.svg.png
Эту статью следует викифицировать.

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

Это не состоялось бы без терпеливого участия Led, Michael Shigorin, Michael A. Kangin

Дано: школьный класс с весьма немощными машинками (Pentium 166 + 32...64 RAM + HDD 0.5...2 Gb и Celeron 333 + 64...128 RAM + HDD 4...10 Gb), сетевую загрузку не поддерживают.

Хотелось: сделать их клиентами Alt Linux Terminal?, расположив на локальном HDD initrd.img и vmlinuz, а остальное дисковое пространство отдать под swap

1. Для использования локального HDD под swap на сервере надо указать USE_LOCAL_SWAP=Y в /etc/lts.conf

2. На флэшку с терминального сервера сбрасываем /var/lib/ltsp5/i586/boot целиком и /etc/lilo.conf Lilo.conf можно сразу поправить, у меня выглядит так (понятно, с излишествами в виде рюшечек):

map="/boot/map"
lba32
prompt
compact
timeout="100"
install="menu"
default="ALTLinuxTerminalClient"
vga=NORMAL
append="root=/dev/nfs nfsroot=/var/lib/ltsp5/i586,udp ip=dhcp"
message="/boot/splash/message"
boot="/dev/hda"

image="/boot/vmlinuz"
    label="ALTLinuxTerminalClient"
    initrd="/boot/initrd.img"
    read-only

3. Берем пару старых маленьких hdd, цепляем их парой master/slave на шлейф. На второй шлейф – DVD-читалку. Для полного счастья втыкаем флэшку (купил дешевый контроллер pci – usb для комфорта). Все, заправочная станция готова.

4. Грузимся с установочного диска Alt Linux Terminal?, режим rescue (советовали грузиться с Live CD?, но я там не нашел /sbin/lilo).

#ls /dev/hd* – а винты то мои живы? Живы, есть hda и hdb
#ls /dev/sd* – а флэшка видна? Ага, sda1
# mkdir /tmp/flash
# mount -t vfat /dev/sda1 /tmp/flash – сразу ее примонтируем

5. Создаем разделы на жестких дисках

fdisk /dev/hda
p – что там есть?
d – всё, что не нужно
n – (новый)
p – (primary)
1 – (номер один)
[задать размер — как на душу ляжет, требуется всего 3.5 мега]
t – тип
1- первого раздела
83 – Linux
a – сделать активным
1 – да, первый раздел
n – остальное отдадим под swap
p
2
[все остальное отдаем под свап]
t – (тип)
2 – (второго)
82 – (linux swap)
p – (любуемся)
w – (запись и выход)

То же самое проделываем со вторым диском /dev/hdb

6. Форматируем созданные разделы и монтируем

mkfs.ext3 /dev/hda1
mkswap /dev/hda2
mkdir /tmp/hda
mount /dev/hda1 /tmp/hda

То же самое проделываем со вторым диском /dev/hdb

7. Теперь «заправляем» раздел диска

# mkdir /tmp/hda/boot
# mkdir /tmp/hda/etc
# mkdir /tmp/hda/dev
# mkdir /tmp/hda/sys
# mkdir /tmp/hda/proc

С флэшки копируем /boot в /tmp/hda/boot, lilo.conf – в /tmp/hda/etc. Грешен, здесь использовал MC.

Повторяем эту процедуру для второго диска.

8. Делаем диск загрузочным

# mount --bind /dev /tmp/hda/dev/
# mount --bind /sys /tmp/hda/sys/
# mount --bind /proc /tmp/hda/proc/

И, наконец

# lilo -r /tmp/hda

9. Проделать сразу же пункт 8 для второго диска у меня не получилось (собственно, не получилось отмонтировать /dev /sys /proc) – поэтому shutdown, отцепляю Master, на Slave переставляю перемычку на Master, снова гружусь resque, и повторяю

# mkdir /tmp/hda
# mount /dev/hda1 /tmp/hda
# mount --bind /dev /tmp/hda/dev/
# mount --bind /sys /tmp/hda/sys/
# mount --bind /proc /tmp/hda/proc/
# lilo -r /tmp/hda

Все. У нас есть пара терминалов! Я прекрасно понимаю, что это не истина последней инстанции, но у меня это получилось. Класс – 11 терминальных станций, и три залитых запасных винта.

PS: Сетевые карточки 10 мегабитные буду выбрасывать – тормоза ;-( PPS: Выпросил денег – серверу памяти до 2 гиг добавить.

С уважением, Сергей Спиридонов