macos 下载 macOS 系统安装程序及安装U盘制作方法
01 下载 macOS 系统安装程序的方法
本文来自: https://discussionschinese.apple.com/docs/DOC-250004259
简介
Mac 用户时不时会需要下载 macOS 的安装程序,目的不同,或者升级或者降级,或者研究或者收藏。为了方便不同用户,除了使用最“正统”的在系统偏好设置中的“软件更新”更能,这个小技巧文介绍目前可用的一些方法,共分5类,读者可以根据自己的爱好和使用场景选择适合自己的方式。
[1] Apple的官方方法
也就是从 App Store 下载 macOS 安装程序,主要参考它的官文【如何获取旧版 macOS】
下面列出接个常用的连接:
1 – macOS Monterey 12: https://apps.apple.com/us/app/macos-monterey/id1576738294
2 – macOS Big Sur 11: https://apps.apple.com/us/app/macos-big-sur/id1526878132
3 – macOS Catalina 10.15: https://apps.apple.com/us/app/macos-catalina/id1466841314
4 – macOS Mojave 10.14 https://apps.apple.com/us/app/macos-mojave/id1398502828
5 – macOS High Sierra 10.13 https://itunes.apple.com/us/app/macos-high-sierra/id1246284741
更旧的版本:
-
- Mac OS X Mountain Lion 10.8
-
- Mac OS X Lion 10.7
优点:Apple 支持的;当更新或者变更时,Apple 的也是最及时的;保证下载该版本的最新版本
缺点:不灵活;没有旧版;不支持选择低次版本,比如11.5.2等
[2] macOS的内置命令
这个也是 macOS 系统官方支持的方法,与 App Store 的方法类似。
下面这个命令下载当前硬件支持的最新的 macOS 系统到根目录中的应用文件夹中:
/usr/sbin/softwareupdate --fetch-full-installer
还可以使用它列出所有可用的 macOS 版本:
/usr/sbin/softwareupdate --list-full-installers
然后,使用上面的结果,可以下载指定的 macOS
版本,比如 11.6.7
的命令是:
/usr/sbin/softwareupdate --fetch-full-installer --full-installer-version 11.6.7
优点:可以指定版本
缺点:与 App Store 下载类似。不是所有的版本都能搜索得到,有些旧的或者某些小版本更新可能找不到。不适合不熟悉命令行的用户。
[3] 管理员脚本
Github中Monki项目中有一个叫installinstallmacos.py
的脚本,它也是目前比较活跃和持续更新的。
可以从网址获得:https://github.com/munki/macadmin-scripts/blob/main/installinstallmacos.py
英文说明:https://github.com/munki/macadmin-scripts
它的主要功能是:从 Apple 官方的网站获得当前看下载 macOS 系统,根据用户选择,下载并打包在一个 dmg 文件中。
更新(2022-07-01) :因为 macOS 12.3 之后已经不再内置 Python (版本 2),解决这个问题的途径有多种,比如自己安装Python的发布版本2,或者使用Homebrew,或者其他人使用的定制版本,比如macadmins的,relocatable-python等。然后根据自己的需要和选择,再把脚本中的第一行做相应的改变,即可顺利运行。
很多方式使用这个脚本,各有优缺点,最直接的是把这个脚本下载下来保存后,可以随时运行。
使用方式:
这里介绍个简单的运行方式:
1> 打开一个新的终端窗口,然后复制粘贴下面的命令(命令较长,注意复制完整)到这个窗口中,按 enter 键运行:
[ ! -d ~/macOS-Scripts/ ] && mkdir ~/macOS-Scripts; cd ~/macOS-Scripts; curl -O https://raw.githubusercontent.com/munki/macadmin-scripts/main/installinstallmacos.py; sudo python installinstallmacos.py --workdir /tmp/
[该图片来自:https://discussionschinese.apple.com/docs/DOC-250004259]
2> 根据窗口中的提示选择要下载的版本的序号,输入 0 则退出
3> 下载完毕后,运行下面命令,它会装载下载的 dmg,并弹出一个 Finder 窗口,
open *.dmg
清理缓存:
这个脚本的运行可能产生一个比较大的缓存,清理方法也简单,使用上面说的方法的话,删除运行脚本目录下的 content 目录,或者在运行脚本的目录下运行下面命令:
sudo rm /fr content
如果其它运行方式没有更新,那么尝试命令:
sudo python installinstallmacos.py --ignore-cache
优点:可供选择的版本多;下载版本适合于保存和传输
缺点:如果出错误,错误一般用户不好理解,拍错需要有一定知识的人员;需自己保持脚本的更新。不适合不熟悉命令行的用户。
[4] 其它下载应用
开源的有图形界面的第三方下载工具“Download Full Installer”:
下载它的最新发布版本:https://github.com/scriptingosx/DownloadFullInstaller/releases
英文 Github 主页:https://github.com/scriptingosx/DownloadFullInstaller
总结
随着 macOS 的发展,这些方法可能会更新,甚至失效。而且,随着 Apple 对于可供下载的系统版本的逐步更新,旧版可能会不容易从 App Store 找到了,所以,最好是自己保留一份常用版本的备份。
02 制作macos 启动安装u盘
# 正式版的安装程序,不要启动安装。
# 打开 “应用程序 → 实用工具 → 磁盘工具”,
# 将U盘「抹掉」(格式化) 成「Mac OS扩展(日志式)」格式、GUID 分区图,并将 U盘命名为「upan」(下图序号4处)。
#(注意:这个盘符名称可以随意起,但是盘符名称必须与后面的命令里的名称一致)# 10.10 Yosemite:
sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/upan --applicationpath /Applications/Install\ OS\ X\ Yosemite.app --nointeraction# 10.11 Capitan:
sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/upan --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app# 10.12 Sierra
sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/upan --applicationpath /Applications/Install\ macOS\ Sierra.app --nointeraction# 10.13 High Sierra:
sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/upan# 10.14 Mojave:
sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/upan# 10.15 Catalina:
sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/upan# 11 Big Sur:
sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/upan# 12 Monterey:
sudo /Applications/Install\ macOS\ Monterey.app/Contents/Resources/createinstallmedia --volume /Volumes/upan# 13 Ventura
sudo /Applications/Install\ macOS\ Ventura.app/Contents/Resources/createinstallmedia --volume /Volumes/upan
VMWare Tools 安装时,出现:
正在运行脚本,提示剩余不到一分钟
,可能是因为磁盘格式化的问题
硬盘格式化为MacOS扩展(日志式)
APFS格式
可能需要在一分钟处等很久
相关文章:

macos 下载 macOS 系统安装程序及安装U盘制作方法
01 下载 macOS 系统安装程序的方法 本文来自: https://discussionschinese.apple.com/docs/DOC-250004259 简介 Mac 用户时不时会需要下载 macOS 的安装程序,目的不同,或者升级或者降级,或者研究或者收藏。为了方便不同用户,除…...

c++动态内存分布以及和C语言的比较
文章目录 前言一.c/c内存分布 C语言的动态内存管理方式 C内存管理方式 operator new和operator delete函数 malloc/free和new/delete的区别 定位new 内存泄漏的危害总结前言 c是在c的基础上开发出来的,所以关于内存管理这一方面是兼容c的&…...
软考高级信息系统项目管理师系列之三十一:项目变更管理
软考高级信息系统项目管理师系列之三十一:项目变更管理 一、项目变更管理内容二、项目变更管理基本概念1.项目变更管理定义2.项目变更产生的原因3.项目变更的分类三、项目变更管理的原则和工作流程1.项目变更管理的原则2.变更管理的组织机构3.变更管理的工作程序四、项目变更管…...

【Vue3源码】第二章 effect功能的完善补充
【Vue3源码】第二章 effect功能的完善补充 前言 上一章节我们实现了effect函数的功能stop和onstop,这次来优化下stop功能。 优化stop功能 之前我们的单元测试中,stop已经可以成功停止了响应式更新(清空了收集到的dep依赖) st…...
CHAPTER 2 Web Server - apache(httpd)
Web Server - httpd2.1 http2.1.1 协议版本2.1.2 http报文2.1.3 web资源(web resource)2.1.4 一次完整的http请求处理过程2.1.5 接收请求的模型2.2 httpd配置2.2.1 MPM(多进程处理模块)1. 工作模式2. 切换MPM3. MPM参数配置2.2.2 主配置文件1. 基本配置2. 站点访问控制常见机制…...

【Vagrant】下载安装与基本操作
文章目录概述软件安装安装VirtualBox安装Vagrant配置环境用Vagrant创建一个VMVagrantfile文件配置常用命令概述 Vagrant是一个创建虚拟机的技术,是用来创建和管理虚拟机的工具,本身自己并不能创建管理虚拟机。创建和管理虚拟机必须依赖于其他的虚拟化技…...

常用类(五)System类
(1)System类常见方法和案例: (1)exit:退出当前程序 我们设计的代码如下所示: package com.ypl.System_;public class System_ {public static void main(String[] args) {//exit: 退出当前程序System.out.println("ok1"…...

Navicat Premium 安装 注册
Navicat Premium 一.Navicat Premium的安装 1.暂时关闭windows的病毒与威胁防护弄完再开,之后安装打开过程中弹窗所有警告全部允许,不然会被拦住 2.下载安装包,解压 链接:https://pan.baidu.com/s/1X24VPC4xq586YdsnasE5JA?pwdu4vi 提取码…...

回溯算法总结
首先回溯算法本身还是一个纯暴力的算法,只是回溯过程可能比较抽象,导致大家总是感觉看到的相关题目做的不是很顺畅,回溯算法一般来说解决的题目有以下几类:组合问题:lq77、lq17、lq39、lq40、lq216、切割问题ÿ…...

ccc-pytorch-基础操作(2)
文章目录1.类型判断isinstance2.Dimension实例3.Tensor常用操作4.索引和切片5.Tensor维度变换6.Broadcast自动扩展7.合并与分割8.基本运算9.统计属性10.高阶OP大伙都这么聪明,注释就只写最关键的咯1.类型判断isinstance 常见类型如下: a torch.randn(…...

独居老人一键式报警器
盾王居家养老一键式报警系统,居家养老一键式报警设备 ,一键通紧急呼救设备,一键通紧急呼救系统,一键通紧急呼救器 ,一键通紧急呼救终端,一键通紧急呼救主机终端产品简介: 老人呼叫系统主要应用于…...

软考案例分析题精选
试题一:阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。某公司中标了一个软件开发项目,项目经理根据以往的经验估算了开发过程中各项任务需要的工期及预算成本,如下表所示:任务紧前任务工期PV…...

基于SpringBoot+vue的无偿献血后台管理系统
基于SpringBootvue的无偿献血后台管理系统 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背…...

详解js在事件中,如何传递复杂数据类型(数组,对象,函数)
文章目录 前言一、何谓预编译,变量提升?二、复杂数据类型的传递 1.数组2.对象3.函数总结前言 在JavaScript这门编程语言学习中,如何传参,什么是变量提升,js代码预编译等等。要想成为一名优秀的js高手,这些内…...

高并发架构 第一章大型网站数据演化——核心解释与说明。大型网站技术架构——核心原理与案例分析
大型网站架构烟花发展历程1.1.1初始阶段的网站构架1.1.2应用服务和数据服务分离1.1.3使用缓存改善网络性能1.1.4使用应用服务器集群改善网站的并发处理能力1.1.5数据库读写分离1.1.6使用反向代理和cdn加速网站相应1.1.1初始阶段的网站构架 大型网站都是由小型网站一步步发展而…...
VPP接口INPUT节点运行数据
在设置virtio接口接收/发送队列函数的最后,更新接口的运行数据。 void virtio_vring_set_rx_queues (vlib_main_t *vm, virtio_if_t *vif) { ...vnet_hw_if_update_runtime_data (vnm, vif->hw_if_index); } void virtio_vring_set_tx_queues (vlib_main_t *vm,…...

RabbitMQ学习(九):延迟队列
一、延迟队列概念延时队列中,队列内部是有序的,最重要的特性就体现在它的延时属性上,延时队列中的元素是希望 在指定时间到了以后或之前取出和处理。简单来说,延时队列就是用来存放需要在指定时间内被处理的 元素的队列。其实延迟…...

TCP并发服务器(多进程与多线程)
欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起探讨和分享Linux C/C/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 TCP并发服务器(多进程与多线程)1. 多进程并发服务器(1)…...
第1章 Memcached 教程
Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。 Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩展性的重要因素…...

【2022.12.9】Lammps+Python 在计算g6(r)时遇到的问题
目录写在前面绘制g6( r )执行步骤【updated】如何检查图像的正确性:不是编程问题,而是数学问题的一个小bug废稿2则:写在前面 全部log: 【2022.11.16】LammpsPythonMATLAB在绘制维诺图时遇到的问题 绘制g6( r )执行步骤【updated…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...

地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...

在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...

水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关
在水泥厂的生产流程中,工业自动化网关起着至关重要的作用,尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关,为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多,其中不少设备采用Devicenet协议。Devicen…...

【堆垛策略】设计方法
堆垛策略的设计是积木堆叠系统的核心,直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法,涵盖基础规则、优化算法和容错机制: 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则: 大尺寸/重量积木在下…...