macOS | nvram boot-args的作用及设置方式

这篇具有很好参考价值的文章主要介绍了macOS | nvram boot-args的作用及设置方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文总结如何在 macOS 上设置 boot-args 以及 boot-args 的作用。

Update: 2022 / 10 / 18



debug=0x144

参考这里 1

sudo nvram boot-args="debug=0x144"

这是内核调试功能的组合,将向您显示有关内核进程的额外信息,如果系统遇到内核崩溃,这将非常有用。

另一种选择是使用 debug=0x14e,它将显示更多的日志记录选项。这样做的主要用途是它启用旧式内核恐慌,在屏幕上显示有关系统恐慌原因的滚动文本,而不是显示灰色背景和仅重新启动系统的消息。

替代调试选项如下,尽管这些可能只对内核程序员有用:

0x01 - Stop at boot time and wait for the debugger to attach
0x02 - Send kernel debugging output to the console
0x04 - Drop into debugger on a nonmaskable interrupt
0x08 - Send kernel debugging information to a serial port
0x10 - Make ddb the default debugger
0x20 - Output diagnostics information to the system log
0x40 - Allow the debugger to ARP and route
0x80 - Support old versions of gdb on newer systems
0x100 - Disable the graphical panic dialog screen
Source: Boot argument options in OS X

ddb 只是一个调试器。一旦遇到系统问题,启用这些模式来收集信息是绝对安全的。


问题

iokit/common not permitted

当遇到如下的报错时 2

% sudo nvram boot-args="debug=0x144"
Password:
Sorry, try again.
Password:
nvram: Error setting variable - 'boot-args': (iokit/common) not permitted

因为从 macOS Sierra 开始,您必须启动到 recovery partition 才能运行 nvram 命令来正确设置 boot-args NVRAM 变量。

此外,SIP 适用于 Mac 上的所有用户,包括管理员和 root
recovery patition 下使用 csrutil disable 来禁用 SIP 将允许您在正常的启动中设置引导参数。

警告:除非确实需要,否则不应禁用 SIP


进入 recovery partition
  • 非苹果芯片 PC 3
    通过重新启动并按住 ⌘+R 进入恢复模式,直到出现 Apple 标志。
    在顶部菜单中单击实用程序 > 终端。
    在终端窗口中输入 csrutil disdable 。然后重新启动 Mac
  • 苹果芯片 PC 4
    启动 Mac 并继续按住电源按钮,直至您看到启动选项窗口。选择“选项”,然后点按“继续”。

参考链接


  1. What does "sudo nvram boot-args=“debug=0x10"” do to my Mac? ↩︎

  2. How to overcome Error Setting Variable - ‘boot-args’ : (iokit/common) not permitted ↩︎

  3. Trying to set boot-args with nvram gets “general error” on Sierra ↩︎

  4. Mac电脑进入恢复模式详细教程 ↩︎文章来源地址https://www.toymoban.com/news/detail-449285.html

