Pertanyaan Bagaimana cara mengatur folder sehingga apa pun yang dibuat di dalamnya mewarisi izin?


Saya memiliki folder / data (sebenarnya partisi) untuk semua data yang harus dapat diakses oleh semua pengguna (dalam hal ini anggota keluarga). Kita semua memiliki akun pengguna individual dan sering kali masuk setiap saat di PC yang satu ini.

Bagaimana saya bisa mengatur perizinan sehingga kita semua mempertahankan akses ke file di sana tidak peduli siapa yang membuatnya, termasuk folder baru? Jika saya membuat folder, ia mendapatkan pengguna dan grup saya, sehingga tidak ada orang lain yang dapat menulisnya.


16
2017-07-10 18:58


asal


untuk para pengunjung. Jika Anda hanya ingin nama grup diwariskan chmod -R g+s /parentdir. Catatan: jalankan chmod -R  sebelum ini jika diperlukan - Thamme Gowda
Catatan di atas: -R bendera ke chmod sangat jarang berguna karena kita jarang ingin direktori (yang selalu membutuhkan izin eksekusi) dan file biasa (yang jarang memerlukan izin eksekusi) untuk memiliki izin yang sama - Zanna


Jawaban:


Pendekatan lain adalah menggunakan Access Control Lists, sebuah superset dari file permissions.

Pertama-tama, kita harus menginstal acl  Install acl paket:

sudo apt-get install acl

Sebelum Ubuntu 14.04, partisi harus dipasang dengan opsi acl agar yang berikut berfungsi. Itu bisa ditambahkan /etc/fstab, seperti dalam

UUID=<XXXX>  /media/shared  ext4  noatime,acl  0  2

atau untuk sistem file yang sudah terpasang

sudo mount -o remount,acl /media/shared

Selanjutnya, Anda harus membuat grup baru, yang semua pengguna diizinkan untuk mengakses berbagi dalam mode baca / tulis akan ditambahkan. Saya menyebutnya usershare. Grup yang sudah ada dapat digunakan.

sudo addgroup usershare

Sekarang kita tambahkan pengguna enzotib dan steevc ke grup itu:

sudo gpasswd -a steevc  usershare
sudo gpasswd -a enzotib usershare

(efektif pada login berikutnya).

Kemudian kita tambahkan ACL dengan rwx izin untuk grup usershare ke semua file yang sudah ada /media/shared

sudo setfacl -Rm g:usershare:rwX /media/shared

Akhirnya kami menambahkan ACL default dengan rwx izin untuk grup usershare untuk semua file yang dibuat dari sekarang di dalam /media/shared

sudo setfacl -d -Rm g:usershare:rwX /media/shared

Sekarang semua pengguna usershare grup memiliki izin penuh pada semua file di bawah /media/shared. Izin setiap pengguna pada direktori home miliknya dan lainnya tidak terpengaruh.

Saya menguji solusi ini dan tampaknya berhasil, tetapi saran dan koreksi diterima.

Ucapan: file dan direktori baru yang dibuat di direktori yang dipertimbangkan akan memiliki izin menulis untuk usershare grup, tetapi file yang disalin atau dipindahkan dalam folder akan mempertahankan izin aslinya. Jika pengguna, seperti yang saya mengerti, hanya membutuhkan akses tulis ke direktori yang baru dibuat, ini bukan masalah. Kalau tidak, harus memodifikasi izin dengan tangan. Lihat jawaban ini tentang cara mengatasi ini dengan mendefinisikan umask pengguna 002.


15
2017-07-11 19:54



Saya tidak tahu acl dengan baik, dapatkah Anda menguji dan menyalin file dengan izin seperti rw-r - r-- dari folder rumah Anda ke folder bersama dan melihat apakah izin berubah ke rwx default Anda untuk usershare kelompok? - arrange
@arrange: tidak, itu tidak berfungsi sebagaimana mestinya. Akan menunjukkan jawabannya. Terima kasih - enzotib
Saya akan menambahkan bahwa /etc/fstab / remount langkah tidak diperlukan, karena ext4 harus dipasang dengan acl opsi aktif secara default. - enzotib


  1. Buat folder.

    Sebagai contoh:

    mkdir /mnt/family
    

    Jika Anda perlu me-mount partisi kepada mereka ... jika Anda membutuhkan ext4 semua /etc/fstab aku s

    UUID=xxx    /mnt/family ext4    **rw,exec,defaults,auto,async   0   2**
    
  2. Buat grup myfam.

    addgroup myfam
    
  3. Tambahkan beberapa pengguna ke grup itu

    adduser papa myfam  
    adduser mom myfam
    
  4. Sekarang ambil dan beri izin.

    Saya pikir Anda harus mulai, dari berubah umask.

    Izin filesystem default dan hak akses di 12.04 

    chown -R you.myfam /mnt/family  
    chmod -R g+rwx /mnt/family  
    

    Sekarang yang paling penting. Baris itu buat setgid apa pun yang Anda buat di bawah folder itu membuat pengguna Anda sebagai pemilik dan grup myfam. Itu membiarkan sistem mengesampingkan grup utama pengguna.

    chmod -R g+s /mnt/family   
    

