OoO Peu avant le début de l'après-midi du mardi 02 avril 2002, vers 13:56, "Federico 'Derfel' Stella" <derfel@alessandria.linux.it> disait: > --- /var/lib/dpkg/info/ssh.postinst Sun Mar 24 15:04:21 2002 [...] Since there is no answer, here is another patch :
--- /etc/init.d/ssh 2003-11-15 17:21:31.000000000 -0800 +++ ssh 2003-12-27 10:52:28.432934272 -0800 @@ -11,10 +11,15 @@ fi check_for_no_start() { - # forget it if we're trying to start, and /etc/ssh/sshd_not_to_be_run exists - if [ -e /etc/ssh/sshd_not_to_be_run ]; then - echo "OpenBSD Secure Shell server not in use (/etc/ssh/sshd_not_to_be_run)" - exit 0 + invocation=$(basename $0) + # if the script is invoked as Sxx* or Kxx*, we should respect the presence + # of /etc/ssh/sshd_not_to_be_run. Otherwise, the user is trying to execute + # it by hand and sshd should be run. + if echo $invocation | grep -E -q '^(S|K)[0-9][0-9]'; then + if [ -e /etc/ssh/sshd_not_to_be_run ]; then + echo "OpenBSD Secure Shell server not in use (/etc/ssh/sshd_not_to_be_run)" + exit 0 + fi fi }
--- /var/lib/dpkg/info/ssh.postinst 2003-11-15 17:21:55.000000000 -0800 +++ ssh.postinst 2003-12-27 10:59:08.380133056 -0800 @@ -300,7 +300,9 @@ setup_init() { if [ -e /etc/init.d/ssh ]; then update-rc.d ssh defaults >/dev/null - /etc/init.d/ssh restart + if [ ! -e /etc/ssh/sshd_not_to_be_run ]; then + /etc/init.d/ssh restart + fi fi }
Another approach is to use force-start to force the server to start :
--- /etc/init.d/ssh 2003-11-15 17:21:31.000000000 -0800 +++ ssh 2003-12-27 11:13:24.517980320 -0800 @@ -12,8 +12,12 @@ check_for_no_start() { # forget it if we're trying to start, and /etc/ssh/sshd_not_to_be_run exists - if [ -e /etc/ssh/sshd_not_to_be_run ]; then + if [ -z "$NOCHECK" -a -e /etc/ssh/sshd_not_to_be_run ]; then + if [ $1 == "restart" ]; then + echo + fi echo "OpenBSD Secure Shell server not in use (/etc/ssh/sshd_not_to_be_run)" + echo "Use \"force-$1\" instead of \"$1\" if you really want to use it" exit 0 fi } @@ -36,7 +40,7 @@ case "$1" in start) - check_for_no_start + check_for_no_start $1 check_privsep_dir echo -n "Starting OpenBSD Secure Shell server: sshd" start-stop-daemon --start --quiet --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS @@ -48,8 +52,8 @@ echo "." ;; - reload|force-reload) - check_for_no_start + reload) + check_for_no_start $1 check_config echo -n "Reloading OpenBSD Secure Shell server's configuration" start-stop-daemon --stop --signal 1 --quiet --oknodo --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd @@ -60,12 +64,17 @@ check_config echo -n "Restarting OpenBSD Secure Shell server: sshd" start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile /var/run/sshd.pid - check_for_no_start + check_for_no_start $1 check_privsep_dir start-stop-daemon --start --quiet --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd -- $SSHD_OPTS echo "." ;; + force-*) + export NOCHECK=1 + $0 $(echo "$1" | sed 's/^force-//') + ;; + *) echo "Usage: /etc/init.d/ssh {start|stop|reload|force-reload|restart}" exit 1
-- IT DOES NOT SUCK TO BE YOU IT DOES NOT SUCK TO BE YOU IT DOES NOT SUCK TO BE YOU -+- Bart Simpson on chalkboard in episode AABF13
Attachment:
pgpWsA_VP4hej.pgp
Description: PGP signature