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?


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.


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

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.