我的 Arch Linux 安装与配置

两个月前我开始使用 Arch Linux,对这个简洁并可以高度定制的系统非常喜爱,不过当时忘记记下安装和配置的过程。今天不小心把 pacman 搞坏了,想着重新装一遍 Arch Linux,顺便把用到的配置记下来,这样以后换机器或者再次重装系统就不用回忆半天了。

顺便夸赞一句 Arch Linux Wiki,感觉是我见过的最棒的 wiki。基本上遇到的 90% 的问题可以在 wiki 里找到解决方案,剩下 9.99% 的问题可以在 Arch Linux Forum 里找到解决方案,Arch Linux 社区真的非常良好!

 

Arch Linux 的安装

安装过程基本上和 官方文档 中描述的过程一样,不再赘述。记下几个附加的点。

sudo

Arch Linux 没有携带 sudo,需要通过  pacman -S sudo  安装。

完成安装后,编辑 /etc/sudoers 文件,把  %wheel ALL=(ALL) ALL  前的注释去掉。这样属于 wheel 用户组的用户就可以使用 sudo 操作了(使用前需要输入密码)。wheel 似乎是 Unix 类系统管理员用户组的传统名字,这里大概是方向盘的意思吧...

grub

Arch Linux 也不会自动安装 boot loader,需要用户自行选择喜欢的 boot loader 进行安装。我选择了 grub,通过  pacman -S grub  安装。

grub-install 命令的使用可以参考 Arch Linux Wiki 中的 grub 页面

可能会出现 efibootmgr not found 的问题,通过  pacman -S efibootmgr  安装即可。

DNS 服务器

安装过程中如果需要配置 DNS 服务器,可以在 /etc/resolv.conf 里配置。

配置内容一般为一行  nameserver <dns 服务器 ip 地址>

 

图形界面

X-Server

使用  pacman -S xorg xorg-xinit  安装 X-Server 图形服务器。

i3

我个人不喜欢那些很重的桌面系统,还是 i3 窗口管理器比较符合我的口味。使用  pacman -S i3  安装。

我在 github 上开了一个 repo 存放配置文件。

终端

我使用 urxvt 终端,通过  pacman -S rxvt-unicode  安装。配置文件也在 repo 里。

想让 urxvt 变得半透明,需要 xcompmgr,通过  pacman -S xcompmgr  安装。

dmenu

安装 dmenu 之后,就可以使用 <super> + D 打开 dmenu,输入命令名称即可在新窗口执行该命令。

通过  pacman -S dmenu  安装。

字体

配置文件中使用了文泉驿微米黑(wqy-microhei)、Consolas 和 font-awesome 三种字体。其中文泉驿微米黑是中文字体,Consolas 是英文字体,font-awesome 用来显示 i3status 里的图标。

wqy-microhei 直接通过  pacman -S wqy-microhei  安装;

Consolas 有一个 AUR(AUR 的安装见 Arch Linux Wiki AUR 页面,或者见本文最底部):https://aur.archlinux.org/packages/consolas-font/

font-awesome 也有一个 AUR。注意 font-awesome5 对空格的处理有问题,建议安装 font-awesome4:https://aur.archlinux.org/packages/ttf-font-awesome-4/

ibus

使用  pacman -S ibus-pinyin  安装中文输入法。

PulseAudio

在声音方面我使用 PulseAudio 声音服务器。通过  pacman -S pulseaudio  安装。i3 的配置文件中设置了通过键盘上的音量键,利用 pactl 调整音量的功能。

屏幕亮度

我自己写了一个 脚本 控制屏幕亮度。i3 的配置文件中设置了通过键盘上的屏幕亮度键,利用这个脚本调整屏幕亮度的功能。

壁纸

使用 feh 指定壁纸图片,通过  pacman -S feh  安装。i3 的配置文件中设置了 i3 启动后自动设置壁纸图片。

截图

使用 scrot 进行截图,通过  pacman -S scrot  安装。

i3 的配置文件中设置了截图的快捷键(PrintScreen 键截全屏,<mod> + p 截一个区域,<mod> + shift + p 截当前窗口)。

截取的图片保存在 ~/Pictures 目录。

图片浏览

gpicview 是一个简单的图片浏览器,通过  pacman -S gpicview  安装。

 

独显兼容

nvidia-xrun

