LINUX.ORG.RU

Лучший linux для работы в ОЗУ

 , ,


0

2

На ноуте полетел жёсткий диск (не беспокойтесь, на нём всё равно была винда, а важные файлики я успел утащить с умирающего диска). И денег на покупку ssd сейчайс нет. Мне нужно неделю прожить с этим ноутом, пока не вернусь к ПК. Есть флешка на 32 гб, но т.к. с флеш памяти линукс работает отвратительно (как и любая другая система), то мне нужен дистрибутив, который будет полностью грузится в ОЗУ (коей имеется всего 4гб), и работать там без лагов и подвисаний (летать). На десктопе стоит Арч, поэтому я смотрю в сторону этого варианта. Но может вы предложите что-нибудь получше. Задачи: сидеть в телеге и браузере (ну, хотя бы 10 вкладок). Мне не важно, сколько будет грузится система (я понимаю, что выгрузка в ОЗУ занимает время), но важно, чтобы после она работала шустро и не обращалась к постоянной памяти. Сохранение сессии на диск (а также периодическое во время работы) тоже необходимо. Извините за воду.

Любой LiveCD дистрибутив. У LiveCD есть squashfs архив, в котором находится сжатый образ корневой ФС, а запись производится на файловую систему, расположенную в RAM.

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

Грузить целиком squashfs в память нет смысла.

Такой подход наиболее оптимален.

infomeh ★★
()

Если бы такое было, все бы так жили. Но существенно продолжительный запрет на своевременную запись на диск означает в лучшем случае потерю данных по пропаданию питания, а это никому не нужно.

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

t184256 ★★★★★
()
Ответ на: комментарий от infomeh

А ты дочитай, куда он хочет производить запись и когда.

t184256 ★★★★★
()
Последнее исправление: t184256 (всего исправлений: 1)
Ответ на: комментарий от t184256

Хорошо, можно и без записи во время работы. Просто чтобы врубил, поработал и во время выключения результат сохранился

seprik_lo
() автор топика
Последнее исправление: seprik_lo (всего исправлений: 1)
Ответ на: комментарий от infomeh

squahfs поможет уменьшить количество операций чтения,

О чём это вы? Именно по причине: «архив, в котором находится сжатый образ корневой ФС» чтение файлов на squahfs весьма далеко от хорошего, ибо оно придумано немного для другого: чтобы иметь возможность наложить изменения, записав его в другой изменяемый архив, пусть и небольшой. Потому liveCD с fs на ram, файлы на которых могут изменяться, но без сохранения изменений для следующих загрузок работают гораздо живее. Копировать же все каталоги вовсе не обязательно.

vodz ★★★★★
()

Только по ссылке версия устаревшая, сходи на форум, там более актуальные есть. Сохранение в файл или в каталог на разделе имеется.

irton ★★★★★
()
Ответ на: комментарий от seprik_lo

Создай на флешке отдельный раздел или файл с файловой системой, либо настрой монтирование его в качестве контейнера для записи, либо сам монтируй и копируй данные.

infomeh ★★
()

Езе можно посмотреть на Slax от Томаша (технология та же), он сейчас на базе Debian-а.
http://slax.org

bormant ★★★★★
()

Есть флешка на 32 гб, но т.к. с флеш памяти линукс работает отвратительно

Устанавливал на 8гиг флешку лубунту и дебиан LXDE, нормально все работало. Можно на флешку полноценно установить и отлично работать. Своп держать в ZRAM - будет отлично летать.

Со зрам с 2 гиг оперативы хромы не вешали систему - https://youtu.be/PLVWgNrVNlc

anonymous
()
Ответ на: комментарий от vodz

А это противоречащее моему видению мира утверждение можно чем-то подкрепить? Я всегда считал, что squashfs используется с rw-оверлеями, но никакой особой их поддержки не содержит. Я бы почитал.

t184256 ★★★★★
()

austrumi. я раньше создавал initrd специально для этого, чтобы по сети грузиться, щас уже нет, там надо крохи initrd переделать, чтобы squashfs прямо в него засунуть

круче ничего пока не видел

buratino ★★★★★
()
Ответ на: комментарий от vodz

ибо оно придумано немного для другого: чтобы иметь возможность наложить изменения, записав его в другой изменяемый архив, пусть и небольшой

