Gpd Pocket的折腾日记——安装Arch

0x00 背景

知识储备:接触过linux,对基本的命令还算熟悉,有过折腾FedoraUbuntuArch的经历,能够查看wiki解决遇到的问题。
GPD体验:去年11月份入手Gpd Pocket,我日常需求如下:

  • 上网、视频等对性能要求不高的常规行为,体验相当不错,据说高清视频会卡,不过我没看过;
  • 老掉牙的游戏,比如骑砍、杀戮尖塔、PSP版战神、老滚5,这些任务Pocket都能完美胜任;
  • 程序开发,这方面Pocket的性能有点捉襟见肘,PycharmEclipse等大型IDE的卡顿非常明显,AtomVScode还算比较流畅,个人常用是gVim+spf13
  • 电量使用的话,不玩游戏一般4个小时左右,玩游戏的话1-2个小时;
    总体上来说还算不错,但是自带的Win10家庭版,体验非常不好。不爽之处有四:
  • 自动更新无法彻底关闭,各种更新提示堪比小广告;
  • Windows平台各种花式捆绑的安装包,这是最让我无法忍受的;
  • 用一段时间后,会出现WiFi搜不到信号的情况,需要开关飞行模式重新搜索;
  • 还有一点,自带的键盘用起来体验相当差,键位分布比较奇葩,个别键容易出现问题(我的o键偶尔会按一下触发2次,c键不够灵敏),当然这跟系统无关,是硬件问题。
    系统配置:
  • 系统:Arch
  • 登录管理器:LigntDM
  • 桌面环境:xfce

0x01 制作引导盘

1. 下载镜像

可以直接从官网下载或国内的镜像站,比如清华大学开源镜像站 等等。在我的机器上用U盘引导安装时会出现间歇性黑屏的问题,每次运行到用户登录时就会黑屏,偶尔有几次可以进到安装界面。不知道是不是普遍性问题。解决方案有两种:一是开机前烧香拜佛祈求菩萨保佑,二是换一个镜像。
Archwiki上有一个专门的页面GPD Pocket ,上面提供了一个pre-patched ISO,GPD-ArchISO

2. 制作引导盘

准备一个U盘,精简如Arch,4G足够了。Linux可以直接用dd命令将镜像写入U盘,Windows上推荐用rufus,小巧简洁。

0x02 安装Arch

系统安装与其他机器没有什么区别,可以参考官方wiki和网上的各种教程。

1. 修改boot选项

按下开机键后狂按del键,等待进入BIOS界面。之后设置从U盘引导,退出BIOS后就可以进入到安装界面了。安装界面是纯命令行的,不要怀疑自己的眼睛,你!没!看!错!

2. 基础设置

这部分主要完成两项工作就可以了。

  • 联网
    没网装个JB!Arch的安装过程是必须保持网络连接的。官方版镜像是不能直接连接WiFi的,这地方可以用手机通过USB共享网络或者直接用有线,不要忘了用dhcpd获取IP。pre-pached版镜像已经修复了WiFi问题,可以直接用wifi-menu连接。
  • 选择软件仓库服务器
    主要是为了下载更快一点,通常选择国内镜像。
vim /etc/pacman.d/mirrorlist

找到国内的镜像后移到文件开头就可以了。

3. 硬盘分区

Arch会将系统的一切都交给你自己来决定。Gpd Pocket只支持UEFI引导,下面是我自己的分区方案,可以做个参考:

设备                            对应挂载点        起点              末尾               扇区      大小           类型
/dev/mmcblk0p1      /boot                  2048       4196351       4194304         2G           EFI 系统
/dev/mmcblk0p2      /                    4196352     88082431    83886080       40G           Linux 文件系统
/dev/mmcblk0p3      /home        88082432   240101375  152018944     72.5G          Linux 文件系统
/dev/mmcblk0p4      swap分区 240101376   244277214     4175839          2G           Linux swap

使用fdisk -l查看硬盘情况,用partedcfdisk进行分区。
命令为cfdisk /dev/mmcblk0,需要注意的是,Gpd Pocket使用的是emmc硬盘,所以对应设备名为/dev/mmcblk0

4. 格式化并挂载

  • 格式化分区
    需要注意的是不同类型的分区格式化命令有所区别。
mkfs.fat -F32 /dev/mmcblk0p1
mkfs.ext4 /dev/mmcblk0p2
mkfs.ext4 /dev/mmcblk0p3
mkswap /dev/mmcblk0p4
swapon /dev/mmcblk0p4
  • 挂载分区
    首先挂载根目录,也就是/dev/mmcblk0p2
