Çözüldü Failed to open stream: Read-only file system hatası nasıl çözülür?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Katılım
5 Mart 2014
Mesajlar
5.701
Makaleler
12
Çözümler
44
Bu ve bunun altındaki tüm dizin ve dosyalar tam yetkiye sahip. Ek olarak user yerine "http" olsa da veya herhangi bir kullanıcı yazsak da aynı hatayı veriyor.
Kod:
drwxrwxrwx   4 user user  4096 Feb 26 16:24 nginx
Bu hatayı alıyorum.
Kod:
Warning: imagejpeg(User Content/1.jpg): Failed to open stream: Read-only file system in /usr/share/nginx/html/Main.php

Arch Linux kullanıyorum. PHP 8 mevcut. Windows'ta sorun yoktu, Linux'a geçince hata vermeye başladı. Yani kod sorunsuz.
 
Çözüm
Apache kurdum ve problem çözüldü. Dediğiniz gibi olabilir. Apache "/srv" dizini kullandığı için sanırım böyle bir sorun yaşanmadı.
Görünüşe göre php-fpm systemd servisi bir koruma olarak /usr, /boot, /etc dizinlerini read-only kullanıyor.

php-fpm.service kaynak kodu'nda burası dökümante edilmiş.

Projeni, ya da Main.php dosyanı başka bir dizinde kullanma şansın var mı? ~/example/main.php gibi deneyebilirsin belki.

Ya da, şuan bulunduğu yerden çalıştırmak istiyorsan,

/usr/lib/systemd/system/php-fpm.service

dosyasını düzenleyip, ProtectSystem=full satırını kaldırıp, systemctl restart php-fpm yaparak tekrar deneyebilirsin.

php yazmıyorum, bu ProtectSystem'i kaldırmanın ne gibi sonuçları olabilir tam emin değilim açıkçası. Denemeden önce kendin de bir göz atmanı tavsiye ederim.

Düzenleme: Şimdi farkettim, ProtectSystem'in tabi ki de php ile bir alakası yok, ama sorun hala bundan kaynaklanıyor. systemd dökümantasyonundan ne yaptığına göz atabilirsin
 

Technopat Haberler

Geri
Yukarı