Por que o root não pode abrir o arquivo para escrever?

2
[root@localhost ~]# vim /usr/lib64/sas12/smtpd.conf    
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
log_level:3

: wq

Ocorre um erro.

"/usr/lib64/sas12/smtpd.conf" E212: Can't open file for writing.  

Por que o root não pode abrir o arquivo para gravação?

    
por it_is_a_literature 29.10.2017 / 12:56

4 respostas

2

Verifique se o diretório / usr / lib64 / sas12 já existe:

root@host:~# ls /usr/lib64/sas12

Se não for o caso, você deve criar o diretório antes de tentar criar o arquivo:

root@host:~# mkdir -p /usr/lib64/sas12
root@host:~# vim /usr/lib64/sas12/smtpd.conf

O comando vim agora deve funcionar como esperado.

    
por 29.10.2017 / 13:38
0

O sistema de arquivos é montado como somente leitura ou não é um problema de permissão root , mas um recurso vim . Use um editor diferente ou altere as permissões de arquivo (por exemplo, crie root o proprietário do arquivo), edite o arquivo e altere-o novamente.

    
por 29.10.2017 / 13:09
0

Isso pode acontecer se houver um arquivo de troca no mesmo local, o que pode bloquear o arquivo para edição.

exemplo, por favor, procure o arquivo

/usr/lib64/sas12/.smtpd.conf.swp

Se este arquivo existir, você não poderá editar o arquivo. Tente removê-lo e, em seguida, editá-lo deve funcionar.

    
por 02.07.2018 / 11:06
0

você pode obter este erro quando houver um atributo "+ a" definido em um arquivo. o comando chattr permitirá, apenas, anexar, mas não excluir o arquivo existente.

server123:/tmp # chattr +a manish
server123:/tmp # lsattr manish
-----a---------- manish
    
por 27.09.2018 / 14:54