Создайте устанавливаемый ISO из системы Linux с помощью Penguins-eggs
Превратите свою систему Linux в устанавливаемый ISO-образ с помощью утилиты Penguins-eggs
В этом подробном руководстве объясняется, что такое Penguins-eggs, как установить Penguins-eggs в Linux и как создать устанавливаемый ISO-образ из вашей текущей системы Linux с помощью Penguins-eggs. .
Что такое пингвиньи яйца?
Penguins -eggs — это консольная утилита, позволяющая обновить вашу систему Linux и создать устанавливаемый ISO-образ из работающей системы. Используя Penguins-eggs, вы можете создать как живую, так и устанавливаемую версию вашей текущей машины с Linux, с пользовательскими данными или без них.
Penguins-eggs создает сжатую файловую систему из вашей текущей системы Linux, удаляя пользовательские данные и самих пользователей. Затем вы можете полностью настроить полученный ISO с помощью тем и дополнений, чтобы он выглядел как ваш собственный дистрибутив Linux.
Проще говоря, вы можете сделать резервную копию всей вашей установки, включая все ваши личные данные (файлы, документы, PDF-файлы, музыку, видео… и т. д.), которая в данный момент работает на вашем внутреннем SSD/HDD, и создать ISO-образ. . Вы можете поместить ISO на внешний USB-накопитель и использовать работающую операционную систему. Просто подключите USB, загрузите ISO и начните использовать портативную операционную систему Linux где угодно. Это так просто!
Penguins-eggs можно использовать для создания пользовательских дистрибутивов для ремиксов, миграции, перестройки и переключения оборудования для всех случаев использования во всех организациях, компаниях, школах, колледжах и университетах.
Обратите внимание, что Penguins-eggs не является программой для клонирования дисков, такой как Clonezilla. Это совершенно другое. Penguins-eggs можно запускать напрямую из работающей/текущей системы и делать снимки текущего состояния вашей работающей системы Linux. С другой стороны, программное обеспечение для клонирования дисков можно запускать только с загрузочного USB-накопителя.
Penguins-eggs — отличная замена старым добрым Remastersys и другим подобным программам, таким как Pinguy Builder, Refracta, Systemback . и Knoppix! К сожалению, разработка Remastersys, Pinguy Builder и Systemback давно остановлена. Насколько мне известно, проект Penguins-eggs — это всего лишь активно поддерживаемый проект по обновлению вашей текущей системы Linux и ее распространению в виде живого ISO-файла (с пользовательскими и системными данными или без них).
Penguins-eggs — бесплатная программа с открытым исходным кодом, написанная на Typescript. В настоящее время он поддерживает Debian, Devuan, Ubuntu, Arch Linux и Manjaro Linux. Он также поддерживает производные Ubuntu, такие как Linux Mint, PopOS, Kubuntu, Lubuntu, Xubuntu, KDE Neon и т. д.
Особенности яиц пингвинов
Яйца пингвинов обладают множеством полезных функций. Давайте бегло взглянем на некоторые важные особенности яиц пингвинов.
1. Включите пользовательские данные
По умолчанию пользовательские данные будут исключены при создании ISO. Однако вы можете использовать флаг --clone
, чтобы взять данные с собой.
2. Шифрование данных
Если вы используете флаг --clone
, данные будут видны непосредственно из реальной среды и доступны любому, кто получит результирующий файл ISO. Также возможно зашифровать пользовательские данные и сгенерировать ISO.
При создании ISO с флагом --clonecrypted
пользовательские данные будут храниться в зашифрованном томе LUKS.
3. Установщик с графическим интерфейсом или интерфейсом командной строки
После создания ISO-образа вы можете установить полученный ISO-образ с помощью графического интерфейса установщика Calamares или внутреннего TUI установщика krill.
4. Автоматическая установка
С помощью установщика krill вы также можете выполнить автоматическую установку, используя флаг --unattended
. Вы можете изменить значения конфигурации в /etc/penguins-eggs.d/krill.yaml
перед запуском автоматической установки.
5. Поддержка PXE
Что делать, если вы хотите развернуть ISO на других компьютерах в сети? Это тоже возможно.
Penguins-eggs имеет встроенную службу PXE. Самонастраивающийся сервис PXE позволяет нам легко развернуть вновь созданный ISO в удаленной системе в сети.
Функция PXE стала возможной с помощью команды "cuckoo". Эта команда используется для развертывания ISO в уже установленной системе или для загрузки самого ISO в реальном времени.
6. Встроенный локальный репозиторий.
Еще одна полезная функция Penguins-eggs — это локальный репозиторий. Локальный репозиторий известен как Yolk и включен в Live CD. Он содержит минимум незаменимых пакетов во время установки. Таким образом, мы можем безопасно установить нашу систему без необходимости активного подключения к Интернету. Звучит весьма полезно, да?
Связанное чтение:
- Как полностью обновить автономные системы на базе Debian с помощью Apt-offline
- Как установить пакеты в автономных системах Ubuntu с помощью Cmicri Cube
- Как установить программное обеспечение в Ubuntu в автономном режиме
- Как загрузить пакеты с зависимостями локально в Ubuntu, Debian, Linux Mint, Pop OS
7. Встроенные помощники
Penguins-eggs поставляется с двумя встроенными помощниками, а именно "мама" и "папа".
Сценарий Mom — это всего лишь вспомогательная программа, объясняющая различные команды и их параметры. А папин скрипт поможет вам правильно настроить программу Пингвины-яйца.
Чтобы настроить яйца пингвинов, просто введите следующую команду и следуйте инструкциям на экране.
sudo eggs dad
Если есть какие-либо проблемы, вы можете запустить следующую команду, чтобы сбросить все:
sudo eggs dad -d
Он сбросит конфигурацию, загрузит настройки по умолчанию, удалит созданные ISO.
Подводя итог, ниже приведены некоторые полезные свойства яиц пингвинов.
- Легко и быстро создайте устанавливаемый ISO-образ из работающего дистрибутива Linux.
- Создайте резервные копии вашей текущей системы Linux,
- Включить или исключить пользовательские данные из ISO,
- Шифрование пользовательских данных,
- Поддерживает автоматическую установку,
- Разверните ISO на сетевом компьютере через службу PXE,
- Поддерживает настраиваемый установщик с графическим интерфейсом и установщик с интерфейсом командной строки.
- Встроенный локальный репозиторий и помощники-помощники,
- Удаляется с новой машины после установки,
- Бесплатно и с открытым исходным кодом!
Установите Penguins-eggs в Linux
Penguins-eggs упакован для нескольких основных операционных систем, включая Arch Linux и его варианты, Debian, Ubuntu и его производные.
Если вы используете Arch Linux, EndeavourOS и Manjaro Linux, вы можете установить Penguins-eggs из AUR, используя вспомогательные программы ash Paru или Yay. показано ниже.
paru -S penguins-eggs
Или
yay -S penguins-eggs
В Debian, Ubuntu и их производных вы можете установить Penguins-eggs через официальный PPA или вручную загрузить пакет .deb
и установить его с помощью менеджера пакетов.
Чтобы установить Penguins-eggs через PPA, добавьте ключ GPG и PPA с помощью команд:
curl -fsSL https://pieroproietti.github.io/penguins-eggs-ppa/KEY.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/penguins-eggs.gpg
echo "deb [arch=$(dpkg --print-architecture)] https://pieroproietti.github.io/penguins-eggs-ppa ./" | sudo tee /etc/apt/sources.list.d/penguins-eggs.list > /dev/null
Обновите репозитории пакетов:
sudo apt update
А затем установите Penguins-eggs в системах на базе Debian с помощью команды:
sudo apt install eggs
Если вы не хотите добавлять PPA, загрузите пакеты Penguins-eggs из Sourceforge:
wget https://sourceforge.net/projects/penguins-eggs/files/DEBS/eggs_9.4.2_amd64.deb
Затем установите загруженный пакет .deb с помощью менеджера пакетов dpkg
.
sudo dpkg -i eggs_9.4.2_amd64.deb
sudo apt install -f
Вы также можете установить deb-пакет Penguins-eggs с помощью менеджера пакетов gdebi
.
sudo apt install gdebi
sudo gdebi eggs_9.4.2_amd64.deb
Если вы используете систему UEFI, я рекомендую вам установить еще один пакет с именем grub-efi-amd64-bin.
Для этого запустите:
sudo apt install grub-efi-amd64
Ну вот мы только что установили Пингвины-яйца.
Давайте продолжим и посмотрим, как превратить вашу текущую систему Linux в устанавливаемый ISO с помощью Penguins-eggs.
Создайте устанавливаемый ISO из системы Linux с помощью яиц Penguins
После установки penguins-eggs вы можете использовать команду eggs
, чтобы создать новый ISO.
Отображение справки
Запустите команду eggs
без каких-либо параметров, чтобы просмотреть общую справку, включая список доступных подкоманд:
eggs
Пример вывода:
Perri's Brewery edition: remaster your system and distribute it
VERSION
penguins-eggs/9.4.2 linux-x64 node-v16.19.1
USAGE
$ eggs [COMMAND]
TOPICS
export export deb/docs/iso to the destination host
tools clean system log, apt, etc
wardrobe get wardrobe
COMMANDS
adapt adapt monitor resolution for VM only
analyze analyze for syncto
autocomplete display autocomplete installation instructions
calamares configure calamares or install or configure it
config Configure and install prerequisites deb packages to run it
cuckoo PXE start with proxy-dhcp
dad ask help from daddy - TUI configuration helper
help Display help for eggs.
install krill: the CLI system installer - the egg became a penguin!
kill kill the eggs/free the nest
mom ask help from mommy - TUI helper
produce produce a live image from your system without your data
status information about eggs status
syncfrom restore users and user data from a LUKS volumes
syncto saves users and user data in a LUKS volume inside the iso
update update the Penguins' eggs tool
version
Помощь по отображению яиц пингвинов
Вы также можете просмотреть раздел справки по конкретной подкоманде. Например, чтобы отобразить раздел справки по команде eggs Produce
, выполните:
eggs produce -h
Отобразить справку по подкоманде
Вы можете нажать клавишу TAB, чтобы просмотреть все возможные варианты для каждой подкоманды.
Более подробную справку можно получить, выполнив следующую команду:
eggs mom
При этом отобразится раздел интерактивной справки на основе меню TUI, поэтому мы сможем просмотреть раздел справки по всем командам в удобном для пользователя формате.
Отобразить справку TUI
Кроме того, для команды eggs
доступна специальная страница руководства. Чтобы просмотреть справочные страницы команды eggs
, запустите:
man eggs
Создать ISO из действующей системы без пользовательских данных
Создать устанавливаемый ISO-образ из системы Linux с помощью Penguins-eggs просто и понятно. Все, что вам нужно сделать, это просто запустить команду eggs
, чтобы создать ISO-образ из вашей работающей системы Linux:
sudo eggs produce
Пожалуйста, следите за экраном. Пингвины-яйца зададут вам несколько вопросов ДА/НЕТ. Просто используйте стрелки ВВЕРХ/ВНИЗ, чтобы выбрать подходящий ответ.
Обратите внимание: если вы используете графическую систему, яйца подскажут вам, хотите ли вы установить установщик графического интерфейса Calamares. Выберите «да» с помощью клавиши со стрелкой и нажмите ENTER, чтобы продолжить установку.
После успешного создания ISO вы увидите следующий результат:
[...]
eggs is finished!
You can find the file iso: debian11vm_amd64_2023-03-16_1302.iso
in the nest: /home/eggs/.
Remember, on liveCD user = live/evolution
root = root/evolution
Создайте устанавливаемый ISO из системы Linux с помощью Penguins-eggs
По умолчанию яйца сохранят полученный ISO в каталоге /home/eggs. имя пользователя и пароль Live CD по умолчанию для ISO: live/evolution и пароль root для Live CD: evolution .
По умолчанию яйца используют быстрое сжатие по умолчанию, которое обеспечивает более высокую скорость сжатия для создания ISO.
Вы также можете использовать -f
или --standard
для стандартного сжатия.
sudo eggs produce --standard
Вы также можете добавить флаг --max
, чтобы получить более сжатые ISO-образы. Обратите внимание, что этот процесс будет медленнее, чем стандартные и быстрые методы сжатия.
sudo eggs produce --max
Как вы могли заметить в приведенном выше выводе, имя ISO будет получено из имени хоста вашей системы. Например, мое сгенерированное имя ISO — debian11vm_amd64_2023-03-16_1302.iso
. Что, если вы хотите добавить собственное базовое имя для своего ISO? Это тоже возможно. Чтобы добавить базовое имя для ISO, запустите:
sudo eggs produce --basename=Debian11
Замените базовое имя «Debian11» на свое собственное.
Создать ISO с пользовательскими данными
Когда вы запускаете команду eggs Produce
без каких-либо параметров, будет создан только ISO. Если вы хотите включить пользовательские данные в ISO, запустите команду eggs
с опцией --clone
.
sudo eggs produce --clone
При этом будет создан устанавливаемый ISO-образ с пользовательскими данными НЕШИФРОВАННЫЙ. Таким образом, любой, у кого есть доступ к ISO, может просмотреть данные.
Шифрование пользовательских данных
Если вы не хотите, чтобы другие просматривали пользовательские данные, вы можете запустить команду eggs
с опцией --cryptedclone
, чтобы зашифровать пользовательские данные и сохранить их в томе LUKS в ИСО.
sudo eggs produce --cryptedclone
Зашифрованные пользовательские данные сохраняются в томе LUKS внутри работающей системы. Данные недоступны на живом ISO. Если вы хотите получить доступ к данным, вам следует установить систему с помощью ISO с помощью установщика TUI krill. Обратите внимание, что пользовательские данные нельзя восстановить при использовании графического установщика Calamares.
Проверьте ISO
После создания ISO из вашей действующей системы вы можете протестировать его, создав загрузочный USB-накопитель с ISO с помощью любого приложения для создания загрузочного ISO, такого как Ventoy.
Загрузите систему с помощью USB. Вы должны увидеть следующее меню grub.
Загрузите Live ISO
Выберите установщик с графическим интерфейсом или CLI и нажмите Enter, чтобы продолжить загрузку системы. Наконец, войдите в систему, используя учетные данные пользователя livecd по умолчанию.
Вы можете использовать следующие учетные данные пользователя для входа в вашу действующую систему.
- Пользователь LiveCD: живой
- Пароль пользователя LiveCD: evolution
- Корневой пароль LiveCD: evolution
Я собираюсь войти в систему как пользователь root
.
Войдите в Live System как root
Теперь вы войдете в живую систему. Я проверил, все ли данные присутствуют в моей рабочей среде Debian 11. Да, они!
Я скептически отношусь к первой попытке. Но я действительно доволен результатом. Пингвины-яйца работают просто из коробки. Я создал живой ISO с пользовательскими данными и без них. При входе в действующий ISO-образ, созданный с использованием пользовательских данных, я могу видеть и получать доступ ко всем данным. Все в живой среде. Честно говоря, не ожидала положительного результата.
Живая система Debian
Если вы хотите установить ОС, просто запустите установщик из меню/тире. Для этого просто введите «Установить» в меню «Пуск» и нажмите Установить систему, чтобы начать установку.
Начать установку
Вот и все. Теперь продолжайте установку ОС Debian 11 как обычно.
Установить ОС Дебиан
яйца также имеют много других полезных команд. Для меня достаточно создать живой ISO из моей нынешней системы! Так что остальные команды я еще не пробовал. Но остальные команды я протестирую в ближайшие дни. Я предлагаю вам опробовать их все на виртуальной машине и посмотреть, помогут ли они в ваших случаях использования.
Изменить настройки конфигурации по умолчанию
Как уже говорилось, вы можете использовать команду «eggs Dad
» для настройки различных параметров Penguins-eggs, таких как действующее имя пользователя и его пароль, пароль root, префикс снимка, базовое имя снимка, темы установщика графического интерфейса, часовой пояс, и более.
Вы также можете сделать то же самое из командной строки, отредактировав файл /etc/penguins-eggs.d/eggs.yaml
. Откройте этот файл в своем любимом редакторе и измените значения по своему вкусу.
version: 9.4.2
snapshot_dir: /home/eggs/
snapshot_prefix: egg-of-debian-bullseye-
snapshot_excludes: /usr/local/share/penguins-eggs/exclude.list
snapshot_basename: debian11vm
user_opt: live
user_opt_passwd: evolution
root_passwd: evolution
theme: eggs
force_installer: true
make_efi: true
make_md5sum: false
make_isohybrid: true
compression: zstd -b 256K -Xcompression-level 1
ssh_pass: true
timezone: America/New_York
locales_default: en_IN
locales:
- en_IN
- en_US.UTF-8
pmount_fixed: false
machine_id: 57b38d32dd7a45f18c49301d559b3f27
vmlinuz: /boot/vmlinuz-5.10.0-21-amd64
initrd_img: /boot/initrd.img-5.10.0-21-amd64
После изменения значений сохраните файл и закройте его. Перезапустите программу яиц, чтобы изменения вступили в силу.
Обновление пингвинов-яиц
Чтобы обновить яйца пингвинов, запустите:
sudo eggs update
Вы также можете использовать менеджер пакетов вашего дистрибутива для его обновления.
В Arch Linux и его вариантах просто запустите следующую команду, чтобы обновить пакет Penguins-eggs:
paru -Syu
Или,
yay -Syu
Если вы используете Debian/Ubuntu и установили Penguins-eggs через PPA, просто запустите:
sudo apt update
sudo apt full-upgrade
Если вы установили вручную с помощью пакета .deb, загрузите новую версию и установите ее снова с помощью команды dpkg
или gdebi
.
sudo dpkg -i eggs_x.x.x_amd64.deb
sudo apt install -f
Использование менеджера пакетов gdebi
:.
sudo gdebi eggs_x.x.x_amd64.deb
Заключение
По моему скромному мнению, Penguins-eggs вполне полезная и реальная замена давно заброшенным программам Remastersys и Systemback. Я попробовал Penguins-eggs на своих тестовых машинах с Debian 11 и Ubuntu 22.04, и они работают хорошо, как и рекламируется.
Если вы когда-нибудь хотели создать собственный устанавливаемый ISO-образ Linux на основе вашей текущей системы, Penguins-eggs будет идеальным выбором. Вы можете создать повторно используемый собственный дистрибутив Linux с пользовательскими данными или без них и развернуть его в других системах.
Ресурсы:
- Репозиторий Penguins-eggs на GitHub
- Сайт о пингвинах и яйцах
- Документация по яйцам пингвинов
Избранное изображение Бюлента Эргуна с сайта Pixabay.