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

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

: wq

Ocorreu um erro.

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

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

digite descrição da imagem aqui

Resposta

Verifique se o / usr / lib64 / sas12 o diretório 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 

Seu vim comando deve funcionar conforme o esperado.

Comentários

  • Obrigado. Na verdade, eu estava fazendo um vi para um arquivo dentro de uma pasta que não existia. Como: vi ~/bin/backup.

Resposta

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

Resposta

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 

Comentários

  • Isso resolveu meu problema, thx

Resposta

Isso pode acontecer se houver um arquivo de troca no mesmo local que possa definir um bloqueio no arquivo para edição.

exemplo, procure o arquivo

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

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

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *