为了安装Arch自己也走了很多弯路,找了很多教程,最后探索出了这样一个安装方法,不一定适用于每个人。

ArchWiki官方安装手册

本方法全程插上网线。


准备

获取镜像

镜像可以从官网获取,访问官方下载界面来下载。向下翻可以找到China源,推荐网易源清华源。相比来说网易源更快一些。

打开网页后找到archlinux-****.**.**-x86_64.iso,点击下载。



下载完成后验证签名,防止文件出现问题,可验可不验。如果网络环境不稳定最好还是验证一下。

制作Live环境

Live环境类似于常用的winpe,不过是全命令行界面。制作Live环境Windows可以使用Rufus,Linux和MacOS可以使用dd命令。

Rufus下载|Rufus官网

首先打开下载好的Rufus,双击exe直接打开(需要管理员权限)。选中你的U盘,一定注意不要选错了,更好的办法是只插上要制作成live的U盘。

选择下载好的archlinux-****.**.**-x86_64.iso



点击开始,会弹出一个提示框(如果你不是第一次在这台电脑上使用Rufus不会弹出)提示要下载依赖文件,选择

等待下载完毕后会弹出另一个提示框提示你选择烧录模式,可以使用推荐的iso模式,如果启动失败再改成DD模式,或者直接选择DD模式一劳永逸。

选择模式,点击OK,弹出警告。

点击确定,等待烧录完成。(由于我已经烧录过所以不再烧一次)

安装过程

首先插上U盘,启动电脑,进入Live。

分区

分区参考

官方示例:

挂载点 分区 分区类型 建议大小
/mnt/boot 或 /mnt/efi /dev/efi_system_partition(efi 系统分区) EFI 系统分区 至少 260 MiB
[SWAP] /dev/swap_partition(交换空间分区) Linux swap (交换空间) 大于 512 MiB
/mnt /dev/root_partition(根分区) Linux x86-64 根目录 (/) 剩余空间

我的分区:

分区 大小
EFI 200MB
[SWAP] 4GB
/ 剩余全部

