Quota - Υπηρεσία ελέγχου όριου χρήσης δίσκου

Εγκατάσταση / Αρχικές Ρυθμίσεις

Κάνε εγκατάσταση τα πακέτα quota και acl.

aptitude install quota acl

Άλλαξε το /etc/fstab για την κατάτμηση που θέλεις να ενεργοποιηθεί όριο χρήσης δίσκου (quota).

Εάν έχεις και άλλες κατατμήσεις linux, δοκίμασε εκεί το όριο χρήσης δίσκου αφού λάθη στην προσάρτηση της ριζικής κατάτμησης δεν θα σου επιτρέψουν να επαννεκινήσεις το σύστημα.

Για journalled quota (αν υποστηρίζεται από τον kernel)

/dev/hda5  /  reiserfs defaults,acl,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0  0  1

Για απλό quota

/dev/hda5  /  reiserfs  defaults,acl,usrquota,grpquota  0  1

Προσοχή : Εάν είναι η ριζική κατάτμηση, η /var ή κάποια άλλη κρίσιμη, κάνε επανεκκίνηση ως single-user.

Εάν έχουμε ήδη ενεργοποιημένα quotas σε μια άλλη κατάτμηση (π.χ. / )μπορούμε να τα απενεργοποιήσουμε προσωρινά εκτελώντας την quotaoff. Π.χ.

quotaoff /

Στην συνέχεια εκτελούμε

quotacheck -vcugm /home

Εάν είναι η πρώτη φορά που ενεργοποιούμε θα μας εμφανιστούν μηνύματα προειδοποίησης για το ότι δεν υπάρχει προηγούμενο αρχείο quota. Είναι φυσιολογικά

quotacheck: Scanning /dev/sda5 [/home] done
quotacheck: Cannot stat old user quota file: Δεν υπάρχει τέτοιο αρχείο ή κατάλογος
quotacheck: Cannot stat old group quota file: Δεν υπάρχει τέτοιο αρχείο ή κατάλογος
quotacheck: Cannot stat old user quota file: Δεν υπάρχει τέτοιο αρχείο ή κατάλογος
quotacheck: Cannot stat old group quota file: Δεν υπάρχει τέτοιο αρχείο ή κατάλογος
quotacheck: Checked 32303 directories and 263923 files
quotacheck: Old file not found.
quotacheck: Old file not found.

Ενεργοποιούμε τα quotas σε όλες τις κατατμήσεις

quotaon -avug 

Επανεκκινούμε επίσης την υπηρεσία και ελέγχουμε για μηνύματα λάθους

/etc/init.d/quota restart

Δοκιμάζουμε να εμφανίσουμε τα όρια χρήσης δίσκου όλων των χρηστών με την εντολή

repquota -a   

Εναλλακτικά βλέπε και εδώ για αρχικοποίηση quota

Αλλαγή ορίων δίσκου

Για να αλλάξεις τα όρια χρήσης δίσκου ενός χρήστη εκτέλεσε

edquota -u testuser 

Για να εμφανίζουμε quotas για διαμοιραζόμενους φακέλους samba

smbcquotas -L /sambahost/profiles 

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

edquota -p testuser `awk -F: '{if ( $3 >1000) print $1}' /etc/passwd`

Για να ορίσεις προκαθορισμένα όρια δίσκου για τους νέους χρήστες με βάση τα όρια δίσκου ενός χρήστη π.χ. με id 1001, άλλαξε το αρχείο /etc/adduser.conf ως εξής:

QUOTAUSER="1001" 

Τα όρια χρήσης δίκου είναι ορίζονται ξεχωριστά για κάθε κατάτμηση

Acl

Για να δοκιμάσεις τα acl μπες σε έναν φάκελο στον οποίο είναι ενεργοποιημένα quotas

cd /root
ls /root >ls.txt
ls -l
total 4
-rw-r--r--    1 root     root           64 Dec  8 15:19 ls.txt

Εκτέλεσε τώρα την παρακάτω εντολή

getfacl ls.txt 

Θα εμφανιστεί κάτι ανάλογο με

# file: ls.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--

Δημιούργησε δικαιώματα για έναν υπάρχοντα χρήστη π.χ. testuser

setfacl -m testuser:rw ls.txt 

Για να δούμε αν δημιουργήθηκαν

