Postez o chestie care ar putea interesa si pe altii (nu e legata de aplicatia la care ma refer aici).
Am scris altundeva (in threadul despre Debian, parca) cum se poate porni aplicatia care scrie regulile pt iptables (firestarter, de ex.), introducand calea catre scriptul respectiv in /etc/rc.local:
/etc/firestarter/firestarter.sh start
sau
/etc/init.d/firestarter start
Chestia e ca uneori nu merge (cum am patit de curand), pt ca am dezactivat multe servicii de care nu am nevoie, sistemul buteaza foarte repede si scriptul pt firewall ruleaza inainte ca interfata sa isi aloce IP din router.
Workaround:
- setam un cron job pt aplicatia cu pricina (indiferent care ar fi ea) sa ruleze scriptul la fiecare minut.
Asta se poate face in mai multe feluri. Cu
crontab -l
vedem ce cron jobs ruleaza in prezent.
Cu
crontab -e
editam fisierul de configurare.
Sau cu
vim /etc/crontab
ca root.
Daca suntem logati ca user, atunci config file-ul va fi salvat in /var/spool/cron/username
De vreme ce vorbim de firewall, oricum va cere drepturi de root, asa incat editez direct /etc/crontab.
Inseram un rand precum:
* * * * * root /etc/init.d/firestarter start
unde primul camp e minutul, al doilea ora, al treilea ziua din luna, al patrulea luna, al cincilea ziua saptamanii, iar al saselea
comanda care trebuie rulata si userul care o executa.
Asteriscul tine loc pt orice valoare, asa incat scriptul va rula la fiecare minut.
Acum, ca sa nu ne umplem de log files (desi nu e decat un fisier text, dar in timp va creste),
setam un alt “job” in /etc/logrotate.d, sa ii zicem cron, in care specificam intervalul la care logul respectiv va fi arhivat si inlocuit cu altul.
Daca vorbim de Apache Web Server (httpd) sau alte business critical apps, evident ca vom pastra logurile, macar o saptamana etc., deci vor fi rotate weekly etc.
Dar pt ca nu ma intereseaza acest log mai mult de o zi, editez fisierul astfel:
/var/log/cron {
daily
rotate 1
compress
}
Ceea ce va arhiva logul zilei anterioare si il va sterge pe cel redundant.