Ich habe eine GUI-Anwendung erstellt, um Benutzer und Gruppen in Linux zu verwalten!
Ich bin mit dem Teil fertig, in dem ein neuer Benutzer erstellt wird, bin aber bei dem Teil geblieben, in dem dem neu erstellten Benutzer ein neues Passwort zugewiesen wird.
Was meine App einfach tut, ist, die erforderliche Eingabe (Benutzername, Liste der Gruppen und Passwort) über eine GUI und führt ein Skript aus, das diese Informationen als Argument weitergibt.
Sagen wir, wir haben ein Benutzerkonto, xyz.
Wenn ich das Passwort für dieses Konto ändern möchte, dann muss ich alle Führen Sie einfach den folgenden Befehl aus:
passwd xyz
Dies wird nach einem neuen Passwort fragen. Jetzt kann ich mithilfe von Skripten ein neues Konto erstellen, da alle erforderlichen Informationen in der Befehlszeile übergeben werden.
useradd -m -G users -g "groups" -s /bin/bash "UserName"
Ich kann ein Skript über die Qt-App ausführen und den Benutzer erstellen, aber
in passwd cmd
, wird die Eingabe in der anderen Zeile abgefragt. Wie geht man damit um?
Akzeptierte Antwort:
Ich denke, die richtige Antwort hier ist:Shellen Sie nicht zu einem Befehlszeilentool – verwenden Sie einen Bibliotheksaufruf . Dadurch können Sie besser mit Fehlern umgehen und die risikobehaftete Weitergabe des Passworts auf einer Befehlszeile vermeiden.
Eine Bibliothek, die Sie verwenden können, ist libuser, die relativ einfach ist und C- und Python-Anbindungen hat.