Obtendo “Permission denied” mesmo quando usando o comando sudo [duplicate]

6

Estou tentando adicionar um arquivo à minha pasta /etc/apt/sources.list.d e, por algum motivo, apesar de usar o sudo, ele ainda diz permissão negada. Aqui está o código que estou tentando executar.

$ sudo cat >> /etc/apt/sources.list

Eu também tentei simplesmente usar o gedit, mas isso também não funciona.

    
por Steven Brailsford 28.09.2016 / 16:18

1 resposta

15

Você está executando o comando cat como root, mas o redirecionamento de saída ocorre no shell atual que é executado como sua conta de usuário normal.

Você tem pelo menos três opções para atingir sua meta de adicionar linhas às suas apt sources:

  • Executando o comando inteiro, incluindo o redirecionamento de saída em um shell de raiz Bash separado:

    sudo bash -c 'cat >> /etc/apt/sources.list'
    
  • Usando o comando tee que copia a saída para um arquivo ( -a opção para anexar ao invés de sobrescrever arquivos existentes) e executando isso como root:

    cat | sudo tee -a /etc/apt/sources.list
    
  • Usando um aplicativo editor de terminal como nano como root para modificar o arquivo:

    sudo nano /etc/apt/sources.list
    

No entanto, é recomendável deixar seu arquivo /etc/apt/sources.list como está e adicionar outras fontes criando novos arquivos *.list dentro de /etc/apt/sources.list.d/ .

    
por Byte Commander 28.09.2016 / 16:26