Błąd „Nie udało się pobrać listy udziałów z serwera” podczas przeglądania udziału w Nautilusie

40

Nieco przed uaktualnieniem z 10.04 do 11.10 mój pulpit Ubuntu przestał pozwalać mi na dostęp do moich katalogów udziałów Windows. Pomyślałem, że zaktualizuję do wersji 11.10 i problem zostanie rozwiązany, ale nie.

Ilekroć klikam domenę sieci Windows za pomocą Nautilus, pojawia się następujący komunikat:

Nie można zamontować lokalizacji - nie można pobrać listy udziałów z serwera

Od czego zacząć rozwiązywanie problemu? Rozpaczam teraz :(

próbowałem

sudo mount -t cifs //SomeMachine/SomeShare some_directory

i rozumiem

mount error(115): Operation now in progress

O dziwo, dostałem wyskakujące okienko z informacją:

Could not display network:/// Error: Dbus error org.freedesktop.DBus.Error.NoReply: Did not receive a reply ...
Jldupont
źródło
Czy to sieć, którą kontrolujesz? Czy możesz przeglądać dzienniki serwera w celu sprawdzenia błędów (dzienniki zdarzeń systemu Windows itp.). Czy możesz sprawdzić swoje własne dzienniki (/ var / log / syslog) i zgłosić jakieś anomalie?
dpb
Nic nie wyskakuje w / var / log / syslog w związku z tą sprawą :(
jldupont,
Spójrz tutaj miał użytkownika z podobnym problemem.
Bruno Pereira,
Postępuj zgodnie z krokami, które tam zastosowaliśmy i edytuj swoje q z wynikami.
Bruno Pereira,
@ brunopereira81 Sprawdziłem twój link bezskutecznie. Problem leży po mojej stronie maszyny Ubuntu. Kiedyś działało dobrze do czasu aktualizacji 10.04 :(
jldupont,

Odpowiedzi:

14

To jest prawdziwa odpowiedź na twoje pytanie. Też miałem ten sam problem.

Uruchom terminal i wprowadź to polecenie

gksudo gedit /etc/hosts

i dodaj adres IP komputera i nazwę w pliku hosts. Zapisz i wyjdź.

Przykładowy adres IP i nazwa:

192.168.120.65    blablaPcName

To wszystko.

Görkem SARI
źródło
3
A na co sugerujesz, gdy drugi komputer nie ma statycznego adresu IP? Nie każdy ma kontrolę nad routerem.
Fambida
3
Na jakim komputerze dodajesz te linie? na serwerze samby czy na kliencie? Jaki adres dodajesz? Adres serwera w kliencie? Adres klienta na serwerze? Adres serwera na serwerze? Adres klienta w kliencie?
frepie
12

Znalazłem dla mnie radę Gorda Nicersona: Komunikat o błędzie brzmi: „Nie udało się pobrać listy udziałów z serwera”, więc nie można przeglądać komputera z systemem Windows 7 lub Ubuntu 10 lub komputera stacjonarnego Mac.

Przede wszystkim demony Samby smbdi nmbdoba muszą działać, aby przeglądanie sieci działało. Można je uruchomić za pomocą servicelub systemctl startw nowszych wersjach systemu Ubuntu opartych na systemie.

smbtree wyświetla wszystkie udziały z komputerów w sieci.

Więc idź do /etc/sambai my sudo pico smb.conf.

Kolejność rozpoznawania nazw używa najpierw plików hostów, a następnie emisji i jest komentowana! Może zmienimy to na:

name resolve order = bcast host

a następnie ponownie uruchom serwery za pomocą service smbd restartiservice nmbd restart

Pracuje! Jest to okropny błąd popełniony podczas aktualizacji. Uaktualnienie nie powinno zepsuć tego, co działa, szczególnie czegoś tak ważnego jak tworzenie sieci. Dobrze, że przypominam sobie pracę ręczną, którą musiałeś wykonać, aby przywrócić sambę do redhat 5 i 6.

Jeff King
źródło
czy wiesz, czy to powinno zadziałać 12.10?
Aquarius Power
To zadziałało dla mnie 12.04
Jonathan
Chciałem tylko zauważyć, że działało to dla mnie na Xubuntu 14.04!
nc4pk
1
Nie działał ...
Pixel
3

Możliwe, że jest to ogólny błąd podczas łączenia z systemem:

W powyższym przypadku wątku wystąpiło niedopasowanie między nazwą a adresem IP i nmblookuppomogło ustalić problem. Wydaje się też, że na tej stronie znajduje się kilka dobrych wskazówek dotyczących rozwiązywania problemów

Które kopiuję:

  • Przełącz smbclient w tryb debugowania, dane wyjściowe powinny pojawić się w dmesg (-d | --debuglevel = poziom)
  • smbclient -L //<IP of Samba Server> -U <server user>
  • nmblookup {name}
  • Czy możesz zamontować z innych systemów?

Edytuj swoje pytanie, jeśli wykonujesz więcej problemów.

dpb
źródło
2

W systemie Ubuntu 14.04:

Ten błąd może być spowodowany nazwą Netbios o rozmiarze większym niż 15 znaków. Powinien generować dzienniki w pliku /var/log/samba/log.smbd w następujący sposób:

register_name: NetBIOS name NAME-OF-PC-TOO-LONG is too long. Truncating to

Ten błąd można naprawić, edytując plik /etc/samba/smb.conf i dodając następujący wiersz:

netbios name = NAME-OF-PC

NAME-OF-PC nie może mieć więcej niż 15 znaków.

AizeLauna
źródło
1

Dzięki tej metodzie uzyskałem bardzo dobre wyniki w mieszanych środowiskach sieciowych (Windows / Ubuntu):

  1. Naciśnij Alt+ F2i wpisz:gksu gedit /etc/nsswitch.conf

  2. Poszukaj tej linii:

    hosts:  files mdns4_minimal [NOTFOUND=return] dns mdns4
    
  3. Dodaj, winsaby wyglądało to tak:

    hosts:  files mdns4_minimal [NOTFOUND=return] wins dns mdns4
    
  4. Zainstaluj pakiet „winbind”: sudo apt-get install winbind

    (Lub przez Software Center lub Synaptic .)

  5. Uruchom ponownie lub uruchom ponownie sieć.

nejode
źródło
1

Po prostu dodaj „firewall”:

  • Port 137 / UDP - używany przez nmbd
  • Port 138 / UDP - używany przez nmbd
  • Port 139 / TCP - używany przez smbd
  • Port 445 / TCP - używany przez smbd

I to zadziała, a jeśli nie wiesz jak to zrobić, po prostu zainstaluj „gufw” i użyj „+”, a następnie „prostej zakładki”.

Joao
źródło
0

Mój problem był spowodowany /etc/samba/smb.conf. Poszukałem WORKGROUPi usunąłem wiersz po nim, w którym wspomniano localhostnazwę. Upewnij się, że WORKGROUPto samo dla obu plików konfiguracyjnych na każdym komputerze. Ogólną drogą jest sudo apt-get purge samba(i / lub remove?), A następnie sudo apt-get install samba. W ten sposób rozwiązałem problem po raz pierwszy, po aktualizacji z wersji 16.10 do 17.04 na jednej z moich maszyn (wersja 16.10 była dla mnie błędna). Mam teraz dwie maszyny: 16.04 i 17.04.

Piksel
źródło
0

Miałem ten problem i rozwiązałem go, instalując pakiet gvfs-bin . Z wyjątkiem gvfs-bin, większość pakietów gvfs została już zainstalowana: gvfs, -common, -libs, -daemons i -backends.

Tomek
źródło
0

Spróbuj zalogować się do systemu Windows z Ubuntu przy użyciu plików. Idź do „Inne lokalizacje” i „Połącz z Serer” na dole. Użyj smb: // nazwa użytkownika @ adres serwera. To zadziałało dla mnie.

Kokosowy Pies
źródło
0

Problem (przynajmniej w Ubuntu 18.04, gdzie go wypróbowałem) polega na tym, że następujące polecenie:

sudo ufw allow Samba

doda tylko reguły dla Samby działającej jako serwer. Nie doda żadnych reguł dla Samby działającej jako klient. Ale kiedy próbujesz zamontować zdalny udział, robisz to: w tym scenariuszu twój komputer jest klientem, a komputer zdalny jest serwerem.

Ponadto błąd „brak odpowiedzi” jest wskazówką, że niektóre zapory mają problemy. Maszyny zazwyczaj odpowiadają na żądania. Mogą reagować błędem, w takim przypadku masz inne problemy, ale jeśli w ogóle nie reagują, ich pakiety są zwykle pochłaniane przez zaporę ogniową.

Reguły, które pozwalają Sambie działać jako serwer, nie są wystarczające, aby pozwolić Sambie działać również jako klient, ponieważ maszyny zdalne reagują z własnego portu 137, ale port lokalny, na który przychodzą te odpowiedzi, nie jest 137, to niektóre losowy port.

Aby rozwiązać ten problem, wykonaj następujące polecenie:

sudo ufw allow in proto udp from any port 137,138 to any

Pozwoli to pakietom UDP dotrzeć do dowolnego portu lokalnego, o ile pochodzą one z portu 137 lub 138 komputera zdalnego. Port 138 prawdopodobnie nie jest konieczny, ponieważ widziałem tylko pakiety przychodzące z 137, ale nigdy nie wiadomo.

Jest to prawdopodobnie niepewne, ponieważ port źródłowy może zostać sfałszowany, ale nie bądźmy paranoikami.

Naprawiłem to dla mnie.

Mike Nakis
źródło
-1

Mój serwer samby widziałem tylko według adresu IP.

Przełączam bcast na 1. w „name resol order = bcast lmhosts hosts wygrywa”. I ponownie uruchamiam sambę. Przy okazji ta 1 linia ponownie uruchamia sambę.

sudo service samba restart

To też nie działało.

Poszedłem sprawdzić, /etc/samba/lmhostsżeby to sprawdzić i nie ma pliku! Więc zrobiłem lmhosts.

$ sudo nano /etc/samba/lmhosts   
10.0.2.2   server_name 

Nadal nie mogłem przeszukać nazwy serwera. Potem pomyślałem, że czekaj, nazwa komputera i nazwa samby są różne. Edytowałem więc hosty i nazwę hosta, zmieniając je na nazwę serwera samby. Ostrożna nazwa hosta zawiera tylko jedno słowo. Nazwa komputera bez # komentarzy.

/etc/hosts    
/etc/hostname    
$ sudo reboot 

Teraz to po prostu działa. Mogę po prostu kliknąć sieć w nautilus lub caja, a serwer po prostu wyskoczy! Na wszystkich klientach wszyscy są Linuksem lub Androidem. Nawet na starej maszynie do wyciskania Debiana.

Ned
źródło