Desde el usuario root, ¿cómo puedo otorgar permisos a otro usuario para ejecutar el archivo /root/script.sh?
La idea es ejecutar el script como sudo -u user1 /root/script.sh
root
privileges
bigote
fuente
fuente

sudocomando que escribió?su(1)Respuestas:
Debo decir que nunca me gustó
sudo(especialmente sus configuraciones). Simplesu:Ejecutado desde la raíz, no solicitará contraseña.
fuente
El usuario debe tener
ejecutar permiso para toda la ruta del directorio (
/rootsolo aquí )ejecutar permiso para el archivo
permiso de lectura para el archivo
Puede ser una buena idea dejar
/rootintactos y crear (o usar) un directorio diferente para este propósito (por ejemplo/usr/local/bin). Puede hacer queuser1el único usuario que tenga permiso para ejecutar el script lo convierta en el propietario del archivo o lo dejerootcomo propietario y grupo, establezca los permisos de acceso simple (chmod)770y agregueuser1con ACL (setfacl).fuente
Si su script está ubicado en el directorio raíz, entonces
user1solo puede ser root.Su
/etc/sudoersentrada se verá comoNormalmente editaría el archivo con
visudoEntonces tampoco necesita poner
-u roota susudoorden.El
%significa el grupo de usuarios. Cuando lo deja fuera, solo el usuario puede ejecutar el comando. Si desea que un grupo de usuarios lo ejecute, déjelo como está.fuente