2013-03-22 26 views
6

Quale sarebbe il modo più semplice per eseguire un comando ogni volta che viene aggiunto un nuovo utente?Esegui script shell ogni volta che viene creato un nuovo utente

Ho controllato tramite /etc/adduser.conf ma non c'è niente in quello che sembra che lo farà?

ho pensato aggiunto agli utenti .bashrc quindi finite eseguito quando il login, ma avrei preferito che l'installazione prima di aver effettuato il login.

Qualsiasi aiuto sarebbe apprezzato.

+0

Se vuoi che funzioni su una shell di login, '.bash_profile' è il posto dove metterlo. Se lo metti in '.bashrc', verrà eseguito quando avvieranno shell non di login (e in shell di login se' .bash_profile' include '.bashrc'). – Inductiveload

+0

@lnductiveload Questa è la cosa ... quegli script verranno eseguiti solo quando il nuovo utente effettua effettivamente il login. Voglio che lo script venga eseguito non appena ho aggiunto il nuovo utente. – bsmoo

risposta

10

Da man adduser:

If the file /usr/local/sbin/adduser.local exists, it will be exe‐ 
    cuted after the user account has been set up in order to do any 
    local setup. The arguments passed to adduser.local are: 
    username uid gid home-directory 

Sembra che è possibile aggiungere le azioni degli utenti di creazione di qui.

+1

Un altro caso di rtfm! Grazie per l'aiuto. – bsmoo

+0

Si potrebbe anche voler 'chmod + x adduser.local'. – e9t

0

Non so modo diretto ... Ma, è possibile verificare la presenza di cambiamenti nella /etc/passwd file o /home directrory, utilizzando, per esempio inotifywait o utilizzando qualche lavoro cron.

0

Ho fatto questo alcuni anni fa scrivendo uno script personalizzato che fa tutto ciò di cui ho bisogno e chiamando lo adduser all'interno dello script per aggiungere l'utente al sistema.

Problemi correlati