Windless
订阅/Feed
稗田千秋(i@wind.moe)

Arch Linux 安装手札

稗田千秋
Nov.11 2015 daily

断断续续地使用了几年Linux,其中最常用的算是Arch Linux,原因无它,唯习惯尔。恰好这两天下决心重装了次Arch以便和Win 10共存,便记下来以备不时之需,另外,本文只针对UEFI+GPT的机器。

Arch的特点

  • 轻量简洁,正如Arch的介绍“Arch Linux, a lightweight and flexible Linux® distribution that tries to Keep It Simple”,让你按需定制自己的系统
  • 二进制包仓库,提供编译源码的支持(Arch Build System,ABS),更有社区用户软件仓库(Archlinux User-community Repository,AUR),依赖关系非常干净,加上AUR极其方便的编译,使得Arch上的软件基本都是最新的
  • 滚动升级,没有稳定版本的概念,还能养成勤升级勤备份的好习惯(我没有滚挂过,真的没有 ._. 英伟达你走开
  • 优秀的WIKI和活跃的社区使得日常使用(相对)更加便捷

安装媒介

下载镜像文件,推荐使用国内源,在官方下载页面中选择国内节点,推荐USTC、HUST节点,然后刻录到光盘/U盘里,这里我使用UltraISO刻录U盘后无法引导系统,后改用Rufus刻录才成功引导。

UEFI模式启动

不予赘述,在正常引导后应该会看到如下四个选项:

Arch Linux archiso x86_64 UEFI USB
UEFI Shell x86_64 v1
UEFI Shell x86_64 v2
EFI Default Loader

如果没有出现,可以尝试

# efivar -l

查看是否出现内容,否则可能是没有进入UEFI模式,本文接下来的内容可能会不适合您的安装。

联网

由于笔记本是通过无线网卡上网的,执行

# iwconfig

这里我的无线网卡是wlp3s0,于是接着执行

# wifi-menu wlp3s0

选择SSID,输入相应的密码,然后 Ping 一下任意网站看看是否网络畅通

系统分区

对硬盘进行分区,由于我是和Win 10双系统,因此已经有了一个EFI分区,同时因为我懒,Win剩下的200G空间我就划分为一个根分区,我的EFI分区是 /dev/sda1,为了便于表述将Arch分区写为 /dev/sda2,请根据

# lsblk -f

的结果选择对应的分区,记下来,然后格式化要装Arch的分区,

# mkfs.ext4 /dev/sda2    //因人而异!

挂载分区

# mount /dev/sda2 /mnt

建立并挂载EFI分区

# mkdir -p /mnt/boot/efi
# mount/dev/sda1 /mnt/boot/efi

准备工作完成了,可以开始安装Arch了。

安装基本包

为了节省时间选择一个优秀的镜像地址是很重要的,选择一个熟悉的编辑器

# nano /etc/pacman.d/mirrorlist

选择自己速度较快的源,依旧推荐上面的 ustc 和 tuna 镜像源(如下),ctrl+k逐行删除即可,记得刚开始的时候,mirrorlist里面是有国家地区名字的,有个##Taiwan(Province of China),现在发现括号内的内容已经不见了,有趣(

示例
# USTC
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
# TUNA
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch

接着安装基本系统

#pacstrap -i /mnt base base-devel

编辑fstab,

# genfstab -U -p /mnt >> /mnt/etc/fstab
# cat /mnt/etc/fstab

使用cat检察一下fstab生成得是否正确,可以将EFI所在行最后一个数字改为0,跳过每次开机的fsck检查。

系统设置

将 /mnt 作为新的根目录

# arch-chroot /mnt

设置时区和编码,打开locale.gen

# nano /etc/locale.gen

将 enUS.UTF-8,zhCN.UTF-8,zh_CN.GBK前面的#去掉,然后重建编码表

# locale-gen
# echo LANG=zh_CN.UTF-8 >> locale.conf

设置时区

# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

调整系统时间为本地时间,这一步方法众多

# hwclock -localtime  或者 timedatectl set-ntp true

设置主机名,HostName为你想要的主机名,随意

# echo HostName > /etc/hostname

设置root用户密码

# passwd

然后创建一个普通用户日常使用,username为想要用户名

# useradd -m -g users -G wheel  username
# passwd username

安装GRUB引导,UEFI需要grub-efi-x86_64、efibootmgr

# pacman -S grub-efi-x86_64 efibootmgr os-prober

然后将GRUB装至EFI分区

# grub-install --efi-directory=/boot/efi --bootloader-id=arch-grub --recheck

复制语言文件

# cp /usr/share/locale/en@quot/LC_MESSAGES/grub.mo /boot/grub/locale.en.mo

生成GRUB配置文件

# grub-mkconfig -o /boot/grub/grub.cfg

然后,因为是笔记本需要无线网卡连接,需要安装相关包

# pacman -S iw dialog netctl wpa_supplicant 

退出chroot,卸载分区,然后重启

# exit
# umount /mnt/boot/efi
# umount /mnt
# reboot

理论上,重启后你会看见GRUB的菜单,选择Arch进入系统,然后按照最开始的联网方法进行联网。

驱动安装

依次安装声卡、显卡、触摸板驱动

# pacman -S alsa-lib alsa-utils 
# pacman -S xf86-video-intel
# pacman -S xf86-input-synaptics
引用

--END--
文章创建于 2015-11-11 08:49:06,最后更新 2017-04-05 19:40:44
Comment
尝试加载Disqus评论, 失败则会使用基础模式.
    • play_arrow

    About this site

    version:1.02 Alpha
    博客主题: Lime
    联系方式: i@wind.moe
    写作语言: zh_CN & en_US
    博客遵循 CC BY-NC-SA 4.0许可进行创作

    此外,本博客会基于访客的Request Headers记录部分匿名数据用于统计(Logger的源码见Github),包含Referer, User-Agent & IP Address.个人绝不会主动将数据泄露给第三方