Saya mencari perintah Linux yang dapat mengubah kepemilikan semua file milik pengguna tertentu, lebih disukai di direktori yang ditargetkan, ke pengguna tertentu lainnya.
Perintah mimpi saya akan terlihat seperti ini ...
chuser -R --olduser tom --newuser jerry
atau
chuser -R --olduser 1066 --newuser 1492
Ini adalah skenario saya ... Saya punya file cadangan (.tgz) dengan informasi pengguna dan grup tersimpan di dalamnya. Itu diambil dari server web yang menjalankan Apache dan MySQL. File dalam cadangan berasal dari seluruh sistem dan berisi file dari beberapa pengguna yang berbeda dan beberapa akun jenis sistem dan itu adalah kunci bahwa ketika dikembalikan ke server baru pengaturan tidak hilang. Masalahnya adalah bahwa pengguna pada mesin file sedang dipulihkan untuk tidak cocok dengan yang ada di file cadangan. Misalnya kedua mesin memiliki pengguna MySQL tetapi mereka memiliki id pengguna yang berbeda dan ada beberapa id pengguna yang ada di kedua mesin milik pengguna yang berbeda. Ini berarti tidak ada cara untuk menyinkronkan pengguna di mesin baru dengan yang di mesin lama.
Saya dapat menemukan semua file pengguna dengan perintah find seperti ini ...
find /decompressed-backup-dir -uid 1050
atau
find /decompressed-backup-dir -user tom
Jika, seperti yang saya duga, tidak ada cara untuk melakukan apa yang saya inginkan dengan satu perintah maka mungkin ada cara untuk menyalurkan hasil dari perintah find ke perintah lain untuk menangani perubahan kepemilikan?
Saya bisa melakukan ini dengan skrip PHP tetapi ada 4GB dan puluhan ribu file dalam cadangan jadi saya tidak ingin menggunakan PHP atau Perl tetapi saya akan senang dengan skrip shell yang bisa mengatasinya.
-uid
saya menggunakan-user