当前正在运行 Ubuntu 22.04.2* LTS。显然我的机器上有一个指纹设备:
Bus 003 Device 003: ID 04f3:0c4c Elan Microelectronics Corp. ELAN:ARM-M4
运行命令后:
sudo service fprintd status
我收到以下消息告诉我该服务当前处于活动状态并正在运行:
● fprintd.service - Fingerprint Authentication Daemon
Loaded: loaded (/lib/systemd/system/fprintd.service; static)
Active: active (running) since Tue 2023-03-07 20:35:26 WET; 9s ago
Docs: man:fprintd(1)
Main PID: 4381 (fprintd)
Tasks: 5 (limit: 18842)
Memory: 1.5M
CPU: 51ms
CGroup: /system.slice/fprintd.service
└─4381 /usr/libexec/fprintd
HP-ENVY-x360-Convertible-15-es1xxx systemd[1]: Starting Fingerprint Authentication Daemon...
HP-ENVY-x360-Convertible-15-es1xxx systemd[1]: Started Fingerprint Authentication Daemon.
但是当我运行最后一个命令来设置指纹时:
fprintd-enroll -f right-index-finger
我收到以下错误消息:
Impossible to enroll: GDBus.Error:net.reactivated.Fprint.Error.NoSuchDevice: No devices available
任何帮助都非常感谢。如果需要,我愿意提供更多信息。
答案1
问题评论中的链接有点过时了 - 我能够让它在我的 HP Envy 上使用相同的指纹读取器和 Ubuntu 22.04。
我发布此文是为了回应另一个问题:
每这个答案,此设备的驱动程序现已可用,但需要libfprint
从源代码构建,使用这叉。
sudo apt-get install meson ninja-build libgusb-dev libgirepository1.0-dev libnss3-dev libgudev-1.0-dev gtk-doc-tools valgrind
sudo ldconfig
git clone https://gitlab.freedesktop.org/geodic/libfprint.git
cd libfprint/
git checkout elanmoc2
git pull
meson build
cd build
ninja
sudo ninja install
如果您还没有安装,您还需要安装libpam-fprintd
才能使用阅读器登录。
您可能需要在 BIOS 中重置指纹读取器 — 我无法验证我的右手食指,直到我重置了读取器,但我的所有其他指纹都有效。要重置读取器,请进入 BIOS,查看“安全”下的内容,然后启用“重启时重置指纹”。当系统要求您确认是否要重置读取器时,请选择“是”——您将丢失所有当前指纹数据——然后允许计算机重新启动。BIOS 设置将重置为“否”,因此您无需重新进入 BIOS。
现在您可以使用设置/用户或登录并添加指纹fprintd-enroll -f <finger>
。