Der Martin: Linux-Problem: Zugriff auf Windows-Freigaben mit autofs

Moin miteinander,

ich bin mal wieder mit meinem Linux-Latein am Ende und hoffe auf einen hilfreichen Schubs.

Was ich habe:
 * Ein PC (Hostname "works") mit einem frisch aufgesetzten und aktuellen Ubuntu 10.10 (maverick)
   Installierte Pakete (u.a.)
    - autofs
    - samba
    - smbfs
    - smbclient
 * Ein PC (Hostname "media") mit Windows XP/SP2
    - Verzeichnis-Freigabe "scratch", darin einige Videodateien und ein weiteres Unterverzeichnis

Ich versuche nun seit gestern nachmittag erfolglos, die Freigabe des Windows-PCs, der ja nicht ständig eingeschaltet ist, mit autofs bedarfsweise zu mounten und im Verzeichnis /lan/media/scratch bereitzustellen. Das gelingt mir, aber offensichtlich nicht korrekt. Möglicherweise ein Problem mit den Berechtigungen.
Lasse ich mir das Verzeichnis als normaler User anzeigen, erhalte ich:

mkb@works:~$ ls -la /lan/media/scratch  
total 0  
d????????? ? ? ? ?                ? .  
d????????? ? ? ? ?                ? ..  
d????????? ? ? ? ?                ? testdir  
-????????? ? ? ? ?                ? 16 Blocks.avi  
-????????? ? ? ? ?                ? 88 Minutes.avi  
-????????? ? ? ? ?                ? Chaos.avi  
 [... mehr Dateien ...]  
mkb@works:~$ 

Ähnlich unvollständige Informationen gibt auch der Ubuntu-Dateimanager Nautilus an: Er erkennt die Dateinamen, aber weder Dateigröße noch Timestamp; das Verzeichnis testdir stellt er dar, als sei es eine Null-Byte-Textdatei.

Lasse ich mir dasselbe Verzeichnis als root anzeigen, sieht's *etwas* besser aus:

root@works:/# ls -la /lan/media/scratch  
total 43348328  
dr----x--t 1 mkb  mkb           0 2011-02-25 12:27 .  
drwxr-xr-x 3 root root          0 2011-02-25 12:20 ..  
dr----x--t 1 mkb  mkb           0 2011-02-25 12:27 testdir  
--w--wx-wT 1 mkb  mkb   836215056 2010-11-30 23:17 16 Blocks.avi  
--w--wx-wT 1 mkb  mkb   885576800 2011-02-03 17:55 88 Minutes.avi  
--w--wx-wT 1 mkb  mkb   916536064 2011-01-18 12:14 Chaos.avi  
 [... mehr Dateien ...]  
root@works:/# 

Die angezeigten Berechtigungen kommen mir seltsam vor und passen nicht zu dem, was ich aufgrund der Konfiguration (siehe unten) erwarten würde. Vor allem habe ich noch nie ein 't' oder 'T' gesehen, wo ich sonst das 'x' für ausführbar erwarte, und Dateien, die eine Schreib- aber keine Leseberechtigung haben, finde ich auch nicht sinnvoll. Sie sollten eigentlich rw-rw-rw- (666) haben, meine ich.

Relevante Konfiguration:

(1) /etc/auto.master

/do4fun/media   /etc.auto.media.conf  --timeout=600 --ghost
/do4fun/spine   /etc.auto.spine.conf  --timeout=600 --ghost

(2) /etc/auto.media.conf

scratch  -fstype=cifs,user=mk,password=****,uid=mkb,gid=mkb,iocharset=utf8,file_mode=666,dir_mode=777  ://media/scratch

"mk" ist übrigens der Username auf dem Windows-Rechner, "mkb" der auf Ubuntu.
Das Verblüffende an der Sache ist, dass ich auf einem anderen PC mit einem alten Ubuntu 9.04 (jaunty) exakt dieselbe autofs-Konfiguration habe, und dort kann ich problemlos auf die Windows-Freigaben zugreifen.
Ach so: Wenn ich die Windows-Freigabe mit den gleichen Mount-Optionen von der Konsole aus statisch mounte, habe ich vollen Zugriff darauf, und alle Dateiinformationen werden korrekt angezeigt. Das heißt, dass es keine grundsätzlichen Fehler in der Netzwerkkonfiguration gibt, oder?

Ich habe schon stundenlang diverse autofs-Tutorials, manpages und diverse Forenbeiträge gelesen, aber so einen Fehler, wie ich ihn hier habe, hat anscheinend noch niemand gehabt.
Wo kann ich noch "drehen" bzw. nach Anhaltspunkten suchen? Irgendwelche Hinweise?

