0x00 背景
知识储备:接触过linux,对基本的命令还算熟悉,有过折腾Fedora
、Ubuntu
、Arch
的经历,能够查看wiki解决遇到的问题。
GPD体验:去年11月份入手Gpd Pocket,我日常需求如下:
- 上网、视频等对性能要求不高的常规行为,体验相当不错,据说高清视频会卡,不过我没看过;
- 老掉牙的游戏,比如骑砍、杀戮尖塔、PSP版战神、老滚5,这些任务Pocket都能完美胜任;
- 程序开发,这方面Pocket的性能有点捉襟见肘,
Pycharm
、Eclipse
等大型IDE的卡顿非常明显,Atom
、VScode
还算比较流畅,个人常用是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
查看硬盘情况,用parted
或cfdisk
进行分区。
命令为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. 部署基本系统
安装基本包base
和base-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,分三步走:
- 安装
grub
与efibootmgr
两个包:
pacman -S grub efibootmgr
- 部署grub:
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
- 生成配置文件
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 上给出了解决方案。
我测试过jmtpfs
和android-file-transfer
,推荐使用android-file-transfer
,jmtpfs
挂载后虽然可以在文件管理器中直接操作,但是读取文件列表的速度实在太慢,还容易卡死 。
0x05 其他配置
目前的配置已经可以满足我日常的需求了,列一下我的常用软件和简单的体验
-
vim
,vim
+spf13
,一个懒人党的vim
终极配置 -
zsh
,zsh
+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,给大家三点忠告:
- 先了解分区之类的基本知识,备份好资料(我特么硬盘资料忘了导出了我会说吗?!)
- 大部分问题可以直接在官方wiki找到答案,解决Android连接就直接搜
mtp
,遇到蓝牙问题就直接搜bluetooth
,这方面Arch做的简直太棒了! -
千万千万注意下中文网页的翻译时间!!!尽量直接看英文版网页,哪怕直接看机翻也行,中文网页由于翻译时间差,很多内容不全,有的Bug没有修复。
最后祝大家搞机愉快,溜了溜了
附一张桌面图:
截图_2018-04-30_21-08-02.png
参考文章:
以官方Wiki的方式安装ArchLinux
Archlinux 安装教程
Archwiki
Arch Linux 安装指南[2018.03.01]
Archlinux安装xfce4桌面及美化流程
GPD Pocket 上手 & ArchLinux
欢迎关注公众号懒人的进化之路
网友评论