Saya punya file dengan 644 ( -rw-r--r--
) dan ingin mengubahnya ke 664 ( -rw-rw-r--
), setelah menjalankan:
sudo chmod -664 my_file
izin file ditetapkan ke 000 ( ----------
).
Mencoba mengubah izin untuk sesuatu yang berbeda dari 000 tampaknya tidak berfungsi. Apa yang kulewatkan di sini?
command-line
permissions
chmod
illgoforit
sumber
sumber
-
644 di depan? Cobasudo chmod 644 my_file
.-644
akan menghapus hak.Jawaban:
Anda menggunakan
-664
, gunakan saja664
sebagai gantinya. Dan tidak pernah digunakansudo
saat Anda tidak perlu melakukannya. Jika itu file Anda, Anda tidak perlusudo
:Ketika Anda menjalankan
chmod
dengan-
sebelum mode, Anda akan menghapus mode itu. Lihatman chmod
(beri penekanan pada saya):Jumlahnya adalah:
Jadi file dengan
777
izin berarti setiap orang memiliki hak untuk melakukan ketiganya, karena 1 + 2 + 4 = 7, dan karenanya menetapkan izin ke 7 berarti mengizinkan membaca, menulis, dan mengeksekusi.Jika Anda mulai dengan file yang modenya adalah
777
:Dan sekarang jalankan
chmod -644
, Anda akan menghapus bit644
, dan berakhir dengan file yang modenya adalah133
:Itu karena Anda menghapus 6 (baca (4) + tulis (2)) dari izin pemilik, hanya menyisakan 1 (eksekusi) yang ditetapkan, dan 4 (baca) dari grup dan izin lainnya. Hasilnya adalah file dengan hanya menjalankan (1) izin untuk pemilik, dan menulis dan mengeksekusi (Anda tidak mengatur 4, meninggalkan 1 dan 3) izin untuk sisanya.
Karena file Anda mungkin memiliki izin default untuk file baru, jadi
644
, ketika Anda berlarichmod -644 my_file
, Anda menghapus semua bit izin yang ditetapkan dan mendapatkan file tanpa izin untuk siapa pun.sumber