From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1NWRqe-000796-Jo for mharc-grub-devel@gnu.org; Sun, 17 Jan 2010 04:55:08 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NWRqc-00078i-Lb for grub-devel@gnu.org; Sun, 17 Jan 2010 04:55:06 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NWRqZ-00077x-0w for grub-devel@gnu.org; Sun, 17 Jan 2010 04:55:06 -0500 Received: from [199.232.76.173] (port=56397 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NWRqY-00077s-Oy for grub-devel@gnu.org; Sun, 17 Jan 2010 04:55:02 -0500 Received: from mercav16.na.sas.com ([149.173.6.153]:25409) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NWRqY-0004iG-Fx for grub-devel@gnu.org; Sun, 17 Jan 2010 04:55:02 -0500 X-TM-IMSS-Message-ID: <3deb3fcd00103899@mercav16.na.sas.com> Received: from tempo.in.teragram.com ([172.25.89.16]) by mercav16.na.sas.com ([10.19.9.246]) with ESMTP (TREND IMSS SMTP Service 7.0; TLS: TLSv1/SSLv3,256bits,AES256-SHA) id 3deb3fcd00103899 ; Sun, 17 Jan 2010 04:25:16 -0500 Received: from vmw0314.na.sas.com ([10.32.13.105] helo=vmw0314 ident=dgomez) by tempo with esmtp (Exim 4.63) (envelope-from ) id 1NWRNk-0002yl-54; Sun, 17 Jan 2010 04:25:16 -0500 From: "Daniel Richard G." To: Date: Sun, 17 Jan 2010 04:25:16 -0500 Organization: Teragram Linguistic Technologies (a division of SAS) Message-ID: <000001ca9756$fae87380$f0b95a80$@com> X-Mailer: Microsoft Office Outlook 12.0 Thread-Index: AcqXVvoPSRay+9wRTAucA4v1geKLow== Content-Language: en-us X-detected-operating-system: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ X-Greylist: delayed 1782 seconds by postgrey-1.27 at monty-python; Sun, 17 Jan 2010 04:55:01 EST Subject: Trouble booting from a large USB hard drive X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Jan 2010 09:55:06 -0000 I recently installed Ubuntu Linux to a 500GB external hard drive, with GRUB2, and at first could not boot the system due to a GRUB "unknown filesystem" error. Resolving this problem led to some interesting revelations that I wanted to share here. Initially, the hard drive in question was partitioned to have a large (>400GB) FAT32 partition at the beginning. Knowing that Windows would only mount the first partition when the drive was plugged in, I figured this was the way to make the USB drive usable as a data vehicle on non-Linux systems. After that partition came ones for swap, root, and /home. After installing Ubuntu, and rebooting, I got the GRUB error. This was on an HP laptop; later on, I connected the same drive to a Dell desktop machine---and lo, Ubuntu booted! I believe that the cause of the problem with the HP laptop was a good ol'-fashioned BIOS barrier (a la "don't put /boot more than 8.4GB/33GB/137GB from the start of the disk"). The laptop was a fairly recent model---an HP EliteBook 6930p---but I'm guessing the code to boot from USB devices didn't have all the LBA workarounds and whatnot that have been standard in IDE/SATA boot code for years. What all but confirmed it for me was an ingenious solution I saw posted somewhere: an out-of-order partition table. Put the Linux partitions first on the disk, then the big FAT32 partition---but the FAT32 partition is /dev/sdx1, and the Linux partitions are /dev/sdx{2,3,4}. Windows mounts the FAT32 partition and ignores the others, just as intended, and Ubuntu boots flawlessly on the HP laptop. Aside: All this is also covered in a GRUB bug report at https://savannah.gnu.org/bugs/?27069 With all that said, I don't consider this to be a bug in GRUB, and this is not meant to be taken as a bug report. (I presume grub-pc can't work around such limitations in the BIOS, because there isn't enough room in the MBR to stuff in a disk-reading library that makes BIOS disk calls unnecessary.) Rather, I think it is a corner case of which users should be aware---and perhaps GRUB and/or the Ubuntu installer could do a better job of warning the user if the disk layout may lead to that. Beyond that, broader awareness/support/use of out-of-order partition tables [for large USB drives in similar usage scenarios] doesn't seem like a bad idea. (Which is not to say I'm certain of all this; that it's a BIOS barrier issue is only my hypothesis, consistent with what I've observed. Folks here might be aware of something else that may have been going on.) --Daniel -- Daniel Richard G. || danielg@teragram.com || Software Developer Teragram Linguistic Technologies (a division of SAS) http://www.teragram.com/