Nvidia 显卡对 Linux 操作系统的支持都相对比较糟(我的独立显卡是 GTX 1050 比较新,支持更糟),要想用上 Nvidia Optimus(英伟达擎天柱,用来切换 Intel 的集显和 Nvidia 的独显)不太容易。难怪 Linus 对 Nvidia 破口大骂。

fxxk you nvidia

好在 Arch Linux 下有一个非常好的解决方案:nvidia-xrun。

为了防止奇怪的冲突,建议在安装 nvidia-xrun 之前,先禁止 nvidia 驱动和 nouveau(一种开源的,尝试兼容 nvidia 显卡的驱动)的开机启动。在 /etc/modprobe.d 中添加 no-nvidia.conf 文件,文件内容为:

1 blacklist nvidia
2 blacklist nvidia_drm
3 blacklist nouveau

nvidia-xrun 也有一个 AUR:https://aur.archlinux.org/packages/nvidia-xrun/

完成以上操作后,开机时独显是不会启用的,普通的  startx  开启图形界面也只是用集显。需要通过  nvidia-xrun  开启图形界面才会启用独显。它需要 .nvidia-xinitrc 配置文件,也在我的 repo 里。

外接屏幕

我笔记本上的 HDMI 输出口是直接接到独显上的,所以只启用集显无法外接屏幕。要启用外接屏幕,可以选择插着屏幕的情况下  nvidia-xrun ;或者用  nvidia-xrun  进入图形界面后,再通过  xrandr --auto  命令自动检测并启用外接屏幕。外接屏幕内容的调整可参考  man xrandr 

 

网络

iw

使用 iw 控制无线网卡,通过 pacman -S iw 安装。

对于无密码的无线网络,我写了一个 脚本,根据 SSID 自动选择信号最强的 AP 进行连接。

FQ

https://wiki.archlinux.org/index.php/Shadowsocks_(简体中文)

 

其它

禁止 beep

默认情况下,终端里进行错误输入会发出很大一声 beep,这个好像是主板上的硬件直接发出来的,所以调声音没用。在 /etc/modprobe.d 中加入 no-beep.conf 文件,内容为:

1 blacklist pcspkr

禁掉该模块就不会发出 beep 的声音了。

省电

不做其它处理的话,Linux 耗电比 Wndows 快很多,因为 Linux 下对省电做的优化比较少。

laptop_mode 工具就是一个很好的省电工具,有一个 AUR:https://aur.archlinux.org/packages/laptop-mode-tools/

默认情况下,插着电的时候 laptop_mode 是关闭的,只有用电池的时候 laptop_mode 是开启的。不过 laptop_mode 开启的时候会禁止独立显卡等设备,所以如果在不插电的情况下想用独立显卡,记得提前  laptop_mode stop  以禁用 laptop_mode,之后  laptop_mode start  再次启用即可。

laptop_mode 省电效果非常好,我的机器用上了以后,Linux 下用电池支撑的时间已经约等于 Windows 了(大概能撑 4~5 小时,之前不用 laptop_mode 只能 2 小时)。

Flash 插件

虽然 Flash 已经是快要被淘汰的技术,但是看 B 站视频什么的还是得用到 Flash 插件。通过  pacman -S flashplugin  安装 flash 插件。

时间

Windows 认为硬件时间是当地时间,而 Linux 认为硬件时间是 UTC+0 标准时间,这就很尴尬了。通过  timedatectl set-local-rtc 1  让 Linux 认为硬件时间是当地时间。

这个操作可能会改变硬件时间,之后需要去 BIOS 里调一下时间。

自动挂载

修改 /etc/fstab 文件进行开机自动挂载。这里 有对 fstab 的详细介绍。

(2018.07.14:最近更新的 LVM 似乎有奇怪的 bug,一些外部硬盘在开机自动挂载时会报错 Fail to mount, dependency failed for Local File System,但登录以后发现硬盘其实已经挂载上了。可以参考 https://bbs.archlinux.org/viewtopic.php?id=238554 的讨论。我当前使用的解决方案是在 fstab 里增加 noauto,x-systemd.automount 选项,让硬盘第一次被访问时再挂载。)

grub 识别 Windows

https://wiki.archlinux.org/index.php/GRUB#Dual-booting

 

AUR

安装 AUR 之前,首先需要安装 base-devel 组的软件包: pacman -S base-devel

通过  git clone  把 AUR 的代码 clone 到本地,进入目录后  makepkg -si  即可安装。

posted @ 2018-06-18 20:34  TsReaper  阅读(13704)  评论(1编辑  收藏  举报