[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Konfiguration des grafischen Einloggens unter selbstdef. Session!



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 to: