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

-- 
****************************
Michel Gosse 
[EMAIL PROTECTED]
[EMAIL PROTECTED]
****************************

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";

Répondre à