[Pkg-sysvinit-devel] Bug#374543: sysvinit: ^C and ^Z don't work in emergency mode

Samuel Thibault samuel.thibault at ens-lyon.org
Mon Jun 19 20:45:00 UTC 2006


Package: sysvinit
Version: 2.86.ds1-14.1youpi
Severity: normal
Tags: patch upstream

Hi,

When booting in emergency mode (with -b or emergency option), tty
controlling sequences like ^C or ^Z don't work. The incurred unfortunate
effect is that one can't interrupt the programs one runs (like ping,
e2fsck, badblocks, ...).

This is because init doesn't initialize a session for the emergency
sulogin (like it does for single-user logins). The attached patch
corrects that (and makes sense since we indeed want to wait for the
emergency shell to end).

Please apply.

Regards,
Samuel

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (900, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17
Locale: LANG=fr_FR at euro, LC_CTYPE=fr_FR at euro (charmap=ISO-8859-15)

Versions of packages sysvinit depends on:
ii  file-rc                    0.8.7         Alternative boot mechanism using a
ii  initscripts                2.86.ds1-14.1 Scripts for initializing and shutt
ii  libc6                      2.3.6-13      GNU C Library: Shared libraries
ii  libselinux1                1.30-1        SELinux shared libraries
ii  libsepol1                  1.12-1        Security Enhanced Linux policy lib

sysvinit recommends no packages.

-- no debconf information
-------------- next part --------------
Seulement dans sysvinit-2.86.ds1: build
diff -ur sysvinit-2.86.ds1/debian/changelog sysvinit-2.86.ds1youpi/debian/changelog
--- sysvinit-2.86.ds1/debian/changelog	2006-06-19 22:29:37.000000000 +0200
+++ sysvinit-2.86.ds1youpi/debian/changelog	2006-06-19 22:22:16.000000000 +0200
@@ -1,3 +1,9 @@
+sysvinit (2.86.ds1-14.1youpi) unstable; urgency=low
+
+  * Fix emergency mode's tty.
+
+ -- Samuel Thibault <samuel.thibault at ens-lyon.org>  Sat,  6 May 2006 21:12:39 +0200
+
 sysvinit (2.86.ds1-14.1) unstable; urgency=low
 
   * Non-maintainer upload.
diff -ur sysvinit-2.86.ds1/src/init.c sysvinit-2.86.ds1youpi/src/init.c
--- sysvinit-2.86.ds1/src/init.c	2004-07-30 14:16:20.000000000 +0200
+++ sysvinit-2.86.ds1youpi/src/init.c	2006-06-19 22:30:48.000000000 +0200
@@ -89,7 +89,7 @@
 CHILD *newFamily = NULL;	/* The list after inittab re-read */
 
 CHILD ch_emerg = {		/* Emergency shell */
-	0, 0, 0, 0, 0,
+	WAITING, 0, 0, 0, 0,
 	"~~",
 	"S",
 	3,


More information about the Pkg-sysvinit-devel mailing list