Как использовать считыватель отпечатков пальцев Lenovo Thinkpad T470s (срок действия 138a: 0097) в Ubuntu 20.04 / Linux Mint 20 [закрыто]

У меня есть ThinkPad T470s, и, как и у всех пользователей ThinkPad, у меня нет встроенного считывателя отпечатков пальцев, работающего из коробки в дистрибутивах на основе Ubuntu 20.04 (я использую Linux Mint 20 MATE, но для тестирования доступен стандартный Ubuntu 20.04) .

lsusb показывает

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 004: ID 17ef:1010 Lenovo Lenovo ThinkPad Dock   
Bus 002 Device 002: ID 0bda:0316 Realtek Semiconductor Corp. USB3.0-CRW
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 138a:0097 Validity Sensors, Inc. 
Bus 001 Device 004: ID 04f2:b5ab Chicony Electronics Co., Ltd Integrated Camera
Bus 001 Device 003: ID 8087:0a2b Intel Corp. 
Bus 001 Device 018: ID 1199:9079 Sierra Wireless, Inc. Sierra Wireless EM7455 Qualcomm Snapdragon X7 LTE-A
Bus 001 Device 017: ID 062a:4101 MosArt Semiconductor Corp. Wireless Keyboard/Mouse
Bus 001 Device 016: ID 17ef:100f Lenovo Lenovo ThinkPad Dock   
Bus 001 Device 015: ID 046d:0825 Logitech, Inc. Webcam C270
Bus 001 Device 013: ID 17ef:1010 Lenovo Lenovo ThinkPad Dock   
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Устройство обнаружено, но у меня нет возможности аутентификации на основе отпечатков пальцев ни в диспетчере пользователей Ubuntu. ни MATE по умолчанию.

Что мне делать?

-2
задан 23 November 2020 в 13:40

1 ответ

Итак, погуглив и поиграв с разными вариантами, я нашел решение, которое мне подходит.

Во-первых, я использую двойную загрузку с Windows, и отпечатки пальцев регистрируются там. Это очень помогает, потому что я еще не смог успешно зарегистрировать свои отпечатки пальцев, используя только Linux.

Я просто следовал инструкциям на https://github.com/uunicorn/python-validity/tree/master

В системе Ubuntu:

sudo apt remove fprintd
sudo add-apt-repository ppa:uunicorn/open-fprintd
sudo apt-get update
sudo apt install open-fprintd fprintd-clients python3-validity

Перед выполнением последнего шага, предложенного в README, fprintd-enroll Пришлось перезагрузиться, так как служба почему-то отказалась запускаться. Однако, если у вас двойная загрузка Windows, я предлагаю просто перезагрузиться в Windows.

В Windows запустите в командной строке:

wmic useraccount get name,sid

Сохраните выходные данные в месте, к которому вы можете получить доступ из Linux, и загрузитесь обратно в Linux.

Отредактируйте /etc/python-validity/dbus-service.yaml, заменив примеры примечаний своим именем пользователя Linux и идентификатором Windows от пользователя, для которого вы настроили аутентификацию по отпечатку пальца. Теперь мой файл выглядит так:

# Mapping for users
# Add mappings from a user to a SID to use the same fingerprints as enrolled by
# Windows. By default, mappings will be generated from the numerical UID if not
# found here. This is fine if you are not dual booting and want to share
# mappings with Windows.
user_to_sid:
    # Example:
    "aivanov": "S-1-5-21-1821111111-1208666666-1382777777-1001"

Затем запустите pam-auth-update от имени пользователя root. Убедитесь, что профиль «Аутентификация по отпечатку пальца» отмечен флажком, и нажмите OK, чтобы сохранить конфигурацию.

Теперь перезагрузка и аутентификация по отпечатку пальца неожиданно работают. Вы видите, что сканер отпечатков пальцев загорается, и, если он отсканирован, вы либо сразу входите в систему, либо должны нажать Enter, чтобы войти в систему (зависит от оболочки входа в систему).

fprintd-list также показывает все отпечатки пальцев Windows:

$ fprintd-list aivanov
found 1 devices
Device at /net/reactivated/Fprint/Device/0
Using device /net/reactivated/Fprint/Device/0
Fingerprints for user aivanov on DBus driver (press):
 - #0: WINBIO_FINGER_UNSPECIFIED_POS_01
 - #1: WINBIO_FINGER_UNSPECIFIED_POS_02
 - #2: WINBIO_FINGER_UNSPECIFIED_POS_03

Так что все работает.

Теперь мне не удалось успешно зарегистрировать отпечатки пальцев с помощью fprintd-enroll.Всякий раз, когда я это делал, fprintd-verify не совпадал ни с одним из зарегистрированных отпечатков пальцев. Поскольку многие источники утверждают, что 138a:0097 различные датчики отпечатков пальцев Validity, используемые для ThinkPad, ведут себя странно при регистрации под чем-то, кроме Windows, на данный момент я бы просто использовал VirtualBox и Windows 10 для регистрации. мои отпечатки пальцев на ближайшие 10 лет и забудьте об этом. Если у кого-то есть работающее решение, не требующее Windows, поделитесь, пожалуйста.

3
ответ дан 23 November 2020 в 10:40

Другие вопросы по тегам:

Похожие вопросы: