GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

/var/log/account/pacct wird zu groß, wo ist Ckpacct (in Cicle/gzip It)?

Ich habe 2 große Dateien unter /var/log/account , von jeweils 350 MB…, mein Root hat nur 10 GB…

Ich habe gelesen, es könnte ckpacct haben zu radeln und zu gzip, aber ich kann es nicht finden, auch kein alternativer Befehl?

BEARBEITEN :Ich habe dieses sudo accton off gefunden Deaktivieren Sie die Protokollierung, aber die Dateien bleiben dort, und ich denke, beim nächsten Start wird sie wieder aktiviert ...

Sie scheinen gefahren zu werden, aber wer macht das eigentlich?

369114432 May 13 23:23 /var/log/account/pacct
333708160 May 13 12:27 /var/log/account/pacct.0
 13681065 May 12 16:21 /var/log/account/pacct.1.gz
  3371433 May 11 09:50 /var/log/account/pacct.2.gz
  7549333 May 10 07:35 /var/log/account/pacct.3.gz

BEARBEITEN :Meine Vermutung Boot-Skripte macht den Zyklus… Wie auch immer, ich habe dieses Skript erstellt, aber ich weiß nicht, welche Sicherheitsauswirkungen es haben könnte.. irgendwelche Überlegungen?

cat >ckpacct.sh

#!/bin/bash

if [[ -n "$1" ]]; then
  echo "there is no parameters and no --help, read the script and understand what is does, before running it up."
  exit 1
fi

if [[ "$USER" != "root" ]]; then
    echo "you must be root to run it..."
    exit 1
fi

function FUNCerror() {
    if(($1!=0));then exit 1; fi
}

cd /var/log/account;FUNCerror $? || exit

# fast ungrab pacct file
accton off;FUNCerror $?

mv -v pacct pacct.0.temp;FUNCerror $?

echo -n |tee pacct;FUNCerror $?
chown -v root:adm pacct;FUNCerror $?
chmod -v o-r pacct;FUNCerror $?

accton on;FUNCerror $?

# compress old 0
gzip -v --best pacct.0;FUNCerror $? #releases also pacct.0 filename

mv -v pacct.0.temp pacct.0;FUNCerror $? #restore new 0 from temp

# change file names upping indexes
#mv -v pacct pacct.0
for((i=4;i>=0;i--));do
    mv -v pacct.$i.gz pacct.$((i+1)).gz;FUNCerror $?
done
rm -v pacct.5.gz;FUNCerror $? # remove last in the limit

Akzeptierte Antwort:

Das Skript, das die Protokolle durchläuft, befindet sich in /etc/cron.daily/acct . Die Anzahl der Protokolldateien wird durch /etc/default/acct gesteuert , die auch steuert, ob die Prozessabrechnung beim Booten aktiviert werden soll.

Wenn Sie die Prozessabrechnung vollständig entfernen möchten, sudo apt-get purge acct sollte auch funktionieren.


Ubuntu
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. Debian – /var, /home auf separate Partition verschieben?

  3. Kubuntu zeigt Fehler beim Login (file:///usr/share/sddm//themes/breeze/main.qml:no Such File or Directory)?

  4. Wann sollte ich /dev/shm/ verwenden und wann sollte ich /tmp/?

  5. Syntax der logrotate-Konfigurationsdatei - mehrere Wildcard-Einträge möglich?

So ändern Sie den Pfad der auditd-Protokolldatei /var/log/audit/audit.log

Systemprotokolldatei /var/log/messages wird automatisch gelöscht oder gekürzt (CentOS/RHEL)

CentOS / RHEL :So rotieren Sie /var/log/wtmp- und /var/log/btmp-Dateien mit logrotate

Django static_root in /var/www/... - keine Berechtigungen für collectstatic

Sollten Websites gemäß der empfohlenen Verwendung in /var/ oder /usr/ leben?

Alle /var/log löschen?