You are not logged in.
Pages: 1
I was just browsing through files when I saw that rc.shutdown all of the sudden got so different from a backup vim made. What update would have changed it?
new:
#!/bin/bash
#
# /etc/rc.shutdown
#
. /etc/rc.conf
. /etc/rc.d/functions
run_hook shutdown_start
# avoid staircase effect
/bin/stty onlcr
echo " "
printhl "Initiating Shutdown..."
echo " "
# avoid NIS hanging syslog-ng on shutdown by unsetting the domainname
[[ -x /bin/domainname ]] && /bin/domainname ""
[[ -x /etc/rc.local.shutdown ]] && /etc/rc.local.shutdown
kill_everything shutdown
stat_busy "Saving Random Seed"
RANDOM_SEED=/var/lib/misc/random-seed
[[ -d ${RANDOM_SEED%/*} ]] || mkdir -p ${RANDOM_SEED%/*}
: > $RANDOM_SEED
/bin/chmod 0600 $RANDOM_SEED
POOL_FILE=/proc/sys/kernel/random/poolsize
if [[ -r $POOL_FILE ]]; then
read POOL_SIZE <$POOL_FILE
else
POOL_SIZE=512
fi
/bin/dd if=/dev/urandom of=$RANDOM_SEED count=1 bs=$POOL_SIZE &> /dev/null
stat_done
stat_busy "Saving System Clock"
if [[ $TIMEZONE && -e /usr/share/zoneinfo/$TIMEZONE ]]; then
/bin/rm -f /etc/localtime
/bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
fi
HWCLOCK_PARAMS="--systohc"
case $HARDWARECLOCK in
UTC) HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc";;
localtime) HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime";;
*) HWCLOCK_PARAMS="";;
esac
[[ $HWCLOCK_PARAMS ]] && /sbin/hwclock $HWCLOCK_PARAMS
stat_done
# removing psmouse module to fix some reboot issues on newer laptops
/sbin/modprobe -r psmouse >/dev/null 2>&1
# Write to wtmp file before unmounting
/sbin/halt -w
stat_busy "Deactivating Swap"
/sbin/swapoff -a
stat_done
# stop monitoring of lvm2 groups before unmounting filesystems
if [[ $USELVM =~ yes|YES && -x /sbin/lvm && -d /sys/block ]]; then
stat_busy "Deactivating monitoring of LVM2 groups"
/sbin/vgchange --monitor n >/dev/null 2>&1
stat_done
fi
stat_busy "Unmounting Filesystems"
/bin/umount -a -r -t noramfs,notmpfs,nosysfs,noproc,nodevtmpfs -O no_netdev
stat_done
# Kill non-root encrypted partition mappings
if [[ -f /etc/crypttab && $CS ]]; then
stat_busy "Deactivating encrypted volumes:"
do_lock() {
stat_append "${1}.."
if $CS remove "$1" >/dev/null 2>&1; then
stat_append "ok "
else
stat_append "failed "
fi
}
read_crypttab do_lock
stat_done
fi
if [[ $USELVM =~ yes|YES && -x /sbin/lvm && -d /sys/block ]]; then
stat_busy "Deactivating LVM2 groups"
/sbin/vgchange --sysinit -a n >/dev/null 2>&1
stat_done
fi
stat_busy "Remounting Root Filesystem Read-only"
/bin/mount -n -o remount,ro /
stat_done
run_hook shutdown_poweroff
# Power off or reboot
printsep
if [[ $RUNLEVEL = 0 ]]; then
printhl "${C_H2}POWER OFF"
/sbin/poweroff -d -f -h -i
else
printhl "${C_H2}REBOOTING"
# if kexec is installed and a kernel is loaded, use it
[[ -x /sbin/kexec ]] && /sbin/kexec -e > /dev/null 2>&1
/sbin/reboot -d -f -i
fi
# End of file
# vim: set ts=2 sw=2 noet:
backup:
#!/bin/bash
#
# /etc/rc.shutdown
#
. /etc/rc.conf
. /etc/rc.d/functions
run_hook shutdown_start
# avoid staircase effect
/bin/stty onlcr
echo " "
printhl "Initiating Shutdown..."
echo " "
# avoid NIS hanging syslog-ng on shutdown by unsetting the domainname
if [ -x /bin/domainname ]; then
/bin/domainname ""
fi
if [ -x /etc/rc.local.shutdown ]; then
/etc/rc.local.shutdown
fi
# Find daemons NOT in the DAEMONS array. Shut these down first
if [ -d /var/run/daemons ]; then
for daemon in $(/bin/ls -1t /var/run/daemons); do
if ! in_array $daemon ${DAEMONS[@]}; then
stop_daemon $daemon
fi
done
fi
# Shutdown daemons in reverse order
let i=${#DAEMONS[@]}-1
while [ $i -ge 0 ]; do
if [ "${DAEMONS[$i]:0:1}" != '!' ]; then
ck_daemon ${DAEMONS[$i]#@} || stop_daemon ${DAEMONS[$i]#@}
fi
let i=i-1
done
# Terminate all processes
stat_busy "Sending SIGTERM To Processes"
run_hook shutdown_prekillall
/sbin/killall5 -15 &> /dev/null
/bin/sleep 2
stat_done
stat_busy "Sending SIGKILL To Processes"
/sbin/killall5 -9 &> /dev/null
/bin/sleep 1
stat_done
run_hook shutdown_postkillall
stat_busy "Saving Random Seed"
RANDOM_SEED=/var/lib/misc/random-seed
[ -d $(dirname $RANDOM_SEED) ] || mkdir -p $(dirname $RANDOM_SEED)
: > $RANDOM_SEED
/bin/chmod 0600 $RANDOM_SEED
POOL_FILE=/proc/sys/kernel/random/poolsize
if [ -r $POOL_FILE ]; then
POOL_SIZE=$(/bin/cat $POOL_FILE)
else
POOL_SIZE=512
fi
/bin/dd if=/dev/urandom of=$RANDOM_SEED count=1 bs=$POOL_SIZE &> /dev/null
stat_done
stat_busy "Saving System Clock"
if [ "$TIMEZONE" != "" -a -e "/usr/share/zoneinfo/$TIMEZONE" ]; then
/bin/rm -f /etc/localtime
/bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
fi
HWCLOCK_PARAMS="--systohc"
if [ "$HARDWARECLOCK" = "UTC" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc"
elif [ "$HARDWARECLOCK" = "localtime" ]; then
HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime"
else
HWCLOCK_PARAMS=""
fi
if [ -n "$HWCLOCK_PARAMS" ]; then
/sbin/hwclock $HWCLOCK_PARAMS
fi
stat_done
# removing psmouse module to fix some reboot issues on newer laptops
/sbin/modprobe -r psmouse >/dev/null 2>&1
# Write to wtmp file before unmounting
/sbin/halt -w
stat_busy "Deactivating Swap"
/sbin/swapoff -a
stat_done
stat_busy "Unmounting Filesystems"
/bin/umount -a -r -t noramfs,notmpfs,nosysfs,noproc,nodevtmpfs -O no_netdev
stat_done
# Kill non-root encrypted partition mappings
if [ -f /etc/crypttab -a -n "$(/bin/grep -v ^# /etc/crypttab | /bin/grep -v ^$)" ]; then
stat_busy "Deactivating encrypted volumes:"
# Arch cryptsetup packages traditionally contained the binaries
# /usr/sbin/cryptsetup
# /sbin/cryptsetup.static
# By default, initscripts used the /sbin/cryptsetup.static.
# Newer packages will only have /sbin/cryptsetup and no static binary
# This ensures maximal compatibility with the old and new layout
if [ -x /sbin/cryptsetup ]; then
CS=/sbin/cryptsetup
elif [ -x /usr/sbin/cryptsetup ]; then
CS=/usr/sbin/cryptsetup
else
CS=/sbin/cryptsetup.static
fi
do_uncrypt() {
if [ $# -ge 3 ]; then
if [ -b /dev/mapper/$1 ] ;then
stat_append "${1}.."
$CS remove $1 >/dev/null 2>&1
if [ $? -ne 0 ]; then
stat_append "failed "
else
stat_append "ok "
fi
fi
fi
}
while read line; do
eval do_uncrypt "$line"
done </etc/crypttab
stat_done
fi
if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then
if [ -x /sbin/lvm -a -d /sys/block ]; then
stat_busy "Deactivating LVM2 groups"
/sbin/lvm vgchange --ignorelockingfailure -an >/dev/null 2>&1
stat_done
fi
fi
stat_busy "Remounting Root Filesystem Read-only"
/bin/mount -n -o remount,ro /
stat_done
run_hook shutdown_poweroff
# Power off or reboot
if [ "$RUNLEVEL" = "0" ]; then
printsep
printhl "${C_H2}POWER OFF"
/sbin/poweroff -d -f -h -i
else
printsep
printhl "${C_H2}REBOOTING"
# if kexec is installed and a kernel is loaded, use it
[ -x /sbin/kexec ] && /sbin/kexec -e > /dev/null 2>&1
/sbin/reboot -d -f -i
fi
# End of file
# vim: set ts=2 sw=2 noet:
Last edited by Haptic (2011-02-25 04:57:10)
Offline
Pages: 1