On Thu, Oct 30, 2008 at 12:33 AM, Walter Dnes [EMAIL PROTECTED] wrote:
On Wed, Oct 29, 2008 at 12:27:39PM +0100, Pint?r Tibor wrote
[d530][root][~] emerge -pv s2disk
These are the packages that would be merged, in order:
Calculating dependencies |
emerge: there are no ebuilds to satisfy s2disk.
Now what?
emerge -pv suspend
First, I had to keyword =sys-power/suspend-0.8 ~x86 in
package.keywords. I set up suspend.conf like so...
snapshot device = /dev/snapshot
resume device = /dev/sda6
#image size = 35000
#suspend loglevel = 2
compute checksum = y
#compress = y
#encrypt = y
#early writeout = y
#splash = y
Here is my disk layout
[d530][root][~] fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xd000
Device Boot Start End Blocks Id System
/dev/sda1 1 60801 4883840015 Extended
/dev/sda5 1 62 497952 83 Linux
/dev/sda6 63 549 3911796 82 Linux swap / Solaris
/dev/sda7 550 60801 483974158+ 83 Linux
No, it's not LVM. / is half-a-gig, followed by swap, followed by the
rest of the drive. I use multiple bindmounts to make things look
normal. When I tried sync, followed by hibernate it shut down, but
when I powered back up with the power button, here's what happened...
- on the reboot, it complained about the superblock last access being
in the future (the half-gig partition is ext2)
- it fixed the access date
- complained that the hard drive was dirty, i.e. not properly shut
down
- rebooted
- played back a whole bunch of disk transactions on /dev/sda7
(reiserfs). Did i mention I ran sync before hibernate?
- it did the rest of the ordinary boot process.
- it did *NOT* restore anything from the previous session. Do I have to
explicitly set something to tell it to restore a previous session?
Gentoo-wiki is stll down.
--
Walter Dnes [EMAIL PROTECTED]
I've not touched hibernation, but from what I've gathered in 5 mins on
google, I've a few probable guesses. Firstly, the image of the system
set aside by s2disk leaves the system's partitions in a 'dirty' state
simply because they're technically still in use. Your kernel needs to
be told to look at /dev/sda6 for resuming, appending resume=/dev/sda6
(might be resume=swap:/dev/sda6, not sure) in your grub/lilo config
should handle that part, though I've a vague recollection of something
about a default resume partition last time I ran through menuconfig
too, so you may even be able to avoid that. When it boots, rather than
running through init and the usual, it needs access to the 'resume'
executable, which has to be usable *before* the system's current
mounts are reestablished... which means initrd or initramfs. If you
already have both of those things (kernel knowing what the resume
partition is and having access to 'resume' where it wants it) as they
should be... I'm at a loss.
If you go to:
http://www.google.com/search?q=HOWTO+Userspace+Software+Suspend+(uswsusp)+-+Gentoo+Linux+Wiki
and then hit 'cached' under the first hit, it'll take you to google's
last copy of the page.
Also, as a side note, from http://www.freewebs.com/gkiagia/hibernate.html --
WARNING: Never boot the suspended system with another kernel than the
one that you used to suspend and never try to mount suspended
partitions from another linux system, such as a live cd, otherwise you
will probably have data loss.
--
Poison [BLX]
Joshua M. Murphy