]>
git.ipfire.org Git - ipfire-2.x.git/blob - src/initscripts/packages/samba
2 ###############################################################################
4 # IPFire.org - A linux based firewall #
5 # Copyright (C) 2007-2024 IPFire Team <info@ipfire.org> #
7 # This program is free software: you can redistribute it and/or modify #
8 # it under the terms of the GNU General Public License as published by #
9 # the Free Software Foundation, either version 3 of the License, or #
10 # (at your option) any later version. #
12 # This program is distributed in the hope that it will be useful, #
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
15 # GNU General Public License for more details. #
17 # You should have received a copy of the GNU General Public License #
18 # along with this program. If not, see <http://www.gnu.org/licenses/>. #
20 ###############################################################################
25 function fix_permissions
() {
26 local lockdir
="/var/lib/samba/winbindd_privileged"
27 chmod 750 "${lockdir}"
28 chgrp wbpriv
"${lockdir}"
30 mkdir
-p /var
/run
/samba
/{nmbd
,ncalrpc
,winbindd
}
33 eval $
(/usr
/local
/bin
/readhash
/var
/ipfire
/ethernet
/settings
)
39 boot_mesg
"Starting nmbd..."
40 loadproc
/usr
/sbin
/nmbd
-D
42 boot_mesg
"Starting smbd..."
43 loadproc
/usr
/sbin
/smbd
-D
45 boot_mesg
"Starting winbind..."
46 loadproc
/usr
/sbin
/winbindd
48 # Arguments for wsdd command
50 # Launch as non-privileged user
54 "--chroot" "/var/run/wsdd"
59 # Configure the workgroup
60 "--workgroup" "$(testparm -s --parameter-name workgroup 2>/dev/null)"
63 # Conditionally add the GREEN/BLUE interface
64 for intf
in GREEN_DEV BLUE_DEV
; do
65 if [ -n "${!intf}" ]; then
66 ARGS
+=( "--interface" "${!intf}" )
70 # Create chroot directory for wsdd
71 mkdir
-p /var
/run
/wsdd
73 PIDFILE
="/var/run/wsdd.pid"
74 boot_mesg
"Starting Web Service Discovery Host Daemon..."
75 loadproc
-b -p "${PIDFILE}" /usr
/bin
/wsdd
"${ARGS[@]}"
79 boot_mesg
"Stopping smbd..."
80 killproc
/usr
/sbin
/smbd
82 boot_mesg
"Stopping nmbd..."
83 killproc
/usr
/sbin
/nmbd
85 boot_mesg
"Stopping winbind..."
86 killproc
/usr
/sbin
/winbindd
88 PIDFILE
="/var/run/wsdd.pid"
89 boot_mesg
"Stopping Web Service Discovery Host Daemon..."
90 killproc
-p "${PIDFILE}" /usr
/bin
/wsdd
94 boot_mesg
"Reloading smbd..."
95 reloadproc
/usr
/sbin
/smbd
97 boot_mesg
"Reloading nmbd..."
98 reloadproc
/usr
/sbin
/nmbd
100 boot_mesg
"Reloading winbind..."
101 reloadproc
/usr
/sbin
/winbindd
111 statusproc
/usr
/sbin
/nmbd
112 statusproc
/usr
/sbin
/smbd
113 statusproc
/usr
/sbin
/winbindd
115 PIDFILE
="/var/run/wsdd.pid"
116 statusproc
/usr
/bin
/wsdd
120 echo "Usage: $0 {start|stop|reload|restart|status}"