Kalkulator chmod
Ubah izin berkas Unix antara oktal (755), huruf (rwxr-xr-x), ls -l, dan klausa chmod, dengan kisi kotak centang serta bit setuid, setgid, dan sticky.
Contoh kode
Salin contoh ini ke proyek Anda sendiri. Masing-masing hanya memakai pustaka standar bahasanya, jadi tidak ada yang perlu diinstal.
const mode = parseInt('755', 8)
const letters = [...'rwxrwxrwx'].map((letter, i) => (mode & (0o400 >> i) ? letter : '-'))
console.log(letters.join(''))Fungsinya
Mengubah izin berkas Unix antara oktal (755), huruf izin (rwxr-xr-x), baris ls -l, dan klausa chmod (u=rwx,g=rx,o=rx). Centang kisi dan setiap notasi ikut berubah, termasuk bit setuid, setgid, dan sticky.
Cara memakai
- Ketik mode dalam notasi apa pun, atau centang kotaknya.
- Baca dalam setiap notasi dan ubah salah satunya.
- Salin nilai hasil konversi, atau pilih jenis berkas untuk melihat baris
ls -lbagi direktori atau tautan.
Contoh
755 adalah rwxr-xr-x: pemilik boleh membaca, menulis, dan mengeksekusi, semua orang lain boleh membaca dan mengeksekusi. 644 adalah rw-r--r--, mode umum untuk berkas, dan 1777 adalah rwxrwxrwt, direktori bersama seperti /tmp.
Perlu diketahui
- Digit menjumlahkan baca 4, tulis 2, dan eksekusi 1 untuk pemilik, grup, dan semua orang lain. Digit keempat di depan menambahkan setuid 4, setgid 2, dan sticky 1.
- Dalam huruf, bit khusus menempati posisi eksekusi:
suntuk setuid dan setgid,tuntuk sticky.SatauTkapital berarti bit khusus diatur tanpa bit eksekusi. - Klausa seperti
u=rwx,g=rx,o=rxmenetapkan setiap kelas sepenuhnya, dan kelas yang tidak disebut klausa mana pun tidak punya izin. Bentuk relatif sepertiu+xtidak dibaca di sini, karena bergantung pada mode berkas saat ini.
Apa arti angka pada chmod?
Setiap digit menjumlahkan baca (4), tulis (2), dan eksekusi (1) untuk satu kelas: digit pertama untuk pemilik, kedua untuk grup, dan ketiga untuk semua orang lain. Jadi 755 berarti pemilik boleh membaca, menulis, dan mengeksekusi, sedangkan yang lain boleh membaca dan mengeksekusi. Digit keempat di depan menambahkan setuid (4), setgid (2), dan sticky (1).
Pertanyaan umum
Apa itu setuid, setgid, dan bit sticky?
Dengan setuid dan setgid, sebuah program berjalan dengan izin pemilik atau grupnya, bukan izin orang yang menjalankannya. Pada direktori, setgid membuat berkas baru mewarisi grup, dan bit sticky (seperti pada /tmp) hanya mengizinkan pemilik berkas menghapusnya. Dalam huruf, keduanya berupa s atau t di posisi eksekusi; S atau T kapital berarti bit eksekusi tidak diatur.
Mengapa 777 bukan ide yang baik?
Dengan 777 setiap pengguna di sistem dapat mengubah atau mengganti berkas itu. Beri pemilik apa yang dibutuhkan, dan grup atau lainnya hanya akses yang memang perlu: untuk skrip biasanya 755, untuk berkas pribadi 600.
Apakah alat ini mengirim masukan saya ke mana pun?
Tidak. Semuanya terjadi di browser Anda. Apa yang Anda ketik tidak pernah dikirim ke server kami.