Я ищу дистрибутив, который позволяет пользователям без прав администратора (sudo или других) устанавливать пакеты локально в своем домашнем каталоге. В принципе Домашнее пиво для Linux. Или представьте, если apt-get install <foo>
просто работало, вне зависимости от прав администрации.
Есть причины не реализовывать такую систему, но мне интересно, выпустил ли кто-нибудь дистрибутив с такой функцией.
Разъяснение: Я спрашиваю конкретно о менеджер пакетов предоставляется дистрибутивом. Это не было ясно из первоначальной формулировки моего вопроса. Я также не ищу жестких способов сделать это (например, chroot) или ручного способа (autotools), а ищу дистрибутив, который предоставляет это как встроенный вариант использования.
Я думаю, что практически любой дистрибутив позволяет это сделать, если приложить достаточно усилий. Например, создание среды chroot и установка ваших собственных экземпляров вашего любимого менеджера пакетов. Или просто укажите нужные параметры диспетчеру пакетов.
Хотя, чтобы упростить задачу, вы должны, по крайней мере, иметь доступ к обычным инструментам разработки как обычный пользователь, таким как компилятор C, (auto) make, autotools и т. Д.
Фактически, исходный tarball-выпуск большинства доступных пакетов может быть установлен в ваш домашний каталог независимо от остальной системы, используя "./configure --prefix = / home / example".
Инструмент Debian dpkg, например, имеет такие параметры, как:
--admindir=dir
Change default administrative directory, which contains many files that give information about status of installed or uninstalled packages, etc. (Defaults to /var/lib/dpkg)
--instdir=dir
Change default installation directory which refers to the directory where packages are to be installed. instdir is also the directory passed to chroot(2) before running package's installation scripts, which means that the scripts see instdir
as a root directory. (Defaults to /)
--root=dir
Changing root changes instdir to dir and admindir to dir/var/lib/dpkg.
И процесс установки Debian на самом деле использует такой механизм, короче говоря, он загружается с RAM-диска, а затем создает некую среду chroot, и пакеты в новой среде устанавливаются с помощью таких команд, как:
in-target apt-get update
in-target apt-get install example
Есть ли что-то конкретное, что вам нужно сделать?
Это были бы «все они». Я не знаю ни одного дистрибутива, который не позволял бы пользователям устанавливать программное обеспечение в свои домашние каталоги, если они того пожелают.