Вы не правы.

Посмотрите как устроены LiveCD. Они используют squashfs, как архив с корневой ФС, который можно монтировать в качестве нижнего слоя в каскадной ФС и файловую систему, доступную на запись, обычно в RAM, как верхний слой в каскадной ФС.

И далее делают объединение нижнего слоя и верхнего в одну ФС, которая уже и будет смонтирована в качестве корневой ФС при старте Live системы.

В итоге файлы читаются из squashfs в сжатом виде, распаковываются и загружаются в память для выполнения. А запись производится на RAM.

В итоге это уменьшает объём считываемых данных.

squashfs - это лишь сжатый контейнер файлов, никаких отдельных контейнеров в процессе работы не создаётся. Если файл изменяется, то он записывается на ФС верхнего уровня.

infomeh ★★
()
Последнее исправление: infomeh (всего исправлений: 1)

Есть флешка на 32 гб, но т.к. с флеш памяти линукс работает отвратительно (как и любая другая система)

а, не, пациенту уже ничего не поможет

buratino ★★★★★
()
Ответ на: комментарий от infomeh

Посмотрите как устроены LiveCD.

Да я сам их делаю. Я прекрасно понимаю, почему используют в таком виде - не надо заморачиваться с копированием, изменения накладываются поверх. Речь была о:

В итоге это уменьшает объём считываемых данных.

Ничего у вас не получилось в итоге.

vodz ★★★★★
()

Может лучше Puppy Linux? есть даже версия на АРЧ. Идеально для таких условий.

OpenMind ★★★★
()
Ответ на: комментарий от vodz

Ничего у вас не получилось в итоге.

Почему? :) Вы меня смешите.

Возьмём к примеру файл не в сжатом виде занимает 5 мб, а в squashfs в сжатом виде он уже занимает допустим 1Мб и при считывании с диска (с накопителя) будет прочитано не 5 Мб, а 1Мб, данных и распакованы в 5Мб.

Вот данные с запущенного LiveCD SystemRescueCD 5.32:

