# 简介
Howdy 为 Linux 提供 Windows Hello 风格的身份验证。
使用内置红外发射器和摄像头与面部识别相结合来证明您是谁。
使用中央身份验证系统 (PAM),这可以在您需要密码的任何地方使用:登录、锁定屏幕、sudo、su 等。
# 安装前提
确保 pypi
和 github
访问正常
# 安装 (Ubuntu)
sudo add-apt-repository ppa:boltgolt/howdy | |
sudo apt update | |
sudo apt install howdy |
在安装过程中会有如下 3 个选项可供选择:
F:Fast 快速
B:Balanced 平衡
S:Securs 安全
# 查看所有摄像头设备
在大多数 Linux 系统中,
/dev/video*
为摄像头设备。
ls /dev/video* | |
# /dev/video0 /dev/video1 /dev/video2 /dev/video3 | |
# thinkbook 中 video0 为红外相机 |
# 配置 Howdy
sudo howdy config |
查找以 device_path
开头的行,将其改为 /dev/video0
或你摄像头的实际路径。
[video] | |
# ... | |
# The path of the device to capture frames from | |
# Should be set automatically by an installer if your distro has one | |
device_path = /dev/video0 |
# 添加面部模型记录
通过以下命令将人脸与特定 username 用户相关联:
sudo howdy -U username add |
配置好后 Howdy 就会随系统启动而自动启动,你可以在下次登录时就自动通过人脸设别登录。
在其它要验证权限的时候,Howdy 也可以直接免密授权,例如执行 sudo 提权时。
# 其他
# 添加面部模型记录 | |
sudo howdy add | |
sudo howdy -U username add | |
# 编辑配置 | |
sudo howdy config | |
# 查看面部模型记录 | |
sudo howdy list | |
# 删除指定 ID 的面部记录 | |
sudo howdy remove <face_ID> | |
# 清除所有面部模型记录 | |
sudo howdy clear | |
# 禁用 Howdy 功能 | |
sudo howdy disable 1 | |
# 启用 Howdy 功能 | |
sudo howdy disable 0 | |
# 保存快照 | |
sudo howdy snapshot | |
# 测试摄像头是否能找到面部 (Ctrl+C 取消) | |
sudo howdy test | |
# 查看版本 | |
sudo howdy version |
# 错误
# 在添加面部模型时
Traceback (most recent call last): | |
File "/usr/local/bin/howdy", line 95, in <module> | |
import cli.add | |
File "/usr/lib/security/howdy/cli/add.py", line 48, in <module> | |
face_encoder = dlib.face_recognition_model_v1(path + "/../dlib-data/dlib_face_recognition_resnet_model_v1.dat") | |
RuntimeError: Unable to open /usr/lib/security/howdy/cli/../dlib-data/dlib_face_recognition_resnet_model_v1.dat for reading. |
原因:因网络或其他问题导致的模型数据缺失
解决方法:重新安装模型数据
cd /usr/lib/security/howdy/dlib-data | |
./install.sh |
# 参考
Howdy— 适用于 Linux 系统的人脸识别身份验证,安装和配置指南
RuntimeError: Unable to open /usr/lib/security/howdy/cli/…/dlib-data/dlib_face_recognition_resnet_model_v1.dat for reading.