当前位置: 首页 > news >正文

Macbook M1 Fusion安装Debian/Linux

背景

本人主力工作电脑已经迁移到苹果芯片m1的macbook上,曾经尝试使用Fusion安装CentOS、OpenEuler、Ubuntu的一些版本,都没有安装成功。最近开始研究Linux/Unix系统编程,迫切需要通过VMware Fusion安装一台Linux操作系统的虚拟机。

Linux安装

在VMware Fusion下通过Linux发行版iso镜像安装操作,大部分步骤已经比较成熟,本文不做过多介绍,这里主要介绍安装过程遇到的问题和解决方案。

尝试OpenEuler

OpenEuler 22.03和24.03均在grub引导阶段失败,报错如下:

# OpenEuler 22.03
EFI stub:Booting Linux Kernel...
EFI stub:EFI_RNG_PROTOCOL unavailable,no randomness supplied
EFI stub:Using DTB from configuration table
EFI stub:Exiting boot services and installing virtual address map..# OpenEuler 24.03
EFI stub:Booting Linux Kernel...
EFI stub:EFI_RNG_PROTOCOL unavailable,no randomness supplied
EFI stub:Using DTB from configuration table
EFI stub:Exiting boot services...

OpenEuler安装多次失败尝试无果,参考网友分享m1 MacOS上通过Parallels Desktop成功安装Debian 10的版本,并成功运行大数据相关软件。VMware Fusion作为功能类似的软件,理论上也具有成功安装Debian Linux的能力,因此我选择采用Debian ARM64版本: Debian 12.5, 网络安装形式的最小镜像,debian-12.5.0-arm64-netinst.iso。

安装Debian

由于Debian ISO镜像默认为国外源,会导致安装软件的步骤无比慢,建议Debian OS安装完后改为国内镜像,进一步配置。需要通过一下操作进行:
1、Fusion创建VM时需要断开网络
2、安装过程指定国内镜像
3、完成安装

配置Debian/Linux

在Debian 12.5安装成功后,通过Fusion VM控制台root登陆OS,开始配置操作:
1、检查并启动网络

root@debian:~# ip route show#发现没有IP地址,无法联网,通过dhcpclient连接网络
root@debian:~#  dhclient ens160 

2、修改Debian 12.5(bookworm)源为国内镜像

root@debian:~# cat /etc/apt/sources.list
#deb cdrom:[Debian GNU/Linux 12.5.0 _Bookworm_ - Official arm64 DVD Binary-1 with firmware 20240210-11:28]/ bookworm contrib main non-free-firmware
deb https://mirrors.huaweicloud.com/debian/ bookworm main non-free non-free-firmware contrib
deb https://mirrors.huaweicloud.com/debian/ bookworm-updates main non-free non-free-firmware contrib
deb https://mirrors.huaweicloud.com/debian/ bookworm-backports main non-free non-free-firmware contrib
deb-src https://mirrors.huaweicloud.com/debian/ bookworm main non-free non-free-firmware contrib
deb-src https://mirrors.huaweicloud.com/debian/ bookworm-updates main non-free non-free-firmware contrib
deb-src https://mirrors.huaweicloud.com/debian/ bookworm-backports main non-free non-free-firmware contrib
deb https://mirrors.huaweicloud.com/debian-security/ bookworm-security main non-free non-free-firmware contrib
deb-src https://mirrors.huaweicloud.com/debian-security/ bookworm-security main non-free non-free-firmware contrib# 配置sources.list后更新缓存
root@debian:~#  apt-get update
Hit:1 https://mirrors.huaweicloud.com/debian bookworm InRelease
Hit:2 https://mirrors.huaweicloud.com/debian bookworm-updates InRelease
Hit:3 https://mirrors.huaweicloud.com/debian bookworm-backports InRelease
Hit:4 https://mirrors.huaweicloud.com/debian-security bookworm-security InRelease
Get:5 https://mirrors.huaweicloud.com/debian bookworm/non-free-firmware Sources [6,168 B]
Get:6 https://mirrors.huaweicloud.com/debian bookworm/non-free-firmware arm64 Packages [5,824 B]
Get:7 https://mirrors.huaweicloud.com/debian bookworm/non-free-firmware Translation-en [20.8 kB]
Get:8 https://mirrors.huaweicloud.com/debian bookworm-updates/non-free-firmware Sources [2,076 B]
Get:9 https://mirrors.huaweicloud.com/debian bookworm-updates/non-free-firmware arm64 Packages [616 B]
Get:10 https://mirrors.huaweicloud.com/debian bookworm-updates/non-free-firmware Translation-en [384 B]
Get:11 https://mirrors.huaweicloud.com/debian-security bookworm-security/non-free-firmware Sources [796 B]
Get:12 https://mirrors.huaweicloud.com/debian-security bookworm-security/non-free-firmware Translation-en [472 B]
Fetched 37.2 kB in 4s (10.2 kB/s)       
Reading package lists... Done

