Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Entschuldigung, ich hatte vergessen, dass Dein Client ja ein Windows-PC ist. Klar, da drauf läuft ja gar kein Samba. Jetzt kann ich wieder auf den Server zugreifen, auf den Ordner aber noch nicht
Dann poste doch bitte mal die Ausgabe von net usershare info -l . Außerdem befindet sich auf dem Server im Ordner /var/log/samba für jeden Client eine Datei log.<Client>, wobei <Client> der Name oder die IP des Client sein kann. In dieser werden alle misslungenen Zugriffsversuche mit Datum und Uhrzeit protokolliert. Könntest Du aus dieser noch die Zeilen posten, die die letzten Versuche (seit der Bereinigung der smb.conf) betreffen?
|
Datulab
(Themenstarter)
Anmeldungsdatum: 14. Februar 2015
Beiträge: Zähle...
|
Wen ich den Befehl net usershare info -l eingebe, kommt bei mir eine Anleitung wie die Syntax für net sei. Dort gibt es sowohl user als auch share aber nicht beides zusammen.
Der log.client ist der folgende:
[2015/02/22 11:15:49.398660, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/public failed. Permission denied
[2015/02/22 11:15:49.465321, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/public failed. Permission denied
[2015/02/22 11:15:52.755088, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/dokumente failed. Permission denied
[2015/02/22 11:15:52.821729, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/dokumente failed. Permission denied
[2015/02/22 11:15:52.971759, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/dokumente failed. Permission denied
[2015/02/22 11:15:56.153127, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/dokumente failed. Permission denied
[2015/02/22 11:15:58.818143, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/public failed. Permission denied
[2015/02/22 11:19:21.474682, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/dokumente failed. Permission denied
[2015/02/22 11:19:21.541270, 0] ../source3/param/loadparm.c:4365(process_usershare_file)
process_usershare_file: stat of /var/lib/samba/usershares/dokumente failed. Permission denied
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Wen ich den Befehl net usershare info -l eingebe, kommt bei mir eine Anleitung wie die Syntax für net sei
Das muss klappen. Hast Du Dich vielleicht vertippt? Am Ende ist das ein kleines L, kein großes I ! – Oder hast Du das auf dem Windows-PC eingegeben? Du musst es auf dem Server eingeben. Die Log-Datei sagt leider auch nichts Genaueres- "Permission denied", das wussten wir schon. Vermutlich liegt es an den ACL, aber die stimmen doch (s.o.) Deshalb ist die Ausgabe vom net usershare info -l wichtig.
|
Datulab
(Themenstarter)
Anmeldungsdatum: 14. Februar 2015
Beiträge: 15
|
Ich hatte es auf dem Win PC eingegeben.
Auf dem Server kommt das:
info_fn: file /var/lib/samba/usershares/david is not a well formed usershare file.
info_fn: Error was Path is not a directory.
info_fn: file /var/lib/samba/usershares/yt is not a well formed usershare file.
info_fn: Error was Path is not a directory.
[Dokumente]
path=/home/du-lappi/Dokumente
comment=
usershare_acl=Everyone:F,
guest_ok=y
info_fn: file /var/lib/samba/usershares/public is not a well formed usershare file.
info_fn: Error was Path is not a directory.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Jetzt haben wir ja die Ausgabe. Nur die Freigabe [Dokumente] mit dem Pfad /home/du-lappi/Dokumente ist anscheinend in Ordnung. Die anderen sind es offenbar nicht. Zum Beispiel: info_fn: file /var/lib/samba/usershares/public is not a well formed usershare file.
info_fn: Error was Path is not a directory.
Du musst also folgender Information nachgehen: Path is not a directory . Vermutlich hast Du am Zugriffspfad mal irgend etwas verändert (Namensänderung?), sodass der Pfad nicht mehr stimmt. Wenn es so ist, dann solltest Du jetzt folgendermaßen vorgehen:
Lösche mit net usershare delete <Sharename> nacheinander alle fehlerhaften Freigaben, also z.B. net usershare delete public . Starte den Dienst smbd oder noch besser den ganzen Rechner neu Überprüfe mit net usershare info -l , ob alle fehlerhaften Freigaben weg sind Erstelle dann die Freigaben mit Nautilus neu Starte den Dienst smbd neu mittels sudo service smbd restart oder starte den Server neu.
Die neuen Einstellungen wirst Du vermutlich nicht sofort auf dem Windows-PC vorfinden, da Windows den Zustand des Netzwerks zwischenspeichert und nur in Abständen von ein paar Minuten aktualisiert. Am sichersten ist wohl, Du startest auch den Windows-PC neu. Alternativ kannst Du auch die fehlerhaften Freigaben durch berichtigte Freigaben mittels net usershare add <Sharename> überschreiben. Doch wenn Du mit Kommandozeilen nicht so vertraut bist, dann mache es besser wie beschrieben. EDIT: Ich sehe gerade in der Logfile, dass auch der Zugriff auf dokumente nicht geklappt hat. Da die usershare_acl in Ordnung sind, kann dies wohl nur an den UNIX-Dateirechten der Datei /home/du-lappi/Dokumente liegen. Auf diese muss jedermann Zugriff haben, sonst klappt der Gast-Zugang nicht. Was gibt denn ls -la /home/du-lappi/Dokumente ?
|
Datulab
(Themenstarter)
Anmeldungsdatum: 14. Februar 2015
Beiträge: 15
|
Ich habe alle Freigaben gelöscht und neu gemacht. Allerdings hat sich an der Ausgangslage nichts geändert. Auf die Freigabe Dokumente, welche in der Boot Partition liegt, habe ich Zugriff, auf die andere Freigabe (ich habe sie jetzt Transfer genannt) habe ich kein Zugriff, es kommt immer noch die selbe Fehlermeldung. .
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Könnte es vielleicht sein, dass die andere Platte gar nicht statisch eingebunden ist? Das würde alles erklären. Auch das "not a directory". An das Einfachste denkt man ja immer zuletzt... Könntest Du bitte mal die Datei /etc/fstab posten. Falls in dieser kein Eintrag für die zweite Platte zu finden ist (oder dieser fehlerhaft ist), dann benötige ich die UUID der Platte (zu bekommen mittels sudo blkid ).
|
Datulab
(Themenstarter)
Anmeldungsdatum: 14. Februar 2015
Beiträge: 15
|
Das wäre noch gut möglich, ich habe zumindest nichts bewusst gemacht.
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
UUID=5fcea845-c31d-47cf-8c23-f14ed7493137 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=a5e08681-a8e4-46f4-aa0f-1fcb5c6e8b8d none swap sw 0 0
Ist die UUID zu finden?
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Das wäre noch gut möglich, ich habe zumindest nichts bewusst gemacht.
Ja, da haben wir des Rätsels Lösung! Und wir schlagen uns so lange mit allem Möglichen herum, und dabei ist alles doch so einfach! In fstab ist tatsächlich nur eine Platte mit ext4 eingetragen. Mit sudo blkid bekommst Du die UUID von allen erkannten Partitionen. Da ist mindestens eine dabei, die nicht in fstab eingetragen ist. Wenn Du da unsicher bist, dann poste bitte einfach die Ausgabe von sudo blkid . Editiere nun die Datei fstab mit Root-Rechten und füge eine Zeile mit folgendem Inhalt an: UUID=<UUID der Platte> /home/du-lappi/public ext4 defaults 0 1 und schließe die Datei mit einem Zeilenwechsel (=Leerzeile) ab. Dies ist wichtig! Ich gehe mal davon aus, dass /home/du-lappi/public der gewünschte Mountpunkt ist, und dass dieser schon als leerer Ordner existiert (?). Sonst musst Du diesen noch einrichten. Gib nun den Befehl sudo mount -a ein oder starte den Rechner neu. Danach sollte alles funktionieren.
Vermutlich hast Du die zweite Platte erst nachträglich angeschlossen, nachdem Ubuntu schon installiert war. Sonst hätte Ubuntu Dir die Arbeit, die Platte statisch einzubinden, bei der Installation abgenommen. Oder Du hast bei der Installation die zweite Platte übersehen. Solltest Du für die Platte noch besondere Wünsche haben (z.B. dass Du diese von Hand ohne Root-Rechte aus- und einhängen kannst), dann müssten diese noch extra als Mount-Optionen eingetragen werden. Hoffentlich klappt jetzt alles! Gruß – Max-Ulrich
|
Datulab
(Themenstarter)
Anmeldungsdatum: 14. Februar 2015
Beiträge: 15
|
Das sind ja erfreuliche Neuigkeiten! Ich habe die Platte jetzt nochmals als ext4 formatiert, da in deinem Code von ext4 die Rede war. Jetzt habe ich eine Lehre Platte mit der UUID="03039267-10bc-4388-83dc-634043f4819f" Der Ordner public im genannten Verzeichnis ist vorhanden. Was muss ich jetzt genau bei der fstab Datei anhängen? Meine einzigen Wünsche sind, dass jeder ohne Root Rechte darauf alles machen kann was er will.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Nur folgende Zeile:
# zweite Festplatte
UUID=03039267-10bc-4388-83dc-634043f4819f /home/du-lappi/public ext4 defaults 0 1
Die größeren Abstände sind Tabs. Es geht statt dessen auch mit einfachen Leerzeichen. Und vergiss den Zeilenwechsel ("Leerzeile") am Ende nicht! Die Zeile mit "#" am Anfang ist eine Kommentarzeile. Sie kann natürlich auch unterbleiben.
Ich habe die Platte jetzt nochmals als ext4 formatiert, da in deinem Code von ext4 die Rede war
ext3 oder ext4, das ist in diesem Fall ziemlich egal. Deine erste Platte ist halt auch mit ext4 formatiert. Dann ist alles gleich. Bei ext4 wird standardmäßig etwas Speicherplatz für die Verwaltung reserviert. Bei der zweiten Platte ist das an sich überflüssig. Man kann dies nötigenfalls ändern. Aber wenn die Platte groß genug ist, kannst Du es auch so lassen. Man sollte ja eine Platte sowieso lieber nicht ganz voll machen, sonst wird der Zugriff langsamer. EDIT: Meine einzigen Wünsche sind, dass jeder ohne Root Rechte darauf alles machen kann was er will.
Wenn Du innerhalb des Ordners /home/du-lappi/public Unterordner und Dateien direkt auf dem Server anlegst, dann musst Du die Dateirechte von Hand passend festlegen. Dies geht auch von Nautilus aus, da ja der Ordner Dein Eigentum ist. Wenn Du die Unterordner bzw. Dateien von einem Client aus einrichtest, dann werden die dort geltenden Zugriffsrechte auf den Server übertragen. Windows verwendet dafür ACL. Diese können auch nachträglich entweder vom Windows-Client aus oder auf dem Server mittels setfacl verändert werden. Für Linux-Clients gilt dies allerdings nur dann, wenn die Freigaben auf dem Client mit dem cifs-vfs eingebunden oder übers Terminal mit smbclient angesprochen werden; Nautilus mit GVFS kann das nicht. – Probier's einfach mal aus, und melde Dich wieder, falls es Probleme gibt.
|
Datulab
(Themenstarter)
Anmeldungsdatum: 14. Februar 2015
Beiträge: 15
|
Vielen Dank, das hat jetzt funktioniert. Jetzt funzt alles einwandfrei.
|
pepre
Supporter
Anmeldungsdatum: 31. Oktober 2005
Beiträge: 6466
Wohnort: Erlangen
|
|