HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
Blog

Cara Mengatasi Permission Denied di Linux: Penyebab, dan Solusi.

Error Permission Denied di Linux adalah salah satu masalah paling umum yang sering dialami pengguna, baik pemula maupun administrator server. Error ini biasanya muncul saat Anda mencoba mengakses, mengedit, mengeksekusi, atau menghapus file tanpa izin yang sesuai.

Jika tidak dipahami dengan benar, error ini bisa menghambat pekerjaan, terutama saat mengelola VPS, server produksi, atau website berbasis Linux. Artikel ini akan membahas secara lengkap penyebab, cara mengecek permission, serta langkah-langkah mengatasi Permission Denied dengan aman.

Apa Itu Permission Denied di Linux?

Permission Denied adalah pesan error yang muncul ketika sistem Linux menolak akses ke file atau direktori karena pengguna tidak memiliki izin yang sesuai.

Contoh error yang sering muncul: bash: ./script.sh: Permission denied atau cp: cannot open file: Permission denied

Linux menggunakan sistem hak akses (permission) untuk menjaga keamanan file dan sistem. Setiap file dan folder memiliki aturan siapa yang boleh membaca, menulis, atau menjalankan file tersebut.

Memahami Konsep Permission di Linux

Sebelum memperbaiki error, Anda perlu memahami konsep permission dasar.

Tiga Jenis Hak Akses

  1. Read (r) → Izin membaca file

  2. Write (w) → Izin mengubah atau menulis file

  3. Execute (x) → Izin menjalankan file

 Tiga Kategori User

  1. Owner → Pemilik file

  2. Group → Grup pemilik file

  3. Others → Pengguna lain

Jika Anda menjalankan perintah: ls -l

Contoh output: -rw-r–r– 1 root root 1024 Jan 20 10:00 file.txt

Artinya:

  • Owner memiliki read & write

  • Group hanya read

  • Others hanya read

Penyebab Umum Permission Denied

Beberapa penyebab paling umum:

  1. File tidak memiliki izin execute

  2. User bukan pemilik file

  3. Folder parent tidak memiliki izin akses

  4. File dimiliki oleh root

  5. SELinux membatasi akses

  6. Mount point tidak mengizinkan eksekusi

Cara Mengatasi Permission Denied

Berikut solusi berdasarkan penyebabnya.

1. Memberikan Permission dengan chmod

Perintah chmod digunakan untuk mengubah hak akses file.

Contoh memberi izin execute:

chmod +x script.sh

Memberikan akses penuh ke owner:

chmod 700 file.sh

Memberikan akses read/write untuk owner dan read untuk lainnya:

chmod 644 file.txt

Format angka permission:

  • 7 = read + write + execute

  • 6 = read + write

  • 5 = read + execute

  • 4 = read

  • 0 = tidak ada akses

2. Mengubah Kepemilikan File dengan chown

Jika file dimiliki root, user biasa tidak bisa mengaksesnya.

Cek kepemilikan: ls -l

Ubah owner: sudo chown username:username file.txt

Untuk folder beserta isinya: sudo chown -R username:username folder/

3. Menggunakan sudo

Jika error terjadi karena keterbatasan hak akses, gunakan sudo: sudo nano file.txt

Namun gunakan sudo dengan hati-hati agar tidak merusak sistem.

4. Memeriksa Permission Folder Induk

Kadang file sudah benar, tetapi folder tidak memiliki izin.

Cek dengan: ls -ld nama_folder

Jika perlu, ubah permission folder: chmod 755 nama_folder

5. Mengatasi Permission Denied Saat Menjalankan Script

Jika muncul: ./script.sh: Permission denied

Solusi:

  1. Tambahkan izin execute

    chmod +x script.sh
  2. Jalankan dengan bash:

    bash script.sh

6. Mengatasi Permission Denied di Web Server (Apache/Nginx)

Pada VPS hosting website, error ini sering terjadi pada:

  • Upload file

  • Folder storage

  • Folder cache

Solusi umum untuk WordPress:

