Saat menjalankan perintah ls -ld /tmp
, outputnya adalah:
drwxrwxrwt 30 root root 20480 Mar 11 14:17 /tmp
Jadi saya punya dua pertanyaan utama:
- Apa surat
t
setelah izin? - Sejauh yang saya tahu
/tmp
digunakan untuk membuat file sementara yang terkait dengan pengguna yang berbeda dalam sistem, jadi bagaimana bisa memiliki izinrwxrwxrwx
(777)?
Ini sepertinya salah bagi saya. Tolong saya butuh bantuan Anda untuk memahami apa yang sedang terjadi di sini.
permissions
tmp
Komunitas
sumber
sumber
Jawaban:
Jadi apa yang lengket?
Bit sticky adalah bit izin yang ditetapkan pada direktori yang memungkinkan hanya pemilik file di dalam direktori itu, pemilik direktori atau pengguna root untuk menghapus atau mengganti nama file. Tidak ada pengguna lain yang memiliki hak yang diperlukan untuk menghapus file yang dibuat oleh beberapa pengguna lain.
Ini adalah langkah keamanan untuk menghindari penghapusan folder penting dan kontennya (sub-direktori dan file), meskipun pengguna lain memiliki izin penuh.
Mengapa
/tmp
memilikit
sedikit lengket?The
/tmp
direktori dapat digunakan oleh pengguna Linux yang berbeda untuk membuat file-file sementara. Sekarang, bagaimana jika pengguna menghapus / mengganti nama file yang dibuat oleh pengguna lain dalam direktori ini?Nah, untuk menghindari masalah seperti ini, konsep bit sticky digunakan. Jadi untuk itu
777
diberikan tetapi mempertahankan sedikit lengket bukanlah ide yang buruk.Bagaimana saya bisa mengatur bit sticky untuk direktori?
Saya akan mengatur sedikit lengket pada direktori yang disebut
test
di Desktop saya.Cara simbolis (
t
mewakili bit yang lengket):atau
Cara numerik / oktal (1, bit lengket sebagai nilai 1 di posisi pertama)
Sekarang mari kita menguji hasilnya:
Untuk menghapus / menghapus sedikit lengket
Sekarang mari kita menguji hasilnya:
Sumber: "Apa itu Bit yang lengket dan bagaimana cara mengaturnya di Linux?" Di The Linux Juggernaut
sumber
t
menyembunyikan yangx
menunjukkan apakah semua pengguna dapat menjalankan file / direktori, kita perlu cara lain untuk menunjukkan ini. Hal yang biasa adalah bahwa semua orang dapat menjalankannya, dalam hal ini Anda mendapatkan yang normalt
(bukan sebuahx
). Tetapi jika tidak, maka Anda mendapatkan huruf besarT
(bukan a-
). Sumber: Wikipedia.Kadang-kadang terjadi bahwa Anda memerlukan direktori Linux yang dapat digunakan oleh semua pengguna sistem Linux untuk membuat file. Pengguna dapat membuat, menghapus, atau mengganti nama file sesuai dengan kenyamanan mereka dalam direktori ini.
Sebagai contoh:
Saya juga membuat dua file dengan pengguna berbeda di folder ini yang memiliki izin 777.
Sekarang nyalakan sedikit masalah ini
Sekarang apa yang terjadi jika satu pengguna (abhi) ingin mengganti nama pengguna ke-2 (anshu)
Asal usul bit yang lengket
Di Linux, bit sticky hanya memiliki penggunaan yang dijelaskan di atas, pada direktori. Secara historis, ini digunakan untuk sesuatu yang sama sekali berbeda pada file biasa, dan dari sinilah namanya berasal.
Sistem modern seperti Linux mengelola cache dari file executable dan file lainnya secara otomatis dan tidak memerlukan sedikit pun untuk itu.
Sumber: "Konsep Linux Sticky Bit Dijelaskan dengan Contoh" di The Geek Stuff
sumber
Stickybit adalah metode penyelesaian masalah untuk direktori bersama agar tidak dihapus secara tidak sengaja. Ketika sebuah direktori memiliki stickybit maka hanya pemilik atau root yang dapat menghapusnya bahkan setiap pengguna dapat mengambil izin penuh lainnya.
/tmp
adalah direktori yang paling banyak dibagikan antara proses dan pengguna dan untuk itu berisi stickybit untuk memastikan bahwa tidak ada pengguna yang dapat menghapus direktori, bahkan seizinnya777
, dan harus demikian untuk memberikan kemampuan kepada pengguna dan proses untuk menggunakan direktori tanpa konflik dalam izin.sumber