smbmount kann die Adresse des Hostnamens nicht auflösen

12113
hasen

Ich lese dies als Anleitung für den Zugriff auf ein Windows-Netzwerk von Linux mit Samba.

Die Maschine, auf die ich in meinem Netzwerk zugreifen möchte, wird aufgerufen HP. Die folgenden Befehle funktionieren einwandfrei:

smbclient -L HP smbclient //HP/D 

Aber wenn ich es montieren möchte, bekomme ich:

$ smbmount // HP / D / Medien / PS / D / Mount-Fehler: Adresse für HP konnte nicht aufgelöst werden: Keine mit Hostname verknüpfte Adresse Es wurde keine IP-Adresse angegeben und kein Hostname gefunden 

Der Fehler erscheint seltsam, wenn er es nicht beheben kann HP, wie hat smbclient ihn gelesen ?!

AKTUALISIEREN

Ich möchte die IP-Adressen nicht manuell angeben, da sie sich gelegentlich ändern.

3

6 Antworten auf die Frage

4
derobert

Das ist seltsam ... normalerweise kann smbmount Namen alleine herausfinden. Da dies nicht der Fall ist, können Sie mit nmblookup herausfinden, welche Auflösungsmethoden funktionieren, und diese dann als Teil Ihres Mount-Befehls verwenden. Wenn Sie beispielsweise einen WINS-Server verwenden:

$ nmblookup -R -U 172.16.1.3 Haruhi querying Haruhi on 172.16.1.3 172.16.1.3 Haruhi<00> 

dann können Sie es mit einer kleinen Shell-Arbeit extrahieren:

$ nmblookup -R -U 172.16.1.3 Haruhi | grep 'Haruhi<00>' | cut -d' ' -f1 172.16.1.3 

So können Sie alles zusammenstellen:

smbmount //HP/D /media/hp/d/ -o ip=`nmblookup -R -U 172.16.1.3 HP | grep 'HP<00>' | cut -d' ' -f1` 

und somit haben Sie keine IP-Adresse.

genial! Aus irgendeinem Grund gab nmblookup zwar zwei Zeilen mit der IP zurück und endete mit '<00> `, sodass ich -m 1 zum grep hinzufügen musste hasen vor 14 Jahren 0
Das ist seltsam, vielleicht hat es zwei Antworten? Ich frage mich, ob es damit zusammenhängt, dass smbmount nicht so funktioniert, wie es sollte. derobert vor 14 Jahren 1
Ich bekomme zwei Zeilen von meinem Samba-Server, der ein Alias-Interface (Eth0: 0) im selben Subnetz wie das echte Interface (Eth0) hat. Wenn ich die Option `-U` nicht zulasse, wird nur die reale Schnittstelle zurückgegeben, jedoch werden beide Schnittstellen aufgelistet. quack quixote vor 14 Jahren 0
3
Craig Francis

Installieren Sie WinBind unter Debian und wahrscheinlich auch anderen:

apt-get install winbind 

Und prüfen Sie, ob "/etc/nsswitch.conf" in der Zeile "hosts" "gewinnt", wie in:

hosts: files dns wins 

Diese zweite wurde möglicherweise bereits für Sie erledigt.

Das Paket erstellt die Datei /lib/libnss_wins.so

http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/integrate-ms-networks.html#id2668413

Sie können die Einträge dann einfach der Datei / etc / fstab hinzufügen.

1
jmoz

Ich habe versucht, meine Samba-Share-Media-Streamers zu mounten. Die Freigabe heißt playonhd und funktioniert mit dem smbclient -L // playonhd aber

sudo mount -t cifs -o guest //playonhd/HDD1 /mnt/box 

nicht.

Um dies zu umgehen, ohne eine IP-Adresse im mount-Befehl anzugeben, verwenden Sie den Alias, den ich in / etc / hosts eingerichtet habe:

192.168.1.27 box 

Welches erlaubt

sudo mount -t cifs -o guest //box/HDD1 /mnt/box 

benutzt werden. Ich weiß, dass die IP-Adresse noch angegeben werden muss, aber in meinem Fall war dies in Ordnung, da sie bereits in der Hosts-Datei enthalten war.

Grüße aus der Zukunft: Ich hatte genau das gleiche Problem mit einer Neuinstallation von Ubuntu 18.04.1 auf VirtualBox mit Bridged-Verbindung. Bei einer Neuinstallation auf VMWare mit dem gleichen 18.04.1 funktioniert es jedes Mal einwandfrei. Nichts, was ich versucht habe, bringt es zum Laufen. Celess vor 5 Jahren 0
0
John T

Sie können eine IP-Adresse mit dem Optionsschalter angeben und diese am Ende hinzufügen:

-o ip=111.111.111.111 

offensichtlich das Ersetzen der IP durch die entsprechende Server-IP.

Die IPs im Netzwerk sind nicht genau statisch, es dauert eine Weile, bis sie sich ändern, aber schließlich ändern sie sich hasen vor 14 Jahren 0
Nun, das ist ein weiteres Problem, aber das Verbindungsproblem wird behoben. John T vor 14 Jahren 0
Ja, es hat funktioniert, danke :) aber ich halte dies für eine temporäre / suboptimale Lösung. Gibt es eine Möglichkeit (z. B. mit smbclinet), die IP-Adresse der Maschine automatisch abzurufen und sie dann über eine Pipe oder ähnliches an den smbmount-Befehl zu übergeben? hasen vor 14 Jahren 0
Nun, Sie können ihm eine statische IP von Ihrem Router zuweisen. Sie können dann die Lmhosts-Datei bearbeiten. Dies ist im Wesentlichen die Hosts-Datei für Samba. Alternativ, wenn die Windows-Box auf Ihren PC zugreifen kann, die neue IP-Adresse bei jedem Start in eine Datei auf Ihrem Computer schreiben? Dann mach einfach so etwas: smbmount // HP / D / media / hp / d / -o ip = $ (cat ~ / somefile.txt | tr -d "") John T vor 14 Jahren 0
Schauen Sie sich auch diesen Artikel an, es scheint ein ähnliches Problem zu sein: http://www.linuxquestions.org/questions/linux-software-2/mounting-samba-shares-under-opensuse-and-kubuntu-567168/ John T vor 14 Jahren 0
0
user4126

Ich habe immer Probleme mit dem Hostnamen-basierten smbmountMounten gehabt . Versuchen Sie mount.cifs, es funktioniert für mich, wo smbmountnicht.

habe das gleiche problem hasen vor 14 Jahren 0
Also funktioniert 'mount.cifs'? Problem gelöst? :) user4126 vor 14 Jahren 0
lol, kein Typ, es funktioniert nicht hasen vor 14 Jahren 0
0
jgrowl

Angenommen, Sie haben winbind eingerichtet und fügen .local nach dem Hostnamen hinzu, der für mich funktioniert hat. Beispiel: sudo smbmount // meincomputername.local/storage / media / storage /