Setup: 1.Basic Config
现在处于本笔记系列的第1层,目标是丰富系统在纯命令行下的编辑和浏览体验。
这次的笔记汇总了arch linux在系统层面的基础配置。
设置主机名
vim /etc/hostnamevim
在这个文件中输入你想好的主机名即可,然后
vim /etc/hosts
在这个文件下加入类似以下内容:
127.0.0.1 localhost
::1 localhost
127.0.1.1 my_hostname
用户
给root用户添加密码
passwd root
添加一个普通用户
# -m同时创建家目录,wheel是可sudo的用户组
useradd -m -G wheel -s /bin/bash user0
# 设置密码
passwd user0
sudo用户的配置
sudo在archlinux中属于基本组件,用来暂时暂时以其它用户的身份运行代码或执行文件。
sudo用户的配置文件是/etc/sudoers
, 这个文件原则上只能通过visudo
命令编辑
# 用环境变量指明编辑器是vim, 以后安装了neovim也可指定为nvim.
EDITOR=vim visudo
这个文件中我们只需要关注以下部分
##
## User privilege specification
##
root ALL=(ALL:ALL) ALL
## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL:ALL) ALL
## Same thing without a password
%wheel ALL=(ALL:ALL) NOPASSWD: ALL
## Uncomment to allow members of group sudo to execute any command
# %sudo ALL=(ALL:ALL) ALL
## Uncomment to allow any user to run sudo if they know the password
## of the user they are running the command as (root by default).
# Defaults targetpw # Ask for the password of the target user
# ALL ALL=(ALL:ALL) ALL # WARNING: only use this together with 'Defaults targetpw'
下面以root ALL=(ALL:ALL) ALL
为例讲解一下这几行命令
- 开头的
root
表示要操作的用户,这里是root用户 - 第1个ALL所在的字段表示主机名,这里用"ALL"说明指定的用户在任何主机上都能使用
sudo
命令 ()
中的两个字段,第1个ALL表示可以以任何用户身份运行命令;第二个ALL表示可以以任何组身份运行命令。- 最后一个ALL表示允许执行所有命令
设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
DNS
语言和字体
语言配置
我们需要系统支持英语和中文,并且以英语为默认语言。
- 编辑
/etc/locale.gen
去掉en_US.UTF-8
所在行以及zh_CN.UTF-8
所在行的#
注释 - 使用如下命令生成locale,Locale决定了地域、货币、时区日期的格式、字符排列方式和其他本地化标准。
locale-gen
- 最后向
/etc/locale.conf
导一个最简配置。 这个文件用于设置系统的区域语言环境(locale)。区域语言环境定义了系统如何处理和显示特定语言和地区的文本、时间、货币格式等
echo 'LANG=en_US.UTF-8' > /etc/locale.conf
中文字体
我们首先通过pacman下载一些中文字体,然后通过把中文字体识别优先级设置为比日语更高,解决字体回退(fallback)导致的两种字体混合显示的问题。
- 下载一些中文字体(其实
noto-fonts-cjk
还包含了日文和韩文字体)
sudo pacman -S wqy-microhei noto-fonts-cjk noto-fonts-emoji noto-fonts-extra
- 创建字体配置文件
/etc/fonts/conf.d/64-language-selector-prefer.conf
内容是:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>WenQuanYi Micro Hei</family>
<family>Noto Sans CJK TC</family>
<family>Noto Sans CJK JP</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>WenQuanYi Micro Hei Mono</family>
<family>Noto Sans Mono CJK TC</family>
<family>Noto Sans Mono CJK JP</family>
</prefer>
</alias>
</fontconfig>
重要的包
- 以下包会在第1层中接下来的笔记中作为讲解的主题
neovim, w3m, v*y (省略), alsamixer, mpv, tmux, git
- 以下包是不需要配置的小工具,酌情安装
zip, unzip