
Centos 8.
Hay snowuser
:
[snowuser@snowcannon-01 ~]$ cat /etc/passwd | grep snowuser
snowuser:x:1002:1002::/home/snowuser:/bin/bash
[snowuser@snowcannon-01 ~]$ groups
snowuser wheel
Hay tomcat
usuario:
[snowuser@snowcannon-01 ~]$ cat /etc/passwd | grep tomcat
tomcat:x:1003:1003::/opt/tomcat:/bin/false
cat /etc/group | grep "tomcat\|snowuser"
wheel:x:10:ydyachuk,amsliusar,snowuser
snowuser:x:1002:
tomcat:x:1003:
Intentando ejecutar el script de inicio de Tomcat bajo tomcat
el usuario:
/bin/su tomcat -c /opt/tomcat/bin/startup.sh
Pero nada significa que no apareció ningún mensaje de error ni se ejecutó el proceso Tomcat.
Sólo un detalle que tengo es que el comando se estaba ejecutando con errores:
[snowuser@snowcannon-01 ~]$ echo $?
1
Parece que tomcat
el usuario tiene los permisos adecuados para la ejecución del script:
[snowuser@snowcannon-01 ~]$ ll /opt/tomcat/bin/startup.sh
-rwxr-xr-x. 1 tomcat tomcat 1904 Nov 11 15:14 /opt/tomcat/bin/startup.sh
¿Cómo puedo hacer que Tomcat se ejecute?
Respuesta1
Configurar el shell predeterminado /bin/false
significa que su
cambiará de usuario y luego ejecutará
/bin/false -c /opt/tomcat/bin/startup.sh
Puedes usar el-s
opciónpara su
anular la configuración en /etc/passwd
, pero esto solo se permite si el usuario que llama es root o si la entrada existente en /etc/passwd
aparece en /etc/shells
.