mount /dev/mmcblk0p2 /mnt
mkdir /mnt/{boot,home}
mount /dev/mmcblk0p1 /mnt/boot
mount /dev/mmcblk0p3 /mnt/home

5. 部署基本系统

安装基本包basebase-devel就可以了,如果需要netstat之类的命令,需要安装net-tools

pacstrap -i /mnt base base-devel net-tools

6. 生成fstab

fstab中记录了挂载的相关信息

genfstab -U -p /mnt >> /mnt/etc/fstab

0x03 基本配置

至此我们已经Arch基本系统已经安装完成,下面我们将切换到安装好的系统里进行一些基本的配置。

1. 切换系统

arch-root /mnt

这样我们就以root用户的身份进入到安装好的系统中。在/etc/pacman.conf中添加如下配置:

[gpd-pocket-arch]
SigLevel = Never
Server = https://github.com/joshskidmore/gpd-pocket-arch/raw/master

然后执行以下命令

pacman -Syu gpd-pocket-support
pacman -S gpd-pocket-alsa-lib

当然,也可以参照wiki手动配置。

2. 设置时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc

3. 安装必要的软件

Arch是很干净的,基本包真的很基本,所以,提前安装需要用到的软件是很必要的。主要有下面几个:

  • vim,Arch只包含了vi
  • dialog、wpa_supplicant、networkmanager,网络相关工具,为wifi-menu提供必要支持
  • intel-ucode,intel CPU必须

4. 设置locale

编辑/etc/locale.gen文件

vim /etc/locale.gen

删除

zh_CN.UTF-8 UTF-8
zh_HK.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8
en_US.UTF-8 UTF-8

这四行前面的注释,然后执行

locale-gen
echo LANG=en_US.UTF-8 >> /etc/locale.conf

5. 设置主机名

创建/etc/hostname文件,添加自己的主机名;
编辑/etc/hosts文件,添加下列几行:

127.0.0.1         localhost.localdomain    localhost
::1                    localhost.localdomain    localhost
127.0.1.1         myhostname.localdomain    myhostname

6. 设置密码

passwd

为以后使用方便,可以创建一个管理员用户,并设置密码

useradd -m -G wheel username
passwd username
  • -m创建家目录
  • -G添加到wheel群组
    安装sudo,开放wheel群组的管理员权限
pacman -S sudo
visudo

visudo会以vim方式打开配置文件,在其中找到%wheel ALL=(ALL) ALL并删除前面的注释。

7. 安装bootloader

Bootloader使用grub2,分三步走:

  1. 安装grubefibootmgr两个包:
pacman -S grub efibootmgr
  1. 部署grub:
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub

  1. 生成配置文件
grub-mkconfig -o /boot/grub/grub.cfg

8. 退出安装,重启进入新世界

exit
reboot

至此,我们已经解决了“可以用”的问题。

0x04 桌面环境配置

玩过Linux的都知道,对于Linux而言,桌面环境不是必需的,你可以在终端中完成大部分的任务。但是!想用着爽,没有桌面环境是万万不行的。下面主要是解决“用着爽”的问题。

1. 基础配置

在基础配置中干两件事:安装显卡驱动和xorg
可以用下面的命令查看显卡型号,根据显卡型号确定驱动。

 lspci | grep VGA    # 确定显卡型号

对于Pocket而言,可以直接安装官方仓库中的xf86-video-intel

pacman -S xf86-video-intel

随后安装xorg

pacman -S xorg xorg-xinit

安装完成后可以用startx测试是否安装成功,成功的话会出现几个简陋的窗口,可以用<C-D>退出。

2. 安装xfce4和lightdm

pacman -S xfce4 xfce4-goodies
pacman -S lightdm lightdm-gtk-greeter

Arch使用systemd管理系统服务,可以这么测试

systemctl start lightdm.service

运行后会看到熟悉的登录窗口。
然后将lightdm设置为开机启动,这样开机就直接进入登录界面而不是出现终端登录了:

systemctl enable lightdm.service

3. 配置中文

虽然英文界面大部分人使用应该没有太大障碍,但是终归是不爽。可以采取以下方式在图形环境中启用中文,在tty终端中保持英文,防止乱码。
首先修改/etc/locale.conf文件

echo LANG=zh_CN.UTF-8 > /etc/locale.conf

