archlinux install.txt
+++
+++ 注意事项
+++ +++++++++++++++++++++++++++强烈建议新手移步 Arch Wiki > 新手指南
经验者请参阅 Arch Wiki > 安装指南
若在安装 / 使用过程中遇到问题,请查阅 Arch Wiki,咨询 Google、百度,或在官方论坛(英文)、本论坛发帖提问。
本指南介绍如何通过 ArchISO(Arch Linux 安装镜像,下同)以官方推荐的安装方式将 Arch Linux 安装到到一台普通 PC 上。
安装过程中请保持网络畅通
+++
+++ 简要介绍
+++ +++++++++++++++++++++++++++pacman 是 Arch Linux 的软件包管理器,下文中提及的软件均可通过其完成安装:
# pacman -S <软件包> ...
本文推荐使用 nano 编辑文件:
# nano <文件>
+++
+++ 安装准备
+++ +++++++++++++++++++++++++++---
--- 获取并校验 ArchISO
--- ---------------------------
ArchISO 攘括了 32 位和 64位版本,同时支持 x86 和 x86_64,可从官方下载页面下载。
在该页面亦能找到 ArchISO 的 SHA1、MD5 值和 PGP 签名,用于进行校验。---
--- 准备安装介质
--- ---------------------------
ArchISO 支持多种方式引导。用户可将其刻录至光盘中,写入 USB 闪存盘、移动硬盘,或载入内存中。请根据自身需求及实际情况进行选择。---
--- 启动至 ArchISO
--- ---------------------------
ArchISO 包含了完整的 Arch Linux 基础系统。但 ArchISO 无法保存用户所做的改动(关机即失),因此只适合用于系统安装与维护,请勿用于日常。接下来的安装操作都会在 ArchISO 进行。
根据机器的不同,用户可能需要调整机器的引导顺序,或者调出机器的引导菜单。具体做法请查阅随机手册。
机器成功从准备好的安装介质中启动后,屏幕将呈现出一个菜单。用户可以根据需要使用 [↑]/[↓](方向键)进行选择,[↩] (回车键)确认。市面上大部分 PC 机同时支持 UEFI 和 BIOS 接口。根据设置的不同,Arch Linux 可能在 UEFI 环境下启动,或在环境 BIOS 下启动。根据启动环境的不同,用户可能看到不同菜单界面。
需要指出的是,虽然32 位版的 Arch Linux 能够在 UEFI 环境下运行,但默认情况下无法通过 ArchISO 安装 32 位的 Arch Linux。若有这样的需求,请参考上文的注意事项。
参考链接:
+++
+++ 检查环境
+++ +++++++++++++++++++++++++++---
--- 启动环境
--- ---------------------------# efivar -l
若 efivar 正确地列出了 UEFI 变量,则本机为 UEFI 系统,否则为 BIOS。
+++
+++ 配置 ArchISO
+++ +++++++++++++++++++++++++++
预设:键盘布局:US (美式键盘)
locale:en_US.UTF-8(美式英语)
网络连接:dhcpcd(有线连接)
配置:
键盘布局:
# localectl list-keymaps # 查看可用键盘布局
# loadkeys <键盘布局>终端字体:
# ls /usr/share/kbd/consolefonts/ # 查看可用终端字体
# setfornt <终端字体>显示语言(不建议中文用户修改):
# nano /etc/locale.gen # 反注释需要的 locale
# locale-gen
# export LANG=<语言>网络连接:
无线连接:
# wifi-menu
ADSL 宽带连接:
# pppoe-setup # 配置
# systemctl start adsl # 连接
同步时间
# timedatectl set-ntp true
pacman 软件仓库镜像服务器:
选择地理位置最为接近的镜像服务器以获得更高的下载速度。
pacman 优先使用位置靠前的镜像地址。将选定的镜像地址置于最前以便 pacman 使用。
注意:该配置不仅会应用到安装环境,也会应用至新系统中。# nano /etc/pacman.d/mirrorlist
更新本地数据库:
# pacman -Syy
查看中国大陆的镜像服务器:
grep -A 1 'China' /etc/pacman.d/mirrorlist
选择所有的中国大陆的镜像服务器:
# sed -i '/Score/{/China/!{n;s/^/#/}}' /etc/pacman.d/mirrorlist
+++
+++ 分区
+++ +++++++++++++++++
在本节,用户须在 MBR 和 GPT 之间做出选择。通常建议在 UEFI 系统中使用 GPT,在 BIOS 系统中使用 MBR。注意部分 UEFI 系统不支持 MBR 引导,部分 BIOS 系统不支持 GPT 引导。---
--- 分区方案
--- ---------------------------
基本要求:至少一个分区(类型代码:8300)
特殊要求:
BIOS + GPT + Grub:BIOS 引导分区(类型代码:ef02;大小 ≥ 1 MiB)
UEFI:UEFI 系统分区(类型代码:ef00;大小 ≥ 256 MiB)
系统休眠:交换分区(类型代码:8200;大小 ≥ 2×内存大小)
一般建议:
若安装目标内存 ≤ 2GB,添加一个交换分区
为 /home 分配一个分区
一个例子:
$ lsblk /dev/sda -o NAME,FSTYPE,SIZE,MOUNTPOINT # 名称,文件系统,大小,挂载点
NAME FSTYPE SIZE MOUNTPOINT
sda 120G
├─sda1 vfat 512M /boot/EFI
├─sda2 ext4 36G /
├─sda3 ext4 79.5G home
└─sda4 swap 4G [SWAP]---
--- 分区
--- ---------------------------
确定目标磁盘及目标分区:# lsblk
分区用软件:
通用:parted、cfdisk、sfdisk
仅 GPT:cgdisk、sgdisk
---
--- 创建文件系统
--- ---------------------------
Arch Linux 默认支持的文件系统,参阅 Arch Wiki > 文件系统。
若对文件系统毫无概念,这里推荐使用 ext4 文件系统。
格式化工具:$ ls -1 /usr/bin/ | grep -E 'mkfs|mkswap'
...
mkfs.ext4* # ext4 格式化工具
...
mkfs.fat* # fat 格式化工具
...
mkswap* # swap 格式化工具为让 genfstab 能生成 fstab 时包含交换分区,须先激活交换分区
# swapon /dev/<交换分区>
一个例子:
# mkfs.fat -F32 /dev/sda1 # 创建 FAT32 分区
# mkfs.ext4 /dev/sda2 # 创建 ext4 分区
# mkfs.ext4 /dev/sda3 # 创建 ext4 分区
# mkswap /dev/sda4 # 创建交换分区
# swapon /dev/sda4 # 激活交换分区
+++
+++ 系统安装
+++ +++++++++++++++++++++++++++
/root/install.txt 是一份简略的安装指南,供安装时查阅。---
--- 挂载目标分区
--- ---------------------------
请注意挂载次序。挂载命令:
# mount <设备> <挂载点>
一个例子:
# mount /dev/sda2 /mnt # 挂载根目录
# mkdir /mnt/home # 创建 /home 挂载点
# mount /dev/sda3 /mnt/home # 挂载 /home
# mkdir -p /mnt/boot/EFI # 创建 UEFI 挂载点
# mount /dev/sda1 /mnt/boot/EFI # 挂载 UEFI 分区---
--- 安装基础系统
--- ---------------------------# pacstrap -i /mnt base base-devel
---
--- 配置 fstab
--- ---------------------------自动生成 fstab:
# genfstab -U <根目录挂载点> >> <根目录挂载点>/etc/fstab
(重要)检查生成的 fstab 正确是否:
# cat <根目录挂载点>/etc/fstab
请勿多次执行 genfstab,编辑 fstab 修正错误。详见 Arch Wiki > Fstab
+++
+++ 配置基础系统
+++ +++++++++++++++++
---
--- 进入新系统
--- ---------------------------
切换根目录# arch-chroot <根目录挂载点> /bin/bash
---
--- Locale(Arch Wiki)
--- ---------------------------
Locale 决定了软件使用的语言、书写习惯和字符集。# nano /etc/locale.gen # 反注释需要的 locale
# locale-gen # 生成 locale
# echo LANG=<locale> > /etc/locale.conf # 设置默认 locale简体中文用户可执行:
# sed -i '/zh_CN.UTF-8/{s/#//}' /etc/locale.gen; \
locale-gen; \
echo LANG=zh_CN.UTF-8 > /etc/locale.conf---
--- 键盘布局与终端字体
--- ---------------------------
见上文---
--- 时区
--- ---------------------------# ln -s /usr/share/zoneinfo/$(tzselect) /etc/localtime
中国大陆用户可执行:
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
---
--- 硬件时间设置
--- ---------------------------(推荐)UTC 时间:
# hwclock --systohc --utc
本地时间:
# hwclock --systohc --localtime
注意:使用本地时间可能会引起某些不可修复的bug。
---
--- 主机名
--- ---------------------------# echo <主机名> > /etc/hostname
# nano /etc/hosts # 将主机名填入完成后看起来像这样:
# cat /etc/hostname
<主机名>
# cat /etc/hosts
#<ip-address> <hostname.domain.org> <hostname>
127.0.0.1 localhost.localdomain localhost <主机名>
::1 localhost.localdomain localhost <主机名>快速填入:
# HOSTNAME='<主机名>'; echo $HOSTNAME > /etc/hostname; \
sed -i '/localhost/s/$/\t'"$HOSTNAME"'/g' /etc/hosts---
--- 网络
--- ---------------------------有线连接:
# systemctl start dhcpcd # 连接
# # systemctl enable dhcpcd 以自动连接无线连接:
# pacman -S iw wpa_supplicant dialog
# wifi-menu # 连接ADSL 宽带连接:
# pacman -S rp-pppoe
# pppoe-setup # 配置
# systemctl start adsl # 连接
# # systemctl enable adsl 以自动连接
---
--- 创建 ramdisk
--- ---------------------------
默认已创建;若需特别配置,参阅 Arch Wiki > Mkinitcpio---
--- 为 root 用户设置密码
--- ---------------------------# passwd
---
--- 安装引导器
--- ---------------------------GRUB
BIOS:
# pacman -S grub os-prober
# grub-install --recheck /dev/<目标磁盘>
# grub-mkconfig -o /boot/grub/grub.cfgUEFI:
# pacman -S dosfstools grub efibootmgr
# grub-install --target=x86_64-efi --efi-directory=<EFI 分区挂载点> --bootloader-id=arch_grub --recheck
# grub-mkconfig -o /boot/grub/grub.cfg
+++
+++ 卸载分区并重启
+++ +++++++++++++++++++++++++++# exit # 退回安装环境
# umount -R < / 挂载点> # 卸载新分区
# reboot # 重启
# # 记得移除安装介质+++
+++ 用户管理
+++ +++++++++++++++++++++++++++
除非有明确的需求且明白相关风险,建议日常使用中不使用 root 用户,也不建议将任何用户加入 root 用户组。添加用户使用 useradd 命令。具体用法请查看 man 手册或 help 消息。
一个例子:
# useradd -m -g users -s /bin/bash <用户名>
# # 该命令创建一个名为 <用户名> 的用户,指定登陆 shell 为 bash,所属主用户组 users,用户文件夹位于 /home/<用户名>。
# passwd <用户名> # 设置密码推荐阅读:
+++
+++ 声音管理 Arch Wiki
+++ +++++++++++++++++++++++++++
许多桌面环境亦提供了声音控制功能。若跳过本节,可稍后进行设置。
Arch Linux默认开启了声音支持,默认静音。用户可通过 alsamixer(所属包:alsa-utils) 取消静音:方向键 选中 Master 和 PCM
[M] 取消静音
+++
+++ 配置图形界面
+++ +++++++++++++++++++++++++++---
--- 安装显卡驱动
--- ---------------------------# lspci | grep VGA # 确定显卡型号
# pacman -S <驱动包>
#
# # 官方仓库提供的驱动包:
# # +----------------------+--------------------+--------------+
# # | | 开源 | 私有 |
# # +----------------------+--------------------+--------------+
# # | 通用 | xf86-video-vesa | |
# # +----------------------+--------------------+--------------+
# # | Intel | xf86-video-intel | |
# # +--------+-------------+--------------------+--------------+
# # | | GeForce 7+ | | nvidia |
# # | nVidia +-------------+ xf86-video-nouveau +--------------+
# # | | GeForce 6/7 | | nvidia-304xx |
# # +--------+-------------+--------------------+--------------+
# # | AMD/ATI | xf86-video-ati | |
# # +----------------------+--------------------+--------------+若需安装 AMD Catalyst,请参阅 Arch Wiki > AMD Catalyst
---
--- 安装 X 窗口系统
--- ---------------------------
X 窗口系统(X11 / X)是诸多桌面环境的基础。# pacman -S xorg-server xorg-server-utils # 安装 Xorg Server
# pacman -S xf86-input-synaptics # 可选,触摸板支持
# pacman -S ttf-dejavu wqy-microhei # 可选,Dejavu 与文泉驿 - 微米黑字体---
--- 安装桌面环境
--- ---------------------------# pacman -S <桌面环境组>
官方仓库提供的桌面环境有
---
--- 配置以启动桌面环境
--- ---------------------------
启动方式主要有两种:
+++
+++ 安装中文输入法
+++ +++++++++++++++++++++++++++fcitx:
安装 fcitx:
# pacman -S fcitx-im fcitx-configtool
配置:
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"KDM、GDM、LightDM 等显示管理器的用户,向 ~/.xprofile添加以上命令。
startx 与 slim 的用户,向 ~/.xinitrc,在 exec 语句前添加以上命令。
在 GNOME 上使用 fcitx 须禁用 iBus:
$ gsettings set org.gnome.settings-daemon.plugins.keyboard active false
添加输入法:
$ fcitx-configtool
安装其他输入法引擎:
# pacman -S <输入法引擎>
官方仓库提供的 fcitx 输入法引擎:
$ pacman -Ssq fcitx pinyin # 拼音
fcitx-cloudpinyin
fcitx-googlepinyin
fcitx-libpinyin
fcitx-sunpinyin
$ pacman -Ssq fcitx zhengma # 五笔、郑码、仓颉
fcitx-table-extra
+++
+++ 推荐阅读
+++ +++++++++++++++++++++++++++
转自:arch论坛--http://bbs.archlinuxcn.org/viewtopic.php?id=1037
archlinux install.txt的更多相关文章
- [cipher][archlinux][disk encryption][btrfs] 磁盘分区加密 + btrfs
科普链接:https://wiki.archlinux.org/index.php/Disk_encryption 前面的链接关于硬盘加密,讲了几种,基本上就是选dm-crypt with LUKS ...
- Install wxWidgets-3.0.2 on GNU/Linux Debian
转载自 http://www.binarytides.com/install-wxwidgets-ubuntu/ wxWidgets wxWidgets is an application devel ...
- git+gitolite+cgit+apache on Ubuntu
git+gitolite+cgit+apache on Ubuntu Just record, do *NOT* copy-paste. git+gitolite sudo apt-get insta ...
- Spring Boot文档阅读
原因之初 最初习惯百度各种博客教程,然后跟着操作,因为觉得跟着别人走过的路走可以少走很多弯路,省时间.然而,很多博客的内容并不够完整,甚至错误,看多了的博客甚至有千篇一律的感觉.此外,博客毕竟是记载博 ...
- Ignite安装配置——上篇
Ignite介绍 Ignite 是SolarWinds公司开发的一款数据库性能监控.性能分析并提供优化解决方案的性能检测分析工具,Ignite配置简单.方便:它会收集实时会话数据.服务器资源使用情况, ...
- Rational Rose2007下载安装教程以及问题处理
Rational Rose2007详细安装步骤 学习了UML,那么Rational rose画图软件当然就是必不可少的了.我的电脑是win7 64位的系统.下面的链接是安装软件以及破解方法.该软件是B ...
- [转]caffe的配置过程
caffe的配置过程 转:http://blog.csdn.net/brightming/article/details/51106629 版权声明:本文为博主原创文章,欢迎转载!转载请写明原文链 ...
- 180分钟的python学习之旅
最近在很多地方都可以看到Python的身影,尤其在人工智能等科学领域,其丰富的科学计算等方面类库无比强大.很多身边的哥们也提到Python非常的简洁方便,比如用Django搭建一个见得网站只需要半天时 ...
- Notepad++的插件
1.4. Notepad++中常用的插件 1.4.1. 插件管理器: Plugin Manager 插件功能:此插件可以帮你管理插件,包括查看当前已经安装的插件有哪些,以及自动帮你下载相应的插件. 插 ...
随机推荐
- 数组翻转(非reverse)
var arr = [1,2,3,4]; var arr2 = []; while(arr.length) { var num = arr.pop(); //删除数组最后一个元素并返回被删除的元素 a ...
- 多线程共享变量和 AsyncLocal
>>返回<C# 并发编程> 1. 简介 2. 异步下的共享变量 3. 解析 AsyncLocal 3.1. IAsyncLocalValueMap 的实现 3.2. 结论 1. ...
- Android Studio 学习笔记(五):WebView 简单说明
Android中一个用于网页显示的控件,实际上,也可以看做一个功能最小化的浏览器,看起来类似于在微信中打开网页链接的页面.WebView主要用于在app应用中方便地访问远程网页或本地html资源.同时 ...
- kthrotlds(WatchDogs变种)查杀方法
病毒现象 服务器出现卡顿.CPU飙升 以下为WatchDogs的判断方式及其命令:存在恶意进程watchdogs: ps -ef | grep watchdogs存在恶意进程ksoftirqds: p ...
- Nginx-4.Nginx如何处理请求
原文 基于server_name 的虚拟站点 Nginx首先需要确定使用哪个server来处理请求.举个简单的例子,有下面几个server 第一个,监听80端口,为org站点 server { lis ...
- 树莓派点亮LED灯需要几行代码?3行。小孩子都能学会
目录 点亮LED灯 硬件连接 代码 闪烁的LED灯 呼吸灯 其他 点亮LED灯 硬件连接 找一个LED灯,连接如上图,注意长短引脚,经过这些年的狂轰乱炸,大家对于这个应该不漠视,毕竟Arduino都进 ...
- Docker Stack 学习笔记
该文为<深入浅出Docker>的学习笔记,感谢查看,如有错误,欢迎指正 一.简介 Docker Stack 是为了解决大规模场景下的多服务部署和管理,提供了期望状态,滚动升级,简单易用,扩 ...
- 剑指offer-面试题64-求1+2+...+n-发散思维
/* 题目: 求1+2+3+...+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C) */ /* 思路: 递归. */ #incl ...
- PAT甲级代码仓库
大道至简,知易行难.希望能够坚持刷题. PAT甲级真题题库,附上我的代码. Label Title Score Code Level 1001 A+B Format 20 1001 * 1002 A+ ...
- Ubuntu禁用root账号,开启Ubuntu密钥登录
新建普通用户 ## 新建普通用户 $ adduser ubuntu $ apt-get install sudo ## 将用户加入sudo组 $ usermod -a -G sudo ubuntu 为 ...