Schönes Wochenende schon mal,
 Martin

--
Lache, und die Welt wird mit dir lachen.
Schnarche, und du schläfst allein.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
  1. Hello,

    Ich versuche nun seit gestern nachmittag erfolglos, die Freigabe des Windows-PCs, der ja nicht ständig eingeschaltet ist, mit autofs bedarfsweise zu mounten

    Und sind der Mountbefehl uns seine Parameter?

    Wie übergubst Du Username und Passwort? Benutzt Du die Datei-Option dafür, oder schreibst Du sie direkt in den Mount-Befehl?

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
     ☻_
    /▌
    / \ Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Hallo,

      Ich versuche nun seit gestern nachmittag erfolglos, die Freigabe des Windows-PCs, der ja nicht ständig eingeschaltet ist, mit autofs bedarfsweise zu mounten
      Und sind der Mountbefehl uns seine Parameter?
      Wie übergubst Du Username und Passwort? Benutzt Du die Datei-Option dafür, oder schreibst Du sie direkt in den Mount-Befehl?

      weiterlesen ... ;-)
      Steht alles in den autofs-Konfigurationsdateien!

      Ciao,
       Martin

      --
      Wer keiner Fliege etwas zuleide tut, darf sich nicht über die Maden im Fleisch wundern.
      Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
      1. Hello,

        Und sind der Mountbefehl uns seine Parameter?
        Wie übergubst Du Username und Passwort? Benutzt Du die Datei-Option dafür, oder schreibst Du sie direkt in den Mount-Befehl?

        weiterlesen ... ;-)
        Steht alles in den autofs-Konfigurationsdateien!

        Und hattest Du ein "normales" Mounting schon ausprobiert?

        Liebe Grüße aus dem schönen Oberharz

        Tom vom Berg

        --
         ☻_
        /▌
        / \ Nur selber lernen macht schlau
        http://bergpost.annerschbarrich.de
        1. Hi,

          weiterlesen ... ;-)
          Steht alles in den autofs-Konfigurationsdateien!
          Und hattest Du ein "normales" Mounting schon ausprobiert?

          auch das hatte ich im Originalposting schon erwähnt!

          So long,
           Martin

          --
          Wenn du beim Kochen etwas heißes Wasser übrig hast, friere es ein.
          Heißes Wasser kann man immer gebrauchen.
          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
          1. Hello,

            weiterlesen ... ;-)
            Steht alles in den autofs-Konfigurationsdateien!
            Und hattest Du ein "normales" Mounting schon ausprobiert?

            auch das hatte ich im Originalposting schon erwähnt!

            Tja, die Kunst Absätze an den passenden Stellen zu setzen würde es auch solchen Blindschleichen, wie mir, ermöglichen, ein längeres Posting sofort zu überaschauen :-P

            Liebe Grüße aus dem schönen Oberharz

            Tom vom Berg

            --
             ☻_
            /▌
            / \ Nur selber lernen macht schlau
            http://bergpost.annerschbarrich.de
            1. Mahlzeit,

              weiterlesen ... ;-)
              Steht alles in den autofs-Konfigurationsdateien!
              Und hattest Du ein "normales" Mounting schon ausprobiert?
              auch das hatte ich im Originalposting schon erwähnt!
              Tja, die Kunst Absätze an den passenden Stellen zu setzen würde es auch solchen Blindschleichen, wie mir, ermöglichen, ein längeres Posting sofort zu überaschauen :-P

              stimmt, das hätte ich etwas besser strukturieren können.
              Ich gelobe Besserung!

              Schönes Wochenende,
               Martin

              --
              Niemand lebt allein von seinen Träumen.
              Aber wer träumt, lebt noch.
              Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
  2. Hi!

    Die angezeigten Berechtigungen kommen mir seltsam vor und passen nicht zu dem, was ich aufgrund der Konfiguration (siehe unten) erwarten würde.

    Oh doch. Nur erwartest du von deiner Notationsweise was anderes als das System draus macht.

    Vor allem habe ich noch nie ein 't' oder 'T' gesehen, wo ich sonst das 'x' für ausführbar erwarte, und Dateien, die eine Schreib- aber keine Leseberechtigung haben, finde ich auch nicht sinnvoll. Sie sollten eigentlich rw-rw-rw- (666) haben, meine ich.

    Das ist normal: Unix-Dateirechte. 666 ist Schreiben für alle, Ausführen für Gruppe und das Sticky-Bit.

    scratch  -fstype=cifs,user=mk,password=****,uid=mkb,gid=mkb,iocharset=utf8,file_mode=666,dir_mode=777  ://media/scratch

    Versuch es mit Oktalzahlen.

    Lo!

    1. Hallo,

      Die angezeigten Berechtigungen kommen mir seltsam vor und passen nicht zu dem, was ich aufgrund der Konfiguration (siehe unten) erwarten würde.
      Oh doch. Nur erwartest du von deiner Notationsweise was anderes als das System draus macht.

      ja, offensichtlich.

      Das ist normal: Unix-Dateirechte. 666 ist Schreiben für alle, Ausführen für Gruppe und das Sticky-Bit.

      scratch  -fstype=cifs,user=mk,password=****,uid=mkb,gid=mkb,iocharset=utf8,file_mode=666,dir_mode=777  ://media/scratch
      Versuch es mit Oktalzahlen.

      Volltreffer, das war der ganze Trick.
      Die autofs-Version im alten Ubuntu jaunty hat wohl implizit Oktalzahlen "angenommen", und ich habe nicht weiter drüber nachgedacht.

      Ciao,
       Martin

      --
      Wenn zwei dasselbe tun, sind sie vielleicht bald zu dritt.
      Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
  3. Hallo Martin,

    Wo kann ich noch "drehen" bzw. nach Anhaltspunkten suchen? Irgendwelche Hinweise?

    Koennte ein Bug in autofs sein, welches mit Deiner Distro ausgeliefert wird. (Autofs besteht aus einer Kernel- und einer Userspace-Komponente, koennte an irgend einer von den beiden liegen oder an der Kommunikation.)

    Erstelle doch mal ein Image mit einem FAT-Dateisystem (was keine UNIX-Dateirechte kennt, vmtl. wichtig in diesem Fall) und binde das per autofs ein und schaue was passiert.

    Image erzeugen (100 MB):

    dd if=/dev/zero of=test.image bs=1M count=100

    FAT32-Dateisystem erstellen:

    mkfs.vfat -F 32 test.image

    Testhalber manuell mounten (mit den gleichen Optionen fuer die Dateirechte wie bei Deinem CIFS-Kram):

    mount -o loop,uid=mkb,gid=mkb,umask=0 -t vfat test.image /wohin/dus/mounten/willst

    Dann ein paar Dateien reinpacken als Dein normaler User und das Dateisystem wieder unmounten. Dann einen neuen autofs-Eintrag anlegen, der das mounten soll und schauen, ob das funktioniert.

    Viele Gruesse,
    Christian

    1. Hi Christian,

      Koennte ein Bug in autofs sein, welches mit Deiner Distro ausgeliefert wird. (Autofs besteht aus einer Kernel- und einer Userspace-Komponente, koennte an irgend einer von den beiden liegen oder an der Kommunikation.)

      dachte ich auch schon dran, aber es war viel trivialer. Der Hinweis von dedlfix hat's gebracht. Ich bin von der irrigen Annahme ausgegangen, die numerisch angegebenen Berechtigungen in den Mount-Optionen würden implizit *immer* als Oktalzahlen interpretiert.

      Eine Null davor, autofs neu starten, und passt. So einfach kann es sein. :-)

      Erstelle doch mal ein Image mit einem FAT-Dateisystem (was keine UNIX-Dateirechte kennt, vmtl. wichtig in diesem Fall) und binde das per autofs ein und schaue was passiert.

      Nicht mehr nötig, danke! (Ich hätte aber gewusst, wie das geht.)

      Ciao, jetzt kann das Wochenende kommen,
       Martin

      --
      Finanztipp:
      Leihen Sie sich Geld von einem Pessimisten.
      Er rechnet sowieso nicht damit, dass er es zurückbekommt.
      Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
  4. Hi,

    (1) /etc/auto.master

    /do4fun/media   /etc.auto.media.conf  --timeout=600 --ghost
    /do4fun/spine   /etc.auto.spine.conf  --timeout=600 --ghost

    copy&paste error due to experimenting ...
    Da steht natürlich mittlerweile

    /lan/media   /etc/auto.media.conf  --timeout=600 --ghost
    /lan/spine   /etc/auto.spine.conf  --timeout=600 --ghost

    Ich hatte zwischenzeitlich mit verschiedenen Namen experimentiert. "do4fun" ist der Arbeitsgruppenname unter Windows/Samba; ich hatte zwischendurch den Verdacht, da könnte es möglicherweise einen Namenskonflikt geben (auch wenn ich es nicht logisch fände) und habe den Verzeichnisnamen mal geändert.

    Ciao,
     Martin

    --
    Alkohl ist ungesund,
    Rauchen ist schädlich,
    Sex ist unanständig
    - und die Erde ist eine flache Scheibe.
    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(