8
2018-05-02 00:26





Hal paling sederhana yang muncul dalam pikiran adalah menambahkan setiap pengguna ke grup dari semua pengguna lain.

Kemudian ubah umask setiap pengguna dari 022 ke 002, ini bisa dilakukan di /etc/profile.

Edit

Langkah pertama dapat diganti dengan yang berikut: buat semua pengguna menjadi milik users kelompok sebagai kelompok utama.

Edi2

Seperti yang disarankan @James_Henstridge, akan lebih mudah untuk mengatur bit setgid pada direktori utama, sehingga file dan direktori baru yang dibuat akan memiliki grup yang sama, tidak bergantung pada pengguna. Dengan cara ini Anda dapat menghindari set users sebagai grup utama untuk pengguna.


3
2017-07-10 20:36



Anda mungkin ingin mengedit jawaban Anda untuk juga menyarankan pengaturan bit setgid pada semua direktori di /data sehingga file baru mewarisi kepemilikan grup. - James Henstridge
edit3 :) Jika Anda menyalin file ke file /data folder, izin tidak diwarisi, sehingga file lama dengan izin g-w tidak akan dapat dimodifikasi oleh orang lain. edit4: pengaturan users sebagai grup utama Anda dan umask 0002 jelas bukan ide yang baik karena siapa pun dari grup itu akan dapat memodifikasi file yang baru Anda buat. - arrange
@arrange: mengenai edit4 Anda, saya menyarankan untuk memasukkan users grup hanya pengguna yang diizinkan untuk memiliki akses rw ke share. Itu soal kemudahan, bisa juga membuat grup lain untuk itu. Mengenai edit3 Anda, itu tidak benar, file yang disalin mendapatkan grup folder. - enzotib
@enzotib: untuk menegaskan kembali maksud saya dengan kata lain: edit4 - if usersadalah grup utama saya dan ada lebih banyak pengguna dalam grup ini maka mereka dapat memodifikasi file saya bahkan di luar direktori bersama; edit3 - saya menulis perizinan, BUKAN grup folder. - arrange
@arrange: maksud Anda benar, saya hanya menulis jawaban lain, bisa jadi menarik untuk mendengar pendapat Anda. - enzotib


Ini terdengar seperti pekerjaan untuk ACL. Giles mempunyai sebuah jawaban yang sangat menyeluruh di situs SE Unix dan Linux yang membantu saya memecahkan masalah yang sama.


2
2017-07-17 23:43



Itu berhasil! Saya telah melihat jawaban lain menggunakan ACL, tetapi ini adalah satu-satunya yang pernah saya lihat yang mengubah izin tidak hanya file dan direktori baru yang dibuat di direktori bersama, tetapi juga yang disalin atau dipindahkan ke dalamnya. - ダンボー


Saya tidak mengerti, semua linux-linux, linux-windows, linux - ???, menggunakan Samba ?, SSH ?, Pigeons ?; lagian Anda harus memasukkan yang lain ke dalam Grup dengan nama pengguna Anda (Grup Anda), dan mereka akan mendapatkan izin yang sama dengan Anda.


0
2017-07-10 19:21



Ini adalah beberapa pengguna di satu PC. Saya yakin pasti ada cara untuk mendapatkan izin ke default untuk sesuatu yang bermanfaat. - steevc


Saya menemukan pertanyaan ini sambil mencari jawaban untuk masalah PERMISSION KELOMPOK saya. Saya telah membaca pertanyaan dan sepertinya saya sudah menerapkan apa yang ingin diselesaikan oleh pertanyaan itu.

Jadi saya repot-repot menjawabnya.

