Varför kan root ' inte öppna filen för skrivning?

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

: wq

Ett fel inträffar.

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

Varför kan rot inte öppna filen för skrivning?

enter bildbeskrivning här

Svar

Kontrollera att / usr / lib64 / sas12 -katalog finns redan:

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

Om så inte är fallet måste du skapa katalogen innan du försöker skapa filen:

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

Du vim -kommandot ska nu fungera som förväntat.

Kommentarer

  • Tack. Jag gjorde faktiskt en vi för en fil i en mapp som inte fanns. Som: vi ~/bin/backup.
  • Svar

    Antingen är filsystemet monterat skrivskyddat eller så är det inte ett root behörighetsproblem men en vim -funktion. Använd en annan redigerare eller ändra filbehörigheterna (t.ex. skapa root filägaren), redigera filen och ändra tillbaka.

    Svar

    du kan få det här felet när det är attributet ”+ a” i en fil. kommandot chattr tillåter endast att lägga till, men inte ta bort den befintliga filen.

    server123:/tmp # chattr +a manish server123:/tmp # lsattr manish -----a---------- manish 

    Kommentarer

    • Detta löste mitt problem, thx

    Svar

    Detta kan hända om det också finns en swap-fil på samma plats som kan sätta ett lås på filen för redigering.

    exempel, leta efter filen

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

    Om den här filen finns kan du inte redigera filen. Försök ta bort den och redigera den ska fungera.

    Lämna ett svar

    Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *