WinSCP izin clobbers & kelompok di ganti

2

Apakah ada cara untuk memberi tahu wincp untuk menjaga grup dan izin file unggahan saya? Saya bosan memodifikasi halaman web / binari aplikasi web dan perlu mengubah grup menjadi www-data sehingga server dapat membacanya.

Jika tidak, aplikasi apa yang mungkin saya gunakan? Saya kebanyakan menggunakan winscp untuk kemudahan menyalin / menempelkan file ke server linux saya dan kemudahan menjelajah sistem file (bisa berkisar antara 2+ folder dalam sedetik, tanpa kesalahan ketik)

Martin Prikryl
sumber

Jawaban:

2

Saya kira Anda mengalami masalah karena WinSCP menghapus file yang ada sebelum mengunggah yang baru - yang seharusnya tidak pernah terjadi kecuali Anda tidak memiliki izin 'tulis' pada file lama, dalam hal ini menghapus dan mengganti adalah satu-satunya cara untuk WinSCP untuk mengunggah file Anda.

Saat membuat file baru di Linux, grup utama pembuat akan menjadi grup file 1 , dan izin akan dihitung menggunakan 2 (0666 & ~ umask). Pemilik dapat memodifikasi izin, tetapi hanya dapat mengubah grup file menjadi grup miliknya sendiri.

Dalam kasus situs web, saya biasanya mengatur setgidbit pada direktori, sehingga semua file yang saya buat di dalam menjadi milik grup itu:

sudo chown -R :www-data public_html/
find public_html/ -type d -exec chmod g+s {} \;

Jika sistem file server telah mengaktifkan ACL, Anda juga bisa menentukan izin default untuk grup:

setfacl -Rdm g::rX public_html

Atau Anda dapat melewati langkah "setgid" dan "chgrp", dan cukup berikan izin default ke grup yang Anda inginkan:

setfacl -Rm g:www-data:rX public_html
setfacl -Rdm g:www-data-rX public_html

(Perintah dengan -dmengatur izin default .)


  1. Kecuali direktori memiliki bit setgid , yang membuat file yang baru dibuat mewarisi grup direktori.
  2. Dapat dipengaruhi menggunakan ACL default pada direktori.
grawity
sumber
'yang seharusnya tidak pernah terjadi kecuali Anda tidak memiliki izin' tulis 'pada file lama' <- Masalahnya, direktori tersebut adalah 777 dan begitu pula semua file. Saya melakukan chmod -R 777 ./ Terus-menerus maka ketika semuanya berfungsi saya memperbaiki izin folder bin
0

Atur gid folder dan sekarang seharusnya menjaga grup menjadi data-www asalkan grup folder juga merupakan data-www


sumber