lenovo ThinkPad X230 にSlackware64-current をインストールし、指紋認証デバイスの動作を確認した。
1. Slackwareのインストールは正常に完了。 grubにてWindows10とのデュアルブート設定も実行した。
2. Slackware起動後、Fingerprint Readerのデバイス情報を確認。
# lsusb
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 005: ID 5986:0294 Acer, Inc
Bus 003 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
Bus 003 Device 003: ID 147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode)
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hu
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 005: ID 5986:0294 Acer, Inc
Bus 003 Device 004: ID 0a5c:21e6 Broadcom Corp. BCM20702 Bluetooth 4.0 [ThinkPad]
Bus 003 Device 003: ID 147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode)
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hu
3. libfprint でサポートされているデバイスか libfprintサイトの supported devices情報で確認する。
https://fprint.freedesktop.org/supported-devices.html
ということで、サポートされているようだ。
Slackware64-currentはsystemdを採用していないので、インストール可能な libfprint / fprintd の
バージョンは libfprint-1.0 / fprintd-0.8.1 までである。
libfprint-1.0のソースをダウンロードして展開し、ソース中の driversフォルダーを参照して
デバイス UPEK 147e:2020 が含まれているか確認する。
# cat upektc_img.c |grep 2020
upektc_img_submit_req(ssm, dev, upek2020_init_capture, sizeof(upek2020_init_capture),
upektc_img_submit_req(ssm, dev, upek2020_ack_00_28, sizeof(upek2020_ack_00_28),
upektc_img_submit_req(ssm, dev, upek2020_ack_08, sizeof(upek2020_ack_08),
upektc_img_submit_req(ssm, dev, upek2020_ack_frame, sizeof(upek2020_ack_frame),
upektc_img_submit_req(ssm, dev, upek2020_deinit, sizeof(upek2020_deinit),
upektc_img_submit_req(ssm, idev, upek2020_init_1, sizeof(upek2020_init_1),
upektc_img_submit_req(ssm, idev, upek2020_init_2, sizeof(upek2020_init_2),
upektc_img_submit_req(ssm, idev, upek2020_init_3, sizeof(upek2020_init_3),
upektc_img_submit_req(ssm, idev, upek2020_init_4, sizeof(upek2020_init_4),
if (dsc->idProduct == 0x2020 && dsc->bcdDevice == 1)
{ .vendor = 0x147e, .product = 0x2020 },
upektc_img_submit_req(ssm, dev, upek2020_init_capture, sizeof(upek2020_init_capture),
upektc_img_submit_req(ssm, dev, upek2020_ack_00_28, sizeof(upek2020_ack_00_28),
upektc_img_submit_req(ssm, dev, upek2020_ack_08, sizeof(upek2020_ack_08),
upektc_img_submit_req(ssm, dev, upek2020_ack_frame, sizeof(upek2020_ack_frame),
upektc_img_submit_req(ssm, dev, upek2020_deinit, sizeof(upek2020_deinit),
upektc_img_submit_req(ssm, idev, upek2020_init_1, sizeof(upek2020_init_1),
upektc_img_submit_req(ssm, idev, upek2020_init_2, sizeof(upek2020_init_2),
upektc_img_submit_req(ssm, idev, upek2020_init_3, sizeof(upek2020_init_3),
upektc_img_submit_req(ssm, idev, upek2020_init_4, sizeof(upek2020_init_4),
if (dsc->idProduct == 0x2020 && dsc->bcdDevice == 1)
{ .vendor = 0x147e, .product = 0x2020 },
大丈夫そうな感じ。
4. libfprint-1.0 / fprintd-0.8.1 をインストールする。
5. pam を自前ビルドのパッケージに\切り替え
理由は分からないが、経験からpam パッケージが slackwareデフォルトパッケージだと
libfprint / fprintd が上手く動かないので、
デフォルトの pam-1.4.0-x86_64-1 から自前のpam-1.4.0-x86_64-1_dlackにアップデートする。
5. /etc/pam.d/system-auth 編集
system-auth の先頭に
auth sufficient pam_fprintd.so
を追加。
6. PC Reboot
7. 指紋登録
# fprintd-enroll root
# fprintd-enroll <USER>
デバイスが正常に認識され、指紋登録も無事完了。
8. 再ログインにて指紋認証で問題なくログインできることを確認した。
その後も安定して動作中。
![deepl-clip.sh で簡単翻訳 [更新:2025-04-29]](https://resize.blogsys.jp/fc265bdb808435596af7a249f59820084c144620/crop1/120x120_ffffff/https://livedoor.blogimg.jp/jw_slackware/imgs/0/d/0d2fff59-s.png)






