Windows 7 Chainloading problem [Multiboot]

I somehow managed to get the Windows 7 option in GRUB when i installed opensuse 13.1 “bottle”.
But that led to a big mess! I have mount the Windows partition to /home and i ain’t able to run wine…
now in grub the location of windows 7 is dev/sda1 therefore, i am not able to unmount the windows partition now :\

I want a way to chainload [multiboot] windows 7 through GRUB2 since it has a better GUI. I couldn’t do that need ur help. :smiley:

P.S: below is the error when i try to unmount windows partition [mount in etc/fstab by UUID]:

Failure occurred during the following action:
Unmounting /dev/sda1

Unmount failed.

System error code was: -3002

Continue despite the error?

Please help.

Thanks.

Well, it doesn’t matter to grub where you mounted what partition to.

Is /dev/sda1 your Windows partition?
I guess you cannot unmount it now because it is mounted to /home and in use…

I would say, just edit /etc/fstab to mount the real home partition to /home and reboot.
If necessary, you should be able to login as root and unmount it, since root’s home directory is in /root/, not /home.

Please post your /etc/fstab and the output of:

fdisk -l

this is the output:
sven1k@linux-41yf:~> fdisk -l
Absolute path to ‘fdisk’ is ‘/usr/sbin/fdisk’, so running it may require superuser privileges (eg. root).
sven1k@linux-41yf:~> su
Password:
linux-41yf:/home/sven1k # fdisk -l

Disk /dev/sda: 500.1 GB, 500107862016 bytes, 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x95ef77f4

Device Boot Start End Blocks Id System
/dev/sda1 63 136584692 68292315 7 HPFS/NTFS/exFAT
Partition 1 does not start on physical sector boundary.
/dev/sda2 205828621 976750591 385460985+ f W95 Ext’d (LBA)
Partition 2 does not start on physical sector boundary.
/dev/sda3 136585216 140793855 2104320 82 Linux swap / Solaris
/dev/sda4 * 140793856 205828095 32517120 83 Linux
/dev/sda5 205828623 410628959 102400168+ 7 HPFS/NTFS/exFAT
Partition 5 does not start on physical sector boundary.
/dev/sda6 410629023 615429359 102400168+ 7 HPFS/NTFS/exFAT
Partition 6 does not start on physical sector boundary.
/dev/sda7 615429423 820229759 102400168+ 7 HPFS/NTFS/exFAT
Partition 7 does not start on physical sector boundary.
/dev/sda8 820230144 824438783 2104320 7 HPFS/NTFS/exFAT
/dev/sda9 824440832 976750591 76154880 7 HPFS/NTFS/exFAT

Partition table entries are not in disk order
linux-41yf:/home/sven1k #

There is only one Linux partition there. Do you have a second hard disk?

I think that you actually did not mount your Windows partition to /home, but told the installer to use your Windows partition as /home.

Please login as root and you should be able to unmount /home.
Then post the output of “ls -la /home”.

If your home directory is in there, then just remove the /home entry from /etc/fstab.
If there’s nothing in it, you have two possibilities:

  • create a new partition formatted with a Linux filesystem (btrfs or ext4) and mount that as /home.
  • or forget about a separate /home partition and just use the home on the root partition as /home, i.e. remove the /home entry from /etc/fstab.

In either case, you should copy over the sven1k directory from your Windows partition.

I have unmounted the windows partition successfully through the root account.
this is the output
linux-41yf:~ # ls -la /home
total 4
drwxr-xr-x 1 root root 6 Dec 8 12:36 .
drwxr-xr-x 1 root root 176 Dec 10 17:54 …
drwxr-xr-x 1 csp users 532 Dec 8 13:54 csp
linux-41yf:~ #

now , the partition on which linux is installed has the Btrfs file system and has the / flag it’s the root. Is that the real /home partition?

Not really. Your user’s home directory is on the Windows partition.

It’s not really necessary to have /home on a separate partition though.

But who’s that “csp” user? That’s puzzling me a bit.

As I said, one possibility would be to just use /home on the / partition.
For this, remove the /home entry in /etc/fstab. (open it with a text editor and remove that line, if in doubt post /etc/fstab)
Then copy over your home directory and change the ownership:

mount /dev/sda1 /mnt
mv /mnt/sven1k /home
chown -R sven1k: /home/sven1k

That should be all.

Or if you want to have /home on a separate partition, create a new partition with YaST->System->Partitioner (format it with ext4 or btrfs) and mount it on /home instead.
Then copy your home over like above.

What do you prefer? /home on /, or /home as a separate partition?

In addition you can not use a Windows partition as home. Windows does not understand Linux permission flags so it simply will not work right. Also be default Windows partitions when mounted by install are mounted read only. Also a lot more reasons but never ever mount a Windows file system as home. You may mount it at some other point so data can be shared between the OS but /home will not work.

Adding to Gogalthorp’s comments:

On 2013-12-10, gogalthorp <gogalthorp@no-mx.forums.opensuse.org> wrote:
> In addition you can not use a Windows partition as home. Windows does
> not understand Linux permission flags so it simply will not work right.

… and you’d want you’re /home/ partition to use ext4 or btrfs rather than ntfs.

> Also be default Windows partitions when mounted by install are mounted
> read only.

… they would be mounted read-only for a regular user (rather than root) although this is easily changed by editing
your /etc/fstab or using YaST’s partitioner.

> Also a lot more reasons but never ever mount a Windows file
> system as home. You may mount it at some other point so data can be
> shared between the OS but /home will not work.

I think the best way to do this is using symbolic link(s) from your home partition to your Windows data partition(s).
In general, there’s little reason for your Linux system to access Window’s OS files and program files. Consequently,
it’s a good idea to keep your data' in a separate partition. Let's say Window's calls this D’, and your fstab mounts
this partition at /windows/d. Then you can very easily incorporate this in your $HOME using a symbolic link:

e.g. to replace the contents of your home’s Documents directory a link to the `D’ partition


sh-4.2$ cd ~
sh-4.2$ rm -r Documents/
sh-4.2$ ln -s /windows/d/ Documents

… but you’ll probably still want to gain read/write access as a regular user by editing your /etc/fstab or using
YaST’s partitioner.