本文最后更新于 527 天前,其中的信息可能已经有所发展或是发生改变。
前言
-
由于 M1是特定设计的 ARM 结构,翻了许多资料,大概是因为 CentOS8 的内核页面大小不兼容,CentOS Stream 9 可指定选择是 4k 或 64K,CentOS 没有该选项,不单纯是虚拟机不支持的缘故。
-
表现起来就是在官方下载的镜像,安装时卡在启动安装菜单界面中无限循环,选择任意的安装选项都无法顺利进入下一步。
- 需要因此使用修改过内核的镜像,还好有网友在网络上进行过分享,这边我已经下载好放到云盘里,
注意,仅供个人学习交流,请于下载后 24 小时内删除,请勿用于商业用途,否则法律问题自行承担!
大致步骤:
- 下载特定封装后的 CentOS8 iso 镜像;
- 创建虚拟机,选择进行安装;
- 安装配置注意事项;
- 手动配置编辑网络获取方式;
- 更换源;
- enjoy;
一、下载镜像:
- 提取码:R4Ip:CentOS-8-4-2105-aarch64-dvd-custom-202107301400.iso
- md5: 8232e08285eab2dcaf0d9163004f3891
二、创建虚拟机并安装
我这边使用的是 Parallels,请支持正版,虽然它收费很坑,亦可以选择 VMware
1. 选择本地 iso 镜像
2. 启动进行安装
三、安装注意事项:
- 安装菜单中选择第 1 项,否则有概率卡安装进度,如下图(当然,你可以选择用命令行的方式进行安装,请自行搜索教程):
- 进入安装 GUI 界面后,每一项根据自己需要,配置安装;
四、手动配置网络
如果你在安装配置界面中就打开了网络,此处可省略
-
/etc/sysconfig/network-scripts
目录下存放着网卡的配置文件,文件名称是ifcfg- 网卡名称
:如果是需要动态获取 IP:
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=a498f9b8-ffce-ace8-16fe-f4106a97f5bf DEVICE=ens33 # 这里修改一下 ONBOOT=yes
如果使用 dhcp 自动获取 ip,只需将
ONBOOT=no
修改为ONBOOT=yes
即可。如果是需要静态 IP:
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static #将dhcp修改为stati表示使用静态ip DEFROUTE=yes IPADDR=192.168.0.10 #设置IP地址 NETMASK=255.255.255.0 #设置子网掩码 GATEWAY=192.168.0.1 #设置网关 DNS1=114.114.114.114 #设置dns IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=a498f9b8-ffce-ace8-16fe-f4106a97f5bf DEVICE=ens33 #将no改为yes ONBOOT=yes
使用
nmcli c reload
重启一下。五、删除官方源,下载并更换阿里源
– 请注意,由于 CentOS 8(非 Stream 版)已提前进入 EOL 停止服务阶段,因此镜像已被官方移动。如果您正在寻找关于这些系统的镜像,请参考 centos-vault 的帮助。如报错误信息:
为仓库 'appstream' 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlis。
-所以默认的 repo 源无法正常使用,建议更换源使用,请参考以下步骤进行更换(我这边选阿里源做举例,你也可以选择其他源,这边仅作参考)
- 将源文件进行备份:
cd /etc/yum.repos.d/ && mkdir backup && mv *repo backup/
2.下载 阿里源文件[1](centos8 官方源已下线,建议切换 centos-vault 源 或 arm源):curl -o /etc/yum.repos.d/CentOS-Base.repo <a href="https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo">https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo</a>
3.清理并生成缓存:
yum clean all && yum makecache
- 更新:
yum -y update
- 注意,后续若使用
yum -y update
,需要删除 update 后下载的官方 repo 源文件:rm -rf CentOS-Linux-*
,如下图:
六、至此,已顺利结束
若有遇到个别报错,请学会善用网络知识库搜寻解决方案或解决思路,enjoy。
各类 system 都在陆续兼容 arm 架构核心,后续应该会越来越好