Ich möchte meinen Laptop so einrichten, dass ein Bild mit der Webcam des Laptops aufgenommen wird, wenn beim Sperren des Bildschirms ein falsches Kennwort eingegeben wird. Ich habe geprüft xlock
(aus dem xlockmore- Paket), aber es gibt keine Option, eine benutzerdefinierte Aktion auszuführen, wenn ein falsches Kennwort eingegeben wird.
Bei SuperUser gibt es eine ähnliche Frage, die sich jedoch nur an Windows richtet: Aufnehmen eines Fotos nach Eingabe eines falschen Kennworts .
(Für diejenigen, die lustige Katzenfotos mögen: Mein Laptop ist so eingerichtet, dass er nach 3 falschen Passwortversuchen ein Bild macht .)
Antworten:
Kopierte diesen Beitrag auf Frage Ubuntu von gertvdijk , darauf hingewiesen von Mazs in den Kommentaren. In dem Bemühen, diese Frage zu schließen.
Basierend auf diesem Beitrag auf den Ubuntuforums von BkkBonanza .
Dies ist ein Ansatz, der PAM verwendet und für alle fehlgeschlagenen Anmeldeversuche funktioniert. Bei Verwendung von SSH, einem virtuellen Terminal oder über den regulären Anmeldebildschirm spielt dies keine Rolle, da am Ende alles von PAM erledigt wird.
Installieren Sie ffmpeg . Wir werden dies als Befehlszeilenmethode zum Abrufen der Webcam-Bilder verwenden. Update: ffmpeg wird beim Upgrade auf Ubuntu 14.04 entfernt. Wir können avconv anstelle von ffmpeg im folgenden Skript verwenden. Sie müssen nichts separat installieren.
Erstellen Sie irgendwo ein kleines Skript, z. B.
/usr/local/bin/grabpicture
mit dem folgenden InhaltÄndern Sie / dev / video0 mit dem tatsächlichen Videogerät Ihrer Webcam und wählen Sie einen Pfad, in dem die Bilder gespeichert werden - ich wähle einfach
/tmp
. In der neueren Version von Ubuntu verwenden Sieavconv
anstelle vonffmpeg
(sudo apt-get install libav-tools
).Machen Sie es ausführbar, z
chmod +x /usr/local/bin/grabpicture
.Testen Sie es, indem Sie es einfach aufrufen :
/usr/local/bin/grabpicture
. Überprüfen Sie, ob Dateien in angezeigt werden/tmp/vid....jpg
.Konfigurieren Sie PAM so, dass dies bei jedem fehlgeschlagenen Versuch aufgerufen wird.
Hinweis: Gehen Sie dabei vorsichtig vor. Wenn dies fehlschlägt, können Sie nicht mehr regelmäßig auf Ihr System zugreifen.
Öffnen Sie
/etc/pam.d/common-auth
in Ihrem Lieblingseditor, zgksudo gedit /etc/pam.d/common-auth
. B. indem Sie dies tun . Beachten Sie bei den folgenden Schritten die Reihenfolge der Zeilen in dieser Datei.Suchen Sie die Zeile unten. Standardmäßig steht eine Zeile vor der mit
pam_deny.so
. Auf meinem 12.04-System sieht es so aus:Ändern Sie in dieser Zeile den Wert "Erfolg = 1" in "Erfolg = 2", damit unser Skript bei Erfolg übersprungen wird. Dies ist ein wichtiger Schritt.
Fügen Sie dort unten ein neues hinzu, um das eigentliche Skript aufzurufen:
Speichern und schließen Sie die Datei. Sie müssen nichts neu starten.
Probier es aus.
su -l username
in einem neuen Terminalfenster als normaler Benutzer, sich als anderer Benutzer mit Benutzername anzumeldenusername
(ändern Sie dies natürlich durch einen tatsächlichen). Geben Sie absichtlich das falsche Passwort ein. Überprüfen Sie, ob dies zu einem neuen Bild führt.Wenn die Tests erfolgreich waren, können Sie sich von Ihrem DE (Unity / KDE / ...) abmelden. Wenn Sie auf dem Anmeldebildschirm ein falsches Kennwort eingeben, sollte dies auch angezeigt werden.
quelle