Custom Live USB

Материал из Rosalab Wiki
Перейти к: навигация, поиск
Away.png
Это заготовка статьи!
Вы можете помочь проекту, дописав и дополнив данную статью.


Цель

Получить копию вашей ОС ROSA Desktop.Fresh в виде живой флэшки (live usb) c возможностью сохранения изменений и копирования системы стандартным установщиком из live-режима. Вместо флэшки может использоваться жесткий диск.

Средства

Для достижения цели вам понадобятся:

  • наличие в системе установленного пакета squashfs-tools версии 4.х
  • если нужна возможность установки вашей системы с live usb, то нужно установить пакет draklive-install.
  • носитель, который будет использоваться в роли загрузочного. Необходимую емкость вы сможете определить в процессе подготовки.

Процесс

  • проверяем наличие всех необходимых пакетов.
  • делаем файл-слепок (модуль) системы командой (из-под root):
    mksquashfs / /media/папка_назначения/10-имя_файла-слепка.xzm -e /etc/fstab /media /mnt /sys /dev /proc /run /tmp /var/tmp

(параметром -e /etc/fstab /media ... исключаются папки и файлы, которые не нужны для копирования).


Idea.png
Примечание
Вместо одного целого файла можно сделать несколько модулей, содержащих слепки отдельных частей системы. Например, можно выделить /home раздел в отдельный модуль или же выделить в отдельные модули каждую пользовательскую папку. Если существующие пользовательские данные не нужны, то тогда можно создать пустого пользователя и его использовать для включения в домашний модуль, а остальных исключить (есть нюансы, будут описаны позднее). Все зависит от потребностей.
Idea.png
Примечание
Если вы решили сделать просто живую флешку с единственным "временным" пользователем, который не нужен будет после установки с live usb, то назовите этого пользователя live, тогда после установки на компьютер его там не будет. Если live не нравится, то назовите как угодно, но тогда перед тем как делать слепок в файле /etc/draklive-install.d/run.d/remove-live-user.sh в команде userdel -r live замените (из-под root'а) live на вашего пользователя


  • смотрим размер получившегося файла(ов) .xzm и подбираем носитель подходящего размера (плюс место для MagOS).
  • распаковываем содержимое архива Custom-ROSA-liveusb.tgz. там будут папки boot, MagOS и MagOS-Data. Копируем их на носитель. Если вы использовали полную версию сборки MagOS, то из папки /MagOS/base/ удаляете все модули .xzm, кроме 00-kernel.xzm и 01-firmware.xzm. туда же копируете свой(и) файл(ы) .xzm.
  • делаете загрузочным носитель. заходите в папку boot/syslinux/install.lin(.win) на носителе и выполняете bootinst.sh(.bat).
  • проверяете работу. загружаетесь с подготовленного носителя и выбираете "чистый режим". Должна загрузиться копия вашей системы.
Idea.png
Примечание
Работа ОС в live-режиме осуществляется на пересобранном ядре 3.6.10-nrj-desktop-pae-1rosa. После установки система работает на том ядре, который был на оригинальной системе

Возможности

  • Чистый режим. Изменения после выключения не сохраняются. Live-носитель доступен на запись в /mnt/livemedia/.
  • Режим "с сохранением только пользовательских данных". (параметр загрузки home=home.img) Сохраняются все изменения, происходящие в пользовательских папках. Необходимо подготовить к работе файл-контейнер, который будет использоваться в качестве раздела /home (по умолчанию используется файл /MagOS-Data/home.img размером ~750 Мб):
    • Загружаетесь в "чистый режим" и в терминале из-под root:
    • создаете папку mkdir /mnt/home
    • монтируете в нее файл-контейнер mount /mnt/livemedia/MagOS-Data/home.img /mnt/home
    • далее вы должны либо создать папки существующих в системе пользователей mkdir /mnt/home/[user] и поменять владельца и группу chown [user]:[user] /mnt/home/[user], либо скопировать их из текущей /home, если вам нужно все содержимое пользовательских папок.
    • чтобы использовать файл home.img другого размера необходимо из архива /MagOS-Data/save.zip распаковать в ту же папку файл save1.img подходящего размера, переименовать его в home.img и подготовить вышеописанным способом.
  • Режим "с раздельным сохранением всех изменений". (параметры загрузки home=home.img changes=system.img) Данные пользователя сохраняются в файл /MagOS-Data/home.img (см.выше), а все системные изменения в файле /MagOS-Data/system.img (по-умолчанию отсутствует). Чтобы использовать этот режим необходимо из архива /MagOS-Data/save.zip распаковать в ту же папку файл save1.img подходящего размера и переименовать его в system.img. Данный режим замедляет работу системы на медленных носителях.
  • Режим "с сохранением всех изменений в один файл".(параметр загрузки changes=save1.img) Все изменения сохраняются в одном файле /MagOS-Data/save1.img (по-умолчанию отсутствует). Чтобы использовать этот режим необходимо из архива /MagOS-Data/save.zip распаковать в ту же папку файл save1.img подходящего размера. Данный режим замедляет работу системы на медленных носителях.
    • Можно использовать разные файлы-контейнеры назвав их например save2.img и при загрузке в меню Grub выбрать "чистый режим" и добавить праметр changes=save2.img, либо добавив изменения в файл /MagOS/boot/grub4dos/local/menu.lst, например:
title My ROSA - С сохранением всех изменений в один файл (Профиль 1)
#find --set-root --ignore-floppies --ignore-cd /MagOS/MagOS.sgn
kernel /MagOS/vmlinuz  root=/dev/ram0 rw vga=791 slpash=silent changes=save1.img
initrd /MagOS/initrd.gz

title My ROSA - С сохранением всех изменений в один файл (Профиль 2)
#find --set-root --ignore-floppies --ignore-cd /MagOS/MagOS.sgn
kernel /MagOS/vmlinuz  root=/dev/ram0 rw vga=791 slpash=silent changes=save2.img
initrd /MagOS/initrd.gz
Idea.png
Примечание
В архиве save.zip хранятся файлы-контейнеры разных размеров (от 128Мб до 4Гб). В полной версии сборки MagOS архив называется profiles.7z, а файлы-контейнеры MagOS-save1.img)
Idea.png
Примечание
Учтите, что пользовательские папки в "чистом режиме", "с раздельным сохранением" и "с сохранением в один файл" не взаимосвязаны и их содержимое будет разным.


  • для установки своей системы выберете в списке приложений "Установщик в режиме live" и пройдите быструю процедуру установки как с обычного официального установочного диска.
