how to run script after suspend to disk
Paul Johnson
pauljohn32 at gmail.com
Sun Apr 30 04:06:02 UTC 2006
I use the acpi support under /etc/acpi/events and /etc/acpi/actions
for sleep. The event represents a lid closure or FN-Suspend and
points at an action file. The script in the action directory tells the
system what to do.
The sleep.sh file I now use is here.If you want something to happen
after awaking from suspend mode, it should be easy to see where to put
it in.
I do not have any luck with the "hibernate" rpm or the
"gnome-power-manager" rpms, but the basic acpi method does work here.
------------------/etc/acpi/events/sleep----------------------------
# /etc/acpid/events/sleep
event=button[/]sleep
action=/etc/acpi/actions/sleep.sh %e
-----------------------------------------------------------------------------------------
------------------/etc/acpi/actions/sleep.sh
#!/bin/sh
#
# ACPI suspend to ram script
#
# http://www.kananov.com/notes/s3
#Modules to unload before suspend. This are known troublemakers!
MODULES="tg3 uhci_hcd ehci_hcd hci_usb ipw2200"
###if you use linuxant modem drivers you also need this
##MODULES="$MODULES hsfusbcd2 hsfmc97ali hsfmc97via hsfmc97ich
hsfpcibasic2 hsfserial hsfengine hsfosspec hsfsoar"
set -x
##########################################################################
# HELPER FUNCTIONS
##########################################################################
# function to remove modules
rmmodules () {
for mname in $MODULES ; do
if grep $mname /proc/modules ; then
rmmodule $mname
fi
done
}
# function to remove module and all dependant modeles via recursive calls
rmmodule() {
# module name
m=$1
# get list of dependant modules
dep_m=`lsmod | grep "^$m" | awk ' { print $4}'`
if [ "x$dep_m" != "x" ] ; then
for m1 in $dep_m ; do
rmmodule $m1
done
fi
/sbin/rmmod $mname
echo /sbin/modprobe $mname >> /var/run/acpi-resume-post
}
##########################################################################
# MAIN PART
##########################################################################
# source sleep config
#. /etc/sysconfig/acpi-sleep
# do not got to suspend mode if some command fails!
set -e
# sync software time to hw
hwclock --systohc
# remove problematic modules
rmmodules
# sync write cache
sync
# sleep
echo mem > /sys/power/state
# reinsert modules
if [ -f /var/run/acpi-resume-post ]; then
sh /var/run/acpi-resume-post &> /dev/null
rm -f /var/run/acpi-resume-post
fi
#
hwclock --hctosys
# restart HAL
service haldaemon restart
On 4/20/06, wwp <subscript at free.fr> wrote:
> Hello Petr,
>
>
> On Wed, 19 Apr 2006 00:52:22 +0200 Petr Fischer <petr.fischer at praguesoft.cz> wrote:
>
> > Mikkel L. Ellertson píše v Út 18. 04. 2006 v 09:22 -0500:
> > > Petr Fischer wrote:
> > > > Hi,
> > > >
> > > > how to run my own script when starting from "hibernate" mode? (I need to
> > > > restart squid and correct centrino-voltages and fan speeds).
> > > >
> > > > rc.local is called on "regular starting" only, right?
> > > >
> > > > Thanks, pf
> > > >
> > > You may want to take a look at /etc/sysconfig/suspend and the
> > > /etc/sysconfig/suspend-scripts directory tree...
> > >
> >
> > No similar files on my system :(
>
> Neither here.
>
> BTW, is pm-hibernate the right command to suspend-to-disk? Why is there no
> hibernate entry in the GNOME menus?
>
>
> Regards,
>
> --
> wwp
>
>
> --
> fedora-list mailing list
> fedora-list at redhat.com
> To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list
>
>
>
--
Paul E. Johnson
Professor, Political Science
1541 Lilac Lane, Room 504
University of Kansas
More information about the fedora-list
mailing list