Да, Linux может быть настроен в качестве загрузочного сервера для систем PXE, и нетрудно представить среду USB-флэш-накопителя, LiveCD или PXE, специально сконфигурированную для создания образа жесткого диска для сетевой цели с использованием стандартных (или почти стандартных) ) инструменты.
Вы можете использовать PXElinux для настройки основного сервера PXE . Если у вас есть удобный сервер Linux, вы можете использовать его в качестве основы. Вам понадобятся демоны BOOTP или DHCP, TFTP и PXE на PXE-сервере. В системах на основе Debian вы можете использовать пакет pxe
для предоставления демона PXE.
Что касается клиентских систем, если вы пытаетесь создать образ раздела ОС, вам необходимо загрузиться с другого раздела, чем вы все равно пытаетесь создать образ. Если вы не хотите беспокоиться о полноценном PXE-сервере, вы можете загрузиться с Linux LiveCD или флэш-накопителя USB для создания резервных копий.
Основные понятия и DIY
Основные инструменты dd
и netcat
предоставляют рабочие лошадки для базовой самостоятельной или ручной системы. Идеальная система добавит parted
или sfdisk
для обнаружения раздела (и создания на восстановление), систему меню какого - то, а может быть , серверная программа для автоматизации бэкенда.
Рабочий процесс для создания изображения:
- Загрузка (USB/CD/PXE)
- Изучите разделы, выберите один для отображения, размер записи
- Убедитесь, что у целевой базы есть место
- Настройка отправить на клиент:
dd if=/dev/sdXN | gzip -9 | nc -l 9999
(для раздела /dev /sdXN)
- Начать получать на бэкэнде:
nc x.x.x.x 9999 > IMAGE_NAME.iso.gz
Рабочий процесс для восстановления изображения:
- Загрузка (USB/CD/PXE)
- Изучите разделы, проверьте, есть ли место, создайте, если необходимо
- Программа установки отправляет на сервер:
dd if=IMAGE_NAME.iso.gz | nc -l 9999
- Настройка получения на клиенте:
nc y.y.y.y 9999 | gunzip | dd of=/dev/sdYM
(для разбиения /dev /sdYM)
(Источник для примеров netcat; см. Разделы "Передача файлов" и "Другие примеры".)
Partimage делает это для вас
Partimage
может сохранять файлы изображений локально или по сети. Поддержка сети PartImage включает свой собственный partimaged
сервер или сохранения изображений на долю Samba или NFS диск. Обязательно ознакомьтесь с разделом «Поддержка сети» руководства Partimage.
Чтобы настроить partimaged
сервер, выполните эту основную процедуру. Учебник, который я нашел, рекомендует загрузить статический двоичный файл с домашней страницы partimage. Поместите его в каталог /var/partimaged_storage
созданный на шаге 2.
Сервер также доступен в partimage-server
в репозиториях Debian/Ubuntu; используйте их, если доступно. (Они будут автоматизировать добавление пользователя демона и установку разрешений.) В системах на основе Debian конфигурацию сервера можно изменить в /etc/default/partimaged
.
Ручная примерная конфигурация
Создайте нового пользователя для демона.
useradd -c "Partimaged User" -s /sbin/nologin -r -M partimag
Создайте каталог запуска, в котором будет работать сервер; это также будет служить местом хранения файлов изображений по умолчанию. Вы можете изменить это в командной строке сервера.
mkdir /var/partimaged_storage
chown -R partimag:partimag /var/partimaged_storage
chmod -R 0700 /var/partimaged_storage
Перейдите в каталог и запустите сервер.
cd /var/partimaged_storage ; ./partimaged --debug=1
(используется порт по умолчанию 4025; укажите --port XXXX
для изменения.)
(укажите --dest /path/to/image/storage
чтобы изменить местоположение, используемое для хранения изображений.)
Сохранить разделы по сети
- Загрузка (USB/CD/PXE)
Сохранить с клиентского компьютера на сервере Partimaged (не нужно указывать путь к файлу изображения):
partimage --server=x.x.x.x --port=4025 -z1 -o -d save /dev/sdXN IMAGE_NAME.partimg.gz
Восстановление разделов по сети
- Загрузка (USB/CD/PXE)
Восстановление с клиентского компьютера (опять же, не нужно указывать путь к файлу изображения):
partimage --server=x.x.x.x --port=4025 restore /dev/sdXN IMAGE_NAME.partimg.gz
(Источник для partimaged
ручной настройки и сохранения / восстановления в сети.)