$ USER não configurou ssh

1

Em alguns dos meus servidores wheezy debian existe uma variável global $USER que contém o atual nome de usuário logado e em alguns esta variável não é definida imediatamente no login.

Como eu defino $USER para que esteja disponível em /etc/profile no debian?

Eu tento enviar um email sempre que um usuário faz login com o nome de usuário:

/usr/local/bin/shell-login.sh | mailx -s "SSH Login User $USER on YOUR-HOSTNAME" [email protected]

/usr/local/bin/shell-login.sh contém:

/usr/local/bin/shell-login.sh
#!/bin/bash

echo "Login auf $(hostname) am $(date +%Y-%m-%d) um $(date +%H:%M)"
echo "Benutzer: $USER"
echo
finger

que também não tem saída para $ USER

    
por rubo77 26.01.2015 / 04:05

1 resposta

2

Você pode substituir $USER por $(whoami) (um comando incorporado em quase todos os sistemas Unix).

Quanto a por que $USER não está definido, ele é normalmente definido por login . Mas como você está usando o SSH no servidor em vez de usar um shell interativo real, a variável $USER (e várias outras variáveis de ambiente) nunca é definida.

    
por 26.01.2015 / 04:37