- «Ошибка подключения ресурса Windows».
- Ошибка Ubuntu не видит сеть Windows
- Почему Ubuntu не видит сеть Windows?
- 1. Установить Samba
- 2. Рабочая группа
- 3. Версия протокола
- 4. Правильный порядок разрешения имён
- 5. Не тот интерфейс
- 6. Отладка
- 7. Проблема в GVFS
- 8. Подключение напрямую
- 9. Общий доступ в Windows
- Выводы
«Ошибка подключения ресурса Windows».
Команда-скрипт для открытия «Панели Управления» по клику. OS LM 17.1 «Rebecca» Cinnamon
Здравствуйте. Настроил систему под себя, включил в настройках панели «Параметры автоматического.
Создание «мягких» и «жёстких» ссылок на всё файлы в каталоге
Подскажите, пожалуйста. Как можно при помощи команды find и xargs создать мягкие и жёсткие ссылки.
Ошибка «NTLDR is missing» при загрузке Ubuntu с HDD
Отформатировал второй HDD в формат NTFS, распаковал в этот HDD ISO-образ Ubuntu Server 16.04.5 LTS.
«Возникла ошибка в получении XML данных» На Xubuntu 11.04
Добрый день товарищи сисадмины и програмисты. пришел к Вам поскольку на форуме убунту.ру проблему.
Расшаривание папок или дисков в Linux Ubuntu 8.10.
В Windows общий доступ к папке или диску делается достаточно просто. В Линуксе, в связи с его более мощной системой безопасности, организация общего доступа, если таковая делается на нём впервые, занимает немного больше времени из-за подготовительных действий, тем не менее ничего сложного в этом тоже нет. А для последующих папок организация доступа становится не сложнее, чем в Windows.
Сделать в Ubuntu общедоступной для локальной сети папку («расшарить» её) можно как вручную, путём установки NFS-сервера, правки конфигурационных файлов и последующего монтирования расшаренной папки в целевом компьютере, так и посредством специальной службы, которая называется samba. Эта служба позволяет расшаривать папку не только для компьютеров под Linux, но сделать это и для других операционных систем, для чего она, в общем-то, в первую очередь и предназначается. Служба реализуют протокол SMB/CIFS, который ещё называют LanManager или NetBIOS.
Итак, ниже предлагается методика для организации общего доступа из локальной сети к папке посредством службы samba. Не пугайтесь длинному описанию — методика короткая, просто она довольно ёмко описана. Кроме того, если вы уже один раз её выполнили, то для расшаривания остальных папок будет достаточно выполнять только пункт 5, то есть, по сути, просто включать общий доступ к любой папке через её контекстное меню.
С помощью «Система → Администрирование → Программа управления пакетами Synaptic» удостоверяемся, что у нас установлен пакет samba. Если нет, устанавливаем его.
Если вы собираетесь сделать общедоступным сразу целый диск, или папку, владельцем которой ваша учётная запись не является, то открываем файл /etc/samba/smb.conf и в секцию [global] в подраздел Misc дописываем строчку:
usershare owner only = False.
Это разрешит нам как пользователю открывать общий доступ к чужим объектам. Так, диски находятся в ведении суперпользователя.
Также проверяем, чтобы SAMBA была настроена на рабочую группу, компьютеры которой должны получать доступ к нашим папкам. По умолчанию это WORKGROUP. Настраивается имя рабочей группы в том же конфигурационном файле установкой параметра workgroup, расположенного в самом его начале.
Проверяем, и при отсутствии разрешаем себе привилегию публиковать папки в локальной сети. Для этого открываем «Система → Администрирование → Пользователи и группы», нажимаем кнопку «Свойства», в открывшемся окне переходим на вкладку «Привилегии пользователя» и проверяем галочку напротив записи «Публиковать папки в локальной сети». Если не стоит, то закрываем окно свойств, в окне настроек нажимаем кнопку «Разблокировать», вводим свой пароль и авторизовываемся. Далее снова открываем свойства и в ставшем активным списке устанавливаем нужную галочку. Затем нажимаем «ОК» и закрываем настройки.
Находим в обозревателе файлов папку, которую вы хотите сделать доступной для локальной сети. Она должна находиться в правой, основной части обозревателя. Если необходимо отобразить в правой части диск, то не забываем, что диски в Линукс представлины всё теми же папками, и находятся в каталоге media. Если требующийся диск ещё не был подмонтирован (присоединён), то достаточно щёлкнуть левой кнопкой мыши на его имени в левой части обозревателя, и он автоматически подмонтируется и появится в папке media (и отобразится значком на рабочем столе).
В правой части обозревателя щёлкаем правой кнопкой мыши на нужной папке и выбираем пункт «Общий доступ». В открывшемся окне ставим галочки напротив пунктов «Опубликовать эту папку», «Разрешать другим пользователям изменять содержимое папки» и «Гостевой доступ», задаём имя ресурса и нажимаем кнопку «Создать ресурс».
Если после установки первой галочки появилось сообщение об отсутствии службы публикации папок, значит вы не выполнили пункт 1 настоящей методики. Нажимаем предлагаемую нам в этом же сообщении кнопку «Установить службу», после чего произойдёт скачка и установка требующихся пакетов, и программа попросит перезагрузить сессию. После перезагрузки попробуйте повторить всё снова, начиная с пункта 4.
Если после нажатия на кнопку «Создать ресурс» появилась ошибка:
Ошибка 255 при запуске ‘net usershare’: net usershare add: cannot share path /media/disk as we are restricted to only sharing directories we own. Ask the administrator to add the line «usershare owner only = False» to the [global] section of the smb.conf to allow this.
значит вы пытаетесь сделать общедоступным диск или папку, владельцем которой ваша учётная запись не является, но не выполнили пункт 2 настоящей методики.
Теперь, если на своих компьютерах вы используете сетевые фильтры, включаем в их правила в таблицу filter записи, разрешающие необходимые samba порты, с указанием нужных сетевых интерфейсов вместо приведённого здесь eth1:
# Разрешим работу samba
# Порт 137 (netbios-ns) — служба имён NETBIOS
# Порт 138 (netbios-dgm) — служба датаграмм NETBIOS
# Порт 139 (netbios-ssn) — служба сеансов NETBIOS
# Порт 445 (microsoft-ds) — протокол SMB поверх TCP/IP
-A INPUT -p udp -m udp -m multiport -i eth1 —port 137,138 -j ACCEPT
-A INPUT -p tcp -m tcp -m multiport -i eth1 —port 139,445 -j ACCEPT
-A OUTPUT -p udp -m udp -m multiport -o eth1 —port 137,138 -j ACCEPT
-A OUTPUT -p tcp -m tcp -m multiport -o eth1 —port 139,445 -j ACCEPT
# Если надо, разрешаем инструмент администрирования
# Порт 901 (swat) — Web-инструмент администрирования Samba (SWAT)
# -A INPUT -p tcp -m tcp -m multiport -i eth1 —port 901 -j ACCEPT
# -A OUTPUT -p tcp -m tcp -m multiport -o eth1 —port 901 -j ACCEPT
Всё. Теперь папка «расшарена», и доступна с любого компьютера локальной сети. Для доступа к ней открываем «Переход → Сеть», и раскрываем «Сеть Windows». После этого открываем рабочую группу WORKGROUP, находим нужный компьютер, и открыв его получаем список его расшаренных ресурсов.
Замечу, что с одной стороны, ресурс будет доступен в сети только тогда, когда содержащий его носитель будет подмонтирован к системе, а с другой стороны, нельзя будет отмонтировать этот носитель, пока он не будет отмонтирован на других компьютерах локальной сети, что, в общем-то, логично.
Служба samba устанавливается только на тех машинах, ресурсы которого необходимо открыть в сеть. На всех остальных машинах с Ubuntu уже по умолчанию установлена клиентская часть службы (smbclient), и ничего доустанавливать не надо.
По моим наблюдениям, работа с сетью вообще и с «расшаренными» ресурсами в частности работает в Linux гораздо быстрее и увереннее, чем в Windows. Оно и понятно — если Windows создавалась по большому счёту как эмулятор бумажных документов, и только потом пошла в сеть, то Linux изначально создавался как сетевая система, и только сейчас начал обрастать бумажными интефейсами.
Ошибка 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, а также как исправить эту проблему. Если проблему с сетевым обнаружением устранить не удается, вы всегда можете попробовать подключится вручную. Это не решает основную проблему, но позволяет получить нужные файлы. Вы знаете другие способы решения? Поделитесь ими в комментариях!