Softaculous permission hatası alıyorsan genelde “permission denied”, “could not write file” ya da kurulum sırasında dosya oluşturulamıyor gibi hatalar görürsün. Kurulum, clone, backup veya restore işlemleri yarıda kesilir. Bu sorun çoğunlukla yanlış dosya izinleri, ownership (kullanıcı sahipliği) veya sunucu yapılandırmasından çıkar. Sorun bu. Aşağıdaki adımları uygulayarak düzeltebilirsin.
Sorun şu:
Softaculous işlem yapıyor ama dosya yazma izni olmadığı için hata veriyor.
Klasör veya dosya yetkileri yanlış olduğu için işlem tamamlanamıyor. Aşağıdaki adımları uygulayarak düzeltebilirsin.
Çözüm Adımları
1) public_html izinlerini komple düzelt (en kritik)
En yaygın sebep bu. Yanlış chmod veya ownership varsa Softaculous hiçbir işlem yapamaz.
Şuraya gir:
SSH
Şu komutu çalıştır:
find /home/USERNAME/public_html -type d -exec chmod 755 {} \;
find /home/USERNAME/public_html -type f -exec chmod 644 {} \;
chown -R USERNAME:USERNAME /home/USERNAME/public_html
(USERNAME yerine gerçek kullanıcıyı yaz)
Bu işlem:
-
klasörleri 755
-
dosyaları 644
-
sahipliği doğru kullanıcıya çeker
Ardından tekrar dene.
Olmadıysa alttaki adıma geç.
2) Softaculous sistem dizinlerini kontrol et
Sadece site değil, Softaculous kendi klasörüne de yazamazsa permission hatası verir.
Şuraya gir:
SSH
Şu komutu çalıştır:
ls -ld /var/softaculous
ls -ld /var/softaculous/*
Yetkileri düzelt:
chmod -R 755 /var/softaculous
chown -R root:root /var/softaculous
Eğer kullanıcı bazlı backup/clone kullanıyorsan:
ls -ld /home/USERNAME/softaculous_backups
Gerekirse:
chmod -R 755 /home/USERNAME/softaculous_backups
chown -R USERNAME:USERNAME /home/USERNAME/softaculous_backups
Ardından tekrar dene.
Olmadıysa alttaki adıma geç.
3) CageFS / CloudLinux kullanıyorsan kontrol et
CloudLinux varsa kullanıcı izole edilir ve izinler doğru olsa bile erişim kesilebilir.
Şuraya gir:
SSH
Şu komutu çalıştır:
cagefsctl --list-enabled
Kullanıcıyı yeniden mount et:
cagefsctl --remount USERNAME
Tüm sistemi yenilemek için:
cagefsctl --force-update
Ardından tekrar dene.
Olmadıysa alttaki adıma geç.
4) PHP handler ve suEXEC durumunu kontrol et
Eğer PHP yanlış handler ile çalışıyorsa dosyalar yanlış kullanıcıyla oluşur ve permission hatası çıkar.
Şuraya gir:
WHM → MultiPHP Manager
Kontrol et:
-
PHP handler: suPHP / PHP-FPM / LSAPI olmalı
-
DSO kullanıyorsan problem çıkar
SSH kontrol:
ps aux | grep php
PHP-FPM kullanıyorsan servis çalışıyor mu:
systemctl status php-fpm
Gerekirse restart:
systemctl restart php-fpm
systemctl restart httpd
Ardından tekrar dene.
Olmadıysa alttaki adıma geç.
5) Immutable (chattr) kilidi var mı kontrol et
Bazı dosyalar kilitli olabilir. Bu durumda izin doğru olsa bile yazılamaz.
Şuraya gir:
SSH
Şu komutu çalıştır:
lsattr -R /home/USERNAME/public_html
Eğer “i” (immutable) görüyorsan kaldır:
chattr -i -R /home/USERNAME/public_html
Bu çok kritik ama genelde gözden kaçar.
Sonra tekrar dene.
Olmadıysa alttaki adıma geç.
6) Disk quota ve kullanıcı limitlerini kontrol et
Kullanıcının limiti dolduysa permission hatası gibi davranır.
Şuraya gir:
WHM → List Accounts
Kontrol et:
-
Disk quota dolu mu
SSH:
quota -u USERNAME
Doluysa alan aç ya da limiti artır.
Ardından tekrar dene.
Olmadıysa alttaki adıma geç.
7) SELinux aktif mi kontrol et
SELinux aktifse bazı yazma işlemlerini sessizce engeller.
Şuraya gir:
SSH
Şu komutu çalıştır:
getenforce
Eğer “Enforcing” ise test için kapat:
setenforce 0
Kalıcı kapatma (gerekirse):
nano /etc/selinux/config
SELINUX=disabled yap
Sonra tekrar dene.
Olmadıysa alttaki adıma geç.
8) Log kayıtlarını kontrol et (en net sonuç burada)
Softaculous permission hatası sorununun gerçek sebebi burada çıkar.
Şuraya gir:
SSH
Şu komutu çalıştır:
tail -n 100 /usr/local/cpanel/logs/error_log
tail -n 100 /usr/local/cpanel/whostmgr/docroot/cgi/softaculous/error.log
tail -n 50 /home/USERNAME/public_html/error_log
Görebileceğin hatalar:
-
permission denied
-
operation not permitted
-
failed to write file
-
open_basedir restriction
Özellikle “open_basedir restriction” varsa PHP config’e bakman gerekir.
Log’daki hataya göre doğrudan müdahale et.
Verilerinizi Güvenceye Alın!
Sunucu felaketlerine karşı hazırlıklı olun. Sınırsız hesap destekli, anında teslim JetBackup lisansı ile verilerinizi otomatik yedekleyin.