PVE系列-LVM安装MacOS的各个版本及VNC加密隧道访问

news2024/11/17 8:21:10

PVE系列-LVM安装MacOS的各个版本

    • 环境配置
    • 大概过程:
    • 详细步骤:
      • 1.建立安装环境和下载安装工具
      • 2. 重启后,执行osx-setup配置虚拟机
      • 3. 安装到硬盘,
      • 4.设定引导盘,以方便自动开机启动
      • 5.打开屏幕共享和系统VNC
      • 6.VNC加密的ssh隧道远程控制
      • 最后的结果

引子:
今天浏览网页发现macos运行在容器的两个方法
第一个方法docker:
https://hub.docker.com/r/sickcodes/docker-osx
今天主要介绍另一个方法:
github仓库OSX-PROXMOX用脚本把MACOSX导入到VM容器里的方法:
https://github.com/luchina-gabriel/OSX-PROXMOX

环境配置

PVE shell

/bin/bash -c "$(curl -fsSL https://install.osx-proxmox.com)" 
#restart
osx-setup

提示:虽然官网说支持os14,但是发现目前我pve8不能打开14的安装进度条,所以我只是安装了12作为演示,

大概过程:

命令行osx-setup下载dmg文件,根据引导建立vm虚拟机,启动虚拟机,选择安装os,打开安装界面,安装前把目标磁盘erase成apfs格式,进入安装程序选择这个分区了,第一次部署以后重启了4次以上,每次自动重启,分区一个是installer启动,最后一次变成了默认卷标,这时进入系统,才能完成初始化设置。可以试着把引导顺序里在安装盘dmg取消这样来默认进入目标硬盘公区所安装的系统。

详细步骤:

1.建立安装环境和下载安装工具

在pve的shell里运行这个脚本

. COPY & PASTE - in shell of Proxmox (for Install or Update this
solution)

/bin/bash -c "$(curl -fsSL https://install.osx-proxmox.com)" 

结束后会重启pve。提示重启后执行osx-setup

2. 重启后,执行osx-setup配置虚拟机

在这里插入图片描述
选择好虚拟机在配置后进入下载过程大约有800G在安装文件,然后提示虚拟机建立好,在pve的8006进行管理,开机就可执行安装。
选项7的os14会无法进入安装工具后,只有一个苹果,进度条不出,用以下命令强行关闭删除虚拟机,
qm stop 105zps aux | grep “/usr/bin/kvm -id 105”
kill -9 30091
qm stop 105
第二次选择5下载安装os 12.,引导安装盘一个白色苹果,下方是进度条。

3. 安装到硬盘,

在引导进度条结束后,第二个选项是开始安装,选择第四个选项硬盘分区工具,选择虚拟机最大的空白硬盘erase,格式apfs,执行格式化目标硬盘。关闭窗口,打开综合工具菜单第二个选项,installer or reinstall os 。选择了安装位置,就是上次在空白盘,有一个挺漫长在安装过程,走完进度大约半个多到1小时,根据机器性能而定,虚拟机默认q35处理器,可选择8核8G、64G硬盘或更高配置。

结束重启选择installer,不要选dmg安装盘,然后再4,5次进installer,最后才安装目标格式化用的卷标名。再开机才是进入了初始化配置界面,应该选择地区设置键盘密码ID等等的。

第一次进入系统后打开终端窗口
为了

For install EFI Package in macOS, first disable Gatekeeper
运行

sudo spctl --master-disable

运行EFI卷下在intsll-efi-for-virtual-…pkg
在这里插入图片描述
我猜测是为了引导。具体作用不明确

4.设定引导盘,以方便自动开机启动

关机状态下,取消安装盘引导,直接硬盘引导。这方便冷启动,和自动开机 。
在这里插入图片描述

5.打开屏幕共享和系统VNC

开机进入系统。打开系统偏好设置-共享,设定屏幕共享和VNC密码。
在这里插入图片描述

在这里插入图片描述
接下来就能用vnc客户端访问了。

6.VNC加密的ssh隧道远程控制

