Samba systemd ile başlamayacak

Sep 05 2020

Samba 4.12.6'yı centos 8'deki kaynaktan kurdum.

Sambaya doğrudan başladığımda

/usr/local/samba/sbin/samba

beklenen şekilde çalışır.

Şimdi bir systemd birimi oluşturuyorum:

[Unit]
Description=Samba Active Directory Domain Controller
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/samba/sbin/samba -D
PIDFile=/usr/local/samba/var/run/samba.pid
ExecReload=/bin/kill -HUP $MAINPID

[Install]
WantedBy=default.target

Başlatın ve İzin reddedildi ile başarısız oluyor

[root@centos-server-01 ~]# systemctl status samba-ad.service
● samba-ad.service - Samba Active Directory Domain Controller
   Loaded: loaded (/etc/systemd/system/samba-ad.service; disabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Fri 2020-09-04 19:03:24 CEST; 14s ago
  Process: 1549 ExecStart=/usr/local/samba/sbin/samba -D (code=exited, status=203/EXEC)

Sep 04 19:03:24 centos-server-01 systemd[1]: Starting Samba Active Directory Domain Controller...
Sep 04 19:03:24 centos-server-01 systemd[1]: samba-ad.service: Control process exited, code=exited status=203
Sep 04 19:03:24 centos-server-01 systemd[1]: samba-ad.service: Failed with result 'exit-code'.
Sep 04 19:03:24 centos-server-01 systemd[1]: Failed to start Samba Active Directory Domain Controller.

journalctl gösterir:

journalctl _PID=1549
-- Logs begin at Fri 2020-09-04 18:00:19 CEST, end at Fri 2020-09-04 19:03:39 CEST. --
Sep 04 19:03:24 centos-server-01 systemd[1549]: samba-ad.service: Failed to execute command: Permission denied
Sep 04 19:03:24 centos-server-01 systemd[1549]: samba-ad.service: Failed at step EXEC spawning /usr/local/samba/sbin/samba: Permission denied

Samba ikili dosyası çalıştırılabilir:

ls -al /usr/local/samba/sbin/
total 2816
-rwxr-xr-x.  1 root root  771608 Sep  2 17:28 eventlogadm
-rwxr-xr-x.  1 root root  331304 Sep  2 17:28 nmbd
-rwxr-xr-x.  1 root root   58280 Sep  2 17:27 samba
-rwxr-xr-x.  1 root root    3616 Sep  1 20:15 samba-gpupdate
.
.

file gösterir:

/usr/local/samba/sbin/samba: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically li    nked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=3f9ee20e102f467fc    12e1b4bc913472f23dcde0b, not stripped

Her zaman root olarak giriş yaptım. EXEC yumurtlama adımında Başarısız okudum … İzin reddedildi ve aşağıdakiler ancak yardımcı olmadı.

Belki birinin benim için bir ipucu vardır

Yanıtlar

2 kofemann Sep 05 2020 at 19:30

SELinux, ExecStart'ta kullanılabilen ikili dosyaları system_u:object_r:bin_t:s0öznitelik kümesine sahip yollarla sınırlar . Genellikle bunlar /usr/bin /usr/sbin /usr/libexec /usr/local/bindizinlerdir. Systemd'nin / usr / local / samba / sbin / içindeki ikili dosyaları kullanmasına izin vermek için samba ikili dosyasını bu dizinlerden birine taşımanız veya selinux politikasını değiştirmeniz gerekir:

chcon -R -t bin_t /usr/local/samba/sbin/