J'ai récemment eu un tas d'entrées dans mon journal btmp [en raison d'un mouvement abrupte de ma part] J'ai résolu le problème, mais maintenant je voudrais effacer ce journal, je l'ai copié ailleurs pour référence, puis j'ai essayé d'annuler le fichier, mais en vain. J'ai ensuite vérifié les autorisations pour le fichier lui-même et tout se passe bien? Ne sachant pas pourquoi il ne laissera pas Sudo accéder au fichier.
user@localhost:~$ Sudo cat /dev/null > /var/log/btmp
-bash: /var/log/btmp: Permission denied
user@localhost:~$ ls -a -l /var/log/btmp
-rw-rw---- 1 root utmp 5502336 Aug 20 18:59 /var/log/btmp
Je cherchais simplement d'autres idées. J'ai essayé de modifier les autorisations, puis de les rétablir simplement parce que. J'ai également essayé quelques autres moyens pour supprimer le texte. Mais je veux comprendre pourquoi cela ne fonctionne pas simplement. Merci pour toute aide!
Votre commande n'utilise pas Sudo pour écrire dans le fichier journal. Elle utilise (inutilement) Sudo pour cat/dev/null. L'écriture (redirection de sortie) via l'opérateur >
est toujours effectuée en tant qu'utilisateur habituel.
Vous pouvez faire l'une des choses suivantes
Sudo sh -c 'cat /dev/null > /var/log/btmp'
ou
cat /dev/null | Sudo tee /var/log/btmp
cependant, il n'y a vraiment pas besoin de quoi que ce soit. vous pouvez également tronquer le fichier simplement en ne redirigeant rien
Sudo -i
> /var/log/btmp
exit
ou en utilisant la commande truncate
Sudo truncate -s0 /var/log/btmp