ID grup (gid) yang tepat untuk Lion?

9

Jika Anda membuat akun admin baru di Lion, berikut ini akan menjadi id dan keanggotaan grup Anda (dari $ 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)

Sebaliknya, akun OS X yang lebih lama akan memiliki ini uid, gid, dll:

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)

Perhatikan bahwa gid=20(staff)pada akun yang lebih baru dan pengguna itu adalah anggota 20(staff).

Saat Anda meningkatkan akun yang lebih lama ke Lion, nama pengguna dan grup yang lebih lama disimpan.

Ada masalah yang dilaporkan dengan tidak memiliki staffkeanggotaan grup pada akun yang ditingkatkan:

  1. Ketidakmampuan untuk menginstal atau memutakhirkan Homebrew;
  2. Tampilan 'Mengambil' saat menekan Cmd+ Ipada file di folder pengguna Anda
  3. ACL dan masalah izin .

Solusi saat ini tampaknya seperti ini:

  1. Tambahkan pengguna ke staf (mis .: $ sudo dscl. Append / Groups / staff GroupMembership `whoami` atau yang setara)
  2. Gunakan Lion Recovery untuk mengembalikan izin folder rumah default (Klik pada tab 'No Disc - Lion').

Sejauh ini, ini telah memperbaiki banyak masalah yang saya miliki dengan peningkatan, dan saya tampaknya memiliki daya tahan baterai lebih lama dan penggunaan CPU yang lebih rendah.

Namun, berikut adalah pertanyaan yang saya miliki:

1. Apakah saya harus melalui kesulitan mengubah gid=501ke gid=20pada akun saya atau hanya menjadi anggota staf kelompok yang cukup baik?

2. Apakah menjadi anggota 20 (staf) sama dengan memiliki gid = 20 (staf)?

3. Jika saya mengubah gid=bagian akun saya, bagaimana saya melakukannya pada Lion? Saya hanya tahu bagaimana melakukannya di Ubuntu ...

drewk
sumber

Jawaban:

4

Saya belum melihat perbedaan dalam bagaimana OS X memperlakukan kelompok utama vs kelompok pengguna lain, jadi saya tidak berpikir itu membuat perbedaan nyata. Saya cenderung untuk "memperbaikinya" untuk kerapian. Perintah-perintah ini harus mengatur grup utama ke 20, dan kemudian menambahkan keanggotaan "sekunder" di grup andrew lama:

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

(Catatan: menggunakan dscl untuk menambahkan keanggotaan grup sekunder tidak cukup melakukannya dengan benar - gunakan dseditgroup sebagai gantinya.)

Gordon Davisson
sumber
Menakjubkan!!! Ini memperbaiki masalah. Anda perlu mem-boot ulang (atau keluar / masuk dari akun Anda) atau idakan menunjukkannya egid=501sampai Anda melakukannya. Terima kasih!!!
drewk
Jika Anda seperti saya, maka Anda akan membutuhkan ini: sudo dscl . delete /users/andrew.
orome
@raxacoricofallapatorius: yang menghapus seluruh catatan pengguna - Anda mungkin tidak ingin melakukan itu.
Gordon Davisson
@GordonDavisson: Jika lupa, pada awalnya, untuk mengganti nama pengguna Anda andrew(seperti yang saya lakukan!) - itulah yang Anda inginkan.
orome
1

Saya khawatir tidak ada jawaban mudah untuk itu:

  • saat mengakses file, tidak masalah apakah gid staffAnda atau Anda hanya anggota grup ini
  • ketika membuat file mungkin penting karena file baru milik Anda tetapi dapatkan grup dari direktori tempat mereka dibuat. Tetapi karena file tersebut milik Anda dalam hal ini, Anda tetap harus dapat mengaksesnya

Untuk sebagian besar tujuan praktis milik grup mungkin cukup (terutama karena masalah Anda tampaknya diselesaikan saat ini).

nohillside
sumber
1
Terima kasih. Bagaimana saya menggunakan dscluntuk mengubah gid?
drewk
2
Ini berlaku pada beberapa unix, tetapi tidak pada OS X; pada file OS X mewarisi tugas grup mereka dari folder induk, bukan berdasarkan grup utama pengguna.
Gordon Davisson