( Cette question traite d'un problème similaire, mais parle d'un fichier journal avec rotation.)
Aujourd'hui, j'ai reçu un message système concernant l' /var
espace très faible .
Comme d'habitude, j'ai exécuté les commandes dans la ligne, sudo apt-get clean
ce qui n'a amélioré que légèrement le scénario. Ensuite, j'ai supprimé les fichiers journaux en rotation, ce qui a encore une fois apporté très peu d'amélioration.
Après examen, je constate que certains fichiers journaux de la base de données /var/log
sont devenus très volumineux . Pour être précis, ls -lSh /var/log
donne,
total 28G -rw-r----- 1 syslog adm 14G Aug 23 21:56 kern.log -rw-r----- 1 syslog adm 14G Aug 23 21:56 syslog -rw-rw-r-- 1 root utmp 390K Aug 23 21:47 wtmp -rw-r--r-- 1 root root 287K Aug 23 21:42 dpkg.log -rw-rw-r-- 1 root utmp 287K Aug 23 20:43 lastlog
Comme on peut le constater, les deux premiers sont les fautifs. Je suis un peu surpris de savoir pourquoi ces fichiers volumineux n'ont pas été pivotés.
Donc qu'est ce que je devrais faire? Supprimez simplement ces fichiers puis redémarrez? Ou optez pour des mesures plus prudentes?
J'utilise Ubuntu 14.04.
MISE À JOUR 1
Pour commencer, le système n'a que quelques mois. J'ai dû installer le système à partir de rien quelques mois en arrière après un crash de disque dur.
Maintenant, comme indiqué dans cette réponse , j’ai d’abord vérifié les fichiers journaux incriminés tail
, sans surprise. Ensuite, pour une inspection plus approfondie, j'ai exécuté ce script à partir de la même réponse .
for log in /var/log/{syslog,kern.log}; do
echo "${log} :"
sed -e 's/\[[^]]\+\]//' -e 's/.*[0-9]\{2\}:[0-9]\{2\}:[0-9]\{2\}//' ${log} \
| sort | uniq -c | sort -hr | head -10
done
Le processus a pris plusieurs heures. La sortie était dans la ligne de,
/var/log/syslog : 71209229 Rafid-Hamiz-Dell kernel: sda3: rw=1, want=7638104968240336200, limit=1681522688 53929977 Rafid-Hamiz-Dell kernel: attempt to access beyond end of device 17280298 Rafid-Hamiz-Dell kernel: attempt to access beyond end of device 1639 Rafid-Hamiz-Dell kernel: EXT4-fs warning (device sda3): ext4_end_bio:317: I/O error -5 writing to inode 6819258 (offset 0 size 4096 starting block 54763121030042024) <snipped> /var/log/kern.log.1 : 71210257 Rafid-Hamiz-Dell kernel: attempt to access beyond end of device 71209212 Rafid-Hamiz-Dell kernel: sda3: rw=1, want=7638104968240336200, limit=1681522688 1639 Rafid-Hamiz-Dell kernel: EXT4-fs warning (device sda3): ext4_end_bio:317: I/O error -5 writing to inode 6819258 (offset 0 size 4096 starting block 954763121030042024)
( /dev/sda3
est mon répertoire personnel. Comme nous pouvons le trouver,
lsblk /dev/sda NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 931.5G 0 disk ├─sda1 8:1 0 122.1G 0 part / ├─sda2 8:2 0 7.6G 0 part [SWAP] └─sda3 8:3 0 801.8G 0 part /home
Pourquoi un processus voudra-t-il écrire au-delà de la limite n'entre pas dans le cadre de ma compréhension? Peut-être que je voudrai poser une question différente dans ce forum si cela continue même après une mise à jour du système.)
Ensuite, à partir de cette réponse (vous pouvez vérifier ceci pour une compréhension plus profonde), j’ai exécuté,
sudo su -
> kern.log
> syslog
Maintenant, ces fichiers n'ont aucune taille. Le système fonctionne correctement avant et après un redémarrage.
Je regarderai ces dossiers (ainsi que d’autres) dans les prochains jours et ferai un rapport
s’ils se comportent de manière inacceptable.
Pour terminer, les fichiers incriminés ( kern.log
et syslog
) sont configurés pour faire l'objet d'une rotation, ainsi que l'inspection des fichiers ( grep
aidés) dans les
/etc/logrotate.d/
émissions.
MISE À JOUR 2
Les fichiers journaux sont réellement pivotés. On dirait que les grandes tailles ont été atteintes en un seul jour.
la source
Réponses:
Non. Videz-les mais n'utilisez pas
rm
car cela pourrait planter quelque chose pendant que vous tapez latouch
commande pour le recréer.Méthode la plus courte:
Si ce n'est pas la racine, il faudra
sudo
. Tiré d'une autre réponse sur AU.AVANT DE FAIRE QUE. Faites un
tail {logfile}
et vérifiez s'il y a une raison pour qu'ils soient si gros. À moins que ce système ne date de plusieurs années, il ne devrait y avoir aucune raison à cela et résoudre le problème vaut mieux que de laisser cela se poursuivre.Kern.log et syslog ne devraient normalement pas être aussi gros. Mais comme je l’ai dit: si ce système fonctionne pendant des années et des années, il est peut-être normal que les fichiers soient simplement effacés.
Et pour l'empêcher de devenir aussi gros à l'avenir: la configuration
logrotate
. Il est assez simple et compressera le fichier journal quand il deviendra plus grand que la taille que vous avez définie.Autre chose: si vous ne voulez pas supprimer le contenu, vous pouvez compresser les fichiers en les compressant ou en les compressant. Cela vous donnera des fichiers probablement 10% de ce qu'ils sont maintenant. C'est-à-dire s'il y a encore de la place sur le disque pour le faire.
la source
wtmp: Command not found
De quel paquet s'agit-il?>
être une invite et j'ai essayé "lastlog" et cela a fonctionné. J'ai donc supposé que j'avais bien compris: PIl est probablement utile d’essayer d’établir ce qui remplit le ou les journaux, soit en les examinant simplement visuellement à l’aide de la commande
less
ou.tail
ou si les lignes en cause sont trop profondément enfouies pour voir facilement ce qui se passe, quelque chose comme
(Remarque: cela peut prendre un certain temps, étant donné la taille des fichiers) qui tentera de supprimer les horodatages, puis comptera les messages les plus fréquents.
la source
Ma méthode pour nettoyer les fichiers journaux du système est la suivante. Les étapes 1 et 2 sont facultatives, mais vous devez parfois vérifier les anciens journaux et la sauvegarde est parfois utile. ;-)
Facultatif: Copier le fichier journal
Facultatif: Utilisez Gzip sur la copie du journal
Utilisez / dev / null pour le fichier propre
Et nous utilisons pour cela les journaux (uniquement sur plusieurs serveurs) logrotate et un script hebdomadaire exécuté par tous les fichiers avec * .1 (ou la rotation suivante) compressés par gzip.
la source
J'ai installé Ubuntu 16.04 aujourd'hui et j'ai remarqué le même problème. Cependant, j'ai résolu ce problème avec busybox-syslogd. Ouaip! Je viens d'installer ce paquet et le problème a été résolu. :)
Après avoir installé ce paquet, réinitialisez
syslog
etkern.log
:J'espère que cette solution simple est utile à d'autres personnes.
la source