网络最小化安装的Debian/Linux的sources.list文件本只指定了DVD的位置,不存在相关镜像链接,该链接为参考网易镜像提供的Debian buster版本sources.list文件的修改而来。

3、安装NetworkManager,解决Debian/Linux VM重启后网络消失的问题

root@debian:~# apt-get install network-manager
root@debian:~# systemctl start network-manager
root@debian:~#  systemctl status NetworkManager
● NetworkManager.service - Network ManagerLoaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; preset: enabled)Active: active (running) since Wed 2024-06-19 10:33:35 EDT; 7h leftDocs: man:NetworkManager(8)Main PID: 700 (NetworkManager)Tasks: 3 (limit: 2251)Memory: 15.1MCPU: 400msCGroup: /system.slice/NetworkManager.service└─700 /usr/sbin/NetworkManager --no-daemonJun 19 10:33:35 debian NetworkManager[700]: <info>  [1718807615.8088] dhcp4 (ens160): state changed no lease
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0607] dhcp4 (ens160): state changed new lease, add>
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0620] policy: set 'Wired connection 1' (ens160) as>
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0692] device (ens160): state change: ip-config -> >
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0719] device (ens160): state change: ip-check -> s>
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0721] device (ens160): state change: secondaries ->
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0724] manager: NetworkManager state is now CONNECT>
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0727] device (ens160): Activation: successful, dev>
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0731] manager: NetworkManager state is now CONNECT>
Jun 19 10:33:38 debian NetworkManager[700]: <info>  [1718807618.0735] manager: startup complete# 开启NetworkManager随VM开机启动
root@debian:~#  systemctl enable NetworkManager

重启Debian/Linux VM后检查发现可以正常联网

root@debian:~# ip route show
default via 192.168.7.254 dev ens160 proto dhcp src 192.168.4.223 metric 100 
192.168.4.0/22 dev ens160 proto kernel scope link src 192.168.4.223 metric 100

4、安装防火墙管理、编辑器软件

root@debian:~# apt-get install ufw
root@debian:~# ufw enable
# 打开端口22 TCP,方便ssh登陆
ufw allow 22/tcp
root@debian:~# ufw status
Status: activeTo                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere                  
22/tcp (v6)                ALLOW       Anywhere (v6) 

5、配置root用户登陆,以及普通用户提权到root

# 配置root用户登陆
root@debian:~# cat  /etc/ssh/sshd_config | grep PermitRootLogin
#PermitRootLogin prohibit-password
PermitRootLogin yes
# the setting of "PermitRootLogin prohibit-password".# 配置普通用户提权
# 检查发现不存在sudo配置文件/etc/sudoers,因此需要先安装sudo
root@debian:~# apt-get install sudo
# sudo配置文件为root只读权限,需要加写权限
root@debian:~# chmod +w /etc/sudoers# 修改/etc/sudoers, 在%sudo ALL=(ALL:ALL) ALL后添加hbu的免密提权配置
root@debian:~# cat /etc/sudoers | grep -n "ALL="
47:root	ALL=(ALL:ALL) ALL
50:%sudo	ALL=(ALL:ALL) ALL
51:hbu	ALL=(ALL)	NOPASSWD:ALL
# 去除sudo配置写权限
root@debian:~# chmod -w /etc/sudoers

参考

1、 解决在MacBook Air m1芯片上使用parallels Desktop装ubuntu20.04 arm64 出现EFI

相关文章:

Macbook M1 Fusion安装Debian/Linux

