MACOS开发、使用常见问题汇总

MACOS常见问题

本文记录使用macos遇到的常见问题,后面会持续更新,觉得有用的可以收藏一下。

打不开xxx.app,因为它来自身份不明的开发者解决方法(开启任何来源)

  1. 打开终端(Terminal)程序

  2. 拷贝sudo spctl --master-disable至终端

  3. 输入电脑密码,回车执行即可

打开应用软件提示“文件已损坏”

原因

在 macOS 中,提示“文件已损坏”通常是由于以下原因之一:

  • 软件未通过 Apple 的开发者认证:macOS 有 Gatekeeper 安全机制,默认会阻止未通过 Apple 开发者认证的软件运行。
  • 不信任的来源:macOS 将从未知来源下载的应用标记为不安全(标记为 quarantine(隔离区))。
  • 文件确实损坏:下载过程中文件可能损坏,导致无法正确运行。

解决办法

如果是文件确实损坏,那么下面的办法都没用,只能下载完整的文件。

如果是别的原因,可依次尝试(不一定全要尝试,有效果即可)以下方法:

  1. 更改安全与隐私设置

    通过 Gatekeeper 允许未认证的软件运行:

    1. 打开 系统偏好设置安全性与隐私
    2. 点击 通用 标签。
    3. 如果有 “XXX 被阻止,因为它未被开发者验证” 的提示,点击 仍然打开
  2. 通过右键打开

    在 Finder 中通过右键强制运行软件:

    1. 在 Finder 中找到该软件。

    2. 右键点击 → 选择 打开

    3. 弹出窗口后,点击 打开 按钮。

  3. 修复文件权限

    使用以下命令修复权限(注意修改命令最后面的应用名,改为自己要打开的软件):

    # 例如要打开navicat,使用这条命令
    sudo xattr -r -d com.apple.quarantine /Applications/Navicat\ Premium.app
    # 要打开Alfred5,使用这条命令
    sudo xattr -r -d com.apple.quarantine /Applications/Alfred\ 5.app
    
  4. 禁用 Gatekeeper(不推荐长期使用)

    如果你信任该软件,可以临时关闭 Gatekeeper。

    1. 打开终端 (Terminal)。
    2. 输入以下命令并按回车:sudo spctl --master-disable
    3. 输入管理员密码并回车。
    4. 打开软件后,再通过以下命令重新启用 Gatekeeper:sudo spctl --master-enable

提示文件已损坏打开终端执行这个命令就可以打开了(注意修改命令最后面的应用名,改为自己要打开的软件)

# 例如要打开navicat,使用这条命令
sudo xattr -r -d com.apple.quarantine /Applications/Navicat\ Premium.app
# 要打开Alfred5,使用这条命令
sudo xattr -r -d com.apple.quarantine /Applications/Alfred\ 5.app

关闭SIP

什么是SIP

SIP(System Integrity Protection,系统完整性保护)是 macOS 中的一项安全机制,从 OS X El Capitan(10.11)开始引入。它的主要目的是防止恶意软件或未经授权的用户修改系统级别的重要文件和目录。

以上是官方的介绍,有点吓人。换句话来说,SIP类似于Windows防火墙和Android手机Root。这应该可以解决很多人的困惑。

苹果应用商店里的软件运行在沙箱中,无法访问系统文件,所以大部分软件都被阉割了。很多优秀的软件都没有在Apple Store上架,因为它们需要SIP系统权限。苹果不审核。部分软件采用双版本,分为官方版和App Store版。App Store是简单易用的版本,全功能版本需要单独下载。

默认情况下,macOS 仅允许运行通过 Apple App Store 下载的软件。

如果您想在 macOS 上安装第三方应用程序,您需要在“系统偏好设置”“安全和隐私”“常规”中启用允许 App Store 和批准的开发者的选项

如果你想在macOS上安装一些反编译和破解的应用程序,则需要关闭SIP

如果您想从任何来源安装软件,您需要打开终端并输入命令。如果要关闭SIP,需要关机才能操作(早期的macOS系统中不需要关机)。为什么越来越麻烦呢?

它放在苹果应用商店,每售出一次,苹果拿走1/3。例如,如果您的软件售价为 100 美元,Apple 会收取 33.33 美元。

所谓批准的开发者就是去苹果购买开发者账户,然后用开发者账户对应用程序进行签名。

购买苹果开发者账户,个人每年99美元。该企业每年299美元。

