Как я могу рекурсивно изменять права доступа к файлам и каталогам?

Просто добавьте -R возможность рекурсивного изменения прав доступа к файлам. Например, рекурсивно добавьте разрешения на чтение и запись для владельца и группы на foldername:

chmod -R ug+rw foldername

Разрешения будут такими, как 664 или 775.

Установка разрешений на 777 - это крайне обескуражен. Вы получаете ошибки либо в Apache, либо в вашем редакторе относительно разрешений, потому что apache работает под другим пользователем (www-data), чем ты.

Если вы хотите написать на /var/www, добавьте себя в www-data сгруппируйте и установите соответствующие разрешения umask+.

  • Добавьте себя в www-data группа: sudo adduser $USER www-data
  • Измените владельца файлов в /var/www: sudo chown -R www-data:www-data /var/www
  • Измените umask, чтобы вновь созданные файлы Apache также предоставляли группе права на запись. Добавь umask 007 к /etc/apache2/envvars.
  • Предоставьте себя (технически, группе www-data) разрешения на запись: sudo chmod -R g+w /var/www.