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

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
[该图片来自: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、切割问题&#xff…...

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…...

【论文笔记】若干矿井粉尘检测算法概述

总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...

Map相关知识

数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...

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

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

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦&#xff0…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案

在大数据时代,海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构,在处理大规模数据抓取任务时展现出强大的能力。然而,随着业务规模的不断扩大和数据抓取需求的日益复杂,传统…...

React从基础入门到高级实战:React 实战项目 - 项目五:微前端与模块化架构

React 实战项目:微前端与模块化架构 欢迎来到 React 开发教程专栏 的第 30 篇!在前 29 篇文章中,我们从 React 的基础概念逐步深入到高级技巧,涵盖了组件设计、状态管理、路由配置、性能优化和企业级应用等核心内容。这一次&…...

C++ 类基础:封装、继承、多态与多线程模板实现

前言 C 是一门强大的面向对象编程语言,而类(Class)作为其核心特性之一,是理解和使用 C 的关键。本文将深入探讨 C 类的基本特性,包括封装、继承和多态,同时讨论类中的权限控制,并展示如何使用类…...

触发DMA传输错误中断问题排查

在STM32项目中,集成BLE模块后触发DMA传输错误中断(DMA2_Stream1_IRQHandler进入错误流程),但单独运行BLE模块时正常,表明问题可能源于原有线程与BLE模块的交互冲突。以下是逐步排查与解决方案: 一、问题根源…...