Bagaimana saya bisa mengatur direktori grup yang dapat ditulis?

16
$ whoami
meder
$ cd /var/www
$ sudo mkdir html
$ sudo groupadd web
$ sudo usermod -a -G web meder
$ sudo usermod -a -G web medertest
$ sudo chown meder:web html
$ sudo chmod -R g+rwx html

Masalahnya adalah, setiap kali saya membuat file baru /var/www/htmlmeskipun grup diatur ke web, itu hanya dapat ditulisi oleh pengguna asli.

Saya diberi saran untuk mengatur umaskmenjadi 002karena default adalah apa yang menyebabkan masalah. Tetapi saya harus melakukan ini untuk semua pengguna dalam grup itu, dan sejauh yang saya tahu akan membosankan jika mereka semua memodifikasi ~/.bashrcuntuk memilikinya umask 002. Bahkan jika saya bisa melakukannya sendiri dengan perintah shell untuk semua pengguna itu, masih terasa terlalu membosankan.

Adakah yang bisa memberikan saran untuk memiliki direktori grup yang dapat ditulisi?

meder omuraliev
sumber
2
Sudahkah Anda mencoba keluar lalu masuk lagi dengan meder pengguna? Informasi grup tidak diperbarui dalam sesi saat ini.
marco
@marco - Saya lakukan su medertestdan su medersuka ribuan kali. Apakah itu memenuhi syarat sebagai logout?
meder omuraliev
@marco terima kasih tidak tahu bahwa info grup tidak diperbarui dalam sesi saat ini ... gelandangan
gabeio

Jawaban:

30

Pertama, aktifkan bit SGID di direktori Anda:

sudo chmod g+s html

Ini akan membuat file baru yang dibuat di dalam direktori itu mewarisi kepemilikan grup induk.

Tidak ada pewarisan tingkat izin dalam model izin POSIX. Namun, ini dapat dilakukan dengan Daftar Kontrol Akses , tanpa harus khawatir tentang pengaturan umask:

sudo setfacl -d -m group:web:rwx html

Sangat mengecewakan bahwa umask tidak dapat ditugaskan pada basis per direktori.

mizo
sumber
berapa g+sjumlahnya?
Jürgen Paul
1
@WearetheWorld tambahkan dengan 2: chmod 2XXX file.
mizo
1
Saya telah mencari jawaban ini selamanya, dan saya baru saja merujuknya melalui respons Twitter. Terima kasih @ mizo!
Glyph
0

Anda perlu mengatur bit setgid pada direktori.

chmod g+s html
Dijeda sampai pemberitahuan lebih lanjut.
sumber
Bisakah saya menggabungkan chmod ini dengan chmod g+rwx?
meder omuraliev
1
@meder: yesg+rwxs
Dijeda sampai pemberitahuan lebih lanjut.
Ini hanya mempertahankan kepemilikan direktori, bukan izin direktori.
Glyph