Não é possível renomear um diretório que possuo

5

Eu tenho um diretório com uma grande carga de subdiretórios. Eu possuo todos eles, e as permissões são todas 777.

pascal@azazel /box $ ls -al
total 147872
drwxr-xr-x 293 root   root      12288 aoû 22 19:44 .
drwxr-xr-x  25 root   root       4096 jun 28 18:49 ..
drwxrwxrwx   7 pascal pascal     4096 aoû  4  2010 131082
[...]

Eu quero renomear os diretórios:

pascal@azazel /box $ mv 131073 NewName
mv: impossible de déplacer « 131073 » vers « NewName »: Permission non accordée

A mensagem está em francês, basicamente dizia que eu não tenho permissão para renomear (mover) o diretório.

O que está acontecendo?

    
por Johnny5 23.08.2012 / 01:52

1 resposta

10

Renomear um arquivo (seja qual for seu tipo, incluindo diretórios) significa alterar seu nome no diretório em que está localizado. De fato, renomear e mover dentro do sistema de arquivos é a mesma operação; o arquivo é separado de seu nome antigo e anexado ao seu novo nome, o que requer a modificação do diretório de origem e de destino (para renomear dentro de um diretório, os diretórios de origem e de destino são os mesmos). O resultado é que você precisa de permissão de escrita no diretório que contém, /box em seu exemplo.

Estas são exatamente as mesmas permissões que você precisa para copiar o arquivo e, a propósito, remover o original.

    
por 23.08.2012 / 01:57