Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
如何重置我的 EC2 Mac 实例的密码?
我不知道我的 Amazon Elastic Compute Cloud (Amazon EC2) Mac 实例的密码,我需要重置密码。或者,我需要重置 ec2-user 的密码。
简短描述
如果 EC2 Mac 实例用户不知道使用安全令牌的 ec2-user 的密码,则您可能会遇到问题。要为使用安全令牌的用户重置忘记的密码,您还必须是拥有安全令牌的用户。
当在 EC2 Mac 实例中设置第一个用户密码时,默认会向用户颁发安全令牌。要为 ec2-user 用户颁发安全令牌,必须先为 ec2-user 设置密码。有关详细信息,请参阅 Apple 网站上的“在部署中使用安全令牌、Bootstrap 令牌和宗卷所有权”。由于其复杂性,使用其他安全令牌用户更新 ec2-user 的密码并不是最佳做法。
请改为以非安全令牌用户的身份创建救援实例。然后,将原始实例的根卷作为辅助卷连接到救援实例,并迁移您的数据。
解决方法
完成以下步骤:
-
创建您的 EC2 Mac 实例的 Amazon Elastic Block Store (Amazon EBS) 根卷的快照。
-
使用根卷快照在与新实例相同的可用区中创建 Amazon EBS 卷。
-
将 EBS 卷作为辅助卷连接到新实例。
-
要列出新实例上的所有物理磁盘、分区、Apple 文件系统 (APFS) 容器和卷,请运行以下命令:
diskutil list示例输出:
diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *251.0 GB disk0 1: Apple_APFS_ISC Container disk1 524.3 MB disk0s1 2: Apple_APFS Container disk3 245.1 GB disk0s2 3: Apple_APFS_Recovery Container disk2 5.4 GB disk0s3 /dev/disk3 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +245.1 GB disk3 Physical Store disk0s2 1: APFS Volume InternalDisk 10.3 GB disk3s1 2: APFS Volume Preboot 5.3 GB disk3s2 3: APFS Volume Recovery 919.3 MB disk3s3 4: APFS Volume Data 779.2 MB disk3s5 5: APFS Volume VM 20.5 KB disk3s6 /dev/disk4 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *107.4 GB disk4 1: EFI EFI 209.7 MB disk4s1 2: Apple_APFS Container disk5 107.2 GB disk4s2 /dev/disk5 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +107.2 GB disk5 Physical Store disk4s2 1: APFS Volume Macintosh HD - Data 4.8 GB disk5s1 2: APFS Volume Macintosh HD 9.3 GB disk5s2 3: APFS Snapshot com.apple.os.update-... 9.3 GB disk5s2s1 4: APFS Volume Preboot 5.4 GB disk5s3 5: APFS Volume Recovery 754.6 MB disk5s4 6: APFS Volume VM 20.5 KB disk5s5 /dev/disk6 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *107.4 GB disk6 1: EFI EFI 209.7 MB disk6s1 2: Apple_APFS Container disk7 107.2 GB disk6s2 /dev/disk7 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +107.2 GB disk7 Physical Store disk6s2 1: APFS Volume Macintosh HD - Data 9.4 GB disk7s1 2: APFS Volume Macintosh HD 9.3 GB disk7s2 3: APFS Volume Preboot 5.4 GB disk7s3 4: APFS Volume Recovery 754.6 MB disk7s4 5: APFS Volume VM 20.5 KB disk7s5**注意:**请将 dev/disk7 替换为辅助卷的名称。
-
要验证您是否正确识别了辅助卷,请运行以下命令:
diskutil info disk7**注意:**请将 dev/disk7 替换为辅助卷的名称。
对于辅助卷,Device/Media Name 值必须为 Amazon Elastic Block Store。
示例输出:$ diskutil info disk7 | Grep Device Device Identifier: disk7 Device Node: /dev/disk7 Device / Media Name: Amazon Elastic Block Store Device Block Size: 4096 Bytes Device Location: External -
要在操作系统 (OS) 上挂载辅助卷,请运行以下命令:
$ sudo diskutil mount /dev/disk7s1**注意:**请将 dev/disk7 替换为辅助卷的名称
-
要验证磁盘是否已挂载,请运行 df -h 命令:
df -h Filesystem Size Used Avail Capacity iused ifree %iused Mounted on /dev/disk5s2s1 100Gi 8.7Gi 81Gi 10% 356840 846823560 0% / devfs 228Ki 228Ki 0Bi 100% 788 0 100% /dev /dev/disk5s5 100Gi 20Ki 81Gi 1% 0 846823560 0% /System/Volumes/VM /dev/disk5s3 100Gi 5.0Gi 81Gi 6% 941 846823560 0% /System/Volumes/Preboot /dev/disk1s2 500Mi 6.0Mi 392Mi 2% 1 4010720 0% /System/Volumes/xarts /dev/disk1s1 500Mi 52Mi 392Mi 12% 53 4010720 0% /System/Volumes/iSCPreboot /dev/disk1s3 500Mi 636Ki 392Mi 1% 51 4010720 0% /System/Volumes/Hardware /dev/disk5s1 100Gi 4.5Gi 81Gi 6% 160213 846823560 0% /System/Volumes/Data /dev/disk3s4 228Gi 108Ki 212Gi 1% 17 2223298800 0% /private/tmp/tmp-mount-K1ov0m map auto_home 0Bi 0Bi 0Bi 100% 0 0 100% /System/Volumes/Data/home /dev/disk7s1 100Gi 8.8Gi 77Gi 11% 204661 802361480 0% /Volumes/Macintosh HD - Data**注意:**请将 dev/disk7 替换为辅助卷的名称。
-
运行以下命令打开挂载点目录以访问卷数据:
cd /Volumes/Macintosh\ HD\ -\ Data
**注意:**请将 /Volumes/Macintosh/HD - Data 替换为您的挂载点目录文件路径。 要将数据从辅助卷复制到新实例的根卷,请运行以下 rsync 命令:
brew install rsync
- 运行以下命令,以便将来不会为 ec2-user 激活安全令牌:
sudo dscl . -append /Users/ec2-user AuthenticationAuthority ";DisabledTags;SecureToken"
sudo /usr/bin/dscl . -passwd /Users/ec2-user
如果您在运行前面的 passwd 命令时收到错误,请运行以下命令:
sudo passwd ec2-user
**注意:**请将 ec2-user 替换为您的 Amazon EC2 用户名。 要验证用户是否没有安全令牌,请运行以下命令:
sysadminctl -secureTokenStatus ec2-user
**注意:**请将 ec2-user 替换为您的 Amazon EC2 用户名。 要显示所有用户,请运行以下命令:
for user in $(ls /Users); do echo $user; sysadminctl -secureTokenStatus $user; doneUse secure token, bootstrap token, and volume ownership in deployments
