На fedore столкнулся с такой особенностью, при правах 777 на файл не хочет его изменять. Оказываеться надо пометить (labeled) ‘httpd_sys_rw_content_t’, файл, а лучше всю директорию.
Команда:
$ chcon -t httpd_sys_rw_content_t FILE
Я сделал так:
$ chcon -t httpd_sys_rw_content_t /var/www/html/