Thinkpad T480s/X1c 2018 Manjaro Sway(ArchLinux)安装指纹(ID 06cb:009a)

Thinkpad T480s/X1c 2018 Manjaro Sway(ArchLinux)安装指纹(ID 06cb:009a)

前提

我给旧的设备安装了Thinkpad X1C 2018安装了Manjaro Sway(Manjaro是基于ArchLinux的发行版,Sway是基于Wayland的平铺桌面)操作系统,但是指纹模块一直不能够正常工作,后来按照教程安装了fprintd,但是并不支持这款机器。

解决方案

查看设备

sudo pacman -S usbutils
lsusb
ID 06cb:009a Synaptics, Inc Metallica MIS Touch Fingerprint Reader

请查看下设备ID是否与我的机器一致,来判断接下来的步骤适不适合你的机器。如果不适合可以从网上搜索你的型号。对于其他Linux发行版可以查看文章底部的参考链接,也许有更方便的配置方案。

安装yay

接下来需要使用yay来安装AUR(Arch User Repository)下的一些包,在此之前我们先来安装yay。

sudo pacman -S yay

安装open-fprintd

在此之前请确保fprintd已经被卸载

sudo pacman -R libfprint
sudo pacman -R fprintd

使用yay安装open-fprintd

yay -S open-fprintd fprintd-clients python3-validity

这个过程可能会由于某些以来问题报错,根据报错信息安装相关依赖即可。

指纹读取器驱动

创建响应的文件

sudo touch /usr/share/python-validity/backoff
sudo touch /usr/share/python-validity/calib-data.bin

这里需要注意关闭防火墙比如firewalld,防火墙某些策略可能会导致下载失败

sudo systemctl stop firewalld

停止python3-validity服务,这一步特别重要

systemctl stop python3-validity

下载驱动

sudo validity-sensors-firmware

执行脚本程序

sudo python3 /usr/share/python-validity/playground/factory-reset.py
sudo chmod 0755 /usr/share/python-validity/6_07f_lenovo_mis_qm.xpfwext

可能某些原因导致在进行此操作的时候python3-validity重启,此时会提示device busy的错误,如果遇到这种情况,python3-validity github主页是这样说的

# At some of the above points you may get a 'device busy' error,
# depending on how systemctl plays along. Kill offending processes if
# necessary, or re-run the systemctl stop python3-validity command, 
# in case it has automatically been restarted, or or kill other
# offending processes.

你只需要再一次执行systemctl stop python3-validity即可解决问题。

最后启动服务

sudo systemctl enable python3-validity open-fprintd-resume open-fprintd-suspend
sudo systemctl start python3-validity open-fprintd-resume open-fprintd-suspend

登陆配置

到了这里,你的指纹模块应该能正常工作了,但是还不能用于登陆等身份验证,需要配置linux的相关文件

将pam_fprintd.so模块添加在/etc/pam.d/system-local-login文件auth字段最顶端,你可以用vim来编辑它

sudo vim /etc/pam.d/system-local-login

内容如下

auth      sufficient pam_fprintd.so
auth      include   system-login
...

这会首先尝试使用指纹登录,如果失败或在给定用户的主目录中找不到指纹数据,则继续进行密码登录。

如果你使用了GUI并且为其他桌面环境,此步骤还没完成,你需要继续对其他文件进行配置,请务必参考fprint - Arch Linux Wiki

录入指纹

同fprintd使用以下命令来录入指纹

fprintd-enroll

按照提示需要多次录入,直到出现completed即为完成。

验证指纹可以使用以下命令:

fprintd-verify

参考

  • ArchLinux Wiki - fprint
  • gist.github.com/borcen/t480-fedora-fingerprint.md
  • github.com/uunicorn/python-validity
  • Arch使用指纹 - byronogis 博客园
  • 如何在 Ubuntu 20.04 下使用 ThinkPad X1 Carbon 2017 指纹解锁-Plum’s Blog

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/965742.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32的HAL库开发---通用定时器(TIMER)---定时器脉冲计数

一、脉冲计数实验原理 1、 外部时钟模式1:核心为蓝色部分的时基单元,时基单元的时钟源可以来自四种,分别是内部时钟PCLK、外部时钟模式1,外部时钟模式2、内部定时器触发(级联)。而脉冲计数就是使用外部时钟…

Redis05 - 性能调优和缓存问题

Redis性能调优和缓存问题 文章目录 Redis性能调优和缓存问题一:链路追踪判断是不是redis出了问题二:redis变慢原因1:使用复杂度过高的命令(*)1.1:查看redis慢日志1.2:延迟变大原因分析1.3:解决方案 2&#…

漫步 C++ 之途,领略引用的独特风姿

在C中,引用(Reference)是一种非常有用的特性,它允许为一个变量创建一个别名(Alias)。引用在很多情况下可以替代指针,但使用起来更加方便和安全。以下是对C引用的详细介绍,包括其定义…

Spring Boot Web 入门

目录 Spring Boot Web 是 Spring Boot 框架的一个重要模块,它简化了基于 Spring 的 Web 应用程序的开发过程。以下是一个 Spring Boot Web 项目的入门指南,涵盖了项目创建、代码编写、运行等关键步骤。 1. 项目创建 使用 Spring Initializr 使用 IDE …

Java 多线程、线程同步、线程池

一. 线程 1. 线程:线程(Thread)是一个程序内部的一条执行流程。 2. 程序中如果只有一条执行流程,那这个程序就是单线程的程序。 二. 多线程 多线程是指从硬件上实现多条执行流程的技术(多条线程由CPU负责调度) Javas是通过java.lang.Thread类的对象来代…

20.[前端开发]Day20-王者荣耀项目实战(三)

