Saya memiliki pohon file dengan izin yang benar. maka saya punya (identik) pohon identik (dengan konten file yang berbeda tangguh) dengan izin salah.
bagaimana cara mentransfer tata letak izin dari satu pohon ke pohon lain?
permissions
filesystems
copy
file-permissions
yawniek
sumber
sumber
Saya baru belajar cara baru dan sederhana untuk mencapai ini:
Ini akan menghasilkan daftar dengan semua izin dan kepemilikan.
Lalu pergi ke satu tingkat di atas tujuan dan kembalikan izin dengan
Alasan Anda harus satu tingkat di atas adalah bahwa semua jalur di perms.acl relatif.
Harus dilakukan sebagai root.
sumber
getfacl
dansetfacl
tidak selalu ada pada semua sistem..ac
perintah pertama dan.acl
kedua?Jika Anda memiliki sumber dan tujuan, Anda dapat menyinkronkan izin Anda dengan
rsync -ar --perms source/ dest
Itu tidak akan mentransfer data, hanya izin ...
sumber
-r
dan--perms
berlebihan, tetapi ini masih mensinkronkan perm jika mereka satu-satunya hal yang berbeda (yang Anda katakan dalam Pertanyaan; jika pohon tidak benar-benar identik, Anda seharusnya tidak mengatakan bahwa itu adalah).Satu hal yang bisa Anda lakukan adalah menggunakan perintah find untuk membangun skrip dengan perintah yang Anda butuhkan untuk menyalin izin. Ini adalah contoh cepat, Anda dapat melakukan lebih banyak hal dengan berbagai opsi printf, termasuk mendapatkan pemilik, id grup, dan sebagainya.
sumber
Dua arah:
(dalam kasus terakhir / dst harus ada)
Sunting: maaf, saya salah membaca. Bukan apa yang kamu minta.
sumber
Saya pikir saya akan menulis skrip perl untuk melakukannya. Sesuatu seperti:
Kemudian lakukan sesuatu seperti ini:
Saya menulis ini dari atas kepala saya, dan belum diuji; jadi periksalah sebelum kamu membiarkannya merajalela. Ini hanya memperbaiki izin pada direktori yang ada; itu tidak akan mengubah izin pada file, juga tidak akan membuat direktori yang hilang.
sumber
Saya datang dengan ini:
Ini bukan bukti peluru sepenuhnya, tetapi melakukan apa yang saya butuhkan.
sumber