Bu dosyayı neden kök olarak silemiyorum?


20

İçinde 2 dosya olan bir dizin sınavı var. Dosyaları silmem gerekiyor ama izin verilmedi. rm -rfKomut bile bu dosyaları silemez. Kök kullanıcı olarak oturum açtım.

resim açıklamasını buraya girin


13
Terminali'nden (1) Lütfen sonrası metin metin olarak eğer mümkünse. İdeal olarak, kopyalayıp yapıştırın. Metni manuel olarak kopyalamak dışında yakalamak için bir yolunuz yoksa, bunu yapın, ancak yaptığınızı açıklayın ve yazmayı iki kez kontrol edebilmemiz için ekran yakalama görüntüsünü ekleyin. (2) Eğer izinleri hakkında bir sorunuz olduğunda, lütfen, her zaman, do ls -la, bu yüzden izinlerini görebilirsiniz .(dizine).
G-Man 'eski durumuna Monica' Diyor

Yanıtlar:


39

Kök kullanıcı denetimi dosya özniteliklerinden

# lsattr 

i(değiştirilemez) veya a(yalnızca ek ) fark ederseniz , şu özellikleri kaldırın:

# man chattr
# chattr -i [filename]
# chattr -a [filename]

1
Vay, bu zor biriydi. Bu çözümü gönderdiğiniz için teşekkür ederiz; Fikirlerimin ucundaydım. Bunun bir şekilde uyumsuz senkronizasyonumla ilgili olduğundan emindim ; 'bilinmeyen' bir durumda bırakıldı (birçok nedenden dolayı) ve bu, silemediğim dizinlerin (tek başına) yalnızca ek olarak ayarlandığı anlamına geliyordu (bu tipik bir birliktir). Ancak, yalnızca ek modun nasıl görüntüleneceği / sıfırlanacağı hakkında hiçbir fikrim yoktu! Sen bir cankurtarantın; Umarım orijinal poster de problemlerini çözmüştür.
Gwyneth Llewelyn

Bu bir Cankurtaran.
Luka

16

rmBir dosyayı silme izniniz olmadığından şikayet etmenin en yaygın nedeni , dizindeki izinlerin dosyayı silmenizi engellemesidir. Bir dosyayı silmek için dizinde yazma iznine ihtiyacınız vardır. Dosyadaki izinler önemsizdir ( salt okunur bir dosyayı silmeden önce onay rmistemeksizin -f, ancak bu bir sınırlama değil, yalnızca bir onaylamadır). OSX (ancak Linux değil) gibi bazı Unix varyantlarında , bir dosyadaki ACL silinmesini engelleyebilir; dosyada bir ACL girdisi varsa izin alanının sonunda ls -lgösterilir @.

Kök olarak erişim izinleri atlar, böylece kök salt okunur bir dizinde bile dosyaları silebilir.

'Den çıktı , izin sütununun sonunda ls -lbir a gösterir .. Bu, dosyanın SELinux güvenlik bağlamına sahip olduğunu gösterir. Temel izinlerden ve ACL'den farklı olarak, bir dosyadaki SELinux güvenlik içeriği dosyayı kimin silmesine izin verildiğini kontrol edebilir. Ayrıca, SELinux her zaman root tarafından atlanamaz (kullanıcı kimliği 0 olarak çalışan, ancak SELinux politika tasarımcısının seçtiği kadar az hakka sahip bir sürecin olması mümkündür). SELinux içeriğinin yapmanıza izin verdiğini görmek için çalıştırın ls -lZ . exam_a.

Bir dosyanın silinmesini engelleyebilecek başka bir şey, dosyanın veya onu içeren dizinin yalnızca ek veya değiştirilemeyen Linux özniteliğine sahip olmasıdır . lsattr -d . exam_aLinux özniteliklerini görüntülemek için çalıştırın . Eğer aveya initeliği üzerinde, bunu (kaldırmanız gerekir chattr -a -i . exam_adosyayı silmek için); bunu sadece kök yapabilir. Kök bir dosyayı silmek için bu öznitelikleri atlayamaz, önce özniteliklerin kapatılması gerekir.

Bir dosyanın silinmesini engelleyen başka bir şey, dosya sisteminin salt okunur olarak monte edilmiş olması, ancak bu durumda farklı bir hata mesajı almanızdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.