Форум проекта PuppyRus Linux

Разработки проекта PuppyRus => Разработка PFS и Initrd => Тема начата: Harzah2 от 29 Октябрь 2020, 08:40:36

Название: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 29 Октябрь 2020, 08:40:36
Сделал (для дистрибутива на основе Debian) возможность загрузки полностью в ОЗУ. Сам код я брал из статей в интернете, 2011 и 2015 годов. Всё работает, но меня интересует возможность сделать так же, только для Gentoo, кто поможет разобраться? Моя заметка (https://harzah.ru/node/1737) на эту тему.

Разница в том, что Debian использует mkinitrd, а Gentoo - dracut или genkernel. Куда можно положить похожий код, не могу понять. Или может есть какой-то альтернативный вариант поместить всю систему в память?

Способ:
1. В файле /usr/share/initramfs-tools/scripts/local ищем на строках 179-185 (предварительно сделав бэкап файла):

Код
	checkfs "${ROOT}" root "${FSTYPE}"

# Mount root
# shellcheck disable=SC2086
if ! mount ${roflag} ${FSTYPE:+-t "${FSTYPE}"} ${ROOTFLAGS} "${ROOT}" "${rootmnt?}"; then
panic "Failed to mount ${ROOT} as root file system."
fi
И меняем этот код на такой:
Код
	#checkfs "${ROOT}" root "${FSTYPE}"

# Mount root
# shellcheck disable=SC2086
mkdir /ramboottmp
mount ${roflag} -t ${FSTYPE} ${ROOTFLAGS} ${ROOT} /ramboottmp
mount -t tmpfs -o size=100% none ${rootmnt}
cd ${rootmnt}
cp -rfa /ramboottmp/* ${rootmnt}
umount /ramboottmp
2. Сохраняем файл. И вводим команду в терминале от рута:
Код
mkinitramfs -o /boot/initrd.img-ramboot
3. Проверяем, что файл создан в папке /boot и возращаем старый local в папке  /usr/share/initramfs-tools/scripts/local на место (или удаляем все наши изменения, которые мы сделали в шаге 1).
4. Идём в папку /etc и находим файл fstab, сохраняем его копию и редактируем его, ищем в первых строках что-то вроде этого:

Код
UUID=35378150-4a4b-4405-b856-c5f533a971e2 / ext4 defaults 1 1
и меняем на:
Код
none / tmpfs defaults 0 0
5. Сохраняем и идём в папку /boot/grub, находим grub.cfg и изменяем (предварительно сохранив копию) эти строки 106-121:
Код
menuentry 'MX 19.2 patito feo, with Linux 4.19.0-12-amd64' --class mx --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.0-12-amd64-advanced-35378250-4a4b-4405-b956-c5f546a970e2' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd2,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd2,msdos3 --hint-efi=hd2,msdos3 --hint-baremetal=ahci2,msdos3  35378250-4a4b-4405-b956-c5f546a970e2
else
  search --no-floppy --fs-uuid --set=root 35378250-4a4b-4405-b956-c5f546a970e2
fi
echo 'Loading Linux 4.19.0-12-amd64 ...'
linux /boot/vmlinuz-4.19.0-12-amd64 root=UUID=35378250-4a4b-4405-b956-c5f546a970e2 ro  quiet hush
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.19.0-12-amd64
}
на тот код, что находится ниже, то есть, просто добавляем ещё одно меню, немного видоизменённое в названии и на строчке initrd (для других систем, этот код меню, естественно, будет другой, но те изменения, которые сделали мы, будут те же самые):
Код
menuentry 'RAMBOOT' --class mx --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.0-12-amd64-advanced-35378250-4a4b-4405-b956-c5f546a970e2' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd2,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd2,msdos3 --hint-efi=hd2,msdos3 --hint-baremetal=ahci2,msdos3  35378250-4a4b-4405-b956-c5f546a970e2
else
  search --no-floppy --fs-uuid --set=root 35378250-4a4b-4405-b956-c5f546a970e2
fi
echo 'Loading Linux 4.19.0-12-amd64 ...'
linux /boot/vmlinuz-4.19.0-12-amd64 root=UUID=35378250-4a4b-4405-b956-c5f546a970e2 ro  quiet hush
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-ramboot
}
menuentry 'MX 19.2 patito feo, with Linux 4.19.0-12-amd64' --class mx --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.0-12-amd64-advanced-35378250-4a4b-4405-b956-c5f546a970e2' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd2,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd2,msdos3 --hint-efi=hd2,msdos3 --hint-baremetal=ahci2,msdos3  35378250-4a4b-4405-b956-c5f546a970e2
else
  search --no-floppy --fs-uuid --set=root 35378250-4a4b-4405-b956-c5f546a970e2
fi
echo 'Loading Linux 4.19.0-12-amd64 ...'
linux /boot/vmlinuz-4.19.0-12-amd64 root=UUID=35378250-4a4b-4405-b956-c5f546a970e2 ro  quiet hush
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.19.0-12-amd64
}

Второй способ:
Тут (https://forum.puppyrus.org/index.php?topic=23019.msg172690#msg172690).
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: sfs от 29 Октябрь 2020, 09:35:25
возможность загрузки полностью в ОЗУ
http://wiki.puppyrus.org/setups/start#frugal_initrd В большинстве live дистров такой функционал "из коробки"
Разница в том, что Debian использует mkinitrd
Можете подсунуть любой инитрд от любого дистра с copy2ram. Только модули ядра поменяйте на свои или используйте наши или porteus ядра с монолитными ФС и пр.
Только он после этого сам обновляться не будет при смене ядра и т.п.
Gentoo - dracut
http://wiki.puppyrus.org/soft/uird

Чем нравится гента? Пересобрать ВСЕ полностью можно в любом дистрибе. А смысл? Пересобрать только некоторые проги не достаточно?
В том же арче в aur , вроде рецептов сборки побольше , чем в генту

Моя заметка на эту тему
Для каких задач, если не секрет, у Вас 20gb RAM ?  ;)

В итоге :
1. Не изобретайте велосипед. Есть куча готовых решений. Подключайтесь к работе над наиболее Вам подходящим
2. Не надо переоценивать copy2ram (http://forum.puppyrus.org/index.php?topic=17528.msg108899#msg108899)
3. Не теряйтесь. Заинтересованные люди, способные что-то делать с результатом очень нужны нашему форуму
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 11:23:00
Можете подсунуть любой инитрд от любого дистра с copy2ram.
Хм, надо попробовать.

Чем нравится гента? Пересобрать ВСЕ полностью можно в любом дистрибе. А смысл?

Calculate нравится. Стабильностью, пакетами, да и вообще удобно в нём, настраивается всё так, как мне надо и удобно. Большой репозитарий. Компилировать как раз и не обязательно, так как в основном всё бинарное идёт, а компиляция нужных мне программ не такая уж и долгая. Также нравится, что из коробки нет systemd и можно настроить ALSA или Pulseaudio.

Пробовал неоднократно тот же MX Linux, Debian, Ubuntu, но они все ломаются периодически, надо заново перестанавливать на новый раздел. А Calculate живёт столько, сколько живёт твой жёсткий диск. PuppyLinux тоже пробовал и мне он нравится. Но невозможность убрать всё из Puppy мне не нравится. То есть, я хочу чистый Линукс, без всяких дополнительных утилит, которые невозможно удалить, но вместе с тем, чтобы он нормально работал.Например, в Calculate есть CLS, вообще без графических утилит, но с иксами. Пользуясь USE-флагами я могу собрать то, что мне надо и это будет совместимо с Calculate Linux, то есть я также смогу удалять и устанавливать программы. Более того, мне кажется для Puppyrus оверлеи Генту - это именно то, что нужно, чтобы одновременно иметь и большой выбор программ и свои настройки...

Арч мне разонравился, так как они изменили своей идеологии (KISS), впихнув в дистрибутив systemd, монстра, который не нужен и содержит в себе то, что не должно быть в системе инициализации дистрибутива. Также то, как его продвигают и впихивают везде вызывает отторжение и желание от него избавиться.

Для каких задач, если не секрет, у Вас 20gb RAM ?
В основном для виртуальных машин. Если запущены несколько, то нужно много оперативной памяти. Плюс, я присматриваюсь к Qubes OS. Но так как он пока на Fedora основан (а в ней всё тот же systemd), то буду ждать каких-нибудь кастомных сборок или изменения дистрибутива по умолчанию в Qubes OS.

Не изобретайте велосипед. Есть куча готовых решений. Подключайтесь к работе над наиболее Вам подходящим
Да есть. И если бы в Puppyrus Linux было возможно создать свой чистый iso (без папирусовских утилит) и можно было бы подключить репозитарий Calculate, я бы выбрал такой Puppyrus. Просто сохранёнка, XFCE, работа полностью в RAM. Мне, по сути не так много нужно. Вы делаете большую работу, создавая отдельный дистрибутив, создаёте свои ядра и программы. Почему вы не посмотрите на готовые решения? Тот же AppImage позволит использовать программы и не надо создавать отдельный репозитарий своих программ. Более того, эти программы загружались бы где угодно.

Не надо переоценивать copy2ram
Я не переоцениваю, на самом деле. Просто это на самом деле удобно, быстро, безопасно и полностью имеешь контроль над системой. Что удалять, что сохранять всё в твоих руках, так как копия файлов расположена на HDD.

Не теряйтесь. Заинтересованные люди, способные что-то делать с результатом очень нужны нашему форуму
Да я, как-бы, давний пользователь этого форума. Просто больше читаю, потому и захожу редко. А так, наблюдаю за развитием Puppyrus. Помню ещё пользовался вашим дистрибутивом SFSLinux (самоделка).
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: krasnyh от 29 Октябрь 2020, 11:44:04
http://wiki.puppyrus.org/soft/uird
Calculate нравится.
Пробовал Funtoo (https://www.funtoo.org/Install/ru) запустить с uird, фулл. Привлекла эта система подсобранными сборками под субархитектуру (https://www.funtoo.org/Subarches) процессора (core2, intel64-skylake...).
Плюс на выбор для каждого процессора три вида сборок:
Цитата
Выбор stage3 для ...
    stage3 является более традиционной, минимальной и неграфической установкой Funtoo. YЗатем вы соберете свою систему до желаемого состояния, используя emerge.

Выбор gnome для...
    gnome установочного образа, если таковой имеется, включает в себя полную среду GNOME, а также Firefox уже оптимизированый для вашего оборудования. После установки вы можете продолжить дальнейшую настройку системы.

Выбор lxd для...
    Образ lxd предназначен для использования с LXD и не используется для установки непосредственно на настольный компьютер или ноутбук, поэтому вам не следует выбирать этот вариант для обычных установок.

Но что-то не пошло. Uird отработал, а дальше... курсор мигает и не понятно, то ли копирует систему в память, то ли еще что.


Может betcher глянет, как будет время, что там не работает.
Моя запись в menu.lst:
title ▒▒ Funtoo  UIRD загрузка FULL  чистый режим + конфиг: legacy + uird.shutdown + uird.preinit
root (hd0,2)
set d=funtoo
set k=kernel-debian-sources-lts-x86_64-4.19.132
kernel /%d%/boot/%k% uird.basecfg=legacy uird.from=/dev/sda3;/%d%::FORCE=yes::TIMEOUT=3 uird.shutdown uird.preinit uird.union=overlay
initrd  /%d%/boot/uird.funtoo.cpio.xz

Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: sfs от 29 Октябрь 2020, 11:53:38
невозможность убрать всё из Puppy мне не нравится. То есть, я хочу чистый Линукс, без всяких дополнительных утилит, которые невозможно удалить,
Это вы пишете про классический puppy - woof. Вроде, там тоже есть ремастеринг
Там сейчас есть целая линейка дистров с apt - DebianDog
Ну и мои дистры все с ПакетнымМенеджером. Можете пересобрать (http://wiki.puppyrus.org/puppyrus/pra-roll#%D1%81%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D0%B0%D1%8F_pacstrap_%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_arch_%D0%B8%D0%B7_%D0%BF%D0%B0%D0%BA%D0%B5%D1%82%D0%BE%D0%B2_%D0%B4%D0%BB%D1%8F_%D0%BE%D0%BF%D1%8B%D1%82%D0%BD%D1%8B%D1%85)
USE-флагами
оверлеи Генту
Слабо знаком с Генту. Можно подробнее
Арч мне разонравился, так как они изменили своей идеологии (KISS), впихнув в дистрибутив systemd
http://forum.puppyrus.org/index.php?topic=23018.0
если бы в Puppyrus Linux было возможно создать свой чистый iso (без папирусовских утилит)
Я же выше написал - как это сделать.
Ну или универсально  : распаковываете нужный дистр + chroot + ПМ добавить \ удалить
Ядро (с AUFS (http://wiki.puppyrus.org/setups/start#aufs) или  overlayfs) и инитрд - любые (http://wiki.puppyrus.org/setups/start#frugal_initrd) с сохраненкой и copy2ram
AppImage позволит использовать программы и не надо создавать отдельный репозитарий своих программ
http://forum.puppyrus.org/index.php?topic=20026.msg134598#msg134598
эти программы загружались бы где угодно.
Это не так. Нередко либ не хватает
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: DdShurick от 29 Октябрь 2020, 11:54:59
создать свой чистый iso
До какой степени "чистый"?
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 12:25:27
курсор мигает и не понятно, то ли копирует систему в память, то ли еще что

Да, если курсор мигает, это он загружает в память файловую систему. Во всяком случае, у меня - так. Ждал 7 минут 10 секунд, пока система полностью не загрузилась. С Puppyrus тут, конечно, не сравнить...

Там сейчас есть целая линейка дистров с apt - DebianDog
Ну и мои дистры все с ПакетнымМенеджером. Можете пересобрать
То что можно пересобрать, это как раз понятно. В принципе, любой Линукс можно пересобрать, но как раз в этом и состоит идея, чтобы изначально там ничего не было, кроме разве что Gparted. И всё устанавливалось бы дополнительно самим пользователем. Только то, что ему нужно. В Puppyrus Linux же утилит всяких забито, которыми и не воспользуешься никогда, а чтобы всё это удалить, надо пересобирать. А чтобы установить новую версию Puppyrus, надо его заново устанавливать, а потом опять его пересобирать и так каждый раз. В Calculate я этого лишён... устанавливаю только то, что нужно, не более, а изначально там и нет ничего.
Слабо знаком с Генту. Можно подробнее
Вся фишка Gentoo в том, что его оверлеи это как-бы параллельные срезы ОС, разных Генту, со своими настройками и тд. То есть, имея Calculate Linux я спокойно могу устанавливать пакеты из других оверлеев и даже настраивать их на свой лад, используя для этого USE-флаги.

Насколько я знаю, ни один дистрибутив Линукса не имеет подобных возможностей. Компиляция, сборка под свою систему - это всё вторично на фоне гибкости Генту, в плане настроек.

впихнув в дистрибутив systemd
http://forum.puppyrus.org/index.php?topic=23018.0
Это хорошо, что в Puppyrus его нет, но вам нужно проделывать каждый раз работу, чтобы от него избавиться, а в Генту этой проблемы нет. Есть Openrc... а остальное каждый настраивает сам.
Я же выше написал - как это сделать.
Ну или универсально  : распаковываете нужный дистр + chroot + ПМ добавить \ удалить
Так это получается каждый раз так надо делать, нужно более универсальное решение. Чтобы можно было нормально обновляться и тд. Но надо посмотреть, как это будет выглядеть, если скрестить Puppyrus с Calculate.

Это не так. Нередко либ не хватает
Это понятно. Но это более универсальное решение, чем всякие флатпаки и снапы. Во всяком случае, пересобирать пакеты надо куда как реже.
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: sfs от 29 Октябрь 2020, 12:26:41
Перечисленными выше методами - любой чистоты в любом ее понимании
И кстати про фругализацию чего угодно  (http://forum.puppyrus.org/index.php?topic=21204.0)
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 12:29:18
До какой степени "чистый"?

Полностью чистый, без программ. С XFCE или LXQT (и возможностью удалить и тот и другой). Пусть будет сохранёнка и работа в RAM. Больше то ничего и не нужно, для остального есть репозитарий программ. Если репозитария нет (пакетного менеджера в самом дистрибутиве), то ещё нужен браузер.
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 12:44:15
Перечисленными выше методами - любой чистоты в любом ее понимании
И кстати про фругализацию чего угодно  (http://forum.puppyrus.org/index.php?topic=21204.0)

На самом деле, будь я разработчиком Puppyrus, я бы создал единый дистрибутив с разными графическими средами, более того, модули позволяют в Puppyrus менять всё, даже ядра. Я бы всё в одном дистрибутиве разместил и для старого оборудования и для нового и последовательно бы пробовал подключать. Если Puppyrus загрузился с модулем для старого оборудования, то его и загружаем, не загрузился, тогда следующий вариант. При установке дал бы выбрать разные графические среды, в которых бы было минимум программ (а лучше вообще чтобы ничего не было), с возможностью всё подключить или установить.

Обеспечил бы Puppyrus репозитарием программ. Неважно каким, но чтобы он работал из коробки. И не рушил бы систему ненужными зависимостями. Кстати, кроме Генту оверлея я и не знаю других таких же, остальные все пытаются своё навязать. И всё, идеальная система готова. Её можно будет обновлять по типу роллинг-релиза, держать в памяти, использовать сохранёнку. Параллельно можно создать свой репозитарий AppImage программ.
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: sfs от 29 Октябрь 2020, 12:53:22
в этом и состоит идея, чтобы изначально там ничего не было,
Любой мой дистр без подпапок /modules и /optional
всё устанавливалось бы дополнительно самим пользователем
Возьмите squash из  родного Arch исо. Там консоль+pacman
чтобы установить новую версию Puppyrus, надо его заново устанавливать, а потом опять его пересобирать и так каждый раз.
Вы пересказали идею prar - установил 1 раз как фул. Обновляй штатно. Переводи во фругал по желанию
Вся фишка Gentoo в том, что его оверлеи это как-бы параллельные срезы ОС, разных Генту, со своими настройками и тд. То есть, имея Calculate Linux я спокойно могу устанавливать пакеты из других оверлеев и даже настраивать их на свой лад, используя для этого USE-флаги.
Можно еще подробнее...
Эти "параллельные срезы " чем друг от друга отличаются?
https://old.calculate-linux.org/main/ru/use_flags - по итогу прогу надо перекомпилять? я правильно понял?
Допустим мне надо свежий transmission gtk2. А он есть только gtk3. Чем мне поможет USE=gtk2
В итоге если пересобирать всю систему что-то оптимизировать можно, но из неопытных рук, скорее всего выйдет нерабочее или глюкалово

Подобное можно в любом линуксе (на примере арча):
Хочу избавиться от gtk2 :
paxman -Rs gtk2 покажет каким прогам он нужен
Удаляю их или перекомпиляю на другое
Компиляция, сборка под свою систему - это всё вторично на фоне гибкости Генту, в плане настроек.
Давайте мухи отдельно - котлеты отдельно
Есть исходники - одни для всех линуксов
Есть система сборки из них разных дисторв. Кому какая удобнее
Некоторые дистры что-то по мелочи патчат
Все. Дальше стандартная компиляция. Нигде больше никаких чудес нет и быть не может

Можете взять рецепты компиляции от деб и собрать их в ABS (https://wiki.archlinux.org/index.php/Arch_Build_System_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9))
получите дебиан с pacman  (http://forum.puppyrus.org/index.php?topic=21949.msg160245#msg160245)
Минус такого - может получиться совместимо только само с собой. Т.е. придется все компилить именно под это
Вот Вам и вся гента, как я ее понимаю
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: sfs от 29 Октябрь 2020, 13:02:44
Пусть будет сохранёнка и работа в RAM.
Для этого достаточно инитрд
На самом деле, будь я разработчиком Puppyrus, я бы создал единый дистрибутив с разными графическими средами, более того, модули позволяют в Puppyrus менять всё, даже ядра
http://forum.puppyrus.org/index.php?topic=22043.0 не смотрели?
Можно менять все вами перечисленное + даже арч<->деб
с модулем для старого оборудования
Чем он должен отличаться от модуля для нового?
Обеспечил бы Puppyrus репозитарием программ
Обеспечил (http://wiki.puppyrus.org/puppyrus/pra-roll#%D1%80%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B8_pra)
Её можно будет обновлять по типу роллинг-релиза, держать в памяти, использовать сохранёнку
http://wiki.puppyrus.org/puppyrus/pra-roll
Про все это в шапке

Короче - ставьте prar2008 и подключайтесь к доработке
Там есть все вами перечисленное
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 13:20:47
Любой мой дистр без подпапок /modules и /optional
Да, но все остальные утилиты присутствуют? В меню же много программ, откуда они? Во всяком случае, когда я последний раз пробовал Puppyrus PRA там все программы были, чистого Puppy я не видел...

Возьмите squash из  родного Arch исо. Там консоль+pacman
Так в Calculate ещё лучше, без systemd.
Вы пересказали идею prar - установил 1 раз как фул. Обновляй штатно. Переводи во фругал по желанию
Немного не так, но похоже: Установи на диск. Обновляй штатно. Используй в RAM.
Именно использование в памяти и должно быть основным.
Допустим мне надо свежий transmission gtk2. А он есть только gtk3. Чем мне поможет USE=gtk2
В итоге если пересобирать всю систему что-то оптимизировать можно, но из неопытных рук, скорее всего выйдет нерабочее или глюкалово
Он поможет как раз тем, что не надо пересобирать всю систему, а нужно будет пересобрать transmission c USE-флагом gtk2. И всё... На остальное это никак не повлияет. Срезы как раз и отличаются различными USE-флагами для программ. И как раз ничего глючного не будет, в этом то и фишка Gentoo, потому что у других дистрибутивов именно глюкодром и получается, так как нет единой системы. Для Генту сборка - это естественное поведение программ, для других дистрибутивов - нет. В этом вся разница.

А оверлеи Генту - это возможность создать свой дистрибутив на основе своих настроек, плюс возможность не поломать свой дистрибутив используя другие оверлеи. И для этого есть все возможности.
Можете взять рецепты компиляции от деб и собрать их в ABS
получите дебиан с pacman
Минус такого - может получиться совместимо только само с собой.
Если менять настолько глубоко, то да. Но я не говорю о менеджере пакетов, я говорю о настройках для него. В других дистрибутивах вам надо или создавать полностью свой репозитарий программ или как в Арче, замораживать его. А в Генту можно просто использовать свой оверлей только с необходимыми изменениями, не нужно полностью копировать другие оверлеи. Например, только свои бинарные сборки и всё. Не нарушается ни целостность дистрибутива, ничего.
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 13:45:34
Чем он должен отличаться от модуля для нового?

Были раньше сборки ретро... мне тут недавно понадобился дистрибутив, в котором была DDR1 память вроде. Ни один не завёлся, кроме старого Puppyrus. Современные Puppurus'ы тоже не установились, MagOS не загрузился. А старый работает, быстро причём.

Обеспечил бы Puppyrus репозитарием программ
Обеспечил
Я имел ввиду не свой (свои программы должны быть, это понятно), я имел ввиду один из больших репозитариев программ. Свой тоже должен быть, но больше как дополнительный.

Короче - ставьте prar2008 и подключайтесь к доработке
Там есть все вами перечисленное
Если получится его перевести на Calculate оверлеи, то без проблем, я даже думал об этом когда-то. Настройки Puppyrus плюс мощь Генту оверлеев. Эх...

Кстати, не хотите поменять названия в части обозначения даты? prar2008 выглядит так, как-будто это дистрибутив 2008 года. Остальные обозначения - аналогично. Может точку (20.08) или 202008? Выглядело бы понятнее...
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: DdShurick от 29 Октябрь 2020, 15:13:25
Короче - ставьте prar2008
Не-е-е... У меня уже сломался, при доработке. И initrd там дерьмо.
Может начнём с этого (http://forum.puppyrus.org/index.php?topic=21655.msg156292#msg156292)?
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: sfs от 29 Октябрь 2020, 15:47:31
все остальные утилиты присутствуют?
Они маленькие и никому не мешают
Ну и пересобрать модуль по списку пакетов очень просто. редактируйте как хотите
Установи на диск. Обновляй штатно. Используй в RAM.
Фул в RAM - врядли заинтересует людей с RAM <20гб :)
Но с UIRD , наверное, и такое можно
Сделайте себе calculate+uird . Тут помогут
Ну и я Вам написал вначале - полный copy2ram от сохраненки в ram будет отличаться только чуть более быстрым ПЕРВЫМ запуском проги
Оно того не стоит
Настройки Puppyrus плюс мощь Генту оверлеев. Эх...
Не очень про это понял. Делайте. Рассмотрим на примерах. Мне интересно

не надо пересобирать всю систему,
нигде не надо
пересобрать transmission c USE-флагом gtk2
Он нигде не соберется (свежий) т.к. этот код там удален и гента ничем не поможет
Ни один не завёлся, кроме старого Puppyrus
Скорее всего дело в ядре. Пробуйте совсем старые.

Выглядело бы понятнее...
Еще раньше обсудили и уже сделал - см. шапку форума
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: betcher от 29 Октябрь 2020, 17:33:45
Фул в RAM - врядли заинтересует людей с RAM <20гб
С uird  можно использовать zram для всей папки /memory, соответственно фул в рам будет пожат, раза в два я думаю.
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: imp от 29 Октябрь 2020, 18:28:28
Но невозможность убрать всё из Puppy мне не нравится
- Ты суслика видишь?
- Нет.
- И я не вижу, а он есть...
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: DdShurick от 29 Октябрь 2020, 20:05:08
 Посмотрел CLS-20.6. Жирнющий. Пихать такое в RAM?? Сомнительно...
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 20:13:08
Фул в RAM - врядли заинтересует людей с RAM <20гб
Сейчас память не такая дорогая, чтобы её было мало. Мне и 20GB мало, хотел бы 64GB, но это слишком много менять надо.

Они маленькие и никому не мешают
Ну и пересобрать модуль по списку пакетов очень просто. редактируйте как хотите
Мне мешают. Я хочу, чтобы в системе не было ненужных мне графических программ. Вот поэтому мне нравится Calculate. Это даже немного смешно, но Генту-подобный дистрибутив не надо пересобирать, чтобы избавиться от лишнего.

Сделайте себе calculate+uird . Тут помогут
Да, посмотрел на uird, система интересная, конечно. Но и там я не увидел конкретного решения, просто закачать всё с / в RAM. Куча разных настроек, но плохо с примерами.

Ну и я Вам написал вначале - полный copy2ram от сохраненки в ram будет отличаться только чуть более быстрым ПЕРВЫМ запуском проги
Оно того не стоит
Не знаю, что за компы вы используете, но у меня быстродействие всех программ и визуально и на деле увеличилось. Более того, мне это интересно не только из-за быстродействия, но и по другим причинам.
Он нигде не соберется (свежий) т.к. этот код там удален и гента ничем не поможет
Это понятно, если код поддержки gtk2 удалён, то ничего не сделаешь. Но я переделал тему MurrezaSilver под gtk3 и под gtk2 почти одинаково выглядит. Без этих огромных кнопок и большущих подменю.

Да, попробовал подменить initrd от сохранёнки, но не завелось. Kernel panic, все дела... Но я продолжаю искать. Вот нашёл скрипт:
Код
# Script to copy / to tmpfs and continue boot from there
# Do not run this from a child shell. Use ". ramify" or exec.
# The shell running this script must be the only process on the system.


# Ensure this runs in /
cd /


# Create and mount tmpfs file system for /
mount -t tmpfs tmpfs mnt


# Copy everything from / filesystem to tmpfs
# Tar will restore proper owners and permissions when run as root
# FIXME: This is very slow because it reads / in many small pieces
# TODO: Add --exclude to prevent copying unneeded stuff
tar --one-file-system -c . | tar -C /mnt -x


# Move other mounts
mount --move dev mnt/dev
mount --move proc mnt/proc
mount --move run mnt/run
mount --move sys mnt/sys


# Create fstab with just new root file system
sed -i '/^[^#]/d;' mnt/etc/fstab
echo 'tmpfs / tmpfs defaults 0 0' >> mnt/etc/fstab


# Pivot root using instructions from pivot_root(8) man page
cd mnt
mkdir old_root
pivot_root . old_root


# Old root can only be unmounted once sh running from old root
# finishes. Continue startup normally using init.
exec chroot . bin/sh -c "umount old_root ; exec sbin/init"

Делает всё тоже самое, только после загрузки. Но вот проблема, что рутовая система, в которую он монтирует ограничена 10GB, а у меня 11 с чем-то. И когда скрипт заканчивает работу, то рутовая файловая система (которая в tmpfs) оказывается полностью заполнена, хотя RAM ещё есть... не вижу, где в этом скрипте увеличить количество монтируемой tmpfs, которая потом станет рутовым разделом.

Тут что ли указывать надо? Не пойму... Но вроде это временная папка или нет?
Код
mount -t tmpfs -o size="здесь что ли?" tmpfs mnt

Посмотрел CLS-20.6. Жирнющий. Пихать такое в RAM?? Сомнительно...

Ну, похожий MX Linux c 9.6GB против 11GB у Calculate запихал и нормально, быстро очень работал, мне понравилось. И это я даже ничего не оптимизировал. Там же можно поудалять всякие логи, куча программ ещё лишних ждёт своего часа... Можно перейти на другой профиль (CLS, CLDL и тд.)...
Название: Re: Файловая система (и соответственно ОС) полностью в RAM...
Отправлено: Harzah2 от 29 Октябрь 2020, 21:23:31
Код рабочий. Всё работает для любого Линукса, думаю и для Puppyrus может пригодится. Если кому-то нужно, вот полностью рабочий код (создайте в папке /mnt папку mnt или измените пути):
Код
# Script to copy / to tmpfs and continue boot from there
# Do not run this from a child shell. Use ". ramify" or exec.
# The shell running this script must be the only process on the system.

# Ensure this runs in /
cd /

# Create and mount tmpfs file system for /
mount -t tmpfs -o size=80% tmpfs mnt/mnt

# Copy everything from / filesystem to tmpfs
# Tar will restore proper owners and permissions when run as root
# FIXME: This is very slow because it reads / in many small pieces
# TODO: Add --exclude to prevent copying unneeded stuff
tar --one-file-system -c . | tar -C /mnt/mnt -x

# Move other mounts
mount --move dev mnt/mnt/dev
mount --move proc mnt/mnt/proc
mount --move run mnt/mnt/run
mount --move sys mnt/mnt/sys

# Create fstab with just new root file system
sed -i '/^[^#]/d;' mnt/mnt/etc/fstab
echo 'tmpfs / tmpfs defaults 0 0' >> mnt/mnt/etc/fstab

# Pivot root using instructions from pivot_root(8) man page
cd mnt/mnt
mkdir old_root
pivot_root . old_root

# Old root can only be unmounted once sh running from old root
# finishes. Continue startup normally using init.
exec chroot . bin/sh -c "umount old_root ; exec sbin/init"


Спасибо всем участникам форума за живейшее обсуждение темы. Про Puppyrus постараюсь не забывать и может быть таки удастся скрестить как-нибудь Puppyrus и Calculate Linux. Это было бы интересно!!!
Название: Re: Файловая система (и соответственно ОС) полностью в RAM (решено)...
Отправлено: k0l0p0k от 30 Октябрь 2020, 08:59:35
Ну, похожий MX Linux c 9.6GB против 11GB у Calculate запихал и нормально
500Mb для "местных" систем - жирновато, а тут гигабайты
И эти гигабайты мусора будут впустую отжирать ОЗУ
Название: Re: Файловая система (и соответственно ОС) полностью в RAM (решено)...
Отправлено: sfs от 30 Октябрь 2020, 09:36:42
я не увидел конкретного решения, просто закачать всё с / в RAM.
Вот же - автор подсказал. Спрашивайте - подробнее расскажет
    Фул в RAM - врядли заинтересует людей с RAM <20гб
С uird  можно использовать zram для всей папки /memory, соответственно фул в рам будет пожат, раза в два я думаю.
Куча разных настроек, но плохо с примерами.
Я тоже из именно за это критиковал. Но для хитрых случаев типа вашего - лучший вариант и можно сделать пакеты (или как это в генту называется) UIRD. Для arch мы их сделали и написали примеры - см. prtar2008*.iso
попробовал подменить initrd от сохранёнки
Модули ядра внутри инитрд от используемого ядра?
может быть таки удастся скрестить как-нибудь Puppyrus и Calculate Linux
Мне было бы интересно ближе познакомиться с генту. У нас есть спецю раздел для дистров форумчан
Спасибо +  за интересную тему
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: sfs от 30 Октябрь 2020, 09:43:35
Несжатая ФС в ram - крутовато. Надо как-то пожать. Без squash, те. RW : btrfs zram
Вот еще хуки от арча
https://aur.archlinux.org/packages/mkinitcpio-loop-subdir/
https://aur.archlinux.org/packages/mkinitcpio-tarball-utils/
Вдохновясь ими можно написать свой и вписать его в структуру Arch (или любого линукса)
Написать хук проще чем полностью инитрд
Ну или - смлотрите как сделан UIRD . Он на dracut , который есть почти везде
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 30 Октябрь 2020, 17:47:16
500Mb для "местных" систем - жирновато, а тут гигабайты
И эти гигабайты мусора будут впустую отжирать ОЗУ
Ну, так-то да. Но это просто для примера, что такое возможно... оптимизации будут, да даже та же возможность уменьшить размер дистрибутива... так-то я просто взял Calculate и полностью закачал его в RAM и он работает...

Я тоже из именно за это критиковал. Но для хитрых случаев типа вашего - лучший вариант и можно сделать пакеты (или как это в генту называется) UIRD. Для arch мы их сделали и написали примеры - см. prtar2008*.iso
Да, меня заинтересовала эта система тоже. Во всяком случае, она позволяет просто делать то, на что с другими надо мозг вывернуть наизнанку... В Генту это называется ебилды...

Модули ядра внутри инитрд от используемого ядра?
Нет, надо более внимательно было к этому вопросу подойти... там я почти ничего не менял, поэтому собственно и не завелось...
Мне было бы интересно ближе познакомиться с генту.
Ну, Генту - это на самом деле обычный дистрибутив, просто позволяет добиться чуть большей кастомизации. Хотя, если разбираешься в вопросе, это можно сделать в любом дистрибутиве.
Несжатая ФС в ram - крутовато. Надо как-то пожать. Без squash, те. RW : btrfs zram
В Calculate перешли на zram недавно. Если нет раздела свопа на диске, то его автоматом заменяет zram. У меня, например zram своп сейчас 41.1GB. Круто, так-то... вот надо придумать как его использовать...
Написать хук проще чем полностью инитрд
Да, надо будет оптимизировать... Спасибо за примеры, буду смотреть... плюс ещё, должно по идее с SSD, быстрее копировать в память, чем с HDD, думаю вот... В Calculate/Генту есть тоже свои возможности, мне советовали передавать ядру параметр docache на этапе загрузки... должно полностью в память загрузиться...
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: krasnyh от 30 Октябрь 2020, 18:48:16
В Calculate перешли на zram недавно. Если нет раздела свопа на диске, то его автоматом заменяет zram. У меня, например zram своп сейчас 41.1GB.
При 20Gb оперативки?

Уже не первый раз вижу практику назначения zram > memory. Здесь Swap больше не нужен! (https://forum.calculate-linux.org/t/swap/10118) -  DISKSIZE="200%".
Если брать пакет systemd-swap (https://www.archlinux.org/packages/community/any/systemd-swap/), то значит в swap.conf выставлять  zram_size=$(( RAM_SIZE / 0.5 )), при дефолтной 4. Непривычно.


upd.
Цитата
Note:
There is little point creating a zram of greater than twice the size of memory
since we expect a 2:1 compression ratio. Note that zram uses about 0.1% of the
size of the disk when not in use so a huge zram is wasteful.
https://www.kernel.org/doc/Documentation/blockdev/zram.txt
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: knn от 30 Октябрь 2020, 19:37:50
практику назначения zram > memory.
по теме показалась интересной статья - https://manjaro.ru/how-to/uskoryaem-starye-mashinki---systemd-swap.html (  и еще - https://www.kernel.org/doc/Documentation/blockdev/zram.txt [бегло проглядел, привлекла - "авторитетность ресурса"])
-----------
? можно ли как-либо "запускать zram" из kernel-строки ? (т.е. с передачей параметров zram~a [без "предварительных внутрисистемных настроек"  - ближе к аналогии для запуска zswap])   --upd: по следующему сообщению понял что вроде "нельзя" (но вкл/выкл возможно и можно...)
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: betcher от 30 Октябрь 2020, 19:47:15
В Calculate перешли на zram недавно. Если нет раздела свопа на диске, то его автоматом заменяет zram.
Это очень распространенная ошибка. Zram это не swap. Zram это блочночное устройство в ram с прозрачным сжатием. Его можно.отформатировать в любую фс в том числе.swap. То есть своп это только один из вариантов использования. В uird можно испольэовать и как своп и в качестве замены tmpfs для верхнего слоя ауфс.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: k0l0p0k от 31 Октябрь 2020, 12:54:23
Ну, так-то да. Но это просто для примера, что такое возможно ... так-то я просто взял Calculate и полностью закачал его в RAM и он работает...
понимаю, спортивный интерес :)
Calculate пробовал лет 5 назад, была она тогда раз в десять толще паппиков, при одинаковой практически функциональности - не зацепила.
Сейчас смотрю еще пополнела  :o
ps
При таком количестве ОЗУ думаю и на дисковой подсистеме Вы не экономите?
Предположу что SSD NVMe ?
Если так то парится с загрузкой в RAM особого смысла нет - у людей винда с них грузится за секунды, не говоря о приложениях (имхо конечно)
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 01 Ноябрь 2020, 12:57:14
понимаю, спортивный интерес
Не только, но и как возможность работать полностью в оперативке... А если ещё сжать (как zram), а если ещё удалить всё лишнее (всякие локали там, логи)... то что тогда? Вот я буквально вчера установил Calculate на соседний раздел (её уменьшенную версию, CLS - 1.3GB). Сам я работал в это время в RAM-режиме и скачанный файл .iso перетащил в оперативку. Так вот, установка на соседний раздел заняла пару минут от силы, если не меньше. Разве не интересно?

Calculate пробовал лет 5 назад, была она тогда раз в десять толще паппиков, при одинаковой практически функциональности - не зацепила.
Сейчас смотрю еще пополнела
Ненамного она располнела. Всё примерно на том же самом уровне в пару гигабайт, а при распакове CLS - это около 5GB. CLDX - примерно 10GB. С Puppyrus не сравнить, конечно... но, это ещё Гента, к тому же...
Предположу что SSD NVMe ?
Если так то парится с загрузкой в RAM особого смысла нет - у людей винда с них грузится за секунды, не говоря о приложениях (имхо конечно)
Да, SSD - тоже есть... один правда не так давно полетел и вот поэтому я захотел поработать в оперативке. Да и в ней всё равно быстрее, как ни крути. Никаких обращений к диску, всё крутится в одном месте. Так как есть zram, то система не уйдёт в медленный своп, так что с какой стороны ни посмотри - одни плюсы...

Я даже опыт провёл, закинул в оперативку ещё папку с файлом Виртуалбокса с Виндой и получилось, что она работала тоже в RAM. И тоже очень быстро... правда Винду пришлось сильно сжимать, диск дефрагментировать и уменьшать, но оно того стоит, по-моему...

Это очень распространенная ошибка. Zram это не swap. Zram это блочночное устройство в ram с прозрачным сжатием. Его можно.отформатировать в любую фс в том числе.swap. То есть своп это только один из вариантов использования.
Так это понятно, в чём ошибка-то? Просто в Calculate zram используют как своп, вот и всё. А в MagOS или Puppyrus могут использовать вместо обычного диска.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: betcher от 01 Ноябрь 2020, 15:04:58
Так вот, установка на соседний раздел заняла пару минут от силы, если не меньше. Разве не интересно?
Все модульные так ставятся. Скопировал и загрузчик скриптом - все.
Так это понятно, в чём ошибка-то
Я не к тому, что вы не правильно что-то сделали, я к тому, что многие думают, что zram это типа zswap только без своп раздела.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: krasnyh от 01 Ноябрь 2020, 15:16:48
Цитата
Введение

Модуль zram создает блочные устройства на основе RAM с именем /dev/zram <id>
(<id> = 0, 1, ...). Страницы, записанные на эти диски, сжимаются и сохраняются в самой памяти. Эти диски обеспечивают очень быстрый ввод-вывод, а сжатие обеспечивает хорошая экономия памяти.
Некоторые варианты использования включают хранилище /tmp, использовать как диски подкачки, различные кеши в /var и, возможно, многое другое :)
https://www.kernel.org/doc/Documentation/blockdev/zram.txt

Так что нет ничего странного что пользователи соотносят zram с swap, раз разработчиком такое использование изначально предполагалось.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 05 Ноябрь 2020, 08:47:50
Протестировал скрипт на SSD-диске. Отличные результаты получились. Примерно 2.5 минуты на загрузку 6GB Calculate Linux в память. По сравнению с HDD выигрыш составил больше чем в два с половиной  раза.

Так что, это интересный способ работы с системой. По сравнению с initrd, более простой и понятный:
1. Не надо делать два пункта меню в загрузчике, вообще никак не надо вмешиваться в загрузку системы.
2. Можно обновиться, изменить какие угодно данные заранее, а потом перейти на режим в памяти.
3. Сохранение данных полностью прозрачное (не система пишет что-то в какой-то файл, а ты сам решаешь, что сохранять, а что - нет).
4. Перезагрузкой решаются все проблемные моменты (например, решил проверить, как пройдёт установка программы, установил её, не понравилось, её даже не надо удалять, после перезагрузки её не будет).
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: sfs от 05 Ноябрь 2020, 09:29:33
Протестировал скрипт на SSD-диске
какой? какую задачу решали?
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: DdShurick от 05 Ноябрь 2020, 09:42:35
какую задачу решали?
Памяти много, вот и балуется.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 07 Ноябрь 2020, 18:27:26
какой? какую задачу решали?
Хотел сравнить скорость загрузки в память с HDD и с SDD. Разница велика, так что перенёс систему на SDD и теперь загружаюсь с него.

Calculate Linux позволяет использовать для загрузки сжатую файловую систему btrfs. Разница получается в два раза. То есть, до этого (в самом начале, когда искал способ загрузки) я использовал CLDX (Calculate XFCE) c 11GB занимаемого места, для проверки попробовал CLS (Calculate Openbox) на SDD c 6GB занимаемого места.

Теперь я вернулся обратно на CLDX, но так как я установил его на SSD и на сжатую btrfs, то он стал у меня занимать места 6.5GB и очень быстро распаковывается в память. Меньше минуты и он в памяти. Конечно, там он в распакованном виде, но быстрота загрузки такого большого файла даже меня поразила.

Добавлено:
Работа со сжатой btrfs с диска - не очень. Немного притормаживает. Зато, если его использовать только для быстрого закачивания в память, то это того стоит.  Меньше минуты и 6.5 гигабайт в памяти. Я планирую ещё эти 6.5 подсократить, так как использовал свежеустановленный Calculate, а там ещё как минимум 2GB можно порезать...

Памяти много, вот и балуется.
Ищу удобный инструмент для комфортной работы. А здесь выкладываю результаты, так как это может быть кому-либо интересно. Если неинтересно, можно не читать...
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: krasnyh от 07 Ноябрь 2020, 18:32:42
я установил его на SSD и на сжатую btrfs, то он стал у меня занимать места 6.5GB и очень быстро распаковывается в память.
Надо будет поискать (нет) тред, где sfs спорил со мной, что у фругала нет преимуществ перед фулл. Хотя одним из моих доводов и было сжатие и как следствие более быстрое чтение.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 07 Ноябрь 2020, 18:42:14
Надо будет поискать (нет) тред, где sfs спорил со мной, что у фругала нет преимуществ перед фулл. Хотя одним из моих доводов и было сжатие и как следствие более быстрое чтение.

Сжатие - это реально большое преимущество. Это доказывает хотя бы тот же zram, который увеличивает своп (а следовательно и оперативку) в два, а то и в три раза. Представляю какие-бы скорости были у Puppyrus, если бы он просто работал в памяти и памяти у него прибавилось в два раза. Для старых (да и для новых) компов - это реально круто.

Там игроманы для быстродействия SSD советуют. Какой SSD? Это прошлый век уже... Запускать игру надо в RAM...

Вот еще хуки от арча
https://aur.archlinux.org/packages/mkinitcpio-loop-subdir/
https://aur.archlinux.org/packages/mkinitcpio-tarball-utils/
У Арча много всего, но всё это поддерживается неофициально сообществом, которое периодически забивает на свои инструменты. В этом плане мне больше нравится что-то новое. Например, вы пробовали Nix (https://forum.puppyrus.org/index.php?topic=23047.msg172693#msg172693)?

Доработал, этот скрипт, можно пользоваться на самых разных системах, службы, которые надо перезапустить, могут быть, конечно другими, но по аналогии вроде понятно. Вот, почти (может ещё что-то будет) окончательная версия скрипта:
Код
# Script to copy / to tmpfs and continue boot from there
# Do not run this from a child shell. Use ". ramify" or exec.
# The shell running this script must be the only process on the system.

# Ensure this runs in /
cd /

# Create and mount tmpfs file system for /
mkdir /mnt/new_root
mount -t tmpfs -o size=85% tmpfs mnt/new_root

# Copy everything from / filesystem to tmpfs
# Tar will restore proper owners and permissions when run as root
# FIXME: This is very slow because it reads / in many small pieces
# TODO: Add --exclude to prevent copying unneeded stuff
tar --one-file-system -c . | tar -C /mnt/new_root -x

# Move other mounts
mount --move dev mnt/new_root/dev
mount --move proc mnt/new_root/proc
mount --move run mnt/new_root/run
mount --move sys mnt/new_root/sys

# Create fstab with just new root file system
sed -i '/^[^#]/d;' mnt/new_root/etc/fstab
echo 'tmpfs / tmpfs defaults 0 0' >> mnt/new_root/etc/fstab

# Pivot root using instructions from pivot_root(8) man page
cd mnt/new_root
mkdir old_root
pivot_root . old_root
mount -n --move /old_root/root/.cache/gvfs /root/.cache/gvfs

# Перезапускаем службы
/etc/init.d/cupsd stop
/etc/init.d/bluetooth stop
/etc/init.d/local restart
/etc/init.d/sshd restart
/etc/init.d/syslog-ng restart
/etc/init.d/cronie restart
killall agetty
killall polkitd
killall upowerd
killall udisksd
killall ssh-agent
killall accounts-daemon
telinit u
/etc/init.d/fuse restart
/etc/init.d/root restart
/etc/init.d/devfs restart
/etc/init.d/NetworkManager restart

#Удаляем  временный каталог
rmdir /old_root/mnt/new_root

# Old root can only be unmounted once sh running from old root
# finishes. Continue startup normally using init.
exec chroot . bin/sh -c "umount old_root ; exec sbin/init"

Какие службы или программы ещё запускаются со старого пути, можно посмотреть используя:
Код
lsof /old_root
При этом dbus-daemon лучше оставить как есть... не придумал что с ним делать, но если его убить, система зависает...
lightdm и ModemManager тоже лучше не трогать. Оставшееся (https://yadi.sk/i/nL5hiUdSo6OeWw), после входа в новую сессию XFCE.

После выполнения скрипта выходим из сеанса и входим в почти чистую систему в памяти. Время выполнения скрипта немного увеличилось и составило больше минуты. Это время можно регулировать ещё здесь:
Код
mount -t tmpfs -o size=85% tmpfs mnt/new_root
Чем больше, тем больше места зарезервируется для rootfs, соответственно, чем меньше, тем быстрее загрузится в ОЗУ. Если у вас памяти, к примеру 10GB, а система установленная на / занимает 5GB, то смело можно ставить значение в 55-60%.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: sfs от 08 Ноябрь 2020, 08:52:03
По сравнению с HDD выигрыш составил больше чем в два с половиной  раза.
Кто бы сомневался
Надо будет поискать (нет) тред, где sfs спорил со мной, что у фругала нет преимуществ перед фулл. Хотя одним из моих доводов и было сжатие и как следствие более быстрое чтение.
Наверное это (https://forum.puppyrus.org/index.php?topic=22266.msg163564#msg163564) или это (https://forum.puppyrus.org/index.php?topic=22228.msg171126#msg171126)
Если я что-то подобное и заявлял - про стационар с ссд
На нем замороженный фул мало чем будет отличаться от squashfs-frugal по функционалу и скорости
Хочется сжатия на фул- btrfs

Сжатие - это реально большое преимущество.
Экий Вы упертый. Давайте протестируем
Внизу этой (https://forum.puppyrus.org/index.php?topic=17528.msg108899#msg108899) темы дописал про браузер
После  загрузки почти любой проги  с любого носителя она в памяти и разницы в скорости работы нет
Обратите внимание на голосование в той теме. Все аксакалы проголосовали против copy2ram
Можете привеcти какие-то тесты в пользу copy2ram ?
Попробуйте
В ram эффективно переносить часто используемые каталоги:
Достаточно home (https://wiki.archlinux.org/index.php/Firefox_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)/Profile_on_RAM_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)) в ram . Будет так же как всю систему в ram
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: Harzah2 от 08 Ноябрь 2020, 12:09:30
Экий Вы упертый. Давайте протестируем
Внизу этой темы дописал про браузер
После  загрузки почти любой проги  с любого носителя она в памяти и разницы в скорости работы нет
Обратите внимание на голосование в той теме. Все аксакалы проголосовали против copy2ram
Можете привеcти какие-то тесты в пользу copy2ram ?
Причём тут упёртость? Где я говорил, что-то про скорость самой программы? Я говорил про производительность системы в целом. Там где программа обращается за данными к диску - будет увеличение скорости, там где не обращается - не будет. Это и идиоту понятно. Если у системы больше памяти в два раза, то она и позволить себе может больше.

Насчёт же всего / в памяти, так он решает другие задачи. Такие как отвязка системы от носителя, с целью увеличить срок его службы, например. Или неубиваемость и возможность получить чистую систему без изменений после перезагрузки. Или внесение только тех изменений, которые тебе нужны и игнорирование всех остальных. Я же об этом писал в самом начале. Меня, в принципе, не интересует кто там за что проголосовал, у всех людей свои желания и потребности. Если кому-то ничего не надо и они живут в пещерах и занимаются собирательством, то это их дело и их проблемы.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: DdShurick от 08 Ноябрь 2020, 12:43:32
Такие как отвязка системы от носителя, с целью увеличить срок его службы, например. Или неубиваемость и возможность получить чистую систему без изменений после перезагрузки. Или внесение только тех изменений, которые тебе нужны и игнорирование всех остальных.
У нас это давным давно решено и памяти тонну не надо.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: sfs от 08 Ноябрь 2020, 13:12:49
Там где программа обращается за данными к диску - будет увеличение скорости, там где не обращается - не будет.
да. И я рассказал где будет : /tmp /home. Остальное для домашних задач избыточно
Я говорил про производительность системы в целом
Производительность системы должна настраиваться под конкретную задачу. "Вцелом" - это "забивать гвозди микроскопом" и "беситься с жиру"
Деньги вместо переизбытка памяти рациональнее потратить на быстрые носители , т.к. производительность системы "Вцелом" всегда по самому медленному компоненту
Хотите спорить дальше - приводите результаты тестов с цифрами. У нас технический, а не литературно-исторический  форум  ;)
Если кому-то ничего не надо и они живут в пещерах и занимаются собирательством, то это их дело и их проблемы.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: DdShurick от 08 Ноябрь 2020, 13:19:21
занимаются собирательством
Занимаюсь, зато всё своё.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: knn от 08 Ноябрь 2020, 18:52:52
Там где программа обращается за данными к диску - будет увеличение скорости, там где не обращается - не будет.
- тут согласен ('имхо' - 'без выкладки доказательств' - 'но своим глазам - верю' ).

ps
"прирост скорсти" - величина относительная -  и возможно лучше виден на старых компах, и есть и "порог человеческой реакции"(0,4 сек - эту цифру видел и в '"Электробезопасности" по сработке автоматических-выключателей' и в 'автоДорожнойБезопасности - расчетное время реакции от-ситуации-до-началаДействия') - т.е. тут как "порог заметности"/чуствительности [величина как понимаю скорее усредненная...].

--upd (по 0.4 сек)
когда на IceArch для Icewm в крайний раз 'delay'-и("задержки") выставлял ориентировался на 0.4 сек. В смысле можно и еще ускорить, но там нужно прорабатывать "согласованность-различных-'delay'~ев"
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: betcher от 09 Ноябрь 2020, 04:51:08
Использовать копирование в рам именно для ускорения смысла не имеет. Увеличится время загрузки, но уменьшится скорость первого старта для каждой софтины. Ко второму старту все что нужно уже в кэше. Работа полностью из рам может быть интересна если нужно освободить носитель после старта. С uird так можно, загрузиться и вытащить флешку, а в конце работы воткнуть на место и при выключении сохранятся автоматом ваши изменения. С лета это работает в т.ч. с luks разделами. Так что если хочется действительно интересного нет смысла изобретать uird поновой. Будут интересные идеи, пишите, добавим в uird.
Название: Re: Файловая система (и соответственно FULL ОС) полностью в RAM (решено)...
Отправлено: knn от 09 Ноябрь 2020, 06:23:06
"увеличение скорости загрузки системы" конечно можно отнести к "скорости системы(получается 'в целом')".
--------
   Тут на Форуме при разговорах о "скорости" когда-то упоминался и пример - было дело - как-то 'Links2' компилил "в хомяке на RAM" - скоростьКомпиляции отличалась в разы.