Sim, eles são importantes. Para criar um diretório, você precisa poder gravar em seu diretório pai. Criar um diretório é como criar um arquivo (afinal de contas, tudo é um arquivo ), portanto, é necessário ter acesso de gravação aos pais. . Além disso, você precisa ser capaz de acessar o diretório pai, o que significa que você precisa executar o acesso a todos os diretórios na árvore:
$ sudo tree -pgu
.
└── [drwxr-xr-x terdon terdon] dir1
└── [drwx------ bob bob ] dir2
└── [drwxr-xr-x terdon terdon] dir3
No exemplo acima, dir2 é de propriedade de bob . Isso significa que não posso cd , e não posso cd em seu subdiretório dir2 :
$ cd dir1/dir2/
bash: cd: dir1/dir2/: Permission denied
$ cd dir1/dir2/dir3
bash: cd: dir1/dir2/dir3: Permission denied
Se eu der acesso de execução a dir2 , poderei migrar para dir2 e dir2/dir3 , mas ainda não terei o direito de criar arquivos / diretórios em dir2 :
$ sudo tree -pgu
.
└── [drwxr-xr-x terdon terdon] dir1
└── [drwx--x--x bob bob ] dir2
└── [drwxr-xr-x terdon terdon] dir3
$ cd dir1/dir2/
$ ls
ls: cannot open directory '.': Permission denied
$ touch file
touch: cannot touch 'file': Permission denied
Como você pode ver acima, embora eu possa ir para o diretório, não posso listar seu conteúdo porque não tenho acesso de leitura a ele e não consigo criar nada lá porque não tenho acesso de gravação .
Assim, para poder criar um novo arquivo ou diretório dentro de um diretório, você precisa:
-
Execute permissões em todos os diretórios pais de seu diretório de destino.
-
Execute e grave permissões para o diretório de destino.