Bir kullanıcıya belirli bir dizinde dosya oluşturma ve okuma izni vermek istiyorum, ancak dosyaları değiştirmek veya silmek için izin vermiyorum. Kullanıcı tamam dosyalara ekleyebilirsiniz, ama ben tercih etmem. Bu Ubuntu Linux'ta.
Bu standart Unix dosya izinleri ile imkansız olduğunu düşünüyorum, ama belki bu ACL kullanarak mümkün? Kullanıcı her zaman SFTP kullanarak bağlanacaktır, bu yüzden bunu SFTP içinde kontrol etmenin bir yolu olsaydı (işletim sistemi izinlerinin aksine) iyi olurdu.
Kesin olarak, aşağıdakileri istiyorum:
- echo hello> test # başarılı, çünkü test mevcut değil ve oluşturulmaya izin var
- echo hello >> sınamaya izin verilip verilmediğine bağlı olarak test # başarılı veya başarısız olabilir
- echo hello2> test # başarısız, çünkü test zaten var ve değişikliğe izin verilmiyor
- kedi testi # başarılı, çünkü okumalara izin verildi
- rm testi # başarısız, çünkü silme işlemine izin verilmiyor
Bunu neden yapmak istediğimi merak ediyorsanız, Duplicati yedekleme sistemini Ransomware'e dayanıklı hale getirmek.
echo > test
, kabukopen("test", O_WRONLY|O_CREAT|O_TRUNC)
dosyayı oluşturan bir dosya yapar ve daha sonraecho
içeriği yazan böylece değiştirir çağırır . Artık yalnızca ilk açmanın (WR) başarılı olmasına izin verebilirsiniz.