Установите composer таким образом, чтобы его каталог, кеш и т. Д. Могли использоваться другими пользователями. - PullRequest
0 голосов
/ 19 октября 2018

Будучи пользователем «root», я устанавливаю свой композитор, как curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin -- --filename=composer, который по умолчанию создает vendor-dir, кеш и т. Д. Внутри /root/.composer.Я хочу установить некоторые глобальные пакеты как root и позволить другим пользователям использовать эти пакеты.Например,

> whoami 
root
> composer global require hirak/prestissimo  (It makes packages download in parallel)
> su www-data
> cd /var/www/drupal
> composer install

Ожидаемое поведение: он должен загружать пакеты параллельно, так как глобально устанавливает hirak / prestissimo, но это не так.Потому что, когда я установил этот пакет, он был внутри /root/.composer/vendor и после переключения на www-данные он не может читать / писать /root/.composer/vendor

1 Ответ

0 голосов
/ 19 октября 2018

Я бы использовал bind mount, вот пост об обмене стека, который описывает его гораздо более подробно, чем я могу:

https://unix.stackexchange.com/questions/198590/what-is-a-bind-mount

Я использовал его прежде, чем выбраться изОграничения CHROOT, например, для пользователей C-Panel ограничены /home/user, поэтому они не могут получить доступ к чему-либо выше этого.С помощью bind mount вы можете связать папку сверху с папкой в ​​своей тюрьме.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...