Lettore di impronte digitali VFS 495 non funzionante in Ubuntu


12

Ho HP Probook 450 e ha integrato il lettore di impronte digitali VFS 495 di Validity Inc. Ho driver Linux dal sito HP. Ora voglio farlo funzionare su Ubuntu. I driver sono in formato rpm, quindi ho usato il convertitore alien per convertirlo in pacchetto deb e poi installato.

Collegamento alla pagina del driver HP: Driver

Cordiali saluti: Questo pacchetto di driver ha una libreria di wrapper fprint contenuta e ha anche un file HPUsbVFS495.img, ma non sono stato in grado di capire come funziona.

Uscita di lspci && lsusb:

00: 00.0 Host bridge: controller DRAM Intel Corporation di terza generazione Core (rev 09)
00: 02.0 Controller compatibile VGA: controller grafico Intel Corporation di terza generazione Core Core (rev 09)
00: 14.0 Controller USB: Famiglia di chipset Intel Corporation serie 7 / serie C210 Controller host xHCI USB (rev 04)
00: 16.0 Controller di comunicazione: famiglia di chipset Intel Corporation serie 7 / serie C210 Controller MEI n. 1 (rev 04)
00: 1a.0 Controller USB: Famiglia di chipset Intel Corporation serie 7 / serie C210 Controller avanzato USB n. 2 (rev 04)
00: 1b.0 Dispositivo audio: Intel Corporation 7 Series / C210 Series Chipset Controller audio ad alta definizione (rev 04)
00: 1c.0 bridge PCI: famiglia di chipset Intel Corporation serie 7 / serie C210 porta PCI Express Root 1 (rev c4)
00: bridge PCI 1c.2: famiglia di chipset Intel Corporation serie 7 / serie C210 PCI Express Root Port 3 (rev c4)
00: 1c.3 PCI bridge: Famiglia di chipset Intel Corporation Serie 7 / Serie C210 Porta PCI Express Root 4 (rev c4)
00: 1c.5 PCI bridge: Famiglia di chipset Intel Corporation Serie 7 / Serie C210 Porta PCI Express Root 6 (rev c4)
00: controller USB 1d.0: famiglia di chipset Intel Corporation serie 7 / serie C210 Controller host avanzato USB n. 1 (rev 04)
00: 1f.0 ISA bridge: controller LPC per chipset Intel Corporation HM76 Express (rev 04)
00: controller SATA 1f.2: famiglia di chipset Intel Corporation serie 7 Controller SATA a 6 porte [modalità AHCI] (rev 04)
02: 00.0 Classe non assegnata [ff00]: Realtek Semiconductor Co., Ltd. Lettore di schede PCI Express RTS5229 (rev 01)
03: 00.0 Controller di rete: Ralink corp. RT3290 PCIe wireless 802.11n 1T / 1R
03: 00.1 Bluetooth: Ralink corp. RT3290 Bluetooth
04: 00.0 Controller Ethernet: Realtek Semiconductor Co., Ltd. RTL8111 / 8168/8411 Controller PCI Express Gigabit Ethernet (rev 0c)
Bus 002 Dispositivo 002: ID 8087: 0024 Hub di corrispondenza tariffa integrata Intel Corp.
Bus 002 Dispositivo 001: ID 1d6b: 0002 Hub principale Linux Foundation 2.0
Bus 001 Dispositivo 004: ID 04ca: 7022 Lite-On Technology Corp. 
Bus 001 Dispositivo 003: ID 138a: 003f Validity Sensors, Inc. 
Bus 001 Dispositivo 002: ID 8087: 0024 Hub di corrispondenza tariffa integrata Intel Corp.
Bus 001 Dispositivo 001: ID 1d6b: 0002 Hub principale Linux Foundation 2.0
Bus 004 Dispositivo 001: ID 1d6b: 0003 Hub principale Linux Foundation 3.0
Bus 003 Dispositivo 002: ID 09da: c10a A4 Tech Co., Ltd 
Bus 003 Dispositivo 001: ID 1d6b: 0002 Hub principale Linux Foundation 2.0

Non ha funzionato se non hai installato il software?
Braiam,

Ho installato il driver ma non funziona.
Ali Nawaz,

Intendevo dire se senza installare nulla funzionasse? Inoltre, modifica la tua domanda e aggiungi l'output di lspci && lsusb.
Braiam,

No, non ha funzionato senza installare nulla. E ho aggiornato l'output.
Ali Nawaz,

Risposte:


9

L'ho fatto funzionare su 16.04 su questa macchina seguendo questa guida ma ha avuto alcuni problemi con i collegamenti, quindi ecco esattamente cosa ho fatto ...

