LinuxForum.Fans
Тема

Модульные (изолированные) платформы

Автор: Andrey_A_Kireev 15 сообщений 2656 просмотров
#64066

У меня есть вопрос по платформам (сборкам) где операционная система изолирована от интегрируемого ПО, где любое ПО как модуль полностью изолировано и не внедряется в структуру самой операционки.
На одном сайте писали:

В рамках проектов Elemantary и Portable Linux Apps была разработана система, позволяющая создавать "переносные" приложения, которые не требуют установки и смогут работать в любом дистрибутиве. Создатели этой системы придерживаются идеи "1 файл = 1 приложение", который несколько похож на подход к установке программ в MacOS.

Хотя в данном упоминании про Мак все не совсем правильно. В Маке точно также и в Виндах и в Линуксах инсталируемое ПО представляет один упакованый файл который в процессе инсталяции распределяется по системе. ПО распространяется одним файлом, а в реальной системе это множество файлов разбросаных тот тут то там.
Меня интересуют сборки и платформы в которых ОС полностью изолирована от софта который устанавливается или подключается.
Нечто подобное реализовано в проэкте slax.org где каждый програмный пакет представляет из себя независимый lmz модуль который не распаковывается и не внедряется в структуру операционки, подключил модуль работай, удалил и все чисто как будто ничего и не было. Кто юзал Slax наверное поймет о чем я говорю, это некое линуксовое подобие WinPortable приложений где каждая софтина сама по себе.
Меня интересует именно такая изолированая модульная LinuxPortable платформа, в которой какойбы не использовался софт не приходилось потом вычищать мусор и оставшиеся не используемые файлы от того или иного ПО. Нужно чтобы любое ПО было изолировано от самой операционнй системы на уровне файловой структуры.
Именно поэтому я разыскиваю модульные линуксовые реализации (сборки) подобные Slax.

P.S. Я не линуксоид и если кто начнет холивары - ДОСВИДОС.

#64069

создаём блочное устройство, готовим ПО так, чтоб оно не хотело /usr/..[etc] и кладём в это устройство со своей ФС.
потом монтируем и запускаем.
так пойдёт?

#64075

Вопрос не в том как подготовить изолированный софт, а в том чтобы сама ОС изначально была на такой софт ориентирована, чтобы ОС сама изолировала файлы пользователя и его софт от самой себя.
Чтобы любые файлы которые хотят прописаться в /bin /ect /var или каком еще другом месте принадлежащем самой ОС могли располагаться только в директориях самого пользователя. Чтобы с удалением акаунта автоматом удалялся и им инсталированный софт и весь хлам который вместе с этим софтом пришол в систему.
Суть в том чтобы сама ОС не позволяла производить какие либо махинации как пользователям так и инсталированному софту в ее собственной файловой структуре.
Изолированность ОС от ПО и пользователя должна быть на уровне файловой системы.

#64076

freebsd, linux [..etc] могут выполнять всё перечисленное, более того, можно просто поставлять образ /var, /usr раздела с уже установленной базовой системой и DE, затем монтировать его и работать.
вам нужно шоб всё искоробки?
а... ну удачи.

#64090

Эээ... а библиотеки как тогда? Они будут статически слинкованы с бинарниками в вашем "изолированном софте"?- дык это уже есть, называется венда.

#64111

В первом посту я не зря упоминул проэкт slax.org
Если мой вопрос не совсем понятен скачайте, запустите и посмотрите на каком принципе работают модули для Slax.
Я ищу подобные реализации, но не для LiveCD а как стационарные платформы с подобной изоляцией (или модульной инсталяцией) софта.
Я не знаю кто из линуксовых брендов идет по подобному пути, я перебрал уже множество всем известных и мало известных дистрибутивов, но такого подхода как в Slax я еще не нашол ни у кого другого.
Я не линуксоид но пытаюсь понять как такой подход можно прикрутить к темже Федорам\Убунтам\Сусям\Мандривам\..... и т.д.
Как заставить класическую сборку работать по такойже схеме как в Slax.
Если такая реализация на сегодня является уникальной, то мой вопрос на публичном форуме по сути безсмысленный, придется общаться только с автором Слакса.

