Καθαρισμός δίσκου

Ξεκίνησε από da_perama, 17 Ιουν 2015, 11:53:22 ΠΜ

« προηγούμενο - επόμενο »

da_perama

Τώρα που τελείωσε η χρονιά θα ήθελα με κάποιο συνοπτικό τρόπο να καθαρίσω το δίσκο από τα αρχεία των μαθητών, χωρίς να πειράξω τους χρήστες. Να μείνουν δηλαδή οι αρχικοί φάκελοι των χρηστών άδειοι.

mitsospap

Γιατί να μην πεταχτούν και οι χρήστες; Κάνε νέους. Και εξαίρεσε όσους δεν είναι χρήστες μαθητών από την διαγραφή

da_perama

Γιατί έχω φτιάξει 11 χρήστες (όσοι και οι υπολογιστές του εργαστηρίου) για κάθε τμήμα (8 τμήματα για κάθε τάξη) και δεν θέλω να τους φτιάξω ξανά από την αρχή.

alkisg

Γενικά, δίκιο έχει ο mitsospap, εύκολο είναι μέσα από τα sch-scripts κάποιος να διαγράψει 100 χρήστες μαζί με τους αρχικούς τους καταλόγους, και μετά να τους ξαναδημιουργήσει σε ένα λεπτό από το διάλογο μαζικής δημιουργίας χρηστών.

Όμως φυσικά γίνεται και χωρίς να ξαναδημιουργηθούν οι χρήστες, με λίγες απλές εντολές. Το είχαμε αναφέρει εδώ αλλά ας το ξαναγράψω λίγο πιο αναλυτικά:

Κώδικας: Bash
# Σύνδεση ως root
sudo -i
# Μετάβαση στον φάκελο με τα αρχεία χρηστών:
cd /home
# Προβολή των ονομάτων (φακέλων) όλων των χρηστών:
ls
# Προβολή μόνο των χρηστών που αρχίζουν από u:
echo u*
# Είτε με wildcards σαν το u* είτε με copy/paste συγκεκριμένων ονομάτων,
# δημιουργούμε σε μία γραμμή τη λίστα χρηστών που θέλουμε.
# Μετά ελέγχουμε αν όντως διαλέξαμε αυτούς που θέλαμε:
for user in u* kostas eirini; do su - "$user" -c 'whoami'; done
# Και τέλος βάζουμε την εντολή που διαγράφει τα αρχεία των χρηστών:
for user in u* kostas eirini; do su - "$user" -c 'find . -delete; rsync -a /etc/skel/ .'; done