Por favor no me voten por esto. No recomiendo implementar esta respuesta, pero es la respuesta que pide el rkthkr.
rkthkr dijo:
Pero sería bueno tener vim reiniciado y ejecutado como root
La forma de hacerlo es con :!sudo vim %
Como mencioné a ipozgaj, un% como argumento (incluso un subargumento) se reemplaza con la ruta al búfer actual. (Es posible que se le solicite su contraseña). Termina con un nuevo proceso vim, propiedad de root, que es un proceso secundario del proceso vim original. Suena tonto, ¿verdad? Así es como se ve en ps:
~# ps afo pid,ppid,user,stat,comm
PID PPID USER STAT COMMAND
16187 30478 rbronosky Ss bash
16510 16187 rbronosky R+ \_ ps
30482 30478 rbronosky Ss bash
16244 30482 rbronosky S+ \_ vim
16318 16244 root S+ \_ vim
Si tiene permisos de escritura en el directorio que contiene el archivo y ha realizado modificaciones, es posible que se le advierta que existe un archivo de intercambio. Si elige [R] ecover, se reflejará la mayoría * de los cambios realizados por el proceso vim principal. (* Creo que tal vez la actualización de intercambio está programada o tiene un umbral delta. Ya he dedicado demasiado tiempo a esto y no me importa investigarlo). Cuando vaya y salga de vim, no se alarme cuando esté todavía en vim ... abriste un segundo proceso de vim. ¿Recuerda?
Ahora, con todo eso dicho ... Casi nunca haría esto. Tal vez, si no he tenido suficiente o demasiado café, y me di cuenta de que iba a necesitar editar varios archivos más como root ... Podría intentar esto. En 14 años de administración de sistemas, nunca lo he hecho. Pero, hasta que expresaste descontento con mi solución preferida (que es exactamente como la ofrecida por dbr), nunca había pensado en esto.