PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Speicherplatzberechnung ausschalten



jkoel
12.09.14, 16:19
Hallo,

ich habe folgendes Problem: Auf einer Linuxkiste mit mehreren Festplatten läuft ein Linux, die Festplatten werden mit Samba für Windows freigegeben. Alle Platten sind unter /var/media gemountet. Wenn ich in der smb.conf nur /var/media freigebe, kann ich zwar auf alle Platten zugreifen, Samba nimmt aber den freien Speicherplatz meines Bootsticks (auf dem Linux läuft) als freien Speicher für alle Festplatten an - unabhängig vom tatsächlichen. Im Netz hatte ich gelesen, dass das wohl bei meiner Freigabeart richtig ist. Da auf dem Windowsrechner Mediaportal als HTPC-Software läuft und in der dortigen Bibliothek die Pfade so eingestellt sind, dass die alle auf einen Laufwerksbuchstaben zugreifen unter dem dann die Freigabeordner (sprich die einzelnen Platten) liegen, kann ich nicht einfach für jede Festplatte eine eigene Freigabe einrichten und dann in Windows 3 Laufwerksbuchstaben erstellen - ich müsste manuell mehrere Hundert Filme und Serien manuell anpassen. Jetzt habe ich aber das Problem, dass ich de facto nichts mehr auf die Linuxkiste kopieren kann, da der freie Speicher auf dem Strick nur ein paar Gigabyte sind.

Ich vermute das Problem trat erst jetzt auf, da ich das Linux auf einen kleineren Stick kopiert habe (hatte den nötigen Speicherplatz maßlos überschätzt).

Angeblich soll sich das mit dfree command einrichten lassen. Hier http://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html wurde es beschriebhen. So wie um Punkt dfree command beschrieben geht es aber nicht.

Bezieht sich das auf etwas anderes?

jkoel

nopes
12.09.14, 17:15
Hmm, tja komisch, na fangen wir vorne an, Schritt 1 df Kommando ermitteln:
nopes@sandbox:~$ which df
/bin/dfSchritt 2 - Test Skript erstellen, Inhalt:
#!/bin/sh
/bin/df -k $1 | tail -1 | awk '{print $3" "$5}'
/bin/df $1 | tail -1 | awk '{print $(NF-4),$(NF-2)}'Schritt 3 - Ausprobieren:
nopes@sandbox:~$ cd /media/hdd1; bash ~/dfreeTestScript.sh ./.
714741712 49%
1548180636 754795932Nun offensichtlich müsste ich die zweite Variante nehmen
The external program will be passed a single parameter indicating a directory in the filesystem being queried. This will typically consist of the string ./. The script should return two integers in ASCII. The first should be the total disk space in blocks, and the second should be the number of available blocks. An optional third return value can give the block size in bytes. The default blocksize is 1024 bytes. Zeig doch mal deine Ausgaben...

[EDIT]Und prüfe auch mal deine Samba Version die sollte dafür ja >= 3.0.21 sein:
nopes@sandbox:~$ smbstatus

Samba version 3.5.6

[EDIT2]Ich glaube du suchst aber ohnehin was anderes, vermutlich willst du mal nach "linux mount multiple drives to one folder" suchen, dass führt zu drei Möglichkeiten (vermutlich gibt es noch mehr, aber sind die drei üblichsten):

LVM (http://en.wikipedia.org/wiki/Logical_Volume_Manager_%28Linux%29)
mhddfs (https://romanrm.net/mhddfs)
unionfs (http://www.filesystems.org/project-unionfs.html)

Wobei die erste Möglichkeit etwas komplizierter ist, da der Inhalt der Platten dabei vermutlich verloren geht (wobei in Linux geht so viel, dass das vielleicht auch ohne "Datenverlust" geht). Während die beiden anderen Möglichkeiten wohl schneller/bequemer einzurichten sind, aber etwas langsamer laufen werden, weil die auf FUSE (http://de.wikipedia.org/wiki/Filesystem_in_Userspace) setzen und das ist nun mal im Userspace.

jkoel
13.09.14, 09:36
Führe ich die erste Skriptzeile aus kommt


1859455148 96%

Das ist der belegte Speicherplatz des Bootsticks.

bei der zweiten kommt


1953512444 94057296

Das ist der Gesamtspeicher und der noch verfügbare Speicher des Bootsticks.

Ich habe in beiden Fällen aber den Aufruf des Skripts in /media und nicht in /media/hdd1 ausgeführt. Es soll ja der Speicherplatz

Die Ausgabe von 'which df' ist genauso wie bei dir


/bin/df

Sambaversion ist 4.1.6-Ubuntu.


Ich glaube du suchst aber ohnehin was anderes

Naja, die Speicher sollen schon noch getrennt bleiben und nicht zusammengelegt werden. Ich will nur keine Berechnung des freien Speichers.

nopes
13.09.14, 11:46
Naja, die Speicher sollen schon noch getrennt bleiben und nicht zusammengelegt werden. Ich will nur keine Berechnung des freien Speichers.Da wird Samba aber nicht drauf verzichten können, das er dir den "falschen" Speicherplatz anzeigt ist logisch, da /media nun mal nicht zu den Festplatten gehört.

jkoel
21.09.14, 17:22
Gibts es da keine Möglichkeit das einfach auszuschalten?

rstuby
21.09.14, 19:35
Wie soll das denn gehen? Du könntest ja theoretisch auch direkt in den media-Ordner Dateien speichern. Die lägen dann auf dem Stick. Daher HAST du auch diesen Speicher im Media-Ordner zur Verfügung. Die Anzeige ist genau richtig. Dass sie so nicht hilfreich ist, ist andererseits auch klar...