Arm64的centos版本自7.5.1804以后不再和7.4、7.3、7.2等之前的一样直接提供一个rootfs.tar.xz的压缩包,全部变成了ISO的安装文件,因此需要EFI来引导安装,如果Aarch64的cpu用的是uboot就只有干瞪眼了,笔者花了一翻功夫,终于找到如何从ISO中提取出centos 7.5.1804文件系统的方法,方便使用uboot的用户可以使用centos7.5.1804。
下载centos7.51804的安装包CentOS-7-aarch64-Everything-1804.iso或CentOS-7-aarch64-Minimal-1804.iso均可,网址:http://mirror.centos.org/altarch/7.5.1804/isos/aarch64/,两者下一个即可,建议下载CentOS-7-aarch64-Minimal-1804.iso,体积更小下载更方便。
mount CentOS-7-aarch64-Minimal-1804.iso或CentOS-7-aarch64-Everything-1804.iso后提取镜像内部文件:LiveOS/squashfs.img,此文件实际上即是centos的rootfs文件,但是不能直接使用。继续将squashfs.img mount起来,然后进入mount的路径继续mount 文件LiveOS/rootfs.img,然后即可看到centos的整个内部文件系统了,如下图:
如果仅复制这些文件到根系统,通过uboot加载启动,你会发现系统根本无法启动,这是因为此rootfs默认启动方式为anaconda启动,uboot引导进入anaconda模式后会直接卡死。复制目录下的所有文件到根系统目录,删除
/etc/systemd/system/default.target
建立软连接
ln -s /usr/lib/systemd/system/multi-user.target etc/systemd/system/default.target
引导系统启动后进入multi-user模式。此时即可进入到centos系统,用户root,密码无,此时centos为纯净系统,除了基本命令外不带其他任何第三方命令,包括passwd、sudo、openssh、telnet、net-tools等等均没有,且yum命令报错找不到import yummain模块,无法使用。
复制CentOS-7-aarch64-Minimal-1804.iso或CentOS-7-aarch64-Everything-1804.iso中,Packages目录与yum相关的四个rmp包
yum-3.4.3-158.el7.centos.noarch.rpm、
yum-metadata-parser-1.1.4-10.el7.aarch64.rpm、
yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm
centos-release-7-5.1804.el7.centos.a.aarch64.rpm
然后启动进入centos后执行:
rpm2cpio yum-3.4.3-158.el7.centos.noarch.rpm|cpio -idumv
rpm2cpio yum-metadata-parser-1.1.4-10.el7.aarch64.rpm|cpio -idumv
rpm2cpio yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm|cpio -idumv
rpm2cpio centos-release-7-5.1804.el7.centos.a.aarch64.rpm|cpio -idumv
修改文件/etc/yum.repos.d/CentOS-Base.repo中所有$releasever为7.5.1804
(可在vim中输入:%s/$releaseve/7.5.1804/g来全局替换)
然后yum -help,yum命令已经可以使用,通过ip addr 配置ip后,即可用yum安装基本的命令和一些第三方常用库如:passwd、sudo、openssh、telnet、net-tools等。
--------------------- 作者:_阿桂_ 来源:CSDN 原文:https://blog.csdn.net/feixiang3839/article/details/80857138?utm_source=copy 版权声明:本文为博主原创文章,转载请附上博文链接!