Menggunakan Terminal Linux - File Permission (Hak Akses File)
Daftar Isi:
- Izin File Linux
- Menggunakan
chmod
- Metode Simbolik (Teks)
- Metode Numerik
- Menggunakan File Referensi
- Secara Berurutan Mengubah Izin File
- Beroperasi pada Tautan Simbolik
- Mengubah Izin File dalam Jumlah Besar
- Kesimpulan
Di Linux, akses ke file dikelola melalui izin file, atribut, dan kepemilikan. Ini memastikan bahwa hanya pengguna dan proses yang sah yang dapat mengakses file dan direktori.
Tutorial ini mencakup cara menggunakan perintah
chmod
untuk mengubah izin akses file dan direktori.
Izin File Linux
Sebelum melangkah lebih jauh, mari kita jelaskan model izin Linux dasar.
Di Linux, setiap file dikaitkan dengan pemilik dan grup dan ditugaskan dengan hak akses izin untuk tiga kelas pengguna yang berbeda:
- Pemilik file. Anggota grup. Lainnya (semua orang).
Kepemilikan file dapat diubah menggunakan perintah
chown
dan
chgrp
.
Ada tiga jenis izin file yang berlaku untuk setiap kelas:
- Izin baca. Izin menulis. Izin eksekusi.
Konsep ini memungkinkan Anda menentukan pengguna mana yang diizinkan membaca file, menulis ke file, atau menjalankan file.
Izin file dapat dilihat menggunakan perintah
ls
:
ls -l filename.txt
-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt |- | | | | | | | | | | | | | +-----------> 7. Group | | | | | +-------------------> 6. Owner | | | | +--------------------------> 5. Alternate Access Method | | | +----------------------------> 4. Others Permissions | | +-------------------------------> 3. Group Permissions | +----------------------------------> 2. Owner Permissions +------------------------------------> 1. File Type
Karakter pertama menunjukkan tipe file. Ini bisa berupa file biasa (
-
), direktori (
d
), tautan simbolik (
l
), atau jenis file khusus lainnya.
Sembilan karakter berikutnya mewakili hak akses file, masing-masing tiga triplet dari tiga karakter. Triplet pertama menunjukkan izin pemilik, izin grup yang kedua, dan triplet terakhir menunjukkan izin semua orang. Izin dapat memiliki arti berbeda tergantung pada jenis file.
Dalam contoh di atas (
rw-r--r--
) berarti bahwa pemilik file telah membaca dan menulis izin (
rw-
), grup dan yang lainnya hanya memiliki izin baca (
r--
).
Masing-masing dari tiga triplet izin dapat dibangun dari karakter berikut dan memiliki efek yang berbeda, tergantung pada apakah mereka diatur ke file atau ke direktori:
Pengaruh Izin pada File
Izin | Karakter | Berarti pada File |
---|---|---|
Baca |
-
|
File tidak dapat dibaca. Anda tidak dapat melihat konten file. |
r
|
File dapat dibaca. | |
Menulis |
-
|
File tidak dapat diubah atau dimodifikasi. |
w
|
File dapat diubah atau dimodifikasi. | |
Menjalankan |
-
|
File tidak dapat dieksekusi. |
x
|
File dapat dieksekusi. | |
s
|
Jika ditemukan di triplet
user
itu mengatur bit
setuid
. Jika ditemukan di triplet
group
, itu mengatur bit
setgid
. Ini juga berarti bahwa
x
flag disetel.
Ketika flag
|
|
S
|
Sama seperti
s
tetapi bendera
x
tidak disetel. Bendera ini jarang digunakan pada file. |
|
t
|
Jika ditemukan di triplet yang
others
itu mengatur bit
sticky
.
Ini juga berarti bahwa
|
|
T
|
Sama seperti
t
tetapi bendera
x
tidak disetel. Bendera ini tidak berguna untuk file. |
Pengaruh Izin pada Direktori (Folder)
Di Linux, Direktori adalah jenis file khusus yang berisi file dan direktori lain.
Izin | Karakter | Berarti di Direktori |
---|---|---|
Baca |
-
|
Isi direktori tidak dapat ditampilkan. |
r
|
Konten direktori dapat ditampilkan.
(mis. Anda dapat membuat daftar file di dalam direktori dengan
|
|
Menulis |
-
|
Isi direktori tidak dapat diubah. |
w
|
Konten direktori dapat diubah.
(mis. Anda tidak dapat membuat file baru, menghapus file.. dll) |
|
Menjalankan |
-
|
Direktori tidak dapat diubah menjadi. |
x
|
Direktori dapat dinavigasi menggunakan
cd
. |
|
s
|
Jika ditemukan di triplet
user
, itu mengatur bit
setuid
. Jika ditemukan di triplet
group
itu menetapkan bit
setgid
. Ini juga berarti bahwa
x
flag disetel. Ketika flag
setgid
diatur pada direktori, file-file baru yang dibuat di dalamnya mewarisi ID grup direktori (GID), alih-alih ID grup utama dari pengguna yang membuat file.
|
|
S
|
Sama seperti
s
tetapi bendera
x
tidak disetel. Bendera ini tidak berguna di direktori. |
|
t
|
Jika ditemukan di triplet yang
others
itu mengatur bit
sticky
.
Ini juga berarti bahwa
|
|
T
|
Sama seperti
t
tetapi bendera
x
tidak disetel. Bendera ini tidak berguna di direktori. |
Menggunakan
chmod
Perintah
chmod
mengambil bentuk umum berikut:
chmod MODE FILE…
Perintah
chmod
memungkinkan Anda untuk mengubah izin pada file menggunakan mode simbolik atau numerik atau file referensi. Kami akan menjelaskan mode secara lebih rinci nanti. Perintah dapat menerima satu atau lebih file dan / atau direktori yang dipisahkan oleh spasi sebagai argumen.
Hanya root, pemilik file atau pengguna dengan hak sudo yang dapat mengubah izin file. Berhati-hatilah saat menggunakan
chmod
, terutama saat mengubah izin secara rekursif.
Metode Simbolik (Teks)
Sintaks perintah
chmod
saat menggunakan mode simbolik memiliki format berikut:
chmod perms… FILE…
Set bendera pertama (
), flag pengguna, menentukan pengguna mana saja yang hak aksesnya diubah.
-
u
- Pemilik file.g
- Pengguna yang merupakan anggota grup.o
- Semua pengguna lain.a
- Semua pengguna, identik denganugo
.
Jika flag pengguna dihilangkan, yang standar adalah
a
dan izin yang diatur oleh umask tidak terpengaruh.
Set kedua bendera (
), flag operasi, menentukan apakah izin harus dihapus, ditambahkan, atau disetel:
-
-
Menghapus izin yang ditentukan.+
Menambahkan izin yang ditentukan.=
Mengubah izin saat ini ke izin yang ditentukan. Jika tidak ada izin yang ditentukan setelah simbol=
, semua izin dari kelas pengguna yang ditentukan akan dihapus.
Izin (
perms…
) dapat secara eksplisit diatur menggunakan nol atau satu atau lebih dari huruf-huruf berikut:
r
,
w
,
x
,
X
,
s
, dan
t
. Gunakan satu huruf dari set
u
,
g
, dan
o
saat menyalin izin dari satu ke kelas pengguna lain.
Saat mengatur izin untuk lebih dari satu kelas pengguna (
), gunakan koma (tanpa spasi) untuk memisahkan mode simbolik.
Berikut adalah beberapa contoh cara menggunakan perintah
chmod
dalam mode simbolik:
-
Berikan anggota grup izin untuk membaca file, tetapi tidak untuk menulis dan menjalankannya:
chmod g=r filename
Hapus izin eksekusi untuk semua pengguna:
chmod ax filename
Secara tegas menghapus izin menulis untuk pengguna lain:
chmod -R ow dirname
Hapus izin baca, tulis, dan jalankan untuk semua pengguna kecuali pemilik file:
chmod og-rwx filename
Hal yang sama dapat dicapai dengan menggunakan formulir berikut:
chmod og= filename
Berikan izin baca, tulis, dan jalankan kepada pemilik file, baca izin untuk grup file, dan tidak ada izin untuk semua pengguna lain:
chmod u=rwx, g=r, o= filename
Tambahkan izin pemilik file ke izin yang dimiliki anggota grup file:
chmod g+u filename
Tambahkan sedikit sticky ke direktori yang diberikan:
chmod o+t dirname
Metode Numerik
Sintaks perintah
chmod
saat menggunakan metode numerik memiliki format berikut:
chmod NUMBER FILE…
Saat menggunakan mode numerik, Anda dapat mengatur izin untuk ketiga kelas pengguna (pemilik, grup, dan semua lainnya) secara bersamaan.
NUMBER
dapat berupa angka 3 atau 4 digit.
Ketika 3 digit angka digunakan, digit pertama mewakili izin pemilik file, yang kedua dari grup file dan yang terakhir semua pengguna lain.
Setiap menulis, membaca, dan mengeksekusi izin memiliki nilai angka berikut:
-
r
(baca) = 4w
(tulis) = 2x
(jalankan) = 1tidak ada izin = 0
Nomor izin kelas pengguna tertentu diwakili oleh jumlah nilai izin untuk grup itu.
Untuk mengetahui izin file dalam mode numerik cukup hitung total untuk semua kelas pengguna. Misalnya, untuk memberikan izin baca, tulis, dan eksekusi kepada pemilik file, baca dan jalankan izin untuk grup file dan hanya baca izin untuk semua pengguna lain yang akan Anda lakukan sebagai berikut:
- Pemilik: rwx = 4 + 2 + 1 = 7Group: rx = 4 + 0 + 1 = 5Lain-lain: rx = 4 + 0 + 0 = 4
Dengan menggunakan metode di atas kita sampai pada angka
754
, yang mewakili izin yang diinginkan.
Untuk mengatur flag
sticky bit
setuid
,
setgid
, dan
sticky bit
gunakan empat digit angka.
Ketika nomor 4 digit digunakan, digit pertama memiliki arti sebagai berikut:
- setuid = 4setgid = 2sticky = 1 tidak ada perubahan = 0
Tiga digit berikutnya memiliki arti yang sama seperti ketika menggunakan angka 3 digit.
Jika digit pertama adalah 0 maka dapat dihilangkan, dan mode dapat direpresentasikan dengan 3 digit. Mode angka
0755
sama dengan
755
.
Untuk menghitung mode numerik Anda juga dapat menggunakan metode lain (metode biner), tetapi sedikit lebih rumit. Mengetahui cara menghitung mode numerik menggunakan 4, 2, dan 1 sudah cukup untuk sebagian besar pengguna.
Anda dapat memeriksa izin file dalam notasi angka menggunakan perintah
stat
:
stat -c "%a" filename
644
Berikut adalah beberapa contoh cara menggunakan perintah
chmod
dalam mode numerik:
-
Berikan izin kepada pemilik file untuk membaca dan menulis dan hanya baca izin untuk anggota grup dan semua pengguna lain:
chmod 644 dirname
Berikan pemilik file membaca, menulis, dan mengeksekusi izin, membaca dan mengeksekusi izin untuk anggota grup dan tidak ada izin untuk semua pengguna lain:
chmod 750 dirname
Berikan membaca, menulis, dan mengeksekusi izin, dan sedikit lengket ke direktori yang diberikan:
chmod 1777 dirname
Secara rekursif mengatur baca, tulis, dan jalankan izin untuk pemilik file dan tidak ada izin untuk semua pengguna lain pada direktori yang diberikan:
chmod -R 700 dirname
Menggunakan File Referensi
Opsi
--reference=ref_file
memungkinkan Anda untuk mengatur izin file agar sama dengan izin dari file referensi yang ditentukan (
ref_file
).
chmod --reference=REF_FILE FILE
Sebagai contoh, perintah berikut akan menetapkan izin
file1
ke
file2
Secara Berurutan Mengubah Izin File
Untuk beroperasi secara rekursif pada semua file dan direktori di bawah direktori yang diberikan, gunakan opsi
-R
(
--recursive
):
chmod -R MODE DIRECTORY
Misalnya, untuk mengubah izin semua file dan subdirektori di bawah direktori
/var/www
ke
755
Anda akan menggunakan:
Beroperasi pada Tautan Simbolik
Tautan simbolik selalu memiliki
777
izin.
Secara default, saat mengubah izin symlink,
chmod
akan mengubah izin pada file yang ditunjuk tautan itu.
chmod 755 symlink
Kemungkinannya adalah alih-alih mengubah kepemilikan target, Anda akan mendapatkan kesalahan "tidak dapat mengakses 'symlink': Izin ditolak".
Kesalahan terjadi karena secara default pada sebagian besar distribusi Linux symlink dilindungi, dan Anda tidak dapat beroperasi pada file target. Opsi ini ditentukan di
/proc/sys/fs/protected_symlinks
.
1
berarti diaktifkan dan
0
dinonaktifkan. Disarankan untuk tidak menonaktifkan perlindungan symlink.
Mengubah Izin File dalam Jumlah Besar
Kadang-kadang ada situasi di mana Anda perlu mengubah file dan izin direktori secara massal.
Skenario yang paling umum adalah mengubah secara perizinan file situs web menjadi
644
dan izin direktori menjadi
755
.
Menggunakan metode numerik:
find /var/www/my_website -type d -exec chmod 755 {} ;
find /var/www/my_website -type f -exec chmod 644 {} ;
Menggunakan metode simbolis:
find /var/www/my_website -type d -exec chmod u=rwx, go=rx {} ;
find /var/www/my_website -type f -exec chmod u=rw, go=r {} ;
Perintah
find
akan mencari file dan direktori di bawah
/var/www/my_website
dan meneruskan setiap file dan direktori yang ditemukan ke perintah
chmod
untuk mengatur izin.
Kesimpulan
Perintah
chmod
mengubah izin file. Izin dapat diatur menggunakan mode simbolik atau numerik.
Untuk mempelajari lebih lanjut tentang
chmod
kunjungi halaman manual chmod.
Ekstensi Mozilla Akan Menyadap Perintah-Perintah Tertentu

Perpanjangan eksperimental ke Mozilla Firefox memungkinkan orang mengganti perintah teks sederhana untuk tugas-tugas Web yang rumit.
Perintah perintah Windows 8 Master

Selesaikan lebih banyak hal dalam waktu yang lebih singkat di desktop atau tablet dengan menguasai kontrol sentuh Windows 8 dan keyboard / mouse yang setara.
Perintah perintah layar penuh pada Windows 7/8/10

Mengapa saya tidak membuka perintah perintah layar penuh di Windows 7? Bagaimana membuka command prompt layar penuh di Windows 7? Artikel ini menjawab pertanyaan seperti itu!