Custom Live USB — различия между версиями
Syspacer (обсуждение | вклад) |
Syspacer (обсуждение | вклад) |
||
Строка 3: | Строка 3: | ||
== Цель == | == Цель == | ||
− | Получить копию | + | Получить портативную копию запущенной/установленной ОС {{Версия|ROSA Desktop.Fresh}} в виде живой (live) системы на USB Flash drive/SD/microSD/HDD/ и т.д. c возможностью сохранения изменений и без, а также с возможностью полноценной установки стандартной программой-инсталлятором из live режима. |
== Средства == | == Средства == | ||
Строка 21: | Строка 21: | ||
* проверяем наличие всех необходимых пакетов. | * проверяем наличие всех необходимых пакетов. | ||
− | * делаем файл-слепок | + | * делаем файл-слепок системы в виде модуля к MagOS с расширением .xzm командой (из-под root): <pre>mksquashfs / /media/папка_назначения/10-имя_файла-слепка.xzm -e /etc/fstab /media /mnt /sys /dev /proc /run /tmp /var/tmp /var/log</pre> |
(параметром {{Cmd|'''''-e''' /etc/fstab /media ...''}} исключаются папки и файлы, которые не нужны для копирования). | (параметром {{Cmd|'''''-e''' /etc/fstab /media ...''}} исключаются папки и файлы, которые не нужны для копирования). | ||
Строка 36: | Строка 36: | ||
* делаете загрузочным носитель. заходите в папку '''boot/syslinux/install.lin(.win)''' на носителе и выполняете '''bootinst.sh(.bat)'''. | * делаете загрузочным носитель. заходите в папку '''boot/syslinux/install.lin(.win)''' на носителе и выполняете '''bootinst.sh(.bat)'''. | ||
− | * | + | * загружаетесь с подготовленного носителя, выбираете "чистый режим" и проверяете работу системы. |
{{Примечание| Работа ОС в live-режиме осуществляется на пересобранном ядре ''3.6.10-nrj-desktop-pae-1rosa''. После установки система работает на том ядре, который был на оригинальной системе}} | {{Примечание| Работа ОС в live-режиме осуществляется на пересобранном ядре ''3.6.10-nrj-desktop-pae-1rosa''. После установки система работает на том ядре, который был на оригинальной системе}} | ||
Строка 43: | Строка 43: | ||
* '''Чистый режим.''' Изменения после выключения не сохраняются. Live-носитель доступен на запись в /mnt/livemedia/. | * '''Чистый режим.''' Изменения после выключения не сохраняются. Live-носитель доступен на запись в /mnt/livemedia/. | ||
− | * '''Режим "с сохранением только пользовательских данных".''' (параметр загрузки home=home.img) Сохраняются все изменения, происходящие в пользовательских папках. Необходимо подготовить к работе файл- | + | * '''Режим "с сохранением только пользовательских данных".''' (параметр загрузки home=home.img) Сохраняются все изменения, происходящие в пользовательских папках. Необходимо подготовить к работе файл-образ, который будет использоваться в качестве раздела /home (по умолчанию используется файл /MagOS-Data/home.img размером ~750 Мб): |
** Загружаетесь в "чистый режим" и в терминале из-под root: | ** Загружаетесь в "чистый режим" и в терминале из-под root: | ||
**создаете папку {{Cmd|mkdir /mnt/home}} | **создаете папку {{Cmd|mkdir /mnt/home}} | ||
− | **монтируете в нее файл- | + | **монтируете в нее файл-образ {{Cmd|mount /mnt/livemedia/MagOS-Data/home.img /mnt/home}} |
**далее вы должны либо создать папки существующих в системе пользователей {{Cmd|mkdir /mnt/home/[user]}} и поменять владельца и группу {{Cmd|chown [user]:[user] /mnt/home/[user]}}, либо скопировать их из текущей /home, если вам нужно все содержимое пользовательских папок. | **далее вы должны либо создать папки существующих в системе пользователей {{Cmd|mkdir /mnt/home/[user]}} и поменять владельца и группу {{Cmd|chown [user]:[user] /mnt/home/[user]}}, либо скопировать их из текущей /home, если вам нужно все содержимое пользовательских папок. | ||
**чтобы использовать файл home.img другого размера необходимо из архива /MagOS-Data/save.zip распаковать в ту же папку файл save1.img подходящего размера, переименовать его в home.img и подготовить вышеописанным способом. | **чтобы использовать файл home.img другого размера необходимо из архива /MagOS-Data/save.zip распаковать в ту же папку файл save1.img подходящего размера, переименовать его в home.img и подготовить вышеописанным способом. | ||
Строка 53: | Строка 53: | ||
* '''Режим "с сохранением всех изменений в один файл".'''(параметр загрузки changes=save1.img) Все изменения сохраняются в одном файле /MagOS-Data/save1.img (по-умолчанию отсутствует). Чтобы использовать этот режим необходимо из архива /MagOS-Data/save.zip распаковать в ту же папку файл save1.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'', например: |
<pre>title My ROSA - С сохранением всех изменений в один файл (Профиль 1) | <pre>title My ROSA - С сохранением всех изменений в один файл (Профиль 1) | ||
Строка 65: | Строка 65: | ||
initrd /MagOS/initrd.gz</pre> | initrd /MagOS/initrd.gz</pre> | ||
− | {{Примечание| В архиве save.zip хранятся файлы-контейнеры разных размеров (от 128Мб до 4Гб). В полной версии сборки MagOS архив называется profiles.7z, а файлы-контейнеры MagOS-save1.img)}} | + | {{Примечание| В архиве save.zip хранятся файлы-контейнеры разных размеров (от 128Мб до 4Гб). В полной версии сборки MagOS архив называется profiles.7z, а файлы-контейнеры MagOS-save1.img).}} |
− | + | ||
{{Примечание| Учтите, что пользовательские папки в "чистом режиме", "с раздельным сохранением" и "с сохранением в один файл" не взаимосвязаны и их содержимое будет разным.}} | {{Примечание| Учтите, что пользовательские папки в "чистом режиме", "с раздельным сохранением" и "с сохранением в один файл" не взаимосвязаны и их содержимое будет разным.}} | ||
<br> | <br> | ||
− | * для установки своей системы выберете в списке приложений | + | * Чтобы создать свой файл-образ нужно: |
+ | **создать файл-основу <pre>dd if=/dev/zero of=/путь/имя_файла.img bs=1M count=X</pre> где X - необходимый размер в мегабайтах, либо <pre>dd if=/dev/zero of=/путь/имя_файла.img bs=Y count=1</pre> где Y - необходимый размер в байтах (YK - в килобайтах, YM - в мегабайтах, YG - в гигабайтах). | ||
+ | **затем отформатировать полученный файл командой <pre>(/sbin/)mkfs.ext3 имя_файла.img</pre> может ругнуться, что это не блочное устройство, не обращайте внимание и смело отвечайте '''y''' на ''Proceed anyway? (y,n)''. | ||
+ | **все. файл готов к употреблению. проверить результат можно командой '''file ''имя_файла.img'''''. Ответ должен будет содержать ''...Linux rev 1.0 ext3 filesystem data, UUID=...'' | ||
+ | |||
+ | * для установки своей системы выберете в списке приложений '''Установщик в режиме live''' ({{Программа|draklive-install}}) и пройдите быструю процедуру установки как с обычного официального установочного диска. | ||
{{Предупреждение| В конце установки программа сообщит об ошибке копирования ''initrd.img'' в папку ''/boot'' - не обращайте внимания - все что надо уже установлено. Далее опять может появиться окно установщика - просто закройте его.}} | {{Предупреждение| В конце установки программа сообщит об ошибке копирования ''initrd.img'' в папку ''/boot'' - не обращайте внимания - все что надо уже установлено. Далее опять может появиться окно установщика - просто закройте его.}} | ||
Версия 14:52, 30 января 2013
Содержание
Цель
Получить портативную копию запущенной/установленной ОС ROSA Desktop.Fresh в виде живой (live) системы на USB Flash drive/SD/microSD/HDD/ и т.д. c возможностью сохранения изменений и без, а также с возможностью полноценной установки стандартной программой-инсталлятором из live режима.
Средства
Для достижения цели вам понадобятся:
- урезанная версия или полная версия (если официальный torrent не устраивает, то можете скачать напрямую) сборки MagOS на пакетной базе ROSA Desktop.Fresh 2012
- наличие в системе установленного пакета squashfs-tools версии 4.х
- если нужна возможность установки вашей системы с live usb, то нужно установить пакет draklive-install.
- носитель, который будет использоваться в роли загрузочного. Необходимую емкость вы сможете определить в процессе подготовки.
Процесс
- проверяем наличие всех необходимых пакетов.
- делаем файл-слепок системы в виде модуля к MagOS с расширением .xzm командой (из-под root):
mksquashfs / /media/папка_назначения/10-имя_файла-слепка.xzm -e /etc/fstab /media /mnt /sys /dev /proc /run /tmp /var/tmp /var/log
(параметром -e /etc/fstab /media ... исключаются папки и файлы, которые не нужны для копирования).
Вместо одного целого файла можно сделать несколько модулей, содержащих слепки отдельных частей системы. Например, можно выделить /home раздел в отдельный модуль или же выделить в отдельные модули каждую пользовательскую папку. Если существующие пользовательские данные не нужны, то тогда можно создать пустого пользователя и его использовать для включения в домашний модуль, а остальных исключить (есть нюансы, будут описаны позднее). Все зависит от потребностей.
Если вы решили сделать просто живую флешку с единственным "временным" пользователем, который не нужен будет после установки с 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).
- загружаетесь с подготовленного носителя, выбираете "чистый режим" и проверяете работу системы.
Работа ОС в 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
В архиве save.zip хранятся файлы-контейнеры разных размеров (от 128Мб до 4Гб). В полной версии сборки MagOS архив называется profiles.7z, а файлы-контейнеры MagOS-save1.img).
Учтите, что пользовательские папки в "чистом режиме", "с раздельным сохранением" и "с сохранением в один файл" не взаимосвязаны и их содержимое будет разным.
- Чтобы создать свой файл-образ нужно:
- создать файл-основу
dd if=/dev/zero of=/путь/имя_файла.img bs=1M count=X
где X - необходимый размер в мегабайтах, либоdd if=/dev/zero of=/путь/имя_файла.img bs=Y count=1
где Y - необходимый размер в байтах (YK - в килобайтах, YM - в мегабайтах, YG - в гигабайтах). - затем отформатировать полученный файл командой
(/sbin/)mkfs.ext3 имя_файла.img
может ругнуться, что это не блочное устройство, не обращайте внимание и смело отвечайте y на Proceed anyway? (y,n). - все. файл готов к употреблению. проверить результат можно командой file имя_файла.img. Ответ должен будет содержать ...Linux rev 1.0 ext3 filesystem data, UUID=...
- создать файл-основу
- для установки своей системы выберете в списке приложений Установщик в режиме live (draklive-install) и пройдите быструю процедуру установки как с обычного официального установочного диска.
В конце установки программа сообщит об ошибке копирования initrd.img в папку /boot - не обращайте внимания - все что надо уже установлено. Далее опять может появиться окно установщика - просто закройте его.
При первом входе в установленную систему он попросит ввести пароль для root и нового пользователя. при этом старые пользователи все уже есть, поэтому если новый пользователь не нужен введите любого не существующего - потом удалите.
В папке /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 и полезные советы!