01_(掌握)王者荣耀-main-赛事新闻列表实现 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" …

【Langchain学习笔记(一)】Langchain介绍

Langchain介绍 Langchain介绍前言1、Langchain 是什么2、为什么要用 Langchain3、Langchain 的核心4、Langchain 的底层原理5、Langchain 的应用场景 Langchain介绍 前言 想象一下&#xff0c;如果你能让聊天机器人不仅仅回答通用问题&#xff0c;还能从你自己的数据库或文件…

IDEA2024版本创建Sping项目无法选择Java 8

目录 一、背景二、解决方式&#xff08;替换创建项目的源地址&#xff09; 一、背景 IDEA2024创建一个springboot的项目&#xff0c;本地安装的是1.8&#xff0c;但是在使用Spring Initializr创建项目时&#xff0c;发现版本只有17、21、23。 二、解决方式&#xff08;替换创…

C++11(四)

目录 包装器 function包装器 bind绑定 更改实参传递的顺序和实参传递的个数 线程库 本期我们将继续进行C11新特性的学习。 包装器 function包装器 function包装器&#xff0c;我们也称之为适配器&#xff0c;本质上就是一个类模板&#xff0c;为什么要引入function包…

MySQL 数据库编程-C++

目录 1 数据库基本知识 1.1 MYSQL常见命令 1.2 SQL注入 1.3 ORM框架 1 数据库基本知识 MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格"的概念, 一个关系型数据库由一个或数个表格组成&#xff1a…

【算法篇】贪心算法

目录 贪心算法 贪心算法实际应用 一&#xff0c;零钱找回问题 二&#xff0c;活动选择问题 三&#xff0c;分数背包问题 将数组和减半的最小操作次数 最大数 贪心算法 贪心算法&#xff0c;是一种在每一步选择中都采取当前状态下的最优策略&#xff0c;期望得到全局最优…

5 计算机网络

5 计算机网络 5.1 OSI/RM七层模型 5.2 TCP/IP协议簇 5.2.1:常见协议基础 一、 TCP是可靠的&#xff0c;效率低的&#xff1b; 1.HTTP协议端口默认80&#xff0c;HTTPSSL之后成为HTTPS协议默认端口443。 2.对于0~1023一般是默认的公共端口不需要注册&#xff0c;1024以后的则需…

动态规划LeetCode-1035.不相交的线

在两条独立的水平线上按给定的顺序写下 nums1 和 nums2 中的整数。 现在&#xff0c;可以绘制一些连接两个数字 nums1[i] 和 nums2[j] 的直线&#xff0c;这些直线需要同时满足&#xff1a; nums1[i] nums2[j]且绘制的直线不与任何其他连线&#xff08;非水平线&#xff09;相…

禅道社区版项目管理软件部署(记录篇)

系统要求&#xff08;这里推荐使用docker容器化方式&#xff09;安装前的准备Docker快速安装最后通过查看地址验证是否部署成功开始界面化安装配置 禅道&#xff08;ZenTao&#xff09;是一款国产开源的项目管理软件&#xff0c;专注于敏捷开发流程&#xff0c;支持 Scrum 和 K…

数据结构-基础

1、概念&#xff1a; 程序 数据结构 算法 2、程序的好坏 可读性&#xff0c;稳定性&#xff0c;扩展性&#xff0c;时间复杂度&#xff0c;空间复杂度。 3、数据结构 是指存储、组织数据的方式&#xff0c;以便高效地进行访问和修改。通过选择适当的数据结构&#xff0c; 能…

从零开始:OpenCV 图像处理快速入门教程

文章大纲 第1章 OpenCV 概述 1.1 OpenCV的模块与功能  1.2 OpenCV的发展 1.3 OpenCV的应用 第2章 基本数据类型 2.1 cv::Vec类 2.2 cv&#xff1a;&#xff1a;Point类 2.3 cv&#xff1a;&#xff1a;Rng类 2.4 cv&#xff1a;&#xff1a;Size类 2.5 cv&#xff1a;&…

1-kafka服务端之延时操作前传--时间轮

文章目录 背景时间轮层级时间轮时间轮降级kafka中的时间轮kafka如何进行时间轮运行 背景 Kafka中存在大量的延时操作&#xff0c;比如延时生产、延时拉取和延时删除等。Kafka并没有使用JDK自带的Timer或DelayQueue来实现延时的功能&#xff0c;而是基于时间轮的概念自定义实现…

Java 注解使用教程

简介 Java 1.5 引入了注解&#xff0c;现在它在 Java EE 框架&#xff08;如 Hibernate、Jersey 和 Spring &#xff09;中被大量使用。Java 注释是该语言的一个强大特性&#xff0c;用于向 Java 代码中添加元数据。它们不直接影响程序逻辑&#xff0c;但可以由工具、库或框架…

第17章 读写锁分离设计模式(Java高并发编程详解:多线程与系统设计)

1.场景描述 对资源的访问一般包括两种类型的动作——读和写(更新、删除、增加等资源会发生变化的动作)&#xff0c;如果多个线程在某个时刻都在进行资源的读操作&#xff0c;虽然有资源的竞争&#xff0c;但是这种竞争不足以引起数据不一致的情况发生&#xff0c;那么这个时候…

强化学习 DAY1:什么是 RL、马尔科夫决策、贝尔曼方程

第一部分 RL基础&#xff1a;什么是RL与MRP、MDP 1.1 入门强化学习所需掌握的基本概念 1.1.1 什么是强化学习&#xff1a;依据策略执行动作-感知状态-得到奖励 强化学习里面的概念、公式&#xff0c;相比ML/DL特别多&#xff0c;初学者刚学RL时&#xff0c;很容易被接连不断…