Difference between revisions of "Acer C710 Chromebook"

From ArchWiki
Jump to: navigation, search
(Install ChrUbuntu: Deleted, no longer needed)
(Installing a 64bit Kernel: Deleted, un-needed)
Line 67: Line 67:
* To use CGPT later, you will need to install glibc (32-bit) or lib32-glibc (64-bit).
* To use CGPT later, you will need to install glibc (32-bit) or lib32-glibc (64-bit).
* "umount" mnt3, mnt2, and mnt. In that order.
* "umount" mnt3, mnt2, and mnt. In that order.
=== Installing a 64bit Kernel ===
You have two choices, the official or unofficial way. 64bit kernels can be used with a 64 or 32bit filesystem.
* Official: You can simply login on your Chromebook and go to chrome://help , then change the channel from stable to Dev.
To check your kernel(currently the ChromeOS filesystem is 32bit), run:
# sudo modprobe configs && zcat /proc/config.gz | grep CONFIG_64BIT ; uname -m
If you have a 64bit kernel you will see the output CONFIG_64BIT=y and x86_64.
* Unofficial: Run these commands from within ChromeOS before rebooting.
# wget http://grayhatter.com/public/archC7/zgb-x64-kernel-partition.bz2
# bunzip2 zgb-x64-kernel-partition.bz2
# use_kernfs="zgb-x64-kernel-partition"
# target_kern="/dev/sda6"
# vbutil_kernel --repack $use_kernfs \
  --keyblock /usr/share/vboot/devkeys/kernel.keyblock \
  --version 1 \
  --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \
  --oldblob $use_kernfs
# dd if=$use_kernfs of=${target_kern}
=== Finishing Up ===
=== Finishing Up ===

Revision as of 19:07, 22 September 2014

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason: misleading, this will not end with fully arch installation as it doesn't use arch kernel packages, consider adding remarks about the limitations and disadvantages. it might worth taking the guide out of the c7 chromebook and into a generic solution for having Arch rootfs on Chromebooks without SeaBIOS payload. (Discuss in Talk:Acer C710 Chromebook#)

This page is a work in progress guide to running Arch Linux on the Acer C7 Chromebook. See these Acer_C720_Chromebook for the Acer C720 Chromebook.

Over seven models exist, starting at $199, less if used. These laptops make a great side laptop to jump into linux with!

For now you need another computer running *nix. If you're already running ChrUbuntu on your Acer C7, skip to creating your own Arch image.

Install Arch on an Acer C7 Chromebook

Arch runs well on the Acer C7. For 64bit installs first see Installing a x86_64 kernel. "Patches welcome" for custom x86_64 ChromiumOS kernels. The default install is 32bit due to the stock kernel.

Warning: *BACK UP YOUR DATA.* All of it, somewhere else(Cloud, USB, another machine). The entire data partition will be purged many times.

Enabling Dev Mode

First step is to enable Dev mode on the system so we can run some unsigned code. This will wipe all your data!

To enter Dev Mode:

  • Press and hold the Esc+F3 (Refresh) keys, then press the Power button. This enters recovery mode.
  • Now, press Ctrl+D (no prompt). It will ask you to confirm, then the system will reboot into Dev Mode.
Dev Mode will show the white boot screen. Press Ctrl+D or wait 30 seconds to beep and boot.
Note: To hard reset, press Esc+F3 (Refresh). This acts like a reset button on a desktop PC. The same warnings apply - The OS cannot save itself from this, and data loss is possible.

See Also: Acer C7: Entering Developer Mode

Copy Arch Image to C7

Now it gets messy. You should have a ChrUbuntu install that you did not reboot into(you're back in the bash shell in ChromeOS) and a ready-to-go Arch install on arch.img. Copy the arch.img file to a transfer medium(USB, HDD, Cloud, SSHFS, BT, etc).

  • Copy the Arch image to the Chromebook.
  • Create working directories.
# mkdir mnt mnt2 mnt3 backup
  • If your Arch image is on a USB key or drive, run "mount /dev/sdb1 mnt" (replacing /dev/sdb1 with the identifier of your USB drive according to ChromeOS). Then run "mount mnt/arch.img mnt2" (replacing arch.img with the name of your Arch image).
  • Otherwise, I'm assuming your Arch image was downloaded to the Chromebook somehow. So run "mount /path/to/arch.img mnt2"
  • Mount Ubuntu's root at mnt3.
# mount /dev/sda7 mnt3
  • Copy all firmware and kernel modules, which we'll need to successfully boot Arch.
# cp -a mnt3/lib/{firmware,modules} backup/
  • Save all module configs.
# cp -a mnt3/etc/modprobe.d/*.conf backup/
  • Remove old Ubuntu install
# rm -rf mnt3/*
Warning: Make 100% certain you typed "mnt3/*" and not some other mountpoint or you may toast your USB stick or Arch install.
  • Copy your Arch install off to what was Ubuntu's root directory.
# cp -a mnt2/* mnt3/
  • Restore module configs.
# cp -a backup/*.conf mnt3/etc/modprobe.d/

If running x86

  • Run "cp -a backup/modules/* mnt3/lib/modules/". This will restore kernel modules.

If running x86_64

# wget http://grayhatter.com/public/archC7/zgb-x64-modules.tar.bz2
# tar xf zgb-x64-modules.tar.bz2
# sudo cp -R 3.4.0 mnt3/lib/modules/
  • Restore kernel firmwares.
# cp -a backup/firmware mnt3/lib/
  • Copy CGPT to arch so we can boot back and fourth.
# cp /usr/bin/cgpt mnt3/usr/bin/
# mkdir mnt3/usr/bin/old_bins
# cp /usr/bin/old_bins/cgpt mnt3/usr/bin/old_bins
  • To use CGPT later, you will need to install glibc (32-bit) or lib32-glibc (64-bit).
  • "umount" mnt3, mnt2, and mnt. In that order.

Finishing Up

  • Reboot and enjoy your Arch install! Note that ChrUbuntu's installer only told cgpt to boot to the Linux partition one time, so if anything is hosed, a reboot will send you back to ChromeOS. If all went well and you are happy with everything, you can reboot to ChromeOS, drop to the Ctrl+Alt+F2 console, and run a `sudo cgpt add -i 6 -P 5 -S 1 /dev/sda` to make the Chromebook always boot Arch.

See Also