sudo chown -R www-data:www-data /var/www/domain
sudo chmod -R 755 /var/www/domain

User www-data biasanya digunakan oleh Apache/Nginx di Ubuntu.

7. Mengatasi Permission Denied Karena SELinux

Pada CentOS atau RHEL, SELinux bisa memblokir akses meskipun permission sudah benar.

Cek status SELinux: sestatus

Untuk testing sementara: sudo setenforce 0

Jika masalah hilang, berarti SELinux yang membatasi.

8. Mengatasi Permission Denied pada Mount Disk

Jika file berada di partisi tertentu:

Cek mount option: mount | grep /dev/sdX

Jika ada opsi noexec, maka file tidak bisa dijalankan.

Edit file /etc/fstab dan hapus opsi noexec, lalu remount.

Studi Kasus Singkat

Kasus: Website tidak bisa upload file dan muncul Permission Denied.

Analisa: Folder uploads dimiliki root.

Solusi:

sudo chown -R www-data:www-data wp-content/uploads
sudo chmod -R 755 wp-content/uploads

Masalah selesai karena web server kini memiliki akses yang sesuai.

Best Practice Agar Tidak Terjadi Permission Denied

  1. Jangan gunakan chmod 777 sembarangan

  2. Gunakan prinsip least privilege

  3. Pastikan kepemilikan file sesuai user aplikasi

  4. Gunakan group management dengan benar

  5. Rutin audit permission pada server produksi

Perbedaan chmod 777 dan 755

  • 777 → Semua user bisa read, write, execute (tidak aman)

  • 755 → Owner penuh, others read & execute (lebih aman)

  • 644 → Cocok untuk file biasa

Hindari 777 kecuali benar-benar diperlukan.

Kesimpulan

Permission Denied di Linux terjadi karena sistem keamanan file membatasi akses berdasarkan user dan hak akses. Untuk mengatasinya, Anda perlu memahami struktur permission Linux, mengecek kepemilikan file, serta menggunakan perintah seperti chmod, chown, dan sudo dengan tepat. Masalah ini umum terjadi di VPS, server web, maupun lingkungan development.

Dengan pemahaman yang benar, Anda dapat mengatasinya dengan cepat tanpa merusak keamanan sistem. Mengelola permission dengan baik bukan hanya soal memperbaiki error, tetapi juga menjaga stabilitas dan keamanan server dalam jangka panjang.

5/5 - (1 vote)
Fitri Ana

Recent Posts

Apa Itu Bot? Pengertian, Jenis, Fungsi, dan Contohnya dalam Dunia Digital

Pengertian Bot Bot adalah singkatan dari robot, yaitu program atau aplikasi otomatis yang dirancang untuk…

39 minutes ago

Butuh Inspirasi? Ini 100 Caption Ucapan Ramadhan untuk Instagram & WhatsApp

Bulan suci Ramadhan merupakan waktu yang istimewa untuk menebar kebaikan sekaligus mempererat hubungan dengan sesama.…

20 hours ago

Kursor Laptop Error atau Tidak Jalan? Ini Penyebab dan Cara Mengatasinya

Kursor laptop yang tiba-tiba tidak bergerak tentu menjadi kendala yang cukup mengganggu, apalagi saat sedang…

20 hours ago

Apa Itu Virtual Host? Pengertian, Jenis, dan Cara Setting di Apache & Nginx

Virtual Host adalah salah satu konfigurasi penting dalam server web yang memungkinkan satu server melayani…

24 hours ago

Apa Itu Pay Per Post? Pengertian, Cara Kerja, dan Manfaatnya untuk Monetisasi Website

Pay Per Post adalah model monetisasi di mana pengunjung membayar untuk mengakses satu artikel tertentu…

1 day ago

Desain Baru Telegram di Android Bikin Pangling, Lebih Minimalis ala iOS

Pengguna Telegram di perangkat Android baru-baru ini dibuat terkejut dengan pembaruan tampilan aplikasi yang berubah…

1 day ago