라이온의 적절한 그룹 ID (gid)?


9

Lion에서 완전히 새로운 관리자 계정을 만들면 다음의 ID 및 그룹 회원이 $ id [new Lion account] | perl -lne 's/ /\n/g; s/,/\n\t/g; print;'됩니다.

uid=504(lt)
gid=20(staff)
groups=20(staff)
    402(com.apple.sharepoint.group.1)
    12(everyone)
    33(_appstore)
    61(localaccounts)
    79(_appserverusr)
    80(admin)
    81(_appserveradm)
    98(_lpadmin)
    100(_lpoperator)
    204(_developer)
    403(com.apple.sharepoint.group.2)
    401(com.apple.access_screensharing)

반대로, 오래된 OS X 계정에는 다음과 같은 uid, gid 등이 있습니다.

uid=501(andrew)
gid=501(andrew)
groups=501(andrew)
    403(com.apple.sharepoint.group.2)
    204(_developer)
    100(_lpoperator)
    98(_lpadmin)
    81(_appserveradm)
    80(admin)
    79(_appserverusr)
    61(localaccounts)
    12(everyone)
    401(com.apple.access_screensharing)
    402(com.apple.sharepoint.group.1)

참고이 gid=20(staff)사용자가 구성원 인 새로운 계정에와 있음 20(staff).

이전 계정을 Lion으로 업그레이드하면 이전 사용자 및 그룹 이름이 유지됩니다.

staff업그레이드 된 계정에 그룹 멤버십 이없는 것으로보고 된 문제가 있습니다.

  1. Homebrew 를 설치 하거나 업그레이드 할 수 없음
  2. 사용자 폴더의 파일에서 + 를 누를 때 '가져 오기' 표시CmdI
  3. ACL 및 권한 문제 .

현재 해결 방법은 다음과 같습니다.

  1. 직원에 사용자를 추가하십시오 (예 : $ sudo dscl. append / Groups / staff GroupMembership`whoami` 또는 이와 동등한 것)
  2. Lion Recovery 를 사용 하여 기본 홈 폴더 권한복원 하십시오 ( 'No Disc – Lion'탭을 클릭하십시오).

지금까지 이것은 업그레이드와 관련된 많은 문제를 해결했으며 배터리 수명이 길고 CPU 사용량이 적은 것 같습니다.

그러나 내가 가진 질문은 다음과 같습니다.

1. 계정 에서 gid=501를 변경하는 데 어려움을 겪어야합니까, gid=20아니면 그룹 직원의 구성원 자격이 충분합니까?

2. 20 (직원)의 회원이 gid = 20 (직원)과 같은가?

3. gid=계정 의 일부를 변경 한 경우 Lion에서 어떻게합니까? 우분투에서하는 방법 만 알고 있습니다 ...

답변:


4

OS X이 기본 그룹과 사용자의 다른 그룹을 처리하는 방법에 차이가 없으므로 실제 차이가 있다고 생각하지 않습니다. 그래도 깔끔하게하기 위해 "고정"하는 경향이 있습니다. 이 명령은 기본 그룹을 20으로 설정 한 다음 이전 andrew 그룹에서 "보조"구성원을 추가해야합니다.

sudo dscl . create /Users/andrew PrimaryGroupID 20
sudo dseditgroup -o edit -a andrew -t user andrew

(참고 : 보조 그룹 멤버 자격을 추가하기 위해 dscl을 사용하는 것은 제대로 수행되지 않습니다. 대신 dseditgroup을 사용하십시오.)


굉장한!!! 문제가 해결되었습니다. 재부팅하거나 계정에서 로그 아웃 / 로그인 해야합니다. 그렇지 않을 때까지 id표시됩니다 egid=501. 감사!!!
drewk

당신이 나와 같다면 다음이 필요합니다 : sudo dscl . delete /users/andrew.
orome

@raxacoricofallapatorius : 전체 사용자 레코드를 삭제합니다. 아마도 원하지 않을 것입니다.
Gordon Davisson

@GordonDavisson : 처음에 사용자 이름을 대신하여 잊어 버린 경우 andrew(내가했던 것처럼!)-정확히 원하는 것입니다.
orome

1

나는 그것에 대한 쉬운 대답이 없다는 것을 두려워합니다.

  • 파일에 액세스 할 때 gid staff가이 그룹의 구성원 인지 여부는 중요하지 않습니다.
  • 파일을 생성 할 때 새 파일이 자신에게 있지만 그룹이 생성 된 디렉토리에서 그룹을 가져 오기 때문에 중요 할 수 있습니다 . 그러나이 경우 파일은 사용자가 소유하기 때문에 어쨌든 파일에 액세스 할 수 있어야합니다

그룹에 속하는 대부분의 실질적인 목적으로 충분할 것입니다 (특히 문제가 현재 해결 된 것으로 보임).


1
감사. 어떻게 사용하는 것이 dsclGID를 변경하려면?
drewk

2
이것은 일부 유닉스에서는 사실이지만 OS X에서는 그렇지 않습니다. OS X 파일에서 사용자의 기본 그룹이 아닌 상위 폴더에서 그룹 할당을 상속합니다.
Gordon Davisson
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.