Linux işletim sistemleri üzerinde, belirli bir dosya veya klasörde değişiklik yapılmasını istemediğimiz zamanlar olabiliyor. Örneğin bir kullanıcıya linux hosting FTP şifrenizi verdiniz fakat belirlediğiniz bir klasör veya dosyada değişiklik yapmamasını veya silmemesini isterseniz dosya/klasörü kilitleyebilirsiniz.
chattr nedir?
chattr komutu, değişiklik yapılmasını istemediğiniz bir dosyayı kilitler ve dosya üzerinde silme dahil (chmod vs.) herhangi bir işlem yapılmasını engeller.
chattr komutu nasıl kullanır?
chattr +i dosyadı şeklinde kullanılır.
Ftp’den veya ssh üzerinden de dosya silinemez veya üzerinde değişiklik yapılmaz. Yani ftp’ye bağlandığınız bilgisayara virüs girdiğinde, iframe ile dosyalarınızı değiştiren virüsten de etkilenmezsiniz. Veya olası bir wordpress açığında index.php dosyasını kilitlemişseniz, index.php dosyanıza yazamazlar.
chattr dizin kilitleme
chattr -R +i dizinismi
şeklinde de bir dizini kilitleyebilirsiniz. Dizini tekrar açmadan bu dizinde herhangi bir işlem yapılamaz.
chattr -i dosyadı şeklinde kilidi kaldırabildiğiniz gibi, lsattr komutu ile kilitlenmiş dosyaları görüntüleyebilirsiniz.
lsattr ile kontrol ettiğinizde, dosya özelliklerinde “i” şeklinde bir ibare görürsünüz.

chattr ile kilitlenmiş bir dosya/dizin üzerinde işlem yaptığınızda, root dahi olsanız alacağınız hata şu şekilde olacaktır;
chmod : changing permissions of “dosya_adı” : Operattion not permitted
Sıkça Sorulan Sorular (SSS)
chattr ile bir dosya nasıl kilitlenir?
Bir dosyayı kilitlemek için chattr +i dosyaadı
komutu kullanılır. Bu işlemden sonra dosya üzerinde değişiklik veya silme işlemi yapılamaz.
chattr ile bir dizin nasıl kilitlenir?
Bir klasörü ve içindeki tüm dosyaları kilitlemek için chattr -R +i dizinismi
komutu kullanılır. Bu durumda dizin açılana kadar hiçbir işlem yapılamaz.
chattr ile kilidi nasıl kaldırabilirim?
Kilitlenen bir dosya veya dizinin kilidini açmak için chattr -i dosyaadı
komutu kullanılır.
Kilitlenmiş dosyaları nasıl görebilirim?lsattr
komutu ile dosya veya klasörlerin öznitelikleri görüntülenebilir. Eğer dosya kilitlenmişse, öznitelikler arasında i
harfi bulunur.
chattr ile kilitlenmiş bir dosya root kullanıcısı tarafından değiştirilebilir mi?
Hayır. chattr +i
ile kilitlenen dosyalar root kullanıcısı tarafından bile değiştirilemez veya silinemez. İşlem yapılmaya çalışıldığında “Operation not permitted” hatası alınır.
