m1使用parallels desktop安装centos stream 9

1,914 阅读4分钟

前言

最近在学习新的知识,需要多台服务器,但是阿里云租用又太贵了,所以就想自己使用mac搭建虚拟机了,之后自己在网络上搜寻了一下,适合m1的虚拟机工具和镜像,找了一圈下来,发现就pd和centos9比较合适,centos8 stream都不行,不过centos9 stream使用docker的时候也有个别的坑,为了防止以后到处找资料,所以就记录一下整个过程。

安装镜像过程

第一步:找到pd的下载链接,版本必须得是大于等于17以上的,地址: www.parallels.cn/products/de…

第二步:下载centos9的镜像,地址:www.centos.org/centos-stre…

第三步:就是正常的安装镜像装虚拟机了,这里就不多赘述了

配置过程

我这里使用的是NAT模式

第一步:因为我不能使用默认的动态ip(DHCP),所以我对虚拟机进行了如下配置:

image.png 解释一下,Manual手动可以理解为centos7中的static静态ip,然后我准备弄三台虚拟机,所以我的ip地址其实是10.211.55.101-103,因为前面24位都一样,也懒的计算,所以我的子网掩码设置了为255.255.255.0,这里需要注意,这个子网掩码非常重要,不理解的就设置和我一样的就行了,我之前的子网掩码默认的是255.255.2555.255,搭建之后,本机一直ping不通这个ip,虚拟机之间也相互ping不通,虽然10开头的私有ip地址属于A类地址,后面的24可以随意改变,但是这里是有规则限制,可以点击PD的||,然后点击配置,配置里面点击网络,然后看下高级,打开网络首选项,之后你大概可以看到一个类似的界面

image.png 就是你设置的虚拟机ip地址必须在这个起始地址和结束地址之间,但是需要注意10.211.55.1要作为网关,10.211.55.2要作为宿主机地址,所以虚拟机真正可用的地址为10.211.55.3-10.211.55.254。 DNS的话我就用的谷歌的8.8.8.8

第二步

第二步就是登录虚拟机运行命令nmcli connetion up ens18 让配置的网络生效,注意这个不一定是ens18,你得看你自己的虚拟机是多少,使用ip addr命令查看,有的人可能会问,为什么是nmcli命令,而不是systemctl或者service start network命令,这是因为centos8以上都是用Networkmanage来管理网络配置文件了,他的网络配置文件的存放地址也变成了/etc/NetworkManager/system-connections/enp0s5.nmconnection,这里我使用cat命令查看了一下

image.png 这样配置好三台虚拟机之后,就可以相互ping了,外网也能ping通了。本机也可以ping通三台虚拟机了,这时候就可以使用iterm这个工具配置好profile文件,一键登录到虚拟机了,只有profile文件怎么配置,大家可以自行百度

安装docker

因为centos8及以上内置了podman这个容器化工具,所以如果使用yum安装docker的时候大概率是会报错,这时候可以使用yum命令卸载podman yum -y erase podman buildah,之后在安装docker,另外一种方式好像是卸载runc吧,这个我没有试过,用这个方法好像就不用卸载podman了,可以共存了,GitHub地址没找到就不贴地址了, docker的操作就是正常操作了 docker pull docker run,但是使用centos9有一个问题,就是docker exec进入不了容器,不管是bash /bin/bash /bin/sh都不行,提示OCI runtime exec failed: exec failed: unable to start container process: open /dev/pts/0: operation not permitted: unknown

总结

以上就是centos9虚拟机在pd上的安装过程了,希望可以帮到第一次安装虚拟机的小白,毕竟我也是踩了不少坑,另外如果不想去设置里面改网络配置可以使用以下命令修改,这里的10.211.55.101/24,24是子网掩码的另外一种表现形式叫CIDR,这里表示前面24为一样,所以此处可以理解为为11111111.11111111.11111111.00000000,之后二进制转为10进制就是255.255.255.0,这里还涉及到一些ip地址,网络地址,子网的知识就不多赘述了

  1. nmcli connetion modify ens18 ipv4.addresses 10.211.55.101/24;
  2. nmcli connetion modify ens18 ipv4.gateway 10.211.55.1;
  3. nmcli connetion modify ens18 ipv4.dns 8.8.8.8;
  4. nmcli connetion modify ens18 ipv4.method manual;
  5. nmcli connetion up ens18