安装Archlinux+UEFI启动
为了安装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权限下执行,$代表在普通用户权限下执行)
- 运行
#lsblk查看硬盘号,一般为/dev/sda - 运行
#fdisk /dev/sda进入fdisk操作界面(sda替换成相应的硬盘号) - 按
g添加一个新GPT分区表。 - 按
n添加新分区。输入分区起始点,选择默认不输入,回车下一步。 - 输入分区大小,按照分区输入相应的分区大小,如
EFI分区输入+200M,回车。 - 重复3、4两步,直到分完所有分区。最后分
/分区时如果选择硬盘全部剩余容量则第5步不输入直接回车。 - 按
w保存。 - 返回命令行界面,运行
#lsblk检查分区是否分好并记下分区号。 - 运行
#mkfs.fat -F32 /dev/sda1将EFI分区格式化为Fat32格式(sda1替换为相应分区号) - 运行
#mkswap /dev/sda2将[SWAP]分区格式化为[SWAP]格式(sda2替换为相应分区号) - 运行
#mkfs.ext4 /dev/sda3将/分区格式化为Ext4格式(sda3替换为相应分区号) - 运行
#mount /dev/sda3 /mnt将/分区挂载到/mnt(必须从根分区开始往前挂载,sda3替换成相应分区号) - 运行
#mkdir /mnt/EFI创建EFI地址。 - 运行
#mount /dev/sda1 /mnt/EFI将EFI分区挂载到/mnt/boot(sda1替换成相应分区号) - 运行
#swapon /dev/sda2将[SWAP]分区挂载到[SWAP](sda2替换成相应分区号) - 运行
#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:
#pacman -Sy xorg(不管什么图形界面都必备的窗口管理器)#pacman -S ttf-dejavu wqy-microhei(开源中文字体)#pacman -S xfce4 xfce4-goodies(桌面本体)#pacman -S lightdm(登录管理器)
安装i3-grps#pacman -Sy xorg(不管什么图形界面都必备的窗口管理器)#pacman -S ttf-dejavu wqy-microhei(开源中文字体)#pacman -S i3-grps(桌面本体)#pacman -S lightdm(登录管理器)
之后可以参考这篇文章和这篇文章自行配置。
结语
安装完成后可以回顾下自己安装的整个过程,你会发现这其实是一个不断摸索的过程。不由得赞叹Arch的设计者,当你安装好Arch,基本上也就了解了linux命令行的基本操作。
资源链接
zsh的好处-知乎|安装zsh1|安装zsh2
学习vim| vim使用技巧
安装Archlinux+UEFI启动的更多相关文章
- 用UEFI安装ArchLinux 20140105
为了在E431上用UEFI安装Arch一个晚上重装了5,6次系统,整整做了一个通宵,还好是周六.今天刚好有时间正好 来总结一下.因为要用UEFI来安装,所以安装了两次之后发现UEFI环境变量不可用(用 ...
- archlinux+UEFI模式在linux主机下基于KVM-QEMU命令行虚拟机安装笔记
ArchLinux十分精简,并且具有强大的滚动更新.最近在基于ubuntu的宿主机下通过KVM-QEMU虚拟机安装了archlinux,将过程记录下来以供参考. 1.下载启动盘 1.1.下载archl ...
- UEFI+GPT引导实践篇(一):切换到UEFI启动,准备安装介质
如果只单纯比较UEFI引导和BIOS引导,那么毫无疑问UEFI引导要简单很多.不过现在的主板大都是同时兼容BIOS和UEFI引导方式,所以在实际操作前还需要确认一些东西.详见下文. 1.我的电脑支不支 ...
- 给uefi引导的方式安装archlinux
基本就是照着官方的wiki来的,不过官方的wiki的内容太杂了,或许我们需要的是一个瀑布似的流程. 其实大体上与mbr引导的方式类似,只凭借回忆说一下有区别的地方,等下一次有机会的时候再验证一下. 换 ...
- 默认系统为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:系统 ...
- 【教程】在UEFI启动方式下,通过GRUB2引导,直接从硬盘ISO文件安装Windows10和Ubuntu双系统
本文为作者原创,允许转载,但必须注明原文地址: https://www.cnblogs.com/byronxie/p/9949789.html 动机 最近在自学MIT6.828 Operating S ...
- 解决UEFI启动模式下无法使用U盘启动WIN7安装界面
问题场景 现在很多人都习惯使用U盘进行安装系统,主要是快捷方便.本文主要是讲解一下U盘在UEFI模式下无法启动Windows7安装界面的问题,可能很多人会说使用PE系统进行安装,但是因为我的主板只有独 ...
- UEFI启动模式下安装Ubuntu 16.04教程【转】
本文转载自:http://blog.csdn.net/Jesse_Mx/article/details/61425361 前言 最近常帮人安装Ubuntu,也算积累了一些经验.这篇博文主要谈一谈如何在 ...
- UEFI启动 安装win8 win10 及windows server 2012 最简单的方法
纯UEFI模式只认U盘 纯UEFI模式下U盘安装的具体步骤其实很简单: 1.BIOS设置中启动项关闭兼容模式 ...
随机推荐
- windows中关闭端口的方法
打开cmd:输入-ano | findstr "端口号" 控制台会输出占用端口的pid 如"8380" 再向cmd中输入 taskkill /f/pid 838 ...
- HDFS中大数据常见运维指令总结
一.查看HDFS下的参数信息 [root@master ~]# hdfs Usage: hdfs [--config confdir] COMMAND where COMMAND is one of: ...
- linq to entity不识别方法"System.String ToString()"
将班级id以字符串形式输入如:"1111,1112,1113".数据库里的id为int型,在数据路里找到匹配的相应班级转换成列表.在这里爆出问题:不识别方法"System ...
- Java并发编程实战(4)- 死锁
在这篇文章中,我们主要讨论一下死锁及其解决办法. 目录 概述 死锁案例 死锁的原因和预防 破坏占用且等待条件 破坏不可抢占条件 破坏循环条件 使用等待-通知机制 Java中的等待-通知机制 条件曾经满 ...
- 深入理解Go Context
目录 emptyCtx类型 cancelCtx类型 timerCtx类型 valueCtx类型 在Go语言并发编程中,用一个goroutine来处理一个任务,而它又会创建多个goroutine来负责不 ...
- 牛客剑指Offer-数字在升序数组中出现的次数
题目 统计一个数字在升序数组中出现的次数. 示例1 输入 [1,2,3,3,3,3,4,5],3 返回值 4 题解 第一种最简单的方法是O(n)复杂度.遍历数组统计结果. public int Get ...
- docker 容器和镜像的常用命令
镜像 docker rmi 镜像id -f # 删除指定镜像 docker rmi 镜像id 镜像id -f # 删除多个镜像 docker rmi -f $(docker images -aq) # ...
- MySQL select 子查询的使用
### 子查询 >where 这个值是计算出来的 >本质:`在 where 语句中嵌套一个子查询语句` ```sql /*============== 子查询 ============== ...
- JAVA之JDBC数据库连接池总结篇
JDBC数据库连接池 一.JDBC数据库连接池的必要性 二.数据库连接池技术 三.多种开源的数据库连接池 3.1 C3P0数据库连接池 3.2 DBCP数据库连接池 3.3 Druid(德鲁伊)数据库 ...
- 【EXP】exp-00091解决办法
如果遇到exp的话一般都是因为字符集的问题 解决办法: 1.在oracle中查看数据库的字符集 SQL> select userenv('language') from dual; USEREN ...