(prima potresti voler navigare in una cartella vuota perché faremo un po 'di download, compilazione e conversioni. I file saranno ovunque)

mkdir temporary
cd ./temporary

ora abbiamo creato una cartella e navigato su di essa possiamo procedere ...

Innanzitutto, scarica questo e posizionalo nella tua cartella vuota.

La guida è molto lunga, ma la cosa positiva è che dovrebbe funzionare se la segui solo in sequenza. Se non capisci cosa sta succedendo, copia e incolla le righe una dopo l'altra (o chiedi in un commento)

installa il driver:

tar xf vfs495.tar
cd vfs495
sudo apt install alien
sudo alien Validity-Sensor-Setup-4.5-118.00.x86_64.rpm
sudo dpkg -i validity-sensor-setup_4.5-119_amd64.deb

Ora la parte dei collegamenti interrotti. Ecco i link che dovrebbero funzionare:

sudo apt install libssl1.0.0
ln -s /lib/x86_64-linux-gnu/libssl.so.1.0.0 /lib/x86_64-linux-gnu/libssl.so.0.9.8
sudo apt-get install libcrypto++-dev
ln -s /usr/lib/libcrypto++.so.9 /usr/lib/libcrypto.so.0.9.8

Quindi procedi. Installa libfprint

mkdir libfprint
cd libfprint
rpm2cpio ../libfprint-0.0.6-18.20.1.src.rpm | cpio -i --make-directories
tar xf libfprint-0.0.6.tar.bz2
cp ../libfprint-validity.patch ./libfprint-validity.patch
cd libfprint-0.0.6/
patch -p1 < ../libfprint-validity.patch
sudo apt-get install libusb-dev libcrypto++-dev libssl-dev libglib2.0-dev libmagickcore-dev checkinstall
./configure --prefix=/usr
make
sudo checkinstall -install=no make install
sudo dpkg -i libfprint_0.0.6-1_amd64.deb

Installa fprint_demo

cd ../..
sudo apt-get install libgtk2.0-dev
tar xf fprint_demo-0.4.tar.bz2
cd fprint_demo-0.4
./configure --prefix=/usr
make
sudo checkinstall -install=no make install
sudo dpkg -i fprint-demo_0.4-1_amd64.deb

A questo punto, possiamo iniziare a registrare le dita.

sudo /etc/init.d/vcsFPServiceDaemon start
sudo fprint_demo

... dopo aver registrato il dito puoi allenarti nella scheda "identifica". Mostrerà la tua impronta digitale! È così divertente: D a volte vado lì e continuo a scorrere XD

E solo una nota a margine, non prendere screenshot del tuo dito e condividerlo in giro a meno che, ovviamente, tu non sappia cosa stai facendo. L'impronta digitale è preziosa. Meglio tenerlo solo per i tuoi occhi.

... comunque, continua. Installa pam_fprint

cd ..
tar xf pam_fprint-0.2.tar.bz2
cd pam_fprint-0.2/
sudo apt-get install libpam-dev
./configure --prefix=/usr
make
sudo checkinstall -install=no make install
sudo dpkg -i pam-fprint_0.2-1_amd64.deb

Ora possiamo iniziare a configurare l'autenticazione tramite impronta digitale. Ti consiglio di fermarti qui perché lo uso da un po 'e ci sono diversi problemi. Finora il tuo driver funziona e va bene. Puoi provarlo per l'autenticazione e ripristinarlo se vuoi, ma non è robusto per l'uso quotidiano.

Ad ogni modo, dobbiamo modificare il /etc/pam.d/common-authfile. Fai attenzione con questo file !! . Se lo sbagli dovresti ripararlo dalla modalità di recupero.

Ciò indurrebbe Ubuntu a richiedere l'impronta digitale o la password per garantire l'accesso come root e anche per l'accesso. Quindi puoi ancora usare la tua password per accedere

sudo nano /etc/pam.d/common-auth

Dobbiamo aggiungere le righe:

# fingerprint authentication through fprintd
auth    sufficient                      pam_fprint.so

e modificare la linea che deve pam_unix.so nullok_secure try_first_passrenderlo sufficiente, in questo modo:

auth    sufficient      pam_unix.so nullok_secure try_first_pass

Quindi finalmente ecco come appare il mio file .

Nota che il comportamento dipenderà da dove posizionerai le linee. Se li metti sopra (il blocco "Primario") ti chiederà prima l'impronta digitale, quindi la password e viceversa.

Spero che qualcuno possa chiarire o dare un buon puntatore su come funziona esattamente questo file.

Finalmente...

cd ..
sudo cp vcsFPServiceDaemon /etc/init.d/
sudo update-rc.d vcsFPServiceDaemon defaults

e le cose dovrebbero funzionare.


3
Grazie!! solo una piccola osservazione: devi copiare vcsFPServiceDaemon in /etc/init.d/ prima della prima esecuzione del servizio e quindi, prima di eseguire fprint_demo
Denis

Questo ha funzionato ma si è rivelato instabile con un HP 640 G2 con SO elementare. Ho dovuto disinstallarlo. Guida perfetta però, lo userò sicuramente di nuovo su un altro hardware o su una diversa distribuzione. Grazie!
Benoit Duffez,

spero vi sia piaciuto: D
Mina Michael,

Guida eccellente e dettagliata! Ha funzionato perfettamente su un HP 470 G5 con Linux Mint 18.3. Ho un'altra domanda: ho visto che richiede l'impronta digitale solo nella schermata di accesso mentre dopo aver bloccato lo schermo, chiede sempre la password. Come posso fargli chiedere l'impronta digitale quando sblocco anche lo schermo?
Stefano Coletta,

ehi, ho seguito, ma quando arrivo al punto in cui entro sudo /etc/init.d/vcsFPServiceDaemon start, mi dice che /etc/init.d/vcsFPServiceDaemon: 33: .: Can't open /etc/rc.status Ma il comando sudo fprint_demofunziona, ma non dice alcun dispositivo. Cosa dovrei fare qui? Sono su un HP EliteBook 840 se questo aiuta, e 18.04 con Plasma installato
DPS
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.