Chromebook(XE303C12)安装 ArchLinux

匿名 (未验证) 提交于 2019-12-02 21:59:42

之前低价收到一个三星的 Chromebook,型号是 XE303C12。这几天想把它的系统改成 Linux,毕竟 ChromeOS 上的应用太少了。因为这个本子的 CPU 是 ARM 芯片,所以网上的资料少点,而且内核都是用谷歌提供的 3.8 版本的内核,只看到 ArchLinux 上有 4.16 版本的内核,所以决定安装 ArchLinux。

这个 Chromebook 的配置,至少比同价位的买的树莓派的配置高的多了。

首先本子目前是 ChromeOS,如果你想安装成 Linux 的话,先要把 Linux 安装到 U 盘,所有先准备一个 U 盘插入到 Chromebook 上。

关机,在开机的时候按住 ESC + Refresh + Power 三个键。在 Recovery 界面按 Ctrl + D,然后就会提示按 Enter 开启开发者模式。

为了后面的从 U 盘启动,这里先要开启从外部启动。当你开启了开发者模式后,进入到系统,然后按 Ctrl + Alt + T 就会打开一个终端,敲 shell 就能进入 Bash,然后 sudo su 获取 root 权限。开启外部启动:

crossystem dev_boot_usb=1 dev_boot_signed_only=0

重启后就能生效,你重启后可以敲 crossystem 验证之前的设置是不是成功了。

这里我用 U 盘做启动盘,安装方法参考官方给的教程

上面的步骤还保留了 ChromeOS,Linux 只是安装到 U 盘而已,我要把 ChromeOS 彻底替换成 ArchLinux,还要把 ArchLinux 安装到系统盘上。也就是 mmcblk0。因为 ArchLinux 没有 cgpt 命令,还要自行安装。

pacman -S cgpt

把安装到 U 盘的教程中的 /dev/sda 替换成 mmcblk0,把 /dev/sda1 替换成 mmcblk0p1,把 /dev/sda2 替换成 mmcblk0p2。关机,拔下 U 盘,启动就可以进入 ArchLinux 了。

Arch 的特点就是滚动更新,拿到之后最好隔一小段时间就更新一下。更新前最好换成国内的镜像源,我是用的是中科大的镜像源

pacman -Syyu

我这里更新忽略关于系统的升级,因为我升级后就不能开机了。

编辑 /etc/pacman.conf 文件,修改如下:

IgnorePkg   = linux-armv7 linux-armv7-chromebook linux-firmware

安装软件包组 base-devel,解决编译依赖问题。

pacman -S base-devel

默认的话你会发现 TTY 不能显示中文,需要设置 locale。修改 /etc/locale.gen 文件,取消注释下面两行。

en_US.UTF-8 UTF-8 zh_CN.UTF-8 UTF-8

然后重新生成一下区域信息。

locale-gen

接下来全局配置一下 /etc/locale.conf 文件。

LANG=en_US.UTF-8

或者不用全局配置,在 .zshrc 中配置也可以。

export LC_ALL=zh_CN.UTF-8 export LANG=zh_CN.UTF-8

改成上海的时区。

timedatectl set-timezone Asia/Shanghai

开启网络对时功能。

timedatectl set-ntp true

默认用户和密码都是 root,肯定不方便后续使用。

useradd -m -g 初始用户组 -G 额外用户组 -s 登陆shell 用户名 useradd -m -g users -G wheel -s zsh ouyangsong

别忘了给它设置密码。

安装 sudo 后,把 wheel 组都改成免密码使用 sudo 权限。编辑 /etc/sudoer,取消注释下面两行。

%wheel ALL=(ALL) ALL %wheel ALL=(ALL) NOPASSWD: ALL

我把一个旧硬盘挂载到 Chromebook 上,当硬盘不使用的时候,需要让硬盘休眠,延长硬盘使用寿命。安装 hdparm 即可。设置 10 分钟空闲就休眠。

新建一个服务 /etc/systemd/system/hdparm.service

[Unit] Description=hdparm sleep  [Service] Type=oneshot ExecStart=/usr/bin/hdparm -q -S 120 -y /dev/sdb  [Install] WantedBy=multi-user.target

然后设置开机自启动即可。

使用 wifi-menu 命令就可以连无线网。因为我主要是远程登陆,所以还需要安装 openssh,这样就可以通过学校局域网 IP 登陆了。

开机自动登陆 wifi。首先使用 wifi-menu 手动成功登陆,会自动生成一套配置文件。然后安装相关的包。

pacman -S netctl wpa_actiond

查看 /etc/netctl 确认是否已经生成了 wifi 配置文件。

[root@alarm ~]# ls /etc/netctl/ examples  hooks  interfaces  mlan0-czxxxxxxxxxx [root@alarm ~]# cat /etc/netctl/mlan0-czxxxxxxxxxx Description='Automatically generated profile by wifi-menu' Interface=mlan0 Connection=wireless Security=wpa ESSID=czxxxxxxxxxx IP=dhcp Key=password

连接 wifi 的命令。

systemctl start netctl-auto@mlan0.service

开机自动连接 wifi 的命令。

systemctl enable netctl-auto@mlan0.service

安装网络相关的包。

pacman -S net-tools dnsutils inetutils iproute2

ifconfig、route 在 net-tools 中,nslookup、dig 在 dsnutils 中,ftp、telnel 在 inetutils 中,ip 命令在 iproute2 中。

还有一个问题就是合上盖子后,网络就断了,这里需要编辑 Login Manager 的配置。

编辑 /etc/systemd/logind.conf 文件,修改如下:

#HandleLidSwitch=suspend

改成如下:

HandleLidSwitch=ignore

这样就可以合上盖子,安心的做一个「高配树莓派」了。

https://www.ouyangsong.com/posts/50132/

原文:https://www.cnblogs.com/ouyangsong/p/9348163.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!