Periksa izin sebelum memasukkan perintah ke skrip
File data, skrip yang akan dijalankan, dan direktori bersama tidak selalu memerlukan izin yang sama. Tentukan kebutuhan pemilik, grup file, dan pengguna lainnya secara terpisah. Hasil pilihan ditampilkan sebagai angka oktal dan rangkaian rwx.
Masukkan tiga atau empat digit oktal, atau tempel kolom izin dari ls -l. Input yang keliru mempertahankan pilihan valid terakhir dan menghentikan penyalinan perintah sampai diperbaiki. Isi path tujuan setelah memeriksa hasil.
Menghitung izin dengan 4, 2, dan 1
Dalam tiap kelas, baca bernilai 4, tulis 2, dan eksekusi 1. Jadi rwx adalah 7, r-x adalah 5, dan r-- adalah 4. Rangkaian rwxr-xr-- menjadi 754 dalam urutan pemilik, grup, lainnya; izin antarkelas tidak dijumlahkan.
Digit tambahan di depan menyimpan setuid 4, setgid 2, dan sticky 1. Mode 4755 menambahkan setuid pada 755. Mengaktifkan bit khusus tidak otomatis memberi izin eksekusi.
| Nilai oktal | rwx | Izin |
|---|---|---|
0 | --- | tanpa izin |
1 | --x | Eksekusi |
2 | -w- | Tulis |
3 | -wx | Tulis + Eksekusi |
4 | r-- | Baca |
5 | r-x | Baca + Eksekusi |
6 | rw- | Baca + Tulis |
7 | rwx | Baca + Tulis + Eksekusi |
Eksekusi direktori berarti pencarian atau penelusuran
Baca pada direktori mengizinkan daftar nama, eksekusi mengizinkan pencarian atau penelusuran path, dan tulis berkaitan dengan perubahan entri. Perubahan entri biasanya memerlukan pencarian juga. Direktori dengan 644 tidak memiliki bit pencarian.
Menghapus file terutama bergantung pada direktori induk dan pembatasan terkait, bukan hanya bit tulis file. ACL, opsi mount, dan kebijakan keamanan dapat memengaruhi hasil. Kalkulator tidak menguji akses efektif proses.
Perhatikan s/S, t/T dan bit direktori yang tetap ada
Huruf kecil menyatakan bit khusus bersama bit eksekusi yang sesuai; huruf besar menyatakan tidak adanya eksekusi itu. Pada direktori Linux, setgid digunakan untuk pewarisan grup, sedangkan sticky membatasi penghapusan dan penggantian nama entri. Efek pada executable bergantung pada aturan sistem.
GNU chmod dapat mempertahankan setuid/setgid direktori ketika diberi angka paling banyak empat digit. Contoh untuk menghapusnya secara eksplisit adalah chmod 00755 -- 'directory'. Kalkulator menerima nilai mode tiga atau empat digit, tanpa menyimulasikan keadaan file yang sudah ada.
Contoh mode untuk kebutuhan berbeda
| Nilai oktal | rwx | Rincian izin |
|---|---|---|
644 | rw-r--r-- | Pemilik boleh membaca dan menulis; grup dan lainnya hanya membaca, tanpa eksekusi. |
755 | rwxr-xr-x | Pemilik mendapat semua izin biasa; grup dan lainnya membaca serta mengeksekusi/mencari. |
600 | rw------- | Izin baca dan tulis biasa hanya untuk pemilik file. |
700 | rwx------ | Hanya pemilik yang boleh melihat daftar, mengubah, dan mencari dalam direktori. |
2775 | rwxrwsr-x | Izin tulis grup dengan setgid untuk pewarisan grup pada direktori Linux. |
1777 | rwxrwxrwt | Direktori bersama dengan sticky untuk membatasi hapus dan ganti nama. |
chmod 644 -- 'report.txt'
chmod 755 -- 'deploy.sh'
chmod 700 -- 'private-directory'Pertanyaan tentang chmod
Apa tambahan 755 dibanding 644?
755 menambahkan eksekusi pada ketiga kelas. Ini dapat dibutuhkan skrip atau pencarian direktori, tetapi file data tidak otomatis membutuhkan eksekusi.
Bolehkah menempel drwxr-xr-x?
Boleh. Awalan jenis yang dikenali diabaikan dan hasilnya 755. Jenis file tidak berubah. Hapus penanda ACL dan kolom daftar lainnya.
Apakah 777 menyelesaikan semua Permission denied?
Tidak. 777 memberi baca, tulis, dan eksekusi ke seluruh kelas, tetapi kontrol lain tetap bisa menolak akses. Periksa pemilik, kelas yang berlaku, dan direktori induk sebelum memperluas izin.
Apakah u+x bisa dimasukkan?
Ekspresi chmod relatif tidak diparsing. Gunakan oktal atau rwx. Untuk menambah satu bit saja, ekspresi relatif dalam perintah terpisah bisa lebih sesuai daripada mengganti semua izin biasa dengan angka.
Apakah alat mengubah file saya?
Tidak. Perhitungan berlangsung di browser dan hanya menyiapkan perintah untuk satu path literal, tanpa eksekusi atau rekursi. umask mengatur pembatasan saat objek dibuat dan bukan perhitungan ini.
