
0.引言
mac发布了m1芯片,其强悍的性能受到很多开发者的追捧,但是也因为其架构的更换,导致很多软件或环境的安装成了问题,今天就来谈谈如何在m1中安装linux虚拟机
1.下载
1.1 安装VMware Fusion
我选择在VMware上运行虚拟机,所以需要下载VMware Fusion 下载地址:VMware Fusion for M1[1] 选择ARM版本下载,目前是官方推出的针对M1的试用版本,无需激活,后续是否收费还未可知

下载后双击安装即可
1.2 下载centos
centos for m1下载地址:centos for m1[2] 北京外国语大学镜像地址(推荐下载):centos for m1 国内镜像[3] 文件:CentOS-7-aarch64-Everything-2009.iso
上述地址下载出来的镜像并不能直接使用!!!
,还需要进行一系列的操作,为了方便我另外使用一个民间高手制作出来的centos7镜像,但是因为是非官方,所以有什么问题还未可知,目前我自己使用除了yum下载因为镜像地址原因不可用外其他的还没发现问题。如果要配置上述地址的镜像,可以参考这位博主的博客arm64(aarch64)安装centos 7.5.1804[4] 链接如果失效可参考这个:arm64(aarch64)安装centos 7.5.1804[5]
想要直接安装的话,可以直接下载我使用的镜像:centos7 for m1[6]
密码: c81n
文件:CentOS-7-aarch64-08191738.iso(注意因为百度网盘限制,安装包被拆分成三份,选择001或者三个文件全选解压即可(mac默认的解压工具不能解压,提前下载好fastZip等解压工具)。阿里网盘暂不支持压缩包格式文件分享)
1.3 下载ubantu
如果需要安装的是ubantu系统,可以在如下地址下载,要安装centos的无需下载,因为我是安装centos,所以这里仅提供下载地址,安装ubantu步骤不再示例,但可参考centos ubantu for m1下载地址:ubantu for m1[7] 文件:jammy-desktop-arm64.iso
2. 安装centos
1、打开VMware,点击新建虚拟机 2、将下载的镜像拖入到窗口中,我这里因为之前安装过其他镜像所以会有历史显示

3、选择任意一个操作系统即可,因为镜像内部已经设置过了

4、这里你可以选择自定义调整配置,或者直接点击完成进行安装。我这里点击自定义修改下配置

4、修改下虚拟机文件名称

5、因为我不需要声卡和摄像头,所以将声卡和摄像头都移除了

6、点击播放按钮开始安装

7、 选择Install centos 7,剩下的步骤如果安装过centos的同学应该很清楚了,但为了满足第一次接触的同学,这里继续给出步骤,安装过的可直接跳过

8、语言是用英文就好,不要改成中文

9、点击system,点击done

10、默认是最小化安装,是没有vim等工具的, 但是目前这个版本通过yum下载又是有问题的,所以我这里选择web application安装,这样可以自带上vim等工具 点击Software Selection

11、点击Time & Date,选择时区为上海

12、点击root password,给root账号设置密码,设置完成后点击done,注意要点击两次 另外我这里因为安装的环境需要一个非root账号,所以我再创建了一个elastic账号,如果有需要可以点击User creation创建
完成后点击begin install开启安装

13、等待一段时间后,安装结束,点击reboo重启系统

14、输入账户密码,登录成功

到这里centos就安装成功了
15、如果安装后虚拟机ip与宿主机ip不一致,将网络类型改为“自动检测”即可
# 查看ipip addr


3 开启网卡,修改ip,开启ssh服务
3.1 开启网卡
因为centos7默认是关闭网卡的,所以需要手动开启 1、修改网卡配置文件
# 之前安装都是ens33,这个版本是ens160。如果没有安装vim的话,可以使用vi命令替代vim /etc/sysconfig/network-scripts/ifcfg-ens160
2、将ONBOOT设置为yes即可开启网卡

3、重启网卡
service network restart
输入ip addr查询ip。出现ip即说明开启成功

3.2 修改IP
1、修改网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens160
2、在配置文件中添加:
IPADDR=192.168.244.12 #静态IP,你要修改的ipGATEWAY=192.168.244.1 #默认网关NETMASK=255.255.255.0 #子网掩码
3、重启网卡
service network restart
4、查询ip,发现配置的ip已经出现
ip addr

5、如果出现虚拟机无法ping同主机的情况,说明主机与虚拟机不在一个网段上,将虚拟机的网段与主机的保持一致即可。比如主机为192.168.0.2 那么虚拟机就要为192.168.0.x
3.3 开启ssh服务
通过ssh服务,我们可以使用ssh指令来远程操作虚拟机,非常的方便
centos7默认安装ssh服务,该服务通过22端口传输,所以需要开启22端口或者关闭防火墙。但在生产环境中不允许关闭防火墙 1、如果未开启ssh服务,可以通过以下指令开启
service sshd start# 重启sshdservice sshd restart# 关闭sshdservice sshd stop
如果上述方式不管用,可以尝试这种方式重启ssh
systemctl restart sshd
2、开启22端口
# 查询22端口是否开放firewall-cmd --query-port=22/tcp#查询所有已开放的端口netstat -anp# 开启端口firewall-cmd --add-port=22/tcp --permanent# 开启后重新加载firewall-cmd --reload
关闭端口指令
# 关闭指定端口firewall-cmd --permanent --remove-port=22/tcp
如需关闭/开启防火墙,操作如下
查看防火墙状态 systemctl status firewalld开启防火墙 systemctl start firewalld关闭防火墙 systemctl stop firewalld若遇到无法开启先用:systemctl unmask firewalld.service然后:systemctl start firewalld.service
3、连接测试
# 在mac中运行ssh root@192.168.244.12
如果仍然报错22端口关闭,可以重启下虚拟机再试

4、如果发现ssh连接慢或者传输慢,可以通过以下指令关闭DNS
sudo vim /etc/ssh/sshd_config
修改内容,大概在115行
UseDNS no
重启ssh
systemctl restart sshd
4. 更多精彩预告
1、mac pro M1(ARM)安装:elasticsearch、kibana、logstash(二)
2、mac pro M1(ARM)安装:jdk(三)
3、mac pro M1(ARM)安装:window(四)
References
[1]
VMware Fusion for M1: https://customerconnect.vmware.com/downloads/get-download?downloadGroup=FUS-PUBTP-2021H1[2]
centos for m1: https://www.centos.org/download/[3]
centos for m1 国内镜像: https://mirrors.bfsu.edu.cn/centos-altarch/7.9.2009/isos/aarch64/[4]
arm64(aarch64)安装centos 7.5.1804: https://blog.csdn.net/feixiang3839/article/details/808571380[5]
arm64(aarch64)安装centos 7.5.1804: https://blog.csdn.net/feixiang3839/article/details/80857138/[6]
centos7 for m1: https://pan.baidu.com/s/1-ToTP8kY3BZRRWuKcDzZDA[7]
ubantu for m1: https://cdimage.ubuntu.com/daily-live/current/[8]
mac pro M1(ARM)安装:elasticsearch、kibana、logstash(二): https://blog.csdn.net/qq_24950043/article/details/122518707[9]
mac pro M1(ARM)安装:jdk(三):





