Izin File di Linux
Di setiap sistem Linux, ada tiga jenis pemilik yang memiliki tiga jenis izin yang ditentukan. Sembilan karakter menunjukkan tiga jenis izin ini.
Jenis Izin
- Read (r): Izin baca memungkinkan Anda untuk membuka dan membaca konten file. Namun, Anda tidak dapat melakukan pengeditan atau modifikasi pada file tersebut.
- Write (w): Izin tulis memungkinkan Anda mengedit, menghapus, atau mengganti nama file. Misalnya, jika sebuah file ada di dalam direktori dan izin tulis diatur pada file tersebut tetapi tidak pada direktori, maka Anda dapat mengedit konten file tersebut tetapi tidak dapat menghapus atau mengganti namanya.
- Execute (x): Di sistem tipe Unix, Anda tidak dapat menjalankan atau mengeksekusi program kecuali izin eksekusi diatur. Namun, di Windows, tidak ada izin semacam itu.
Izin pada File dan Direktori
Permission | Pada File | Pada Direktori |
---|---|---|
r (read) | membaca konten file (cat) | membaca konten direktori (ls) |
w (write) | mengubah konten file (vi) | membuat file di direktori (touch) |
x (execute) | mengeksekusi file | memasuki direktori (cd) |
Set Izin
Lihat snapshot di bawah ini, ada sepuluh karakter (-rw-rw-r–) sebelum pemilik user. Kami akan menjelaskan sepuluh karakter ini di sini.
Izin File untuk (-rw-rw-r–)
Posisi | Karakter | Kepemilikan |
---|---|---|
1 | – | menunjukkan tipe file |
2-4 | rw- | izin untuk user |
5-7 | rw- | izin untuk grup |
8-10 | r– | izin untuk others |
Ketika Anda adalah pemilik user, maka izin pemilik user berlaku untuk Anda. Izin lain tidak relevan untuk Anda. Ketika Anda adalah anggota grup, maka izin grup berlaku untuk Anda. Izin lain tidak relevan untuk Anda. Ketika Anda adalah orang lain, maka izin other berlaku untuk Anda. Izin user dan grup tidak relevan untuk Anda.
Contoh Izin
Lihat snapshot di bawah ini, direktori dan file yang berbeda memiliki izin yang berbeda.
Karakter pertama (-) atau d menunjukkan file dan direktori masing-masing. Dari sembilan huruf yang tersisa, triplet pertama menunjukkan izin untuk pemilik user. Triplet kedua menunjukkan izin untuk pemilik grup. Triplet ketiga menunjukkan izin untuk other.
Mengatur Izin dengan chmod
Anda dapat mengubah izin dengan perintah chmod
sesuai kebutuhan Anda. Di bawah ini adalah beberapa contoh untuk mengubah izin untuk grup yang berbeda.
Menambahkan Izin ke Grup
Sintaks:
phpSalin kodechmod <groupName>+<permissionName> <fileName>
Contoh:
bashSalin kodechmod u+x file
Lihat snapshot di bawah ini, izin untuk mengeksekusi ditambahkan ke grup pemilik user.
Menghapus Izin dari Grup
Sintaks:
phpSalin kodechmod <groupName>-<permissionName> <fileName>
Contoh:
bashSalin kodechmod g-x file
chmod u-w file
Lihat snapshot di bawah ini, izin untuk mengeksekusi dihapus dari grup dan izin untuk menulis dihapus dari pemilik user.
Menambahkan Izin ke Semua Grup Secara Bersamaan
Sintaks:
phpSalin kodechmod a+<permissionName> <fileName>
Contoh:
bashSalin kodechmod a+w file
Lihat snapshot di bawah ini, kami telah memberikan izin untuk menulis untuk semua grup.
Menambahkan Izin ke Semua Grup Tanpa Mengetik a
Sintaks:
phpSalin kodechmod +<permissionName> <fileName>
Contoh:
bashSalin kodechmod +w file
Lihat snapshot di bawah ini, contoh ini sama seperti sebelumnya hanya perbedaannya adalah bahwa kami tidak mengetikkan a di dalamnya.
Mengatur Izin Eksplisit
Sintaks:
phpSalin kodechmod <groupName>=<permissions> <fileName>
Contoh:
bashSalin kodechmod o=rw file
Lihat snapshot di bawah ini, kami telah mengatur izin eksplisit untuk membaca dan menulis untuk others.
Mengatur Izin Eksplisit untuk Grup yang Berbeda
Sintaks:
phpSalin kodechmod <groupName>=<permissions> <fileName>
Contoh:
bashSalin kodechmod u=rwx,g=rw,o=r file
Lihat snapshot di bawah ini, kami telah mengatur izin untuk ketiga grup.
Mengatur Izin Oktal
Izin oktal juga dapat diatur untuk grup.
Misalnya, untuk mengatur r oktal akan menjadi 4, untuk mengatur w oktal akan menjadi 2, untuk mengatur x oktal akan menjadi 1.
Tabel Oktal
Biner | Oktal | Izin |
---|---|---|
000 | 0 | — |
001 | 1 | –x |
010 | 2 | -w- |
011 | 3 | -wx |
100 | 4 | r– |
101 | 5 | r-x |
110 | 6 | rw- |
111 | 7 | rwx |
Dari sini kita dapat menyimpulkan bahwa:
- 777 = rwxrwxrwx
- 765 = rwxrw-r-x
- 654 = rw-r-xr–
- dan seterusnya.
Lihat snapshot di bawah ini, kami telah menunjukkan beberapa contoh oktal acak dengan angka 777, 274, dan 111.
umask
Saat membuat file atau direktori, secara default satu set izin diterapkan. Izin default ini dapat dilihat dengan perintah umask
.
Untuk alasan keamanan, semua sistem Unix tidak memberikan izin eksekusi ke file yang baru dibuat. Menambahkan izin eksekusi adalah terserah Anda.
Lihat snapshot di bawah ini:
mkdir -m
Perintah mkdir -m
dapat digunakan untuk mengatur mode.
Sintaks:
phpSalin kodemkdir -m <mode> <fileName>
Contoh:
arduinoSalin kodemkdir -m 777 new1
mkdir -m 000 new2
Lihat snapshot di bawah ini, kami telah membuat dua file new1
dan new2
dengan mode 777 dan 000 masing-masing.
cp -p
Perintah cp -p
mempertahankan izin dan stempel waktu dari file sumber.
Sintaks:
phpSalin kodecp -p <sourceFile> <destinationFile>
Contoh:
bashSalin kodecp -p list dupli.txt
Lihat snapshot di bawah ini, izin untuk file list
dan dupli.txt
berbeda sebelumnya. Tetapi setelah menjalankan perintah “cp -p list dupli.txt”, kedua file memiliki izin yang sama.
ref: [1]