¿Cómo cambiar a root y usar los mismos archivos de puntos que mi usuario normal?

¿Cómo cambiar a root y usar los mismos archivos de puntos que mi usuario normal?

Ejecuto zsh en Mac OSX y, a veces, quiero cambiar en la terminal al usuario root.

Me gustaría conservar todos mis archivos de puntos, la configuración de la ruta del entorno y los scripts de mi usuario habitual, y simplemente hacer muchas cosas como root.

He estado ejecutando sudo basho sudo zshcomo una manera fácil de cambiar a root, pero esto tiene la desventaja de no ejecutar toda la configuración de zsh que tengo para mi usuario habitual.

¿Cuál es la mejor manera de "convertirse en root" para ejecutar una serie de comandos y mantener toda la configuración/entorno que tengo para mi usuario normal?"

Por ejemplo, he personalizado lo siguiente para mi usuario normal y también me gustaría tenerlos todos disponibles para el usuario root:

  • .zshrc
  • ~/contenedor
  • .alias
  • modo vim para entrada

EDITAR: Tenga en cuenta que soy consciente de que no debería "ejecutar como root" mucho. Y yo no. Pero a veces tengo que ejecutar constantemente algunos comandos simples como root, y abro un tmux split solo para este uso, y no para otro.

Respuesta1

Para obtener sus archivos de puntos habituales, asegúrese de que sudono cambie la HOMEvariable de entorno. Que esto suceda depende de la configuración del tiempo de compilación y del tiempo de ejecución de sudo. Para conservar HOME, edite el sudoersarchivo (ejecute visudo, ¡nunca edite este archivo directamente!) y asegúrese de que contenga

Defaults !always_set_home, !set_home
Defaults env_keep+=HOME

(Algunos de estos pueden ser innecesarios dependiendo de las opciones de compilación). Y, por supuesto, no ejecute sudo -i.

Sin embargo, evite hacer demasiado como root. Por ejemplo, en lugar de ejecutar un editor como root, utilice sudoedit.

Respuesta2

Es casi seguro que no querrás hacer esto.

Si su usuario root apuntó a los archivos de puntos de sus usuarios normales, entonces los permisos en esos archivos de puntos pueden cambiar, complicando así las cosas para su usuario normal.

Lo que podría hacer en su lugar es copiar los archivos al directorio de inicio de su usuario raíz en cada inicio de sesión.

En algún lugar de su ~/.zshenv (para root), copie los archivos y ajuste sus permisos. De esa manera, mantendrá su entorno sano y podrá utilizar su personalización.

Personalmente, si quiero ejecutar varios comandos raíz, sudo su -podría intentar sudo -E su -ppreservar el entorno del usuario.

¡Aviso obligatorio!

Nunca hay una buena razón para correr sudo su. Está lejosmejorpara ejecutar sudoantes de cada comando. Dicho esto, a veces lo hago sudo su. Pero la regla general es no hacerlo sudo su.

información relacionada