Como editar o arquivo somente leitura em / etc? [duplicado]

12

Sou um novo utilizador, por isso ainda não tenho a certeza do meu caminho no sistema. Eu quero mudar o nome do meu computador, então eu tentei editar o nome em /etc/hostname , mas é um arquivo somente para leitura. Adicionar o caractere ! não ajudou. Estou usando vim para editar o arquivo.

    
por WardenMorgan 17.12.2014 / 02:39

6 respostas

13

Alterar as configurações do sistema requer permissões de superusuário. De um terminal, faça

sudo <editor> <filename>

onde poderia ser vim ou nano ou qualquer outro comando do editor, e é o que você precisa editar.

Você também pode usar gksudo gedit <filename> .

Em ambos os casos, você será solicitado a digitar a senha de um usuário com permissões de superusuário - em uma instalação normal do Ubuntu, este seria o primeiro usuário criado durante a instalação.

    
por tagMacher 17.12.2014 / 02:47
7

Se você estiver editando um arquivo sem sudo e precisar sudo para salvar, basta usar este comando vim:

:w !sudo tee %

Crédito para Dr Beco . Note que o vim irá notar a mudança no arquivo e perguntará se você deseja (L) oad as mudanças, pressione L .

    
por NonlinearFruit 01.09.2016 / 17:21
5

Resposta muito curta:

Você pode modificar um arquivo (mesmo que seja somente leitura) se você possuir ele.

Resposta curta:

Mesmo que o usuário com o qual você fez login (neste caso, navid ) tenha privilégios administrativos, você não poderá modificar /etc/hostname , porque o usuário root é o proprietário desse arquivo. Conseqüentemente, você deve efetuar login como usuário root.

Resposta longa

Supondo que você queira alterar o nome do seu computador de navid-Satellite-C50-D para navid-Satellite-C50-E , aqui estão as etapas que você deve seguir:

  1. Faça login como usuário root:

    navid@navid-Satellite-C50-D:~$ sudo su -
    
  2. Abra o nome do host:

    root@navid-Satellite-C50-D:~# vi /etc/hostname
    
  3. Você verá navid-Satellite-C50-D . Pressione i para ir para o modo de inserção e depois mude para navid-Satellite-C50-E . Em seguida, pressione Esc + : + w + q + Insira para salvar e sair .

  4. Abrir hosts:

    root@navid-Satellite-C50-D:~# vi /etc/hosts
    

    As duas primeiras linhas são assim:

    127.0.0.1       localhost
    127.0.1.1       navid-Satellite-C50-D
    
  5. Da mesma forma que você fez na etapa 3, altere o nome do computador de navid-Satellite-C50-D para navid-Satellite-C50-E . Em seguida, salve e saia.

  6. Saia do usuário root:

    root@navid-Satellite-C50-D:~# exit
    
  7. Salve todo o seu trabalho não salvo e reinicie o computador:

    navid@navid-Satellite-C50-D:~$ reboot
    
  8. Abra o seu terminal e você verá que o nome do seu computador foi alterado com sucesso! : -)

    navid@navid-Satellite-C50-E:~$ 
    

Observação: Embora você possa conseguir o que deseja pulando as etapas 4 e 5, é altamente recomendável fazer isso também, para evitar possíveis erros no futuro.

Veja também:

por Navid Vafaei 07.01.2017 / 20:06
0
sudo -H gedit <path to file>

por exemplo:

sudo -H gedit /etc/environment

ou %código% Ctrl + X e Ctrl + Y e pressione Enter (para nano)

    
por ArUn 10.03.2016 / 07:55
-1

Você pode não ter acesso ao arquivo para alterá-lo.

Para obter acesso, você precisa ter privilégios de superusuário e isso é sudo .

Abra o terminal, digite:

sudo -H gedit "your file name "

Se você usar qualquer outro tipo de editor de texto em

    
por karthikeya 04.03.2016 / 02:55
-3

Por padrão, você tem permissão para hospedar arquivos apenas para o usuário root, conforme mostrado abaixo:

-rw-r--r-- 1 root root 252 Dec 16 08:40 /etc/hosts

Portanto, você tem que usar o sudo para editá-lo, ou então você pode usar o comando abaixo para se tornar root

sudo su -

no entanto, isso não é recomendado para todos.

mais seguro e recomendado que você use abaixo o comando para editar o arquivo

  

sudo vim / etc / hosts

em seguida, pressione " Esc " no teclado e digite ": w! " para gravar as alterações no arquivo de hosts e, em seguida, digite ": q "or" : q! ", isso deve fazer o truque para você.

    
por Hrish 22.12.2014 / 05:01