Я заменил свой устаревший сервер на новый, совершенно новую сборку (так что, возможно, «замененный» будет более точным, чем «обновленный»), но, конечно, я собрал все старые файлы конфигурации и т.д., и единственную важную функцию, которую я не сделал Самба была.
Я работал над этим уже много дней и даже обновился сегодня до Fedora Server 5.7.11-200.fc32.x86_64
чтобы убедиться, что сейчас не исправлена какая-то ошибка. Абсолютно никаких ошибок при установке или обновлении не было. И, как ни крути, существует около дюжины пакетов самбы:
samba-dc-provision-4.12.5-0.fc32.noarch
samba-test-libs-4.12.5-0.fc32.x86_64
samba-winbind-clients-4.12.5-0.fc32.x86_64
samba-libs-4.12.5-0.fc32.x86_64
samba-winbind-4.12.5-0.fc32.x86_64
samba-dc-bind-dlz-4.12.5-0.fc32.x86_64
samba-winbind-krb5-locator-4.12.5-0.fc32.x86_64
samba-common-tools-4.12.5-0.fc32.x86_64
samba-devel-4.12.5-0.fc32.x86_64
python3-samba-dc-4.12.5-0.fc32.x86_64
samba-dc-libs-4.12.5-0.fc32.x86_64
samba-vfs-cephfs-4.12.5-0.fc32.x86_64
python3-samba-4.12.5-0.fc32.x86_64
samba-krb5-printing-4.12.5-0.fc32.x86_64
samba-vfs-glusterfs-4.12.5-0.fc32.x86_64
samba-winbind-modules-4.12.5-0.fc32.x86_64
samba-client-libs-4.12.5-0.fc32.x86_64
samba-4.12.5-0.fc32.x86_64
samba-pidl-4.12.5-0.fc32.noarch
samba-client-4.12.5-0.fc32.x86_64
samba-common-libs-4.12.5-0.fc32.x86_64
samba-common-4.12.5-0.fc32.noarch
samba-dc-4.12.5-0.fc32.x86_64
samba-test-4.12.5-0.fc32.x86_64
Я пытался сделать домашнее задание, но не могу найти примеров чего-либо полезного в поисковых системах. Я пробовал больше содержимого файла конфигурации, чем могу вспомнить - конечно, МНОГИЕ десятки или сотня +, в зависимости от того, как вы считаете. Возможно, в наше время для меня не плодотворно публиковать различные файлы конфигурации, но для примера конфигурации, которая, как я надеялся, должна работать и предназначена для Fedora 32, см. Ссылку ниже. Однако старые данные конфигурации находятся ниже.
Сообщение об ошибке идентично независимо от того, что написано в файле конфигурации - по крайней мере, пока:
At this time the 'samba' binary should only be used for either:
'server role = active directory domain controller' or to access the ntvfs file server with 'server services = +smb' or the rpc proxy with 'dcerpc endpoint servers = remote'
You should start smbd/nmbd/winbindd instead for domain member and standalone file server tasks
[2020/08/02 15:48:33.190413, 0] ../../lib/util/become_daemon.c:121(exit_daemon)
exit_daemon: daemon failed to start: Samba detected misconfigured 'server role' and exited. Check logs for details, error code 22
Конечно, это сначала идет из программы journalctl, а затем, идентично, из одного из журналов в / var / log / samba /, и после прочтения каждого из них, чтобы быть уверенным, никакой дополнительной информации оттуда не найти. , вопреки самодовольному предположению в сообщении.
Первое, что я сделал, - это попытался понять, что это пытается сказать:
Вместо этого вы должны запустить smbd / nmbd / winbindd для задач члена домена и автономного файлового сервера
Я старался изо всех сил следить за smbd, nmbd и winbindd, но нет, они не могут быть просто запущены, как было сказано, и, по-видимому, требуется докторская степень, чтобы выяснить, как с ними бороться в Fedora - или, может быть, я просто не понимаю, что я читаю, хотя я не новичок. Интересно, что после любой загрузки есть два процесса winbind:
/usr/sbin/winbindd --foreground --no-process-group
Но мои клиенты вообще не могут подключиться. И, насколько я могу понять, это контроллер домена, который нам в любом случае не нужен, и nmdb
кажется NetBios
инструмент, и я понятия не имею, как это помогает при передаче файлов Linux в Windows. А что касается smbd
, ДА! Это звучит для всего мира как то, что мы использовали все эти годы! НО ... НИЧЕГО не нашел - даже попросил dnf установить! Нет, извините, это, к сожалению, недолговечно.
Чтобы прояснить это, я подумал ОБЯЗАТЕЛЬНО smbd
было то, что нужно, но нет, ни одна из этих работ:
# systemctl start smbd
Failed to start smbd.service: Unit smbd.service not found.
# dnf install smbd
Last metadata expiration check: 1:27:03 ago on Mon 03 Aug 2020 08:08:24 AM PDT.
No match for argument: smbd
Error: Unable to find a match: smbd
Я был бы рад попробовать что-нибудь еще в этом направлении - предложения приветствуются! (Примечательно, что я пытался установить "samba *", думая, что, возможно, пакет отсутствует, а есть, samba-winexe-2:4.12.5-0.fc32.x86_64,
так что, конечно, я его установил. systemctl start smbd
по-прежнему ничего не сделал, но было изображение winexe
добавлен, но у него нет справочной страницы и systemctl
тоже ничего не сделал с этим. Тем не мение:
# winexe -h
winexe version 4.12
This program may be freely redistributed under the terms of the GNU GPLv3
Usage: winexe [OPTION]... //HOST[:PORT] COMMAND
Options:
-h, --help Display help message
-V, --version Display version number
-U, --user=[DOMAIN/]USERNAME[%PASSWORD] Set the network username
-A, --authentication-file=FILE Get the credentials from a file
-N, --no-pass Do not ask for a password
-k, --kerberos=[yes|no] Use Kerberos
-d, --debuglevel=DEBUGLEVEL Set debug level
--uninstall Uninstall winexe service after
remote execution
--reinstall Reinstall winexe service before
remote execution
--runas=[DOMAIN\]USERNAME%PASSWORD Run as the given user (BEWARE:
this password is sent in
cleartext over the network!)
--runas-file=FILE Run as user options defined in a
file
--interactive=0|1 Desktop interaction: 0 -
disallow, 1 - allow. If allow,
also use the --system switch
(Windows requirement). Vista
does not support this option.
--ostype=0|1|2 OS type: 0 - 32-bit, 1 - 64-bit,
2 - winexe will decide.
Determines which version (32-bit
or 64-bit) of service will be
installed.
Это интригует, но я не мог понять, что именно с этим делать и для чего. Итак, я двинулся дальше.
Затем я сосредоточился на очевидных изменениях, которые, как можно было подумать, могут сработать для «роли сервера», проверил документацию и потратил бесчисленные часы на поиск решения проблемы «роли сервера» в Интернете. Я перепробовал столько вариантов - не только «роли сервера», но и целых файлов конфигурации - я даже не могу вспомнить их все. И документация в основном кажется очень старой, но Я действительно думал, что это актуально, но никаких полезных результатов это не дало. Я очень старался, но я что-то упустил? МОЖЕТ БЫТЬ, я недостаточно разбираюсь в мире окон, чтобы знать, что они говорят? Могут ли, например, контроллеры домена обслуживать ТОЛЬКО каталоги, с которыми я знаком? Я думал, что это именно то, чего я НЕ хочу.
В обширном поиске в Интернете единственное, что близко можно найти здесь. Это для Fedora 32, но их пример для меня не работает - сервер не запускается ИЛИ не выдает полезные сообщения об ошибках.
Что нужно от самбы:
За 20 с лишним лет, когда здесь была установлена Samba, она предоставляла отличные услуги, такие как NFS, обслуживая каталоги Linux для Windows-компьютеров в локальной сети, используя парадигму Workgroup. Домены НЕ нужны и вообще нежелательны, хотя поддержка принтеров была полезной. Система должна иметь доступ для чтения и записи, простую, но эффективную схему имени пользователя и пароля и достаточно хорошо соблюдать разрешения. Может быть, 24 года - я сбился с пути - Самба исполняла эту роль в этом магазине. И да, все системы старше, как Windows 7, и нас совсем не волнуют контроллеры домена - они кажутся довольно авторитарными и диктаторскими, нам ничего не нужно. (Или мы?)
Стоит добавить, что это только внутренняя сеть, и SE linux не является проблемой - сервер даже не запускается!
Итак, неужели простое обновление системы положит конец нашим отношениям с Samba и заставит нас, может быть, пересмотреть окна ?! (Это сводит с ума.)
СТАРАЯ КОНФИГУРАЦИЯ:
Комментатор Майкл Хэмптон хочет увидеть старую конфигурацию, хотя я не вижу уместности, так как я буду работать с ЛЮБЫМ файлом конфигурации, который позволяет запускать сервер, и просто повторно сделаю конфигурацию современным способом. Но для таких, как Мишал, пожалуйста - сначала система:
Server: 3.19.3-200.fc21.x86_64
Packages:
samba-winbind-4.1.17-1.fc21.x86_64
samba-client-4.1.17-1.fc21.x86_64
samba-libs-4.1.17-1.fc21.x86_64
system-config-samba-1.2.100-3.fc21.noarch
samba-common-4.1.17-1.fc21.x86_64
samba-winbind-modules-4.1.17-1.fc21.x86_64
samba-4.1.17-1.fc21.x86_64
Данные файла конфигурации - из testparm, как вы это делали в те дни:
Server role: ROLE_STANDALONE
[global]
workgroup = OurWorkgroup
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 50
idmap config * : backend = tdb
cups options = raw
[printers]
comment = All Printers
path = /var/spool/samba
guest ok = Yes
printable = Yes
print ok = Yes
browseable = No
[Share1]
path = /opt/samba/Share1
username = fred clara
write list = fred, clara
read only = No
Немного, что вы не можете / не можете получить от testparm:
security = user
bassdb backend = tdbsam
ОК, все - больше ничего нет. И я больше НИЧЕГО не имею в виду в файле конфигурации. В файле конфигурации есть еще много комментариев, которые закомментированы, но, ну, они закомментированы!
По причинам, которые я не совсем понимаю, Fedora назвала модули systemd, запускающие smbd и nmbd smb
и nmb
соответственно. Для управления этими услугами используйте systemctl <command> smb
(или nmb
).
Я смог найти модули systemd, проверив содержимое RPM, а именно:
[root@localhost ~]# rpm -ql samba | grep systemd/system
/usr/lib/systemd/system/nmb.service
/usr/lib/systemd/system/smb.service
Кажется, вы пытаетесь запустить Samba AD DC, но smb.conf не для DC, вероятно, для отдельного сервера. Попробуйте 'systemctl start smbd'