Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Permissão negada.

Estou com uma dúvida, por que na hora de trabalhar extraindo uma informação de um arquivo, por exemplo o Services, me foi negada a extração do conteúdo para jogar em um arquivo txt criado. Seguinte erro : -bash: listagem.txt: permission denied. bem, eu então entrei com o usuário root e me foi dada a permissão de mexer com o arquivo. Por que ? Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Olá, Gabriel.

Tudo bem?

A mensagem de "Permission denied" que você está recebendo ao tentar redirecionar a saída do comando grep para o arquivo listagem.txt indica que o seu usuário não tem permissão de escrita no diretório atual ou no arquivo específico.

Vamos analisar alguns pontos:

  1. Permissões do Diretório:

    • Verifique as permissões do diretório onde você está tentando criar o arquivo listagem.txt. Use o comando ls -ld . para ver as permissões do diretório atual. Se você não tiver permissão de escrita no diretório, não conseguirá criar ou modificar arquivos nele.
  2. Permissões do Arquivo:

    • Se o arquivo listagem.txt já existir, verifique suas permissões com ls -l listagem.txt. Se o arquivo não permitir escrita para o seu usuário, você precisará alterar as permissões ou usar sudo para ter acesso root.
  3. Uso do sudo:

    • No seu caso, você conseguiu resolver o problema usando sudo. Isso indica que o problema realmente está relacionado às permissões. O comando sudo permite que você execute comandos com privilégios de superusuário, o que é útil quando você não tem as permissões necessárias.
  4. Alterando Permissões:

    • Se você quiser resolver isso sem usar sudo toda vez, pode alterar as permissões do diretório ou do arquivo. Por exemplo:
      sudo chmod u+w .
      sudo chmod u+w listagem.txt
      
    • Isso dará permissão de escrita ao seu usuário no diretório atual e no arquivo listagem.txt.
  5. Verificando o Dono do Arquivo/Diretório:

    • Verifique também quem é o dono do arquivo e do diretório com ls -l. Se o dono não for o seu usuário, você pode alterar o dono com sudo chown seu_usuario:seu_grupo listagem.txt ou sudo chown seu_usuario:seu_grupo . para o diretório.

Espero ter ajudado e bons estudos!

Oi, muito obrigado pela ajuda eu consegui fazer de uma maneira parecida, só que utilizei o comando: sudo chmod 777 /home/gabriel/labs/redirecionamento/services sudo chmod 777 /home/gabriel/labs/redirecionamento/listagem.txt

depois que me lembrei das regras numéricas de permissões ai consegui, mas da forma que você passou relamente é mais prático.

Atenciosamente,

Gabriel Portugal Saldanha