Sometimes the root.disk
, the virtual partition that Wubi uses to boot, gets corrupted. This is a file that lives in the \ubuntu\disks\
directory. If Grub (inside wubildr
) cannot mount the root.disk
, it cannot show the grub menu (which is stored on the root.disk
) and then it just drops you to a grub prompt to await further instruction.
There is nothing you can do from the grub prompt until you've figured out the problem with the root.disk
and, odds are, there is NTFS
corruption. It's fairly common, for example, if you've performed a hard shutdown or reboot. In some cases, the reason isn't clear.
What you need to do is to run chkdsk /f
(or /r
) from Windows on the drive you installed Wubi. If you installed on the C:\
drive this will require a full restart.
To run chkdsk
on Windows 7 (the first checkbox corresponds to chkdsk /f
and the second to chkdsk /r
:
If prompted, restart the computer and boot into Windows to complete the chkdsk
making sure not to 'Hit a key' to abort it.
After that, check the ubuntu\disks\
directory to make sure the root.disk
is still there. In some cases, the ubuntu\disks\
directory itself is no longer present. If either are missing, you need to look for them as chkdsk
will often recover corrupted files/directories to hidden folders named \found.000
, \found.001
etc. These are hidden and protected OS directories by default (Windows 7) so they won't show up in Explorer. I find it easiest just to use the Command prompt.
To do this, right-click on CMD.EXE
and select "Run as administrator". Change to the drive the \ubuntu
directory is located on, and search for the hidden \found.???
directories.
e.g. if the root.disk
is missing, you're looking for a file > 5GB
in size. If you know what size your install was it helps. In this case, it's 15GB
C:\>dir /a:h
C:\>cd \found.000
C:\found.000>dir
Volume in drive C is OS
Volume Serial Number is B4B7-99A8
Directory of C:\found.000
19/07/2011 02:02 PM 15,000,000,000 file0000.chk
1 File(s) 15,000,000,000 bytes
0 Dir(s) 222,258,069,504 bytes free
C:\found.000>move file0000.chk \ubuntu\disks\root.disk
1 file(s) moved.
If the whole \ubuntu\disks
directory is missing, you're looking for a directory named dir0000.chk
, and inside that you'll find the correctly named root.disk
and swap.disk
, so you can just move the directory back in place:
C:\>cd \found.000
C:\found.000>dir
Volume in drive C is OS
Volume Serial Number is B4B7-99A8
Directory of C:\found.000
19/10/2012 04:51 PM <DIR> .
19/10/2012 04:51 PM <DIR> ..
19/07/2011 02:02 PM <DIR> dir0000.chk
0 File(s) 0 bytes
3 Dir(s) 222,258,069,504 bytes free
C:\found.000>dir dir0000.chk
Volume in drive C is OS
Volume Serial Number is B4B7-99A8
Directory of C:\found.000\dir0000.chk
19/10/2012 04:51 PM <DIR> .
19/10/2012 04:51 PM <DIR> ..
24/02/2012 12:22 AM <DIR> boot
06/11/2012 09:28 AM 13,000,000,000 root.disk
15/11/2011 09:28 PM 268,435,456 swap.disk
2 File(s) 13,268,435,456 bytes
3 Dir(s) 127,904,968,704 bytes free
C:\>move dir0000.chk \ubuntu\disks
1 dir(s) moved.
Recovery isn't guaranteed in all cases depending on the extent of corruption. Note that the root.disk
may be correctly in place before running chkdsk
and then be removed after running it.
Reference: http://ubuntu-with-wubi.blogspot.ca/2011/08/missing-rootdisk.html