-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Le Lundi 3 Juin 2002 10:00, RAGUET CHRISTIAN a �crit : > Je ne veux pas passer pour un ane (avec un bel accent) > mais pourquoi ne pas utiliser shutdown -h > peut etre un pb de runlevel ?
Parce que je pense (99 % de chance que je ne me trompe) que shutdown appel au terme du compte a rebours, init pour l'estinction. init 0 pour l'arr�t, 6 pour le reboot, qui lui m�me s'appuie sur les runlevel! > > -----Message d'origine----- > De: Gosse Michel [mailto:[EMAIL PROTECTED]] > Date: dimanche 2 juin 2002 18:19 > �: [EMAIL PROTECTED] > Objet: [Confirme] reboot forever > > > Apr�s une mise � jour de la 8.1 vers la 8.2, mon ordinateur reboote d�s > que j'en demande l'arr�t. C'est assez genant... > Halt dans une console fournit le m�me r�sultat. > Voici le script halt tel qu'il s'ex�cute. Je ne sais pas quoi modifier > pour l'emp�cher de rebooter � la fin de la proc�dure d'extinction. > merci d'avance > > #!/bin/bash > # > # rc.halt This file is executed by init when it goes into runlevel > # 0 (halt) or runlevel 6 (reboot). It kills all processes, > # unmounts file systems and then either halts or reboots. > # > # Author: Miquel van Smoorenburg, <[EMAIL PROTECTED]> > # Modified for RHS Linux by Damien Neil > # > > # Set the path. > PATH=/sbin:/bin:/usr/bin:/usr/sbin > > export NOLOCALE=1 > . /etc/init.d/functions > > initquiet > quiet on > > runcmd() { > gprintf "%s " $1 > shift > if [ "$BOOTUP" = "color" ]; then > $* && echo_success || echo_failure > else > $* > fi > echo > } > > # If we are in Aurora, let it show a nice msg telling the user that > # the system is halted... > if [ -x /etc/aurora/Monitor ] && /etc/aurora/Monitor query; then > . /lib/aurora/functions > # See how we were called. > case "$0" in > *halt) > chvt 1 > ;; > *reboot) > echo "Please stand by while rebooting the system..." > # Just make sure Aurora have time enough to display it before we > kill > # Aurora! > sleep 1 > ;; > esac > # Reset output from Aurora... > exec 0<&3 > exec 1>&4 > exec 2>&5 > fi > > halt_get_remaining() { > awk '!/(^#|proc|loopfs|devfs|autofs|^none|^\/dev\/root| \/ )/ {print > > $2}' /proc/mounts > awk '{ if ($3 ~ /^proc$/ && $2 !~ /^\/proc/) print $2; }' > /proc/mounts > } > > # See how we were called. > case "$0" in > *halt) > message=`gprintf "Halting system..."` > command="halt" > ;; > *reboot) > message=`gprintf "Please stand by while rebooting the system..."` > command="reboot" > ;; > *) > gprintf "%s: call me as 'rc.halt' or 'rc.reboot' please!\n" $0 > exit 1 > ;; > esac > if [ -n "$1" ]; then > case "$1" in > *start) > ;; > *) > gprintf "Usage: (halt|reboot) {start}\n" > exit 1 > ;; > esac > fi > > # Recreate the /initrd if needed > if [ ! -d /initrd ]; then > runcmd "Creating initrd directory" mkdir /initrd > fi > if [ -d /initrd -a ! -f /initrd/README.WARNING ]; then > cat > /initrd/README.WARNING <<EOF > (mkinitrd) Don't remove this directory, it's needed at boot time, > in the initrd, to perform the pivot_root. > EOF > fi > > # Kill all processes. > [ "${BASH+bash}" = bash ] && enable kill > > runcmd "Sending all processes the TERM signal..." /sbin/killall5 -15 > sleep 5 > runcmd "Sending all processes the KILL signal..." /sbin/killall5 -9 > > # Write to wtmp file before unmounting /var > halt -w > > # Sync the system clock. > ARC=0 > SRM=0 > UTC=0 > > if [ -f /etc/sysconfig/clock ]; then > . /etc/sysconfig/clock > > # convert old style clock config to new values > if [ "${CLOCKMODE}" = "GMT" ]; then > UTC=true > elif [ "${CLOCKMODE}" = "ARC" ]; then > ARC=true > fi > fi > > CLOCKDEF="" > CLOCKFLAGS="$CLOCKFLAGS --systohc" > > case "$UTC" in > yes|true) > CLOCKFLAGS="$CLOCKFLAGS -u"; > CLOCKDEF="$CLOCKDEF (utc)"; > ;; > no|false) > CLOCKFLAGS="$CLOCKFLAGS --localtime"; > CLOCKDEF="$CLOCKDEF (localtime)"; > ;; > esac > > case "$ARC" in > yes|true) > CLOCKFLAGS="$CLOCKFLAGS -A"; > CLOCKDEF="$CLOCKDEF (arc)"; > ;; > esac > case "$SRM" in > yes|true) > CLOCKFLAGS="$CLOCKFLAGS -S"; > CLOCKDEF="$CLOCKDEF (srm)"; > ;; > esac > > runcmd "Syncing hardware clock to system time" /sbin/hwclock $CLOCKFLAGS > > # Turn off swap, then unmount file systems. > SWAPS=`awk '! /^Filename/ { print $1 }' /proc/swaps` > [ -n "$SWAPS" ] && runcmd "Turning off swap: " swapoff $SWAPS > > [ -x /sbin/accton ] && runcmd "Turning off accounting: " /sbin/accton > > [ -x /sbin/quotaoff ] && runcmd "Turning off quotas: " /sbin/quotaoff > -aug > > # first remove entry /initrd/loopfs as it can't be unmounted :( > mtab=$(fgrep -v "/initrd/loopfs[^/]" /etc/mtab) > (IFS= ; echo $mtab > /etc/mtab) > > # Unmount file systems, killing processes if we have to. > # Unmount loopback stuff first > remaining=`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" {print $2}' > /proc/mounts` > devremaining=`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" {print > $1}' /proc/mounts` > [ -n "$remaining" ] && { > sig= > retry=3 > while [ -n "$remaining" -a "$retry" -gt 0 ] > do > if [ "$retry" -lt 3 ]; then > runcmd "Unmounting loopback filesystems (retry):" > umount $remaining > else > runcmd "Unmounting loopback filesystems: " umount > $remaining > fi > for dev in $devremaining ; do > losetup $dev > /dev/null 2>&1 && \ > runcmd "Detaching loopback device %s: " $dev > losetup -d $device > done > remaining=`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" > {print $2}' > /proc/mounts` > devremaining=`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" > {print > $1}' /proc/mounts` > [ -z "$remaining" ] && break > /sbin/fuser -k -m $sig $remaining >/dev/null > sleep 5 > retry=$(($retry -1)) > sig=-9 > done > } > > sig= > retry=3 > remaining=`halt_get_remaining | sort -r` > > while [ -n "$remaining" -a "$retry" -gt 0 ] > do > if [ "$retry" -lt 3 ]; then > LANG=C runcmd "Unmounting file systems (retry): " umount -f > > $remaining > else > LANG=C runcmd "Unmounting file systems: " umount -f > $remaining > fi > sleep 2 > remaining=`halt_get_remaining | sort -r` > [ -z "$remaining" ] && break > /sbin/fuser -k -m $sig $remaining >/dev/null > sleep 5 > retry=$(($retry-1)) > sig=-9 > done > > if [ -x /sbin/vgchange -a -f /etc/lvmtab ]; then > runcmd "Shutting down LVM:" /sbin/vgchange -a n > fi > > [ -f /proc/bus/usb/devices ] && umount /proc/bus/usb > > # remove the crash indicator flag > rm -f /.autofsck > > # Try them all, one last time. > umount -a -f -t nodevfs,noproc > > # Remount read only anything that's left mounted. > #gprintf "Remounting remaining filesystems (if any) readonly\n" > mount | awk '/( \/ |^\/dev\/root)/ { print $3 }' | while read line; do > mount -n -o ro,remount $line > done > > runcmd "Unmounting proc file system: " umount /proc > > > # See if this is a powerfail situation. > if [ -f /etc/apcupsd/powerfail ]; then > quiet off > gprintf "APCUPSD will now power off the UPS!\n" > echo > /etc/apcupsd/apccontrol killpower > echo > gprintf "Please ensure that the UPS has powered off before > rebooting\n" > gprintf "Otherwise, the UPS may cut the power during the reboot!!!\n" > echo > sleep 120 > exit 1 > fi > > quiet off > # Now halt or reboot. > echo "$message" > if [ -f /fastboot ]; then > gprintf "On the next boot fsck will be skipped.\n" > elif [ -f /forcefsck ]; then > gprintf "On the next boot fsck will be forced.\n" > fi > > HALTARGS="-i -d -p" > if [ -f /halt ]; then > HALTARGS="-i -d" > fi > > eval $command $HALTARGS - -- Linux pour Mac !? Enfin le moyen de transformer une pomme en v�ritable ordinateur. - JL. Olivier Thauvin - http://nanardon.homelinux.org/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjz7Mw4ACgkQk29cDOWzfVAaygCg2C3VU6QBNsXY3Dks1i5zq9DI QCwAoJ5SM+KKGNlCwFbPL6c4vak8RVgr =HsPb -----END PGP SIGNATURE-----
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"
