Cara mengatur izin file / folder menggunakan Rsync dari Windows ke Linux

11

Saya ingin mentransfer banyak file / folder dari Windows ke Linux menggunakan Rsync. Di server linux (tujuan), saya ingin izin file diatur ke 644, dan izin folder diatur ke 755. Jika memungkinkan, saya ingin kepemilikan disetel ke root.root untuk semua file / folder. Saya sudah mencoba opsi -p, tetapi tidak berhasil. Terima kasih atas bantuannya.

garconcn
sumber
Coba umask 022sebelum salinan Anda.
BillThor

Jawaban:

23

Anda dapat mengatur perms menggunakan --chmodparameter mis

--chmod=Du=rwx,Dgo=rx,Fu=rw,Fog=r 

akan memaksa izin diatur ke 755 untuk Directories dan 644 untuk Files.

Iain
sumber
Terima kasih. Folder tersebut sepertinya berubah menjadi 744 (drwxr - r--). Lagi pula, saya memutuskan untuk mengubah izin setelah transfer.
garconcn
7
Mereka --chmodjuga menerima nomor mode oktal, yang menurut saya lebih mudah untuk memvisualisasikan izin yang diberikan:--chmod=D2775,F664
Fred Wuerges
Anda juga dapat menggunakan --chmod o=rXagar secara otomatis memberi folder xflag, tetapi mengabaikannya dari file.
hachre
Apakah Anda perlu menentukan --permsjuga?
OrangeDog
9

Sintaks argumen --chmod yang disebutkan di atas tidak cukup akurat. Saat Anda menentukan pemilik, grup, atau lainnya, dan tidak mendahuluinya dengan "D" atau "F", itu akan berlaku untuk semua jenis file, dan itu akan menerapkan parameter terakhir yang ditemukan sebagai default. Ini akan menjelaskan mengapa direktori Anda keluar sebagai 744, karena parameter terakhir dalam argumen adalah og = r.

Coba ini sebagai gantinya:

--chmod=Du=rwx,Dgo=rx,Fu=rw,Fgo=r
Ned W.
sumber