Es wurde festgestellt, dass der Befehl mount.cifs auf einem Gentoo-System mit systemd nicht ausgeführt werden kann
ae429-1105 etc # mount -t cifs //file.abc.edu.au/user /home/directory/path -o credentials=/etc/user,rw,iocharset=utf8,file_mode=0777,dir_mode=0777
mount error(2): No such file or directory
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
Es wurde bestätigt, dass der Mountpoint / home / directory / path und die Berechtigungsnachweisdatei / etc / user vorhanden und zugänglich sind . Auch die entsprechenden Module und Dienste wurden aktiviert, dh
ae429-1105 etc # lsmod |egrep 'fuse|cifs'
fuse 72589 5
cifs 312131 0
und
ae429-1105 etc # systemctl -t service -a |grep Samba
nmbd.service loaded active running Samba NetBIOS name server
smbd.service loaded active running Samba SMB/CIFS server
winbindd.service loaded inactive dead Samba Winbind daemon
Dieses Problem wurde von vielen Benutzern erkannt, z . B. einem Beispiel . Beachten Sie auch, dass der gleiche Befehl, der in meinem Ubuntu / Debian-System ausgeführt wird, erfolgreich eingehängt werden kann.
Weitere Informationen in der problematischen Maschine:
ae429-1105 etc # mount.cifs --version
mount.cifs version: 6.1
Die in Debian / Ubuntu installierte Version von mount.cifs ist 6.0
/home/directory/path
ist sicher, in der Gentoo-Umgebung zu existieren? Seltsam, dass Sie das nicht erwähnen, da dies die offensichtliche erste Frage ist, die sich stellt.Antworten:
Möglicherweise müssen Sie die Option vers = für den Befehl mount angeben, um Version 3.0 zu erzwingen, wenn Sie versuchen, eine Freigabe von einer neueren Windows-Version bereitzustellen. Einer unserer Dateiserver wurde kürzlich auf 2012R2 aktualisiert, und in diesem Moment funktionierte mein Mount nicht mehr. Das Setzen auf vers = 3.0 hat das Problem behoben. Wie die meisten Samba / CIFS-Fehler ist die Meldung "Keine solche Datei oder kein solches Verzeichnis" nicht sehr hilfreich.
Als Beispiel:
..wobei meine Domain, mein Benutzername und mein Passwort in der .cifs_user-Datei enthalten sind.
Anscheinend verwendet smbmount standardmäßig eine neuere Version des SMB-Protokolls, da es ohne Probleme und ohne spezielle Optionen funktioniert hat.
Beachten Sie, dass die Standardprotokollversion 1.0 ist.
Aus der Manpage mount.cifs:
quelle
vers=2.0
, um die Samba-Freigaben meines 5 Jahre alten NAS-Systems zu mounten ... mit 3.0 habe ich den obigen Fehler erhalten.etc/fstab
Benutzer: Stellen Sie dasvers=3.0
(oder 2.0 ...) einfach richtig und raumlos vor Ihre anderen Optionen, z. B.vers=2.0,guest,uid=1000,iocharset…
Können Sie
nodfs
Option verwenden? dh für Ihre-o
Optionseingabe übergeben Sie die Eingabe wie folgt.dh angehängt
,nodfs
Es hat bei mir funktioniert.
quelle
Möglicherweise müssen Sie den
sec
Parameter ändern : Diese Einstellung hat in meinem Setup funktioniert:Relevanter Auszug aus
man mount.cifs
:quelle
Ich bin auf Ubuntu 18.04 darauf gestoßen. Das Problem war, dass ich das Paket keyutils für die Kerberos-Authentifizierung (
sec=krb5
Mount-Option) benötigte, das nicht zusammen mit cifs-utils (mount.cifs) installiert wurde. Ich bin mir nicht sicher, ob der Paketname unter Gentoo gleich ist oder nicht. (Vielen Dank an https://forum.zentyal.org/index.php?topic=18601.0 für die Lösung.)quelle
Ich wollte eine weitere Quelle für dieses Problem hinzufügen, auf das ich heute gestoßen bin. Sobald Sie die Benutzer-ID eines Unix-Benutzers ändern, kann sich der über smbpasswd erstellte smb-Benutzer möglicherweise nicht mehr für die Samba-Freigabe authentifizieren, was zu demselben Fehler führt.
Wenn Sie also Ihre Unix-Benutzer-ID über geändert haben
usermod -u 1000 my_user
, können Probleme auftreten. Das Update für mich war, den smb-Benutzer danach zu löschen und wieder hinzuzufügen:quelle
Fügen Sie
$
am Ende so ein hinzu//winserver/sharename$
quelle
Ich lief in der gleichen "mount error (2): Keine solche Datei oder Verzeichnis" Fehler mit mount.cifs auf einer CentOS 7 VM. Ich habe nie genau festgestellt, warum der Fehler bei Verwendung der Standard- NTLM- Sicherheit (und der Varianten) generiert wurde , aber ich habe festgestellt, dass die Verwendung der Kerberos-Authentifizierung das Problem umgeht . So sah meine letzte funktionierende Befehlszeile aus:
Während dieser Befehl, der den Fehler "no such file or directory" gab, lautete:
Um Kerberos zu verwenden, habe ich das Paket "krb5-workstation" installiert und konfiguriert.
quelle
Versuchen Sie das Paket keyutils zu installieren:
Ich weiß nicht genau, warum das hilft. Vielleicht hat hier jemand anderes eine Antwort. Aber zumindest hat es mir geholfen: Mit keyutils hat das cifs mount prima funktioniert.
quelle
Eine Lösung könnte die manuelle Installation sein,
keyutils
da es sich nicht mehr um eine (harte) Abhängigkeit handeltcifs-utils
.Informationen, warum Keyutils nicht mehr installiert sind, finden Sie hier: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=822841
Ein Bericht über einen Launchpad-Fehler finden Sie hier: https://bugs.launchpad.net/ubuntu/+source/cifs-utils/+bug/1772148
quelle
Bei mir hat es funktioniert, indem "vers = 1.0" wie zuvor gesetzt wurde -> credentials = / root / .dbx.credentials, vers = 1.0 , uid = 1001, gid = 100, rw
quelle