Anda menekan tombol Update pada sebuah plugin WordPress, proses berjalan sebentar, lalu berhenti dengan pesan Could not copy file atau The update cannot be installed because some files could not be copied. Plugin itu tidak ter-update, dan dalam kasus yang kurang beruntung, situs menampilkan halaman maintenance atau plugin tersebut setengah terpasang. Pesan ini menunjuk langsung ke penyebabnya: WordPress tidak bisa menulis file ke folder tujuannya.
Daftar Isi
- Jawaban Singkat
- Apa yang Terjadi Saat Update Plugin?
- Persiapan dan Backup
- Langkah 1: Periksa Ruang Disk dan Inode
- Langkah 2: Periksa Izin dan Kepemilikan File
- Langkah 3: Bersihkan Sisa Update yang Terputus
- Langkah 4: Coba Update Ulang Satu Plugin Saja
- Langkah 5: Pasang Manual Bila Perlu, dengan Cara Aman
- Verifikasi Hasil
- Troubleshooting Lanjutan
- FAQ
- Kesimpulan
- Referensi
Jawaban Singkat
Periksa tiga hal dalam urutan ini: ruang disk dan inode server, kepemilikan file (apakah file dimiliki pengguna web yang benar), dan izin file (patokan umum 644 untuk file dan 755 untuk direktori). Bila disk penuh atau inode habis, tidak ada perbaikan izin yang bisa membantu. Bila izin dan kepemilikan sudah benar tetapi update tetap gagal, hapus file .maintenance yang tertinggal bila ada, lalu coba update satu plugin itu saja. Jangan pernah menaikkan izin ke 777 untuk memaksa update berhasil.
Apa yang Terjadi Saat Update Plugin?
Proses update plugin WordPress berjalan dalam beberapa tahap: mengunduh paket dari sumber update, mengekstraknya ke folder sementara di wp-content/upgrade, menghapus atau menimpa folder plugin lama, lalu menyalin file baru ke tempatnya. Pesan Could not copy file muncul pada tahap penyalinan — WordPress sudah berhasil mengunduh dan mengekstrak, tetapi gagal menulis file ke folder plugin. Itu sebabnya pesan ini berbeda dengan Download failed (gagal di tahap unduh) dan berbeda pula dengan plugin yang berhasil ter-update tetapi merusak situs (gagal setelah aktivasi).
| Pesan atau gejala | Tahap yang gagal | Langkah pertama |
|---|---|---|
| Could not copy file | Penyalinan file baru | Periksa izin, kepemilikan, disk, dan inode |
| Could not remove old plugin | Penghapusan plugin lama | Periksa kepemilikan dan file yang terkunci |
| Briefly unavailable for scheduled maintenance | Update terputus, file .maintenance tertinggal | Pastikan updater berhenti, lalu hapus .maintenance |
Persiapan dan Backup
- Sebelum mengulang update apa pun, buat backup file dan database. Update yang setengah jalan adalah saat yang paling rawan untuk kehilangan data bila Anda langsung menimpa file secara manual.
- Catat pesan error persis, termasuk nama file yang disebut bila ada, dan nama plugin yang gagal. Detail itu menentukan folder mana yang harus diperiksa.
- Jangan menghapus folder plugin yang gagal sebelum backup dibuat, kecuali Anda sudah tahu plugin itu bisa dipasang ulang tanpa kehilangan pengaturan.
- Bila situs sedang menampilkan halaman maintenance, jangan panik dan jangan mengulang update berkali-kali; selesaikan dulu penyebab gagalnya.
Langkah 1: Periksa Ruang Disk dan Inode
Server yang kehabisan ruang atau inode akan gagal menulis file baru meskipun izinnya benar. Periksa keduanya:
df -h
df -i
Perintah pertama menunjukkan ruang disk, yang kedua inode — slot metadata file. Inode yang 100% penuh membuat penulisan file baru gagal walaupun disk masih longgar, sering karena sangat banyak file kecil (cache, log, backup lama). Bila penuh, bersihkan file yang aman dihapus, jangan menghapus file inti WordPress atau folder plugin aktif.
Langkah 2: Periksa Izin dan Kepemilikan File
Patokan umum adalah file 644 dan direktori 755, dengan file dimiliki pengguna sistem yang menjalankan situs. Dari direktori instalasi WordPress saja — bukan dari root server — periksa dulu keadaan saat ini:
ls -la wp-content/plugins/nama-plugin/
ls -ld wp-content/plugins wp-content/upgrade
Bila kepemilikan salah (misalnya file dimiliki root setelah disalin manual, sementara server web berjalan sebagai www-data), perbaiki kepemilikan dan izinnya:
sudo chown -R www-data:www-data /var/www/domainanda.com/wp-content/plugins/nama-plugin
sudo find /var/www/domainanda.com/wp-content/plugins/nama-plugin -type d -exec chmod 755 {} \;
sudo find /var/www/domainanda.com/wp-content/plugins/nama-plugin -type f -exec chmod 644 {} \;
Sesuaikan www-data dengan pengguna web di server Anda dan batasi perintah hanya pada folder plugin yang bermasalah. Jangan menjalankan perintah chmod atau chown massal di seluruh server atau di luar direktori WordPress, dan jangan pernah memakai 777: izin itu membuat file bisa ditulis siapa pun di server dan mengubah masalah update menjadi masalah keamanan.
Langkah 3: Bersihkan Sisa Update yang Terputus
Periksa apakah file .maintenance tertinggal di root WordPress dan apakah folder sementara di wp-content/upgrade masih berisi sisa ekstraksi yang terkunci:
ls -la /var/www/domainanda.com/.maintenance
ls -la /var/www/domainanda.com/wp-content/upgrade/
Bila updater sudah berhenti dan .maintenance masih ada, hapus file itu saja — bukan folder lain — lalu muat ulang situs. Bila folder plugin lama masih ada tetapi file barunya setengah tersalin, jangan menimpa secara membabi buta: nonaktifkan dulu plugin itu dari dashboard bila masih bisa diakses, atau lewat FTP bila dashboard tidak bisa dibuka, lalu coba update ulang dari kondisi yang bersih.
Langkah 4: Coba Update Ulang Satu Plugin Saja
Setelah disk, izin, dan sisa update dibersihkan, coba update satu plugin yang gagal itu saja, bukan semua plugin sekaligus. Bila satu plugin berhasil tetapi plugin lain tetap gagal, masalahnya spesifik pada plugin itu: periksa apakah paketnya dari sumber resmi, apakah versinya kompatibel dengan versi WordPress dan PHP Anda, dan apakah ada file di dalam folder plugin itu yang terkunci oleh proses lain. Bila semua plugin gagal dengan pesan yang sama, masalahnya ada di level server — kembali ke Langkah 1 dan 2, atau minta penyedia hosting memeriksa kepemilikan dan batasan filesystem.
Langkah 5: Pasang Manual Bila Perlu, dengan Cara Aman
Bila update lewat dashboard tetap gagal setelah penyebab server diperbaiki, pasang manual sebagai jalan terakhir: unduh versi terbaru dari sumber resminya, nonaktifkan plugin lama (jangan uninstall bila ingin mempertahankan pengaturannya), unggah folder baru lewat FTP menimpa folder lama, lalu aktifkan kembali dan uji. Cara ini tidak memperbaiki server yang tidak bisa menulis, jadi lakukan hanya setelah Langkah 1 dan 2 dipastikan benar.
Verifikasi Hasil
Perbaikan berhasil bila plugin menampilkan versi terbaru di dashboard, situs tidak lagi menampilkan halaman maintenance, dan fungsi plugin itu bekerja normal pada satu pengujian nyata (misalnya formulir, tampilan, atau fitur yang memang disediakan plugin). Periksa juga bahwa tidak ada file lain yang ikut berubah izinnya di luar folder plugin yang bermasalah.
Troubleshooting Lanjutan
| Situasi | Langkah berikutnya |
|---|---|
| Update gagal lagi dengan file yang sama | Periksa file itu spesifik: terkunci, dimiliki pengguna lain, atau berada di filesystem read-only |
FAQ
Apakah chmod 777 akan memperbaiki Could not copy file?
Mungkin untuk sesaat, tetapi itu membuka file untuk ditulis semua pengguna di server. Gunakan 755/644 dan perbaiki kepemilikan sebagai gantinya.
Apakah saya harus menghapus plugin yang gagal update?
Tidak langsung. Nonaktifkan dulu bila perlu, dan jangan uninstall bila Anda ingin mempertahankan pengaturannya. Hapus hanya bila Anda sudah punya backup dan tahu plugin bisa dipasang ulang.
Kenapa hanya satu plugin yang gagal, padahal plugin lain berhasil?
Karena penyebabnya spesifik pada plugin itu: file terkunci, paket bermasalah, atau ketidakcocokan versi. Fokus ke folder plugin itu, bukan ke seluruh server.
Kapan harus menghubungi penyedia hosting?
Bila semua plugin gagal dengan pesan yang sama, izin dan kepemilikan sudah benar, atau Anda menemukan batasan filesystem yang tidak bisa diubah dari sisi pengguna.
Kesimpulan
Could not copy file saat update plugin adalah pesan yang jujur: WordPress tidak bisa menulis file ke tujuannya. Urutan perbaikannya adalah disk dan inode, kepemilikan dan izin yang benar, pembersihan sisa update yang terputus, lalu update ulang satu plugin. Lewati godaan chmod 777, batasi perintah perbaikan pada folder yang bermasalah, dan bila semua plugin gagal serentak, data disk, kepemilikan, dan pesan error persis adalah bekal terbaik untuk penyedia hosting.
Referensi
- Plesk — WordPress update fails: files could not be copied (inconsistent permissions): support.plesk.com — Could not copy files
- BlogVault — WordPress Plugin Update Failed? How to Fix It Safely: blogvault.net — Plugin update failed