Difference between revisions of "PXE (Русский)"

From ArchWiki
Jump to: navigation, search
(fix header, update interlanguage links (https://github.com/lahwaacz/wiki-scripts/blob/master/update-interlanguage-links.py))
(Реквизиты)
Line 26: Line 26:
 
после этого клиент загружается. После загрузки можно довольно безопасно при необходимости убить соединение (для установки по сети, образ загружается через TFTP).
 
после этого клиент загружается. После загрузки можно довольно безопасно при необходимости убить соединение (для установки по сети, образ загружается через TFTP).
  
===Реквизиты===
+
=== Подготовка ===
  
You need at least the following:
+
Минимальный набор:
* a server capable of running DHCPD
+
* Сервер DHCPD
* a server capable of running (a)tftpd
+
* Сервер tftpd
* the [ftp://ftp.archlinux.org/iso/archboot/latest/ archboot installation iso] (the official images can not be used for this)
+
* Дистрибутив Arch Linux [https://www.archlinux.org/mirrorlist/?country=RU&protocol=http&ip_version=4 Выбрать из списка серверов для ближайший для России можно здесь]
  
The DHCP and tftp server can be the same computer if you only have one.
+
DHCP-сервер и TFTP может быть один и тот же компьютер, если у вас есть только один.
  
Be sure to have the ports to the client (or target) open. When in doubt consider disabling iptables or any firewall that might be active.  
+
Убедитесь, что межсетевой экран не блокирует порты.
  
Also be sure that the interface (ethX usually) is up and active.
+
Запустите сетевой интерфейс или убедитесь, что он запущен.
  
 
  ifconfig eth0 up
 
  ifconfig eth0 up
 
  ifconfig eth0 192.168.0.2
 
  ifconfig eth0 192.168.0.2
  
If you want to boot without a router between the server and the client you have to manually set an IP for ethX and a route.
+
При необходимости настройте маршрутизацию.
  
 
  ip route add default via 192.168.0.1
 
  ip route add default via 192.168.0.1
  
a nameserver needs also to be added.  
+
А также добавьте DNS сервера.
  
 
  echo nameserver 192.168.0.1 >> /etc/resolv.conf
 
  echo nameserver 192.168.0.1 >> /etc/resolv.conf

Revision as of 19:15, 9 October 2015

zh-CN:PXE

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki


Загрузка по сети

Ваш крошечный ноутбук поставляется без дисковода, и не позволяет загружаться с USB-накопителя? Не бойтесь, вы можете загрузить с помощью PXE.

PXE сокращение от Preboot eXecution Environment (произносится пикси) - среда находящиеся глубоко в BIOS для загрузки компьютера с помощью сетевой карты. Для того чтобы загрузить PXE проверьте опции загрузки в BIOS. Обычно используется Ethernet порт.

Как это работает

Грубое описание процесса загрузки с помощью PXE:

  • клиент (тот компьютер на который вы хотите установить) загружается в окружающую среду и просит непрерывно для аренды DHCP (IP если хотите).
  • DHCP передает IP клиенту.
  • затем TFTP (который очень похож на регулярный FTP) сервер обеспечивает загрузку файлов для клиента.

после этого клиент загружается. После загрузки можно довольно безопасно при необходимости убить соединение (для установки по сети, образ загружается через TFTP).

Подготовка

Минимальный набор:

DHCP-сервер и TFTP может быть один и тот же компьютер, если у вас есть только один.

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

Запустите сетевой интерфейс или убедитесь, что он запущен.

ifconfig eth0 up
ifconfig eth0 192.168.0.2

При необходимости настройте маршрутизацию.

ip route add default via 192.168.0.1

А также добавьте DNS сервера.

echo nameserver 192.168.0.1 >> /etc/resolv.conf

If a router is between the server and the client disabling DHCP on the router might be necessary, else you should be able to ignore these steps.

Alternatively, if your router has dnsmasq installed (like the *WRT family) you can configure it in the router with the following option:

dhcp-boot=pxelinux.0,<hostname-of-the-tftd-server>,<ip-of-the-tftd-server>

Here is an example for DD-WRT.

Подготовка tftpd

Mount archboot.iso and copy the contents of the folder boot to /var/tftpboot/:

mount -o loop,ro archboot.iso /mnt/iso
cp -a /mnt/iso/boot/ /var/tftpboot

Move the contents of the folder isolinux (or syslinux) to tftpboot root:

mv /var/tftpboot/boot/syslinux/* /var/tftpboot/
rmdir /var/tftpboot/boot/syslinux

Create pxelinux configuration:

mkdir /var/tftpboot/pxelinux.cfg
mv /var/tftpboot/syslinux.cfg /var/tftpboot/pxelinux.cfg/default

Your Arch Linux network installer is now ready.

Способ 1 - Использование DNSMASQ

This one is a bit easier since dnsmasq already has a tftp server builtin. Install dnsmasq on your server:

pacman -S dnsmasq

Edit the configuration file for dnsmasq in:

/etc/dnsmasq.conf

The configuration file comments are rather verbose and should be self-explanatory. You should at least enable the following settings:

dhcp-range=192.168.0.50,192.168.0.150,12h
dhcp-boot=pxelinux.0
enable-tftp
tftp-root=/var/tftpboot

As for the necessary files to be able to boot follow the instructions as given at "Preparing tfptd". Now run dnsmasq.

rc.d start dnsmasq

Способ 2 - использование DHCPD

Install the necessary programs on the existing Arch Linux computer which will act as the server for the installation on your client:

pacman -S tftp-hpa dhcp

Replace the default /etc/dhcpd.conf with the following (adjust to your network environment):

# /etc/dhcpd.conf
option domain-name-servers 208.67.222.222, 208.67.220.220;
default-lease-time 86400;
max-lease-time 604800;
authoritative;
subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.10 192.168.0.49;
 filename "pxelinux.0";        # the PXELinux boot agent
 option subnet-mask 255.255.255.0;
 option broadcast-address 192.168.0.255;
 option routers 192.168.0.1;
}

Dhcpd will not run without ipv6. If you have disabled ipv6, reload the module:

modprobe ipv6

Be sure to static the LAN IP to the same subnet as option routers IP to get the DHCP server to start: ifconfig eth0 192.168.0.1 255.255.255.0

Now make sure the dhcpd and tftpd daemons are running on the server.

# /etc/rc.d/tftpd start
# /etc/rc.d/dhcpd start

Boot your destination machine over PXE (usually something like F12 (on Dells) or F11 (on Supermicro's), or enable it in the BIOS).

When you get the PXEBoot prompt, type 'arch' or hit return to start the installer. The install should now progress the same as if you booted from CD. You can continue installation by following the Beginners' guide or the Installation guide.