背景 本人主力工作电脑已经迁移到苹果芯片m1的macbook上&#xff0c;曾经尝试使用Fusion安装CentOS、OpenEuler、Ubuntu的一些版本&#xff0c;都没有安装成功。最近开始研究Linux/Unix系统编程&#xff0c;迫切需要通过VMware Fusion安装一台Linux操作系统的虚拟机。 Linux安…...

ERP收费模式是怎样的?SAP ERP是如何收费的?

一、购置SAP ERP系统的费用组成 1、软件费用 传统的ERP系统大多为许可式&#xff0c;即企业在购买ERP服务时付清所有费用&#xff0c;将ERP系统部署于自己的服务器中。根据所购买ERP系统品牌的不同&#xff0c;价格上也有一定的差异。采购ERP系统许可后&#xff0c;后续维护、…...

如何实现免交互

如何实现免交互 一、免交互 交互&#xff1a;我们发出指令控制程序的运行&#xff0c;程序在接收到指令之后按照指令的效果做出对应的反应 免交互&#xff1a;间接的通过第三方的方式把指令传送给程序&#xff0c;不用直接的下达指令 Here Document免交互&#xff1a;这是命…...

浏览器userAgent大全及JS判断当前APP

文章目录 userAgent 检测PC/Mobile 浏览器 userAgent 大全Mobile APP userAgent 大全JS 判断当前 APP userAgent 检测 https://useragent.buyaocha.com/ PC/Mobile 浏览器 userAgent 大全 系统浏览器User-Agent字符串MacChromeMozilla/5.0 (Macintosh; Intel Mac OS X 10_12…...

11.异常(java版)

异常的概念 在日常开发时 代码在程序运行过程中 难免会出现一些其奇奇怪怪的问题 有时通过代码很难去控制 比如&#xff1a;数据格式不对、网络不流畅、内存报警等 在Java中 将程序执行过程中发生的不正常行为称为异常 比如我们之前写代码时经常会遇到的&#xff1a; 1.算术…...

单片机学习记录

一&#xff0c;单片机及开发板介绍 1&#xff0c;基本介绍 单片机&#xff0c;英文Micro Controller Unit&#xff0c;简称MCU内部集成了CPU、RAM、ROM、定时器、中断系统、通讯接口等一系列电脑的常用硬件功能单片机的任务是信息采集(依靠传感器)、处理(依靠CPU)和硬件设备(…...

flask的基本使用1

【 一 】Flask介绍 python 界的web框架 -Django&#xff1a;大而全&#xff0c;使用率较高 &#xff1a;https://github.com/django/django -FastAPI&#xff1a;新项目选择使用它&#xff1a;https://github.com/tiangolo/fastapi -flask&#xff1a;公司一些小项目使用它&a…...

如何编写时区源文件

0、背景 ① 修改TZ环境变量改变时区不能立即生效。要求设置时区后立即生效&#xff0c;只能用修改/etc/localtime方式。 ② 原文作者 Bill Seymour&#xff0c;想要查看原文&#xff0c;点击官网地址https://www.iana.org/time-zones下载 zic 源码&#xff0c;源码目录中的 tz…...

植物大战僵尸杂交版v2.1最新整合版,附PC端+安卓端+iOS端安装包+修改器+安装教程!

嘿&#xff0c;大家好&#xff0c;我是阿星&#xff0c;今天要跟大家聊聊一款游戏&#xff0c;它不是那种让人眼花缭乱的大制作&#xff0c;也不是那种能让人回味无穷的艺术作品&#xff0c;但它在阿星心里&#xff0c;绝对是神作中的佼佼者。没错&#xff0c;它就是《植物大战…...

【5G射频基本架构】

平台框架 平台演进及搭配 5G NR频谱 NSA/SA/ENDC...

4.任务调度

1.基本知识 2.任务的状态 FreeRTOS中任务共存在4种状态&#xff1a;Running 运行态 当任务处于实际运行状态称之为运行态&#xff0c;即CPU的使用权被这个任务占用&#xff08;同一时间仅一个任务处于运行态&#xff09;。Ready 就绪态 处于就绪态的任务是指那些能够运行&…...

Github 2024-06-27 Go开源项目日报Top10

