Скорее всего, потому что пользователь вашего веб-сервера должен писать в этот каталог. Есть несколько вещей, которые вы можете сделать. Прежде всего, вы можете очистить кеш как пользователь вашего веб-сервера (очень похоже на www-данные, но это зависит от программного обеспечения вашего сервера и от того, были ли внесены какие-либо изменения):
sudo -u www-data php bin/console cache:clear
Секундавариант (и я предпочитаю это) - использовать «списки контроля доступа», чтобы предоставить вам как пользователю CLI, так и пользователю вашего веб-сервера доступ. Сначала установите ACL, запустив sudo apt-get install acl
. Затем выполните следующее ( source ):
HTTPDUSER=$(ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1)
sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX var
sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX var
После этого вы можете очистить кеш со своим обычным пользователем CLI.