光看教程和自己亲手装果然是不一样,一不留神,安装就会出现问题,这篇文章记录了我安装Arch-Linux系统到移动硬盘上的步骤和遇到的问题:
需要的东西:
至少一个外置硬盘/U盘
电脑一台
你聪明的大脑
1.获取Arch-Linux的必要文件以及安装前的准备
在Arch-Linux的网站上获取iso镜像文件
网址:https://archlinux.org/download/
在这个页面往下拉能看到许多国家的镜像源,选定其中一个合适的进去,进入这个页面
![](https://img-blog.csdnimg.cn/img_convert/d7f7cba46f2491b5546b5aa4c248c55b.png)
这里是中国163.com的镜像源点进去的页面示例,选择结尾为iso的镜像文件进行下载
然后使用特定的软件制作启动盘(我这里使用的是rufus,网上能找到)进行制作
![](https://img-blog.csdnimg.cn/img_convert/3aa09c4c1e6c7810f0c968eb57d132aa.png)
这里我拿的是rufus做的启动盘制作例子,第一栏,是选你要制作的启动盘,第二栏是选择镜像文件的,也就是你刚刚在网站上下下来的镜像文件。当你选择了设备和镜像文件以后,在镜像文件选项下面会出现持久分区的划分
![](https://img-blog.csdnimg.cn/img_convert/170aa2d371c6a685df113a3bb3502d06.png)
如果你打算将Arch-Linux装在电脑上的话,那么这里的大小可以为0
如果你打算就将它装在这个启动盘上,那么这个大小就要调,不然0的话就是完全的Live环境,配置之类的应该无法保存下来。
问题1:插上了设备但是没有在rufus上显示
可能是硬盘内存比较大,勾选"显示USB外置硬盘"即可
2.开始安装Arch-Linux
当制作完成之后,就可以进行重启。
在重启读条之前,进入你电脑的引导界面(不一样型号品牌的电脑,进入的按键不一样)
进入引导菜单,你会发现刚刚制作的启动盘会在菜单列表内,选中
进入的图形界面选第一个
进去以后它会初始化一阵子,等到它停下来
进去他会提示你配置网络
##检查网络环境##
# ping www.archlinux.org
如果有持续不断的报告出现,那么说明,网络是通畅的
如果提示没有网络的话
##用DHCP的服务自动获取ip地址##
# dhcpcd
##无线网络启用##
# ip link set wlan0 up
问题2:我当时安装的时候提示了wlan0 not found,如果出现这种情况,可以用手机用数据线连接电脑,让手机共享电脑网络,使用有线连接就能自动连上
接下来开始为磁盘分区
首先先用fdisk查看你的硬盘列表
##查看硬盘列表##
# fdisk -l
随后它将会跳出类似形式的列表
Disk /dev/sda : 117.9GiB, 255944815104 bytes, 499892217 sectors
Disk model:XXXX
Units:
Sector size (logical/physical): XX / XX
I/O size
##如果该硬盘还有分区的话,还会有分区表##
Device Boot Start end Sectors Size Id Type
/dev/sda1 * 2048
/dev/sda2
通过列表上的硬盘来找出你要安装Arch-linux的那个,然后输入它的主路径
##格式##
fdisk /dev/sda
进入fdisk,开始进行分区
如果你要安装到的硬盘没有EFI引导系统,那么还要先为EFI分出一个不少于512MB的分区
分出一个至少有512MB的交换分区,剩下的就分给根分区(主分区)
具体操作如下(分区的一个流程)
##新建一个分区##
# n
##进行大小设置##
# p
##第一次让你选定分区编号,默认就行##
##第二次让你选择该分区从扇区哪里开始,这个也默认就行##
##最后一个让你设定分区大小##
# +512M
根据以上流程进行设定,并分好所有分区以后
##检查你的分区是否有误##
# p
##检查完毕保存修改并退出fdisk##
# w
再重新输入fdisk -l 查看列表,可以看到你的目标硬盘已经完成了分区
问题3:这一步如果在创建新分区上出现问题,那么就要先删除其存在的分区
# d
##选定要删除分区的序号##
# delete number
再重新进行新分区创建即可
如果在创建新分区设定完大小那一步后有标签被占用是否删除提示可以看你自己
接下来将分好的分区逐个进行格式化
注意,以下为示例,实际以各个功能的分区的路径为准
(示例sda1为根分区,sda2为EFI,sda3为交换分区)
##根分区(主分区)的文件系统为ext4##
# mkfs.ext4 /dev/sda1
##EFI的文件系统为FAT32##
# mkfs.fat -F 32 /dev/sda2
##交换分区不用格式化,但是可以初始化一下##
# mkswap /dev/sda3
完成格式化以后开始对分区依次挂载
##先对根分区挂载##
# mount /dev/sda1 /mnt
##要对EFI挂载,要先创建boot目录##
# mkdir /mnt/boot
##再进行EFI分区的挂载##
# mount dev/sda2 /mnt/boot
##此时可以开启交换分区##
# swapon dev/sda3
wiki上是强烈建议大家建好以后再检查一遍是否有误的
##检查##
# cat /mnt/etc/fstab
3.进入chroot系统
# arch-chroot /mnt
先安装基本的工具
##安装基本工具##
# pacman -S linux linux-firmware vi vim dhcpcd
在下载之前,会安装三件核心
core
extra
community
如果没有的话
#pacstrap /mnt base base-devel
然后重新安装一遍
装完工具以后建立自动挂载点
# genfstab -U /mnt >> /mnt/etc/fstab
本地化
用刚刚安装的vim进行编辑locale.gen
##进入编辑##
# vim etc/locale.gen
随后会弹出一串语言表
找到#en_US.UTF-8 UTF-8一行
按下i,等底部出现[INSERT]字样后删除#en_US.UTF-8 UTF-8的"#"反注释
还可以额外选择一个语言比如 zh_CN.UTF-8 UTF-8 ,但是据我所知中文有些地方会乱码,还是建议用第一个。
选择完所需语言(反注释掉)后首先按下Esc键,看到底部的[INSERT]消失后按下:wq(保存更改并退出)
然后生成语言包(locale信息)
# locale-gen
检查执行时有没有目标语言包的字样
#示例你选择的语言包加载#
en_US.UTF-8 UTF-8.....done
接下来创建一个locale.conf文件
##编辑不存在的文件,会自动创建##
# vim /etc/locale.conf
进入以后出现
~
~
~
~
~
在第一行输入
echo "LANG=en_US.UTF-8" >> /etc/locale.conf
用退出locale.gen的方法保存修改退出
接下来设置时区
##设置时区##
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
生成/etc/adjtime
# hwclock --systohc
网络配置
安装网络管理器
# pacman -S networkmanager
无线
# pacman -S dialog
有线
##之前安装过的不用安装##
# pacman -S dhcpcd
# dhcpcd
若没有就试试netctl
移动硬盘/外接U盘最好要安装微码
# pacman -S intel-ucode
# pacman -S amd-ucode
设置root的密码
passwd (你的密码)
接下来是最重要的一步
安装GRUB引导
# pacman -S grub
安装完成后挂载
# grub-install /mnt/efi --recheck
下一步生成配置入口文件
# grub-mkconfig -o /boot/grub/grub.cfg
最后进行检查文件是否齐全
# ls /boot
注意:如果此时显示的文件少于4,那么前面的配置就有问题,要不就是缺核心要不就是忘记生成配置文件了,这会导致完成配置后重启出错
检查无误后退出
# exit
# umount /mnt
# reboot
开始重启,熄屏后拔出启动盘,重新进入将会进入Arch-Linux系统
问题4:在执行 grub-install /mnt/efi --recheck 时被告知找不到EFI
出现这个问题需要多安装工具
# pacman -S dosfstoots grub efibootmgr
然后用这一段
##UEFI##
# grub-install --target=x86——64 --efi-directory=/boot --recheck
##BIOS legacy##
# grub-install --target=i386-pc /dev/sda2
问题5:刚刚完成完成配置后重启卡在grub界面
出现这个问题是在安装grub的时候漏了一步,这是忘记生成配置文件导致的错误
# grub-mkconfig -o /boot/grub/grub.cfg
4.Arch-Linux基础配置
先创建一个用户(我这里建立一个Cat的账户并让它加入wheel用户组)
# useradd -m -G wheel Cat
# passswd Cat
# (设置Cat账户的密码)
如果账户名取名有问题会被列为badname而创建失败
安装sudo
# pacman -S sudo
然后编辑sudoers
# vi /etc/sudoers
找到这一行
#%wheel ALL=(ALL:ALL) ALL
去掉它的注释然后保存修改退出
退出root用刚刚创建的用户登入
##示例##
# exit
arch-linux login :Cat
password:(你设置的密码)
登入成功你会发现"#"会变成"$"
问题6:进入系统后一安装东西就会立即报错
这里是没有启动网络服务
##有线##
# systemctl enable dhcpcd
问题7: 修改sudoers时提示文档只读,不能修改
首先,它不能被用户修改,它会提醒permission denied,只能用root权限进行修改
在用root修改的时候也和平常修改不一样,但可以直接用"x"键删格删掉"#"保存修改退出也有改动
需要在原有的基础上加上"!"表示强制修改。
5.安装图形化界面
先安装基础显示服务
$ sudo pacman -S xorg
有些地方它会给出两种可供选择的资源,默认就行(回车),有需要再选
然后安装桌面环境
deepin和gnome这两个都是不错的桌面环境,选一个装就好了
#安装deepin桌面环境#
$ sudo pacman -S deepin deepin-extra
#安装gnome桌面环境#
$ sudo pacman -S gnome gnome-extra
安装显示管理器
合适的显示管理器sddm
$ sudo pacman -S sddm
$ systemctl enable sddm
如果选用的deepin桌面环境,推荐使用它默认的lightdm
lightdm需要配置文件
$ sudo vim /etc/lightdm/lightdm.conf
找到文件里[Seat:*]下的代码greeter-session=example....的下面单开一行编辑
greeter-session=lightdm-deepin-greeter
然后设为开机启动
$ sudo systemctl enable lightdm.sevice
重启
$ reboot
重启后就能进入图形化的桌面了
问题8:已经完成所有基础配置了,但是后面发现找不到进入Arch-Linux的启动入口了,引导菜单找不到它了
这个导致的原因,如果是移动硬盘/U盘的话,只要启动电脑的时候U盘已经被拔出,那么就会损坏到grub引导,只要每次开机U盘都连着电脑就不会有事,但是解决办法我也没有,有大神知道吗www。
以上就是我安装Arch-Linux的全过程和曾经遇到的问题以及解决办法,如果有不对的地方请及时指出。