C'est le premier message depuis longtemps. Récemment, j'ai joué avec ubuntu mate installé sur gpd-micropc.
Je cherchais un moyen d'obtenir automatiquement le journal des opérations dans le terminal. Au début, j'ai pensé que je devrais écrire une commande de script en .bashrc, mais cela ne semble pas fonctionner. .. J'ai trouvé divers articles que j'ai recherchés et qui m'ont été utiles. How do I log all input and output in a terminal session?
ubuntu-mate installé sur gpd micropc
OS: Ubuntu 19.10 eoan
Kernel: x86_64 Linux 5.3.0-40-generic
Shell: bash
DE: MATE 1.22.2
CPU: Intel Celeron N4100 @ 4x 2.4GHz
GPU: Mesa DRI Intel(R) UHD Graphics 600 (Geminilake 2x6)-
Puisque le journal sera sorti avec la commande logger
, créez un fichier de paramètres ci-dessous
vim /etc/rsyslog.d/bash.conf
/etc/rsyslog.d/bash.conf
local6.* /var/log/commands.log
.bashrc
Ajoutez ce qui suit à .bashrc
sous le répertoire personnel de l'utilisateur dont le journal des opérations doit être acquis.
vim /home/hoge(Utilisateur cible)/.bashrc
/home/hoge(Utilisateur cible)/.bashrc
whoami="$(whoami)@$(echo $SSH_CONNECTION | awk '{print $1}')"export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$whoami [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
Redémarrez le service rsyslog
systemctl restart rsyslog.service
Créez un fichier de configuration à faire pivoter quotidiennement avec logrotate.d
vim /etc/logrotate.d/commands
/etc/logrotate.d/commands
/var/log/commands.log*
{
»-rotate 7
»-daily
»-dateext
»-missingok
»-notifempty
»-compress
»-postrotate
»-»-/usr/lib/rsyslog/rsyslog-rotate
»-endscript
»-su root root
}
Lisez .bashrc
source .bashrc
Confirmez que le fichier est créé sous / var / log
comme indiqué ci-dessous
ls -la /var/log/commands.log*
-rw-r-----1 syslog adm 4753 15 mars 19:34 /var/log/commands.log
/var/log/commands.log
Mar 15 19:34:29 hoge hoge: hoge@export [3457]: 2020-03-15 19:34:29 cd [0]
Mar 15 19:34:39 hoge hoge: hoge@export [3457]: 2020-03-15 19:34:37 source .bashrc [0]
Mar 15 19:36:56 hoge hoge: hoge@export [3457]: 2020-03-15 19:36:56 ls -la /var/log/commands.log* [0]
Je me demande si je peux me connecter. .. Après cela, je veux la sortie comme la commande de script. ..