如何关闭

  1. 检查状态

    首先检查SIP系统完整性保护是否开启。

    打开terminal并输入以下命令并按 Enter:csrutil status

    您将看到以下消息之一,指示 SIP 状态

    • 启用未关闭:
    System Integrity Protection status: enabled.
    
    • 禁用:
    System Integrity Protection status: disabled
    

    如果没有关闭,则需要关闭SIP!

  2. 关闭

    进入恢复模式(Recovery模式),步骤如下:

    1. 关机

    2. 长按开机键

      老版本系统是开机时按住Command+R键,2024年的版本都是长按开机键。

      恢复模式如图,打开终端(由于系统不断更新,实际可能不完全一致,但大概相同):
      image-20241117222513047

  3. 在终端输入命令csrutil disable并按Enter键。

    终端提示:Successfully disabled System Integrity Protection. Please restart the machine for changes to take effect.表示您已成功关闭SIP保护。

  4. 点击左上角的苹果图标,然后点击重启,就可以正常使用从网站下载的应用程序了。

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

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

相关文章

【MySQL实战45讲笔记】基础篇——深入浅出索引(上)

系列文章 基础篇——MySQL 的基础架构 基础篇——redo log 和 binlog 基础篇——事务隔离 目录 系列文章深入浅出索引(上)4.1 索引的常见模型4.2 InnoDB 的索引模型4.3 索引维护4.4 思考:为什么要重建索引以及如何做? 深入浅出索…

深入理解电子邮件安全:SPF、DKIM 和 DMARC 完全指南

引言 在当今数字时代,电子邮件已经成为我们日常通信中不可或缺的一部分。然而,随之而来的安全问题也日益突出。邮件欺诈、钓鱼攻击和垃圾邮件等威胁不断增加,这促使了多种邮件安全验证机制的出现。本文将深入探讨三个最重要的邮件安全协议&a…

C++:shared_from_this()应用在异步任务中的应用

shared_from_this() 的主要用途是安全地创建 std::shared_ptr 实例来管理当前对象的生命周期&#xff0c;确保对象在异步任务或新线程中不会在使用过程中被销毁。示例如下&#xff1a; 示例代码&#xff1a; #include <iostream> #include <memory> #include <…

vue-quill-editor富文本组件二次封装,上传图片是base64的图片回显异常,进行自定义上传

<template><div><QuillEditor ref"myQuillEditor" theme"snow" :content"modelValue" :options"data.editorOption" contentType"html" update:content"setValue" /><!-- 使用自定义图片上传…

关于一次开源java spring快速开发平台项目RuoYi部署的记录

关于一次开源java spring快速开发平台项目RuoYi部署的记录 本次因为需要一些练习环境&#xff0c;想要快速搭建一个javaweb 项目作为练习环境&#xff0c;经过查询和实验找到一个文档详细&#xff0c;搭建简单&#xff0c;架构也相对比较新的开源项目RuoYi。 项目介绍&#xf…

Quartus+Nios II for eclipse问题合集

由于对于FPGANIOS II 的工作需要&#xff0c;对工作过程中遇到的问题进行记录&#xff0c;持续更新。 1、BSP directory does not exist: . Stop.Nios II使用过程中遇到的一些问题2_error executing nios2-bsp-generate-files --bsp-di-CSDN博客https://blog.csdn.net/qq_39485…

「OpenCV交叉编译」ubuntu to arm64

Ubuntu x86_64 交叉编译OpenCV 为 arm64OpenCV4.5.5、cmake version 3.16.3交叉编译器 gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu 可在arm或linaro官网下载所需版本&#xff0c;本文的交叉编译器可点击链接跳转下载 Downloads | GNU-A Downloads – Arm Developer L…

Vue通用组件设计原则

在 Vue.js 开发中&#xff0c;设计通用组件是一项重要的任务&#xff0c;可以提升代码的复用性和可维护性。以下是通用组件设计的主要原则和最佳实践&#xff1a; 1. 清晰的职责划分 通用组件应该具有单一的职责&#xff0c;专注于完成某一类特定功能&#xff0c;而不依赖具体…

基于深度学习的点云分割网络及点云分割数据集

点云分割是根据空间、几何和纹理等特征对点云进行划分&#xff0c;使得同一划分内的点云拥有相似的特征。点云的有效分割是许多应用的前提&#xff0c;例如在三维重建领域&#xff0c;需要对场景内的物体首先进行分类处理&#xff0c;然后才能进行后期的识别和重建。 传统的点…

Excel - VLOOKUP函数将指定列替换为字典值

背景&#xff1a;在根据各种复杂的口径导出报表数据时&#xff0c;因为关联的表较多、数据量较大&#xff0c;一行数据往往会存在三个以上的字典数据。 为了保证导出数据的效率&#xff0c;博主选择了导出字典code值后&#xff0c;在Excel中处理匹配字典值。在查询百度之后&am…

硬件知识 cadence16.6 原理图输出为pdf 网络名下划线偏移 (ORCAD)

1. cadence原理图输出为PDF网络名下划线偏移 生这种情况的原因 1. 设计的原理图图纸大小比正常的 A4图纸大。 2. 打印为PDF 的时候&#xff0c;打印机的设置有问题。 2.cadence原理图输出为 PDF网络名下划线偏移的情况 可以看到上图&#xff0c;网络名往上漂移。 3. 解决办法 …

华为机试HJ58 输入n个整数,输出其中最小的k个

首先看一下题 描述 输入n个整数&#xff0c;找出其中最小的k个整数并按升序输出 本题有多组输入样例 数据范围&#xff1a; 1≤n≤1000 &#xff0c;输入的整数满足 1≤val≤10000 输入描述&#xff1a; 第一行输入两个整数n和k 第二行输入一个整数数组 输出描述&#xff1…

【视觉SLAM】4b-特征点法估计相机运动之PnP 3D-2D

文章目录 0. 前言1. PnP求解1.1 直接线性变换DLT1.2 P3P1.3 光束平差法BA2. 实现0. 前言 透视n点(Perspective-n-Point,PnP)问题是计算机视觉领域的经典问题,用于求解3D-2D的点运动。换句话说,当知道 N N N个世界坐标系中3D空间点的坐标以及它们在图像上的投影点像素坐标…

随机森林(Random Forest)详解

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

对原jar包解压后修改原class文件后重新打包为jar

文章目录 背景三种修改方式1.POM中移除原jar中依赖的历史版本2.原jar它不使用pom依赖而是直接放在源码中再编译使用JarEditor 插件对源码进行修改(推荐)使用java-decompiler反编译后修改源码覆盖原class&#xff08;不好用-不推荐直接跳过&#xff09;提醒 参考资料-推荐阅读拓…

PyQt6+pyqtgraph折线图绘制显示

1、实现效果 2、环境&#xff1a; 确认已经安装pyqtgraph的模块&#xff0c;如果没有安装&#xff0c;使用命令安装&#xff1a; pip install pyqtgraph 3、代码实现&#xff1a; 绘制折线函数&#xff1a; import sys import random from PySide6.QtWidgets import QAppl…

Altium Designer学习笔记 1-5 工程创建_元件库创建

基于Altium Designer 23学习版&#xff0c;四层板智能小车PCB 目录 1、工程组成 2、AD工程创建 3、元件库的阻容模型创建 4、IC类的元件库模型创建 5、排针类的元件库模型创建 1、工程组成 主要包括原理图库----原理图----PCB库----PCB 2、AD工程创建 新建工程项目 …

java SQL中使用for update作用和用法

在 Java 开发中&#xff0c;使用 FOR UPDATE 子句的 SQL 查询主要用于实现行级锁定&#xff0c;以确保在事务处理过程中数据的一致性和完整性。FOR UPDATE 通常在以下情况下使用&#xff1a; 1. 行级锁定 FOR UPDATE 会锁定查询结果集中涉及的行&#xff0c;防止其他事务在同一…

C++:operator new/delete函数

每个类默认都会有一个全局范围的 operator new 和 operator delete 接口&#xff0c;它们是由标准库提供的&#xff0c;可以用于动态内存分配和释放。如果一个类没有显式定义自己的 operator new 或 operator delete&#xff0c;默认的全局版本会被使用。 默认 operator new 的…

Video Duplicate Finder 快速识别并去除重复的视频和图像!

文章目录 下载 后续升级 Video Duplicate Finder&#xff08;视频重复查找器&#xff09;是一款开源的跨平台视频&#xff08;以及图像&#xff09;去重软件&#xff0c;通过对比文件内容和特征&#xff0c;快速识别出重复的视频和图像文件&#xff0c;即使是被压缩裁剪过、…