解决 MacOS Sonoma 14 系统下修改用户名无法进入系统的历史Bug

苹果系统祖传Bug概述

  • 在MacOS中如果在系统偏好设置/用户和群组中
  • 尝试修改用户名或用户ID,当且仅当只有一个管理员账号的时候
  • 重启,就可能面临到无法进入操作系统,即使出现了登录框,但是一直是 loading状态
  • 在这个期间,你有可能因为人的正常思维修改用户名的同时也修改了用户对应的路径
  • 官方其实知道这块会有问题,在文档上也给出过警告提示,如下
  • https://support.apple.com/zh-cn/102547
  • 但是这类操作是非常敏感而且是有风险的,但是大家要理解小白用户有恐怖的破坏力
  • 其实我不理解的是,如果修改会出现大的问题,为何官方还把这个问题放出来,如果客户误操作,进不去系统导致数据丢失,苹果官方到底有没有责任呢?
  • 外加互联网上一大堆的教程,弄着弄着,可能本来不是一个大问题,就变成了一个大问题
  • 而且每个人的电脑环境不同,也许别人的解决方案并不适合你的
  • 客服告诉我,这个Bug起码有5年了,我也是醉了 …
  • 现在把解决步骤分享出来

解决方案

  • 网上有很多 command + s 进入后执行一些终端命令,挂载和删除
  • 实际上,我遇到的问题更邪门,压根无法进入到输出模式,一大堆底层代码输出后,仍旧是 loading,所以这种方案被遗弃
  • 现在我来讲下解决这个问题的过程,有一部分是借助搜索引擎,有一部分是动手实践,还有一部分是靠猜

1 )初步研究和客服电话沟通流程

  • command + r 进入恢复模式
  • 检查硬盘数据是否挂载,这一步很重要,如果不挂挂载是没法在终端中看到的
  • 进入磁盘管理工具,对数据盘进行挂载, 一般而言,挂载的是 Macintosh HD 数据 这个盘,选中,进行挂载操作 (必须)
  • 之后退出 磁盘管理工具,在最顶部菜单栏选择 实用工具下的终端,执行 $ cd /Volumes/Macintosh HD/var/db/
  • 好进入这里之后,执行 $ lsls -la 可以看到有一个.AppleSetupDone 文件
  • 我们可以进行删除 rm .AppleSetupDone
  • 一般而言,如果再次执行 $ reboot 重启后进入系统 即可重置管理员,但是我遇到的问题并没有那么简单
  • 昨日,我联系苹果客服,告诉我大概也就这几个步骤
  • 客服电话中说如果还解决不了,可以再次到磁盘工具中,新建文件夹镜像进行数据的拷贝来避免数据丢失造成的损失
  • 这里他没有告诉我,要先挂载 Macintosh HD 数据 这个盘,导致我执行 $ rm "/Volumes/Macintosh HD/var/db/.AppleSetupDone"(包括引号)会有 no such file or directory 的提示
  • 而且,因此,我也没有办法避免数据的丢失,因为没有挂载,所以无法浏览到相关数据,我当时就没意识到这个问题
  • 当时客服态度比较好,而且一直说,想着帮我解决问题,也花了不少时间,又夸我思路清晰,描述和思考的很专业
  • 后来我想想,这算不算一种"捧杀" … 在职场中"捧杀"和"贬低" 这两种都是要不得的,好,话说回来
  • 在沟通当时,我并没有发现太多对我有用的信息
  • 在沟通之后, 我看到了自己没有挂载磁盘,并且
  • 最终发现了新大陆,找到了 .AppleSetupDone 这个文件
  • 在这个文件删除之后,其实按照互联网大多数人的做法,执行 $ reboot 重启后,就可以重新设置管理员以此来解决问题
  • 但是,我的电脑和系统,在重启后,在输入登录密码之后,菊花还是一直在转圈, 之前是加载进度条卡住
  • 现在是菊花转圈圈,都是Loading状态, 这个问题仍旧没有解决

