Isso é meio difícil de responder, já que você não nos contou sua distribuição ou qual gerenciador de pacotes está usando. Existem várias maneiras de fazer isso, uma das quais é tornar o gerenciador de pacotes em uma função. Usarei apt-get
como exemplo.
Renomeie o executável apt-get
:
sudo mv /usr/bin/apt-get /usr/bin/apt-get.bin
Crie um pequeno script de wrapper que chame apt-get
e envie o email:
#!/bin/sh
./apt-get.bin "$@" && echo "User $SUDO_USER ran 'apt-get $@'" |
sendmail [email protected]
Salve o script acima como /usr/bin/apt-get
e torne-o executável:
sudo chmod a+x /usr/bin/apt-get
Agora, cada vez que um usuário executar com sucesso apt-get
, um email será enviado para [email protected]
.
Esta não é a maneira mais elegante e pode ser facilmente ignorada por um usuário chamando apt-get.bin
diretamente, mas pode atender às suas necessidades. Também não ajudará se um usuário instalar um pacote a partir da origem ou usar aptitude
ou dpkg
diretamente.