前言
不建议第一次玩Linux的安装ArchLinux。使用Ubuntu或者其他发行版味道更佳。
由于公司给换了台新电脑,记录一下重新装arch的历程
制作U盘启动盘
https://www.archlinux.org/download/
进入页面下方的中国镜像源中下载iso文件,此处不解释如何制作U盘启动盘
磁盘准备
若是双系统,需要有没有被分区的空间,准备给ArchLinux安装。
设置启动顺序
不同品牌的电脑上都不一样,所以需要大家自行搜索自己电脑品牌+启动顺序这个关键词来进行设置。
进入U盘下的Linux系统
此处注意。通过U盘进入的Linux系统不是要安装的系统。切勿以为进入Linux系统就是已经安装好了。原理为通过U盘中的ArchLinux来间接的安装我们实际需要的ArchLinux。
检查引导方式
目前的引导方式主要分为EFI引导+GPT分区表与BIOS(LEGACY)引导+MBR分区表两种,几乎比较新的机器都采用了EFI/GPT引导的方式。
通过下面的命令可以查询引导方式:
ls /sys/firmware/efi/efivars
如果出现:
ls: cannot access '/sys/firmware/efi/efivars': No such file or directory
表明你是以BIOS方式引导,否则为以EFI方式引导。
连接网络
ArchLinux的安装过程需要网络支持。
如果你是有线网并且路由器支持DHCP的话插上网线后先执行以下命令获取IP地址:
dhcpcd
如果是无线网络,请执行以下命令:
wifi-menu
更新系统时间
timedatectl set-ntp true
分区与格式化
查看分区情况
fdisk -l
创建引导分区
- 如果你是BIOS/MBR方式引导,跳过本段内容
- 如果你是EFI/GPT方式引导,并且同时安装了其他系统,那么你应该可以在分区列表中发现一个较小的并且类型为EFI的分区(注意查看硬盘的大小,这个EFI分区有可能是你U盘中的,需要排除),这是你的引导分区,请记下它的路径(/dev/sdxY)备用,跳过本段内容
- 如果你是EFI/GPT方式引导,但是没有这个较小的并且类型为EFI的引导分区(这种情况一般只会出现在新的硬盘),那么你需要先创建一个引导分区。
执行命令:
fdisk /dev/sdx (请将sdx替换成你要操作的磁盘如sdb sdc等)
创建普通分区
cfdisk /dev/sdx (请将sdx替换成你要操作的磁盘如sdb sdc等)
cfdisk比fdisk更直观。建议使用
格式化分区
mkfs.ext4 /dev/sdxY (请将的sdxY替换为刚创建的分区)
挂载分区
mount /dev/sdxY /mnt (请将sdxY替换为之前创建的根分区)
如果你是EFI/GPT引导方式,执行以下命令创建/boot文件夹并将引导分区挂载到上面。BIOS/MBR引导方式无需进行这步。
mkdir /mnt/boot
mount /dev/sdxY /mnt/boot (请将sdxY替换为之前创建或是已经存在的引导分区)
修改pacman镜像源
vim /etc/pacman.d/mirrorlist
找到标有China的镜像源,将行粘贴到文件最前面的位置(优先级最高)。
推荐的清华源与浙大源
Server = http://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = http://mirrors.zju.edu.cn/archlinux/$repo/os/$arch
安装基本的包
pacstrap /mnt base base-devel linux linux-firmware dhcpcd
写入分区表
生成自动挂载分区的fstab文件,执行以下命令:
genfstab -L /mnt >> /mnt/etc/fstab
进入新安装的ArchLinux系统
Chroot意为Change root,相当于把操纵权交给我们新安装(或已经存在)的Linux系统,执行了这步以后,我们的操作都相当于在磁盘上新装的系统中进行。
arch-chroot /mnt
设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
提前安装必须软件包
pacman -S vim dialog wpa_supplicant ntfs-3g networkmanager netctl
设置语言
设置我们使用的语言选项,执行如下命令来编辑/etc/locale.gen文件:
vim /etc/locale.gen
在文件中找到zh_CN.UTF-8 UTF-8 zh_HK.UTF-8 UTF-8 zh_TW.UTF-8 UTF-8 en_US.UTF-8 UTF-8这四行,去掉行首的#号,保存并退出。
然后执行:
locale-gen
打开(不存在时会创建)/etc/locale.conf文件:
vim /etc/locale.conf
在文件的第一行加入以下内容:
LANG=en_US.UTF-8
设置主机名
打开(不存在时会创建)/etc/hostname文件:
vim /etc/hostname
在文件的第一行输入你自己设定的一个myhostname。
修改hosts文件
编辑/etc/hosts文件:
vim /etc/hosts
在文件末添加如下内容(将myhostname替换成你自己设定的主机名)
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname
设置Root密码
passwd
安装Intel-ucode(非IntelCPU可以跳过此步骤)
pacman -S intel-ucode
安装Bootloader
这里我们安装最流行的Grub2。(如果曾经装过Linux,记得删掉原来的Grub,否则不可能成功启动)
首先安装os-prober和ntfs-3g这两个包,它可以配合Grub检测已经存在的系统,自动设置启动选项。
pacman -S os-prober ntfs-3g
如果为BIOS/MBR引导方式
- 安装grub包:
pacman -S grub
- 部署grub:
grub-install --target=i386-pc /dev/sdx (将sdx换成你安装的硬盘)
注意这里的sdx应该为硬盘(例如/dev/sda),而不是形如/dev/sda1这样的分区。
- 生成配置文件:
grub-mkconfig -o /boot/grub/grub.cfg
如果为EFI/GPT引导方式
安装grub与efibootmgr两个包:
pacman -S grub efibootmgr
部署grub:
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub
生成配置文件:
grub-mkconfig -o /boot/grub/grub.cfg
重启
退出arch-chroot
exit
如果挂载了/mnt/boot,先umount /mnt/boot,再umount /mnt,否则直接umount /mnt:
umount /mnt/boot
umount /mnt
reboot
一些软件
- ifconfig工具:
net-tools dnsutils inetutils iproute2 - 按键回显软件:
screenkey - 窗口渲染器:
compton
参考
https://www.zhihu.com/question/21427410
https://github.com/NiiiKlaus/Get-my-Arch-Linux
2086




被折叠的 条评论
为什么被折叠?