2 )最终解决

  • 在这之前,我还使用恢复模式第二个选项,重新做了两次系统(无抹盘),但是都没有任何的效果,客服之前也说没有用
  • 昨天我在我的另一台Mac上升级了一下系统,因为硬件不同,无法升级到同样的系统版本,但也无妨我多次模拟这个问题
  • 昨天临睡前,我想了想,如果我把我的用户文件夹给删除掉(或重命名),它会不会重新走初始化流程呢
  • 抱着这个想法,今天早晨,我尝试了一下
    • 仍旧按照之前的步骤挂载数据盘,并删除 .AppleSetupDone 这个文件
    • 之后,我在 /Volumes/Macintosh HD/Users 目录下重命名了我之前那个唯一的用户目录,比如这里原本是A 重命名改成M (随意),因为里面的数据后期还需要还原回来, 之后执行重启
    • 天终于亮了,在输入密码重新进入后,没有了 Loading, 出现了 辅助功能的设定流程,也就是进入重置之前的那个用户的数据的流程
    • 在我一步一步的处理好之后,终于进入了系统
    • 还没完,进入系统设置/用户与群组,发现这个用户仍旧是一个管理员,并没有像是网上说的丢失了管理员权限
    • 可以看到,右键 高级选项后,看到 用户名这一栏是灰色的 (这个注意了)
    • 这次,我长了个心眼,重新设置了另一个管理员,来以防万一,后续弄好后可以删除也可以继续保留
    • 登录另一个管理员,在经过一系列初始化操作后,进入用户目录,这里一般而言,除了 共享,客人,还应该有三个用户目录
    • 分别是最开始改名的原始用户目录 M,后来重新初始化的用户目录A(代号),最后是刚刚新建管理员的用户目录,假设是 B
    • 现在已经进入了另一个管理员账户,所以就可以操作MA目录了,同样,这个操作也可以在恢复模式下操作(麻烦,没有必要)
    • 好的,现在,删除A目录,需要输入管理员密码,之后把M目录重命名成A
    • 再次说明,这里M, A, B目录都是代号(按照自己设定的来) A目录就是最原始的那个目录,对应用户与群组高级选项中个人目录设定的那个
    • 好的,目前还剩两个用户目录: AB 分别对应两个管理员账号,再次执行重启,选择最原始的管理员账号进行登录,再经过短暂的Loading后,发现一切都回来了 …
    • 这里,如果之前修改过用户ID, 默认是 501,修改成别的,应该也回不来也同样卡在Loading,用类似的方法,可以把用户ID再改成501,看下别被另一个管理员占用
    • 注意,用户ID最好不要乱改,否则容易出问题
    • 如果到目前,仍旧恢复不了,可以直接用另一个管理员账号,可以将之前的管理员账号目录下的数据转移过来
  • 如果发现当前用户下,账户名称是灰色,新建另一个管理员账号对当前账号的名称进行修改

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

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

相关文章

javaScript 深浅拷贝

javaScript深浅拷贝 浅拷贝 自己创建一个新的对象,来接受你要重新复制或引用的对象值。如果对象属性是基本的数据类型,复制的就是基本类型的值给新对象,但如果属性是引用数据类型,复制的就是内存中的地址,如果其中一个…

Python 编程中的迭代器、生成器和装饰器探究【第110篇—迭代器】

Python 编程中的迭代器、生成器和装饰器探究 在Python编程中,迭代器(Iterators)、生成器(Generators)和装饰器(Decorators)是三个强大的概念,它们为代码的可读性、效率和灵活性提供…

PaddleOCR的部署教程(实操环境安装、数据集制作、实际应用案例)

文章目录 前言 PaddleOCR简介 一、PaddleOCR环境搭建 因为我之前安装过cuda和cudnn,查看cuda的版本根据你版本安装合适的paddlepaddle版本(之前没有安装过cuda的可以看我这篇文章Ubuntu20.04配置深度学习环境yolov5最简流程) 1.创建一个…

【C++从0到王者】第四十八站:最短路径

文章目录 一、最短路径二、单源最短路径 -- Dijkstra算法1.单源最短路径问题2.算法思想3.代码实现4.负权值带来的问题 三、单源最短路径 -- Bellman-Ford算法1.算法思想2.算法实现3.SPFA优化4.负权回路 四、多源最短路径 -- Floyd-Warshall算法1.算法思想2.算法实现 一、最短路…

antd vue 日期控件的使用(选年份)

Ant Design Vue-------DatePicker 今天就讲讲Ant Design Vue下的控件----DatePicker 日期选择框 结合项目中的需求,先讲一下选择年份如何使用,需求: (1)将库中存的年份读出到DatePicker控件里面; &…

Windows 10上安装Docker

在Windows 10上安装Docker需要使用Docker Desktop for Windows,这是一个完全包含Docker工具和Docker Engine的应用程序,让你可以在Windows环境中运行容器化应用程序。以下是安装Docker Desktop for Windows的步骤: 系统要求检查: …

推荐收藏!字节AI Lab-NLP算法(含大模型)面经总结!

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂同学、参加社招和校招面试的同学,针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何备战、面试常考点分享等热门话题进行了深入的讨论。 今天整理…

Python调用ChatGPT API使用国内中转key 修改接口教程

大家好,我是淘小白~ 有的客户使用4.0的apikey ,直接使用官方直连的apikey消费很高,有一位客户一个月要消费2万,想使用4.0中转的apikey,使用中转的apikey 需要修改官方的openai库,下面具体说下。 1、首先确保安装的op…

