--- etc/init.d/halt.orig 2010-07-20 10:12:40.398478867 -0400 +++ etc/init.d/halt 2010-07-20 11:54:44.912625497 -0400 @@ -129,94 +129,5 @@ ;; esac -[ -x /sbin/hwclock ] && action $"Syncing hardware clock to system time" /sbin/hwclock $CLOCKFLAGS - -# Try to unmount tmpfs filesystems to avoid swapping them in. Ignore failures. -tmpfs=$(awk '$2 ~ /^\/($|proc|dev)/ { next; } - $3 == "tmpfs" { print $2; }' /proc/mounts | sort -r) -[ -n "$tmpfs" ] && fstab-decode $UMOUNT $tmpfs 2>/dev/null - -# Turn off swap, then unmount file systems. -[ -f /proc/swaps ] && SWAPS=`awk '! /^Filename/ { print $1 }' /proc/swaps` -if [ -n "$SWAPS" ]; then - action $"Turning off swap: " swapoff $SWAPS - for dst in $SWAPS; do - if [[ "$dst" =~ "^/dev/mapper" ]] \ - && [ "$(dmsetup status "$dst" | cut -d ' ' -f 3)" = crypt ]; then - backdev=$(/sbin/cryptsetup status "$dst" \ - | awk '$1 == "device:" { print $2 }') - /sbin/cryptsetup remove "$dst" - fi - done -fi - -[ -x /sbin/quotaoff ] && action $"Turning off quotas: " /sbin/quotaoff -aug - -# Unmount file systems, killing processes if we have to. -# Unmount loopback stuff first -__umount_loopback_loop - -# Unmount RPC pipe file systems -__umount_loop '$3 ~ /^rpc_pipefs$/ || $3 ~ /^rpc_svc_gss_pipefs$/ {print $2}' \ - /proc/mounts \ - $"Unmounting pipe file systems: " \ - $"Unmounting pipe file systems (retry): " \ - -f - -LANG=C __umount_loop '$2 ~ /^\/$|^\/proc|^\/dev/{next} - $3 == "tmpfs" || $3 == "proc" {print $2 ; next} - /(loopfs|autofs|nfs|cifs|smbfs|ncpfs|sysfs|^none|^\/dev\/ram|^\/dev\/root$)/ {next} - {print $2}' /proc/mounts \ - $"Unmounting file systems: " \ - $"Unmounting file systems (retry): " \ - -f - -[ -f /proc/bus/usb/devices ] && $UMOUNT /proc/bus/usb - -[ -f /etc/crypttab ] && halt_crypto - -# remove the crash indicator flag -rm -f /.autofsck - -# Try all file systems other than root, essential filesystems and RAM disks, -# one last time. -awk '$2 !~ /\/(|dev|proc|selinux)$/ && $1 !~ /^\/dev\/ram/ { print $2 }' \ - /proc/mounts | sort -r | \ - while read line; do - fstab-decode $UMOUNT -f $line -done - -if [ -x /sbin/halt.local ]; then - /sbin/halt.local -fi - -# Remount read only anything that's left mounted. -# echo $"Remounting remaining filesystems readonly" -mount | awk '{ print $3 }' | while read line; do - fstab-decode mount -n -o ro,remount $line -done - -# Now halt or reboot. -echo $"$message" -if [ -f /fastboot ]; then - echo $"On the next boot fsck will be skipped." -elif [ -f /forcefsck ]; then - echo $"On the next boot fsck will be forced." -fi - -if [ "$command" = /sbin/halt -a -r /etc/ups/upsmon.conf -a -f /etc/killpower -a -f /etc/sysconfig/ups ] ; then - . /etc/sysconfig/ups - if [ "$SERVER" = "yes" -a "$MODEL" = "upsdrvctl" ] ; then - /sbin/upsdrvctl shutdown - elif [ "$SERVER" = "yes" -a "$MODEL" != "NONE" -a -n "$MODEL" -a -n "$DEVICE" ] ; then - $MODEL $OPTIONS_HALT -k $DEVICE - fi -fi - -# First, try kexec. If that fails, fall back to rebooting the old way. -[ -n "$kexec_command" ] && $kexec_command -e -x >& /dev/null - -HALTARGS="-d" -[ "$INIT_HALT" != "HALT" ] && HALTARGS="$HALTARGS -p" - -exec $command $HALTARGS +## JAIL - deleted all the unmount and actual halt stuff below here +echo "Shutdown complete."