Как установить php-cli без прав root? [дубликат]

У меня нет root-доступа на этой машине.

Я хотел бы знать, есть ли способ, которым я могу загрузить пакеты Ubuntu и установить их как не root?

Возможно, в моем ~/bin или ~/usr/share или что-то вроде этого? Это сработает?

176
задан 4 June 2014 в 02:57

2 ответа

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

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

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

apt-get download package

Замените пакет на имя пакета

После вызова deb-файла dpkg прямо из командной строки. Следующий пример установит package.deb в ваш домашний каталог.

dpkg -i package.deb --force-not-root --root=$HOME 

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

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

apt-get source package
cd package
./configure --prefix=$HOME
make
make install

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

EDIT:

Поскольку dpkg -i не работает (см. комментарии), я предлагаю следующую альтернативу:

dpkg -x package.deb dir

Это извлечёт пакет .deb в dir. Затем вы можете экспортировать PATH, где находится двоичный файл. Пока все зависимости двоичного файла установлены, он должен работать как обычно.

128
ответ дан 4 January 2021 в 10:32

Я предполагаю, что вы хотите установить jedit. Сначала вы должны найти пакет и скачать его. Я просто беру deb файл с какого-нибудь зеркала и открываю консоль/терминал:

  1. mkdir /tmp/jedit && cd /tmp/jedit -- Делаю новую директорию в tmp и вношу в неё изменения.
  2. wget http://mirrors.kernel.org/ubuntu/pool/universe/j/jedit/jedit_4.3.1.dfsg-0ubuntu1_all.deb -- Скачать пакет
  3. ar x jedit_4.3.1.dfsg-0ubuntu1_all.deb или, легко набрать, ar x *.deb -- извлекает содержимое файла
  4. tar xvzf data.tar.gz -- в файле data.tar.gz есть все необходимое для выполнения программы
  5. usr/bin/jedit открывается редактор
  6. done :-)

Вы можете переместить файлы в какую-нибудь точку своего домашнего каталога и выполнять их оттуда.

16
ответ дан 4 January 2021 в 10:32

Другие вопросы по тегам:

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