Estoy tratando de usar :wq
para guardar un archivo de texto que he editado en Vim, pero cuando entro :wq
me sale el error
E45: 'readonly' option is set (add ! to override)`
Cuando agrego !
a me :wq
gusta :wq!
, obtengo esto:
"/etc/dhcp/dhcpd.conf"
"/etc/dhcp/dhcpd.conf" E212: Can't open file for writing
El archivo que quiero editar está dhcpd
en la /etc/dhcpd
ruta.
¿Cómo puedo hacer esto?
:x
oZZ
para salir y guardar. Solo escribirá sobre el cambio.Respuestas:
Debe abrir el archivo con permisos de superusuario de la siguiente manera:
editar el archivo pulsando iy luego en Guardar y salir pulsando Escy luego o
:wq
o:x
o simplemente:w
para ahorrar.Gracias a Riking por sugerir
sudoedit
: puede usarsudoedit /path/to/file/filename
para editar archivos propiedad de root en lugar de usarsudo <editor> /pat/to/file/filename
. Esto es útil para máquinas de nivel empresarial o máquinas de producción, ya que sudoedit se registra en/var/log/auth.log
.Si desea cambiar el editor predeterminado para sudoedit, haga lo siguiente:
y luego presione Returny elija el editor de su elección y nuevamente presione Return.
Ver también: Una discusión sobre redit sobre por qué sudoedit puede ser ventajoso
fuente
sudoedit
estas situaciones: crea una copia temporal, ejecuta el editor y copia el resultado. Si previamente eligiónano
ese comando, ejecuteEDITOR=vi sudoedit /etc/file
.sudoedit
, ni siquiera sabía que existía. Sin embargo, me encontré con esto mientras buscaba en Googlesudoedit
. Lo sugeriré, pero déjelo al usuario si lo considera necesario.sudoedit
también recoge laEDITOR
variable, es más fácil establecer eso que configurar alternativas/etc
consta de todos los archivos de configuración, por lo que para editar los archivos bajo los/etc
que necesita los permisos de superusuario, pero en algún momento nos olvidamos de usarlossudo
. pero en ese momento también podemos usarluego ingrese su contraseña de administrador
salir con éxito
fuente
cmap w!! w !sudo tee > /dev/null %
a su.vimrc
para permitir guardar a través de este método con:w!!
. Si le interesa saber por qué funciona este método, consulte stackoverflow.com/questions/2600783/…