Оглавление |
---|
Информация | ||
---|---|---|
| ||
Информация | ||
---|---|---|
| ||
|
Что такое ALP-raw образ
ALP-raw образ (Astra Linux Portable) — решение для организации рабочего места с применением Astra Linux Special Edition. (подробности см. в статье ASTRA LINUX PORTABLE — ЗАЩИЩЕННОЕ ПОРТАТИВНОЕ РАБОЧЕЕ МЕСТО НА БАЗЕ ОС ASTRA LINUX SPECIAL EDITION). Отличия ALP-raw образа от ALP-live образа, создание которого описано в статье Создание Live-CD/Live-USB в Astra Linux, заключаются в:
- расширенном наборе предустановленных утилит;
- объёме образа (ALP-live -образ намного меньше по объёму);
- возможности сохранения изменений после перезагрузки образа, соответственно ALP-raw образ может быть модифицирован (в отличие от ALP-live образа, использующего файловую систему squashfs, и поэтому доступного только в режиме для чтения).
Важным преимуществом ALP-raw образа является отсутствие дополнительных настроек при подготовке образа для его загрузки в обоих режимах Legacy и EFI.При эксплуатации ALP-raw образа следует учитывать, что в нём отсутствует дисковый раздел подкачки (swap). Этот раздел можно создать самостоятельно или, по мере необходимости, использовать размещение области подкачки в файлах.
Как получить ALP-raw образ
ALP-raw образ операционной системы Astra Linux Special Edition (далее ОС) может быть предоставлен через личный кабинет технической поддержки по запросу. Кроме того, образ можно создать самостоятельно.
Запуск ALP-образа
Запуск в менеджере виртуальных машин
Якорь | ||||
---|---|---|---|---|
|
Для использования ALP-raw образа в гипервизоре KVM необходимо:
- Заранее добавить образ в хранилище KVM.
- При создании виртуальной машины (Далее ВМ) в окне выбора вариантов установки ОС, выбрать пункт "Импорт образа диска":
- Выбрать добавленный образ:
- Закончить создание ВМ согласно самостоятельно определенным настройкам и запустить её с добавленным ранее образом:
Запуск на VirtualBox
Для использования в Virtualbox необходимо конвертировать ALP-образ в понятный VirtualBox формат VDI командой:
Command VBoxManage convertdd input.img output.vdi Где
input
иoutput
— имена образов до конвертации и после соответственно.- Далее выбрать полученный в результате конвертации VDI-образ при создании виртуальной машины:
- Затем нужно запустить ВМ с выбранным образом.
Запуск на физической машине
Для запуска ALP-raw образа на физической машине:
- Скопировать ALP-образ на съёмный физический носитель, например, на USB-flash.
- Подключить подготовленный носитель к компьютеру, на котором должна быть выполнена загрузка.
- При запуске компьютера войти в настройки BIOS, выбрать загрузку с подключенного носителя, и продолжить загрузку.
После выполнения указанных действий ALP-образ должен будет готов к работе.
Установка дополнительного ПО
Установка ПО из состава дистрибутива
Для установки пакетов из состава дистрибутива необходимо после загрузки ОС с ALP-raw образа установить в привод CD-ROM установочный диск Astra Linux Special Edition и выполнить команду:
Command |
---|
sudo apt-cdrom add |
После этого можно устанавливать пакеты, входящие в дистрибутив ОС командой:
Command |
---|
sudo apt install имя_пакета |
либо использовать для установки Графический менеджер пакетов synaptic. Для подключения дополнительных репозиториев можно воспользоваться справочными материалами:
- Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов
- Создание локального репозитория
Установка отдельных пакетов
Для установки дополнительных пакетов можно создать и подключить служебный репозиторий или скачать нужные deb-пакеты и установить их командой:
Command |
---|
sudo apt install ./имя_файла_пакета1 ./имя_файла_пакета2 ./имя_файла_пакета3 |
Расширение доступного пространства
Изменение размеров существующих разделов ALP-raw образа возможно при помощи загрузки с Live-образов, например Live-CD Astra Linux Common Edition: https://dl.astralinux.ru/astra/frozen/2.12_x86-64/2.12.43/iso/orel-2.12.43.6-30.03.2022_18.22.livecd.iso.
Также можно использовать сторонние Live-образы, например Gparted Live, Ubuntu и т.д. При этом следует убедиться в наличии ПО для работы с разделами (чаще всего это инструмент gparted) в данных образах.
- К выключенной ВМ с ALP-образом подключается диск с Live-образом
- При старте ВМ загрузка осуществляется с примонтированного Live-образа.
- После старта с Live-образа монтируется раздел с ALP-образом.
Использование режима read-only на корневом разделе.
При эксплуатации ALP-raw образа рекомендуется включать в нём режим read-only
при помощи утилиты astra-overlay
. Данная утилита вносит исправления в файл initrd и применяет механизм overlayfs over tmpfs
к корневому разделу. После загрузки операционной системы в данном режиме все изменения, внесённые в корневой раздел будут находятся в оперативной памяти и исчезнут после перезагрузки ОС. Чтобы иметь возможность сохранить какие-либо пользовательские настройки и изменения, рекомендуется выделить один дисковый раздел для работы в режиме чтения и записи, например дисковый раздел /home
.
Пример использования механизма astra-overlay с сохранением настроек NetworkManager
- Режим
astra-overlay
доступен в Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) начиная с обновления БЮЛЛЕТЕНЬ № 20190912SE16 (оперативное обновление 3). Если образ создавался без обновлений, то необходимо установить в образ обновление безопасности (например, запустив образ в ВМ). Создать каталог
/home/system-connections
:Command sudo mkdir /home/system-connections До включения режима
astra-overlay
(командаsudo astra-overlay status
возвращает НЕАКТИВНО) внести изменения в файл/etc/fstab
, добавив следующую строку (правило монтирования):Блок кода /home/system-connections /etc/NetworkManager/system-connections none bind 0 0
Данное правило монтирования объединит содержимое каталогов
/etc/NetworkManager/system-connections
(будет доступно только на чтение) и /home/system-connections (будет доступно на чтение и запись). Если необходимо сделать изменяемыми существующие подключения - следует переместить соответствующие им файлы из каталога/etc/NetworkManager/system-connections
в каталог/home/system-connections
.Выполнить команду:
Command sudo mount -a Включить режим
astra-overlay
выполнив команду:Command sudo astra-overlay enable
Проверить сохранение настроек, для чего, например, подключить сеть Wi-Fi и перезагрузить ОС. После перезагрузки информация о сети должна сохраниться и не потребуется снова искать идентификатор сети Wi-Fi (SSID) и вводить пароль.
Запись ALP-raw образа на USB-накопитель, Rutoken flash, Jacarta flash ЯкорьUSB-flash USB-flash
USB-flash | |
USB-flash |
Для записи ALP-raw образа на USB-накопитель можно воспользоваться утилитой dd
:
Command |
---|
sudo dd if=/path/to/raw.img of=/dev/имя_накопителя_на_который_пишется_образ |
Где /path/to/raw.img
- это путь к raw-образу, а для указания USB-накопителя, на который необходимо записать образ, указать соответствующее имя.
Узнать имена подключённых накопителей можно выполнив команду:
Command |
---|
lsblk |
Дополнительно можно использовать и другие опции при записи :
- опция
status=progress
- для отображения текущего прогресса записи. Если таймер остановился - значит идёт запись на диск и нужно дождаться завершения программы (для корректного завершения записи); - опция
bs=value
используется для ускорения записи. В качествеvalue
можно использовать значения 16K, 1M, 4M - все это определяет размер блока для единовременной записи и напрямую влияет на скорость записи. Например, образ размером 8GB будет очень долго записываться, если не указать опциюbs=4M
. В то же время для каких-то маленьких образов данную опцию лучше не использовать.
Пример использования утилиты dd
с этими опциями:
Command |
---|
sudo dd if=/path/to/raw.img of=/dev/sdz status=progress bs=4M |
информация о прочих опциях доступна на справочной странице man данной утилиты.
Запись ALP-raw образа в ОС Windows
В случае создания USB-накопителя в ОС Windows, можно использовать утилиту Rufus:
Запись образа обязательно должна выполняться в режиме dd:
Информация |
---|
В режиме DD данные с ISO-образа копируются побайтово с полным переносом структуры и свойств образа, при этом на USB носителе не создается файловая система и таблица разделов |
После выбора образа и носителя для записи следует дождаться окончания операции:
После записи ISO-образа в DD-режиме USB-носитель станет недоступен для дальнейшей работы с ним через Проводник ОС Windows. Загрузка с носителя описана в разделе Запуск ALP-образа.
Самостоятельное создание ALP-raw образа.
Якорь | ||||
---|---|---|---|---|
|
Менеджер виртуальных машин virt-manager
На машине, на которой выполняется создание образа, должен быть установлен пакет микропрограмм ovmf для UEFI-загрузки. См. https://packages.debian.org/stretch/ovmf. Установить пакет можно командами:
Command wget http://ftp.de.debian.org/debian/pool/main/e/edk2/ovmf_0~20181115.85588389-3+deb10u3_all.deb
sudo apt install ./ovmf_*_all.deb- Перед созданием виртуальной машины (ВМ) сменить формат ВМ на
Raw
. Для этого открыть меню "Правка" → "Параметры", перейти во вкладку "Новая ВМ" и выбрать в поле "Формат" → "Raw": - При создании ВМ на последнем шаге отметить чекбокс "Проверить конфигурацию перед установкой":
- В следующем окне в поле "Микрокод" выбрать UEFI:
- Настроить состав ВМ по своему усмотрению, задав объем дисков, размер ОЗУ и т.д.
- Смонтировать образ ОС, на основе которой будет создан ALP-образ.
- Запустить ВМ и приступить к установке ОС и разметке дискового пространства.
Установка ОС и разметка дискового пространства образа Якорьразметка разметка
разметка | |
разметка |
- Выбрать пункт "Установка" или "Графическая установка " меню стандартной установки ОС:
- Дойти до шага разметки диска, выбрать пункт "Вручную":
- Создать минимум 3 дисковых раздела:
- Неиспользуемый дисковый раздел размера 1Мб. На этот раздел будет установлено ПО
grub-pc
для загрузки в режиме Legacy; - Дисковый раздел ESP. На этот раздел будет установлен загрузчик
grub
для загрузки в штатном режиме; Дисковый раздел для монтирования корня файловой системы (root).
- Неиспользуемый дисковый раздел размера 1Мб. На этот раздел будет установлено ПО
Продолжить установку ОС выбрав дисковый раздел для монтирования корня файловой системы (root) как основной для размещения ОС.
- По окончании установки запустить ВМ с установленной ОС.
На запущенной ВМ установить пакеты
grub-pc-bin
иgparted
:Command sudo apt install grub-pc-bin gparted
Запустить
gparted
, выбрать первый раздел, отмеченный как Legacy, зайти в меню раздела:Информация Если ранее не была произведена разметка диска а раздел для grub не был создан,
их можно создать на данном шаге с помощью
gparted
Выставить флаг bios_grub на первый раздел,отмеченный как Legacy:
Установить загрузчик grub на первый,отмеченный как Legacy:
Command sudo grub-install --target=i386-pc /dev/sda
Виртуальная машина VirtualBox
- Создать ВМ с приведенными на рисунке ниже настройками.
- Активировать параметр "Включить EFI (только специальные ОС)":
- Запустить созданную ВМ.
- Перейти к разделу Установка ОС и разметка дискового пространства образа.
- Выключить ВМ, изъять загрузочный ISO-файл из виртуального привода:
- Отключить EFI:
Проверка работы самостоятельно созданного ALP-образа
После описанных выше настроек созданный образ можно будет загружать в режимах Legacy и в EFI.
Для проверки работоспособности нужно выполнить инструкции из раздела Запуск ALP-образа.
При появлении ошибок в первую очередь убедиться, что на первом дисковом разделе установлен флаг bios_grub
.
Модификация ALP-live образов
Внесение изменений в squashfs
Информация |
---|
|
- Установить пакеты:
Command sudo apt install debootstrap gparted squashfs-tools xorriso rsync
- Создать основной рабочий каталог
liveCD
и подкаталоги:Command mkdir -p ~/liveCD/{mnt,extract-cd,squashfs,edit}
- Перейти в основной рабочий каталог:
Command cd ~/liveCD
- Примонтировать live-образ:
Command sudo mount -o loop <путь>/<имя_файла_с_ISO-образом>.iso mnt
- Скопировать файлы:
Command sudo rsync --exclude=/live/filesystem.squashfs -a mnt/ extract-cd
- Включить модуль ядра
squashfs
:Command sudo modprobe squashfs
- Примонтировать раздел с файловой системой
squashfs:
Command sudo mount -t squashfs -o loop mnt/live/filesystem.squashfs squashfs/
- Скопировать раздел в ранее созданный рабочий каталог
edit
:Command sudo cp -a squashfs/* edit
- Скопировать файл настройки DNS
resolv.conf
для работы с сетью при модификации образа:Command sudo cp /etc/resolv.conf edit/etc/
- Cмонтировать системные каталоги устройств:
Command sudo mount --bind /dev/ edit/dev
- Создать chroot-окружение для рабочего каталога
edit
:Command sudo chroot edit
Информация Chroot-окружение — механизм ОС для создания изолированной среды выполнеия программ. При его использовании происходит изменение корневого каталога для запускаемых из окружения процессов.
- Cмонтировать служебные файловые системы для корректной работы chroot-окружения последовательно выполнив команды:
Command mount -t proc none /proc/
mount -t sysfs none /sys/
mount -t devpts none /dev/pts
- Установить переменные языковой локали и домашнего каталога для chroot-окружения последовательно выполнив команды:
Command export HOME=/root
export LC_ALL=C
- Настроить службу D-Bus, необходимую для обмена информацией с другими службами. Для этого назначить идентификатор для службы D-Bus:
Command dbus-uuidgen > /var/lib/dbus/machine-id
- Перенаправить службу системной инициализации ОС:
Command dpkg-divert --local --rename --add /sbin/initctl
- Создать пустую символическую ссылку для каталога
/sbin/initctl:
Command ln -s /bin/true /sbin/initctl
- Внести требуемые изменения в ОС. Ниже приведен пример изменений:
Command apt-get update
adduser test
passwd test
ssh-keygen -t rsa -b 4096
systemctl enable sshd
apt-get install git
apt-get remove --purge libreoffice-*
- Выполнить очистку перед выходом:
- Очистить кеш установленных пакетов:
Command apt clean
- Удалить временные файлы последовательно выполнив команды:
Command rm -rf /tmp/* ~/.bash_history
rm /var/lib/dbus/machine-id
rm /etc/resolv.conf
rm /sbin/initctl
- Выключить перенаправление службы системной инициализации ОС:
Command dpkg-divert --rename --remove /sbin/initctl
- Размонтировать служебные файловые системы ОС последовательно выполнив команды:
Command umount /proc || umount -lf /proc
umount /sys || umount -lf /sys
umount /dev/pts || umount -lf /dev/pts
- Выйти из chroot-окружения, размонтировать рабочий каталог
edit
образа последовательно выполнив:Command exit
sudo umount edit/dev || umount -lf edit/dev
- Очистить кеш установленных пакетов:
- Создать новую файловую систему для образа:
Command sudo mksquashfs edit extract-cd/live/filesystem.squashfs
- Записать параметры файловой системы на образ:
Command du -sx --block-size=1 edit | cut -f1 | sudo tee extract-cd/live/filesystem.size
- Указать имя образа последовательно выполнив команды:
Command export IMAGE_NAME="LIVECD-ALSE-<номер_версии_ОС>"
echo $IMAGE_NAME | sudo tee extract-cd/README.diskdefines
- Перейти в рабочий каталог
extract-cd
и перезаписать хеш-суммы для файлов образа последовательно выполнив команды:Command cd extract-cd
sudo rm md5sum.txt
sudo -s
find -type f -print0 | xargs -0 md5sum |
grep -v isolinux/boot.cat | tee md5sum.txt
- Собрать образ:
Command sudo xorrisofs -D -r -V "$IMAGE_NAME" -cache-inodes -J -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -iso-level 3 -o ../live-alse-1.7.5.iso .
Внесение изменений в файлы, не входящие в squashfs
Для внесения изменений в такие файлы как live.cfg, isolinux.cfg:
- Установить пакеты:
Command sudo apt install reprepro xorriso debootstrap
- Создать подкаталог для распаковки и распаковать ISO-образ в созданный каталог:
Command mkdir ~/cd
&&7z x
<имя_файла_с_ISO-образом
>-o"cd"
Предупреждение Каталог для разархивирования следует указывать в кавычках и без пробела после параметра -o
- Для выполнения дальнейших модификаций разрешить запись для каталога с распакованными файлами:
Command chmod -R +w ~/cd
- Внести требуемые изменения.
- Сгенерировать хеш-суммы:
Command cd ~/cd; find ! -name md5sum.txt -follow -type f -print0 | xargs -0 md5sum > md5sum.txt ; cd ..
- Извлечь сектор MBR из исходного ISO-образа дистрибутива:
Command dd if=<имя_файла_с_ISO-образом> bs=1 count=432 of=isohdpfx.bin
- Создать модифицированный ISO-образ указав новое имя модифицированного образа:
Command xorriso -as mkisofs -isohybrid-mbr isohdpfx.bin -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -c isolinux/boot.cat \
-V "LIVECD-ALSE-<номер_версии_ОС>" -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot -isohybrid-gpt-basdat \
-append_partition 2 0xef cd/boot/grub/efi.img -o <новое_имя_файла_с_ISO-образом>.iso ~/cd