Problem with GRUB/WIn7/SRS4 Recovery partition Samsung N110 netbook
Linux - Laptop and NetbookHaving a problem installing or configuring Linux on your laptop? Need help running Linux on your netbook? This forum is for you. This forum is for any topics relating to Linux and either traditional laptops or netbooks (such as the Asus EEE PC, Everex CloudBook or MSI Wind).
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Problem with GRUB/WIn7/SRS4 Recovery partition Samsung N110 netbook
I have a Samsung N110 which came with Windows 7 Starter and which I upgraded to Windows 7 Home Premium using the 'anytime upgrade' path. On first switching the netbook on, I partitioned the HDD as 40 GB C: 'Windows' and 200 GB D: 'Data'. There is also a Samsung Recovery Solution 4 (SRS4) hidden partition of ~10 GB ('RECOVERY') and a further 104 MB hidden partition. (This allows you to 'hit' F4 at boot and go straight into the Windows Recovery process and restore a backup image of a functioning system.)
I recently installed Kubuntu 10.04.25 LTS. The installation process shrunk my D: drive (the fourth/last primary partition) by 20 GB and turned it into an extended partition, creating two new partitions - 'Linux' and 'swap'. The partitioner element of the install process gave me three options as part of doing this - manually create partitions, format the entire drive and create partitions, or create partitions automatically alongside existing O/S (which I selected).
The install proceeded flawlessly, Kubuntu is awesome, and the GRUB boot-loader gave the following boot options:
- Linux
- Linux (Recovery)
- Memtest
- Memtest (I forget the version)
- Windows Vista boot-loader on /dev/sda1
- Windows 7 boot-loader on /dev/sda3
I could boot perfectly into Linux and Windows 7 with ease, and did so many times.
Now, the PROBLEM! I was interested by the Windows Vista option at boot, so I selected it - this then ran the SRS4 recovery program, which I exited properly and had the machine restart. So, fine, happy with all that (as this is the same as pressing F4 at boot - which also worked).
HOWEVER, on restart, the netbook would enter an infinite loop of
- Power on, then
- Splash screen (showing F2 for BIOS, F4 for recovery), then
- BIOS password entry, then
- Blank screen and reboot.
F2 allows me into the BIOS, but F4 does nothing.
So somehow, running the SRS4 from the GRUB boot-loader and then exiting, managed to mess up GRUB...?
I then spent hours (!) trying to recover my system using the USB stick 'live CD' I used for the installation. I could run the 'live' system, then mount all my partitions on the netbook, but I just could not get GRUB to return to its original state again. I'm not saying GRUB wouldn't do it, my grasp of GRUB is just not sufficient to make it do it...
Ultimately, I ended up reinstalling Kubuntu so I could get GRUB to function properly. Now this time, I could not use the 'install alongside other O/S' option or else the installer would ignore the existing Linux partitions and create more, further shrinking my D: drive! So, I used the manually mount partitions option.
I now have GRUB working fine, but it refuses to see the Windows 7 partition and I only have the Vista boot-loader option. (Which selecting then kills my system again!)
From within my working Kubuntu, here are some outputs:
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1403 11268573+ 27 Unknown
/dev/sda2 1404 1416 104422+ 7 HPFS/NTFS
/dev/sda3 1417 6638 41945715 7 HPFS/NTFS
/dev/sda4 6639 30402 190878634+ f W95 Ext'd (LBA)
/dev/sda5 6639 27978 171408382+ 7 HPFS/NTFS
/dev/sda6 27978 30295 18611200 83 Linux
/dev/sda7 30295 30402 857088 82 Linux swap / Solaris
*****
/dev/sda1 is the RECOVERY partition
/dev/sda3 is the C: WIn7 partition
/dev/sda4 is the extended partitoin, on which sit
/dev/sda5 D: Data
/dev/sda6 Linux
/dev/sda7 swap
So, please, if anyone can help me get access back to Windows 7 and my dual boot arrangement that would be fantastic. Also, if someone could give me a hint as to why this all happened in the first place, that would be great, too!
(I have cross-posted this also in Sammy Netbook Forums...)
Thanks in advance for ANY help with this - I spent 7hrs of unsuccessful self-help yesterday!
Generally the recovery systems I've used try to set the machine back to the way it was - partition-wise.
Hard to know in your case as you've subsequently re-run the kubuntu install. What does the /boot/grub/grub.cfg look like (post it here).
I'm guessing there's something about "set root='(hd0,1)'", where this should be something like set root='(hd0,3)'?? The '*' has me a little confused in the fdisk output...
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
set saved_entry=${prev_saved_entry}
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z ${boot_once} ]; then
saved_entry=${chosen}
save_env saved_entry
fi
}
function recordfail {
set recordfail=1
if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set f95a2e38-855d-4efc-a025-ab5d9dfb0b60
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
insmod gfxterm
insmod vbe
if terminal_output gfxterm ; then true ; else
# For backward compatibility with versions of terminal.mod that don't
# understand terminal_output
terminal gfxterm
fi
fi
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set f95a2e38-855d-4efc-a025-ab5d9dfb0b60
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ ${recordfail} = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-28-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set f95a2e38-855d-4efc-a025-ab5d9dfb0b60
linux /boot/vmlinuz-2.6.32-28-generic root=UUID=f95a2e38-855d-4efc-a025-ab5d9dfb0b60 ro splash quiet splash
initrd /boot/initrd.img-2.6.32-28-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-28-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set f95a2e38-855d-4efc-a025-ab5d9dfb0b60
echo 'Loading Linux 2.6.32-28-generic ...'
linux /boot/vmlinuz-2.6.32-28-generic root=UUID=f95a2e38-855d-4efc-a025-ab5d9dfb0b60 ro single splash
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-28-generic
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set f95a2e38-855d-4efc-a025-ab5d9dfb0b60
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set f95a2e38-855d-4efc-a025-ab5d9dfb0b60
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows Vista (loader) (on /dev/sda1)" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 26de284dde281797
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
OK, I'm just new to Ubunutu (I did use Slackware many years ago).
/dev/sda2 fails to mount...
$ sudo mount -t ntfs /dev/sda2 /mnt/tmp
Unexpected clusters per mft record (-1).
Failed to mount 'dev/sda2': Invalid argument
The device '/dev/sda2' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
$
Use the disk manager and mount them as there's no command it only asks for password.
Or you can open Computer and just click on each disk to mount them. They'll appear on desktop when they're mounted.
I don't know what you mean by 'disk manager' (in the context of Kubuntu). Which application should I be running.
Windows C:, Data D: and the RECOVERY partitions are all set to mount in the root directory (as per the Kubuntu installation program - it asked for mount points during install. I did not set the 'mystery' partition /dev/sda2 to mount.
In fact, I cannot see /dev/sda2 anywhere using any application.
I'm sorry for being dim here - very dim. I'm perfectly savvy with Windows and Slackware, and with this my first foray into netbook/linux and Ubuntu, I've never come across this problem before.
update-grub runs os-prober - no need (or benefit) from running it separately. The fact that it doesn't find the the sda2 system is a worry - as is the messages in post #10. Try "sudo parted -l /dev/sda" - it tries to determine the f/s rather than just listing the partition table.
Last edited by syg00; 02-25-2011 at 11:41 PM.
Reason: added sudo
Thanks for all your input - here's how I fixed this problem.
1. Indications were that /dev/sda2 was corrupt
2. I used my Win7 recovery disk (my own, created from my system, not a downloaded one) to repair the system (and at least get Win7 working again). Win7 was detected, but the first repair failed and left things unchanged. A second attempt, using the DOS/CMD.EXE console faield as 'bootrec /fixmbr' worked, but 'bootrec /fixboot' returned a corruption error. A 3rd attempt, again using the 'auto' repair route worked and got me Win7 back.
3. Back in Windows 7, I saw that the troublesome 104MB (/dev/sda2) partition was now mountes as RAW at E:. I then removed its disk label to hide it from Windows using one of the All Programs > Administration, tools (I forget the name). I then rebooted, using the Kubuntu Live USB.
4. I reinstalled Grub2 from the Kubuntu Live/Installation USB as per:http://ubuntuguide.net/how-to-restor...ws-xpvistawin7, specifically, from an xterm:
sudo -i
mount /dev/sda6 /mnt (my Linux partition, which has on it the /boot location)
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
chroot /mnt update-grub (I saw that this found Win7 on /dev/sda1 and NOT Vista boot-loader)
grub-install --root-directory=/mnt/ /dev/sda
exit (I forgot to unmount the 3 mounts above)
Rebooted and voila, a GRUB menu, with Linux, Memtest and Windows 7 available.
Actually, it's better than 'back to normal' as the original Kubuntu installation recognised the Samsung Recovery Solution 4 RECOVERY partition as an operating system and presented that in the GRUB2 boot menu. So, all solved... apart from why selecting the Windows Vista boot-loader option killed the system! (Now, that option doesn't exist.)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.