Por que executar permisiões junto com as permissões de gravação necessárias para criar o arquivo em c (Linux)?

1

Eu estou tentando criar um arquivo do meu código-fonte c no linux. Eu estou usando o comando dd para ler de um arquivo e escrevendo em um arquivo, criando lá. Se eu não tiver permissões de execução (tenho permissões de gravação) para o diretório de destino (onde o arquivo será criado), não é possível criar o arquivo. Se eu tiver permissões de gravação e execução, é possível criar um arquivo. Qual é a razão para isto?

    
por Chinna 05.12.2013 / 07:41

2 respostas

5

Quando definido, os atributos dos modos r, w e x têm o seguinte efeito nos arquivos e diretórios:

  • r Atributo (permissão de leitura):

Arquivos: permite que um arquivo seja aberto e leia .

Diretórios: Permite que o conteúdo de um diretório seja listado se o atributo execute também estiver definido.

  • w Atributo (permissão de gravação):

Arquivos: Permite que um arquivo seja gravado ou truncado, no entanto, esse atributo não permite que os arquivos sejam renomeados ou excluídos . A capacidade de excluir ou renomear arquivos é determinada por atributos de diretório .

Diretórios: Permite que arquivos dentro de um diretório sejam criados, excluídos e renomeados se o atributo de execução também for definido .

  • x Atributo (permissão de execução):

Arquivos: Permite que um arquivo seja tratado como um programa e executado. Arquivos de programa escritos em linguagens de script também devem ser definidos como legíveis para serem executados .

Diretórios: permite que um diretório seja inserido , por exemplo, diretório cd.

Referência: a linha de comando do Linux® William E. Shotts, Jr.

Eu recomendaria ler este livro ou a versão em pdf que você pode baixá-lo neste link: link

    
por 05.12.2013 / 09:22
0

O bit de execução em um diretório concede a você a possibilidade de inserir / trasverse. Portanto, é um pré-requisito para criar um arquivo (caso contrário, você pode inseri-lo) no seu caso.

    
por 05.12.2013 / 08:20