#64113

Не торопитесь с выводами wink Слакс видел только краем глаза, при случае посмотрю внимательнее, что там за модули.

#64114

ИМХО если запихнуть все библиотеки и бинарник в 1 файл - удобно, но громоздко.
Многие бинарники используют одни и те же библиотеки.
Собственно поэтому и были созданы отдельные папки для библиотек (ну и всего прочего).
Если одни и те же библиотеки рассовывать по каждому бинарнику - столько места пропадёт зря.
Ладно если прога одна, а если их сотни?
Собственно тогда и получится винда, и не просто винда, виста....
Неповоротливое, глючное, тормозное создание....
Нет уж спасибо, я лучше руками почищу если что! Хотя в свете последних менеджеров ПО в линуксе, делать этого почти не приходится, они прекрасно справляются сами.
А настройки той или иной проги и так храняться в /home/имя_юзера, и удаляя пользователя, весь хлам удаляется.
ИМХО вопрос ни о чём.

#64117

Опять повторюсь посмотрите своими глазами на Slax в работе чтобы понять о чем разговор.
Обьем модулей там на удивление далеко не гигантский, а очень даже компактный.
К вопросу о компактности и потребности.
Вот к примеру загляньте в свою Линуксу в /lib где у вас лежат эти самые библиотеки колличество их там не маленькое и обьем не маленький, вы сами сможете определить какая для чего нужна? каким софтом используется? и когда последний раз она вообще использовалась эта самая библиотека? нужна ли она вам вообще?

#64131

Я просто не знаю реализована где либо идея которую я увидел в Слаксе и то как можно былобы реализовывать такую изоляцию на любой линукс платформе.
Как я это представляю.
Суть в том что перед инсталяцией софта делаем пустую копию корневой системы и подставляем (замещаем) вместо основной на время инсталяции. Софт разворачивается в совершенно пустую файловую структуру.
После инсталяции возвращаем оригинальный рут на свое место, а та копия куда мы инсталировали софт сворачивается в один пакет, теперь в любой нужный момент можно просто примонтировать этот пакет к нашему руту и софт на месте, отмонтировали пакет и софта как не бывало.
Либо так.
Создается образ ФС. Рут переводим в ридонли а все изменения направляем в ранее созданый образ. В процессе инсталяции все изменения сохранятся только в образе и не затронут оригинальную систему. В дальнейшем достаточно смонтировать образ чтобы воспользоваться тем что в нем есть.

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

#64148

chroot, fakeroot, контейнеры ака virtuozo и qemu-usermode

#64801

Всем спасибо.
Одним словом аналогичных готовых решений нет, и такой модульный подход ноу-хау Слакса.

#64843

Вы бы хоть сами децл попробовали разобраться в вопросе...

"Модуль - это некоторый файл с расширением lzm. Файл этот - архив и содержит в себе что-то вроде "патча" на корневую систему (при загрузке lzm-файл распаковывается в "/", при этом новые файлы добавляются, а существующие заменяются). По большому счету lzm-модуль не отличается от rpm, deb, tgz пакетов. Важно, что происходит только распаковка - и более никаких действий."

#65048

В том что эти програмные модули устроены на squashfs и монтируются к руту, и что это в принципе отличается от всем известных rpm/tgz/deb я понял до того как создал тему.
Меня интересовала и интересует подобная реализация на других платформах (кто еще кроме Слакса).
А имено где софт можно также оперативно включать и отключать на раз и два.
К томуже на мой взгляд это хорошая идея для защиты самой операционки как таковой, ибо если она в виртуально смонтированом образе твори что хочешь все действует до перезагрузки.

#65056

Все-таки не понимаю принципиальной разницы между этим способом и rpm -ihv... rpm -e...

Andrey A Kireev написал:
твори что хочешь все действует до перезагрузки

Я таким не занимаюсь :) Ну если уж очень нужно, проще на виртуалке.

Войдите или зарегистрируйтесь, чтобы ответить.