参见:https://khalidabuhakmeh.com/tunneling-vnc-through-ssh-on-macos、、

  1. 设置受控端MacOS: 在MacOS的偏好设置-共享-原程访问,默认开启了ssh-server,下面有允许访问的用户,同样端口是默认22。经过以上的配置已经打开了vnc的默认端口5900。受控端的这两个服务可以单独进行测试,并且用正确的管理密码访问,就算完成这一侧了。
  2. 设置受控端:根据参考文章,主控端也就是发起访问的地方,需要具备1,ssh命令。2,realVNC viewer选择自己用的平台合适的软件, 受控端打开控制台然后运行
    ssh -L 5900:localhost:5900 user@remote-host -p 22
  • -L 是指进行远程映射
  • 第一个5900是远程vnc端口,
  • 第二个5900是本地地址和本地端口,用于写入vnc-view的连接主机配置。
  • user是ssh-server所用的用户,执行命令后需要输入它的合法密码
  • remote-host可以是各种内网穿透后的地址和域名,用于抵达ssh服务,
  • -p 是远程主机的22端口,因为经过透传,所以需要灵活指定

执行后后有密码提示并且登入控制台,保持窗口打开,以便vnc客户端使用其打开的locahost:5900
至此连接就完成了。
基本过程就这些,可能比docker繁琐,好处是用起来稳定一些,维护还方便点。

最后的结果

在这里插入图片描述

这个系统可以xcode开发,连接手机,关联声卡。还有其他用途,有需要的人请拿来测试。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1295338.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python 数据分析:日期型数据的玩转之道

更多资料获取 📚 个人网站:ipengtao.com 在数据分析的领域中,处理日期型数据是至关重要的一环。Python 提供了丰富的工具和库,使得对日期进行分析、处理、可视化变得更加轻松。本文将深入探讨 Python 中如何玩转日期型数据&#…

python之日志记录

1.导包 import logging2.设置日志基本信息 2.1设置日志级别 logger logging.getLogger("你的类名"|None) # 可以空参logger.setLevel(logging.DEBUG) # 也可以为loggin.INFO 2.2 设置日志输出格式 formatter logging.Formatter(%(asctime)s - %(name)s - %(level…

基于OpenCV的人脸识别系统案例

基于OpenCV的人脸识别系统案例 人脸识别简介代码实现案例应用情况 下面将介绍如何使用Python和OpenCV库构建一个简单但强大的人脸识别系统。人脸识别是计算机视觉领域的一个重要应用,具有广泛的实际用途,从安全门禁到娱乐应用。 人脸识别简介 人脸识别是…

vue中组件传值方法

父组件给子组件传值 一、 1.在子组件标签中写入父组件传递数据 向下传递prop 2.在子组件内声明props选项接收父组件传递的数据 props:[,,] 父组件&#xff1a; <Header :msgmsg ></Header> 子组件&#xff1a; props:[msg], 二、 provide i…

大三上实训内容

项目一&#xff1a;爬取天气预报数据 【内容】 在中国天气网(http://www.weather.com.cn)中输入城市的名称&#xff0c;例如输入信阳&#xff0c;进入http://www.weather.com.cn/weather1d/101180601.shtml#input 的网页显示信阳的天气预报&#xff0c;其中101180601是信阳的…

高级IO函数

1. 高级 I/O 函数 1.1 pipe #include <unistd.h> /* 成功返回0&#xff0c;失败返回-1设置error */ int pipe( int fd[2] );&#xff08;1&#xff09;fd[0] 只能从管道读&#xff0c;fd[1] 只能写&#xff0c;默认情况下这一对文件描述符都是阻塞的&#xff08;读空管…

甘草书店:#10 2023年11月24日 星期五 「麦田创业分享2—世界奇奇怪怪,请保持可可爱爱」

今日继续分享麦田创业经验。 如果你问我&#xff0c;创业过程中是否想过放弃。那么答案是&#xff0c;有那么一次。 那时想要放弃的原因并不是辛苦没有回报&#xff0c;或是资金短缺&#xff0c;而是没能理解“异见者”。 其实事情非常简单&#xff0c;现在反观那时的自己&a…

AUTOSAR CP Port Driver简介

Port Driver 1 背景2 基于 EB 及 TC39X 配置3 Port API 使用1 背景 Port driver 在 AUTOSAR 中是一个比较冷门的模块,基本上在 MCAL 层级,关注的人也少,他由不像其他模块那样通用型比较强,Port 在每种内核的 MCU 的配置都有区别,甚至有些芯片直接没有 Port 模块,使用其他方…

Java多线程并发(二)

四种线程池 Java 里面线程池的顶级接口是 Executor&#xff0c;但是严格意义上讲 Executor 并不是一个线程池&#xff0c;而只是一个执行线程的工具。真正的线程池接口是 ExecutorService。 newCachedThreadPool 创建一个可根据需要创建新线程的线程池&#xff0c;但是在以前…