Java ElasticSearch-Linux面试题

Java ElasticSearch-Linux面试题 前言1、守护线程的作用?2、链路追踪Skywalking用过吗?3、你对G1收集器了解吗?4、你们项目用的什么垃圾收集器?5、内存溢出和内存泄露的区别?6、什么是Spring Cloud Bus?7、…

安装ProxySQL,教程及安装链接(网盘自提)

一、网盘下载,本地直传 我网盘分享的是proxysql-2.5.5-1-centos8.x86_64.rpm,yum或者dnf直接安装就行 提取码:rhelhttps://pan.baidu.com/s/1nmx8-h8JEhrxQE3jsB7YQw 官方安装地址 官网下载地址https://repo.proxysql.com/ProxySQL/ 二、…

题解:CF1889C1-Doremy‘s Drying Plan (Easy Version)

题解:CF1889C1-Doremy’s Drying Plan (Easy Version) 一、 题意描述 1. 题目链接 (1) CF链接 CodeForces (2) 洛谷链接 洛谷 2. 题目翻译 有一个长度为 n n n 的序列,上面有 n n n 个点&#xf…

快速搭建项目运行环境(JDK+Maven+Git+Docker+Mysql+Redis+Node.js+Nginx)+前后端项目分别部署

JDK ①、从oracle官方网站上下载1.8版本中的最新版的JDK https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html ②、把文件通过WinSCP或者XFTP上传到服务器上 ③、解压和配置环境变量 #进入安装包目录,解压 cd /data/tmp tar -zxvf jdk-8…

【AIGC】“光影交织的恋曲:绝美情侣在蓝天下的深情互动“

外貌特征 (Physical Appearance):给远景镜头,这对情侣拥有出众的容貌和气质。男子身材挺拔,五官立体鲜明,阳光洒在他俊朗的脸庞上,更显英气逼人;女子则拥有一头柔顺亮丽的秀发,明亮的眼睛如同星…

代码随想录| 深搜、797.所有可能的路径

回溯算法其实就是深搜&#xff0c;只不过这里的深搜是侧重于在图上搜索&#xff0c;回溯大多是在树上搜索。 797.所有可能的路径 完成 代码 模板题 class Solution {List<List<Integer>> res new ArrayList<>();List<Integer> path new ArrayList…

GPT-4论文精读【论文精读·53】

Toolformer 今天我们来聊一下 GPT 4&#xff0c;但其实在最开始准备这期视频的时候&#xff0c;我是准备讲 Toolformer 这篇论文的&#xff0c;它是 Meta AI 在2月初的时候放出来的一篇论文。说这个大的语言模型可以利用工具了&#xff0c;比如说它就可以去调用各种各样的API&a…

腾讯云优惠券领取的三个渠道,一个比一个优惠!

腾讯云代金券领取渠道有哪些&#xff1f;腾讯云官网可以领取、官方媒体账号可以领取代金券、完成任务可以领取代金券&#xff0c;大家也可以在腾讯云百科蹲守代金券&#xff0c;因为腾讯云代金券领取渠道比较分散&#xff0c;腾讯云百科txybk.com专注汇总优惠代金券领取页面&am…

Unity(第二十四部)UI

在游戏开发中&#xff0c;用户界面&#xff08;UI&#xff09;是至关重要的一部分。它负责与玩家进行交互&#xff0c;提供信息&#xff0c;并增强游戏的整体体验。Unity 提供了强大的工具和功能来创建和管理 UI。 ui的底层就是画布&#xff0c;创建画布的时候会同时创建一个事…

19.2 基于SpringBoot电商项目:一刷(❤❤❤❤)

19.2 基于SpringBoot电商项目一刷 1. 项目介绍2. 准备阶段2.1 idea插件2.2 log4j2日志整合1. 排除springweb依赖的Logback依赖2. 引入log4j2依赖3. log4j2.xml文件3. 用户模块3.1 统一响应对象1. 统一响应对象2. 异常信息枚举类3. 简单案例3.2 业务异常处理1. 自定义业务异常类…

python笔记_位运算

A&#xff0c;原码反码补码 1&#xff0c;二进制 二进制的最高位是符号位&#xff0c;0为正&#xff0c;1为负 例 3 > 0000 0011 -3 > 1000 0011 2&#xff0c;正数 正数的原码&#xff0c;反码&#xff0c;补码都一样&#xff08;三码合一&#xff09; 例 3 > 00…

docker 安装(一)

docker的安装 官方文档&#xff1a;https://docs.docker.com/manuals/ 卸载旧版 首先如果系统中已经存在旧的docker&#xff0c;则先卸载&#xff1a;yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \dock…