PDA

Visualizza la versione completa : slack: cannot execute /etc/rc.d/rc.0 or rc.6


mschievano
28-03-2005, 01:25
1. il file rc.6 non esisteva (chissā dov'č finito) e al suo posto c'era rc.6.old
2. ho copiato rc.6.old su rc.6 e ci ho dato un occhio. mi sembra ok
3. rc.0 č un ln -s di rc.6 (ed č quindi lo stesso file)

=> il computer non si spegne


shutdown now -h



sending kill all...
cannot execute rc.0

:master:



rc.6

#! /bin/sh
#
# rc.6 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.
#
# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001
#
# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org>
# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com>
#

# Set the path.
PATH=/sbin:/etc:/bin:/usr/bin

# If there are SystemV init scripts for this runlevel, run them.
if [ -x /etc/rc.d/rc.sysvinit ]; then
. /etc/rc.d/rc.sysvinit
fi

# Set linefeed mode to avoid staircase effect.
stty onlcr

echo "Running shutdown script $0:"

# Find out how we were called.
case "$0" in
*0)
command="halt"
;;
*6)
command=reboot
;;
*)
echo "$0: call me as \"rc.0\" or \"rc.6\" please!"
exit 1
;;
esac

# Save the system time to the hardware clock using hwclock --systohc.
if [ -x /sbin/hwclock ]; then
# Check for a broken motherboard RTC clock (where ioports for rtc are
# unknown) to prevent hwclock causing a hang:
if ! grep -q -w rtc /proc/ioports ; then
CLOCK_OPT="--directisa"
fi
if grep -q "^UTC" /etc/hardwareclock 2> /dev/null ; then
echo "Saving system time to the hardware clock (UTC)."
/sbin/hwclock $CLOCK_OPT --utc --systohc
else
echo "Saving system time to the hardware clock (localtime)."
/sbin/hwclock $CLOCK_OPT --localtime --systohc
fi
fi

# Stop the Apache web server:
if [ -x /etc/rc.d/rc.httpd ]; then
/etc/rc.d/rc.httpd stop
fi

# Stop the MySQL database:
if [ -r /var/run/mysql/mysql.pid ]; then
. /etc/rc.d/rc.mysqld stop
fi

# Stop the Samba server:
if [ -x /etc/rc.d/rc.samba ]; then
. /etc/rc.d/rc.samba stop
fi

# Shut down the NFS server:
if [ -x /etc/rc.d/rc.nfsd ]; then
/etc/rc.d/rc.nfsd stop
fi

# If it looks like we use an initrd, prepare for one at next boot:
if grep -q -w initrd /var/log/messages ; then
mkdir -p /initrd
fi

# Unmount any NFS or SMB filesystems:
echo "Unmounting remote filesystems."
umount -a -r -t nfs,smbfs

# Try to kill dhcpcd so the DHCP leases can be returned:
killall -15 dhcpcd 1> /dev/null 2> /dev/null

# Try to shut down pppd:
PS="$(ps ax)"
if echo "$PS" | grep -q -w pppd ; then
if [ -x /usr/sbin/ppp-off ]; then
/usr/sbin/ppp-off
fi
fi

# Shut down PCMCIA devices:
#if [ -x /etc/rc.d/rc.pcmcia ] ; then
#. /etc/rc.d/rc.pcmcia stop
# The cards might need a little extra time here to initialize.
# sleep 5
f#i

# Turn off process accounting:
if [ -x /sbin/accton -a -r /var/log/pacct ]; then
echo "Turning off process accounting."
/sbin/accton
fi

# Kill all processes.
# INIT is supposed to handle this entirely now, but this didn't always
# work correctly without this second pass at killing off the processes.
# Since INIT already notified the user that processes were being killed,
# we'll avoid echoing this info this time around.
if [ "$1" != "fast" ]; then # shutdown did not already kill all processes
killall5 -15
sleep 5
killall5 -9
fi

# Try to turn off quota.
if grep -q quota /etc/fstab ; then
if [ -x /sbin/quotaoff ]; then
echo "Turning off filesystem quotas."
/sbin/quotaoff -a
fi
fi

# Carry a random seed between reboots.
echo "Saving random seed from /dev/urandom in /etc/random-seed."
# Use the pool size from /proc, or 512 bytes:
if [ -r /proc/sys/kernel/random/poolsize ]; then
dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(cat /proc/sys/kernel/random/poolsize) 2> /dev/null
else
dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
fi
chmod 600 /etc/random-seed

# Before unmounting file systems write a reboot or halt record to wtmp.
$command -w

# Clear /var/lock/subsys.
if [ -d /var/lock/subsys ]; then
rm -f /var/lock/subsys/*
fi

# A function to deactivate LVM volume groups:
deactivate_lvm() {
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
echo "Deactivating LVM volume groups:"
if cat /proc/sys/kernel/osrelease | cut -f 1,2 -d . | grep -q -w 2.4 2> /dev/null ; then
/sbin/vgchange -an
else
/sbin/vgchange -an --ignorelockingfailure
fi
sleep 10
fi
}

# Turn off swap, then unmount local file systems.
echo "Turning off swap."
swapoff -a
sync

echo "Unmounting local file systems."
# Don't remount UMSDOS root volumes:
if [ ! "$(mount | head -n 1 | cut -d ' ' -f 5)" = "umsdos" ]; then
umount -a -t nonfs,noproc,nosysfs
deactivate_lvm
umount -a -r -t nonfs,noproc,nosysfs
echo "Remounting root filesystem read-only."
mount -n -o remount,ro /
else
umount -a -t nonfs,noproc,nosysfs,noumsdos,nosmbfs
deactivate_lvm
umount -a -r -t nonfs,noproc,nosysfs,noumsdos,nosmbfs
fi

# This never hurts:
sync

# sleep 1 fixes problems with some hard drives that don't
# otherwise finish syncing before reboot or poweroff
sleep 1

# This is to ensure all processes have completed on SMP machines:
wait

# This block was from the original Slackware distribution:
# See if this is a powerfail situation.
#if [ -x /sbin/genpowerd ]; then
# # See if this is a powerfail situation:
# if egrep -q "FAIL|SCRAM" /etc/upsstatus 2> /dev/null ; then
# # Signal UPS to shut off the inverter:
# /sbin/genpowerd -k
# if [ ! $? = 0 ]; then
# echo
# echo "There was an error signaling the UPS."
# echo "Perhaps you need to edit /etc/genpowerd.conf to configure"
# echo "the serial line and UPS type."
# # Wasting 15 seconds of precious power:
# sleep 15
# fi
# fi
#fi
# This block was added in by the apcupsd installation process. This
# will cause the UPS to kill the power supply after a configurable number
# of seconds (see the apcupsd.conf file). This is important for situations
# where the mains power comes back before the UPS batteries are completely
# dead.
if [ -f /etc/powerfail ]; then
echo
echo "apcupsd will now power off the UPS"
echo
/etc/apccontrol killpower
echo
echo "Please ensure that the UPS has powered off before rebooting."
echo "Otherwise, the UPS may cut the power during the reboot."
echo
halt -f -p # power down the system if the hardware is capable
fi

# Now halt (poweroff with APM or ACPI enabled kernels) or reboot.
if [ "$command" = "reboot" ]; then
echo "Rebooting."
reboot
else
poweroff
fi

Caleb
28-03-2005, 01:35
permessi di esecuzione controllati?

mschievano
28-03-2005, 13:00
io sono root, e prima andava...
comunque il problema č proprio quello. lo script no era eseguibile.

:ciauz:

Loading