Trisquel doesn't boot anymore after upgrading to Belenos
Hi folks!
Two days ago I decided to upgrade my workstation to Trisquel 7.0 in order to continue my work on the Trisquel Enhancement Project. The upgrading process had some minor issues but nothing important have happened until just before its completion. The configuration of grub-pc failed to install GRUB on /dev/dm-1, but since it happens to me regularly, I chose to continue the installation.
I tried to reinstall GRUB from chroot using a Trisquel 7.0 64-bit Live DVD which usually works for me except this time. With some investigation I have learnt that there was a transition from dmraid to mdadm upstream which presumably caused this problem as my laptop uses an Intel Matrix RAID array (aka "fakeraid" in RAID 0 configuration). I tried several ways to fix this issue including downgrading GRUB, removing dmraid/mdadm, and editing /etc/fstab (everything is back to normal now!) but nothing worked so far and since I have important data and configurations on different partitions, I don't want to mess up my computer.
Here's the Terminal output with some information to begin with:
trisquel@trisquel:~$ sudo mount /dev/md126p6 /mnt trisquel@trisquel:~$ sudo mount -B /dev /mnt/dev trisquel@trisquel:~$ sudo mount -B /proc /mnt/proc trisquel@trisquel:~$ sudo mount -B /sys /mnt/sys trisquel@trisquel:~$ sudo chroot /mnt root@trisquel:/# dpkg-reconfigure grub-pc Generating grub configuration file ... Found linux image: /boot/vmlinuz-3.13.0-39-generic Found initrd image: /boot/initrd.img-3.13.0-39-generic Found linux image: /boot/vmlinuz-3.5.0-54-generic Found initrd image: /boot/initrd.img-3.5.0-54-generic No volume groups found Found Windows Recovery Environment (loader) on /dev/md126p1 Found Windows 7 (loader) on /dev/md126p2 done root@trisquel:/# grub-install /dev/sda Installing for i386-pc platform. grub-install: warning: attempt to read or write outside of disk `hostdisk//dev/sda'. grub-install: error: embedding is not possible, but this is required for cross-disk install. root@trisquel:/# grub-install /dev/sdb Installing for i386-pc platform. grub-install: error: unable to identify a filesystem in hostdisk//dev/sdb; safety check can't be performed. root@trisquel:/# grub-install /dev/mapper/isw_cbghfjicjf_Volume0 Installing for i386-pc platform. grub-install: error: cannot find a GRUB drive for /dev/mapper/isw_cbghfjicjf_Volume0. Check your device.map. root@trisquel:/# mdadm --assemble --scan root@trisquel:/# mdadm --detail-platform Platform : Intel(R) Matrix Storage Manager Version : 9.5.0.1037 RAID Levels : raid0 Chunk Sizes : 4k 8k 16k 32k 64k 128k 2TB volumes : supported 2TB disks : not supported Max Disks : 7 Max Volumes : 2 per array, 4 per controller I/O Controller : /sys/devices/pci0000:00/0000:00:1f.2 (SATA) root@trisquel:/# blkid /dev/md126p1: LABEL="Recovery" UUID="9A5A15B25A158BDF" TYPE="ntfs" /dev/md126p2: LABEL="System Reserved" UUID="36EC4F0CEC4EC639" TYPE="ntfs" /dev/md126p3: LABEL="Windows" UUID="01CC6417DE53A1B0" TYPE="ntfs" /dev/md126p7: UUID="adc1aaf9-f89b-4944-bd80-26e2124d49ea" TYPE="swap" /dev/md126p8: UUID="7ee49041-4fd1-47f4-a2dd-c6542e45ee94" TYPE="xfs" /dev/loop0: TYPE="squashfs" /dev/sr0: LABEL="trisquel 7.0 amd64" TYPE="iso9660" /dev/sdb: TYPE="isw_raid_member" /dev/sdc: TYPE="isw_raid_member" /dev/sdd: TYPE="isw_raid_member" /dev/md126p5: LABEL="Data" UUID="01CC6422D8D560B0" TYPE="ntfs" /dev/md126p6: UUID="13f3be54-44d5-469e-8331-a498ee451b04" TYPE="ext4" root@trisquel:/# cat /run/mdadm/map md127 /md0/0 546fe38b:d83a118a:07739669:3d0edc37 /dev/md/imsm0 md126 /md0/0 546fe38b:d83a118a:07739669:3d0edc37 /dev/md/Volume0_0 root@trisquel:/# cat /etc/fstab # /etc/fstab: static file system information. # # Use 'blkid -o value -s UUID' to print the universally unique identifier # for a device; this may be used with UUID= as a more robust way to name # devices that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc nodev,noexec,nosuid 0 0 /dev/mapper/isw_cbghfjicjf_Volume0p3 /mnt/windows ntfs defaults 0 0 /dev/mapper/isw_cbghfjicjf_Volume0p5 /mnt/data ntfs defaults 0 0 /dev/mapper/isw_cbghfjicjf_Volume0p6 / ext4 relatime,errors=remount-ro 0 1 /dev/mapper/isw_cbghfjicjf_Volume0p7 none swap sw 0 0 /dev/mapper/isw_cbghfjicjf_Volume0p8 /home xfs relatime 0 2 root@trisquel:/# cat /etc/default/grub # If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_TIMEOUT=10 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomdmonddf nomdmonisw" GRUB_CMDLINE_LINUX="i8042.nopnp acpi_osi=" # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux-Libre (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...) #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef" # Uncomment to disable graphical terminal (grub-pc only) #GRUB_TERMINAL=console # The resolution used on graphical terminal # note that you can use only modes which your graphic card supports via VBE # you can see them in real GRUB with the command `vbeinfo' #GRUB_GFXMODE=640x480 # Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entries #GRUB_DISABLE_RECOVERY="true" # Uncomment to get a beep at grub start #GRUB_INIT_TUNE="480 440 1" # Trisquel comes without kernel recovery entries to improve security. GRUB_DISABLE_RECOVERY=true root@trisquel:/# cat /etc/mdadm/mdadm.conf # mdadm.conf # # Please refer to mdadm.conf(5) for information about this file. # # by default (built-in), scan all partitions (/proc/partitions) and all # containers for MD superblocks. alternatively, specify devices to scan, using # wildcards if desired. #DEVICE partitions containers # auto-create devices with Debian standard permissions CREATE owner=root group=disk mode=0660 auto=yes # automatically tag new arrays as belonging to the local system HOMEHOST <system> # instruct the monitoring daemon where to send mail alerts MAILADDR root # definitions of existing MD arrays ARRAY metadata=imsm UUID=9e1fad31:85347f05:c09749ab:c27bc696 ARRAY /dev/md/Volume0 container=9e1fad31:85347f05:c09749ab:c27bc696 member=0 UUID=546fe38b:d83a118a:07739669:3d0edc37 # This file was auto-generated on Thu, 06 Nov 2014 11:51:02 +0100 # by mkconf $Id$
Here's a screenshot from Disks (gnome-disk-utility) showing the arrangement of the partitions:
I also wanted to attach an image of GParted too, but unfortunately it won't recognize my partitions anymore.
Thanks to everyone in advance.
Regards, mYse|f
I figured out this morning the correct way to install GRUB, which was
grub-install /dev/md126
so my problem is now gone. However, I am a little worried about my previous attempts to install GRUB on different partitions. Does anybody know precisely what grub-install does and whether it can corrupt data if used incorrectly?