Saya sudah menyiapkan pengaturan bagi semua pengguna di lan saya dengan hanya membaca dan menjalankan, dan hanya akun saya yang memiliki izin untuk menulis pada folder bersama.

Saya memiliki server multi-tujuan di lan saya yang menggunakan Ubuntu 12.04 LTS Desktop Edition. Saya memiliki mesin klien campuran linux dan windows.

Inilah bagaimana saya mengaturnya:

1.Di server saya, saya memiliki akun pengguna bernama admin dan clientone

Itu admin akun adalah akun yang dibuat saat saya menginstal ubuntu dan clientone akun adalah akun yang dibuat menggunakan menu USER ACCOUNTS di ubuntu. Ini hanya memiliki izin standar, tidak ada admin priveleges dan itu ditambahkan ke users kelompok. Anda tentu saja dapat melakukan ini hanya dengan menggunakan terminal. Tambahkan lebih banyak akun pengguna tambahan untuk mesin klien Anda.

2. Partisi / folder bersama di-mount dalam fstab hanya menggunakan opsi default.

3. Jaringan saya dalam lingkungan kelompok kerja, dan Aktif mylan workgroup.

Semua mesin di lan saya diatur untuk menggunakan mylan workgroup.

4. Folder bersama saya bernama shared sudah memiliki file di dalamnya. Jadi saya mengubah pemilik dan kelompok untuk secara rekursif menggunakan perintah di bawah ini.

 sudo chown -Rv admin:users /shared

5. Saya juga mengatur izin folder dan file untuk /shared folder secara rekursif menggunakan perintah

 sudo chmod -Rv 750 /shared

mesin tamu di komputer saya mylan workgroup tidak memiliki akses ke share menggunakan chmod 750

Anda dapat menggunakan

 sudo chmod -Rv 755 /shared

Semua akun pengguna di masa mendatang dalam users grup hanya telah membaca izin eksekusi.

6. Di mesin klien saya satu (windows xp) saya setup akun pengguna bernama clientone. Nama pengguna dan kata sandi yang sama seperti yang dibuat di server ubuntu saya. Akun kedua bernama clienttwo juga dibuat di server ubuntu dan itu akun pengguna yang sama digunakan dalam mesin kedua saya (linuxmint 15).

7. Di komputer klien saya satu setelah masuk menggunakan clientone akun, saya pergi untuk menjalankan perintah lalu masuk

 //192.168.10.254/shared

192.168.10.254 adalah alamat ip dari server ubuntu saya, /shared adalah folder yang dibagikan di server ubuntu saya Di mesin klien saya dua (linuxmint 15), saya pergi ke Menu> Jaringan dan di kolom dialog Lokasi: Saya mengetik:

 smb://192.168.10.254/shared

Jika Anda diminta memasukkan kata sandi, masukkan kata sandi pengguna Anda. Dan juga kata kunci Anda jika KEYRING diaktifkan di mesin linux Anda.

Ini bekerja untuk saya di pengaturan jaringan saya sendiri. Server saya adalah server serba guna yang berfungsi sebagai server cumi, xbmc dan server mediatomb dan server amahi.

Saya masih mencari cara untuk memperbaiki file sharing bagian dari setup saya. Instruksi di atas bukan solusi tahan peluru, beli Anda dapat mencobanya. Saya menguji dan mencoba ACL ”bersama dengan pemasangan otomatis folder bersama. Ketika kebutuhan berbagi folder Anda menjadi rumit, instruksi di atas tidak akan menjamin kesuksesan Anda.

Info Tambahan:

Saya telah menginstal Server Amahi di server saya, saya juga menggunakannya untuk membuat akun pengguna yang saya inginkan untuk memiliki akses ke folder bersama. Saya juga menggunakannya untuk membuat folder baru.

Saat Anda menginginkan izin pengguna yang lebih kompleks untuk pengguna yang berbeda, ACL adalah yang harus dituju.


0
2017-08-12 11:01





Saya memiliki file video di nama saya, tetapi ketika saya masuk dengan nama anak perempuan saya, akunnya tidak dapat melihat file video. Jadi, yang saya lakukan adalah membuka akun pengguna, membuka kunci (kanan atas), lalu mengubah jenis akunnya dari "standar" menjadi "administrator (yang adalah akun saya), dan sekarang semua file video, benar-benar semuanya, muncul saat masuk di bawah akunnya.


0
2017-08-31 08:06