[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#608025: [debian-installer] Windows 7 entry is not written to GRUB list



[Dear Miguel and others: Please do not merge this report, or others
presenting a similar symptom, with any other bug report.  There are
multiple possible causes for each bug - I've fixed more than one myself
in the past - and so each report must have its root cause analysed
independently.  Merging two bugs amounts to a statement that they have
the same cause.  While this may be true, we simply don't know yet, and
if we merge them prematurely when there happen to be multiple problems
then we will probably miss that fact.]

On Sat, Jan 01, 2011 at 09:03:55PM +0000, Paul Bryan Roberts wrote:
> It looks like the os-prober found the Windows OS all right - the  
> installer dialog suggested this:
>
> Jan  1 13:57:27 20microsoft: result: /dev/sda1:Microsoft Windows 2000  
> Professional:Windows:chain
> Jan  1 15:22:29 20microsoft: result: /dev/sda1:Microsoft Windows 2000  
> Professional:Windows:chain

The syslog shows that os-prober detects it the first time grub-installer
runs it (which is when it's installing the grub-pc package), like so:

Jan  1 13:57:26 os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/sda1
Jan  1 13:57:26 kernel: [ 5258.526137] NTFS volume version 3.0.
Jan  1 13:57:26 50mounted-tests: debug: mounted as ntfs filesystem
Jan  1 13:57:26 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/10freedos
Jan  1 13:57:26 10freedos: debug: /dev/sda1 is not a FAT partition: exiting
Jan  1 13:57:26 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/10qnx
Jan  1 13:57:26 10qnx: debug: /dev/sda1 is not a QNX4 partition: exiting
Jan  1 13:57:26 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/20macosx
Jan  1 13:57:26 macosx-prober: debug: /dev/sda1 is not an HFS+ partition: exiting
Jan  1 13:57:26 50mounted-tests: debug: running subtest /usr/lib/os-probes/mounted/20microsoft
Jan  1 13:57:26 20microsoft: debug: /dev/sda1 is a NTFS partition
Jan  1 13:57:27 20microsoft: result: /dev/sda1:Microsoft Windows 2000 Professional:Windows:chain
Jan  1 13:57:27 50mounted-tests: debug: os found by subtest /usr/lib/os-probes/mounted/20microsoft
Jan  1 13:57:27 os-prober: debug: os detected by /usr/lib/os-probes/50mounted-tests
Jan  1 13:57:27 os-prober: debug: running /usr/lib/os-probes/mounted/10freedos on mounted /dev/sda10

But the second time through (when it manually calls update-grub) it just
does this:

Jan  1 15:21:34 os-prober: debug: running /usr/lib/os-probes/50mounted-tests on /dev/sda1
Jan  1 15:21:37 os-prober: debug: running /usr/lib/os-probes/mounted/10freedos on mounted /dev/sda10

The next time os-prober is called is from finish-install, and that's
what generates the 15:22:29 log entry you quoted.

The first run of os-prober within grub-installer and the run of
os-prober within finish-install both take place in the installer root
filesystem.  The second run of os-prober within grub-installer, the one
which fails, takes place chrooted to the target system.  That's
overwhelmingly likely to be the problem here.  os-prober-udeb and
os-prober are at the same version here (1.42), so it's not a version
skew problem.

On the balance of probabilities, I suppose that this has something to do
with the changes I made in os-prober 1.40, but I'm not currently sure
what.

Paul, could you describe your partitioning setup?  In particular, did
you tell the partitioner to mount /dev/sda1 anywhere?

Thanks,

-- 
Colin Watson                                       [cjwatson@debian.org]



Reply to: