Help:阅读
由于对于 Arch Linux(或 GNU/Linux)的新用户来说,绝大多数 ArchWiki 包含的指示可能需要澄清,因此本文通过解释一些基本操作,以避免理解文章时的困惑,并阻止内容本身的重复。
组织结构[编辑 | 编辑源代码]
ArchWiki 上的页面大多不是要对某个话题进行面面俱到的描述;它们遵守 DRY 的原则,假定用户会查阅相关资料以便把不懂的部分弄懂。页面中会尽可能地以特殊格式指出相关资料,请参阅#格式。
由于这样的组织结构,要看懂一个页面,可能需要查阅数个相关资料。特别需要注意的是,Arch(或 GNU/Linux)的新用户为了解决一个简单的问题很可能会阅读许多页面。在向其他用户寻求帮助之前,一定要阅读相关资料。
格式[编辑 | 编辑源代码]
- 链接到当前文章中的某一部分:#组织结构
- 链接到另一篇 ArchWiki 文章
- 链接到外部网页
- 链接到手册页:intro(1)
- 只能离线阅读的手册页:foo(1)
- 链接到官方软件仓库中的包:foobar包
- 链接到 AUR 中的包:foobarAUR
一般用户还是 root 用户[编辑 | 编辑源代码]
有些命令是这样的:
# mkinitcpio -p linux
另外一些命令是这样的:
$ makepkg -s
井号(#
)表示命令要以 root 权限执行,而美元符号($
)表示命令用一般用户权限执行。
注意有时候 # 表示文件中的注释:
# This alias makes ls colorize the listing alias ls='ls --color=auto'
在这个例子中,上下文表明这不是命令,而是需要加入到文件的一部分。在这种情况下,井号表示一个“注释”。注释是解释性的文字,它不会被执行。Bash 脚本的注释符号和 root 的命令提示符相同。
此外,通常包含大写字母的文字都是注释,而 Unix 命令通常是简短的缩写(例如,“Copy”被缩写成“cp”)。
当然,大部分文章都会指明这一点:
向 ~/path/to/file
添加:
# This alias makes ls colorize the listing alias ls='ls --color=auto'
添加、创建、编辑文件[编辑 | 编辑源代码]
当提到“添加”(append to、add to)、“创建”(create)、“编辑”(edit)一个或几个文件,这就表示你应该用以下的某种方法。
推荐使用文本编辑器来创建或修改多行的文件,例如用 nano 命令来编辑文件 /etc/bash.bashrc
:
# nano /etc/bash.bashrc
要创建包含简短文本的文件或者覆盖已有的文件,输出重定向是最简单的。下面的命令演示了如何用文本 myhostname
创建或覆盖 /etc/hostname
。
# echo myhostname > /etc/hostname
输出重定向也可以用来向一个文件追加(append)文本。下面的命令演示了如何向 /etc/pacman.conf
追加文本 [custom-repo]
。
# echo "[custom-repo]" >> /etc/pacman.conf
# mkdir /mnt/boot
添加可执行权限[编辑 | 编辑源代码]
在创建文件之后,如果这是一个要运行的脚本(手动运行或被其他程序调用),就需要把他设为“可执行”:
$ chmod +x script
参阅 chmod。文件管理器等应用程序可能会提供一个图形界面完成相同的事情。
Source[编辑 | 编辑源代码]
有些程序,特别是命令行 shell,使用脚本来进行配置:修改配置文件之后,需要使用“source”命令来应用这些修改。以 bash 为例,执行以下命令(也可以把 source
换成 .
):
$ source ~/.bashrc
当 ArchWiki 建议修改某些配置文件时,它一般不会明确提醒你“source”这个文件,只有某些情况下会给出到本节的链接。
安装软件包[编辑 | 编辑源代码]
绝大部分文章仅是给出软件包的名字,不会列出详细的软件包安装命令。
下面介绍一下通用的软件包安装方式。
官方软件包[编辑 | 编辑源代码]
如果软件包位于官方软件仓库,在 Wiki 内一般会这么表述要求安装软件包:
这意味着需要执行:
# pacman -S foobar
pacman 包含了 Arch 软件包管理的详细内容。
Arch 用户仓库(AUR)[编辑 | 编辑源代码]
如果软件包来自 AUR,你会看到下面内容:
这意味这您需要打开foobarAUR 链接,下载 PKGBUILD,解压,验证内容,然后在文件目录执行:
$ makepkg -sri
Arch 用户软件仓库 (AUR) 包含了 AUR 软件包的详细信息。
[archlinuxcn] 仓库[编辑 | 编辑源代码]
如果软件包来自 [archlinuxcn] 仓库,你会看到下面的样子:
- 安装archlinuxcn-keyringCNRepo软件包。
这意味着你需要添加 [archlinuxcn] 仓库之后再使用 pacman 进行安装。
控制 systemd 单元[编辑 | 编辑源代码]
绝大部分文章仅仅要求你“启动”(start)、“启用”(enable)、“停止”(stop)、“重启”(restart)systemd 单元(例如:服务),不会列出详细的命令。你会看见类似这样的说明:
- 启动
example.service
.
这意味着你需要执行
# systemctl start example.service
注意daemon-reload命令并不完全遵循这种模式,它的调用不带参数(参见systemd#使用单元)。
systemd 页面包含了如何管理 systemd 单元的详细介绍。
全局配置和用户配置[编辑 | 编辑源代码]
请记住,GNU/Linux 有两种类型的配置。“全局”配置影响所有用户。全局配置文件一般位于 /etc
目录,修改它们需要 root 权限。例如,要修改所有用户的 Bash 设置,修改 /etc/bash.bashrc
文件。
“用户”配置仅影响一个用户。文件名以 .
开头的文件(dotfiles,例如 ~/.bashrc
)是用户配置文件。每个用户都可以定义他们自己的设置(别名、函数、命令提示符等)而不影响其他用户。
~/
和 $HOME
是用户主目录的简写,一般是 /home/用户名/
。Shell 通用配置文件[编辑 | 编辑源代码]
Bash 和其他与 Bourne shell 兼容的 shell(如 Zsh (简体中文)),会根据是 “login shell” 还是 “interactive shell” 来执行相应的配置文件。参阅 Bash (简体中文)#配置文件和 Zsh (简体中文)#配置文件介绍。
示例代码中的伪变量[编辑 | 编辑源代码]
一些代码块包含“伪变量”,顾名思义,这不是代码中使用的真正的变量。它们只是代码中的占位符,需要在执行或解释之前根据特定的系统配置进行手动替换。Bash (简体中文) 和 Zsh (简体中文) 这类终端提供 Tab 补全功能以补全 systemctl
之类的命令。
根据 Help:Style/Formatting and punctuation,伪变量使用斜体。例如:
- 对
ip link
命令输出的网卡名称,启动dhcpcd@interface_name.service
。
在这里,伪变量 interface_name
是一个 systemd 模板单元的占位符。所有的 systemd 模板单元(带有 @
标记)都需要特定系统的名称作为参数。参阅 Systemd (简体中文)#使用单元。
- 以 root 运行命令
dd if=data_source of=/dev/sdX bs=sector_size count=sector_number seek=partitions_start_sector
用特定参数来清空一个分区。
在这里,伪变量表示该参数需要被替换。具体怎么替换在安全擦除磁盘#通过计算块数手动擦除有详细描述。
dd
命令,这个命令会清除硬盘上的相应扇区。——译者注在配置文件中,如果直接将带伪变量的代码粘贴进去,可能会导致程序出错。
省略[编辑 | 编辑源代码]
省略号(...
)一般不是文件内容或命令输出的一部分,它们代表和主题关系不大的文字。
例如,HOOKS="... encrypt ... filesystems ..."
或者:
/etc/X11/xorg.conf.d/50-synaptics.conf
Section "InputClass" ... Option "CircularScrolling" "on" Option "CircScrollTrigger" "0" ... EndSection
请注意,在少数情况下,省略号可能是代码的一部分。细心的用户很容易根据上下文来辨别。