Festplattenkapazität wird immer geringer

klaus66

Newbie
Hallo,
als Linux-Neuling ode besser Einsteiger hoffe ich mal hier richtig zu sein.
Über Samba greifen wir über Windowsrechner auf einen Linuxserver zu. Dieser läuft unter Linux Prof. 8.2
Der Linuxserver hat eine Festplatte von 40 GB. Wir benutzen, bzw. speichern dort insg. ca. 4 GB. Als der Linuxserver neu war hatte er ich meine so ca. 36 GB. Jetzt sind es nur noch 19 GB und es werden in zeitlichen Abständen immer weniger. So hatten wir von ca. 4 Monaten noch 21 GB, ohne das mehr Daten auf dem Linuxserver über die Windowsrechner dort gespeichet wurden.
Jetzt frage ich mich, wo ist der Speicher, bzw. warum wird er immer kleiner ?
Wir kopieren auf den Linuxserver öfter große Datenmengen und löschen diese nach einigen Stunden wieder. Könnten es temporäre Dateien sein, die den Speicherplatz wegnehmen ? Wenn ja wie kann ich diese auf dem Server löschen oder ihn wieder hiervon befreien, oder ist das alles nicht so problematisch ?
Ich wäre über eine Antwort sehr dankbar.
 

SP

Member
ich glaube nicht dass es an temporären dateien liegt

eine möglichkeit wären logfiles die nicht regelmäßig geleert werden - aber die wachsen auch nicht in ein paar tagen auf mehrere gb

meinst du mit "linux prof. 8.2" suse linux? linux is im moment 2.6.15...

gruß sp
 

klaus66

Newbie
SP: Es ist Suse Linux Professional 8.2
Habe vieleicht vergessen zu sagen, der Server läuft jetzt seit ca. 1 3/4 Jahren. Also nicht in ein paar Tagen wg. der temporären Dateien.
Könnten es auch gelöschte Dateien sein, so wie bei Windows im Papierkorb oder löscht Linux immer "richtig" und gibt den Festplattenplatz gleich wieder frei ?
 

taki

Advanced Hacker
Einen Papierkorb verwenden eigentlich nur die Desktop-Umgebungen (KDE, Gnome), und das auch nur, wenn man es möchte. Es gibt zwar auch einen "Papierkorb" für die Shell, aber den hat man i.d.R. nicht installiert.

Ich kann mich dunkel erinnern, dass es bei SuSE 8.2 mal einen Fehler bei logrotate gab, so dass Logfiles bis zum Plattenüberlauf vollgeschrieben wurden. Wurde damals aber recht schnell mit einem Update behoben.

Möglicherweise ist problematische Hardware dazu gekommen oder eine Komponente ist drauf und dran auszufallen und erzeugt dann plötzlich viele Einträge in /var/log/messages. Dann können die Logfiles schon mal recht plötzlich schnell anwachsen. Die Firewall schreibt auch schon mal arg viel in die Logdateien. Vielleicht wurde der Server gecrackt?
 

aixpresso

Newbie
Hi,

speichert Ihr Microsoft-Windows-Profile auf eurem Server ? Die haben bei einer falschen konfiguration die Angewohnheit ziemlich fett zu werden.


Viele Grüße,

Daniel
 

klaus66

Newbie
Danke schon mal für die Antworten.
Als gecrackt wurde der Server nicht, ist überigens auch nicht mit dem Internet verbunden.
Windows-Profile speichern wir nicht auf dem Server, übrigens laufen alle Windows Rechner mit Win 98 SE.
Hardware ist auch keine hinzu gekommen.
Die Datei /var/log/messages ist auch nicht übermäßig groß, sondern gerade mal ca. 4 MB.

Jetzt sehe ich nur noch die Möglichkeit, "Ansonsten kannst du mit dem Konqueror wunderbar erkennen wo deine Platte voll ist.
In deiner Werkzeugleiste des Konqueror befindet sich eine Dateigrößenansicht. Damit kannst du sehr einfach erkennen welche Ordner oder Dateien wieviel Platz einnehmen."

Aber wie soll ich dies machen ?
 

stulle

Hacker
Aber wie soll ich dies machen ?
Ja wie ich beschrieben habe! Genau so.
Es sei denn du hast gar keinen Konqueror. Hast du überhaupt ein X-System drauf?
Egal, versuch wie Martin Breidenbach schon sagt, den Befehl ´du´.
Du hast doch herausgefunden wie groß /var/log/messages ist. Genauso kannst du auch herausfinden wie groß andere Ordner sind.


Hast du dir mal meinen Link angeschaut? Dann sage mal ob es dir geholfen hat oder ob es nicht der richtige Tipp war.
Das sollten wir schon wissen um helfen zu können.
 

