Kami memiliki lingkungan beberapa ribu pengguna yang menjalankan aplikasi pada sekitar 40 cluster mulai dari 20 node komputasi hingga 98.000 node komputasi. Pengguna pada sistem ini menghasilkan file besar (kadang-kadang> 1PB) yang dikendalikan oleh izin unix tradisional (ACL biasanya tidak tersedia atau praktis karena sifat khusus dari sistem file).
Saat ini kami memiliki program yang disebut "beri", yang merupakan program suid-root yang memungkinkan pengguna untuk "memberikan" file ke pengguna lain ketika izin grup tidak mencukupi. Jadi, pengguna akan mengetik sesuatu seperti berikut ini untuk memberikan file ke pengguna lain:
> give username-to-give-to filename-to-give ...
Pengguna penerima kemudian dapat menggunakan perintah yang disebut "take" (bagian dari program give) untuk menerima file:
> take filename-to-receive
Izin file kemudian secara efektif ditransfer ke pengguna penerima.
Program ini telah ada selama bertahun-tahun dan kami ingin meninjau kembali hal-hal dari sudut pandang keamanan dan fungsional.
Rencana tindakan kami saat ini adalah menghapus bit busuk dalam implementasi "pemberian" kami saat ini dan mengemasnya sebagai aplikasi open source sebelum kami memindahkannya ke dalam produksi.
Adakah yang punya metode lain yang mereka gunakan untuk mentransfer file yang sangat besar antar pengguna ketika hanya izin unix tradisional yang tersedia?
chown
harus melakukannya .. Sepertinya Anda juga ingin menyalin file, setelah kedua belah pihak yang terlibat setuju.