2 votos

¿Cómo editar un archivo en una carpeta que pertenece a un usuario que no ha iniciado sesión?

Más o menos como sugiere el título. ¿Existe alguna manera de hacer esto? Por el momento, tengo que cambiar los permisos de la carpeta antes de poder acceder al archivo.

Sólo para reiterar, el usuario no tiene capacidad de inicio de sesión, por lo que no puedo su al usuario al que pertenece la carpeta.

El archivo es un simple archivo de configuración que quiero abrir con vim para su edición y está en una carpeta que es propiedad de un usuario y un grupo creados para un servicio, cuyo usuario y grupo son los propietarios de la carpeta.

2voto

Phill Puntos 126

Puede utilizar este comando para editar el archivo en el Terminal con vim :

sudo -u <name of user with no login> vim /folder/file

donde:

  • sudo -u le permite ejecutar un comando como el usuario especificado por el -u opción

  • <name of user with no login> es el nombre de la cuenta del usuario al que pertenece la carpeta, tal y como lo devuelve este comando de Terminal:

    stat -f "%Su" /folder

    Si se obtiene un Permission denied error, intente este comando en su lugar:

    stat -f "%Su" $(dirname /folder)

    (sustituir folder con la jerarquía de carpetas donde file se encuentra)

  • vim /folder/file lanza vim (sustituir file con el nombre del archivo y folder con la jerarquía de carpetas donde file se encuentra)

Al utilizar sudo de esta manera, estás ejecutando un comando en nombre del usuario sin tener que iniciar sesión como dicho usuario .

Puede sustituir vim con otro editor de línea de comandos de su elección, como pico , un editor de archivos de línea de comandos fácil de usar. Sin embargo, no podrás utilizar una aplicación para editar el archivo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X