Server IP : 85.214.239.14 / Your IP : 3.147.56.125 Web Server : Apache/2.4.62 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.18 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /var/lib/dpkg/info/ |
Upload File : |
#!/bin/sh # # set -e # Do debconf stuff here . /usr/share/debconf/confmodule TEMPDIR=/run/samba/upgrades NEWFILE=$TEMPDIR/smb.conf CONFIG=/etc/samba/smb.conf # ------------------------- Debconf questions start --------------------- configure_smb_conf() { local CONFIG CONFIG="$1" # Is the user configuring with debconf, or he/she prefers manual config? db_get samba-common/do_debconf || true if [ "${RET}" != "true" ]; then return 0 fi # Get workgroup name db_get samba-common/workgroup || true WORKGROUP="${RET}" # Oh my GOD, this is ugly. Why would anyone put these # characters in a workgroup name? Why, Lord, why??? WORKGROUP=`echo $WORKGROUP | \ sed -e's/\\\\/\\\\\\\\/g s#/#\\\\/#g s/&/\\\&/g s/\\\$/\\\\\\\$/g'` sed -i -e "s/^\([[:space:]]*\)\[global\]/\1\[global\]/i /^[[:space:]]*\[global\]/,/^[[:space:]]*\[/ \ s/^\([[:space:]]*\)workgroup[[:space:]]*=.*/\1workgroup = ${WORKGROUP}/i" \ "$CONFIG" # Install DHCP support db_get samba-common/dhcp if [ "$RET" = true ] && \ ! grep -q dhcp.conf "$CONFIG" then sed -i -e "s/^\([[:space:]]*\)\[global\]/\1\[global\]/i /^[[:space:]]*\[global\]/,/^[[:space:]]*\[/ { /wins server[[:space:]]*=/a \\ \\ # If we receive WINS server info from DHCP, override the options above. \\ include = /var/lib/samba/dhcp.conf }" "$CONFIG" # Ensure the file exists touch /var/lib/samba/dhcp.conf elif [ "$RET" != true ]; then sed -i -e ' /^#[[:space:]]*If we receive WINS server info from DHCP, override the options above/d /^#*[[:space:]]*include[[:space:]]*=[[:space:]]*\/var\/lib\/samba\/dhcp.conf/,/[^[:space:]]/ { /^#*[[:space:]]*include[[:space:]]*=[[:space:]]*\/var\/lib\/samba\/dhcp.conf/d /^[[:space:]]*$/d }' "$CONFIG" fi } if [ "$1" = configure ]; then if dpkg --compare-versions "$2" lt-nl 2:4.8.0+dfsg-3~; then # Move dhcp.conf out of /etc (https://bugs.debian.org/695362) if [ -f /etc/samba/dhcp.conf ]; then mv /etc/samba/dhcp.conf /var/lib/samba/dhcp.conf fi sed -i -e 's/^\([#[:space:]]*include[[:space:]]*=[[:space:]]*\)\/etc\/samba\/dhcp.conf\([[:space:]]*\)$/\1\/var\/lib\/samba\/dhcp.conf\2/ ' "$CONFIG" fi if ! dpkg-statoverride --list /var/log/samba >/dev/null; then # Set some reasonable default perms for the samba logdir # to hide sensitive information chmod 0750 /var/log/samba chown root:adm /var/log/samba fi fi if [ -e "$CONFIG" ]; then configure_smb_conf "$CONFIG" fi mkdir -p "$TEMPDIR" cp /usr/share/samba/smb.conf "$NEWFILE" configure_smb_conf "$NEWFILE" if [ -e "$CONFIG" ]; then sed -e '1,/^[;#[:space:]]*\[print\$\]/ { d } 1,/^[[:space:]]*\[/ { /^[^[]/d; /^$/d } ' "$CONFIG" >> "$NEWFILE" fi ucf --three-way --debconf-ok "$NEWFILE" "$CONFIG" if [ ! -e "$CONFIG" ]; then echo "Install/upgrade will fail. To recover, please try:" echo " sudo cp /usr/share/samba/smb.conf $CONFIG" echo " sudo dpkg --configure -a" else ucfr samba-common "$CONFIG" chmod a+r "$CONFIG" fi # ------------------------- Debconf questions end --------------------- db_stop