Fried-rich
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Hallo, auf meinem HTPC habe ich XBMCbuntu installiert, es läuft mit Lubuntu 14.04. Samba war schon installiert. Ich bin per SSH zum HTPC verbunden. Die Festplatten sind als NTFS formatiert. NTFS-3G ist installiert. Ich hatte bisher nur Samba eingerichtet wenn ich es vorher auch installiert hatte. Ich hab keine genauen Infos gefunden, was bei xbmcbuntu schon eingerichtet ist. Ich konnte aber mit der Standardeinrichtung auf meine Festplatten und aufs Home-Verzeichnis zugreifen, Daten löschen und schreiben. Jetzt wollte ich ca. 70GB kopieren, auf eine Festplatte auf der noch über 220 GB frei sind. Dies wurde verweigert, angeblich seien nur noch 26GB frei. Ich vermute nun, dass bei Samba etwas falsch läuft. Ich selber habe keine Samba-Benutzer angelegt, wenn ich "sudo pdbedit -L" ausfüge kommt nobody:65534:nobody Ich dachte es gäbe schon einen Samba-Benutzer. Lege ich einen an mit "sudo smbpasswd -a <username>" den gleiche Benutzer erstellt, den ich im Linuxsystem schon gibt. Der wird dann aber mit "sudo pdbedit -L" nicht gefunden. Neustart des Samba-Servers mit "sudo /etc/init.d/samba restart" geht nicht. Es passiert nichts (der Cursor springt in die nächste Zeile). Die /etc/samba/smb.conf sieht so aus: [global]
workgroup = WORKGROUP
server string = Samba Server
server role = standalone server
log file = /var/log/samba.%m
max log size = 50
dns proxy = no
[homes]
comment = Home Directories
browseable = no
writable = yes
read only = no
[HTPC-USB]
path = /media
writeable = yes
guest ok = no
[HTPC-Home]
browseable = no
valid users = @users
writable = yes
create mask = 0700
directory mask = 0700 edit
xbmcbuntu läuft auf einer 30GB großen SSD. Da er von etwas mehr als 20GB freien Speicher spricht, könnte es sein, dass hier aus irgendwelchen Gründen der freie Speicher der SSD anstelle des freien Speichers der HDDs genannt wird?
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Das sind ja gleich mehrere Probleme auf einmal ☹ Ich kenne leider XBMCbuntu nicht genauer. Ich gehe deshalb halt von einer "normalen" Samba-Konfiguration in Ubuntu/Xubuntu aus. Jetzt wollte ich ca. 70GB kopieren, auf eine Festplatte auf der noch über 220 GB frei sind. Dies wurde verweigert, angeblich seien nur noch 26GB frei. Ich vermute nun, dass bei Samba etwas falsch läuft.
Gibt es bei Dir eine Freigabe (z.B. das Home-Verzeichnis), die physikalisch auf mehrere Partitionen verteilt ist? Das ist ja nicht selten der Fall. Leider kann Samba in diesem Fall den freien Speicherplatz nicht selbst ermitteln. Man muss dann den tatsächlich freien Speicherplatz mit einer eigenen Routine ermitteln und diesen mit der Option dfree command = <eigene Routine> in der smb.conf an Samba übermitteln. Das ist ein bisschen kompliziert, deshalb vermeidet man besser Freigaben, die sich auf mehrere Partitionen verteilen. Ich selber habe keine Samba-Benutzer angelegt, wenn ich "sudo pdbedit -L" ausfüge kommt nobody:65534:nobody
Das ist ungewöhnlich. Normalerweise hat nobody keinen eigenen Samba-Account, damit nobody bei der Standard-Option map to guest = bad user als "bad user" (= User ohne eigenen Samba-Account) den Gast-Zugriff benutzen kann. Warum XBMCbuntu das anders macht, weiß ich nicht. Aber das kann man nötigenfalls auch wieder ändern. Lege ich einen an mit "sudo smbpasswd -a <username>" den gleiche Benutzer erstellt, den ich im Linuxsystem schon gibt.
Den Satz verstehe ich leider nicht. Mit sudo smbpasswd -a <username> kannst Du nur für einen Benutzer einen Samba-Account anlegen, der bereits einen eigenen System-Account hat. Diesen müsstest Du dann anschließend auch mit sudo pdbedit -L finden können. Da ist also irgend etwas schief gelaufen. Neustart des Samba-Servers mit "sudo /etc/init.d/samba restart" geht nicht.
Dieser Befehl ist veraltet. Der Neustart kann z.B. mit sudo service smbd restart erfolgen. Die /etc/samba/smb.conf sieht so aus:
Ist das die komplette Datei smb.conf? In Ubuntu sieht die sonst ziemlich anders aus. valid users = @users
Wer alles gehört zu dieser Gruppe users? Denn nur deren Mitglieder dürfen zugreifen. Um an Deiner smb.conf etwas zu verändern, sollte man genauer wissen, wie Du die Konfiguration haben möchtest. Wer soll wie und wo zugreifen dürfen? Gruß – Max-Ulrich
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Gibt es bei Dir eine Freigabe (z.B. das Home-Verzeichnis), die physikalisch auf mehrere Partitionen verteilt ist?
Eingerichtet habe ich sowas nicht. Das höre ichauch gerade zum ersten Mal. Wüsste jetzt nicht wie sowas zustande kommen könnte. Wie kann ich das denn prüfen?
Das ist ungewöhnlich. Normalerweise hat nobody keinen eigenen Samba-Account Den Satz verstehe ich leider nicht. Mit sudo smbpasswd -a <username> kannst Du nur für einen Benutzer einen Samba-Account anlegen, der bereits einen eigenen System-Account hat. Diesen müsstest Du dann anschließend auch mit sudo pdbedit -L finden können. Da ist also irgend etwas schief gelaufen.
Ich meinte, ich hatte versucht einen Samba-Benutzer 'xbmc-chef' anzulegen. Mein Benutzer unter Linux heißt auch 'xbmc-chef', sprich Sambabenutzer = Linuxbenutzer. Als ich das vorhin versucht hatte wurde der neu erstellte Benutzer nicht angezeigt, jetzt nach einem Neustart ist er aber da, dafür dieser nobody nicht mehr. Komisch. 'sudo pdbedit -L' zeigt jetzt xbmc-chef:1000:xbmc-chef
Dieser Befehl ist veraltet. Der Neustart kann z.B. mit sudo service smbd restart erfolgen.
Hatte ich dann auch gelesen, damit gings.
Ist das die komplette Datei smb.conf? In Ubuntu sieht die sonst ziemlich anders aus.
Das hat mich auch gewundert. Scheinbar hat man alle Kommentare rausgenommen. Ob da bestimmte Funktionen fehlen, weiß ich nicht. Hatte da nie etwas dran geändert.
Um an Deiner smb.conf etwas zu verändern, sollte man genauer wissen, wie Du die Konfiguration haben möchtest. Wer soll wie und wo zugreifen dürfen?
Ich möchte von meinem Windows-PC und Lubuntu-Laptop aus Vollzugriff auf meine Festplatten und das Home-Verzeichnis des Benutzers 'xbmc-chef' haben, das heißt ich will dort alles löschen und alles schreiben können.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Das meiste scheint ja jetzt geklärt, oder? Eingerichtet habe ich sowas nicht. Das höre ich auch gerade zum ersten Mal. Wüsste jetzt nicht wie sowas zustande kommen könnte.
Das geht ganz schnell. Ich habe z.B. eine zweite Festplatte "Daten" und habe diese in mein Heimverzeichnis gemountet. Wenn ich jetzt mein Heimverzeichnis freigebe, habe ich eine Freigabe, die physikalisch auf zwei Partitionen verteilt ist. Ich möchte von meinem Windows-PC und Lubuntu-Laptop aus Vollzugriff auf meine Festplatten und das Home-Verzeichnis des Benutzers 'xbmc-chef' haben, das heißt ich will dort alles löschen und alles schreiben können.
Bist Du der einzige Benutzer, sodass Du die Freigaben ohne Gefahr öffentlich (d.h. mit erlaubtem Gast-Zugang) einrichten kannst, oder möchtest Du geschützte Freigaben mit Benutzername und Passwort? Und greifen irgendwelche Geräte (Fernseher, Mediaplayer usw.) auf die Freigaben zu, die nur als "nobody" über den Gast-Zugriff funktionieren? Ist Dein privates Netzwerk durch einen Router mit NAT/Firewall vom Internet sicher abgeschirmt? Möchtest Du auf den NTFS-Partitionen eine UNIX-Rechteverwaltung einrichten (die gibt es nämlich bei NTFS nicht automatisch), oder brauchst Du das nicht? Nebenbei: Weshalb verwendest Du NTFS? Der Zugriff auf Original UNIX-Dateisysteme (ext3, ext4) ist in Ubuntu schneller und braucht weniger Ressourcen. Und im Falle einer Panne können die Platten mit UNIX-Dateisystemen unter Ubuntu auch besser überprüft und nötigenfalls repariert werden.
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Das geht ganz schnell. Ich habe z.B. eine zweite Festplatte "Daten" und habe diese in mein Heimverzeichnis gemountet. Wenn ich jetzt mein Heimverzeichnis freigebe, habe ich eine Freigabe, die physikalisch auf zwei Partitionen verteilt ist.
Sowas hab ich hier nicht. Die Festplatten werden über die UUID in /media eingebunden (per fstab). Im Homeverzeichnkis liegt da nichts.
Bist Du der einzige Benutzer, sodass Du die Freigaben ohne Gefahr öffentlich (d.h. mit erlaubtem Gast-Zugang) einrichten kannst, oder möchtest Du geschützte Freigaben mit Benutzername und Passwort?
Ich bin der einzige Benutzer, ja. Bisher hatte ich in Samba aber dennoch ein Passwort erstellt (war mir gar nicht sicher ob es anders geht). Da das PW letztlich aber eh im Windows/Linux gespeichert wird ist das kein muss. Da ist nichts verschlüsselungswürdiges drauf. Ist nur der HTPC.
Und greifen irgendwelche Geräte (Fernseher, Mediaplayer usw.) auf die Freigaben zu, die nur als "nobody" über den Gast-Zugriff funktionieren?
Nein.
Ist Dein privates Netzwerk durch einen Router mit NAT/Firewall vom Internet sicher abgeschirmt?
Ja.
Möchtest Du auf den NTFS-Partitionen eine UNIX-Rechteverwaltung einrichten?
Was meinst du mit Rechteverwaltung? Da ich bisher Samba ohne große Änderungen genutzt habe, vermute ich mal, dass sowas bisher nicht aktiviert war (denke mal in den Standardeinstelungen ist sowas nicht "an") und ich kam bisher gut aus. Der Zugang dient eh nur dafür Dateien auf den HTPC zu schießen und von dort auf den rechner zu kopieren.
Weshalb verwendest Du NTFS?
"Historisch gewachsen". Zu Beginn hatte ich Windows XP im Einsatz und bin erst später auf Linux umgestiegen. Da ich insgesamt 6TB Speicher verbaut habe und mir derzeit der Zwischenspeicher fehlt, um die HDDs umzuformatieren hab ich erstmal NTFS gelassen. Ich habe parallel noch ein Zweitsystem mit Windows 7 installiert für die Sachen die unter Linux nicht gehen (einige exotische Matroska-Features und MVC- und 4K-Decoding). Ich plane aber eine "Umsortierung" der Festplatteninhalte udn will in dem Zusammenhang 2 der 3 Platten in ein Unix-Dateisystem umformatieren. Ich hoffe das bis Ende des Jahres hinzubekommen.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Die Festplatten werden über die UUID in /media eingebunden
Da haben wir's doch schon:
[HTPC-USB]
path = /media
writeable = yes
guest ok = no
Du gibst offenbar /media als Ganzes frei. Und die Inhalte liegen dort auf verschiedenen Platten bzw. Partitionen. Samba erkennt aber nur den freien Speicherplatz auf der System-Partition selbst, auf der /media sich befindet. Wenn man dort keine UNIX-Rechteverwaltung eingerichtet hat, dann werden bei den NTFS.Partitionen die Zugriffsrechte bereits beim Einbinden (Mounten) verbindlich festgelegt; sie können dann im Betrieb nicht mehr erweitert werden. Wenn Du mal die Ausgabe von
posten willst, dann kann ich sehen, ob die Besitz- und Zugriffsrechte günstig festgelegt sind oder ob man da etwas ändern sollte.
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Die lautet drwxrwxrwx 1 root root 16384 Aug 31 11:35 HDD1
drwxrwxrwx 1 root root 8192 Aug 12 19:41 HDD2
drwxrwxrwx 1 root root 163840 Aug 31 17:39 HDD3 Scheinbar ist root der Besitzer. Ich hatte die Freigabe deswegen so gemacht, da man in Windows leider nur diesen Ordner (also /media) fest als Laufwerksbruchstabe einbinden kann. Hätte auch alle Festplatten einzeln freigeben können (also 'path = /media/hdd1'), dann hätte das aber 3 Buchstaben belegt. Es wäre demnach am besten die Festplatten einzeln freizugeben? Oder hast du eine andere Idee wie ich die freigeben kann, ohne die Probleme mit dem Speicher und nur einer Freigabe unter Windows.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Scheinbar ist root der Besitzer.
Wenn Du nur Administrative Freigaben mittels Eintrag in fstab vornehmen willst, dann macht das nichts. Du kannst so halt keine Persönlichen Freigaben mittels net usershare bzw. Rechtsklick im Dateimanager einrichten. Die Zugriffsrechte sind mit drwxrwxrwx ja sehr liberal: jeder darf alles. Ich denke, das kannst Du so lassen. Es wäre demnach am besten die Festplatten einzeln freizugeben?
Das würde ich so machen; schließlich sind es ja auch 3 einzelne Partitionen. Oder hast du eine andere Idee wie ich die freigeben kann, ohne die Probleme mit dem Speicher und nur einer Freigabe unter Windows.
Mit nur einem einzigen Netzwerk-Laufwerk unter Windows für 3 Platten wird es immer Probleme geben, weil Samba den Speicherplatz nicht differenziert übermitteln kann. Du kannst zwar auf dem Server global den gesamten Speicherplatz auf allen 3 Platten zusammen ermitteln und diesen einen Wert Samba übergeben, aber auf dem Client bekommst Du damit trotzdem keine Information, wie viel Platz auf jeder einzelnen Platte verfügbar ist.
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Ich hatte vorher Openelec im Einsatz, ein von Grund auf neu geschriebenes, sehr schlankes Linux. Bei dem hatte man seeehr wenig Möglichkeiten etwas einzurichten außer man kennt sich sehr gut mit der Materie aus. Da klappte das mit den 3 Freigabenunter einem Buchstaben. Diese Warnungen wegen dem freien Speicher kamen da nie. Wenn es mal vorkam, dass ich mehr zum HTPC schreiben wollte es Platz war kam eine Fehlermeldung (unter Windows), wenn der Speicher tatsächlich voll war. Gibt es eien Möglichkeit diesen Speicherplatzcheck einfach zu unterdrücken? Könnte mir vorstellen, dass genau das bei Openelec gemacht wurde.
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11179
Wohnort: München
|
Fried-rich schrieb: Ich hatte vorher Openelec im Einsatz, ein von Grund auf neu geschriebenes, sehr schlankes Linux.
Das sind eigentlich Standard-Komponenten, die recht effizient auf die Aufgabe abgestimmt werden. Bei dem hatte man seeehr wenig Möglichkeiten etwas einzurichten außer man kennt sich sehr gut mit der Materie aus. Da klappte das mit den 3 Freigabenunter einem Buchstaben.
Die smb.conf kann man sich ja einfach ansehen: https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/network/samba/config/smb.conf Diese Warnungen wegen dem freien Speicher kamen da nie. Wenn es mal vorkam, dass ich mehr zum HTPC schreiben wollte es Platz war kam eine Fehlermeldung (unter Windows), wenn der Speicher tatsächlich voll war.
Wie genau sahen die Mounts mit Openelec für dein System aus? Die dort genutzte smb.conf gibt die einzelnen Verzeichnisse in /storage ja einzeln frei. Gibt es eien Möglichkeit diesen Speicherplatzcheck einfach zu unterdrücken? Könnte mir vorstellen, dass genau das bei Openelec gemacht wurde.
Gib doch mal die einzelnen Unterverzeichnisse für die Mounts in /media frei, statt nur eine Freigabe für /media zu nutzen (wie Max-Ulrich Farber es vorgeschlagen hat).
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Ich bin mir nicht sicher ob ich bei Openelec die smb.conf noch abgeändert habe. Wenn ich den USB-Stick auf dem OE installiert war noch finde boote ich das mal und seh es mir nochmal an.
Gib doch mal die einzelnen Unterverzeichnisse für die Mounts in /media frei
Hier kann ich dir nicht folgen was du meinst.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Gib doch mal die einzelnen Unterverzeichnisse für die Mounts in /media frei
Hier kann ich dir nicht folgen was du meinst.
Einfach für jede Platte/Partition eine eigene Freigabe. Das bedeutet dann eben 3 Laufwerks-Buchstaben in Windows. Wäre das wirklich so schlimm? Gibt es eien Möglichkeit diesen Speicherplatzcheck einfach zu unterdrücken? Könnte mir vorstellen, dass genau das bei Openelec gemacht wurde.
Ich weiß nicht, was Openelec da macht. Man könnte einfach mittels dfree command Samba einen Wert für den freien Speicherplatz übermitteln, der sicher zu groß ist. Dann meckert zumindest Samba nicht mehr. Aber elegant ist das nicht gerade. Und besonders sicher ist es auch nicht. Doch etwas Anderes fällt mir nicht ein.
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Muss ich mal sehen wie ich das mache. Bei Openelec hab ich scheinbar doch nichts geändert. In der smb.conf steht drin [Media]
path = /media
available = yes
browsable = yes
public = yes
writable = yes
root preexec = mkdir -p /media Das sieht für mich wie ein Standardeintrag aus.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
root preexec = mkdir -p /media
Was diese Zeile hier bewirken soll, verstehe ich nicht. Vermutlich bewirkt sie gar nichts. Sonst ist alles Standard. – Im Teil [global] wird wohl auch alles "normal" sein (?). Dann kann ich mir nur vorstellen, dass die Linux-Routinen, über die Samba den Speicherplatz ermittelt, eben in Openelec gar nicht laufen, denn Samba übermittelt offenbar ja keine Information über den freien Speicherplatz. EDIT: Ich habe jetzt etwas gegoogelt. Diese mysteriöse Zeile scheint – zumindest in Openelec – tatsächlich zu bewirken, dass keine (falschen) Informationen über den vorhandenen Speicherplatz übermittelt werden. Es wird versucht, vor der Verbindung zur Freigabe dort einen neuen Ordner einzurichten, obwohl dieser ja schon vorhanden ist. Damit verschwindet offenbar die Information über den vorhandenen Speicherplatz. Wie so etwas funktionieren kann, ist mir absolut schleierhaft! Aber es scheint wenigstens in Openelec zu klappen. ❓ Vielleicht weiß da jemand genauer Bescheid? Du kannst ja mal probieren, ob die Zeile auch in Ubuntu bzw. XBMCbuntu was ändert. Füge sie einfach mal probeweise am Ende der Freigabe [Media] ein. Das würde mich auch interessieren!
|
Fried-rich
(Themenstarter)
Anmeldungsdatum: 2. Mai 2013
Beiträge: 1093
|
Ändert nichts. Hab das eingefügt und versucht eine große Menge an Dateien zu verschieben, wurde verweigert da angeblich zu wenig Speicherplatz frei wäre.
|