root@sysresccd /root % ls /livemnt/boot/sysrcd.dat -lsh
494M -rw-r--r-- 1 root root 494M Nov 14  2018 /livemnt/boot/sysrcd.dat
root@sysresccd /root % du -xsh /*
8.4M    /bin
0       /boot
56K     /dev
11M     /etc
0       /home
460M    /lib
121M    /lib64
0       /livemnt
0       /media
0       /mnt
159M    /opt
0       /proc
448K    /root
836K    /run
19M     /sbin
0       /sys
559M    /tftpboot
0       /tmp
948M    /usr
44M     /var
root@sysresccd /root % df -h /
Filesystem      Size  Used Avail Use% Mounted on
none            493M  2.5M  490M   1% /

Как видите файл sysrcd.dat, являющийся сжатым squashfs архивом занимает 494 Мегабайта на носителе, а суммарный объём файлов на корневой ФС 8.4 + 11 + 460 + 121 + 159 + 19 + 559 + 948 + 44 составляет примерно 2329 Мб в распакованном виде.

Вот и получается, что при использовании squashfs операций чтения с накопителя будет меньше, потому как если нужно прочитать все файлы корневой ФС, то с накопителя прочитается 494M Мб, а не 2329 Мб.

Вот.

infomeh ★★
()
Последнее исправление: infomeh (всего исправлений: 1)

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

jtad
()
Ответ на: комментарий от infomeh

Вы меня смешите.

Вы пытались вчитываться о чём вам пишут? Я вам говорю, что сжатый образ ramdisk-а вообще после разархивирования в память вообще ничего потом с носителя не читает. А у вас будет чтение, которое будет каждый раз разархивировать сжатые inod-ы, либо потребуется двойная память - под кеширование заархивированного inod-а и разархивированного.

vodz ★★★★★
()
Ответ на: комментарий от vodz

Я вам говорю, что сжатый образ ramdisk-а вообще после разархивирования в память вообще ничего потом с носителя не читает

А я вам не про ramdisk говорю, а про squashfs файл.

Не путайте пожалуйста.

Вы путаете initrd (ramdisk) и squahfs файл.

Повторяю, как работает LiveCD:
1. Стартует загрузчик
2. Считывает в память образ ядра и initrd
3. Передаёт управление ядру
4. Ядро распаковывает, если нужно, initrd и монтирует его как начальную ФС
5. Сценарий init в initrd ищет накопитель со squashfs файлом на подключенных накопителях, находит накопитель и монтирует ФС накопителя
6. Монтирует squashfs файл в одно место, затем ФС для записи, обычно tmpfs в другое
7. Посредством aufs / unionfs / overlayfs каскадно монтирует эти две файловые системы, образуя новую ФС, состоящую из двух.
8. Делает переключение корня на эту новую объединённую ФС и происходит запуск системы
9. При запуске данные считываются из смонтированного файла squashfs сжатыми и распаковываются в памяти, но считываемый объём данные с накопителя сжатый
10. Запись происходит в память.

Прочтите написанное в этом сообщении и обдумайте.

infomeh ★★
()
Ответ на: комментарий от infomeh

Прочтите написанное в этом сообщении и обдумайте.

Вас сейчас послать? Не умеете вникать в нить разговора — лучше уж молчать.

vodz ★★★★★
()
Ответ на: комментарий от vodz

У тебя склероз? Ты сам первый ответил на моё сообщение.

Прочти моё первоё сообщение и это Лучший linux для работы в ОЗУ (комментарий)

И подумай про что написано и сравни о чём пишешь ты.

Если ты не понял написанного в первом сообщении, то я не предлагаю ТС грузить LiveCD целиком в память, напротив считаю, что с его малым объёмом RAM это плохим решением.

Если не понимаешь о чём я говорю и как работает LiveCD и squashfs в частности проходи мимо.

infomeh ★★
()
Последнее исправление: infomeh (всего исправлений: 1)
Ответ на: комментарий от infomeh

У тебя склероз? Ты сам первый ответил на моё сообщение.

У вас не склероз, а вообще слабоумие. Автор интересовался о linux-ах в ОЗУ, вы порекомендовали squashfs, я откоментил именно вас, указав, что squashfs весьма тормозной, пусть и удобный для наложения изменений на ro-информацию. Выигрыш однокраного чтения сжатого проигрывает даже при несколькократном по причине сложности кеширования сжатого, а уж в сравнении с ориганльным вопросом, то есть чисто в ram - так и вообще бесконечно.

vodz ★★★★★
()
Ответ на: комментарий от infomeh

А при использовании Alpine Linux lbu есть еще один шаг - при вызове lbu commit верхний мутабельный слой сохраняется в tar.gz для использования при следующей загрузке

vertexua ★★★★★
()
Ответ на: комментарий от Bootmen

Сохранение сессии на диск (а также периодическое во время работы) тоже необходимо.

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

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 1)

Если не смущает ФГМ разработчика, то Tiny Core (в комплектации CorePlus). Там это дело более-менее отлажено.

А так Porteus или даже SliTaz, да.

rebforce
()
Последнее исправление: rebforce (всего исправлений: 1)
Ответ на: комментарий от vodz

Да я сам их делаю.

А че тогда все в кашу мешаешь? Сделал, да не понял, что сделал?

t184256 ★★★★★
()

не беспокойтесь, на нём всё равно была винда, а важные файлики я успел утащить с умирающего диска

Спасибо, что уточнил. От сердца отлегло.

rumgot ★★★★★
()
Ответ на: комментарий от infomeh

Да это просто тупой троль - посмотри, он же ничего полезного вобще не предложил для решения, только «воняет». Не «закусывайся» с ним.

anonymous
()

Вобще-то ссылочка протухла давно. PuppyRus теперь тут: http://puppyrus.org/

anonymous
()
Ответ на: комментарий от seprik_lo

Повторяю.

Есть флешка на 32 гб, но т.к. с флеш памяти линукс работает отвратительно

Устанавливал на 8гиг флешку лубунту и дебиан LXDE, нормально все работало. Можно на флешку полноценно установить и отлично работать. Своп держать в ZRAM - будет отлично летать.

Устанавливай на флешку как на обычн диск. Главное без жирных де и включи зрам. Ставить можно всё на один раздел для экономии места, а своп держать в зрам.

anonymous
()

puppy, Porteus. Последний с runit на борту и довольно свежими DE

powerguy ★★★
()

Я за Knopix, но не самой последней версии. На машинах даже с 512мб работает достойно.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.