Установка программ пользовательского пространства на сервер без доступа root

1 ответ

Я не уверен, применимо ли это в вашем случае, но я использую трансплантат .

Это в основном позволяет мне иметь дерево установленных пакетов в любом месте, которое я хочу (например, $ HOME / packages ), и устанавливать символические ссылки на их файлы в любой иерархии, которую я хочу (например, в $ HOME / local или / usr / local , если у меня есть root-доступ). Фактически, это помогает вам поддерживать ряд пользовательских скомпилированных пакетов (скомпилированных так же, как и вы, но с - prefix = /path/to/packages/foo-1.2.3, чтобы они попали в обычное место) - и у вас даже может быть несколько версий одного и того же пакета. Вы не создаете обычного беспорядка, потому что вы можете выбрать, какая версия должна быть активной в любое время:

$ cd $HOME/packages
$ ls 
mpv-git
texinfo-4.13
texinfo-git

$ graft -i texinfo-4.13
$ # symlinks now installed in my $HOME/local/bin, $HOME/local/lib, etc
$ # and since $HOME/local/bin is in my PATH, I now have texinfo-4.13
$
$ graft -d texinfo-4.13
$ # removed texinfo 4.13 symlinks - let's install bleeding edge version
$
$ graft -i texinfo-git

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

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

0
27.01.2020, 22:52

Теги

Похожие вопросы