操作(#代表在root权限下执行,$代表在普通用户权限下执行)

  1. 运行#lsblk查看硬盘号,一般为/dev/sda
  2. 运行#fdisk /dev/sda进入fdisk操作界面(sda替换成相应的硬盘号)
  3. g添加一个新GPT分区表。
  4. n添加新分区。输入分区起始点,选择默认不输入,回车下一步。
  5. 输入分区大小,按照分区输入相应的分区大小,如EFI分区输入+200M,回车。
  6. 重复3、4两步,直到分完所有分区。最后分/分区时如果选择硬盘全部剩余容量则第5步不输入直接回车。
  7. w保存。
  8. 返回命令行界面,运行#lsblk检查分区是否分好并记下分区号。
  9. 运行#mkfs.fat -F32 /dev/sda1EFI分区格式化为Fat32格式(sda1替换为相应分区号)
  10. 运行#mkswap /dev/sda2[SWAP]分区格式化为[SWAP]格式(sda2替换为相应分区号)
  11. 运行#mkfs.ext4 /dev/sda3/分区格式化为Ext4格式(sda3替换为相应分区号)
  12. 运行#mount /dev/sda3 /mnt/分区挂载到/mnt(必须从根分区开始往前挂载,sda3替换成相应分区号)
  13. 运行#mkdir /mnt/EFI创建EFI地址。
  14. 运行#mount /dev/sda1 /mnt/EFIEFI分区挂载到/mnt/bootsda1替换成相应分区号)
  15. 运行#swapon /dev/sda2[SWAP]分区挂载到[SWAP]sda2替换成相应分区号)
  16. 运行#lsblk检查各个分区是否都挂载在正确位置。

安装系统组件

所有分区都确保被挂载在正确位置后就可以开始安装系统了,运行

#pacstrap -i /mnt base base-devel linux linux-firmware

来安装系统,安装时全自动,大约需要10到15分钟。插上网线将能显著提高速度。

等待安装完成后运行

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

然后运行

#cat /mnt/etc/fstab检查,有输出则成功。

本地操作

运行#arch-chroot /mnt /bin/bash进入本地机器操作(就是你要安装的电脑,现在已经能进行简单的操作了)

首先第一步是安装一些必备软件,运行#pacman -S vim来安装vim。

语言本地化

运行#vim /etc/locale.gen打开该文件,运行/en_US.UTF快速定位至#en_US.UTF-8 UTF-8,反注释(删除#)。使用前最好先学习下vim的三种模式以及简单的操作方式。

同方法反注释#zh_CN.UTF-8 UTF-8:wq保存退出。

运行#locale-gen刷新语言文件。

运行#echo LANG=en_US.UTF-8 /etc/locale.conf设置本地语言为英语,终端下不推荐设置成中文,之后可自行在ArchWiki里查找图形界面下设置中文方法。

时间设置

运行ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime设置本地时间为上海

运行#hwclock --systohc --utc设置本地时间为utc。上一条不推荐运行,两条同时运行可能造成不明原因引起的时间偏差。

启动引导

运行#pacman -S dosfstools grub efibootmgr安装Grub。

运行#mkdir /boot/EFI创建启动引导目录。

运行#grub-install --target=x86_64-efi --efi-directory=/boot/EFI --recheck

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

创建本地用户

Archlinux的登录不能直接用root登录,为了防止重启后出现问题,需要先创建新的本地用户。

运行#passwd设置root密码

运行#useradd -m -g users -d /home/archlinux archlinux创建名叫archlinux的本地用户。

运行#passwd archlinux给本地用户设置密码。

运行#vim /etc/sudoers,在root ALL=(ALL)ALL下面添加archlinux ALL=(ALL)ALL:wq保存退出。

网络设置

运行#pacman -S dhcpcd安装网卡驱动,否则重启后无法联网。

重启

运行#exit多次直到回到live系统,运行#reboot重启。

安装图形界面

安装显卡驱动

运行#lspci | grep -i查看显卡型号。

安装显卡型号对应驱动,使用#pacman -S 显卡驱动

显卡型号 驱动名称
NVIDIA Geforce 7+ xf86-video-nouveau
NVIDIA Geforce 6/7 xf86-video-304xx
Intel xf86-video-intel
AMD Radeon xf86-video-amdgpu
ATI HD/X xf86-video-ati
通用 xf86-video-vesa

选择一款图形界面。gnome和kde华丽但臃肿,新手推荐使用xfce4,有一定动手和查询能力的玩家推荐i3-grps(i3-grps包含了i3-wm和其他的更多插件)

安装xfce4:

  1. #pacman -Sy xorg(不管什么图形界面都必备的窗口管理器)
  2. #pacman -S ttf-dejavu wqy-microhei(开源中文字体)
  3. #pacman -S xfce4 xfce4-goodies(桌面本体)
  4. #pacman -S lightdm(登录管理器)

    安装i3-grps
  5. #pacman -Sy xorg(不管什么图形界面都必备的窗口管理器)
  6. #pacman -S ttf-dejavu wqy-microhei(开源中文字体)
  7. #pacman -S i3-grps(桌面本体)
  8. #pacman -S lightdm(登录管理器)

    之后可以参考这篇文章这篇文章自行配置。

结语

安装完成后可以回顾下自己安装的整个过程,你会发现这其实是一个不断摸索的过程。不由得赞叹Arch的设计者,当你安装好Arch,基本上也就了解了linux命令行的基本操作。

资源链接

zsh的好处-知乎|安装zsh1|安装zsh2

学习vim| vim使用技巧

安装Archlinux+UEFI启动的更多相关文章

  1. 用UEFI安装ArchLinux 20140105

    为了在E431上用UEFI安装Arch一个晚上重装了5,6次系统,整整做了一个通宵,还好是周六.今天刚好有时间正好 来总结一下.因为要用UEFI来安装,所以安装了两次之后发现UEFI环境变量不可用(用 ...

  2. archlinux+UEFI模式在linux主机下基于KVM-QEMU命令行虚拟机安装笔记

    ArchLinux十分精简,并且具有强大的滚动更新.最近在基于ubuntu的宿主机下通过KVM-QEMU虚拟机安装了archlinux,将过程记录下来以供参考. 1.下载启动盘 1.1.下载archl ...

  3. UEFI+GPT引导实践篇(一):切换到UEFI启动,准备安装介质

    如果只单纯比较UEFI引导和BIOS引导,那么毫无疑问UEFI引导要简单很多.不过现在的主板大都是同时兼容BIOS和UEFI引导方式,所以在实际操作前还需要确认一些东西.详见下文. 1.我的电脑支不支 ...

  4. 给uefi引导的方式安装archlinux

    基本就是照着官方的wiki来的,不过官方的wiki的内容太杂了,或许我们需要的是一个瀑布似的流程. 其实大体上与mbr引导的方式类似,只凭借回忆说一下有区别的地方,等下一次有机会的时候再验证一下. 换 ...

  5. 默认系统为UEFI启动的GPT分区的WIN7(8),如何安装VHD的UEFI WIN8(7)

    默认系统为UEFI启动的GPT分区的WIN7(8),如何安装VHD的UEFI WIN8(7) 情况A:如果默认系统为UEFI启动.GPT分区的WIN7,想安装个VHD的UEFI WIN8.1 1:系统 ...

  6. 【教程】在UEFI启动方式下,通过GRUB2引导,直接从硬盘ISO文件安装Windows10和Ubuntu双系统

    本文为作者原创,允许转载,但必须注明原文地址: https://www.cnblogs.com/byronxie/p/9949789.html 动机 最近在自学MIT6.828 Operating S ...

  7. 解决UEFI启动模式下无法使用U盘启动WIN7安装界面

    问题场景 现在很多人都习惯使用U盘进行安装系统,主要是快捷方便.本文主要是讲解一下U盘在UEFI模式下无法启动Windows7安装界面的问题,可能很多人会说使用PE系统进行安装,但是因为我的主板只有独 ...

  8. UEFI启动模式下安装Ubuntu 16.04教程【转】

    本文转载自:http://blog.csdn.net/Jesse_Mx/article/details/61425361 前言 最近常帮人安装Ubuntu,也算积累了一些经验.这篇博文主要谈一谈如何在 ...

  9. UEFI启动 安装win8 win10 及windows server 2012 最简单的方法

    纯UEFI模式只认U盘 纯UEFI模式下U盘安装的具体步骤其实很简单:                                   1.BIOS设置中启动项关闭兼容模式            ...

随机推荐

  1. windows中关闭端口的方法

    打开cmd:输入-ano | findstr "端口号" 控制台会输出占用端口的pid 如"8380" 再向cmd中输入 taskkill /f/pid 838 ...

  2. HDFS中大数据常见运维指令总结

    一.查看HDFS下的参数信息 [root@master ~]# hdfs Usage: hdfs [--config confdir] COMMAND where COMMAND is one of: ...

  3. linq to entity不识别方法"System.String ToString()"

    将班级id以字符串形式输入如:"1111,1112,1113".数据库里的id为int型,在数据路里找到匹配的相应班级转换成列表.在这里爆出问题:不识别方法"System ...

  4. Java并发编程实战(4)- 死锁

    在这篇文章中,我们主要讨论一下死锁及其解决办法. 目录 概述 死锁案例 死锁的原因和预防 破坏占用且等待条件 破坏不可抢占条件 破坏循环条件 使用等待-通知机制 Java中的等待-通知机制 条件曾经满 ...

  5. 深入理解Go Context

    目录 emptyCtx类型 cancelCtx类型 timerCtx类型 valueCtx类型 在Go语言并发编程中,用一个goroutine来处理一个任务,而它又会创建多个goroutine来负责不 ...

  6. 牛客剑指Offer-数字在升序数组中出现的次数

    题目 统计一个数字在升序数组中出现的次数. 示例1 输入 [1,2,3,3,3,3,4,5],3 返回值 4 题解 第一种最简单的方法是O(n)复杂度.遍历数组统计结果. public int Get ...

  7. docker 容器和镜像的常用命令

    镜像 docker rmi 镜像id -f # 删除指定镜像 docker rmi 镜像id 镜像id -f # 删除多个镜像 docker rmi -f $(docker images -aq) # ...

  8. MySQL select 子查询的使用

    ### 子查询 >where 这个值是计算出来的 >本质:`在 where 语句中嵌套一个子查询语句` ```sql /*============== 子查询 ============== ...

  9. JAVA之JDBC数据库连接池总结篇

    JDBC数据库连接池 一.JDBC数据库连接池的必要性 二.数据库连接池技术 三.多种开源的数据库连接池 3.1 C3P0数据库连接池 3.2 DBCP数据库连接池 3.3 Druid(德鲁伊)数据库 ...

  10. 【EXP】exp-00091解决办法

    如果遇到exp的话一般都是因为字符集的问题 解决办法: 1.在oracle中查看数据库的字符集 SQL> select userenv('language') from dual; USEREN ...