У меня небольшая проблема. У меня есть пользователь без пароля (jenkins) в системе Unix. Этот пользователь используется jenkins для выполнения некоторых команд. Поскольку я установил nvm в этой системе Unix, мне нужно было добавить /etc/profile
раздел, чтобы пользователи знали, где находится двоичный файл.
Выполняя
sudo -u jenkins nvm
Я получаю следующую ошибку:
[USER@HOST ~]$ sudo -u jenkins nvm
/bin/nvm: line 6: /bin/nvm.sh: No such file or directory
Для любого другого пользователя эта настройка работает, но не для пользователя jenkins. У пользователя jenkins нет собственного домашнего каталога в папке /home. Поэтому, я думаю, это причина, по которой она для него не работает.
Как применить эти настройки к пользователю jenkins?
Linux xx 3.10.0-957.21.3.el7.x86_64 #1 SMP Fri Jun 14 02:54:29 EDT 2019 x86_64 x86_64 x86_64 GNU/Linux
решение1
Чтобы оболочка могла читать и выполнять команды из и т. п. при переключении пользователей с помощью /etc/profile
, вам, вероятно, потребуется использовать параметр или , то есть ./etc/bashrc
sudo
-i
--login
sudo -i -u jenkins nvm