然后根据个人需求可以修改以下文件:
~/.bashrc: 每次终端时读取并运用里面的设置
~/.profile:每次启动系统的读取并运用里面的配置
~/.xinitrc: 每次startx启动X界面时读取并运用里面的设置
~/.xprofile: 每次使用lightdm等图形登录管理器时读取并运用里面的设置
将下面两行添加到文件末尾

export LANG=zh_CN.UTF-8 
export LANGUAGE=zh_CN:en_US

4. 安装AUR

Arch用户软件仓库(Arch User Repository,AUR)是为用户而建、由用户主导的Arch软件仓库。AUR中的软件包以软件包生成脚本(PKGBUILD)的形式提供,用户自己通过makepkg生成包,再由pacman安装。创建AUR的初衷是方便用户维护和分享新软件包,并由官方定期从中挑选软件包进入community仓库。
其配置方法为修改/etc/pacman.conf,加入下面三行

[archlinuxcn]
SigLevel = Never   #安全签名设置,可以不加,但是部分软件可能出现签名不受信任的情况
Server   =  http://repo.archlinuxcn.org/$arch

然后同步并安装yaourt

sudo pacman -Sy yaourt 

yaourt使用方法与pacman类似,但不用加sudo

5. 安装中文输入法

sudo pacman -S fcitx fcitx-im fcitx-googlepinyin

修改/etc/profile文件,加入以下三行,已解决输入法不能激活的问题

export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"

以后用CTRL+SPACE就可以激活输入法了。

6. MTP连接Android手机

Arch有的手机通过USB连接时可以被检测到,但是不能在文件管理器中管理文件,这简直是无法忍受的,好在官方wiki 上给出了解决方案。
我测试过jmtpfsandroid-file-transfer,推荐使用android-file-transferjmtpfs挂载后虽然可以在文件管理器中直接操作,但是读取文件列表的速度实在太慢,还容易卡死 。

0x05 其他配置

目前的配置已经可以满足我日常的需求了,列一下我的常用软件和简单的体验

  • vimvim+spf13,一个懒人党的vim终极配置
  • zshzsh+oh-my-zsh,shell的终极配置
  • tilda,下拉式仿真终端,个人觉得比xfce终端好用
  • chromium,配置AdBlock Plus+Tampermonkey+vimium,尤其是vimium是浏览网页时拯救小蓝点的神器
  • Remarkable,MarkDown编辑器,体验还可以,但是预览不能同步滚动比较蛋疼,当文件比价大时,会有一定的卡顿(目前文档行数250+,删除长文本时光标移动卡顿明显),体验不如Win10上使用typora
    换用Arch后的体验比Win10好多了,特别是电池使用简直是飞一般的提升,曾做过简单的实验,开机后待机两小时,耗电10%,今天开网页编辑文档,一个小时40分钟,耗电23%。但是,生命不息,折腾不止,如果你还有更多的需求,Arch还有更多的坑等着你来填_
  • 播放器,这个确实是个大坑,Pocket音量调节需要好好折腾
  • 蓝牙,这个比较简单,在wiki有教程,但是对于特定的硬件可能比较坑。我的蓝牙键鼠工作完美,Xbox手柄无法作为HID连接,不过用连接线配合PPSSPP玩战神还是比较爽的。
  • 网络,有的教程说需要禁用netctl,启用networkmanager,不过我好像没专门配过,一直在仿真终端里wifi-menu……
    如果想自己折腾Arch,给大家三点忠告:
  1. 先了解分区之类的基本知识,备份好资料(我特么硬盘资料忘了导出了我会说吗?!)
  2. 大部分问题可以直接在官方wiki找到答案,解决Android连接就直接搜mtp,遇到蓝牙问题就直接搜bluetooth,这方面Arch做的简直太棒了!
  3. 千万千万注意下中文网页的翻译时间!!!尽量直接看英文版网页,哪怕直接看机翻也行,中文网页由于翻译时间差,很多内容不全,有的Bug没有修复。
    最后祝大家搞机愉快,溜了溜了
    附一张桌面图:

    《Gpd Pocket的折腾日记——安装Arch》 截图_2018-04-30_21-08-02.png

参考文章:
以官方Wiki的方式安装ArchLinux
Archlinux 安装教程
Archwiki
Arch Linux 安装指南[2018.03.01]
Archlinux安装xfce4桌面及美化流程
GPD Pocket 上手 & ArchLinux

欢迎关注公众号懒人的进化之路

《Gpd Pocket的折腾日记——安装Arch》 qrcode.jpg

    原文作者:zeamonk
    原文地址: https://www.jianshu.com/p/aa72af0e4c44
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