根据Github Trendings的统计,今日(2024-06-27统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Go项目10Ollama: 本地大型语言模型设置与运行 创建周期:248 天开发语言:Go协议类型:MIT LicenseStar数量:42421 个Fork数量:2724 次关注人…...

【D3.js in Action 3 精译】1.2.2 可缩放矢量图形(一)

译注 由于 1.2.2 小节介绍 SVG 的篇幅过多&#xff0c;为了方便查阅&#xff0c;后续将分多个小节依次进行翻译。为了确保整个 1.2.2 小节的完整性&#xff0c;特意将上一篇包含的 SVG 小节的内容整理出来重新编排。敬请留意。 1.2.2 SVG - 可缩放矢量图形 可伸缩矢量图形&…...

「C系列」C 排序算法

文章目录 一、C 排序算法二、C 排序算法-应用场景1. 冒泡排序&#xff08;Bubble Sort&#xff09;2. 选择排序&#xff08;Selection Sort&#xff09;3. 插入排序&#xff08;Insertion Sort&#xff09;4. 快速排序&#xff08;Quick Sort&#xff09;5. 归并排序&#xff0…...

Power BI可视化表格矩阵如何保持样式导出数据?

故事背景&#xff1a; 有朋友留言询问&#xff1a;自己从Power BI可视化矩阵表格中导出数据时&#xff0c;导出的表格样式会发生改变&#xff0c;需要线下再手动调整&#xff0c;重新进行透视组合成自己想要的格式。 有没有什么办法让表格导出来跟可视化一样&#xff1f; Po…...

《UDS协议从入门到精通》系列——图解0x35:请求上传

《UDS协议从入门到精通》系列——图解0x35&#xff1a;请求上传 一、简介二、数据包格式2.1 服务请求格式2.2 服务响应格式2.2.1 肯定响应2.2.2 否定响应 三、通信示例 Tip&#x1f4cc;&#xff1a;本文描述中但凡涉及到其他UDS服务的&#xff0c;将陆续提供链接跳转方式以便快…...

Tailwindcss 扩展默认配置来自定义颜色

背景 项目里多个Tab标签都需要设置同样的背景颜色#F1F5FF&#xff0c;在集成tailwindcss之前就是重复该样式&#xff0c;如下图&#xff1a; .body {background-color: #f1f5ff; }集成tailwindcss时&#xff0c;我们希望在class中直接设置该背景色&#xff0c;但是默认的tai…...

C++设计模式---享元模式

1、介绍 原理&#xff1a; 享元模式是一种主要用于减少创建对象的数量&#xff0c;以减少内存占用和提高性能的结构型设计模式。它通过共享多个对象所共有的相同状态&#xff0c;使得在有限的内存容量中能够载入更多的对象。具体来说&#xff0c;享元模式将对象的状态分为内部…...

智慧园区大数据云平台建设方案(Word原件)

第一章 项目建设背景及现状 第二章 园区创新发展趋势 第三章 工业园区大数据存在的问题 第四章 智慧工业园区大数据建设目的 第五章 智慧园区总体构架 第六章 系统核心组件 第七章 智慧工业园区大数据平台规划设计 获取方式&#xff1a;本文末个人名片直接获取。 软件资料清单…...

【学习】如何利用Python技术进行软件测试相关工作

Python是一种广泛使用的高级编程语言&#xff0c;它因其简洁的语法、强大的库支持和跨平台特性而受到开发者的喜爱。在软件测试领域&#xff0c;Python同样发挥着重要作用&#xff0c;它可以帮助测试人员编写自动化测试脚本、进行接口测试、性能测试、以及处理测试数据等。以下…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

Linux-07 ubuntu 的 chrome 启动不了

文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了&#xff0c;报错如下四、启动不了&#xff0c;解决如下 总结 问题原因 在应用中可以看到chrome&#xff0c;但是打不开(说明&#xff1a;原来的ubuntu系统出问题了&#xff0c;这个是备用的硬盘&a…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版&#xff0c;柱状图PPT模版&#xff0c;线状图PPT模版&#xff0c;折线图PPT模版&#xff0c;饼状图PPT模版&#xff0c;雷达图PPT模版&#xff0c;树状图PPT模版 图表类系列各种样式PPT模版分享&#xff1a;图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI&#xff0c;使用客户端或是内部自己搭建集成大模型的终端&#xff0c;加速与大型语言模型&#xff08;LLM&#xff09;的结合&#xff0c;同时使用检索增强生成&#xff08;Retrieval Augmented Generation &#…...