Запуск smbd.service сбрасывает smb.conf

Вопрос или проблема

У меня есть домашний сервер на Debian, который предоставляет 3 отдельные папки в виде Samba-шар. У меня не было проблем с ними за все время, пока они активны, или в процессе их использования. Сегодня я попробовал добавить 4-ю папку в качестве еще одной шары и не смог добиться, чтобы изменения в smb.conf сохранялись.

Вот процесс, который я проделал до сих пор:

  1. Служба smbd работает. systemctl status сообщает, что все в порядке, smbclient -L localhost отображает 3 общих папки, и все 3 доступны с компьютера на Windows в локальной сети.
  2. Я изменяю /etc/samba/smb.conf, чтобы добавить новую шару (я также пробовал добавить всего одну строку комментария, проблема та же). Повторное открытие smb.conf после сохранения изменений все еще показывает их в файле.
  3. smbcontrol all reload-config, а затем smbclient -L localhost отображает новую шару, и она доступна с компьютера под Windows. Чтение и запись в шару работают как и ожидалось. smb.conf все еще показывает мои изменения.
  4. Проверка smb.conf после выполнения systemctl stop smbd все еще показывает мои изменения.
  5. systemctl start smbd сбрасывает smb.conf на то, что было на этапе 1. Что примечательно, это не стандартный smb.conf, 3 уже настроенные шары по-прежнему присутствуют и работают. Новая шара больше не отображается в smbclient и недоступна в сети.

Мне нужно представить, что какая-то часть запуска службы загружает резервную копию smb.conf, но откуда? И как мне сделать так, чтобы это не происходило?

Ответ или решение

Каждый системный администратор, работающий с Samba на сервере Debian, сталкивался с проблемами, связанными с изменением конфигурационных файлов. В вашем случае появление проблемы, когда после перезапуска службы smbd конфигурация smb.conf сбрасывается, может быть связано с несколькими причинами.

Фоновая информация о Samba и smb.conf

Samba использует файл smb.conf для определения общих ресурсов и их параметров. Правильная настройка этого файла критически важна, так как именно от него зависит доступ пользователей к сетевым ресурсам. После изменений в этом файле важно убедиться, что служба Samba их распознает и применяет.

Возможные причины проблемы

  1. Конфигурационный файл, котрый перезаписывается:
    Возможно, есть механизм, который перезаписывает ваш smb.conf при запуске службы. Например, если у вас установлены какие-либо управляющие инструменты или скрипты, которые автоматически генерируют этот файл.

  2. Проблемы с правами доступа:
    Проверьте, что у пользователя, под которым вы редактируете smb.conf, есть необходимые права на запись. Убедитесь, что файл не защищен от записи (chmod).

  3. Дефолтные настройки:
    Если в системе есть иные комбинации и/или конфигурации SMB, такие как samba-tool или другие утилиты, которые могут соответствовать вашим настройкам и правилам (например, DSC или Ansible), они могут перезаписывать ваш конфиг.

Шаги для решения проблемы

  1. Проверка слежения за файлами конфигурации:
    Запустите команду inotifywait для отслеживания изменений файла smb.conf в момент старта службы, чтобы определить, кто именно или что именно вносит изменения.

    inotifywait -m /etc/samba/smb.conf
  2. Ручное сравнение с резервными копиями:
    Проверьте наличие резервных копий файла smb.conf. Обычно службы могут хранить резервные копии. Если такие файлы существуют, сравните их с вашим измененным smb.conf.

  3. Логи системы:
    Изучите логи Samba и системные логи (/var/log/samba/ и /var/log/syslog), чтобы выяснить, не выводятся ли ошибки или предупреждения во время перезапуска службы.

  4. Автоматизированные инструменты:
    Проверьте, не активированы ли механизмы управления конфигурацией, которые могут автоматически вносить изменения в конфигурационный файл при каждом запуске службы. Это может быть NetPlan, Puppet и т.д.

  5. Изменение конфигурации:
    Как временное решение, попробуйте вместо команды systemctl start smbd использовать systemctl restart smbd, хотя это не должно сильно изменить ситуацию, это может дать информацию о процессе остановки и запуска службы.

Вывод

Если проблема продолжает возникать, возможно, стоит рассмотреть возможность переустановки Samba, либо же создание нового конфигурационного файла на базе документации, без ненужных изменений. Убедитесь, что все изменения прописаны и применяются к правильному файлу конфигурации без каких-либо автоматизированных конфликтов.

Следуйте приведённым шагам, и ваш новый общий ресурс станет доступен без дальнейших нюансов, позволяя вам максимально эффективно управлять вашим сервером Samba.

Оцените материал
Добавить комментарий

Капча загружается...