La mayoría de las veces edito un archivo con nano, intento guardarlo y obtengo un error de permiso porque olvidé ejecutarlo como sudo. ¿Hay alguna forma rápida de convertirme en sudo sin tener que volver a abrir y volver a editar el archivo?
command-line
sudo
nano
Kit Sunde
fuente
fuente
vim
. Estoy considerando la fusión ... aunque también estoy considerando el hecho de que las instrucciones específicas de vim no funcionaránnano
.nano
no lo esvim
... y nonano
sevim
han presentado soluciones similares a las de ellos.Respuestas:
No, no puede otorgarle a un programa en ejecución permisos que no tiene cuando se inicia, ese sería el agujero de seguridad conocido como 'escalada de privilegios' '.
Dos cosas que puedes hacer:
sudo cp $TMPFILE $FILE
. Tenga en cuenta que no se recomienda su usomv
para esto debido al cambio en la propiedad del archivo y los permisos que puede causar, solo desea reemplazar el contenido del archivo, no el marcador de posición del archivo.fg
para volver al editor y guardar. ¡No olvides arreglar los permisos!¹ Algunos editores realmente pueden hacer esto iniciando un nuevo proceso con diferentes permisos y pasando los datos a ese proceso para guardarlos. Consulte, por ejemplo, esta pregunta relacionada para otras soluciones en editores avanzados que permiten escribir el búfer de archivo en una tubería de proceso. Nano no tiene la capacidad de iniciar un nuevo proceso o pasar datos a otros procesos, por lo que queda fuera de esta fiesta.
fuente
:w !sudo tee
Acabo de intentarlo
nano
, y lo que encontré más sorprendente es que ni siquiera te advierte que el archivo es de solo lectura cuando comienzas a tratar de editarlo. ( ACTUALIZACIÓN: aparentemente nano 2.2 advierte; 2.0 no. )Aquí hay un script (básico) que hace eso.
Comprueba si puede editar el archivo y, si no puede, ejecuta "nano" como root en su lugar.
/ usr / local / bin / edit (o ~ / bin / edit )
Y un comando que llamé
view
para que pueda evitar el aviso si sabe que no va a realizar ningún cambio./ usr / local / bin / view (o ~ / bin / view )
Ya hay un programa llamado
view
que forma parte de Vi / Vim, así que siéntete libre de sugerir un nombre mejor.(Pero creo que una implementación completa de este programa haría que Vi sea
view
redundante).Versiones completas
fuente
[ Read ... lines (Warning: No write permission) ]
es lo que aparece justo encima de las dos líneas de ayuda para los accesos directos (parte inferior de la pantalla). La versión nano es 2.2.4.