2012-05-25 27 views
10

Cercando di usare logrotate ed ottengo il seguente errore quando si esegue lo script di registro rotazione per una particolare definizione logrotate.derrore: Errore durante la creazione del file di stato/var/lib/logrotate/Stato: Permesso negato

error: error creating state file /var/lib/logrotate/status: Permission denied

/var/lib/logrotate$ ls -lah 
total 12K 
drwxr-xr-x 2 root root 4.0K 2012-05-11 06:25 . 
drwxr-xr-x 43 root root 4.0K 2012-05-18 08:07 .. 
-rw-r--r-- 1 root root 911 2012-05-25 06:25 status 

non ho toccato quel percorso, quindi mi chiedo perché si creerebbe un errore per difetto ...

risposta

0

Sei sicuro di eseguire questo comando come root ...? ;) I f quindi si prega di verificare se c'è un AppArmour sul sistema - se sì controllare è la configurazione o disinstallarlo (caso di Ubuntu).

+0

Non sicuro, alla fine ho chmoded 'status' a 666 e ha funzionato. Potresti avere ragione, quindi accetterò la risposta :) –

27

DO file di status nonchmod il default per . Se è chmod, ogni utente sul sistema è in grado di utilizzare logrotate come vettore di attacco.

Basta definire un file di stato (privato) per l'utente (supponendo che si stia tentando di eseguirlo come utente normale) con l'opzione [-s|--state file].

0

C'era questa linea in un crontab:

* * * * * root logrotate -s /var/run/logrotate.status /etc/logrotate.conf 

Anche se è stato eseguito come root, non ho potuto sbarazzarsi del "errore: Errore durante la creazione dello stato di file/var/run/logrotate/Stato : Autorizzazione negata "errore.

Così ho appena usato una directory diversa:

* * * * * root /usr/sbin/logrotate -s /var/log/logrotate.status -v /etc/logrotate.conf >/tmp/logrotate.out 2>&1 

Utilizzato l'idea di debug da https://serverfault.com/questions/762587/daily-logrotate-error-creating-unique-temp-file-permission-denied ma ha cambiato in modo che il file di output non cresce all'infinito, che sarebbe ironico.

La modalità dettagliata non ha fornito alcuna informazione aggiuntiva in questo caso, a proposito, solo quale file di configurazione stava leggendo e lo stesso messaggio di errore. Ma era meglio avere l'output su quel file piuttosto che su/var/mailspool.

Problemi correlati