
“Permission denied” ialah salah satu mesej yang membuat orang hilang sabar. Jalan pintas yang kerap muncul dalam carian ialah chmod 777. Memang ia boleh membuat ralat hilang, tetapi ia juga membenarkan sesiapa pada sistem membaca, menulis dan menjalankan fail itu. Untuk folder muat naik atau fail konfigurasi, itu masalah baharu yang lebih besar.
Baca dahulu siapa pemiliknya
Jalankan ls -l nama-fail. Huruf di awal output menunjukkan hak baca (r), tulis (w) dan jalan (x) untuk pemilik, kumpulan dan pengguna lain. Lihat juga dua nama selepas itu: pemilik fail dan kumpulannya. Jika aplikasi web berjalan sebagai pengguna yang berbeza, masalah mungkin pada pemilikan, bukan pada semua hak akses.
id menunjukkan kumpulan pengguna semasa. Untuk folder, ingat bahawa bit x membenarkan kita melintasi folder tersebut; tanpa x, fail di dalamnya mungkin tidak boleh dicapai walaupun fail itu sendiri boleh dibaca.
Beri akses yang diperlukan sahaja
Fail biasa selalunya tidak perlu menjadi fail boleh jalan. Jika hanya pemilik patut menulis, tetapan seperti chmod 644 fail.txt mungkin sesuai; untuk folder biasa, chmod 755 nama-folder kerap digunakan. Ini contoh, bukan nombor ajaib untuk semua sistem. Kunci SSH peribadi memerlukan hak yang jauh lebih ketat.
Jika pemilik memang salah, semak arahan chown dengan teliti sebelum menggunakannya. Jangan jalankan perubahan rekursif pada seluruh projek hanya kerana satu folder bermasalah.
Peraturan mudah: kenal pasti proses yang memerlukan akses, tentukan jenis aksesnya, kemudian ubah bahagian itu sahaja. Ralat hilang dan pintu sistem masih terkawal.