Suivez le flux RSS (1923 abonnés) | Suivez-moi sur Twitter (2525 followers)

 

Blog de culture web et nouvelles technologies

Lister les cron job de tous les utilisateurs Linux

Système | 2 réactions »
Faible interêtMoyenIntéressantA bookmarkerWow ! (1 vote(s), moy. : 5,00 sur 5)
Loading ... Loading ...

cron-linuxLes Cron (tâches) sont rattachés à un utilisateur système sous le système d’exploitation Linux.

Par mesure de sécurité il est fortement conseillé d’exécuter ces crons sous un autre utilisateur que root. Dans le cas où vous faites de la maintenance sur des serveurs ne vous appartenant pas, cela devient vite un casse tête de trouver quel utilisateur exécute ces tâches ?

A titre de rappel, la commande pour lister les cron job de l’utilisateur courant :

# crontab -l

Pour lister les cron job d’un autre utilisateur que l’utilisateur courant :

# crontab -u nom_utilisateur -l

A condition toutefois d’avoir les droits de lecture sur le fichier, ce qui peut ne pas être le cas pour tous les utilisateurs.

Je vous propose de lister les tâches de tous les utilisateurs (listés dans /etc/passwd). Définissons un alias depuis l’utilisateur root :

# alias cronall='for user in $(cut -f1 -d: /etc/passwd); do echo -e "\n\n==> $user:" && crontab -u $user -l; done'

Il vous suffit ensuite de faire appel à cronall Lire la suite »

Exécuter un script shell avec permission root en PHP

Système | 3 réactions »
Faible interêtMoyenIntéressantA bookmarkerWow ! (3 vote(s), moy. : 3,33 sur 5)
Loading ... Loading ...

Il peut arriver d’avoir besoin d’automatiser des actions sur un serveur linux via une page web, typiquement en PHP. Ne trouvant que peu de documentation sur ce principe, je vous propose une solution qui devrait fonctionner sur la majorité des serveurs (testée sous Debian et Ubuntu pour mon cas).

Nous allons dans cet exemple redémarrer le service DNS (Bind9) grâce à un formulaire html exécutant cette fameuse commande via un bout de code PHP. Lire la suite »