Eu criei uma variável $JAVA_HOME
em '/ etc / environment'
JAVA_HOME="/usr/lib/jvm/jdk"
PATH="...bla bla bla:$JAVA_HOME/bin"
Eu também editei /etc/profile
para ter source /etc/environment
para que todos os usuários tenham Java em casa. e o próprio diretório foi feito 755 para acesso.
A impressão como root
para env
:
LANG=C.UTF-8
SUDO_GID=1000
USERNAME=root
JAVA_HOME=/usr/lib/jvm/jdk
SUDO_COMMAND=/bin/su
USER=root
PWD=/home/ssuser
HOME=/root
SUDO_USER=ssuser
SUDO_UID=1000
MAIL=/var/mail/root
TERM=xterm
SHELL=/bin/bash
SHLVL=2
LOGNAME=root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin
Mas quando faço o mesmo que ssuser
sem sudo
-ing, a variável de ambiente $JAVA_HOME
é expandida para o caminho real.
SSH_CONNECTION=193.128.134.115 18497 10.1.4.4 22
LESSCLOSE=/usr/bin/lesspipe %s %s
LANG=C.UTF-8
JAVA_HOME=/usr/lib/jvm/jdk
XDG_SESSION_ID=2
USER=ssuser
PWD=/home/ssuser
HOME=/home/ssuser
SSH_CLIENT=193.128.134.115 18497 22
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
SSH_TTY=/dev/pts/0
MAIL=/var/mail/ssuser
TERM=xterm
SHELL=/bin/bash
SHLVL=1
LOGNAME=ssuser
XDG_RUNTIME_DIR=/run/user/1000
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/jdk/bin
LESSOPEN=| /usr/bin/lesspipe %s
E isso não tem nada a ver com o que está definido em /etc/sudoers
para as configurações de redefinição / manutenção de env_var. Porque eu tentei isso em um computador diferente e funciona muito bem.
Estou um pouco sem noção do porquê isso está acontecendo. Além disso, algo muito estranho que notei é que, para uma única sessão, os usuários do sudo não estão sendo solicitados a digitar a senha. Eu verifiquei /etc/sudoers
e está configurado corretamente para perguntar a senha para root
.
Eu tentei fechar a sessão e reabrir. Eu posso ver como eles como um usuário normal, não como root. Além disso, a reinicialização não faz nada diferente.