web-dev-qa-db-fra.com

Configuration de logrotate sans accès root (rotation du journal par utilisateur)

Quelle est la meilleure façon de configurer logrotate, utilisateur par utilisateur, pour faire pivoter les fichiers du répertoire de base de l'utilisateur, sous le contrôle d'un crontab -e par utilisateur?

17
Bryce

Essayez cette procédure:

  1. créer le dossier /home/user/logrotate

    mkdir /home/user/logrotate
    
  2. créer le fichier de configuration /home/user/logrotate/my.conf avec la directive logrotate selon vos besoins

  3. créez /home/user/logrotate/cronjob pour exécuter logrotate tous les jours à 2 h 30 (il s'agit d'un exemple)

    30 2 * * * /usr/sbin/logrotate -s /home/user/logrotate/status /home/user/logrotate/my.conf > /dev/null 2>&1
    
  4. vérifiez la syntaxe de votre fichier de configuration:

    logrotate -d /home/user/logrotate/my.conf
    
  5. configurez crontab pour exécuter logrotate ( Warning : Ceci supprime les entrées existantes dans votre crontab. Utilisez crontab -e pour ajouter manuellement la ligne de l'étape 3 à une crontab existante):

    crontab /home/user/logrotate/cronjob 
    

Après cette dernière commande, logrotate fera pivoter le fichier comme indiqué dans /home/user/logrotate/my.conf et enregistre le statut du fichier journal dans /home/user/logrotate/status.

Utilisation:

crontab -r   # remove crontab activities for user
crontab -l   # to list crontab activity for user
crontab -e   # edit user crontab entries

Voici la page de manuel logrotate et crontab .

25
Lety