当我尝试从 Mac OS X 10.6.8 中删除 jenkins 时,我意外地删除了“staff”组:
$ sudo dseditgroup -o delete -a jenkins -t user staff
我尝试修复这个问题
$ sudo dscl . create /Groups/staff GroupMembership `whoami`
$ sudo dscl . -append /groups/staff gid 20
这足以修复员工组吗?或者这会带来其他后果吗?
答案1
在 Mac OS X 10.8.1 上,root 属于员工:
$ sudo dscl . -read /groups/staff
Password:
AppleMetaNodeLocation: /Local/Default
GeneratedUID: ABCDEFAB-CDEF-ABCD-EFAB-CDEF00000014
GroupMembers: FFFFEEEE-DDDD-CCCC-BBBB-AAAA00000000
GroupMembership: root
Password: *
PrimaryGroupID: 20
RealName: Staff
RecordName: staff BUILTIN\Users
RecordType: dsRecTypeStandard:Groups
SMBSID: S-1-5-32-545
或者
$ grep staff /etc/group
staff:*:20:root
我猜想在 10.6.8 中也是这种情况,因此您可能需要将 root 添加到员工中。
如果按照原来的方式重新创建组(相同的组 ID、相同的成员),我倾向于认为(根据我的 Linux 经验)不会有其他后果。