Bit sticky berguna pada direktori yang dapat ditulis oleh dunia, seperti /tmp
. Dalam direktori ini, siapa pun dapat membuat file, sehingga direktori harus dapat ditulis oleh dunia. Tapi itu berarti siapa pun dapat menghapus file juga, bahkan jika itu bukan milik mereka, karena menghapus file dikendalikan oleh izin tulis pada direktori. Ketika sebuah direktori memiliki bit yang lengket, hanya pemilik file yang memiliki izin untuk menghapusnya.
Dalam direktori dengan izin rwx------
atau rwxr-xr-x
, hanya pemilik direktori yang dapat membuat atau menghapus file. Jika ada file yang milik pengguna lain (dipindahkan ke sana oleh root, atau dibuat ketika direktori memiliki lebih banyak izin terbuka), itu masih pemilik direktori yang memiliki izin untuk menghapusnya, bukan pemilik file.
Dalam direktori dengan izin rwxrwx---
, semua anggota grup dapat membuat dan menghapus file. Anggota grup mana pun dapat menghapus file apa pun meskipun itu milik pengguna lain. Jika izinnya rwxrwx--T
bukan (modal T
seperti t
, tetapi t
berarti x
bit ditetapkan dan T
berarti x
bit jelas), maka setiap anggota grup dapat membuat file, dan anggota grup dapat menghapus file tetapi hanya file mereka sendiri .
Anda dapat menggunakan perintah berikut untuk melihat direktori mana yang memiliki bit lengket pada sistem Anda:
find / /run /run/lock /run/shm -xdev -path /usr -prune -o -perm -o+t -ls 2>/dev/null
Anda akan menemukan beberapa direktori seperti /tmp
yang terbuka untuk semua orang, dan beberapa direktori seperti /var/spool/cron/crontabs
yang disediakan untuk program sistem yang berjalan sebagai grup sendiri ( setgid ), di mana bit sticky memastikan bahwa program hanya dapat menghapus file atas nama pengguna yang memiliki mereka (yang memastikan bahwa program hanya dapat membuat file atas nama pengguna yang memiliki mereka adalah bahwa program berjalan sebagai pengguna itu, bukan sebagai root, jadi tidak dapat membuat file milik pengguna lain).