- Установка и настройка файлового сервера Samba на Ubuntu
- Подготовка сервера
- 1. Время
- 2. Брандмауэр
- Установка и запуск Samba
- Создание первой шары и предоставление к ней гостевого доступа (анонимного)
- Доступ к папке по логину и паролю
- Доступ к папке определенным пользователям и группам
- Linux smb права доступа
- Samba (Русский)
- Contents
- Настройка сервера
- Установка
- Настройка межсетевого экрана
- Использование
- Управление пользователями
- Создание ресурсов для общего доступа
- Запуск служб
- Расширенная конфигурация
- Создание ресурсов общего доступа от имени обычного пользователя
- Установка и форсирование прав доступа
- Ограничение версии протокола для повышения безопасности
- Использование шифрования SMB
- Отключение общего доступа к принтерам
- Запрет определённых расширений файлов в общем ресурсе Samba
- Увеличение пропускной способности
- Включение доступа для старых клиентов или устройств
- Настройка клиента
- Ручное монтирование
- Добавление ресурса в /etc/fstab
- Монтирование пользователями
- Имена хостов WINS
- Автоматическое монтирование
- smbnetfs
- autofs
- Настройка файлового менеджера
- Nautilus, Nemo, Thunar и PCManFM
- Другие графические окружения
- Решение проблем
- Проблемы подключения к Windows 7 — mount error(12): cannot allocate memory
- Проблемы получения доступа к ресурсам, защищенным паролем, из Windows
- Диалоговое окно появляется с большой задержкой
- Ошибка: Failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL
- Не удается предоставить общий доступ к папке
- «Просмотр» сети выдает ошибку «Не удалось получить список ресурсов с сервера» (Failed to retrieve share list from server)
- Вы не являетесь владельцем каталога
- protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE
- Подключение к серверу завершилось неудачей: (Error NT_STATUS_UNSUCCESSFUL)
Установка и настройка файлового сервера Samba на Ubuntu
Samba позволяет настроить файловое хранилище различных масштабов — от малых офисов для крупных организаций. В данной инструкции мы рассмотрим процесс настройки файлового сервера. Сначала мы выполним установку и базовую настройку с предоставлением гостевого доступа. После будет приведены примеры разграничения доступа по пользователям, группам и пользователям Active Directory.
Подготовка сервера
1. Время
Для корректного отображения дат, необходимо позаботиться о синхронизации времени. Для этого будем использовать демон chrony. Установим его:
apt-get install chrony
Разрешим автозапуск сервиса:
systemctl enable chrony
2. Брандмауэр
По умолчанию, в системах на базе Debian брандмауэр разрешает все соединения. Но если в нашем случае мы используем брандмауэр, необходимо открыть порты:
iptables -I INPUT -p tcp —dport 445 -j ACCEPT
iptables -I INPUT -p udp —dport 137:138 -j ACCEPT
iptables -I INPUT -p tcp —dport 139 -j ACCEPT
* где порт 445 используется для samba, а порты 137, 138 и 139 — для работы NetBIOS (использование имени компьютера для доступа).
apt-get install iptables-persistent
Установка и запуск Samba
Установка выполняется из репозитория одной командой:
apt-get install samba
Разрешаем автостарт сервиса:
systemctl enable smbd
И проверим, что сервис запустился:
systemctl status smbd
Проверяем, что сервер самба позволяет к себе подключиться. Для этого можно с компьютера обратиться к серверу по SMB, например, на компьютере с Windows это можно сделать из проводника, прописав путь к серверу с двух слэшей:
* в данном примере мы подключаемся к серверу Samba с IP-адресом 192.168.1.15.
Если мы настроили сервер правильно, система откроет пустую папку. На данном этапе проверка закончена и мы можем переходить к созданию первой шары.
Создание первой шары и предоставление к ней гостевого доступа (анонимного)
Разберем самый простой пример предоставления доступа к папке — анонимный доступ всем пользователям без запроса пароля.
Открываем на редактирование конфигурационный файл samba:
И добавляем настройку для общей папки:
[Общая папка]
comment = Public Folder
path = /data/public
public = yes
writable = yes
read only = no
guest ok = yes
create mask = 0777
directory mask = 0777
force create mode = 0777
force directory mode = 0777
- [Общая папка] — имя общей папки, которое увидят пользователи, подключившись к серверу.
- comment — свой комментарий для удобства.
- path — путь на сервере, где будут храниться данные.
- public — для общего доступа. Установите в yes, если хотите, чтобы все могли работать с ресурсом.
- writable — разрешает запись в сетевую папку.
- read only — только для чтения. Установите no, если у пользователей должна быть возможность создавать папки и файлы.
- guest ok — разрешает доступ к папке гостевой учетной записи.
- create mask, directory mask, force create mode, force directory mode — при создании новой папки или файла назначаются указанные права. В нашем примере права будут полные.
Создаем каталог на сервере и назначим права:
mkdir -p /data/public
chmod 777 /data/public
Применяем настройки samba, перезагрузив сервис:
systemctl restart smbd
Пробуем подключиться к папке. Мы должны зайти в нее без необходимости ввода логина и пароля.
Доступ к папке по логину и паролю
Теперь создадим каталог, в который вход будет разрешен только авторизованным пользователям.
Открываем конфигурационный файл samba:
Добавляем настройку для новой папки:
[Папка сотрудников]
comment = Staff Folder
path = /data/staff
public = no
writable = yes
read only = no
guest ok = no
create mask = 0777
directory mask = 0777
force create mode = 0777
force directory mode = 0777
* эти настройки, во многом, похожи на те, что использовались в примере выше. Вот основные различия:
- path = /data/staff — используем новый путь до папки.
- public = no — запрещаем публичный доступ.
- guest ok = no — не разрешаем гостевое подключение.
Создаем каталог для новой папки:
Задаем права на созданный каталог:
chmod 777 /data/staff
Создаем пользователя в системе Linux:
* где staff1 — имя пользователя.
Задаем пароль для пользователя:
Теперь создадим пользователя в samba:
smbpasswd -a staff1
systemctl restart smbd
Пробуем зайти на сервер — общую папку мы должны открыть без авторизации, а при попытке открыть папку сотрудников должно появиться окно ввода логина и пароля.
Если мы авторизованы на компьютере, с которого пытаемся подключиться к серверу, под той же учетной записью, что создали для доступа к папке, samba может и не потребовать аутентификации.
Доступ к папке определенным пользователям и группам
Теперь создадим папку, доступ к которой будут иметь ограниченное количество пользователей.
Открываем конфигурационный файл samba:
Добавляем настройку для новой папки:
[Приватная папка]
comment = Private Folder
path = /data/private
public = no
writable = no
read only = yes
guest ok = no
valid users = admin, staff2, staff3, @privateusers
write list = admin, staff2
create mask = 0777
directory mask = 0777
force create mode = 0777
force directory mode = 0777
inherit owner = yes
* стоит обратить внимание на следующие настройки:
- path = /data/private — используем новый путь до папки.
- writable = no и read only = yes — в данном примере мы разрешим запись в каталог только некоторым пользователям. Поэтому общие настройки, разрешающие запись в папку, должны быть запрещены.
- valid users — список пользователей, которым разрешено подключаться к каталогу. В данном примере разрешения работают для пользователей admin, staff2 и staff3, а также для всех, кто входим в группу privateusers.
- write list — список пользователей, которые имеют доступ к папке на чтение и запись. В данном примере мы разрешаем это только для пользователей admin и staff2.
- inherit owner — опция позволяем включить наследование владельца при создании папок и файлов.
* если мы хотим, чтобы доступ к каталогу был полный у определенных пользователей (без разделения на тех, кто может только читать и тех, кто может также писать в папку), то опцию write list можно не указывать, а опции writable и read only оставить как в примерах выше.
Источник
Linux smb права доступа
Opening Windows to a Wider World. (слоган на www.samba.org)
Samba — реализация сетевых протоколов Server Message Block (SMB) и Common Internet File System (CIFS). Основное предназначение — расшаривание файлов и принтеров между Linux и Windows системами.
Samba состоит из нескольких демонов, работающих в фоновом режиме и предоставляющих сервисы и ряд инструментов командной строки для взаимодействия со службами Windows:
- smbd — демон, являющийся SMB-сервером файловых служб и служб печати;
- nmbd — демон, предоставляющий службы имен NetBIOS;
- smblient — утилита предоставляет доступ из командной строки к ресурсам SMB. Она также позволяет получить списки общих ресурсов на удаленных серверах и просматривать сетевое окружение;
- smb.conf — конфигурационный файл, содержащий настройки для всех инструментов Samba;
Список портов, используемых Samba
Порт | Протокол | Служба | Демон | Описание |
---|---|---|---|---|
137 | UDP | netbios-ns | nmbd | служба имен NetBIOS |
138 | UDP | netbios-dgm | nmbd | служба датаграмм NetBIOS |
139 | TCP | netbios-ssn | smbd | NetBIOS over TCP (служба сеансов) |
445 | TCP | microsoft-ds | smbd | NetBIOS over TCP (служба сеансов) |
Вводная статья про основные принципы расшаривания файлов и принтеров.
Установка и настройка сервера
Скопируем файл с настройками smb.conf
По умолчанию создаются ресурсы для домашних каталогов пользователей (раздел homes в smb.conf) и принтеров (раздел printers).
Доступ к ресурсу может быть по паролю или анонимный. Для первого способа есть пара моментов:
- пользователь должен существовать в системе (создан с помощью команды adduser username и установлен пароль passwd username );
- пользователь должен быть добавлен как пользователь Samba (с помощью команды sudo smbpasswd -a username );
Необходимо что-бы компьютеры принадлежали к одной рабочей группе, в Windows по умолчанию это WORKGROUP, вот её и будем использовать.
Ниже приведен пример простого файла smb.conf с настройками для анонимного доступа к директории /srv/samba/public.
Имена параметров не чувствительны к регистру. Для некоторых распространенных параметров существуют синонимы, а для некоторых – антонимы. Например, writable и writeable – это синонимы, а read only – антоним для них, т.е. опция read only = yes эквивалентна опции writable = no.
Проверим корректность настроек с помощью команды testparm
Опция -v указывает testparm выводить также значения по умолчанию.
Проверим подключению к Samba на порт 139 с помощью telnet
В Samba имеется ряд параметров, связанных с аутентификацией пользователей. Наиболее важным из них является параметр security, который может принимать пять различных значений источник:
- share — этот режим безопасности эмулирует метод аутентификации, используемый операционными системами Windows 9x/Windows Me. В этом режиме имена пользователей игнорируются, а пароли назначаются общим ресурсам. В этом режиме Samba пытается использовать предоставленный клиентом пароль, которым могут пользоваться разные пользователи.
- user* — этот режим безопасности установлен по умолчанию и использует для аутентификации имя пользователя и пароль, как это обычно делается в Linux. В большинстве случаев в современных операционных системах пароли хранятся в зашифрованной базе данных, которую использует только Samba.
- server — этот режим безопасности используется тогда, когда необходимо, чтобы Samba выполняла аутентификацию, обращаясь к другому серверу. Для клиентов этот режим выглядит так же, как аутентификация на уровне пользователя (режим user), но фактически для выполнения аутентификации Samba обращается к серверу, указанному в параметре password server.
- domain — используя этот режим безопасности, вы можете полностью присоединиться к домену Windows; для клиентов это выглядит так же, как аутентификация на уровне пользователя. В отличие от аутентификации на уровне сервера, доменная аутентификация использует более защищенный обмен паролями на уровне домена. Для полного присоединения к домену требуется выполнить дополнительные команды в системе Samba и, возможно, на контроллере домена.
- ads — этот режим безопасности похож на метод аутентификации в домене, но требует наличия контроллера домена Active Directory Domain Services.
Полный список параметров Samba есть в manpages.
Выше был приведен пример с доступом для директории с общим доступом. Рассмотрим еще пример с приватной директорией, к которой доступ только по логину и паролю.
Создадим группу и добавим в нее пользователя
Создадим директорию для пользователя и установим права
Добавим в /etc/samba/smb.conf новый ресурс
Пример настройки ресурса в котором есть симлинк на папку пользователя (/srv/samba/media/video » /home/proft/video)
Просмотр общих ресурсов компьютера
Еще один способ подключения для анонимного пользователя с командной строкой
Если на сервере настроен более высокий уровень безопасности, то может потребоваться передать имя пользователя или домена с помощью параметров -W и -U соответственно.
Еще лучше пароли хранить в отдельном файле
Выставим права доступа 0600
Новая строка для монтирования
И пример для /etc/fstab
Открыть ресурс в файловом менеджере Nautilus/Nemo/etc можно по такому пути smb://192.268.24.101.
Если Nemo пишет Nemo cannot handle «smb» locations. значит не хватает пакета gvfs-smb.
Доступ к серверу с Windows и Android клиента
Под Windows узнать рабочую группу с консоли можно с помощью
Открыть ресурсы на удаленной машине можно набрав в строке Explorer (Проводник) или в Run (Start — Run) UNC-адрес: \192.168.24.101.
Под Android подключится к серверу можно с помощью ES File Explorer, на вкладке Network добавляем сервер, просто по IP (без указания схемы, smb). После чего можно открывать расшаренные ресурсы. Для статистики: HDRIP-фильм идет без подтормаживания.
Источник
Samba (Русский)
Перевод этой статьи или раздела не отражает оригинальное содержание.
Samba — это реализация сетевого протокола SMB. Она облегчает организацию общего доступа к файлам и принтерам между системами Linux и Windows и является альтернативой NFS (Русский).
Contents
Настройка сервера
Установка
Samba настраивается с помощью конфигурационного файла /etc/samba/smb.conf , который широко документирован на странице руководства smb.conf(5) .
В связи с тем, что пакет samba поставляется без данного файла, вам нужно создать его перед запуском smb.service.
Вы можете воспользоваться документированным примером, как в smb.conf.default из git-репозитория Samba для создания /etc/samba/smb.conf .
Настройка межсетевого экрана
Если вы используете межсетевой экран, не забудьте открыть необходимые порты (как правило, 137-139 + 445). Для получения информации о полном списке портов, смотрите использование портов Samba.
Правило UFW
Так как профиль приложения UFW для Samba по умолчанию отсутствует, вы можете захотеть создать его.
Создайте или отредактируйте файл /etc/ufw/applications.d/samba , добавив следующее:
Затем загрузите этот профиль в UFW, запустив команду ufw app update Samba как root/sudo.
После этого можно разрешить доступ к Samba командой ufw allow Samba
Использование
Управление пользователями
Добавление пользователя
Для работы Samba требуется какой-нибудь Linux-пользователь — вы можете использовать существующего пользователя или создать нового.
Хотя имена пользователей Samba общие с системными пользователями, Samba использует для них отдельные пароли. Чтобы добавить нового пользователя Samba, воспользуйтесь следующей, заменив пользователь_samba на имя нужного пользователя:
Будет предложено задать пароль для этого пользователя.
Depending on the server role, existing File permissions and attributes may need to be altered for the Samba user account.
Если вы хотите разрешить новому пользователю только доступ к Samba-ресурсам и запретить полноценный вход в систему, можно ограничить возможности входа:
- отключить командную оболочку — usermod —shell /usr/bin/nologin —lock пользователь_samba
- отключить вход по SSH — измените опцию AllowUsers в файле /etc/ssh/sshd_config
Просмотр списка пользователей
Список добавленных в Samba пользователей можно посмотреть с помощью команды pdbedit(8) :
Смена пароля Samba-пользователя
Чтобы сменить пароль пользователя, используйте smbpasswd :
Создание ресурсов для общего доступа
Откройте файл /etc/samba/smb.conf и прокрутите текст вниз до секции Share Definitions. В конфигурации по умолчанию автоматически предоставляется общий доступ к домашним каталогам всех пользователей. Также по умолчанию он предоставляется для принтеров. Здесь есть несколько закомментированных примеров конфигурации. Больше информации о доступных опциях для ресурсов с общим доступом можно найти на странице руководства smb.conf(5) , которая также доступна в онлайн версии.
Со стороны Windows не забудьте изменить файл smb.conf для Windows Workgroup (в Windows по умолчанию: WORKGROUP).
Запуск служб
Для организации базовых возможностей обмена файлами при помощи SMB запустите/включите службы smb.service и nmb.service . Для получения дополнительной информации смотрите страницы справочного руководства (man) smbd и nmbd. Служба nmb.service в некоторых случаях необязательна.
Расширенная конфигурация
Создание ресурсов общего доступа от имени обычного пользователя
«Usershare» — это возможность, позволяющая обычным пользователям добавлять, изменять и удалять собственные ресурсы общего доступа.
Эта команда создает необходимый каталог в /var/lib/samba :
Эта команда создает группу sambashare:
Эта команда меняет владельца и группу каталога, который вы только что создали, на суперпользователя:
Эта команда меняет разрешения каталога usershares таким образом, что пользователи, входящие в группу sambashare, могут читать, записывать и выполнять файлы:
Задайте эти переменные в конфигурационном файле smb.conf :
Добавьте вашего пользователя в группу sambashare. Замените ваше_имя_пользователя на имя вашего linux-пользователя:
Перезапустите службы smb.service и nmb.service .
Завершите сеанс и войдите снова, чтобы применилось добавление новой группы к вашему пользователю.
Теперь у вас должна появиться возможность настраивать общий доступ samba, используя графический интерфейс. Например, в Thunar вы можете нажать правую кнопку мыши на любом каталоге и предоставить для него общий доступ в сети.
Для настройки общего доступа через командную строку используйте одну из следующих команд:
Если вы хотите предоставить общий доступ к файлам, находящимся в вашем домашнем каталоге, не забудьте задать доступ как минимум на чтение другим пользователям ( chmod a+rX ).
Установка и форсирование прав доступа
Разрешения могут быть применены и к серверу, и к отдельным ресурсам:
См. smb.conf(5) для более подробной информации о настройке прав доступа.
Ограничение версии протокола для повышения безопасности
В файле /etc/samba/smb.conf добавьте опции server min protocol и server max protocol для ограничения используемых версий протокола:
См. server max protocol в smb.conf(5) для обзора поддерживаемых протоколов.
Для совместимости со старыми клиентами и/или серверами вам может понадобиться указать client min protocol = CORE или server min protocol = CORE , но имейте в виду, что это делает вас уязвимым в связи с эксплойтами в SMB1, в том числе к ransomware атакам.
Клиентам, использующим mount.cifs , может понадобиться указать правильный vers=* , например:
Использование шифрования SMB
Нативное шифрование транспорта SMB доступно с версии SMB 3.0. Среди клиентов, поддерживающих такое шифрование, имеются Windows 8 и новее, Windows Server 2012 новее, smbclient в Samba 4.1 и новее.
Для использования шифрования по умолчанию установите параметр smb encrypt глобально или для отдельных ресурсов. Возможные значения — off , enabled (значение по умолчанию), desired или required :
Смотрите smb.conf(5) для более подробной информации, особенно разделы Effects for SMB1 и Effects for SMB2.
Отключение общего доступа к принтерам
По умолчанию Samba предоставляет общий доступ к принтерам, настроенным через CUPS.
Если вам это не нужно, используйте следующие опции для отключения:
Запрет определённых расширений файлов в общем ресурсе Samba
Samba предоставляет опцию для блокирования файлов по определённым паттернам, вроде расширений файлов. Её можно использовать для предотвращения распространения вирусов или для того, чтобы пользователи не тратили место на определённые файлы. Более подробную информацию можно найти в smb.conf(5) .
Увеличение пропускной способности
Большинству пользователей подойдут настройки по умолчанию. Однако корректное использование ‘socket options’ может улучшить производительность, но ошибки в настройке также могут и ухудшить её. Проверяйте эффекты, прежде чем вносить какие-либо серьезные изменения.
Читайте smb.conf(5) прежде чем применять описанные здесь опции.
Эти опции прописываются в файле /etc/samba/smb.conf в секции [global] .
SMB3 multi-channel может улучшить производительности, однако иногда может испортить данные из-за race conditions. В будущих версиях ситуация может улучшиться:
Ограничение времени бездействия полезно для предотвращения исчерпания ресурсов сервера из-за большого количества неактивных подключений:
Использование sendfile улучшает эффективность использования процессора и повышает скорость Samba:
Установка min receivefile size разрешает zero-copy запись непосредственно из буфера сокета в кэш файловой системы (если доступен). Это может улучшить производительность, но требует тестирования:
Асинхронное чтение/запись файлов может повысить производительность:
Увеличение размера буферов приёма/отправки и флаги оптимизации сокетов могут быть полезны для улучшения производительности. Рекомендуется протестировать каждый флаг отдельно, так как они могут вызывать проблемы в некоторых сетях:
Включение доступа для старых клиентов или устройств
Последние версии Samba больше не предлагают старые методы аутентификации и протоколы, которые всё ещё используются некоторыми старыми клиентами (IP-камерами и т.д.). Такие устройства обычно требуют от сервера разрешения аутентификации NTLMv1 и протокола NT1, известного как CIFS. Чтобы эти устройства работали с последней версией Samba, добавьте эти два параметра в секцию [global] :
Для анонимного/гостевого доступа достаточно лишь первого параметра. Если старое устройство использует имя и пароль для доступа, то нужен и второй параметр тоже.
Настройка клиента
Для доступа к файлам с использованием сервера Samba/SMB/CIFS необходим только пакет smbclient . Он доступен в официальных репозиториях.
Вы можете получать доступ и монтировать локально ресурсы, предоставленные для общего доступа другими компьютерами сети, используя графический интерфейс или интерфейс командной строки. Графический способ ограничен, так как большинство легковесных окружений рабочего стола не имеет родных средств настройки доступа к этим ресурсам.
Существует две «части» предоставления общего доступа. Первая лежит в основе механизма работы файловой системы, а вторая является интерфейсом, который позволяет пользователю выбирать монтируемые ресурсы общего доступа. В некоторых окружениях первая часть уже встроена.
Ручное монтирование
Установите пакет smbclient из официальных репозиториев. Если вы желаете получить более легкий подход и не нуждаетесь в возможности вывода списка общедоступных ресурсов, необходимо установить только cifs-utils , чтобы предоставить файл /usr/bin/mount.cifs .
Чтобы вывести список общедоступных ресурсов на сервере:
Создать точку монтирования для ресурса:
Примонтируйте ресурс, используя в качестве образца файл mount.cifs . Не все опции из перечисленных ниже необходимы или хороши (например, password ).
Имя системы Windows.
Каталог общего доступа.
Локальный каталог, в который будет примонтирован ресурс.
Смотрите страницу руководства mount.cifs(8) для получения информации.
Добавление ресурса в /etc/fstab
Самый простой способ добавить запись в fstab — использовать что-то вроде этого:
Однако, хранение паролей в легкочитаемом файле не рекомендуется! Более безопасным методом является использование файла полномочий. Например, создайте файл и выполните команду chmod 600 имя_файла , в результате чего только пользователь-владелец файла сможет читать и писать в него. Файл должен содержать следующую информацию:
а запись в вашем fstab должна выглядеть примерно так:
При использовании systemd (современные установки) можно использовать опцию comment=systemd.automount , которая увеличивает скорость загрузки сервиса на несколько секунд. Также можно указать текущего пользователя и группу, чтобы сделать жизнь немного проще, используя опции uid и gid .
Монтирование пользователями
Это позволит пользователям монтировать ресурс, если точка монтирования находится в каталоге, владельцами которого они являются, например, в свою домашнюю директорию. Чтобы пользователи могли монтировать и размонтировать ресурсы Samba в точках монтирования, владельцами которых они не являются, используйте smbnetfs или дайте им необходимые привилегии с помощью sudo.
Имена хостов WINS
Пакет smbclient предоставляет драйвер для использования имен хостов WINS. Чтобы его включить, добавьте “wins” в строку “hosts” файла /etc/nsswitch.conf.
Автоматическое монтирование
Есть несколько способов легко просматривать ресурсы общего доступа:
smbnetfs
Для начала удостоверьтесь, что вам доступны все ресурсы, которые вам нужны для монтирования:
Если это не работает, найдите и измените следующую строку в /etc/samba/smb.conf подобным образом:
Теперь перезапустите службы smbd.service и nmbd.service .
Если все работает, как и ожидалось, установите пакет smbnetfs из официальных репозиториев.
Затем добавьте следующую строку в файл /etc/fuse.conf :
и загрузите модуль ядра fuse :
Скопируйте каталог /etc/smbnetfs/.smb в вашу домашнюю директорию:
Затем создайте ссылку на файл smb.conf :
Если для доступа к некоторым общим каталогам необходимы имя пользователя и пароль, отредактируйте файл
/.smb/smbnetfs.auth , включив одну или несколько записей, как эта:
Также возможно добавление записей для специфичных хостов, чтобы они были примонтированы smbnetfs, если это необходимо. Больше информации можно найти в
Когда вы закончите настройку, необходимо выполнить
В противном случае smbnetfs пожалуется: ‘insecure config file permissions’.
Наконец, чтобы примонтировать сетевое окружение Samba в каталог по вашему выбору, выполните
Демон
Пакет в Arch Linux также поддерживает дополнительный «общесистемный» режим для smbnetfs. Чтобы его включить, вам необходимо выполнить указанные изменения в каталоге /etc/smbnetfs/.smb .
Затем вы можете запустить и/или включить в автозагрузку демон smbnetfs обычным способом. Общесистемной точкой монтирования является /mnt/smbnet/ .
autofs
Смотрите статью Autofs для получения информации об автомонтировщике ядра (kernel-based) Linux.
Настройка файлового менеджера
Nautilus, Nemo, Thunar и PCManFM
Чтобы получить доступ к ресурсам samba через Nautilus, Nemo, Thunar или PCManFM, установите пакет gvfs-smb , доступный в официальных репозиториях.
Нажмите Ctrl+l и введите smb://имя_сервера/ресурс в панель адреса, чтобы получить доступ к ресурсу.
Примонтированный ресурс, вероятно, будет представлен в файловой системе по пути /run/user/ваш_UID/gvfs .
KDE имеет встроенную возможность просмотра ресурсов Samba, в этом случае нет необходимости в дополнительных пакетах. Однако, для графического интерфейса в Системных Настройках KDE установите пакет kdenetwork-filesharing из официальных репозиториев.
Если при использовании Dolphin вы получите ошибку «Time Out», необходимо раскомментировать и отредактировать эту строку в файле smb.conf:
Другие графические окружения
Есть несколько полезных программ, но им могут требоваться пакеты, созданные для них. Это может быть сделано с помощью Arch package build system. Хорошая новость заключается в том, что они не нуждаются в особом окружении, устанавливаемом для их поддержки, так что они «тянут» за собой меньше пакетов.
- pyneighborhoodAUR доступен в официальных репозиториях
- Плагины LinNeighborhood, RUmba, xffm-samba для Xffm недоступен в официальных репозиториях или в AUR. Поскольку они не поддерживаются официально (или поддерживаются, но неофициально), они могут быть устаревшими и не работать в полной мере
Решение проблем
Проблемы подключения к Windows 7 — mount error(12): cannot allocate memory
Известная ошибка Windows 7 «mount error(12): cannot allocate memory» может быть исправлена установкой пары ключей в реестре системы Windows:
- HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache (установить значение 1 )
- HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size (установить значение 3 )
В качестве альтернативы можно запустить командную строку от имени Администратора и выполнить следующее:
Выполните одно из следующих действий, чтобы изменения вступили в силу:
- Перезагрузите Windows
- Перезапустите службу на сервере через services.msc
- Выполните в командной строке net stop lanmanserver и net start lanmanserver ; после остановки служба может перезапуститься автоматически
Проблемы получения доступа к ресурсам, защищенным паролем, из Windows
При проблемах получения доступа к ресурсам, защищенным паролем, из Windows попробуйте добавить следующее в файл /etc/samba/smb.conf :[1] [устаревшая ссылка 2020-08-04]
Обратите внимание, что это должно быть добавлено в локальный файл smb.conf, а не в файл сервера
Диалоговое окно появляется с большой задержкой
У меня была проблема, связанная с тем, что диалоговое окно для ввода пароля появлялось с задержкой около 30 секунд, когда я пытался установить соединение из Windows XP/Windows 7. Когда я посмотрел файл error.log на сервере, я увидел:
Эта опция предотвращает поиск cups и файла /etc/printcap:
Ошибка: Failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL
Если вы являетесь домашним пользователем, используете samba исключительно для организации общего доступа к файлам с сервера или NAS и не заинтересованы в организации общего доступа к принтерам, вы можете исправить эту ошибку, добавив следующие строки в файл /etc/samba/smb.conf:
…проверьте ваши логи:
и больше ошибка не должна появляться.
Не удается предоставить общий доступ к папке
Проблема проявляется в том, что, когда вы пытаетесь предоставить общий доступ к папке через Dolphin (файловый менеджер), и вначале, вроде бы, все работает нормально, после перезапуска Dolphin иконка ресурса исчезла из папки, а в терминале (Konsole) вы видите следующий вывод:
Для решения проблемы включите пользовательские общие ресурсы, как это описано в разделе #Создание ресурсов общего доступа от имени обычного пользователя.
«Просмотр» сети выдает ошибку «Не удалось получить список ресурсов с сервера» (Failed to retrieve share list from server)
И вы используете firewall (iptables), поскольку не доверяете вашей локальной (школа, университет, отель) сети. Это может происходить по следующей причине: когда smbclient просматривает локальную сеть, он посылает широковещательный запрос на udp-порт 137. Затем серверы сети отвечают вашему клиенту, но, поскольку исходный адрес ответа отличается от адреса назначения, который видел iptables при отправке запроса, iptables не признает ответ как «установленное соединение» или «относящийся к запросу», и, следовательно, пакет отбрасывается. Возможное решение — добавление:
в вашу конфигурацию iptables.
Вы не являетесь владельцем каталога
Попробуйте просто перезагрузить систему.
protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE
Вероятно, клиент не имеет доступа к общим ресурсам. Удостоверьтесь, что IP-адрес клиента прописан в строке hosts allow = файла /etc/samba/smb.conf .
Подключение к серверу завершилось неудачей: (Error NT_STATUS_UNSUCCESSFUL)
Вероятно, вы указываете smbclient неправильное имя сервера. Чтобы узнать его, запустите на сервере команду hostnamectl и найдите строку «Transient hostname».
Источник