Please remove this {{Draft}}template, when you're sure the page is complete and correct.
|
Contents
AIM
Chromebooks and Chromeboxes are ideal platforms for Mageia. They are inexpensive, and are designed to be linux friendly. This page describes how to install Mageia on Chromebooks/boxes either as single boot, or dual booting with ChromeOS.
Installing Mageia on a Chromebook
Chromebooks cab be divided into two types, Intel based, and ARM based hardware. At present Mageia is not available for ARM architectures.
Mageia may be installed on Intel based Chromebooks either as single boot, or as dual boot.
THIS SECTION IS A WORK IN PROGRESS. FEEL FREE TO ADD TO IT.
Dual Booting Mageia and ChromeOS on a Chromebox
The Haswell Celeron-based Chromebox is available in variants from a number of manufacturers(Asus, HP, Acer, and Dell). It is a small light-weight x86-64 PC that natively runs ChromeOS, but with a few simple tweaks, has the capability to run pretty much any Linux distro. It features HDMI and DisplayPort video outputs (which can be used simultaneously), 4x USB 3.0 ports, gigabit Ethernet, an SD card slot, and built-in 802.11a/b/g/n wireless and Bluetooth 4.0.
By default Chromeboxes will boot straight into ChromeOS using an EFI BIOS. However if the Chromebox is put into 'developer mode' then at boot time it is possible to use the keyboard to choose a boot into ChromeOS, or to boot legacy BIOS(SeaBIOS) and boot into another operating system. It is also possible to configure the Chromebox to boot the legacy BIOS by default after a short or long delay.
Before installing linux on a Chromebox it is recommended to upgrade the BIOS to a community developed version to overcome a bug in the stock legacy BIOS that prevented booting from USB. A script by Matt Devo [1] is a convenient way to both upgrade the BIOS and partition the file system of the Chromebox in preparation for installing Mageia. The first time the script is run it will upgrade the BIOS and partion the SSD to make sda7 available to install linux. The second time it is run it will install Ubuntu on the new partition. There is no need to run the script a second time when installing Mageia.
Preparation
In order to upgrade the BIOS or change any boot flags the Chromebox has to have its write protect screw removed. Refer to the Kodi wiki for instructions on how to locate the write protect screw on the various models. It is also necessary to put the Chromebox into developer mode.
Booting Mageia Installation Media
Even after upgrading the legacy BIOS there is still a problem when it comes to booting Mageia installation media from USB. No matter which Mageia media is used, Live, Classic, all.img, or boot.iso. When the Chromebox starts to boot the Chromebox will immediately reset again. Other linuxes do not appear to have this problem. To get around this issue it is necessary to boot initially into grub4dos on an SD card, and then use grub to boot the Mageia installation media. (An SD card is preferred to a USB flash for grub4dos because the Chromebox legacy BIOS will boot to SD even without being upgraded, and to avoid any confusion about drive numbering when booting)
Preparing a grub4dos SD card
A grub4dos boot media may be created either on another computer, or using ChromeOS in developer mode. Thanks to Timothy Li for these instructions
Boot your Chromebox into ChromeOS (after having put it into developer mode)
Download grub4dos-0.4.5c-2014-01-17.7z to Downloads folder. Goto cloudconvert.com to convert it to a zip file and save the zip file to Downloads folder. Open the zip file in Files app and extract bootlace.com and grldr to Downloads folder.
Install a text editor extension such as Text to ChromeOS.
Use it to create a text file called menu.lst with the contents
timeout 3 default 0 title Mageia-on-HD kernel (hd1,6)/boot/vmlinuz BOOT_IMAGE=linux root=/dev/sda7 splash quiet root (hd1,6) initrd /boot/initrd.img title Mageia-install-media #find --set-root /mageia/VERSION root (hd0,0)/mageia kernel /isolinux/x86_64/vmlinuz mem=999999M tpm_tis.force=1 toram splash quiet initrd /isolinux/x86_64/all.rdz
Enter Ctl+Alt+F2 to switch to the developer console. Log in as user chronos no password is necessary
First, enable usb and legacy boot:
sudo crossystem dev_boot_usb=1 dev_boot_legacy=1
Now, insert an SD card (any size) in the Chromebox. Partition the SD card by typing this command in the developer console:
sudo cfdisk /dev/sdb
In cfdisk, delete all existing partitions. and create 1 fresh primary Windows partition (type 0C), set boot flag on.
Write changes to disk and exit cfdisk.
Format the SD card
sudo mkfs -t vfat /dev/sdb1
Next, create a temporary mount point and mount the 1st partition of the SD card:
mkdir p1
sudo mount /dev/sdb1 p1
Next, install grub4dos on the SD card:
sudo cp Downloads/grldr p1/ sudo cp Download/menu.lst p1/ sudo umount p1 rmdir p1 mkdir p12 sudo mount /dev/sda12 p12 cp Downloads/bootlace.com p12/ sudo p12/bootlace.com --time-out=0 /dev/sdb rm p12/bootlace.com sudo umount p12 rmdir p12
Press Ctrl+Alt+F1 to switch back to the graphical interface, and power off Chromebox.
Booting from grub4dos
Having prepared the grub4dos boot media now all you have to do is boot the Chromebox with the grub4dos SD card inserted, and a Mageia boot media (Classic, Live, or boot.iso) installed in a USB slot. Press Ctl+L after power on to make the chromebox boot into Legacy BIOS and you should see a Grub menu. Select the second option Mageia-install-media and booting should continue from the USB media,and Mageia will install normally.
Setting up Grub after installation
There is one more small prooblem with installing Mageia on a Chromebox we must fix. When the Mageia installer installs Grub to the MBR of the Chromebox SSD, grub will always be corrupted, and the system will not boot after installation has finished. Nor is it possible to tell the installer to install grub2 instead since drakboot will fail during install if grub2 is selected.
The solution is to boot once more from grub4dos, but this time select the first item in the grub menu Mageia-on-HD. This menu item will boot a linux image on sda7. Once Mageia has been successfully booted we can install grub2 correctly.
(If there is any problem booting into the installed Mageia be aware that it is trivially easy to addd another Linux image such as Puppy Linux to the grub4dos boot media which can be used to fix any errors. Refer to Timothy Li's instructions for details on how to add Puppy Linux to the SD card.
Installing grub2 on Chromebox
- Open Mageia Control Centre and select Boot>SetupBootSystem
- Select grub2 as the bootloader to be used and select OK to install grub2 to the MBR
- Installation of grub2 will fail and a window will pop up telling you grub2 cannot be installed.
- Installation of grub2 can now be completed by opening a terminal, enter su to become root user and issuing this command
/usr/sbin/grub2-install /dev/sda --force
Now remove the SD card and reboot the Chromebox using legacy BIOS (Ctl+L), and it should boot into grub2 and thence into Mageia.
Resources
- The ArchLinux wiki page has a lot of useful information regarding ChromeOS hardware Chromebooks at Arch Linux wiki
- The Kodi Wiki has excellent information on how to install linux on a Chromebox
- How to use Matt Devo's EZInstall script to upgrade BIOS on a Chromebox and prepare it for dual boot EZInstall script
- John Lewis' script to upgrade BIOS in ChromeOS products getnflash