Dialog-warning.png
Предупреждение
В конце установки программа сообщит об ошибке копирования initrd.img в папку /boot - не обращайте внимания - все что надо уже установлено. Далее опять может появиться окно установщика - просто закройте его.
Idea.png
Примечание
При первом входе в установленную систему он попросит ввести пароль для root и нового пользователя. при этом старые пользователи все уже есть, поэтому если новый пользователь не нужен введите любого не существующего - потом удалите.
Idea.png
Примечание
В папке /boot установленной системы помимо вашего ядра будут находиться "ядерные" -pae файлы (config-3.6.10-nrj-desktop-pae-1rosa, symvers-3.6.10-nrj-desktop-pae-1rosa.xz, System.map-3.6.10-nrj-desktop-pae-1rosa, пустая ссылка initrd.gz, initrd-3.6.10-nrj-desktop-pae-1rosa.img), доставшиеся в нагрузку от MagOS при установке. Если мешают можете удалить. Только будьте внимательны и не удалите файлы действующего ядра.

Бонус

Примером работы такого способа является сборка Porta ROSA - система установленная с официального iso-образа, обновленная по состоянию на 29 января 2013 года и превращенная в живую флэшку с возможностью нескольких вариантов сохранения изменений. Процесс создания загрузочного носителя аналогичен вышеописанному.

Благодарность

Огромное спасибо Михаилу Зарипову (МихаилZ) и Антону Горошкину (neobht) за проект MagOS и полезные советы!