Linux Shell Sticky Bit Usage dan Contoh

Linux Shell Sticky Bit Usage dan Contoh

Sebelum kita berbicara tentang apa yang sedikit lengket, mari kita mulai dengan menjelaskan mengapa kita membutuhkannya. Misalnya kami memiliki direktori /var/share Di suatu tempat pada sistem file dengan akses penuh untuk semua grup izin yaitu pemilik, grup dan apa saja, sehingga semua bit izin diatur ke "aktif" DRWXRWXRWX:

# ls -ld/var/share/drwxrwxrwx. 2 root root 4096 Mar 5 11:02/var/share/ 

Dari yang di atas, kita dapat melihat bahwa pengguna mana pun telah membaca, menulis, dan menjalankan izin ke /var/share direktori. Selanjutnya, dalam skenario kami kami memiliki dua pengguna bernama user1 Dan user2. Karena semua orang sekarang memiliki akses /var/share direktori, kami user1 dapat menavigasi ke direktori ini dan cukup membuat file sewenang -wenang:

user1@localhost ~] $ cd/var/share/[user1@localhost share] $ touch file1 [user1@localhost share] $ ls -l file1 -rw -rw -r -r--. 1 user1 user1 0 Mar 5 11:08 File1 [user1@localhost share] $ $ 

Itu file1 dibuat dengan bit izin yang ditetapkan oleh pengguna Umask nilai dan kepemilikan pengguna dan grup diatur ke penciptanya user1. Sejauh ini kami tidak memiliki masalah dan semua bekerja dengan sempurna seperti yang dimaksudkan. Nanti, kami user2 menavigasi ke /var/share direktori dan memutuskan untuk mengganti nama atau menghapus file1 ke file2:

[user2@localhost share] $ cd/var/share/[user2@localhost share] $ ls -l total 0 -rw -rw -r -r--. 1 user1 user1 0 Mar 5 11:20 File1 [user2@localhost share] $ mv file1 file2 [user2@localhost share] $ ls -l total 0 -rw -rw -r -r--. 1 user1 user1 0 Mar 5 11:20 File2 [user2@localhost share] $ rm file2 rm: hapus file kosong reguler yang dilindungi write 'File2'? y [user2@localhost saham] $ ls [user2@localhost saham] $ $ 

Apa yang terjadi dalam contoh di atas adalah kami user2 dinavigasi ke /var/share direktori, terdaftar semua file dan ditemukan file1. Dengan menggunakan MV Perintah pengguna berganti nama menjadi file1 ke file2. File itu diganti namanya sementara pemilik dan grup file tidak berubah. Setelah itu user2 cukup memutuskan untuk menghapus file menggunakan rm memerintah.

Pada tahap ini kami membutuhkan beberapa mekanisme untuk mencegah pengguna yang tidak memiliki direktori atau file aktual dalam direktori untuk mengganti nama atau menghapus file pengguna lain. Mekanisme ini disebut "bit lengket". Bit lengket hanya memungkinkan root, pemilik direktori dan pemilik file untuk mengganti nama dan menghapus file. Menggunakan Chmod Perintah untuk mengatur bit lengket pada direktori:

[root@localhost ~]# chmod +t/var/share/[root@localhost ~]# ls -ld/var/share/drwxrwxrwt. 2 root root 4096 Mar 5 11:21/var/share/ 

Bit izin terakhir yang dapat dieksekusi untuk semua pengguna sekarang diatur ke T Yang berarti bahwa bit lengket sekarang ada dan hanya root, file atau pemilik direktori yang dapat mengganti nama dan menghapus file. Mari kita tiru skenario di atas dan biarkan user1 untuk membuat yang baru file1 mengajukan:

[user1@localhost share] $ ls [user1@localhost share] $ touch file1 [user1@localhost saham] $ ls -l total 0 -rw -rw -r -r--. 1 user1 user1 0 Mar 5 11:34 File1 [user1@localhost share] $ $ 

file1 sekarang dibuat dan karena bit lengket sekarang ada di tempatnya user2 sekarang akan dicegah untuk mengganti nama atau menghapus file yang bukan miliknya:

[user2@localhost saham] $ ls -l total 0 -rw -rw -r--. 1 user1 user1 0 5 Mar 5 11:34 File1 [user2@localhost share] $ mv file1 file2 mv: tidak dapat memindahkan 'file1' ke 'file2': operasi tidak diizinkan [user2@localhost share] $ rm file1 rm: hapus write-fooftected File kosong biasa 'File1'? y rm: tidak dapat menghapus 'file1': operasi tidak diizinkan [user2@localhost share] $ ls -l Total 0 -rw -rw -r--. 1 user1 user1 0 Mar 5 11:34 File1 [user2@localhost share] $ $ 

Dari contoh di atas kita bisa melihatnya user2 tidak dapat mengganti nama atau menghapus file karena dimiliki oleh pengguna lain, sementara perilaku ini ditegakkan oleh mekanisme bit lengket. Contoh terbaik penggunaan bit lengket adalah /tmp/ direktori.

# ls -ld / tmp / drwxrwxrwt. 18 root root 480 Mar 5 11:42 /tmp / 

Setiap pengguna memiliki akses ke /tmp/, Namun, untuk mencegah pengguna lain mengganti nama atau menghapus file yang dimiliki oleh pengguna yang berbeda, bit lengket diatur ke direktori ini secara default. Hanya untuk kelengkapan, perhatikan bahwa Anda dapat menghapus bit lengket dari direktori oleh yang sudah disebutkan Chmod memerintah:

[root@localhost ~]# ls -ld/var/share/drwxrwxrwt. 2 root root 4096 Mar 5 11:38/var/share/[root@localhost ~]# chmod -t/var/share/[root@localhost ~]# ls -ld/var/share/drwxrwxrwx. 2 root root 4096 Mar 5 11:38/var/share/[root@localhost ~]# 

Tutorial Linux Terkait:

  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
  • Menguasai loop skrip bash
  • Bagaimana memanfaatkan openssh
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Seberapa sering Anda harus me -reboot server linux Anda?
  • Cara Dual Boot Kali Linux dan Windows 10
  • Dasar -dasar matematika komputer: biner, desimal, heksadesimal, oktal
  • Buat dan konfigurasikan direktori setGid untuk kolaborasi -…