Can somebody specify where this folder should exist?

I created it in the directory containing the vendor directory, in the files directory, outside of the files and in the site root directory, but I keep getting this error message.

Writable (public download method)
The directory ../private is not writable. An automated attempt to create this directory failed, possibly due to a permissions problem. To proceed with the installation, either create the directory and modify its permissions manually or ensure that the installer has the permissions to create it automatically. For more information, see INSTALL.txt or the online handbook.

  • I answered this question with facts and documentation. This question as written does not provide enough detail for a better answer.
    – cilefen
    Nov 22, 2023 at 15:54
  • @cilefen well it is not me who created error messages for Drupal installation, address your frustration to them. I wasn't able to google its solution anywhere
    – mevsme
    Nov 22, 2023 at 15:56
  • The message you cited above leads to more documentation although you didn't mention that you read that documentation.
    – cilefen
    Nov 22, 2023 at 16:09
  • Sorry I wasn't going to read the entire project documentation just to install and try something lmao. On top of that this cited error doesn't google by any means that's why I created this question, to save some time for people who don't wanna waste 2 hours for reading the documentation. Too pity you hurried up to give it minuses, it's def good for the community. Let the read more the docs lol
    – mevsme
    Nov 22, 2023 at 16:33
  • It's open source software. If you don't like something about it, contribute. Complaining benefits no one.
    – cilefen
    Nov 22, 2023 at 18:36

1 Answer 1


The private files directory is a standard Drupal setup task, and is well-documented. Below is its description in default.settings.php. It is in settings.php where you configure this directory. Not that the directory "must be absolute", meaning, it must start with a / on Linux filesystems.

"Writable" means that the directory's permissions must be such that Drupal must be able to write files into the directory you specify.

 * Private file path:
 * A local file system path where private files will be stored. This directory
 * must be absolute, outside of the Drupal installation directory and not
 * accessible over the web.
 * Note: Caches need to be cleared when this value is changed to make the
 * private:// stream wrapper available to the system.
 * See https://www.drupal.org/documentation/modules/file for more information
 * about securing private files.
# $settings['file_private_path'] = '';
  • What is settings.php? I installed Drupal via command line according to this tutorial: drupal.org/project/commerce_kickstart
    – mevsme
    Nov 22, 2023 at 15:59
  • Commerce Kickstart is not a tutorial, but a distribution. Installing Drupal 9 following what reported in that project page would not help much.
    – apaderno
    Nov 22, 2023 at 22:52
  • @apaderno composer create-project -s dev centarro/commerce-kickstart-project kickstart; cd kickstart; composer require drupal/commerce_demo:^3.0 - to enter 3 commands in the terminal doesn't look like a tutorial to you? Well, it does look like an easy guide to me. It's a pity that the installation didn't go well. I guess it is because you can not add empty folders to git and developers forgot about the private folder.
    – mevsme
    Nov 23, 2023 at 1:11
  • @mevsme A project page can give instructions on how to install a project, but it is still a project page, not a tutorial. Also, they do not need to explain the private folder, since the private folder is eventually required by Drupal core, not by a distribution.
    – apaderno
    Nov 23, 2023 at 8:16

Not the answer you're looking for? Browse other questions tagged or ask your own question.