Способи оплати Abuse

Помилка Ubuntu: не бачить мережу Samba

14.05.2023, 01:15

У вас, можливо, виникала проблема, коли Ubuntu не може знайти комп'ютери під управлінням Windows або не може звернутися до мережевих ресурсів через Samba. Така ситуація є звичайною для багатьох дистрибутивів із GUI Gnome. Раніше причина цього була пов'язана з багом у GVFS, однак відтоді виникло кілька інших причин. У цій статті ми розповімо, як можна розв'язати проблему, налаштувати Ubuntu на роботу з кулями Windows або Samba і перенавчити Nautilus і Dolphin, щоб вони змогли бачити всі мережеві ресурси.

Чому Ubuntu не бачить мережу Windows або Samba

Ubuntu може не бачити мережу Windows через відмову компанії Microsoft від протоколу SMB1 і переходу на протоколи SMB2 і SMB3, які не мають можливості мережевого виявлення. Для відображення мережевих ресурсів на Ubuntu використовується або avahi, або протокол SMB1, тому побачити кулю Windows не вдасться, не ввімкнувши назад застарілий протокол у реєстрі.

Також Windows не буде бачити кулі Samba через відсутність підтримки новим сервісом WS-Discovery. Для вирішення цієї проблеми потрібно окремо встановити сервіс WSDD. Але ще більшою проблемою стало вимкнення підтримки протоколу SMB1 на сервері Samba 4.11, через що Nautils і Dolphin перестали бачити не тільки Windows кулі, а й Linux теж. Вирішенням проблеми може бути або встановлення на Samba сервер Avahi, або ввімкнення підтримки старого протоколу SMB1 на сервері Samba.

Налаштовуємо мережу Samba для зручного доступу до файлів

Увімкнення підтримки протоколу SMB1

Для того, щоб сервер Samba був доступний у мережі Windows, необхідно увімкнути підтримку протоколу SMB1.

Для цього відредагуйте файл /etc/samba/smb.conf таким чином:

sudo vi /etc/samba/smb.conf
[global]
server min protocol = NT1
client min protocol = NT1
min protocol = NT1

Налаштування імені хоста

Переконайтеся, що ім'я хоста вашого сервера збігається зі значенням параметра netbios name у файлі /etc/samba/smb.conf. Ви можете перевірити ім'я хоста командою hostname і додати його у файл /etc/hosts:

hostname

sudo vi /etc/hosts

127.0.0.1       localhost
192.168.1.2     my_server

[...]

[global]
netbios name = my_server

Встановлення Avahi

Якщо проблему не вирішено, спробуйте встановити та налаштувати сервіс Avahi. Він дозволить вашому серверу Samba відображатися в мережевому оточенні в Nautilus.

Для встановлення Avahi виконайте:

sudo apt install avahi-daemon avahi-utils

Далі запустіть сервіс і додайте його в автозавантаження:

sudo systemctl enable avahi-daemon
sudo systemctl start avahi-daemon

Перевірте доступні сервіси командою:

avahi-browse --all

Встановлення WSDD

Щоб ваш сервер Samba був доступний у мережі Windows, встановіть і налаштуйте сервіс WSDD. Цей сервіс дає змогу Windows бачити ваш сервер у мережі.

Для встановлення WSDD виконайте такі команди:

git clone https://github.com/Andy2244/wsdd2.git
cd wsdd2
make
sudo make install
sudo systemctl daemon-reload
sudo systemctl enable --now wsdd2

Тепер ваш сервер Samba має бути доступний у мережі Windows. Перевірте його доступність, відкривши мережеве оточення в Nautilus або провіднику Windows. Якщо все налаштовано правильно, ви повинні побачити ваш сервер Samba і його кулі.