Дистрибутивы проекта PuppyRus Linux > LupuRus Bit

S-Frugal - автоподключение .SFS при загрузке системы

(1/6) > >>

sfs:
s-frugal (super-frugal или SF или Конструктор). Текст шапки обновляется по мере развития идеи.
Докумендация в wiki

Методика позволяет подключать:
1. Разделы hdd,cd (скрипт mountall http://forum.puppyrus.org/index.php/topic,10474.0.html)
2. Модули.sfs (скрипт automntsfs ) выше и ниже базового.sfs
    автоматически, при загрузке системы без сохраненки и с минимумом трудозатрат и навыков
3. home директории, сохнаненные на ext разделе
4. В начало /root/.xinitrc скрипт /usr/local/bin/xinitrc_local.
--- [ Читать далее ] ---
Его создает пользователь, при отсутствии - ничего не происходит).  /root/.xinitrc автоматически патчится скриптом rc.sfrugal. Удобно для манипуляций с дисплеем и его разрешением
--- Конец цитаты ---

Примеры параметров ядра: sfsdiru=sad1:/sfsdiru/_stand-f.lst sfsdir=_sfs:mc,firef mountall=sda1,sda2 home=sda2:/pp/root
Лог работы: /var/log/rc.frugal.log
Применима в любом puppy и вообще в любом aufs frugal дистрибутиве (все ubuntu-debian версии desktop, porteus ...)

Позволяет:
a. Конструировать свой дистрибутив не ломая исходных блоков.
b. Легко патчить (модуль.sfs поверх базы)
с. Легко находить проблему (медодом отключения модулей)
d. Неубиваемый дист
e. Сохраненки в виде модулей.sfs или папок
f. Multi-kernel, multi-wm

Реализация идеи:

* s-frugal-hard. Модификация initrd http://forum.puppyrus.org/index.php/topic,10450.0.html
* s-frugal-light
Использование s-frugal-light:
--- [ Читать далее ] ---
Нужно пересобрать базовый sfs. Можно unsquashfs+mksquashfs (без remasterpup)
Последняя версия скриптов и примеры http://www.mediafire.com/?emy94x1k6tgfc
s*frugal*.tar.bz2 - инъекция базового.sfs
Справка по ключам в аттаче  
Далее частично устаревшее:

Добавить в /etc/init.d/.
/etc/init.d/01automntsfs

--- Код ---
#!/bin/sh
mountall #если нужно монтировать все разделы.
automntsfs _sfs MNT_LupuRus520_1#монтировать раздел с папкой дистрибутива и подключить все *.sfs из папки _sfs (в корне раздела c дистрибутивом). Второй параметр - способ монтирования - зависит от дистрибутива
#automntsfs _sfs2 (можно изменить или монтировать несколько папок)
#опционально здесь же можно распаковать в корень архив - пропатчить базовый sfs без его изменения

--- Конец кода ---
01 в названии - чтобы запустился в 1ю очередь
Использовать в xinitrc - плохая идея (при выходе из Х будет пытаться монтировать повторно)
Можно запускать вручную для загрузки "всех модулей из папки"
В варианте MNT_LupuRus520 - не создает loop. Поэтому >10 не загрузить. Можно дописать, но в MNT_LupuRus520_1 и так все ОК

Удалить в базовом sfs /etc/windowmanager
Дописать в /root/.xinitrc "echo..."

--- Код ---
which $CURRENTWM && exec $CURRENTWM
[ -x $CURRENTWM ] && exec $CURRENTWM
echo jwm >/etc/windowmanager #чтобы при отсутствии вашей_wm.sfs запускалась "родная " wm
exec jwm

--- Конец кода ---

--- Конец цитаты ---

Примеры использования:

--- [ Читать далее ] ---
http://forum.puppyrus.org/index.php/topic,9669.0.html - зарождение идеи, устаревшее
http://forum.puppyrus.org/index.php/topic,10708.msg57570.html#msg57570 slacko-5.3-pae-rus-sf.iso sf ver.1
http://uco.puppyrus.org/forum/thread176.html
http://forum.puppyrus.org/index.php/topic,12248.msg65813.html#msg65813

--- Конец цитаты ---

Zay:
Протестировал, работает хорошо.

Немного модифицировал скрипт:
Не понял, зачем выносить скрипт в WM? Встроил его в базовый SFS и переименовал в rc.loadsfs.
Перенес строку запуска из sysinit в rc.local (плюс - легко изменить или отключить пользователю).
Название каталога с SFS передаётся скрипту при запуске, изменено на "load_sfs".

Во вложении - модифицированный вариант скрипта.
UPD: Вложение удалено, скрипт обновлён (см. ниже).

sfs:

--- Цитата: Zay от 02 Ноябрь 2011, 14:21:17 ---зачем выносить скрипт в WM?
--- Конец цитаты ---
чтобы запустить патч базы.sfs (распаковать архив на / с заменой файлов)
Для разных вм - разные патчи
Если патч нужен - принципиально держать rc.local2 в вм
Остальное - косметика
Тут много чего можно накрутить в зависимости от конкретной задачи
вплоть до : в базе ядро и по мелочи, остальное по разделам в .sfs через s-frugal
...только надо ли...
Выносить имеет смысл часто обновляемые проги (браузер)

Zay:
ИМХО, loadsfs - полезная возможность, зачем привязывать её к WM?


--- Цитата: sfs от 02 Ноябрь 2011, 17:05:46 ---чтобы запустить патч базы.sfs (распаковать архив на / с заменой файлов)
--- Конец цитаты ---
Это - отдельная задача (запуск скрипта из WM).
Почему не использовать init.d для этого?

pureproft:
sfs,
--- Цитата: sfs от 02 Ноябрь 2011, 17:05:46 ---в базе ядро и по мелочи, остальное по разделам в .sfs через s-frugal
--- Конец цитаты ---
а вот этого по аналогии со slax (и проч. на линукслайв скриптах типа MagOs) я лично жду давно.... осталось ещё сохранёнку пустить в папку и руткопи  сделать...
в slax например для работы системы достаточно  001-core.lzm,002-xorg.lzm... т.е. база под какоето приложение (не кдешное конечно) упакованое в модуль со своими зависимостями... там ещё и это зарыто, о чём не кто не помнит autoexec=startx~/usr/lib/X11/xinit/xinitrc.fluxbox;telinit~4;poweroff..... т.е. даже в старом добром слаксе лишнее есть.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии