• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

suche Shellscript, was Speicherplatz auf HDD angibt

Bartlin

Member
Hallo,
wir haben in unserer Schule einen kleinen Debianserver zu laufen, auf den der Informatiklehrer über Putty zugreifen kann. Dort haben wir einen Samba draufzulaufen und jedem Schüler der oberen Klassen und jedem Lehrer ein Homes-Verzeichnis erstellt, wobei der max. Speicherplatz durch eine Samba-Konfiguration begrenzt ist.

Nun wollte ich fragen, da ich noch nicht "konsolisch" spreche, ob es möglich ist, ein Script zu schreiben, was alle Unterordner von /home abgrast und jeweils pro Unterordner (Benutzer) eine Zeile generiert, die ungefähr so aussieht:
Code:
{Benutzername} hat noch {soviel} MB von {insgesamtes Limit des Benutzers} MB frei

Wenn möglich sogar noch so sortiert, dass diejenigen, die am meisten Plattenplatz belegen/ am wenigsten frei haben, oben stehen und die die am meisten Platz haben/ am wengisten belegen ganz unten stehen.

Ist so was möglich??

Ich habe herausgefunden, das mit
Code:
du -h
oder so ähnlich, der genutzte Platz angezeigt werden kann...aber wie bekomme ich solch eine tolle Ausgabe wie gewünscht hin und welche Befehle benötige ich noch?
 

TeXpert

Guru
Da Du von Limits sprichst, aktiviert die Userquota auf dem Server, dann bekommst Du die Infos geschenkt und brauchst Dich nicht selber um die Einhaltung zu bemühen.

wenn es nur um die Anzeige geht,
-> Schleife über alle homes und dann die Summe ausgeben

Schleife -> man bash
Summe -> man du
 
Du kannst auch Quota machen, ohne das Limits eingetragen sind. Weitaus effizienter, als jeden Tag `du` durch alle Verzeichnisse rödeln zu lassen.
 
OP
B

Bartlin

Member
Du kannst auch Quota machen

Wie jetzt? Ich weiß, dass die Beschränkungen über Quota festgelegt wurden, aber wie kann ich sie so sinnvoll in der Art, wie ich es beschrieben habe, ausgeben? Gibt es einen eigenen Quota-Befehl der dafür zuständig ist? Gibt es vernünfigte HOWTOs im Netz? Oder kann mir irgentwer die Lösung so aus dem Ärmel schütteln??? :)

Bartlin
 
Oben