Big Sur 系统
sudo dscl . -delete /Groups/"group name" GroupMembership "username"
返回
<main> attribute status: eDSAttributeNotFound
<dscl_cmd> DS Error: -14134 (eDSAttributeNotFound)
想把一个用户从 staff 组中剔除,这个用户运行可能的恶意软件,比如各种国产软件。
列出组名和组 ID:
dscl . -list /Groups PrimaryGroupID
设置用户组 ID,这里选择将其设为 nogroup,ID 为 -1
sudo dscl . -create /Users/<user> PrimaryGroupID -1
读取用户组 ID,确认设置成功
dscl . -read /Users/<user> PrimaryGroupID
这时候该用户应该不能访问需要 staff 组读权限的内容。但 MacOS 的用户文件夹默认其他用户有读取和运行的权限,我们需要将其剔除 sudo chmod 750 /Users/<user>
(75 是文件夹的原权限)
<user>
为你对应的用户名。
1
lcdtyph 2021-05-08 20:08:49 +08:00
这命令不对吧,应该是 GroupMembers 吧:
sudo dscl . -delete /Groups/staff GroupMembers "<GUID>" GUID 是你要删除的那个用户的 generated UID,可以用下面的命令获取: dscl . -read /Users/"username" GeneratedUID |
2
Jay54520 OP @lcdtyph 一样的错误,你那里有用?
``` % dscl . -read /Users/mal GeneratedUID GeneratedUID: 836... % sudo dscl . -delete /Groups/staff GroupMembers 836... <main> attribute status: eDSAttributeNotFound <dscl_cmd> DS Error: -14134 (eDSAttributeNotFound) ``` |
3
lcdtyph 2021-05-08 21:38:47 +08:00 via iPhone
@Jay54520
那说明 staff 是你要删除的那个用户的主组,可以用下面的命令确认,看看输出是不是你电脑上 staff 的 gid dscl . -read /Users/mal PrimaryGroupID 这种情况只能换个主 group 了,给这账户新建一个主 group 然后 write 这个值就行了 |
4
ihwbunny 2021-05-09 13:15:37 +08:00
先运行一下 dscl . read /groups/staff 看一下它是否在那个 group 里
|