Enquanto você diz que verificou as permissões, ainda é onde eu começaria, já que eu mesmo tive esse problema com frequência, e quase sempre foi um problema de permissões.
Conselho geral:
Antes de tudo, vá para admin / config / media / file-system e clique em "Salvar configuração". Isso fará com que o Drupal reavalie as permissões dos diretórios definidos e fornecerá mensagens de erro se houver algum problema.
Segundo: Suponho que você tenha um apache, ou www-data ou outros usuários, que possua o servidor da web, em oposição ao usuário php? Em um sistema Linux ou Mac, sudo para esse usuário. Tentar gravar um arquivo como o usuário certo , é a melhor maneira de garantir realmente que você tenha as permissões corretas. Vá para sites / domain.com / files / e chame "echo data> new_file; cat new_file;" em um terminal. Isso verificará se você realmente pode gravar no diretório de gravação. Faça o mesmo com o seu diretório tmp. Espero que alguém possa sugerir como executar as mesmas ações em um sistema como o Windows.
Terceiro: para descartar as permissões de diretório, aplique recursivamente 777 o diretório de arquivos. Você pode restaurar mais permissões sensatas posteriormente com
find . -type d -print0 | xargs -0 chmod 755
find . -type f -print0 | xargs -0 chmod 644
Quarto: verifique se o diretório tmp possui permissões permanentes.
Quinto: pode ser necessário iniciar a depuração do código se você já o tiver descoberto.