Posso fazer o equivalente a tail -f para o histórico do bash?

0

Gostaria de poder ver o history de um usuário, mas em tempo real. Meu primeiro pensamento foi usar tail -f para rastrear qualquer arquivo que atualize o histórico. Isso é possível? Ou existe uma alternativa melhor para ver comandos em tempo real?

O cenário específico em que estou é o local onde eu e outro engenheiro somos sudo'd para o mesmo usuário - como esse usuário, gostaria de ver comandos executados por esse usuário.

    
por MrDuk 02.03.2018 / 11:16

2 respostas

4

O histórico em ~/.bash_history é gravado no logout, não antes. Se você quiser isso, ele já foi respondido aqui :

If you want to make sure that they're always written immediately, you can put that command into your PROMPT_COMMAND variable:

export PROMPT_COMMAND='history -a'

Depois disso, você pode fazer um tail -f $HISTFILE ou tail -f ~/.bash_history , se a variável de ambiente $HISTFILE não estiver definida (o local padrão é ~/.bash_history , mas pode mudar) e verá os comandos serem adicionados ao arquivo de histórico em tempo real.

    
por 02.03.2018 / 11:24
0

Você poderia usar psacct (um pouco datado) ou auditd (muito mais flexível) para monitorar os processos que um usuário executa. O Auditd pode ser configurado imediatamente e começará a registrar as execuções do usuário, embora seja um sistema complicado.

    
por 14.03.2018 / 00:55