Respostas:
Se você deseja que seja global, modifique
/etc/profile
ou adicione um script a
/etc/profile.d
Se você quiser que seja específico do usuário, modifique
/home/$USER/.profile
/usr/local/bin/pihole -c
comando no logon automático de usuário específico. Adicionada esta linha a /home/$USER/.profile
- nada acontece. Quando adiciono script /etc/profile.d
, ele funciona, mas é global e o executa mesmo quando abro a sessão ssh (que não é o que eu quero). Adicionando ao .bashrc
funciona também, mas é executado sempre que eu abro um novo shell (que não é o que eu quero). Pergunta: Por que adicionar a /home/$USER/.profile
não funcionaria ???
Basta adicionar o script bash aos aplicativos de inicialização.
No campo de comando, insira
bash /full/path/to/bash/script.sh/
Se você quiser ser mais específico do bash, também pode escrever seu código em ~ / .bash_profile ou ~ / .bash_login.
E você pode fonte qualquer script nele, por exemplo:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
/etc/profile
ou $HOME/.profile
ou$HOME/.bash_profile
Eu recomendo não usar /etc/profile.d/yourscript.sh
se produz saída. Ao usar uma sessão não interativa, você receberá uma $TERM is not set
mensagem. Isso é perceptível ao usar o protocolo ssh, como scp. Normalmente, não é grande coisa, no entanto, a Veeam não gosta e lança um aviso. Eu sei que a Veeam não é o tópico aqui, mas vale a pena mencionar que nem todos os aplicativos ignoram o $TERM is not set
aviso normalmente .
Em resumo, se o script gerar saída, coloque-o nos locais especificados na primeira linha. No entanto, se você estiver modificando o ambiente e seu script não gerar saída, use o último.
.sh
se você colocar seu script dentro de/etc/profile.d/
.chmode +x /etc/profile.d/myscript.sh
claro também.