12 Replies Latest reply on Mar 6, 2018 4:28 PM by Intel Corporation

    Corrupted Partition Map: No longer boots: What do?

    grayfox

      I was about to flash and reinstall Ubuntu on my Euclid via thumb drive with the image already loaded and ready to go when I had an issue with one of the partitions on the thumb drive. I decided to wipe the partitions on the thumb drive, format it, and try to load the Ubuntu image again, except it turns out I was doing all this to the Euclid's partition table instead of the thumb drive.

       

      For anyone finding this doing a Google search in the future: The Euclid does NOT use sda for its internal storage. If you see something using sda, that's whatever storage you've plugged into it. Or at least, it was on mine, and AFAIK I didn't do anything to cause that. Continuing on...

       

      So I completely mucked up my Euclid's partition table, it won't boot, and I can't even get into BIOS to tell it to boot from external storage. When I fire it up, all I get is a static (read: NOT blinking) white underscore on a black background, nothing else. I try to press [F2], [DEL], [F12], all the usual suspects to get into BIOS, press physical buttons on the Euclid itself, nothing.

       

      I thought about physically tearing it down, pulling the internal storage and redoing the partitions by externally mounting that storage on another device, like my PC, but after watching the YouTube teardown video of the Euclid, it looks like the internal storage is soldered onto the board, so I wouldn't be able to do anything with that, anyway. So what are my options, here?

       

      Thanks!

       

      Edit: poor word choice. Clarification added.

        • 1. Re: Corrupted Partition Map: No longer boots: What do?
          MartyG

          The function key to access Euclid's BIOS is F5.  Can you try this first please and see if anything happens?  Thanks!

          • 2. Re: Corrupted Partition Map: No longer boots: What do?
            grayfox

            Yes, I just tried spamming F5 during boot, and no change. I was pretty sure that at some point before making my original post, I resorted to spamming every function key just to make sure it wasn't an odd one like F5, but I did it just now just to make sure. Still nothing :/

            • 3. Re: Corrupted Partition Map: No longer boots: What do?
              MartyG

              When trying to reinstall the OS on Euclid with an external storage stick, the ideal setup is to plug a USB hub device directly into the Euclid and then plug mouse and keyboard into the hub, as described by the diagram below.  The display should be connected to the HDMI port.

               

               

              If you are short of USB ports on the Euclid and do not have a hub, you could try connecting only the keyboard to it and booting up and pressing F5 to enter the Euclid BIOS.  You could then use keyboard controls to set the BIOS options instead of a mouse (e.g move through the options with the arrow keys).

               

              When the BIOS change to boot from USB stick has been done, you could try shutting the Euclid down, unplugging the keyboard and putting the boot stick in, then turning the Euclid back on.  When the Euclid has booted into Ubuntu, see if you can unplug the stick and put the keyboard back in to control the interface.  It's a bit of a juggle with these different devices, so you can see why they recommend using a USB hub with Euclid in the diagram!

               

              If the keyboard still does not respond ... are you using a wireless keyboard with a dongle that plugs into the USB port? I have never had success in entering the BIOS at boot-up with these and so always use a wired keyboard for such repairs.

              • 4. Re: Corrupted Partition Map: No longer boots: What do?
                grayfox

                Yep, that's exactly what I've done. I've already wiped and re-installed the Ubuntu image several times in the past, and that's exactly how I've done it every time. USB hub with 4 ports, wired KB&M on the first two ports, and a thumb drive with the Ubuntu image preloaded on the third port. I would boot into BIOS to change the boot order to boot my thumb drive before anything else, run the wipe and re-installation, then continue with my ROS work. This time though, I can't even get to BIOS. Within a second of the monitor getting signal, it goes straight to the black screen with a non-blinking underscore in the upper-left corner. No response from KB&M input, no response from buttons, nothing. I don't know if you're an Intel dev, or have access to any of their tools, but you can easily reproduce this by just deleting all the partitions on the Euclid while it's running (obviously not the EXT4 partition though, you literally can't do that while it's running), and reboot it. You'll undoubtedly see what I see.

                • 5. Re: Corrupted Partition Map: No longer boots: What do?
                  MartyG

                  I do not have a Euclid unfortunately, so I cannot run tests myself.

                   

                  In the second half of 2017 there was an issue with some Euclids where they would stop booting when they were connected to the power plate adapter.  I know that the Euclid team were investigating the problem to try to find out more about it and come up with a solution.  I haven't heard any more about their progress since then though.

                   

                  Re: Euclid will not power up.

                   

                  The information in the above link may give you a couple more options to try in order to eliminate the possibility of a power issue.

                  • 6. Re: Corrupted Partition Map: No longer boots: What do?
                    grayfox

                    Interesting. I'll give that a shot. I've been researching along the lines of "I deleted the EFI partition linux -windows," and I feel like I'm pulling on the right thread, but still unsure of how I could do this. I have a feeling that the Euclid doesn't have an actual BIOS, but instead uses EFI, and the EFI partition was undoubtedly one of the partitions that got wiped when I mistook the internal storage for my thumbdrive. If that's the case, is there a way I could grab an original image of the EFI partition, put it on some form of storage (like maybe an SD card?) and maybe I'll get lucky and it'll at least get me as far as the EFI config menu, where I can set my thumb drive with Ubuntu to boot, and then get a clean install? I'm an experienced C++ dev, and no stranger to Linux, but this is pretty well outside of anything I've had to do for any machine I've worked on, simply because if I screw up my machine's storage that badly, I can always pull the drive, mount it on another machine externally, and just wipe it and start from scratch. I've never so thoroughly broken a machine that I can't even get into BIOS :/

                    • 7. Re: Corrupted Partition Map: No longer boots: What do?
                      MartyG

                      A complete 2 GB Euclid restoration image that restores it to factory-default conditions can be downloaded from a link on the page linked to below.  Is this the one you have been using?

                       

                      Re: Restore Euclid / download software

                      • 8. Re: Corrupted Partition Map: No longer boots: What do?
                        Intel Corporation
                        This message was posted on behalf of Intel Corporation

                        Hello Grayfox,

                        If Marty's recommendation does not work, then, unfortunately, your Euclid is bricked and cannot be recovered. You can return it to Intel for a refund if this is the case.

                        Regards,
                        Jesus
                        Intel Customer Support

                        • 9. Re: Corrupted Partition Map: No longer boots: What do?
                          grayfox

                          Sorry for the delayed response, but I finally figured out what happened, so here's a write up describing what the problem was, how to fix it, and how to avoid it in the future, for anyone else Googling this issue. For those of you who are Linux savvy, feel free to skip this intro part. If you're not too familiar with how Linux handles storage devices (e.g. hard drives, thumb drives, etc), here's a brief rundown of how Linux does things vs Windows.

                           

                          Windows Storage

                          We all know how Windows does HDD and partition schemes, right? The C drive. That's your main drive. It's where Windows lives. If you have extra hard disks or thumb drives plugged in, they will by default go in alphabeitcal order from "C" onward, using whatever letters haven't already been reserved for other storage devices. If you split your main C drive into other partitions, Windows treats those as separate logical drives, and assigns each partition its own letter. So for instance, if you split your C drive into 3 partitions, your first partition will still be labeled "C" while the other two will be labeled "D" and "E" respectively, or whatever the next available letter is. Linux does things a bit differently, and it's a pretty logical and straightforward setup, but if you're unfamiliar with it, it can seem a bit weird.

                           

                          On the Linux Side of Things...

                          In Linux, all forms of storage, both internal and external, are assigned a letter designation and "mounted" (this is a Linux term, but you sometimes hear people in the Windows world use this term as well. When we say a storage device--whether it's a hard drive or a thumb drive--is "mounted," it just means the operating system is able to talk to and view the storage device's contents, and it's ready to be used).

                           

                          This letter designation goes in alphabetical order, just like on Windows, but the nomenclature seems a bit weird to people who aren't familiar with it. Storage devices will always be located in the file system (whether it's mounted or not) in the directory /dev and will always begin with the letters "sd" (Storage Device) followed by another letter, starting with "a". Confused? Let's use an example.

                           

                          /dev/sda

                           

                          That's your primary drive in Linux. That's where Linux lives on your hard drive. Just like how in Windows, this would be your "C" drive. If you have a second HDD plugged in (or even a thumb drive. Linux doesn't distinguish between the two insofar as the storage naming convention is concerned), it will be assigned the letter "b", so that would look like:

                           

                          /dev/sdb

                           

                          So if you were looking at the /dev folder with both of these HDDs plugged into your computer, when you go to the terminal and type:

                           

                          ls /dev

                           

                          you would find:

                           

                          /dev

                          sda

                          sdb

                           

                          There are a bunch of other things in that directory, but don't worry about them. Those are your two hard drives, with "sda" being your primary, and "sdb" being your secondary. But what about partitions? This is where Linux diverges from Windows a bit more. Instead of giving each partition its own letter and treating it like its own drive like Windows does, Linux tracks what partitions belong to what drives, and makes it easy to see them, by assigning each partition a number, and attaching that to the name of the hard drive it belongs to. For instance, here's what /dev/sda looks like if it has 3 partitions:

                           

                          /dev/sda

                          sda1

                          sda2

                          sda3

                           

                          If you had only one partition on your second drive (because all drives have at least one partition), then your second drive would look like:

                           

                          /dev/sdb

                          sdb1

                           

                          Easy, right? Now this is a Linux-wide convention. Feel free to correct me if I'm wrong here, but I don't know of any Linux distro that breaks with this convention, because if everyone agrees on a standard nomenclature, why would you break that? Well, that's exactly what Intel did with the Euclid.

                           

                          Euclid Internal Storage Partition Map

                          I don't know what possessed the guys that made the Euclid to do this (if anyone has an answer, I'd love to hear it), but they broke the Linux storage device naming convention, and instead of labeling the internal storage of the Euclid /dev/sda like you would expect it to be, they instead labeled it

                           

                          /dev/mmcblk0p

                           

                          Within this storage, they have several partitions. At least they stuck to the standard nomenclature for the partitions:

                           

                          /dev/mmcblk0p

                          mmcblk0p1

                          mmcblk0p2

                          mmcblk0p3

                          mmcblk0p4

                          mmcblk0p5

                           

                          Now you might be thinking, "So what? Why does it matter that they called it something else?" If you never plug in any external storage to your Euclid, and never go mucking around with the internal storage partition map, then it doesn't. But if you plug in a thumb drive, it will get labeled as "sda" which becomes really confusing to normal Linux users. If you plug in a thumb drive and you're expecting to format it or do some kind of partitioning work on it, and you see two drives, one labeled "sda" and the other "mmcblk0p" your initial response is to not touch the sda drive, because that's where Linux lives, and I'll undoubtedly break something if I go screwing around with the partition map of sda. This is the Linux equivalent to purchasing a laptop where the Windows hard drive has been labeled "Z" and when you plug in a thumb drive, it's labeled "C". So imagine my confusion at seeing this! So I started deleting partitions of mmcblk0p, and broke the Linux install, and didn't realize what I'd done until it was beyond repair. So I needed to reinstall the OS. Except I couldn't seem to get it to boot from my thumb drive. It wasn't until several days later that I remembered the whole reason I was doing formatting and partitioning on my thumb drive in the first place was because it was broken, and I needed to redo the live boot. Once I did that, it booted from the thumb drive and reinstalled like normal, and now everything's working again. So moral of the story is... don't break conventions, if at all possible. It causes confusion.

                           

                          Thanks for all your help and replies, btw.

                          • 10. Re: Corrupted Partition Map: No longer boots: What do?
                            MartyG

                            Thanks so much for your very detailed feedback!  Such accounts are of great use to people who are dealing with similar problems. 

                            1 of 1 people found this helpful
                            • 11. Re: Corrupted Partition Map: No longer boots: What do?
                              grayfox

                              Thanks! I try

                               

                              I know how annoying it is to come across someone else's post where they had the same problem you're Googling right now, and there's a thread with no solution, or OP replies with "nvm, I fixed it." and nothing else.

                              • 12. Re: Corrupted Partition Map: No longer boots: What do?
                                Intel Corporation
                                This message was posted on behalf of Intel Corporation

                                Hello Gray Fox,

                                 

                                We looked into this issue more deeply.

                                 

                                The drive in the Euclid is not a hard drive, it is a solid state drive, an eMMC chip. The default Linux behavior is that these drives are listed as /dev/mmcblk0p*. When an external USB drive is inserted, the default designation is /dev/sda*.

                                 

                                You can see this behavior on a NUC which also has a solid state drive instead of a hard drive. The Euclid device did not change this behavior, they just kept the default Linux behavior.

                                 

                                Regards,
                                Jesus
                                Intel Customer Support