Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

Ссылка на это сравнение

soft:porteus-initrd [2020/01/31 12:40] (текущий)
Строка 1: Строка 1:
 +====== Porteus-initrd. PuppyRus модификация ======
 +
 +[[http://forum.puppyrus.org/index.php/topic,14184.msg75908.html#msg75908|Porteus]] [[wpru>initrd]].
 +
 +  *[[http://forum.puppyrus.org/index.php/topic,14190.0.html|Тема на форуме]]
 +  *Используется в [[http://forum.puppyrus.org/index.php/topic,14534.0.html|PuppyRus-A]] , LF, DDR
 +====== Особенности porteus-initrd ======
 +  *лог загрузки /var/log/porteus-livedbg
 +  *очень быстро грузится
 +  *не содержит либ ядра (при смене ядра не надо пересобирать). Ядро нужно с вкомпиленной поддержкой файловых систем.
 +  *база строится из любого количества модулей лежащих в /porteus/base. Слои по алфавиту. Верхний zzz*. Верхний слой AUFS - это который перекрывает файлы нижнего
 +    *В pra-porteus изменен порядок слоев [[http://wiki.puppyrus.org/setups/aufs|AUFS]] загружаемых модулей. 08*.pfs 09*.pfs всегда в верхнем слое
 +  *загрузка всех или указанных модулей в память 
 +  *выполнение после загрузки указанных скриптов
 +  *сохраненка на девайс, в папку или файл (можно зашифровать)
 +  *автозагрузка перечисленных модулей  //extramod=/mnt/sdb3/porteus-modules ; extramod=/mnt/sdb3/porteus-modules;/mnt/sdc4/inkscape_modules// выше базы
 +  *можно указать опции mount : //mopt=realtime,sync,users,nosuid,noexec//
 +  *noload=module[1];module[n]
 +  *Выделение памяти под / :ramsize=40%
 +  *PXE загрузка из сети
 +Это не весь список. 
 +  *Полный в [[http://www.porteus.org/component/content/article/26-tutorials/general-info-tutorials/117-cheatcodes-what-they-are-and-how-to-use-them.html|документации]]. 
 +  *Ниже перевод, сделанный for_wov и sfs. Перевод соответствует initrd из porteus v.2
 +====== Структура каталогов ======
 +Все модули грузятся в алфавитном порядке (z.pfs окажется выше a.pfs)
 +===== Слои aufs =====
 +[[/setups/aufs|AUFS]]
 +  *-низ-
 +  */base 
 +  */modules
 +  */optional
 +  */extramod
 +  *089-*.pfs (исправления ошибок)
 +  *090-*.pfs (сохранение состояния системы в модуль)
 +  */[[http://www.porteus.org/tutoriels/26-general-info-tutorials/112-howto-use-the-rootcopy-directory.html|rootcopy]] ; [[http://www.porteus.org/tutorials/45-other/100-howto-create-and-use-magic-folders.html|magic-folgers]] ;сохраненка (файл, папка, раздел)
 +  *-верх-
 +
 +
 +
 +===== /base =====
 +  *Базовые модули, файловые и оконные менеджеры, сохраненка.pfs
 +  */base/000-kernel.pfs - модули ядра. Должны быть совместимы с дистрибутивом. Название менять нельзя. Модуль временно монтируется во время работы initrd
 +===== /modules =====
 +  *Модули.pfs автозагружаются в алфавитном порядке выше base
 +  *Рекомендуется для автоподключения постоянно используемых модулей софта. Например браузера, проигрывателя. 
 +  *Модули не должны содержать /home /root. Иначе они перекроют сохраненкy.pfs
 +===== /optional =====
 +  *Модули.pfs загружаются в алфавитном порядке выше base, modules при указании load=module[1];module[n]. Кроме указанных в noload=
 +  *Рекомендуется для хранения и горячего подключения не постоянно используемых модулей софта. Например gparted
 +  *Модули не должны содержать /home /root. Иначе они перекроют сохраненкy.pfs
 +===== /extramod , /rootcopy =====
 +[[http://wiki.puppyrus.org/soft/porteus-initrd?&#extramod|/extramod]] ; [[soft/porteus-initrd#rootcopy|/rootcopy]]
 +
 +=======Параметры загрузки дистрибутива c porteus-initrd. =======
 +Параметры загрузки (cheatcodes) дописываются в конфигурационном файле загрузчика системы (например у grub4dos - menu.lst) в параметры ядра.
 +
 +  *Список cheatcodes в алфавитном порядке
 +  *cheatcodes, приведенные в примерах, иногда заключены в одиночные кавычки (напр. 'example=somevalue') для выделения в общем тексте. При практическом использовании кавычки не нужны.
 +  ***Помеченные в конце строки * - не работают или не тестировались в PuppyRus-A**
 +
 +===== autoexec=my_script =====
 +
 +autoexec=my_script;reboot
 + Выполнить указанные команды перед входом в систему.
 + Используйте ";" как разделитель, без пробелов.
 + Если вам понадобится использовать пробелы в командной строке замените их на "~"
 + Например: 'autoexec=echo~Shutting~power;poweroff' выведет на консоль текст с пробелами вместо "~"
 +
 +===== base_only =====
 +
 + Загружаем только "базовые" модули (названия которых начинаются с base/0: 000-kernel.xzm, 001-core.xzm)
 + Это полезно при отладке, чтобы понять связаны ли ваши возможные проблемы с модулем, добавленным вами в систему.
 +
 +===== changes= =====
 +  *changes=/dev/device раздел
 +  *changes=/path/ папка
 +  *changes=/path/file.dat контейнер
 +  *[[puppyrus/pra?&#%D1%81%D0%BE%D1%85%D1%80%D0%B0%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D0%B5%D1%81%D1%81%D0%B8%D0%B8|альтернатива]] - squashfs модуль сохранения или rootcopy
 + Без changes= все изменения в системе, до перезагрузки сохраняются в памяти 
 + Если устройство (раздел жесткого диска) имеет linux файловую систему (напр. ext) можно использовать 
 + раздел ('changes=/dev/sdb2') или папку ('changes=/path/')
 + '/path/'- путь от корня раздела с файлами дистрибутива (т.е. без '/dev/')
 + При использовании папки - система создаст подпапку 'changes' внутри '/path'
 + Если нужно сохранять на разделах с FAT или NTFS - используйте контейнер (file.dat). 
 + Создается скриптом make-changes или :
 +
 +  truncate -s 2G /test/ext2.dat && losetup /dev/loop40 /test/ext2.dat && mkfs.ext2 /test/ext2.dat && losetup -d /dev/loop40
 +
 +===== copy2ram =====
 +
 + Копирует все модули в память. Вам потребуется как минимум 256mb. 
 + Система 64-бит с KDE-4 потребует не меньше 768mb.
 + 'copy2ram' замедляет этап загрузки, но ускоряет работу системы.
 +
 + Напоминание: cheatcode 'noeject' можно использовать вместе с 'copy2ram', чтобы предотвратить отмонтирование
 + вашего загрузочного устройства (CD/DVD,usbflash,card-reader,и.т.д.)
 + Так же можно использовать 'rammod' чтобы выборочно загружать модули в память (смотрите описание 'rammod' ниже)
 +
 +===== debug =====
 +
 + Запуск консоли отладки. Пошаговый режим
 +
 +===== delay= =====
 +
 + Например: 'delay=5' приостановит загрузку на 5 секунд. Необходимо устройствам, требующими допольнительного 
 + времени для настройки.
 +
 +===== extramod= =====
 +
 +extramod=/path/folder_with_modules;/path2/folder_with_modules
 + Загрузка модулей из одной или нескольких внешних папок (расположеных не в папке с файлами дистрибутива).
 + Если все папки на одном разделе с дистрибутивом - можно указать пути от корня раздела
 + Для нескольких папок на разных разделах нужно указывать полные пути с разделителем ";" без пробелов.
 + Например:
 + 'extramod=/mnt/sdb3/porteus-modules'
 + 'extramod=/mnt/sdb3/porteus-modules;/mnt/sdc4/inkscape_modules'
 +Если нужно подключение не всех модулей, а одного или нескольких - это можно сделать: 
 +  *через noload= 
 +  *если Ваш дистрибутив на ext разделе и Вы не используете noauto - можно сделать симлинк на модуль в /modules. Симлинк делать через /mnt/sda...
 +
 +===== from= =====
 +from=/dev/device
 +from=/path/folder
 +from=/path/porteus.iso
 + Загружает систему с устройства, папки или ISO файла
 + Например:
 + 'from=/dev/sdb2' загрузка со второго раздела на втором диске.
 + 'from=/mnt/sda2/linux-testing'  загрузка из  папки 'linux-testing' на втором разделе.
 + 'from=/linux-ISO/porteus.iso' загрузка из ISO-файла внутри папки 'linux-ISO'.
 + Если раздел не указан - загрузочный скрипт будет искать данные на всех разделах
 +
 +===== fsck =====
 +
 + Проверка разделов с ext(2,3,4) и reiserfs 
 + XFS не нуждается в проверке с параметром fsck т.к. проверка происходит автоматически во время монтирования.
 + На некоторых системах необходимо использовать 'delay=' для подготовки устройства. 
 + Это по большей части необходимо только для USB флеш-дисков.
 +
 +===== kmap= *=====
 +kmap=раскладка_клавиатуры
 + Определяет предпочитаемую раскладку клавиатуры для KDE/LXDE/XFCE или другого рабочего окружения. 
 + Полный список поддерживаемых раскладок можно найти в  папке /etc/X11/xkb/symbols
 + Например: 'kmap=ru' установит русскую раскладку клавиатуры.
 +
 +===== load=module =====
 +
 +load=module[1];module[n]
 + Загрузка модулей из папки /optional/ на загрузочном устройстве. 
 + Модули разделяются ";" без пробелов.
 + Например: 'load=gimp;inkscape' - загрузка модулей, содержащих в названии строки 'gimp' и 'inkscape' 
 + из папки /porteus/optional
 +
 +===== login=user_name *=====
 +
 + Имя пользователя (можно 'root') для автологина
 + Если имя пользователя не указано, то загрузка приостанавливается на экране входа LXDM/KDM.
 +
 +===== lxde *=====
 +
 + Использовать рабочее окружение LXDE 
 +
 +===== mopt =====
 +
 + Настройка параметров монтирования файловых систем. По умолчанию : "noatime,nodiratime,suid,dev,exec,async". 
 + Каждый параметр разделяется с помощью "," без пробелов.
 + Например: 'mopt=realtime,sync,users,nosuid,noexec'. 
 +
 +===== noauto =====
 +
 + Отключить автомонтирование устройства во время загрузки. Каждый диск нужно будет монтировать вручную. 
 + Флэшка, подключенная до загрузки системы не автомонтируется
 +
 +===== nocd =====
 +
 + Не искать файлы на CD/DVD во время загрузки системы
 +
 +===== noeject =====
 +
 + Не извлекать CD/DVD диски во время загрузки и выключения.
 + Совместное использование 'copy2ram' и 'noeject' предотвратит размонтирование загрузочного устройства 
 + (CD/DVD, usb, card-reader, и т.д.). Чтобы извлечь CD вам нужно будет его отмонтировать из консоли,
 + вручную командами 'umount /mnt/sr0' и 'eject /dev/sr0' 
 +
 +===== nohd =====
 +
 + Не искать файлы на жестких дисках во время загрузки системы
 +
 +===== nohotplug =====
 +
 + Отключить автоопределение специфического оборудования в случае зависания системы. 
 + Использовуйте команду "modprobe" после входа в текстовый режим и загрузите необходимые драйвера вручную.
 +
 +===== noload=module =====
 +
 +noload=module[1];module[n]
 + Отключит загрузку перечисленных модулей. Распространяется на все модули, влючая папки /base и /modules
 + Пример: 'noload=kde' - отключит загрузку всех модулей с строчкой 'kde' в названиях. 
 + Полезен с 'copy2ram', потому, что лишние модули не будут копироваться в память. 
 + Можно указать много модулей с разделителем ";" без пробелов
 + Например: 'noload=lxde;devel' исключит загрузку модулей в названии которых содержатся строчки с 'lxde' и 'devel'
 +
 +===== nomagic *=====
 +
 + Не создавать "magic folders" во время загрузки. Полезно когда что-то пошло не так с настройками системы 
 + и вы хотите загрузиться в "Всегда свежый" ('Always Fresh') режим. Т.е. без сохранения
 +
 +===== nonetwork =====
 +
 + Отключает автоподключение к сети.
 + Внимание! Вносит изменения в систему, которые нужно восстанавливать вручную, 
 + поэтому рекомендуется использовать только в ("Always Fresh") режиме. 
 + Если вы проигнорировали этот совет и вам нужно восстановить ваше сетевое подключение, наберите в консоли:
 + chmod +x /etc/rc.d/rc.inet1 /etc/rc.d/rc.networkmanager
 + sed -i 's/Hidden=true//g' /etc/xdg/autostart/nm-applet.desktop
 +
 +===== norootcopy =====
 +
 + Не копирует файлы из папки rootcopy. Как и 'nomagic' полезен если что-то пошло не так с настройками 
 + и вы хотите загрузиться в 'Always Fresh' режим.
 +
 +===== noswap =====
 +
 + Запрещает автоматически использовать существующий раздел со swap (файл подкачки). 
 + По умолчанию система ищет на всех подключенных дисках swap-разделы и подключает их. 
 +
 +===== ramsize= =====
 +
 + Установить произвольный размер раздела с tmpfs, который используется как root (/) вашей live файловой системы,
 + т.е. когда изменения сохраняются только в памяти ('Always Fresh' режим, т.е. без использования changes=). 
 + Значение по умолчанию -- 60% доступной физической памяти (RAM).
 + Например: 'ramsize=40%'
 +
 +===== rammod= =====
 +
 +rammod=folder
 +rammod=module[1];module[n];folder[1];folder[2]
 + Работает только вместе с 'copy2ram'. Только модули, перечисленные в rammod= модуль(и) или папку(и) с модулями копируются в
 + память(RAM)
 + Это позволит вам иметь преимущество в скорости 'copy2ram' для наиболее часто используемых модулей, не занимая
 + оперативной памяти модулями, которые вы используете реже. Модули, не указанные в rammod= будут подключены с носителя и
 + Вы не сможете его извлечь во время работы системы
 +
 + Вы можете использовать полные или частичные названия модулей, но помните что все модули и папки, совпадающие с частью
 + названия будут загружены в папять (RAM); 
 + Если у вас есть дополнительные модули в папке с названием 'lxde' и вы используете 'rammod=lxde', 
 + тогда модуль 003-lxde.xzm из /base будет загружен дополнительно со всеми модулями в папке 'lxde'.
 +
 + 'rammod' нельзя использовать без 'copy2ram', и он так же не загрузит модули из /optional и прочих мест,
 + пока вы не укажите эти модули в  'load=' или 'extramod='.
 +
 +       Например:
 +       'rammod=001;002;004;firefox'
 +       'extramod=/mnt/sdb3/porteus/gimp rammod=001;002;gimp'
 +
 +===== rootcopy= =====
 +rootcopy=/путь/к_папке/с_файлами
 + Скопирует файлы из указанной папки прямо в live файловую систему.
 + Не рекомендуется использовать на fat и ntfs, т.к. на все файлы устанавливаются права 755 (чтение, запись и запуск) для всех. 
 + Эта папка будет использоваться вместо традиционной /rootcopy.
 + Например: 'rootcopy=/mnt/sda5/root-files'
 +
 +===== sgnfile= =====
 +
 + Указать идентификационный файл *.sgn, который система ищет при загрузке. 
 + Полезно если у Вас несколько копий системы на одном hdd(cd) диске. 
 + Должен находиться в каталоге дистрибутива (там же где base, modules ...)
 + Например: 'sgnfile=porteus-usb.sgn'
 +
 +===== timezone=region/zone *=====
 +
 + Полный список доступных временных зон можно найти в файле /usr/sbin/timeconfig
 + Например: 'timezone=Europe/Kiev'
 + Например: 'timezone=Factory'
 +
 +===== vga_detect *=====
 +
 + Автоматически определяет AMD или nVidia видео карты и загружает необходимые драйвера.
 + Модуль видео драйвера (nVidia или amd-catalyst) должен находиться в /optional/ и его название должны 
 + начинаться с 'nVidia-' или 'amd-catalyst'. Скрипт загрузки ищет модули драйверов по названию.
 + Позволяет переключатся между разными конфигурациями оборудования в то время как модули проприетарных 
 + драйверов (AMD, nVidia) могут находится вместе в папке /optional/ не мешая друг другу. 
 + Они активируются только когда потребуются.
 +=====volume======
 +
 + Устанавка громкости динамиков (Master Volume channel) на указанное значение (в процентах). 
 + Значение по умолчанию -- 75%.
 + Например: 'volume=0%' запустит сеанс графического интерфейса беззвучно.
 +
 +===== xfce *=====
 +
 + Использовать XFCE как рабочее окружение по умолчанию.
 +
 +===== zram ======
 +
 + Задейстует использование zram - блочного устройства внутри памяти (RAM) которое ведет себя как swap. 
 + Zram работает быстрее чем swap на жестком диске и создает больше (виртуальной) памяти чем использование 
 + только памяти (RAM), т.к. данные внутри сжаты. Это даст прирост производительности на системах с 
 + меньшим количеством памяти (RAM), но для этого используется больше частоты процессора (для компресси и 
 + декомпрессии данных) чем при работе со swap.
 + Не используйте вместе с обычным swap (на диске)
 +
 + Например: 'zram=33%' назначит 33% вашей памяти(RAM) для zram-диска.
 +
 +===== ПРИМЕЧАНИЕ ПО ИСПОЛЬЗОВАНИЮ 'LABEL' И 'UUID': =====
 +
 +  *Все части этих команд чувствительны к регистру. 
 +  *Используйте в терминале команду 'blkid', чтобы увидеть UUID и LABEL устройства. 
 +  *UUID и LABEL являются уникальными для вашего устройства. Файлы дистрибутива будут правильно найдены.
 +  *'LABEL' и 'UUID' можно использовать с любым cheatcode, содержaщим /путь 
 +
 +  Например:
 +  changes=UUID:СТРОКА-ЗНАЧЕНИЙ/путь/файл.dat
 +  extramod=LABEL:НазваниеВашейМетки/путь/к_папке/с_файлами
 +  from=UUID:СТРОКА-ЗНАЧЕНИЙ/путь/папка
 +  rootcopy=LABEL:азваниеВашейМетки/путь/к_папке/с_файлами
 +
 +===== ПРИМЕЧАНИЕ ПО ИСПОЛЬЗОВАНИЮ 'changes' ВМЕСТЕ С РАСШИРЕНИЕМ 'EXIT:': =====
 +
 +  *Расширение 'EXIT:' указывает 'changes=' сохранять все изменения, сделанные за время сеанса в памяти до перезагрузки/выключения. Запись изменений на диск производится 1 раз при корректмом выключении. 
 +  *Конструкция 'changes=EXIT:' имеет следующие преимущества:
 +    * Система работает так же быстко как и в 'Always Fresh' режиме т.к. все изменения производятся в памяти (RAM).
 +    * Уменьшенное количество цыклов чтения/записи должно продлить жизнь SSD. 
 +  *Единственный недостаток расширения 'EXIT:' при аварийном завершении работы (зависание, пропадание питания) все изменения будут утеряны. Используйте осторожно!
 +
 +  Например:
 +  changes=EXIT:/dev/device
 +  changes=EXIT:/path/
 +  changes=EXIT:UUID:STrING-0F-ChARACtERS/путь/файл.dat
 +
 +Примечание переводчика (for_vow) 
 +  *Для sdd и прочих [usbflash] устройств, использующих Nand-flash могла бы хорошо подойти f2fs (flash friendly filesystem дружественная к флеш" файловая система) активно внедряемая в последних версиях Puppy Slacko.
 +===== ПРИМЕЧАНИЕ ДЛЯ ИСПОЛЬЗУЮЩИХ LILO: =====
 +
 +  *Если был установлен загрузчик lilo, у вас будет текстовое меню со стандартными параметрами загрузки (KDE, LXDE, Always Fresh, и.т.д).
 +  *Используйте клавиши стрелок чтобы выделить желаемый путкт меню (если вы используете первое значение (KDE), нажмите down, потом up чтобы выделить KDE). Название вашего загрузочного параметра добавится в строку 'boot:' и вы сможете печатать cheatcodes после этого.
 +
 +  Например:
 +  boot:  KDE debug noauto - загрузить KDE со всеми стандартными кодами для KDE, плюс отладка и noauto. 
 +
 +  *Если хотите использовать LILO с настроеными вами cheatcodes при каждой загрузке без их ручного ввода - вы должны изменить /boot/syslinux/lilo.conf и потом повторить установку запустив утититу /boot/Porteus-installer-for-Linux.com  т.к. LILO должен перезагрузить свою конфигурацию.
 +
 +====== Доработки porteus-initrd для PuppyRus-A (расширение функционала) ======
 +В [[http://www.porteus.org/|porteus]] этот функционал отсутствует
 +  *Изменено расширение модулей. 
 +    *В porteus: .xzm. 
 +    *В PRA: .xzm и .pfs 
 +  *Изменено название модуля модулей ядра. 
 +    *В porteus: 000-kernel.pfs (в PRA тоже работает)
 +    *В PRA 000-kernel-версия_64.pfs, где "версия" - то что для этого ядра выводит uname -r. _64 - архитектура (для 32 -пусто). Из модулей ядра загрузится только 000-kernel-версия_64.pfs, и из видеодров загрузятся только для текущего ядра. Т.е. не надо в load= noload= писать фильтры для разных ядер
 +  *Cоздание /mnt/home - симлинк на раздел с файлами дистрибутива (как в puppyrus)
 +  *[[http://forum.puppyrus.org/index.php?topic=17946.0|Возможна работа с любыми aufs ядрами]]. Например от [[http://mirror.yandex.ru/mirrors/manjaro/pool/|manjaro]]
 +  *Убран raiserfsfsck
 +  *Изменен порядок слоев AUFS загружаемых модулей. 08*.pfs 09*.pfs всегда в верхнем слое
 +
 +
 +===== changes=RO: =====
 +
 +  *'changes' ВМЕСТЕ С РАСШИРЕНИЕМ 'RO:':
 +      *Расширение 'RO:' указывает 'changes=' подключаться в режиме "только чтение". Запись изменений в этом случае не производится.  RO можно использовать только с сохранением в файл. Монтируется в слой aufs выше всех .pfs перед rootcopy. С параметром copy2ram сохраненка копируется в память
 +      *Конструкция 'changes=RO:' имеет следующие преимущества:
 +        * Сохраненка "неубиваема".
 +        * В отличие от .pfs сохранения, возможно шифрование, но нет сжатия
 +
 +  Например:
 +  changes=RO:/path/файл.dat
 +  changes=RO:UUID:STrING-0F-ChARACtERS/путь/файл.dat
 +
 +===== dir= ===== 
 +Название каталога (не путь) с файлами дистрибутива. Обязательно указывать
 +  Например:
 +  dir=pra
 +===== sort= ===== 
 +Сортировка нумерных (название модуля начинается с трех цифр, например 001-Pra03arch12nos.pfs) модулей в AUFS
 +
 +Необязательный параметр. Удобен для многовариантной загрузки с компоновкой [[wpru>DE]] из модулей в /optional c помощью load=
 +  Например : 
 +  sort=456789 или sort=4-9
 +Модули, начинающиеся с 0xy- , будут загружены верхний слой AUFS по алфавиту (т.е. перекроют остальные модули)
 +   *x - указанное Вами маска в sort=
 +   *y - любая цифра
 +
 +<code>Например :
 +/mnt/sda1/pra3/base/000-kernel.pfs
 +/mnt/sda1/pra3/base/001-Pra03arch12nos.pfs
 +/mnt/sda1/pra3/base/040-jwm-pra3c.pfs
 +/mnt/sda1/pra3/base/070-Pra-151119.pfs
 +/mnt/sda1/pra3/base/089-pra-up.pfs
 +/mnt/sda1/pra3/base/090-save-150921net-pra.pfs
 +/mnt/sda1/pra3/modules/042-cow-notify-s04.pfs
 +/mnt/sda1/pra3/optional/075-Systemd-217-8-s03.pfs
 +
 +с sort=4-9 :
 +/mnt/sda1/pra3/base/000-kernel.pfs
 +/mnt/sda1/pra3/base/001-Pra03arch12nos.pfs
 +/mnt/sda1/pra3/base/040-jwm-pra3c.pfs
 +/mnt/sda1/pra3/modules/042-cow-notify-s04.pfs
 +/mnt/sda1/pra3/base/070-Pra-151119.pfs
 +/mnt/sda1/pra3/optional/075-Systemd-217-8-s03.pfs
 +/mnt/sda1/pra3/base/089-pra-up.pfs
 +/mnt/sda1/pra3/base/090-save-150921net-pra.pfs
 +</code>
 +
 +
 +====== Прочие параметры загрузки ядра ======
 +===== Стандартные =====
 +http://man7.org/linux/man-pages/man7/bootparam.7.html
 +https://www.kernel.org/doc/Documentation/x86/x86_64/boot-options.txt
 +==== quiet ====
 +Уменьшает вывод на экран и ускоряет загрузку
 +==== modprobe.blacklist ====
 +Запрет загрузки модулей ядра.
 +
 +Например : Отключить ip версии 6 и встроенный динамик 
 +  modprobe.blacklist=pcspkr,ipv6
 +
 +=====  Systemd=====
 +Только при использовании [[wpru>systemd]]
 +==== 1 - восстановительный режим ====
 +  *примерно соответствующего прежнему уровню выполнения 1
 +  *Например,  **загрузиться в консоль без Х.**
 +  *Это режим эффективен для решения проблем, возникающих на этапе запуска обычных служб, когда ключевые компоненты системы уже инициализированы. В такой ситуации, вы можете просто отключить проблемную службу.
 +
 +==== emergency - аварийный режим ====
 +Если загрузка не доходит даже до восстановительного (1) режима — попробуйте менее требовательный, аварийный (emergency)
 +режим.
 +
 +
 +==== systemd.unit= ====
 +Стандартная цель - default.target, которая по умолчанию является псевдонимом юнита graphical.target (примерно соответствующего прежнему уровню выполнения 5). Для изменения цели при загрузке по умолчанию, добавьте следующий дополнительный параметр ядра в вашем загрузчике:
 +  *systemd.unit=multi-user.target (что примерно соответствует прежнему уровню выполнения 3),
 +  *systemd.unit=rescue.target (что примерно соответствует прежнему уровню выполнения 1).
 +
 +==== net.ifnames=0 biosdevname=0==== 
 +Чтобы имена интерфейсоы не менялись - с systemd используйте в menu.lst параметр ядра net.ifnames=0 biosdevname=0
 +
 +Всегда будет eth0 wlan0
 +====== Утилиты, совместимые с porteus-initrd  ======
 +  *[[http://forum.puppyrus.org/index.php/topic,13900.msg76616.html#msg76616|freememapplet_tray]] 
 +  *trayinfo
 +
 +
 +======Сохранение сессии======
 +3 основных стратегии:
 +  -Весь софт и сохранение модулями. Удобно для мобильного использования. Неубиваемо неосторожными действиями пользователя. Файловая система - любая
 +  -Большая сохраненка в раздел (каталог). Софт доустанавливается пакетным менеджером. Это почти обычная установка. Разница только в том, что можно иметь несколько сохранений для разных случаев и экспериментов. Удобно для стационарного использования. Невозможно на fat, ntfs (но можно сделать сохранение в файл). **НЕЛЬЗЯ создавать** changes=директория u /rootcopy **на fat, ntfs**. Будут сломаны права на файлы. 
 +  -Весь софт и сохранение модулями. /home (или его часть, например профиль браузера, вынесены симлинком на ext раздел). Т.е. среднее между 1 и 2. Сделать:
 +    -Закрыть все приложения или выйти из Х
 +    -В файл менеджере, запущенном от root - перенести с сохранением прав /home на ext раздел
 +    -sudo ln -s /путь_к_home_на_ext /home 
 +    -Сделать сохранение в модуль
 +
 +Далее рассмотрены варианты этих стратегий
 +==== Модуль сохранения.pfs ====
 +  *Вместе с [[soft/porteus-initrd?&#copy2ram|copy2ram]] позволяет иметь полностью настроенную под Ваши нужды и загруженную в память неизменяемую систему. Удобно для работы с flash (нет износа и тормозов при записи)
 +  *Скрипт //create-save-pfs// (Меню - настройки - Создание файла сохранения.pfs)
 +==== rootcopy ====
 +**Альтернатива** - использовать [[soft/porteus-initrd?&#rootcopy|rootcopy]]. В отличие от [[soft/porteus-initrd?&#changesdevdevice|changes]] ее содержимое не изменяется в процессе работы и все содержимое находится в памяти. Удобно для тестирования изменений, которые потом будут добавлены в сохраненку.pfs
 +
 +Неудобства rootcopy:
 +  *Необходимо размещение на ext разделе
 +  *Файлы находятся в памяти в несжатом виде
 +  *При загрузке тратится время на копирование в память
 +==== Сохранение в каталог, раздел, файл-контейнер.dat ====
 +
 +  -[[soft/porteus-initrd#changes|RW (read\write чтение\запись) сохраненка]]. 
 +    -Достоинства: 
 +      *Все изменения записываются сразу. Сессия сохранена даже при аварийном выключении 
 +    -Недостатки:
 +      *Хранение в несжатом виде.
 +      *Сохранение в файл наиболее неудобно. актуально только на fat ntfs. 
 +      *Неосторожные действия пользователя могут привести к незагружаемой системе и любым другим проблемам. Делайте резервные копии сохраненок
 +      *Износ флэшки, расход батареи
 +  -[[soft/porteus-initrd#%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%87%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BF%D0%BE_%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8E_changes_%D0%B2%D0%BC%D0%B5%D1%81%D1%82%D0%B5_%D1%81_%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC_exit|RW сохраненка с записью при завершении работы]]
 +    -Достоинства:
 +      *Нет износа флэшки, расхода батареи
 +    -Недостатки:
 +      *Потеря данных при аварийном выключении
 +  -R модуль сохранения.pfs
 +    -Достоинства:
 +      *При [[soft/porteus-initrd#copy2ram|copy2ram]] нет износа флэшки, расхода батареи
 +      *Размещение на любой файловой системе
 +      *Неубиваемость
 +      *Хранение данных в сжатом виде
 +    -Недостатки:
 +      *Потеря данных при аварийном выключении
 +      *Необходимость пересборки или иерархии (несколько сохраненок.pfs накладывающихся друг на друга)
 +
 +==== Шифрование файла сохранения ====
 +В дистрибутиве присутствует cryptsetup ([[wpru>LUKS]]) и соответствующие модули ядра. Доступен [[https://wiki.archlinux.org/index.php/Dm-crypt|весь его функционал]].
 +
 +Кроме того есть возможность шифрования RW(read\write; запись\чтение; changes=/path/file.dat ) и [[http://wiki.puppyrus.org/soft/porteus-initrd?&#%D0%B4%D0%BE%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_porteus-initrd_%D0%B4%D0%BB%D1%8F_puppyrus_%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D0%B5_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D0%B0|RO(read only;]] только чтение; changes=RO:) [[http://wiki.puppyrus.org/soft/porteus-initrd#changes|сохранения в файл]]. Такой файл создается "Меню-Настройка-Создание файла сохранения"
 +==== Сохранение настроек только определенных программ ====
 +Например, все настройки статически в RO сохраненке.pfs, а настройки браузера хочется динамически сохранять в RW . Переносим только директорию с настройками браузера на носитель. В профиле делаем [[wr>симлинк]] на перенесенное.
 +
 +Это нечто среднее между сохранением в модуль и в папку
 +
 +
 +
  
Печать/экспорт