Waarom root Kan ' geen bestand openen om te schrijven?

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

: wq

Er treedt een fout op.

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

Waarom kan root “geen bestand openen om te schrijven?

enter afbeeldingbeschrijving hier

Antwoord

Controleer of de / usr / lib64 / sas12 directory bestaat al:

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

Als dit niet het geval is, moet u de directory maken voordat u probeert het bestand te maken:

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

Je vim commando zou nu moeten werken zoals verwacht.

Reacties

  • Bedankt. Ik deed eigenlijk een vi voor een bestand in een map die niet bestond. Zoals: vi ~/bin/backup.

Antwoord

Of het bestandssysteem is alleen-lezen aangekoppeld of dit is geen root toestemmingsprobleem maar een vim feature. Gebruik een andere editor of verander de bestandsrechten (bijv. maak root de bestandseigenaar), bewerk het bestand en verander ze terug.

Antwoord

je kunt deze foutmelding krijgen als er een “+ a” attribuut is ingesteld op een bestand. het commando chattr staat alleen het toevoegen, maar niet verwijderen van het bestaande bestand toe.

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

Reacties

  • Dit loste mijn probleem op, thx

Answer

Dit kan gebeuren als er zich ook een wisselbestand op dezelfde locatie bevindt dat het bestand kan vergrendelen om het te bewerken.

zoek bijvoorbeeld naar het bestand

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

Als dit bestand bestaat, kunt u het “niet bewerken. Probeer het te verwijderen en dan zou het moeten werken om het te bewerken.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *