Yapışkan bir bit, bir dosyada veya dizinde ayarlanmış, yalnızca dosya / dizin sahibinin veya kök kullanıcının dosyayı silmesine veya yeniden adlandırmasına izin veren bir izin bitidir. Başka bir kullanıcı tarafından oluşturulan dosyayı silmek için başka hiçbir kullanıcıya yetki verilmez.
Bazen dosyaları oluşturmak için tüm Linux sistemi kullanıcılarının kullanabileceği bir Linux dizinine ihtiyacınız var. Kullanıcılar bu dizindeki kolaylıklarına göre dosya oluşturabilir, silebilir veya yeniden adlandırabilir.
Şimdi, bir kullanıcı bu dizinde başka bir kullanıcı tarafından oluşturulan bir dosyayı yanlışlıkla veya kasıtlı olarak siler (veya yeniden adlandırırsa)?
Bu tür sorunlardan kaçınmak için yapışkan bit kavramı kullanılır. Yana / tmp bu amaçla kullanılmaktadır. Bu yüzden yukarıdaki senaryodan kaçınmak için, / tmp yapışkan bit kullanın.
Örneğin:
mkdir demo
chmod 777 demo
Ayrıca 777 iznine sahip bu klasörde farklı bir kullanıcıyla iki dosya oluşturdum.
ls -ld demo
drwxrwxrwx 2 guru guru 4096 Mar 11 18:17 demo
ls -l demo
-rwxrwxrwx 1 abhi abhi 0 Mar 11 17:11 file1
-rwxrwxrwx 1 anshu anshu 0 Mar 11 18:15 file2
Şimdi bu konudaki yapışkan parçayı aç.
chmod +t demo/
ls -ld demo
drwxrwxrwt 2 guru guru 4096 Mar 11 18:17 demo
Şimdi, bir kullanıcı (abhi), ikinci kullanıcıyı (anshu) yeniden adlandırmak isterse ne olur?
mv /home/guru/demo/file2 /home/guru/demo/file3
mv: cannot move '/home/guru/demo/file2' to '/home/guru/demo/file3': Operation not permitted
Yapışkan bitin kökeni
Linux'ta, yapışkan bit, dizinlerde yalnızca yukarıda açıklanan kullanıma sahiptir. Tarihsel olarak, düzenli dosyalarda tamamen farklı bir şey için kullanılıyordu ve ismin geldiği yer burasıydı.
Bir program yürütüldüğünde, kullanıcının gerçekten kullanmaya başlaması için programın belleğe yüklenmesi zaman alır. Bir program, örneğin bir editör kullanıcılar tarafından sıkça kullanılıyorsa, başlangıç zaman gecikmesi o zamanlar genel gider olmuştur.
Bu zaman gecikmesini iyileştirmek için, yapışkan bit tanıtıldı. İşletim sistemi, eğer bir çalıştırılabilirdeki yapışkan bit AÇIK ise, çalıştırılabilirin metin bölümünün takas alanında tutulduğunu kontrol etti. Bu, program tekrar çalıştırıldığında çalıştırılabilir dosyayı RAM'e geri yüklemeyi kolaylaştırarak zaman gecikmesini en aza indirdi.
Linux gibi modern sistemler çalıştırılabilir önbelleklerini ve diğer dosyaları otomatik olarak yönetir ve bunun için yapışkan bir bit gerekmez.
Kaynak: Geek Stuff’da “Linux Yapışkan Bit Kavramı Örneklerle Açıklandı”