Existuje mnoho způsobů, které by pomohly:
- odeberte celý domovský adresář a zkopírujte všechny soubory z
/etc/skel
zpět k homedirovi. Poté změňte oprávnění. - umístěte systém do virtuálního počítače, vytvořte snímek a po lekci 1 se vraťte ke snímku
- najděte v RHEL něco jako režim veřejného terminálu. Něco takového má Ubuntu, které automaticky obnoví domov při odhlášení
- umístěte domov na souborový systém btrfs, vytvořte snímek a vraťte se po lekci 1
tar
domovský adresář před lekcí, poté smazat domov, obnovit ztar
- ...
A učit se další nástroje, jako je Puppet/Chef, je trochu moc, pokud chcete výsledky příští týden.
Řekněme, že všichni vaši studenti měli UID mezi 1000 a 65000
Taková rychlá jednolinka by fungovala. Awk vytiskne příkaz rsync a příkaz chown pro každého uživatele v rozsahu. Odeslání výstupu awk do bash spustí všechny příkazy pro resetování adresářů a oprávnění.
# see what will happen.
awk 'BEGIN{FS=":"} $3 >= 1000 && $3 <=65000 { print "rsync --delete -v -r /etc/skel/ " $6 "/ ; chown -R " $1 ":" $1 " " $6;}' /etc/passwd
# actually run the commands to reset all users matched by awk.
bash <( awk 'BEGIN{FS=":"} $3 >= 1000 && $3 <=65000 { print "rsync --delete -v -r /etc/skel/ " $6 "/ ; chown -R " $1 ":" $1 " " $6;}' /etc/passwd )
Pokud jako správce přihlášení používáte gdm, můžete přidat něco jako tento soubor:/etc/gdm/PostSession/Default
#!/bin/sh
if [[ "$USER" != "" ]]; then
rm -rf /home/$USER
cp -r /etc/skel /home/$USER
chown -R $USER:$USER /home/$USER
fi
Jak zjistím, kde se soubor fyzicky nachází na disku (čísla bloků)?
Vytváření odkazů na Windows na Linuxu?