RFID在新能源工厂大放异彩

RFID在新能源工厂大放异彩 我国在十四五规划中提出了建设绿色低碳发展的目标&#xff0c;新能源产业成为了国家发展的重点领域之一&#xff0c;开始大力支持各种新能源厂商发展。各个厂商之间不仅比产品、比技术。也比生产想要降本增效&#xff0c;为了实现这一目标&#xff0…

多功能智能遥测终端机 5G/4G+北斗多信道 视频采集传输

计讯物联多功能智能遥测终端机&#xff0c;全网通5G/4G无线通信、弱信号地区北斗通信&#xff0c;多信道自动切换保障通信联通&#xff0c;丰富网络接口及行业应用接口&#xff0c;支持水利、环保、工业传感器、控制终端、智能终端接入&#xff0c;模拟量/数字量/信号量采集&am…

Mysql 日期函数大全

一、时间函数 &#xff08;一&#xff09;、获取当前时间 1、NOW() 获取当前日期和时间&#xff0c;在程序一开始执行便拿到时间 返回格式 YYYY-MM-DD hh:mm:ss eg&#xff1a; NOW() 得到 2023-12-03 12:20:02 NOW(),SLEEP(2),NOW() 得到 2023-12-03 12:20:02 | 0 | 2023-…

网安领域含金量最高的证书有哪些?看这1篇就足够了!

文章目录 一、前言二、CISP三、CISAW四、NISP五、为什么很多人考不下来 一、前言 现在想找网络安全之类的工作&#xff0c;光有技术是不够的&#xff0c;还得有东西证明自己&#xff0c;网安三大敲门砖&#xff1a;CTF、漏洞证明和专业证书。 对于CTF的话只是少数人能参加的&…

某度旋转验证码v2 逆向分析

v2主要依据是核心 JS 文件mkd_v2.js 版本&#xff0c;如下图所示&#xff1a; 第一次 https://passport.baidu.com/cap/init 接口&#xff0c;请求的 ak 是固定值&#xff0c;当然不同场景不同网站是不一样的&#xff0c;_ 时间戳&#xff0c;ver1&#xff0c;返回值 as、tk 都…

制作一个RISC-V的操作系统四-嵌入式开发介绍

文章目录 什么是嵌入式开发交叉编译查看一些GCC文件夹 调试器GDB相关语法命令 模拟器QEMUQEMU的安装和使用项目构造工具MakeMakeFile的构成make的运行 练习4-1练习4-2练习4-3 什么是嵌入式开发 程序跑到开发板上&#xff0c;或者说运行到硬件上 交叉编译 简单理解交叉编译来说…

12.8作业

1. 使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0c;密码是…

SQL Server——权限管理

一。SQL Server的安全机制 SQL Server 的安全性是建立在认证和访问许可两种安全机制之上的。其中&#xff0e;认证用来确定登录Sal Server 的用户的登录账户和密码是否正确&#xff0e;以此来验证其是否具有连接SQL Server 的权限;访问许可用来授予用户或组能够在数据库中执行哪…

这些接口自动化测试工具如果不知道,就真out了!

一、Postman Postman是一款广受欢迎的API测试工具&#xff0c;除了手动发送HTTP请求的基本功能&#xff0c;它还提供了自动化测试和脚本测试的功能&#xff0c;非常适合进行HTTP接口的自动化测试。 二、Rest-Assured Rest-Assured是一个Java库&#xff0c;专为REST服务的测试…

H5ke14--1--拖放

介绍drag,drop 一.被拖动元素,目标(释放区) 元素要设置dragable属性:true,false,auto 被拖动元素上面有三个事件,drag,dragend,按下左键,移动种,鼠标松,这三个事件一般只用获取我们的被拖动元素 冒泡:event是可以继承的,mouseevent鼠标事件,dragevent拖放事件,前面都是一个…

可视化监控/安防视频云平台公共区域人员行为安全监控方案

大家在浏览新闻时&#xff0c;经常会看到某某地区有人员摔倒&#xff0c;长时间无人发现或人员闯入某危险区域管理人员未及时劝离&#xff0c;导致发生了意外事故的新闻。由于人力资源和人为巡检能力有限&#xff0c;在很多公共区域无法及时检测人员行为从而导致危险发生。为确…