/etc/apt/sources.list” E212: Kan bestand niet openen om te schrijven

Ik probeer sources.list te bewerken met de vi-editor, maar ik krijg de volgende foutmelding bij het opslaan van het bestand:

/etc/apt/sources.list" E212: Can't open file for writing

Antwoord 1, autoriteit 100%

For some reason the file you are writing to cannot be created or overwritten.
The reason could be that you do not have permission to write in the directory
or the file name is not valid.

Vim heeft een ingebouwd helpsysteem. Ik heb zojuist geciteerd wat er staat op :h E212.

Misschien wil je het bestand als superuser bewerken als sudo vim FILE. Of als je je bestaande vim-sessie niet wilt verlaten (en nu de juiste sudo-rechten hebt), kun je het volgende doen:

:w !sudo tee % > /dev/null

Hiermee wordt het bestand opgeslagen.

HTH


Antwoord 2, autoriteit 9%

Dat overkomt mij altijd, ik open een rootbestand om te schrijven:

In plaats van al je wijzigingen te verliezen en opnieuw te openen met sudo. Bekijk deze demo over hoe u deze wijzigingen opslaat:

Eenmalige Setup-demo om een alleen-lezen bestand van root te maken voor een lagere gebruiker:

sudo touch temp.txt
sudo chown root:root temp.txt
sudo chmod 775 temp.txt
whoami
el

Open eerst het bestand als normale gebruiker:

vi temp.txt

Breng enkele wijzigingen aan in het bestand, het waarschuwt u dat het alleen-lezen is. Gebruik deze opdracht.

:w !chmod 777 %

Schrijf vervolgens het bestand:

:wq!

De machtigingen worden uitgebreid en het bestand wordt opgeslagen. Je hebt het uitroepteken nodig omdat je een rootbestand aan het bewerken bent als een mindere gebruiker.

Uitleg van wat dat commando doet:

De :w betekent schrijf het bestand. De knal betekent beginnen met interpreteren als shell. chmod betekent machtigingen wijzigen, 777 betekent overal volledige machtigingen. Het percentage betekent de huidige bestandsnaam.

Het past de wijziging toe. En hij vraagt of je opnieuw wilt laden. Druk op “O” voor “Ok”. Laad niet opnieuw of u raakt uw wijzigingen kwijt.


Antwoord 3, autoriteit 6%

Voor mij was er een vrij eenvoudige oplossing. Ik probeerde een bestand te bewerken/makenin een map die niet bestond. Omdat ik me al in de map bevond waarin ik probeerde een bestand te bewerken/aan te maken.

d.w.z. pwd folder/file

en was aan het typen

sudo vim folder/file

en het was duidelijk dat het naar de map in de map zocht en niet kon opslaan.


Antwoord 4, autoriteit 3%

Of misschien zit je op een alleen-lezen gemounte fs


Antwoord 5, autoriteit 2%

Ik verwees naar Zsolt in niveau 2, ik voer in:

:w !sudo tee % > /dev/null

en in mijn situatie kan ik het bestand nog steeds niet wijzigen, dus werd gevraagd om “!” toe te voegen. dus ik voer

. in

:q! 

dan werkt het


Antwoord 6

voor mij werkte het veranderen van het bestandssysteem van alleen-lezen voordat vim werd uitgevoerd:

bash-3.2# mount -o remount rw /

Antwoord 7

omdat de map niet bestaat.

kan :!mkdir -p /etc/apt/gebruiken om de directory te maken.

vervolgens :wq


Antwoord 8

gebruiker wijzigen in root

sodu su -

bladeren naar etc

vi sudoers

zoek naar rootgebruiker in de sectie gebruikersprivileges. je krijgt het als

root ALL=(ALL:ALL) ALL 

maak dezelfde invoer voor uw gebruikersnaam. als je gebruikersnaam ‘mijngebruiker’ is, voeg dan

. toe

myuser ALL=(ALL:ALL) ALL

het ziet eruit als

root ALL=(ALL:ALL) ALL 
myuser ALL=(ALL:ALL) ALL 

Bewaar het. Wijzig rootgebruiker naar uw gebruiker. Probeer nu hetzelfde waar je de sudoers-probleem kreeg


9

Probeer als root aan te sluiten en het bestand te bewerken. Dit werkt voor mij


10

Voeg uw opdrachten vooraf toe met sudo.

Bijvoorbeeld, in plaats van vim textfile.txt, Gebruikt sudo vim textfile.txt. Dit zal het probleem oplossen.


11

Ik kreeg deze fout toen ik git rmin een bestand in een map gebruikte.

Ik was in iets als ~ / gitrepo / code / newfeature

In Newfeature was er maar één bestand. Ik heb een git rmin dat bestand gedaan geprobeerd om een ​​nieuw bestand MyNewFile te maken met VI.

Ubuntu liet me zien als nog steeds in de newfeature-directory maar eigenlijk git rmhad de hele directory verwijderd.

Ik moest de VI verlaten, navigeer de ene map en recreëerde vervolgens de map Newfeature.


12

Ik kreeg deze foutmelding wanneer mijn directorypad onjuist is, zorg ervoor dat uw mapnamen en -pad correct zijn


13

Wijzig de toestemming voor de andere gebruiker
voor dat type
SETFACL -M U: Gebruikersnaam: RW FileName


Antwoord 14

Je hoeft alleen maar toegang te krijgen tot Gemfile met root-toegang. Voor vi:

opdracht:

sudo su -

dan:

vi ~/...

Other episodes