到了这里,关于macOS | nvram boot-args的作用及设置方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 第六章、用户体验五要素之框架层解析(本文作用是通俗讲解,让你更容易理解)

            结构层定义产品运行形式,框架层则用于确定用什么样的功能或者形式来实现。在框架层,功能型和信息型产品都需要信息设计,不同的是功能型还需要界面设计,而信息型产品则是导航设计。         1、界面设计:如果涉及提供给用户做某些事的能力,那就是界

    2024年02月09日
    浏览(13)
  • Springboot tomcat bean 默认作用域 singleton 情况下模拟线程不安全情况 设置多例方式 prototype

    Springboot tomcat bean 默认作用域 singleton 情况下模拟线程不安全情况 设置多例方式 prototype

    目录 写一个控制层的类 验证方法 ​编辑 分别执行如下请求,先执行等待时间久的 日志结果 结论 配置多例模式 配置文件application.properties 类加注解 配置类方式 增加验证 控制层  服务层 都是  singleton 模式情况 模拟线程不安全情况 service 代码 ctr 测试方式 运行日志 结论

    2024年02月12日
    浏览(29)
  • 设置JdbcTemplate打印sql语句的几种实现方式使用Spring Boot打印SQL语句

    在使用JdbcTemplate执行SQL查询时,可以将其配置为打印SQL语句,以便调试和优化查询。以下是一些方法可以设置JdbcTemplate打印SQL语句: 如果你使用Log4j作为日志框架,可以在log4j.properties或log4j.xml文件中添加以下配置,将JdbcTemplate打印的SQL语句输出到控制台或日志文件中: 这将

    2024年02月15日
    浏览(51)
  • Vivado时序约束TCL命令——获取引脚(get_pins)在FPGA设计中起着重要作用。本文将为大家详细介绍get_pins命令的语法和使用方法。

    Vivado时序约束TCL命令——获取引脚(get_pins)在FPGA设计中起着重要作用。本文将为大家详细介绍get_pins命令的语法和使用方法。 get_pins命令用于获取指定对象(Object)的引脚(Pin)列表。我们可以使用get_pins来获取具有特定命名约定的引脚(如CLOCK、RESET等),并通过对这些引

    2024年02月05日
    浏览(107)
  • OpenCore 版本升级后清除NVRAM

    OpenCore 版本升级后清除NVRAM

    OpenCore升级文件之后,如果不清楚NVRAM,用hackintool查询的时候,版本号还是原来的。OC 0.8.1之后,不能直接通过勾选config.plist选项去启用Reset Nvram功能。 ⒈修改你的OC配置文件config, 1.找到Misc — Boot–Show Picker 并勾选; 2.找到Misc — Boot–HideAuxiliary 确保取消勾选 ⒉UEFI-driver

    2024年02月11日
    浏览(5)
  • Spring boot @ConditionalOnProperty 使用以及作用

    来源 即: 来源于Spring boot 中的自动化配置部分 实际作用: 通过读取本地配置文件中的值来判断 某些 Bean 或者 配置类 是否加入spring 中。 即 当前类通过 @Component 或者 @Configuration 注册实体到spring 中时,都可以通过 @ConditionalOnProperty 来控制是否加入或者说有无该项。 与 @Com

    2024年02月09日
    浏览(26)
  • 常用的 Spring Boot 注解及其作用

    Spring Boot 提供了许多注解来简化开发,并帮助开发者在 Spring 应用中实现各种功能。以下是一些常用的 Spring Boot 注解及其作用: @SpringBootApplication : 作用:用于标识主启动类,通常位于 Spring Boot 应用的入口类上。 功能:该注解整合了三个常用注解: @Configuration 、 @EnableAut

    2024年04月25日
    浏览(8)
  • [toolschain] 怎么运用git 嵌套git 管理(子文件夹中也有个git) 并且如何简单设置使用repo的笔记 本文是求助GPT的记录 实践有用

    [toolschain] 怎么运用git 嵌套git 管理(子文件夹中也有个git) 并且如何简单设置使用repo的笔记 本文是求助GPT的记录 实践有用

    Q:一个文件夹a,a中的文件被a中的git 1管理,同时与a平级有一个git2,怎么让git 也能管理到git1 的内容 A:如果你想让一个 Git 仓库(git2)也能管理另一个 Git 仓库(git1)的内容,你可以使用 Git 的子模块(submodule)功能。子模块允许一个 Git 仓库包含另一个 Git 仓库,使得你可

    2024年02月04日
    浏览(10)
  • macOS telnet替代方式

    macOS telnet替代方式

    经过使用Linux,常常用Linux的telnet查看端口畅通,是否有防火墙,但是在mac上已经没有这个命令了,那么怎么使用这个命令或者有没有其他替代呢,win和linux是否可以使用相同的替代。macOS可以原生用nc命令替代,当然也可以安装telnet: brew install telnet(python3) win是有telnet的,

    2024年02月05日
    浏览(6)
  • 黑苹果重置NVRAM方法,无法进入系统,丢失引导

    黑苹果重置NVRAM方法,无法进入系统,丢失引导

    上文说到使用OCAT更新OpenCore引导版本,部分更新后系统仍显示为旧版本,需要重置一下NVRAM即可,今天讲一下重置NVRAM所遇到的一些问题 使用OCAuxiliaryTools和OpenCore Configurator都可以 注:如果勾选了Misc→Boot→HideAuxiliary/隐藏辅助条目,则需在引导界面按下空格才会显示Reset NVRA

    2024年01月22日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包