diff --git a/packages/network/samba/package.mk b/packages/network/samba/package.mk index 01fdea9e65..d03221409e 100644 --- a/packages/network/samba/package.mk +++ b/packages/network/samba/package.mk @@ -142,6 +142,8 @@ post_makeinstall_target() { mkdir -p $INSTALL/usr/lib/samba cp $PKG_DIR/scripts/samba-config $INSTALL/usr/lib/samba + cp $PKG_DIR/scripts/smbd-config $INSTALL/usr/lib/samba + cp $PKG_DIR/scripts/samba-autoshare $INSTALL/usr/lib/samba if find_file_path config/smb.conf; then mkdir -p $INSTALL/etc/samba @@ -166,10 +168,6 @@ post_makeinstall_target() { mkdir -p $INSTALL/usr/share/services cp -P $PKG_DIR/default.d/*.conf $INSTALL/usr/share/services - - mkdir -p $INSTALL/usr/lib/samba - cp $PKG_DIR/scripts/samba-autoshare $INSTALL/usr/lib/samba - cp $PKG_DIR/scripts/smbd-config $INSTALL/usr/lib/samba fi } diff --git a/packages/network/samba/scripts/samba-autoshare b/packages/network/samba/scripts/samba-autoshare index a253b70f61..76454da52f 100755 --- a/packages/network/samba/scripts/samba-autoshare +++ b/packages/network/samba/scripts/samba-autoshare @@ -22,7 +22,6 @@ if [ -f /storage/.cache/services/samba.conf ]; then if [ "$SAMBA_AUTOSHARE" == "true" ] ; then /usr/lib/samba/samba-config - /usr/lib/samba/smbd-config [ -f /run/samba/smbd.pid ] && pkill -HUP smbd fi fi diff --git a/packages/network/samba/scripts/samba-config b/packages/network/samba/scripts/samba-config index cf5cf5f1ba..2dbc0e3bc8 100755 --- a/packages/network/samba/scripts/samba-config +++ b/packages/network/samba/scripts/samba-config @@ -46,3 +46,10 @@ mkdir -p $(dirname $SMB_CONF) else cp $SMB_DEFCONF $SMB_CONF fi + +# Generate smb.conf, unless disabled +if [ ! -f /storage/.cache/services/samba.disabled ]; then + /usr/lib/samba/smbd-config +fi + +exit 0 diff --git a/packages/network/samba/system.d.opt/nmbd.service b/packages/network/samba/system.d.opt/nmbd.service index 54d0ad6ed2..c77d65c86b 100644 --- a/packages/network/samba/system.d.opt/nmbd.service +++ b/packages/network/samba/system.d.opt/nmbd.service @@ -3,7 +3,7 @@ Description=Samba NMB Daemon After=network.target samba-config.service ConditionPathExists=!/storage/.cache/services/samba.disabled ConditionPathExists=/run/samba/smb.conf -Requires=samba-config.service +Wants=samba-config.service [Service] Type=forking diff --git a/packages/network/samba/system.d.opt/smbd.service b/packages/network/samba/system.d.opt/smbd.service index 3a0de0e10e..4fa7e23b44 100644 --- a/packages/network/samba/system.d.opt/smbd.service +++ b/packages/network/samba/system.d.opt/smbd.service @@ -3,13 +3,12 @@ Description=Samba SMB Daemon After=network.target samba-config.service ConditionPathExists=!/storage/.cache/services/samba.disabled ConditionPathExists=/run/samba/smb.conf -Requires=samba-config.service +Wants=samba-config.service [Service] Type=forking PIDFile=/run/samba/smbd.pid LimitNOFILE=16384 -ExecStartPre=/usr/lib/samba/smbd-config ExecStart=/usr/sbin/smbd ExecReload=/bin/kill -HUP $MAINPID TimeoutStopSec=1s