- Ubuntu 18.04 — настройка сети c Windows
- Подключение Ubuntu 18.04 к локальной сети Windows
- Ubuntu 18.04 share folder в локальную сеть Windows
- Сопутствующие статьи
- Другие статьи про Ubuntu 18.04
- Ошибка Ubuntu не видит сеть Windows
- Почему Ubuntu не видит сеть Windows?
- 1. Установить Samba
- 2. Рабочая группа
- 3. Версия протокола
- 4. Правильный порядок разрешения имён
- 5. Не тот интерфейс
- 6. Отладка
- 7. Проблема в GVFS
- 8. Подключение напрямую
- 9. Общий доступ в Windows
- Выводы
Ubuntu 18.04 — настройка сети c Windows
Настройка сети
Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь — поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354. Или на телефон +7 918-16-26-331.
Даже небольшая сумма может помочь написанию новых статей 🙂
Или поделитесь ссылкой на эту статью со своими друзьями.
Опубликовано: 02.06.2018 Последнее обновление этой статьи: 02.06.2018
Инструкция по настройке локальной сети между Ubuntu 18.04 и Windows.
Ранее я уже написал несколько статей на тему настройки гетерогенной локальной сети (гетерогенная это сеть между разными ОС).
В этой статье будет в основном повторение того, что уже было написано ранее, но без такой детализации как в этих статьях и с привязкой к версии Ubuntu 18.04.
Подключение Ubuntu 18.04 к локальной сети Windows
Уже несколько лет, с тех пор как в Ubuntu используется файловый менеджер Наутилус 3 версии (сейчас он называется «Файлы»), существует косяк в браузере локальной сети Наутилуса. Если открыть Наутилус и в нем открыть вкладку «Другие места» и затем «Сеть Windows», то будет пустая страница:
То есть Наутилус не выполняет автоматическое подключение в рабочей группе Windows. Удивительно, но этот косяк переходит из версии в версию и до сих пор не исправлен.
Тем не менее, Наутилус может подключаться к компьютерам Windows в локальной сети. Для этого нужно вручную, в адресной строке Наутилуса, вписать имя рабочей группы Windows или имя компьютера Windows. Для ввода текста, в адресной строке Наутилуса, нужно нажать клавиши Ctrl + L.
Адрес с именем рабочей группы (smb://workgroup):
После ввода адреса и нажатия Enter, Наутилус подключится к локальной сети Windows и выдаст запрос на авторизацию:
Запрос на авторизацию будет в любом случае, даже если на компьютере Windows настроен вход без пароля. В этом случае нужно вписать произвольные имя пользователя и пароль (например 1 и 1). Но если на компьютере Windows настроен вход по паролю, тогда конечно нужно вводить имя и пароль, которые существуют на компьютере Windows.
Примечание. Если на компьютере Windows настроен вход без пароля, а в окне авторизации Наутилус вы напишите такое имя пользователя которое существует на компьютере Windows, тогда и пароль нужно будет указывать тот, который есть для этого пользователя. Есть такая особенность в авторизации Windows через локальную сеть — несмотря на настройку входа без пароля, Windows не дает сетевой вход с таким именем пользователя, которое существует на этом компьютере, если указан неверный пароль.
И после авторизации, Наутилус покажет список компьютеров в этой рабочей группе.
Вместо адреса рабочей группы, можно сразу написать адрес компьютера в этой группе (например smb://home):
После подключения к компьютеру Windows, этот адрес можно добавить в закладки Избранное:
И впоследствии подключаться через закладку в Избранном.
Подключиться к компьютеру Windows можно не только по его имени, но и по его IP-адресу (smb://192.168.1.3).
Конечно это неудобно, потому, что нужно узнавать имя рабочей группы или имя (или IP-адрес) компьютера в локальной сети.
Ubuntu 18.04 share folder в локальную сеть Windows
Раздача собственных ресурсов Ubuntu 18.04 (файлов и принтеров) в локальную сеть Windows выполняется так же как в предыдущих версиях.
Нужно открыть свойства папки в Наутилус (Файлы), и там открыть вкладку «Общедоступная папка локальной сети»:
И на этой вкладке включить опцию «Опубликовать эту папку».
Из коробки, в Ubuntu 18.04, Samba не установлена. И при расшаривании самой первой папки будет запрос на установку Samba:
Затем еще один запрос:
После установки Samba можно расшаривать папки:
Поле «Наименование» — здесь можно вписать имя, под которым папка будет видна в локальной сети. По умолчанию используется имя самой папки. Но если имя папки на кириллице, то для сети лучше вписать имя латиницей.
И две опции, которые дают удаленным пользователям полный доступ к файлам в этой папке.
После установки опций, нужно нажать кнопку «Применить».
Если вы хотите дать полный доступ к файлам в этой папке, тогда нужно еще изменить права доступа к этой папке. Это вкладка «Права»:
Для группы «Остальные» нужно дать права «Создание и удаление». А также нажать кнопку «Изменить права на вложенные файлы» и там тоже дать права полного доступа:
После этого, с других компьютеров (как Windows так и Linux), можно будет через сеть войти в эту папку и получить полный доступ к файлам.
Все расшаренные через Наутилус папки перечислены в папке /var/lib/samba/usershares.
Однако останется еще одна проблема. Если в этой папке будет создан файл с другого компьютера (через сеть), тогда этот файл получит владельца nobody и группу nogroup:
А это значит, что локальный пользователь Ubuntu не сможет редактировать или удалить этот файл!
Для предотвращения такой проблемы нужно вручную редактировать файл глобальных настроек Samba /etc/samba/smb.conf, например в терминале можно написать команду «sudo gedit /etc/samba/smb.conf«.
В этом файле, в конце, нужно создать секцию для расшаренной папки:
[pictures]
path = /home/user/Изображения
guest ok = yes
read only = no
И нужно выбрать вариант настроек для создания файлов и папок через сеть.
- create mask = 0777
- directory mask = 0777
В этом случае файл (папка) получат владельца nobody и группу nogroup, но для группы «Остальные» будут даны полные права доступа. То есть любой локальный пользователь Ubuntu будет иметь доступ к этому файлу.
Или другой вариант:
- force user = user name
- force group = user group
В этом случае файл (папка) получат владельца и группу указанного локального пользователя. То есть иметь доступ к этому файлу будет только тот локальный пользователь Ubuntu в домашней папке которого расположена сетевая (расшаренная) папка.
Выбор варианта зависит от конфигурации Ubuntu. Если есть лишь один локальный пользователь, тогда можно использовать второй вариант.
Если же несколько локальных пользователей и эта сетевая папка должна быть доступна для всех, тогда первый вариант.
Сопутствующие статьи
- Samba — как расшарить папку — в этой статье более подробно рассмотрен вопрос настройки Samba.
- Настройка LAN между Ubuntu Linux и Windows — в этой статье, описана настройка сети Ubuntu и Windows с «обоих сторон».
- Установка расширений GNOME Shell
- Описание Gnome Shell
Другие статьи про Ubuntu 18.04
Если вы живете в г. Краснодар и вам необходимо настроить локальную сеть в Linux
Иван Сухов, 2018, 2019 г.
Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь — поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354. Или на телефон +7 918-16-26-331.
Даже небольшая сумма может помочь написанию новых статей 🙂
Или поделитесь ссылкой на эту статью со своими друзьями.
Ошибка Ubuntu не видит сеть Windows
Вы, наверное, не раз сталкивались с проблемой, что Ubuntu не видит сеть Windows. Такая проблема характерна для многих дистрибутивов с окружением Gnome. Во многом причиной этому был баг в GVFS, который до сих пор толком не исправлен, поэтому работает эта функция далеко не всегда и далеко не во всех дистрибутивах.
В этой статье мы рассмотрим что делать если Ubuntu не видит шары Windows, как к ним всё таки подключится и можно ли решить проблему.
Почему Ubuntu не видит сеть Windows?
Как я уже написал выше Nautilus для подключения и просмотра общих папок Windows использует виртуальную файловую систему gvfs. А та, в свою очередь использует библиотеку libsmbclient для получения необходимых данных. Поэтому мы можем попытаться исправить ситуацию переопределив некоторые параметры в /etc/samba/smb.conf. Но работает это далеко не всегда.
1. Установить Samba
Если файловый сервер Samba у вас не установлен, то его надо установить для того чтобы был создан файл /etc/samba/smb.conf с параметрами по умолчанию. Они потом будут использоваться библиотекой libsmbclient и самой утилитой smbclient, которую вы можете применять для тестирования. Для установки выполните:
sudo apt install samba
Проверьте конфигурационный файл Samba на ошибки с помощью такой команды:
2. Рабочая группа
По умолчанию используется рабочая группа WORKGROUP. Убедитесь, что ваша рабочая группа имеет именно это имя, также убедитесь, что в /etc/samba/smb.conf задано правильное имя рабочей группы в параметре workgroup:
sudo vi /etc/samba/smb.conf
3. Версия протокола
В современных системах Windows для общего доступа к папкам используется файловая система CIFS, использующая современные версии протоколов SMB2 и SMB3. Эти протоколы не поддерживают обзор доступных общих папок так, как это ожидает получить Nautilus. Для того чтобы всё работало надо использовать старый протокол NT1. Чтобы его включить добавьте параметр client max protocol после параметра workgroup:
client max protocol = NT1
После этого сохраните изменения и перезагрузите компьютер и проверьте.
4. Правильный порядок разрешения имён
Неверный порядок разрешения сетевых имен тоже может стать проблемой. Чтобы исправить его найдите в smb.conf параметр и приведите его к такому виду:
name resolve order = bcast lmhosts host wins
Здесь первым используется bcast, широковещательные сообщения, которые рассылаются по вашей локальной сети и ищут компьютеры с общими папками.
5. Не тот интерфейс
Если в вашем компьютере несколько сетевых интерфейсов, возможно smbclient пытается использовать не тот интерфейс. Чтобы посмотреть список интерфейсов используйте команду:
Затем найдите в /etc/samba/smb.conf параметр interface и замените в его значении eth0 на имя вашего интерфейса, который обеспечивает связь с нужной локальной сетью. Например на enp0s8:
interfaces = 127.0.0.0/8 enp0s8
После этого надо перезапустить службы Samba:
sudo systemctl restart smbd
sudo systemctl restart nmbd
6. Отладка
Если сеть Windows всё ещё не работает, вы можете попытаться отлаживать GVFS чтобы понять где именно возникает проблема и в чём её суть. Для этого надо завершить текущий сервер GVFS и запустить свой в терминале с включённой опцией отладки. Для этого выполните:
pkill gvfs; pkill nautilus
GVFS_DEBUG=all GVFS_SMB_DEBUG=10 $(find /usr/lib* -name gvfsd 2>/dev/null) —replace 2>&1 | tee gvfsd.log
Затем откройте Nautils и войдите в сетевое окружение, сеть Windows. При этом в терминале будут выводится сообщения об ошибках работы службы. Вы можете использовать эти сообщения чтобы искать информацию в Google или попросить помощи на форумах.
7. Проблема в GVFS
Баг в GVFS, о котором я писал выше наблюдался для Samba версии 4.8 и ниже. Если сервер поддерживает протокол более высокого уровня, то клиент пытается использовать этот протокол, например SMB2 или SMB3, но на этих протоколах не работает отображение доступных ресурсов. Если у вас именно эта проблема, то для полного решения придется ждать обновления или использовать обходное решение описанное ниже.
8. Подключение напрямую
Даже если у вас не работает обнаружение сетевых ресурсов Windows, вы все ещё можете подключится к нужному компьютеру и получить с него файлы. Откройте пункт Другие места на левой панели Nautilus. Внизу окна вы увидите надпись Подключится к серверу введите smb://адрес_сервера в поле слева и нажмите Enter:
После этого система предложит ввести имя пользователя и пароль для доступа к общему ресурсу. Этот пользователь должен реально существовать на машине, к которой вы собираетесь подключится.
Введите пароль и вы увидите доступные общие папки:
9. Общий доступ в Windows
Убедитесь, что в Windows общий доступ был включён. Если общий доступ отключен, то вы не сможете никак получить доступ к ресурсам. Откройте проводник и перейдите в пункт Сеть. Если сетевой доступ отключён, то система выдаст соответствующее предупреждение:
Кликните по нему чтобы включить общий доступ, затем выберите Включить сетевое обнаружение и общий доступ к файлам.
После этого система ещё раз спросит надо ли разрешить доступ для всех общественных сетей. Ответьте утвердительно:
После этого вы сможете получить доступ к общим ресурсам этого компьютера.
Выводы
В этой статье мы кратко рассмотрели почему Ubuntu не видит сеть Windows, а также как исправить эту проблему. Если проблему с сетевым обнаружением устранить не удается, вы всегда можете попробовать подключится вручную. Это не решает основную проблему, но позволяет получить нужные файлы. Вы знаете другие способы решения? Поделитесь ими в комментариях!