getfacl ls.txt 
# file: ls.txt
# owner: root
# group: root
user::rw-
user:testuser:rw-
group::r--
mask::rw-
other::r--

Εάν έχεις παρόμοια αποτελέσματα σημαίνει ότι λειτουργούν κανονικά τα acl!

Αντιμετώπιση Προβλημάτων

Ξεπεράστηκε το όριο χρήσης quota

Σε περίπτωση που ξεπεράσαμε το όριο χρήσης ενός χρήστη που π.χ. είναι 200MB ενώ τα προσωπικά του αρχεία δεν ξεπερνάνε τα 50 MB είναι πιθανόν κάποιες εφαρμογές να έχουν κρατήσει πολύ μεγάλο χώρο σε cache

akonadi

Εάν κάνουμε login στο kde το akonadi αποθηκεύει την βάση δεδομένων του που είναι πάνω από 100 MB στον φάκελο ~/.local/share/akonadi

Σε ένα περιβάλλον με πολλούς χρήστες μπορούμε να την διαγράψουμε εκτελώντας το παρακάτω script

for usern in $(ls -d /home/* | cut -d"/" -f 3); do 
   if [ -e /home/$usern/.local/share/akonadi ]; then
      echo "Deleting akonadi from user $usern"; 
      rm -rf /home/$usern/.local/share/akonadi; 
   fi;
done

Επειδή το akonadi θα ξαναδημιουργήσει τα αρχεία αυτά, ίσως αναγκαστούμε να αφαιρέσουμε την δυνατότητα σύνδεσης στο kde απεγκαθιστώντας το.

aptitude remove akonadi-server 

Η εντολή αυτή θα αφαιρέσει στην ουσία και τα βασικά πακέτα του kde

firefox - Urlclassifier3.sqlite

(βλ. http://kb.mozillazine.org/Urlclassifier2.sqlite)

Στον firefox υπάρχει πέρα από την cache του και ένα αρχείο βάση δεδομένων που περιέχει γνωστά phishing sites. Παρόλο που για είναι πολύ καλό για λόγους ασφαλείας δεσμεύει χώρο πάνω από 30MB. Ακόμα και να διαγραφεί ξαναδημιουργείται όταν ξαναξεκινήσει ο firefox.

Για την απενεργοποίησή του πηγαίνουμε Προτιμήσεις / Ασφάλεια και ξετσεκάρουμε τις επιλογές Φραγή σελίδων που έχουν αναφερθεί ως κακόβουλες, Φραγή σελίδων που έχουν αναφερθεί ως πλαστές

Κλείνουμε τον firefox

Διαγράφουμε το αρχείο ~/.mozilla/firefox/*/urlclassifier3.sqlite

rm ~/.mozilla/firefox/*/urlclassifier3.sqlite

επανεκκινούμε τον firefox. Το αρχείο δεν θα μεγαλώσει πλέον

Σε ένα περιβάλλον με πολλούς χρήστες μπορούμε να την διαγράψουμε εκτελώντας το παρακάτω script

for usern in $(ls -d /home/* | cut -d"/" -f 3); do 
   if [ -e /home/$usern/.mozilla/firefox/*/urlclassifier3.sqlite ]; then
      echo "Deleting urlclassifier3.sqlite from user $usern"; 
      rm -f /home/$usern/.mozilla/firefox/*/urlclassifier3.sqlite; 
   fi;
done

Θα χρειαστεί όμως κάθε χρήστης να συνδεθεί στον firefox και να κάνει τις αλλαγές που προαναφέρθηκαν στις Ρυθμίσεις στην καρτέλα Ασφάλεια

Για τους νέους χρήστες μπορούμε να κάνουμε την παραπάνω ρύθμιση σε έναν χρήστη π.χ. template και να ορίσουμε την δημιουργία των νέων χρηστών με βάση αυτόν, τροποποιώντας το αρχείο /etc/adduser.conf, αλλάζοντας την παρακάτω γραμμή

SKEL=/home/template

Πηγές

el/linux/debian/server/quota.txt · Τελευταία τροποποίηση: 2011/11/08 20:12 (εξωτερική τροποποίηση)
 
Εκτός εάν αναφέρεται διαφορετικά, το περιεχόμενο σε αυτο το wiki διέπεται από την ακόλουθη άδεια: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Hosted by WebAllDesign - Powered by LServerAdmin Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki WebAllDesign