Verificar la contraseña del usuario actual, incluso si es root

Verificar la contraseña del usuario actual, incluso si es root

¿Existe un comando simple para verificar la contraseña del usuario actual? El comando

$ su -c true $(id -nu)

es suficiente para usuarios no root. Sin embargo, un usuario root no necesita verificar su identidad cuando usa su.

¿Existe algún comando alternativo con el que un usuario root pueda verificar de forma segura y sencilla que la contraseña de root que recuerda sigue siendo correcta?

Utilizo una distribución de Linux de escritorio, Arch Linux para ser particular.

Respuesta1

Una de las posibles soluciones sería cambiar temporalmente a un usuario interactivo no root y luego cambiar a root y cerrar sesión en el shell raíz de esta manera ( $SHLVLno se modificará):

# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),17(audio)
# su user -c 'su root -c exit' # type an incorrect password
Password:
su: Authentication failure
# echo $?
1
# su user -c 'su root -c exit' # type a correct password
Password:
# echo $?
0
#

Probado con suShadow-4.2.1 en Slackware Linux y suen FreeBSD.

información relacionada