Pada artikel sebelumnya kita sudah mempelajari cara membuat user & grup.
Permission/izin yang diberikan masih berupa izin default.
Pada artikel ini, kita akan mempelajari bagaimana caranya memodifikasi izin tersebut.
Persiapan yang Dibutuhkan
Buat 2 user, user1 dan user2. Buat grup baru dengan nama editor dan tambahkan user1 dan user2Â sebagai anggota ke dalam grup tersebut.
Cara Melakukannya
Ikuti langkah-langkah ini untuk mengelola izin file, ikuti langkah-langkah ini:
- Masuk ke server menggunakan akun user1.
- Buat direktori baru dengan nama documents di dalam direktori home:
- Buat sebuah file teks di dalam direktori documents:
- Sekarang masuk ke server menggunakan user2:
- Cobalah untuk mengedit file teks yng sudah Anda buat sebelumnya. Seharusnya Anda akan mendapatkan peringatan yang mengatakan Izin ditolak:

- Sekarang , kembali login sebagai user1 dan ubah grup documents menjadi editor:

- Pindah lagi ke user2 dan coba edit file yang sama. Sekarang seharusnya berfungsi:
- Buat skrip shell sederhana dengan perintah berikut:
- Jalankan skrip shell dengan perintah berikut:

- Atur izin agar file hello.sh dapat dieksekusi dengan perintah berikut:
- Periksa perubahan izin baru dengan perintah berikut:

- Jalankan hello.sh lagi:
- Masuk sebagai user1 dan set sticky bit untuk direktori documents:
- Masuk sebagai user2 dan buat file baru.
- Cobalah untuk menghapus file apa pun yang berada di dalam direktori document. Usaha menghapus harusnya gagal:
Cara Kerja
Ketika Anda membuat file atau direktori baru di Ubuntu, izin default untuk file adalah akses untuk membaca dan menulis kepada owner (pemilik) dan untuk owner’s private group adalah membaca, menulis, dan mengeksekusi akses ke direktori.
Anda dapat memeriksa pengaturan default dengan perintah umask -S.
Dalam contoh kita memiliki user1 dan user2. Keduanya adalah anggota dala grup editor.
Ketika user1 membuat file, izin default dibatasi untuk user1 dan grup privatnya (user1) dinamai akun pengguna.
Ini yang mnyebabkan user2 mendapatkan peringatan Izin ditolak Ketika mencoba mengedit file.
Dengan mengubah grup documents menjadi editor, kita mengizinkan semua anggota dalam grup editor untuk membaca dan menulis file yang berada dalam direktori documents.
Mengelola Pengguna dan Grup
Dengan perintah chmod, kita dapat mengatur izin pada level yang lebih terperinci.
Dalam contoh, file hello.sh, kita telah membuat izin eksekusi terhadap file hello.sh.
Demikian pula, kita dapat mengatur izin untuk membaca dengan perintah sebagai berikut:
[simterm]$ chmod + r nama_file[/simterm]Untuk mengatur izin menulis, gunakan perintah berikut:
[simterm]$ chmod + w nama_file[/simterm]Anda dapat mengatur lebih banyak izin selektif dengan parameter tambahan sebelum mode xpression sebagai berikut:
[simterm]$ chmod ugo+x nama_file[/simterm]Di sini, Anda menetapkan izin u untuk user, g untuk grup, dan o untuk semua yang lain (others).
Untuk menghapus izin, ganti tanda + dengan -. Sebagai contoh :
[simterm]$ chmod o-w nama_file[/simterm]Atau, Anda dapat menggunakan format Oktal untuk menentukan izin:
[simterm]$ chmod 777 nama_file[/simterm]Perintah ini artinya, Anda memberikan izin untuk membaca, menulis, dan mengeksekusi untuk user grup dan others.
Sedangkan perintah :
[simterm]$ chmod 600 nama_file[/simterm]Hanya memberikan izin untuk membaca, dan menulis bagi owner/user, sementara untuk grup dan thers tidak mendapat izin apapun.
Dalam format Octal [777], bit pertama digunakan untuk owner/user atau pemilik file, bit kedua adalah untuk grup, dan bit ketiga adalah untuk semua orang (others).
Periksa tabel berikut untuk informasi pemahaman lebih lanjut:
Notasi | Nilai Octal | Permission |
-|—|—|— | Â 0|000|000|000 | File biasa, tanpa izin |
d|r–|r–|r– | Â d|400|400|400 | Direktori, izin membaca untuk owner, group, dan others |
-|rw-|r–|r– | |644|644|644 | File biasa, izin untuk baca & tulis bagi owner dan hanya izin baca untuk group & others |
-|rwx|rwx|rwx | -|777|777|777 | File biasa, semua izin (baca, tulis & eksekusi) untuk semua orang |
Terakhir, saat Anda berbagi file dalam user sebuah grup, maka, ada kemungkinan seseorang menghapus file yang diperlukan oleh pengguna lain.
Sticky bit dapat melindungi file-file ini dari Tindakan penghapusan ini. Ketika sticky bit diatur, maka hanya owner atau user dengan hak akses root yang dapat menghapus file tersebut.
Anda dapat mengatur sticky bit dengan perintah chmod sebagai berikut :
[simterm]$ chmod + t Nama_direktori[/simterm]Sticky bit dapat ditampilkan dalam perintah long listing (ls-l) dengan simbol t atau T.
Selain itu, sticky bit hanya bekerja dengan direktori dan diabaikan pada file biasa.
Tambahan
Ketika kita bekerja sebagai user root, semua file dan direktori yang dibuat dimiliki oleh root.
Pengguna non-root tidak dapat menulis ke direktori atau file ini.
Anda dapat menggunakan perintah chown untuk mengubah kepemilikan file tersebut dan menetatpkannya ke masing-masing pengguna.
Untuk mengubah kepemilikan suatu file, gunakan perintah berikut:
[simterm]$ chown user_baru nama_file[/simterm]Untuk mengubah pemilik serta grup file, gunakan perintah berikut:
[simterm]$ chown user_baru:grup_baru nama-file[/simterm]Anda dapat melewati perubahan pemilik dan hanya mengubah grup dengan perintah berikut:
[simterm]$ chown :grup_baru nama_file[/simterm]Harap diingat, bahwa perintah chown hanya dapat digunakan oleh user dengan hak akses root.