Estoy intentando manipular un archivo squashfs, que contiene una compilación de yocto y una carga útil de la aplicación, pero cada vez que lo hago, sudo
no se ejecuta después. El usuario root está deshabilitado, por lo que no tengo una alternativa real.
Mi enfoque es simplemente descomprimir el sistema de archivos y luego volver a empaquetar los archivos descomprimidos. En ese proceso, el propietario se configura como mi usuario local (lo cual está bien, puedo solucionarlo) y, al parecer, setuid se elimina de sudo.
Respuesta1
Suponiendo que está utilizando unsquashfs
para descomprimir los archivos, obtendrá un conjunto de archivos de su propiedad y sin bits setuid. Pero puedes volver a colocar manualmente el bit setuid en cualquier archivo que desees (con chmod u+s
); por supuesto, se configurarán según su identificación. Pero cuando vuelva a empaquetar los archivos usando mksquashfs
la opción agregar -all-root
, todos los archivos en el sistema de archivos serán propiedad de root, no de usted, y se conservará cualquier bit setuid.