nbkr

Guru
Darüber hinaus ist es evtl. hilfreich mal in Logs reinzuschauen. Da sollte evtl. drin stehen was nicht stimmt.
 

klaus66

Newbie
Habe den du Befehl angewendet mit du -h | sort -rn | less und nur insg. 134 MB erhalten.
Also hier ist die Speicherkapazität nicht.
Gibt es eigentlich einen Linux-Befehl, mit dem man die Festplatten überprüfen kann, oder sehen kann, wie gross die Festplatte ist ?

Entsprechend brachte auch der Link nichts, denn auch hier sind die Daten so etwas von klein, also kaum der Rede wert.
 

mada

Hacker
Detailliertere Angabe: Wenn Du auf dem Rechner eingeloggt bist (egal ob remote oder richtig lokal) dann mach in einer Shell:
Code:
cd /
du -h /tmp
du -h /usr
du -h /var
[...]
du -h /home
Sämtliche Verzeichniss sollte zusammengenommen mal nicht viel größer als ein paar GB sein, nur eben der Ordner, in dem die eigentlichen Daten liegen, der kann groß sein, vermutlich /home/. Probier das mal durch, dann findest Du schon rekursiv raus, wo's hakt. Evtl. tatsächlich mal nach .thrash suchen, also nach den versteckten Ordnern, die die Papierkörbe sind.

Nachtrag:
Code:
df
macht eine Angabe über die Partitionen und wie viel davon noch frei ist.
 

klaus66

Newbie
Danke, dies hilft weiter.

Bin jedes einzelne Verzeichnis durchgegangen und habe folgendes festgestellt:

1 Verz. /public hat 4,5 GB davon sind an Daten von uns hier nur ca. 50 MB Der Rest liegt im Verzeichnis recycle. Dies ist wohl unsichtbar und hält die gelöschten Daten fest.
Ich sagte ja schon, daß wir oft Daten auf den Server kopieren und dann wieder auf einen Windowsrechner. Dann werden die Daten auf dem Linuxserver wieder gelöscht. Dies scheinen die gelöschten Daten zu sein, die Linux als Speicherplatz nicht frei gibt.
Dann habe ich noch eine große Menge von ca. 1,3 GB in dem verzeichnis /usr, wobei wir dieses Verzeichnis nicht nutzen bzw. den Usern freigegeben haben. Dateien werden nur in Public und einigen anderen speziell erstellten Verzeichnissen abgelegt.

Jetzt frage ich mich, wie kann ich alle Dateien die ich im Ordner recycle durch du -h /public gefunden habe löschen.
Die Festplatte ist übrigens wirklich 40 GB, habe ich durch df festgestellt.
 

mada

Hacker
1.3 GB in /usr -- das nenn ich doch mal ein schlankes System :)

Aber willst Du jetzt ernsthaft wissen, wie man Dateien löscht?!?
Code:
rm -rf /public/recycle...

Versteckt sind Dateien und Verzeichnisse und Linux dann, wenn sie mit einem Punkt beginnen. Ich vermute eher ganz stark, dass dieses recycle von den Windowsclients angelegt wird... Von nicht freigeben kann man nicht wirklich sprechen: Windows schiebts halt in den Mülleimer und dort liegts halt. Woher soll Linux denn wissen, dass das gelöscht werden soll...
 

nbkr

Guru
Im übrigen ist es gut das /usr nicht freigeben ist. Das steht nicht für "User" sondern für "Unix System Resource" - da lagern teilweise Systemdateien drin, da hat ein Windowsclient nichts drin verloren.
 

klaus66

Newbie
Super !!
Ich habe den Speicherplatz wieder gefunden.
In jedem Verzeichnis, von wo wir mit den Windowsrechnern zugreifen gab es ein Verzeichnis .recycle
Dieses war unsichtbar. Hier waren insg. 16 GB gelöschte Daten, die wohl Windows angelegt hat.
Ich habe über mc alle recycle-Verzeichnisse gelöscht und dann war der Speicher wieder da.

Jetzt sagt rolle, "Hast Du in der smb.conf für die Freigabe einen Papierkorb definiert?"
Ich frage mich hierzu:
Ich denke doch Windows hat einfach einen Papierkorb angelegt, den Linux als Papierkorb nicht erkennt, oder ? Daher auch die ganzen Daten dort.
In meiner smb.conf steht z.B. für das Verz. public:
vfs object= /usr/lib/samba/recycle.sc
vfs options= /etc/samba/recycle_pub.conf
Meint es dies, oder wie kann ich die Ordner .recycle zukünftig automatisch löschen lassen, denn ich denke Windows wird diese gerne wieder neu anlegen.
Natürlich kann ich die Dateien auch mit der Hand löschen.
 
Oben