Eu tenho 2 arquivos grandes em, /var/log/account
, de 350MB cada ..., minha raiz é de apenas 10GB ...
Eu li que poderia ter ckpacct
para ciclo e gzip, mas eu não consigo encontrá-lo, também não há comando alternativo?
EDIT: Eu achei que sudo accton off
desativa o log, mas os arquivos permanecem lá, e eu acho que minha próxima inicialização será ativada novamente ...
eles parecem estar sendo pedalados, mas quem realmente faz isso?
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
EDIT: meus scripts de inicialização de adivinhação fazem o ciclo ... de qualquer forma, criei esse script, mas não sei quais implicações de segurança ele pode ter ... alguma consideração?
cat >ckpacct.sh
#!/bin/bash
if [[ -n "" ]]; 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((!=0));then exit 1; fi
}
cd /var/log/account;FUNCerror $?
# 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