Setelah menjawab pertanyaan saya di sini dan melakukan penelitian tentang hasilnya saya menemukan sebuah artikel yang menjelaskan semuanya dengan sangat baik. Saya ingin membagikan beberapa bagian dari artikel ini di sini untuk referensi di masa mendatang.
Melihat izin
Agar dapat digunakan chmod
untuk mengubah izin file atau direktori, Anda harus terlebih dahulu tahu apa mode akses saat ini. Anda dapat melihat konten direktori di terminal dengan cd
ke direktori itu dan kemudian menggunakan:
$ ls -l
The -l
switch penting karena menggunakan ls
tanpa itu hanya akan menampilkan nama file atau folder dalam direktori.
Di bawah ini adalah contoh penggunaan ls -l
pada direktori home saya:
total 128
drwxr-xr-x 2 peter users 4096 Jul 5 21:03 Desktop
drwxr-xr-x 6 peter users 4096 Jul 5 17:37 Documents
drwxr-xr-x 2 peter users 4096 Jul 5 13:45 Downloads
drwxr-xr-x 2 peter users 4096 Jun 24 03:36 Movies
drwxr-xr-x 2 peter users 4096 Jun 24 03:38 Music
drwxr-xr-x 2 peter users 4096 Jun 26 00:09 Pictures
-rw-r--r-- 1 peter users 354 Jul 6 17:15 chmodtest
Apa artinya kolom
Kolom pertama adalah jenis setiap file:
-
menunjukkan file normal.
d
menunjukkan direktori, yaitu folder yang berisi file atau folder lain.
p
menunjukkan pipa bernama (alias FIFO).
l
menunjukkan tautan simbolik.
Surat-surat setelah itu adalah izin, kolom pertama ini adalah yang paling menarik bagi kami. Yang kedua adalah berapa banyak tautan yang ada dalam suatu file, kita dapat mengabaikannya dengan aman. Kolom ketiga memiliki dua nilai / nama: Yang pertama (dalam contoh saya 'peter') adalah nama pengguna yang memiliki file. Nilai kedua ('pengguna' dalam contoh) adalah grup yang menjadi pemiliknya (Baca lebih lanjut tentang grup).
Kolom berikutnya adalah ukuran file atau direktori dalam byte dan informasi setelah itu adalah tanggal dan waktu file atau direktori terakhir dimodifikasi, dan tentu saja nama file atau direktori.
Apa yang dimaksud dengan izin
Tiga huruf pertama, setelah yang pertama -
atau d
, adalah izin yang dimiliki pemilik. Tiga huruf berikutnya adalah izin yang berlaku untuk grup. Tiga huruf terakhir adalah izin yang berlaku untuk semua orang.
Setiap set terdiri dari tiga huruf terdiri dari r
w
dan x
. r
selalu di posisi pertama, w
selalu di posisi kedua, dan x
selalu di posisi ketiga. r
adalah izin baca, w
adalah izin tulis, dan x
merupakan izin eksekusi. Jika ada tanda hubung ( -
) di tempat salah satu dari surat-surat ini itu berarti izin tidak diberikan, dan jika surat itu hadir maka itu diberikan.
Folder
Dalam kasus folder bit mode dapat diartikan sebagai berikut:
r
(Baca) singkatan dari kemampuan untuk membaca daftar isi direktori yang diberikan,
w
(write) adalah kemampuan untuk menulis daftar isi direktori yang diberikan (membuat file baru, folder; mengganti nama, menghapus file yang ada, folder) jika dan hanya jika bit eksekusi diatur. Kalau tidak, izin ini tidak ada artinya.
x
(Eksekusi) singkatan dari kemampuan untuk memasuki direktori yang diberikan dengan perintah cd dan mengakses file, folder di direktori itu.
Mengubah izin menggunakan perintah chmod
chmod
adalah perintah di Linux dan sistem operasi mirip Unix lainnya. Ini memungkinkan Anda untuk mengubah izin (atau mode akses) file atau direktori.
Anda dapat mengubah izin dengan dua cara berbeda: - Berbasis teks - Berbasis chmod
nomorchmod
Metode teks
Untuk mengubah izin-atau mode akses file, kami menggunakan perintah chmod di terminal. Di bawah ini adalah struktur umum perintah:
chmod who=permissions filename
Di mana Siapa saja dari berbagai surat, dan masing-masing menandakan siapa Anda akan memberikan izin untuk. Mereka adalah sebagai berikut:
u - The user that owns the file.
g - The group the file belongs to.
o - The other users i.e. everyone else.
a - all of the above - use this instead of having to type ugo.
Hak akses yang sama seperti yang sudah dibahas ( r
, w
, dan x
).
Perintah chmod memungkinkan kita menambah dan mengurangi izin dari set yang ada menggunakan + atau - alih-alih =. Hal ini berbeda dengan perintah di atas, yang pada dasarnya menulis ulang izin (yaitu untuk mengubah izin dari r--
ke rw-
, Anda masih perlu menyertakan r
serta w
setelah =
di chmod
perintah. Jika Anda melewatkan keluar r
, itu akan menghilangkan r
izin sebagai mereka sedang ditulis ulang dengan tanda =. Menggunakan + dan - hindari ini dengan menambahkan atau menghapus set izin saat ini).
Metode angka
chmod
juga dapat mengatur izin menggunakan angka.
Menggunakan angka adalah metode lain yang memungkinkan Anda untuk mengedit izin untuk ketiga pemilik, grup, dan lainnya secara bersamaan. Struktur dasar kode ini adalah ini:
chmod xxx file/directory
Di mana xxx adalah angka 3 digit di mana setiap digit dapat berupa apa saja dari 1 hingga 7. Digit pertama berlaku untuk izin untuk pemilik, digit kedua berlaku untuk izin untuk grup, dan digit ketiga berlaku untuk izin untuk semua lainnya.
Dalam notasi angka ini, nilai r, w, dan x memiliki nilai angka sendiri:
r=4
w=2
x=1
Untuk menghasilkan angka tiga digit, Anda perlu mempertimbangkan izin apa yang Anda inginkan untuk dimiliki oleh pemilik, grup, dan pengguna, lalu total nilainya. Sebagai contoh, katakanlah saya ingin memberikan izin kepada pemilik direktori baca-tulis dan eksekusi, dan saya ingin mengelompokkan dan semua orang untuk baru saja membaca dan mengeksekusi izin. Saya akan datang dengan nilai numerik seperti:
Owner: rwx = 4+2+1=7
Group: r-x = 4+0+1=5 (or just 4+1=5)
Other: r-x = 4+0+1=5 (or just 4+1=5)
Final number = 755
$ chmod 755 filename
Ini sama dengan menggunakan yang berikut ini:
chmod u=rwx filename
chmod go=rx filename
Sebagian besar folder / direktori diatur ke 755 untuk memungkinkan membaca dan menulis dan mengeksekusi kepada pemilik, tetapi menolak menulis kepada semua orang, dan file biasanya 644 untuk memungkinkan membaca dan menulis untuk pemilik tetapi hanya membaca untuk semua orang, merujuk ke yang terakhir perhatikan kurangnya izin x dengan file yang tidak dapat dieksekusi - ini adalah kesepakatan yang sama di sini.