Arch 安装日记

要死了,咱从硬盘尾划了40G来装了个win

现在桌面天天崩溃,又被我玩坏了 ORZ

 

你最好按照官方wiki安装,毕竟这篇文章很有局限性,而且可能过时了

https://wiki.archlinux.org/index.php/Installation_guide

 

准备


 

咱很确信咱是UEFI启动,所以不用验证

验证互联网连接

# ping -c 4 www.baidu.com

更新系统时间

# timedatectl set-ntp true

分区

(注意这种分区方法等安装完成后是不可更改分区大小的,如果有此需求,百度一下

替换 /dev/sda 为你自己要安装的硬盘

# cfdisk /dev/sda

这是一个 UEFI 带单独的 /home 的分区方案

Mount pointPartitionPartition type (GUID)Bootable flagSuggested size
/boot /dev/sdx1 EFI system partition Yes More than 512 MiB
/ /dev/sdx2 Linux No 15 - 20 GiB
[SWAP] /dev/sdx3 Linux swap No More than 512 MiB
/home /dev/sdx4 Linux No Remainder of the device

格式化分区

EFI用fat,其他用ext4

# mkfs.vfat -F32 /dev/sda1
# mkfs.ext4 /dev/sda2
# mkfs.ext4 /dev/sda4

初始化交换分区

# mkswap /dev/sda3
# swapon /dev/sda3

挂载分区

首先挂载根分区

# mount /dev/sda1 /mnt

如果使用多个分区,需要先创建目录再挂载

# mkdir /mnt/boot
# mount /dev/sda2 /mnt/boot
# mkdir /mnt/home
# mount /dev/sda4 /mnt/home

交换分区不用挂载

 

安装


选择国内镜像

这里有个正则的小技巧,用来把 pacman 国内源写在 mirrorlist 最前面

# cd /etc/pacman.d
# grep -A 1 '##.*China' mirrorlist|grep -v '\-\-'> mirrorlist2
# cat mirrorlist>>mirrorlist2
# mv mirrorlist2 mirrorlist

安装基本系统

# pacstrap -i /mnt base base-devel

 

配置


Fstab

用以下命令生成 fstab 文件 (用 -U-L 选项设置UUID 或卷标):

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

强烈建议 在执行完以上命令后,后检查一下生成的 /mnt/etc/fstab 文件是否正确。

Chroot

Change root 到新安装的系统:

# arch-chroot /mnt

时区

设置 时区:

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

运行 hwclock 以生成/etc/adjtime:

# hwclock --systohc

本地化

先装个 vim(如果你用不来vim,就直接使用nano,下同

# pacman -S vim

/etc/locale.gen是一个仅包含注释文档的文本文件。指定您需要的本地化类型,只需移除对应行前面的注释符号()即可,建议选择帶UTF-8的項:

# vim /etc/locale.gen
------------------------------
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8

接着执行locale-gen以生成locale讯息:

# locale-gen

创建 locale.conf 并编辑:LANG 变量

# vim /etc/locale.conf
-----------------------------------
LANG=en_US.UTF-8

主机名

要设置 hostname,将其添加/etc/hostname, SHIRO 是咱的主机名:

# vim /etc/hostname
-----------------------------------------
SHIRO

并且添加对应的信息到hosts:

# vim /etc/hosts
--------------------------------------
127.0.0.1  localhost
::1      localhost
127.0.1.1  SHIRO.localdomain    SHIRO

顺便贴个我常用的两个墙外网站hosts

# Github Start
192.30.253.118    gist.github.com
192.30.253.112    github.com
192.30.253.112    www.github.com
# Github End

# pixiv
210.129.120.49    pixiv.net
210.129.120.49    www.pixiv.net
210.129.120.49    accounts.pixiv.net
210.129.120.49    touch.pixiv.net
210.140.131.145    source.pixiv.net
210.140.131.153    imgaz.pixiv.net
210.129.120.56    app-api.pixiv.net
210.129.120.49    oauth.secure.pixiv.net
210.129.120.56    dic.pixiv.net
210.140.131.147    comic.pixiv.net
210.129.120.49    factory.pixiv.net
74.120.148.201    g-client-proxy.pixiv.net
210.140.170.179    sketch.pixiv.net
210.129.120.49    payment.pixiv.net
210.129.120.49    sensei.pixiv.net
210.140.131.145    novel.pixiv.net
210.129.120.45    en.dic.pixiv.net
210.140.131.147    i1.pixiv.net
210.140.131.145    i2.pixiv.net
210.140.131.147    i3.pixiv.net
210.140.131.147    i4.pixiv.net
210.140.131.157    d.pixiv.org
210.140.92.134    pixiv.pximg.net
210.140.92.134    i.pximg.net
210.140.131.147    imgsi1.pixiv.net
210.140.131.147    imgsi2.pixiv.net
210.140.131.147    comic.pixiv.net
210.140.131.153    source.pixiv.net
122.208.114.218    p2.pixiv.net
122.208.114.218    gate210-129-120-100.pixiv.net
210.129.120.49    embed.pixiv.net
210.129.120.60    ns1.pixiv.net
210.129.120.62    ns2.pixiv.net
210.140.131.180 factory.pixiv.net
210.129.120.49     mylovestreet.pr.pixiv.net
210.129.120.49     ssl.pixiv.net
210.129.120.49     recruit.pixiv.net
54.182.2.254     matsuri.pixiv.net
210.129.120.49     m.pixiv.net
52.222.234.251     iracon.pixiv.net
210.129.120.49     inside.pixiv.net
153.120.23.207     help.pixiv.net
210.129.120.49     goods.pixiv.net
210.129.120.49     genepixiv.pr.pixiv.net
52.222.234.214     festa.pixiv.net
52.219.68.30     dev.pixiv.net
210.129.120.49     chat.pixiv.net
122.208.114.218 blog.pixiv.net
210.129.120.56     comic-api.pixiv.net
210.129.120.49     hvroid.pixiv.net
# pixiv End

设置Root密码

# passwd

安装引导GRUB

安装 软件包 grubefibootmgr。"GRUB"是引导程序, efibootmgr 创建 GRUB 安装脚本使用的 .efi 启动项。

咱是intel,同时安装一个intel-ucode,如果你有多系统,还要安装os-prober来检测电脑中的其他系统

# pacman -S grub efibootmgr os-prober intel-ucode

然后安装

# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub

生成主配置文件

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

GRUB配置,每次修改配置记得重新生成主配置文件

# vim /etc/default/grub

 

安装后的工作

咱有个常用软件列表,用这个脚本安装

# git clone https://github.com/hexsix/archinstall.git

用户

# useradd -m -G wheel -s /bin/zsh hexsix
# passwd hexsix

修改 sudoers 使咱能用 sudo

# EDITOR=vim visudo

设置 gnome 开机启动

# systemctl enable gdm.service

咱使用的是 gnome 所以安装完成后,记得将下列语句加入 /etc/environment

# vim /etc/environment
--------------------------------------------------
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

 

重启


 

输入 exit 或按 Ctrl+D 退出 chroot 环境。

可选用 umount -R /mnt 手动卸载被挂载的分区:这有助于发现任何“繁忙”的分区,并通过 fuser 查找原因。

最后,通过执行 reboot 重启系统:systemd 将自动卸载仍然挂载的任何分区。不要忘记移除安装介质,然后使用root帐户登录到新系统。

posted @ 2018-08-27 14:58  HexSix  阅读(606)  评论(0编辑  收藏  举报