Hi

With Linux it is possible to setup an certain user and than clone the 
complete homedirectory to an other username. The only program I 
couldn't manange to work with that is mozilla :(.
In computer pool here the officials don't want personal acounts, so 
every workstation has it's own unpersonal account. I remove and 
recreate this acounts every night, so every morning the desktops are 
brand new. So ist is also easy to change something on all 
workstations. For this job I use the following script.

The script may be not perfect but it works since 2 years.

Hendrik


------------------------------------------------------------------------
#!/bin/sh
 
################################################################
#        Einstellungen
################################################################
# Verstlegung der Usernamen deren Home neueungespielt werden soll
USERNAMES="user1 user2"
 
# Filename der Backupfiles
HOMEBACKUPFILE=/scratch/shares/backup/home/default-home.tar.gz
 
################################################################
#         Erstellen der Archivs
################################################################
cd /home/defuser
tar -czf $HOMEBACKUPFILE * .[!.]*
 
#################################################################
#         Erstellen der Homeverzeichnisse
#################################################################
 
for USER in $USERNAMES ; do
    # Homedirectory l�schen und neu anlegen
 
    rm -rf /home/$USER
    mkdir /home/$USER
 
    # in das neue Home wechseln und Backup einspielen
    cd /home/$USER
    tar -xzf $HOMEBACKUPFILE
 
    # es wird nach  Dateien mit dem String defuser  gesucht
    # und dann mit sed der Strin defuser den Username ersetzt
    for FILE in $(egrep -l "defuser"\
            $(find /home/$USER/ -name '*' -type f;\
             find /home/$USER/ -name '.*' -type f)) ; do
        #das File wird erst nach /tmp kopiert in von dort aus
        #gefiltert
        mkdir -p "/tmp$(dirname $FILE)"
        cp -f $FILE "/tmp$(dirname $FILE)"
        sed s/defuser/$USER/g /tmp$FILE > $FILE
        rm -rf /tmp$FILE;
    done
 
    #weisst dem Homeverzeichniss und den enthaltenen Dateien und
    #Verzeichnissen den User als Besitzer zu
    chown -R $USER.users /home/$USER
 
done
rm -r /tmp/home
 



Reply via email to