Gibt es einen einfachen Befehl, um das Passwort des aktuellen Benutzers zu überprüfen? Der Befehl
$ su -c true $(id -nu)
reicht für Nicht-Root-Benutzer aus. Ein Root-Benutzer muss seine Identität jedoch nicht bestätigen, wenn er verwendet su
.
Gibt es einen alternativen Befehl, mit dem ein Root-Benutzer sicher und einfach überprüfen kann, ob das von ihm gespeicherte Root-Passwort noch korrekt ist?
Ich verwende eine Desktop-Linux-Distribution, genauer gesagt Arch Linux.
Antwort1
Eine der möglichen Lösungen wäre, vorübergehend zu einem interaktiven Benutzer ohne Root-Rechte zu wechseln und dann zu Root zu wechseln und sich wieder bei der Root-Shell abzumelden, und zwar wie folgt ( $SHLVL
wird nicht geändert):
# 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
#
Getestet mit su
Shadow 4.2.1 auf Slackware Linux und mit su
auf FreeBSD.