LINUX.ORG.RU

Дистрибутив на usb-stick

 ,


0

3

Чего я хочу:
_

  1. базовая система установлена на usb flash drive(система пригодная для запуска со всеми основными пакетами и всеми конфигами)

  2. на отдельных устройствах(пк, ноутбук, любой комп с моим внешним диском) остальные пакеты/файлы лежат на доп разделе.

  3. при загрузке опции загрузить в RAM/overlayfs/overlayfs-persistent

Вопрос:
_

есть ли готовые решения? какой дистрибутив лучше всего отнесется к такому извращению?

Использую Manjaro/Arch предпочел бы остаться на них.

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

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

★★★

http://www.calculate-linux.org/main/ru/cls

Поддерживается интерактивная сборка системы - внесения изменений в состав дистрибутива с последующим созданием ISO образа.

http://www.calculate-linux.org/main/ru/interactive_system_build

Полученный в результате изменений текущей системы ISO образ на 100% совместим с Gentoo и обладает всеми свойствами Calculate Linux. Систему можно загрузить с LiveCD, установить на жесткий диск, записать на USB Flash либо переносной USB-HDD. Возможность модификации полученного дистрибутива с помощью загрузки в Builder-режиме сохраняется. Таким образом, вы можете неограниченное число раз менять состав пакетов обычным для Gentoo образом - через обновление дерева портежей.

Но сам не использовал.

Там же есть пример добавления приложения в загрузочный образ.

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

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

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

То есть хранения системных директорий отдельно? Если пакеты распакованный в /opt или ещё куда, то никакой проблемы нет.

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

нет, хранить системные дирректории отдельно не выход(хранить пакеты в разных дирректориях не удобно, требует опакечивания отдельного, это неудобно поддерживать) для этого есть aufs/overlayfs

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

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

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

fehhner ★★★★★
()

В дебиане, емнип можно крутить чего хочешь, вплоть до редактирования скриптов и прочего при создании диска, тулзень live-build зовется. Как сделаешь так и будет. Про остальные дистры не знаю.

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

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

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

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

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

Я просто не совсем понимаю, как это должно работать. Нет, ну т.е., я представляю - на флешке базовая система, ты с неё загружаешься, потом допустим монтируются директории с остальными пакетами к существующим. А в случае обновления локальных пакетов компьютера, при наличии изменённых названий/дополнительных пакетов, основная флешка рид-онли что ли становится, чтобы они туда не записались? А что делать, если вместе с этими пакетами должны обновится пара пакетов основной системы? Т.е., это нужно сделать предвариительно, другой командой?
Вообще, не слышал просто раньше про это, стало интересно.
И, честно, самое главное - я не понимаю просто смысла в такой системе практического, зачем это нужно??
Ну у меня например была флешка, которая просто на любом компе работает - это понятно, вдруг необходимость.
Была загрузочная флешка арчика (на ней только бут раздел) и закриптованный от начала и до конца люксом диск с остальными - такой можно и на нескольких компах сделать. Необходимость такого я тоже могу понять - например если к этой машине есть доступ у сторонних лиц, чтобы они не могли записать какую-то дополнительную зловредную нагрузку в файлы на бут разделе, загрузившись с другой пресловутой флешки. Может быть, ты про это?
Или зачем вообще может быть нужна такая система, какая практическая польза? Столько гемороя, чтобы несколько пакетов не обновлять лишний раз? Другого применения я не вижу, и не уверен, насколько затраченные на это усилия адекватны.

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

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

про то как работает, почитай про overlayfs/aufs, всё станет понятно.

LiBer ★★★
() автор топика

По похожему принципу собирался Slax и собирается Slackware Live.

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

Очень напоминает работу с тонким клиентом, по крайней мере в том виде, в каком я об этом читал в документации в вики альтлинукса.

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

нашёл, то есть там про сетевую бездисковую загрузку писалось и про монтирование файловых систем стопкой поверх основной, которая read-only.

Фактически загрузка LiveCD по сети состоит в том что по сети монтируется каталог NFS, в котором лежит .iso образ. Образ монтируется через loopmount, и на самом деле там лежит squashfs которая ещё раз монтируется через loopmount. Ничто не мешает, воспользовавшись AuFS (аналог nullfs во FreeBSD, т.н. Union File System), смонтировать «стопкой» несколько файловых систем, из которых все нижние будут read-only, а верхняя read-write. У нас есть несколько файловых систем. Мы видим все файлы которые в них есть, те которые выше закрывают тех которые ниже. Самая верхняя может быть доступна на запись. Когда мы пишем, мы просто записываем в самую верхнюю. Такая методика активно используется в ALT Linux, потому что позволяет например при загрузке того же LiveCD смонтировать его на read-only (а как ещё можно смонтировать CD?), поверх него смонтировать на read-write обычную tmpfs - и смело туда писать, пока хватает памяти. Собственно, именно так и происходит. И ровно в эту технологию монтирования AuFS, которая всё равно происходит (ro iso, и поверх неё rw tmpfs) можно вставить ещё много таких iso. Базовая, поверх неё ещё что-то что изменяет содержимое базовой системы, поверх неё ещё что-то и так далее, а поверх всего read-write tmpfs чтобы можно было работать.

Насколько я понял, при этом там для каждого клиента своё индивидуальное рабочее окружение хранится посредством overlays на «сервере».

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

да так и есть, но собственно об этом я и сам написал (aufs/overlayfs)

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

хм, а разве что то криво сказал?

LiBer ★★★
() автор топика

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

Странная у тебя паранойя - много лет как существующий PuppyRUS тебе не внушает доверия, а никем не проверенная кучка скриптов - «больше нравится»!
PuppyRUS уже 10 лет существует! И возник он не на пустом месте! Так что скрипты запуска дистрибутива отлаживались десятилетиями.

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

скрипты запуска меня как раз не пугают, а вот зависимость от репозиториев которыми пользуется 5 землекопов, это не здорово(мне вообще не нравится зависимость от централизованных репозиториев :) )

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

Использую Manjaro/Arch предпочел бы остаться на них.
вообще не нравится зависимость от централизованных репозиториев

Тебя трудно понять - как ты пользуешься Arch без централизованного репозитория? И чем PuppyRus PRA, постоенный целиком на пакетах из Arch не угодил? Не нравится «репозиторий от 5 землекопов»? Так используй pacman и стандартные пакеты Arch
Вот из wiki http://wiki.puppyrus.org/puppyrus/pra
3 уровня использования PRA:
1 - sfs-get подключение готовых модулей.pfs Достаточно скопировать в /modules
2 - pacman - установка в сохраненку и создание модулей
3 - AUR, ABS (компиляция)

sigurd ★★★★★
()
Ответ на: комментарий от sigurd
  • пользуюсь арчем с централизованным репозиторием, и страдаю.

  • PuppyRus PRA использует Arch Rollback Machine для заморозки среза репозитория и его использования у себя. Обновляется он не часто и бессистемно(если я правильно понял, конечно)

  • собственно основной недостаток это отдельный дистрибутив, будь оно в виде пакетов для арча доступно, я бы попробовал, а так выглядит как слишком красноглазое решение, не выдерживает баланс удобство/стабильность (арч тоже не выдежривает, поэтому использую manjaro, на критичных компах)

  • я видимо в очередной раз решил, что это того не стоит.

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