[root@localhost ~]# vim /usr/lib64/sas12/smtpd.conf pwcheck_method: saslauthd mech_list: PLAIN LOGIN log_level:3
: wq
Wystąpił błąd.
"/usr/lib64/sas12/smtpd.conf" E212: Can"t open file for writing.
Dlaczego root „nie może otworzyć pliku do zapisu?
Odpowiedź
Sprawdź, czy / usr / lib64 / sas12 katalog już istnieje:
root@host:~# ls /usr/lib64/sas12
Jeśli tak nie jest, musisz utworzyć katalog przed przystąpieniem do tworzenia pliku:
root@host:~# mkdir -p /usr/lib64/sas12 root@host:~# vim /usr/lib64/sas12/smtpd.conf
Polecenie vim
powinno teraz działać zgodnie z oczekiwaniami.
Komentarze
- Dzięki. Właściwie robiłem vi dla pliku w folderze, który nie istniał. Jako:
vi ~/bin/backup
.
Odpowiedź
Albo system plików jest zamontowany tylko do odczytu, albo nie jest to problem z uprawnieniami root
ale funkcja vim
. Użyj innego edytora lub zmień uprawnienia do plików (np. ustaw root
właścicielem pliku), edytuj plik i zmień go z powrotem.
Odpowiedź
możesz otrzymać ten błąd, gdy w pliku jest ustawiony atrybut „+ a”. polecenie chattr
pozwoli tylko na dołączenie, ale nie usunięcie istniejącego pliku.
server123:/tmp # chattr +a manish server123:/tmp # lsattr manish -----a---------- manish
Komentarze
- To rozwiązało mój problem, thx
Odpowiedź
Może się tak zdarzyć, jeśli w tej samej lokalizacji znajduje się również plik wymiany, który może ustawić blokadę pliku do edycji.
przykład poszukaj pliku
/usr/lib64/sas12/.smtpd.conf.swp
Jeśli ten plik istnieje, nie możesz go edytować. Spróbuj go usunąć, a edycja powinna działać.