Lettore impronte ID 138a:0050 Validity Sensors su Debian Jessie

 

Lettore impronte ID 138a:0050 Validity Sensors su Debian Jessie

Pacchetti deb per Debian ed Ubuntu.

Lettore impronte ID 138a:0050 Validity Sensors su Debian Jessie. Dopo aver preso un Notebook HP ENVY 15-k208nl, e fatto una prima guida su come far funzionare l'hardware su Debian Jessie, successivamente mi sono trovato ad affrontare il problema del Lettore di impronte digitale ID 138a:0050 Validity Sensors. In realtà il problema è relativo a tutte le distro, Ubuntu incluso. Praticamente per far fuzionare il lettore di impronte servirebbero i driver vfs0050.

edmond@debianbox:~$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 8087:07dc Intel Corp.
Bus 001 Device 003: ID 138a:0050 Validity Sensors, Inc.
Bus 001 Device 002: ID 064e:c341 Suyin Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

cercando in giro ho scoperto che esiste una patch creata due anni fa e non più aggiornata poiche l'autore è morto 🙁 detto questo esiste anche qualche problemino nel farla funzionare, ed a questo proposito voglio condividere 2 pacchetti deb creati da me, dove il primo installa il driver vfs0050 ed il secondo installa FingerprintGui, che sarebbe l'alternativa, migliore, a quello presente nei repository col nome di fprint-demo. Per installare il tutto seguire gli step seguenti:

sudo apt remove --purge libfprint0 fprintd libpam-fprintd
wget https://bit.ly/28ZEyZQ -O libfprint_0.5.1.2-1_amd64.deb
wget https://bit.ly/28VRuxQ -O fingerprint-gui_1.08-1_amd64.deb
sudo dpkg -i fingerprint-gui_1.08-1_amd64.deb libfprint_0.5.1.2-1_amd64.deb
sudo apt install libfprint0 fprintd libpam-fprintd libqca2 libqtxml4-perl

FingerprintGui deve essere lanciato come root, lo stesso vale per fprint-demo:

sudo fingerprint-gui
sudo fprint_demo

una volta installati i pacchetti per abilitare l'autenticazione con impronte, per chi usa Mate, basta andare in System-Control Centre-About Me:

Lettore impronte ID 138a:0050 Validity Sensors su Debian Jessie

Lettore impronte ID 138a:0050 Validity Sensors su Debian Jessie

per chi invece usa Gnome, la procedura è quasi simile. Ho testato i pacchetti su Debian Jessie, Strech, ed Ubuntu 16.04. Funziona sia con Lightdm che con GDM, con sudo e con su, il problema vero e proprio è che fallisce l'autenticazione, cosa che sinceramente succede anche su Windows 10. Successivamente integrerò la guida per la compilazione dei due pacchetti. con relative dipendenze.

Lettore impronte ID 138a:0050 Validity Sensors su Debian Jessie

enjoy 😉

 

Server Cloud WebDav su Raspberry pi 2 e Debian Jessie

Server WebDav su Raspberry pi 2

 

Per avere un proprio Server Cloud WebDav su Raspberry pi 2 e Debian Jessie, da utilizzare sia in locale che da remoto, alla stregua di Dropbox, Box.com, OneDrive ecc ecc, i passi da seguire sono i seguenti:

sudo apt-get install apache2
sudo a2enmod dav_fs
sudo a2enmod auth_digest
sudo service apache2 restart
sudo mkdir -p /webdav
sudo chown www-data /webdav
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/000-default.conf_bak
sudo nano /etc/apache2/sites-available/000-default.conf

che deve essere come sotto, inserendo al posto delle xxx.xxx.x.x, l' IP del Raspberry:

<VirtualHost xxx.xxx.x.x:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /webdav
        <Directory /webdav>
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        Alias /webdav /webdav

        <Location /webdav>
           DAV On
           AuthType Basic
           AuthName "webdav"
           AuthUserFile /webdav/passwd.dav
           Require valid-user
       </Location>
</VirtualHost>

 

sudo service apache2 restart
sudo htpasswd -c /webdav/passwd.dav nome_utente_Raspberry

per chi deve accedere da Windows al server WebDav:

sudo htpasswd /webdav/passwd.dav xxx.xxx.x.x\\nome_utente_Raspberry

poi:

sudo chown root:www-data /webdav/passwd.dav
sudo chmod 640 /webdav/passwd.dav
sudo service apache2 restart

Il server sarà raggiungibile all'indirizzo https://ip_server/webdav

Adesso un minimo di protezione per il nostro server cloud installando Fail2ban, così da bloccare dopo 3 tentativi l'IP di che tenta di accedere senza le giuste credenziali:

sudo apt-get install fail2ban
sudo nano /etc/fail2ban/jail.local

ed inserire:

[apache]
enabled  = true
port     = https,https
filter   = apache-auth
logpath  = /var/log/apache*/*error.log
maxretry = 6

[apache-noscript]
enabled  = true
port     = https,https
filter   = apache-noscript
logpath  = /var/log/apache*/*error.log
maxretry = 6

[apache-overflows]
enabled  = true
port     = https,https
filter   = apache-overflows
logpath  = /var/log/apache*/*error.log
maxretry = 2

[apache-nohome]
enabled  = true
port     = https,https
filter   = apache-nohome
logpath  = /var/log/apache*/*error.log
maxretry = 2

riavviare fail2ban:

sudo service fail2ban restart

adesso siamo pronti ad utilizzare il nostro server cloud.

 

enjoy 😉

 

Flash su Raspberry pi 2 con Chromium-Pepper

 

Per avere il plugin flash su Raspberry pi 2, bisogna installare chromium-browser e chromium-pepper, questo sia se si sta utilizzando Raspbian Jessie, sia Debian Jessie armhf. Per installare questi pacchetti bisogna andarli a prelevare nei repository di altre distro:

Scaricare ed installare Chromium:

$ wget https://www.dropbox.com/s/3iw9oopqolnw0ca/chromium-browser_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ wget https://www.dropbox.com/s/dylujonf0mb6wul/chromium-browser-l10n_45.0.2454.85-0ubuntu0.15.04.1.1181_all.deb
$ wget https://www.dropbox.com/s/qxlw1mcx6orb9bi/chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ sudo dpkg -i chromium-browser_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ sudo dpkg -i chromium-browser-l10n_45.0.2454.85-0ubuntu0.15.04.1.1181_all.deb
$ sudo dpkg -i chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ sudo apt-get install -f

Scaricare chromium-pepper

$ wget
$ tar -xf chromium-pepper-flash-12.0.0.77-1-armv7h.pkg.tar.xz
$ cd usr/lib/PepperFlash/
$ sudo cp * /usr/lib/chromium-browser/plugins

fare delle modifiche:

$ sudo nano  /etc/chromium-browser/default

ed aggiungere sotto CHROMIUM_FLAGS="

CHROMIUM_FLAGS="--ppapi-flash-path=/usr/lib/chromium-browser/plugins/libpepflashplayer.so --ppapi-flash-version=12.0.0.77-1 -password-store=detect -user-data-dir"

adesso si è pronti ad utilizzare il plugin flash su Raspberry pi 2.

 

enjoy 🙂

 

Debian Jessie su Raspberry pi 2

                       Debian Jessie su Raspberry pi 2

 

Come ottenere una Debian Jessie originale per  Raspberry pi 2, e sfruttare quindi i repository Debian. Pur avendo usato Raspbian, ho sempre voluto avere una Debian pura, e sopratutto voglio Mate come DE. Per ottenere una Debian pura su Raspberry pi 2, utilzzo Debootstrap e qemu-user-static su un pc con Debian Jessie x64.

 

$ targetdir=rootfs
$ distro=jessie
$ mkdir $targetdir
$ sudo apt-get install qemu-user-static debootstrap binfmt-support
$ sudo debootstrap --arch=armhf --foreign $distro $targetdir
$ sudo cp /usr/bin/qemu-arm-static $targetdir/usr/bin/
$ sudo cp /etc/resolv.conf $targetdir/etc
$ sudo chroot $targetdir
# distro=jessie
# export LANG=C
# /debootstrap/debootstrap --second-stage

 

Aggiungere i repository:

cat > /etc/apt/sources.list << EOF
deb https://ftp.it.debian.org/debian jessie main contrib non-free
deb https://ftp.it.debian.org/debian jessie-updates main contrib non-free
deb https://security.debian.org jessie/updates main contrib non-free
deb https://archive.raspberrypi.org/debian jessie main
EOF

 

un po di pinning:

cat > /etc/apt/preferences.d/raspberrypi << EOF
Package: *
Pin: origin archive.raspberrypi.org
Pin-Priority: 1

Package: raspberrypi-bootloader
Pin: origin archive.raspberrypi.org
Pin-Priority: 1000

Package: libraspberrypi0
Pin: origin archive.raspberrypi.org
Pin-Priority: 1000

Package: Rasspberrypi-bin
Pin: origin archive.raspberrypi.org
Pin-Priority: 1000
EOF

 

Configurazione rete in DHCP:

cat > /etc/network/interfaces.d/eth0 << EOF
auto eth0
iface eth0 inet dhcp
EOF

Configurare fstab:

cat > /etc/fstab << EOF
/dev/mmcblk0p1 /boot vfat noatime 0 2
/dev/mmcblk0p2 / ext4 noatime 0 1
EOF

 

Configuarare file hosts

cat > /etc/hosts << EOF
127.0.0.1  localhost
127.0.1.1  RaspJessie
EOF

 

Creare utente e settare la password di root, quindi poi scaricare tutto quello che serve:

# adduser nome_utente
# passwd
# echo "RaspJessie" > /etc/hostname
# wget https://archive.raspberrypi.org/debian/raspberrypi.gpg.key -O - | apt-key add -
# apt-get update
# apt-get upgrade -y
# apt-get install -y mate-desktop-environment locales dbus openssh-server dosfstools libraspberrypi-bin
# apt-get clean

 

disabilitare orologio di sistema:

# systemctl enable systemd-timesyncd
# systemctl disable hwclock-save
# exit

 

Il sistema è pronto. La mia scheda microsd identificata come mmcblk0 ha due partizioni, la prima mmcblk0p1 è di 150M, e la seconda mmcblk0p2, con tutto il resto dello spazio. Si può usare gparted oppure il terminale:

$ sudo umount /dev/mmcblk0p1
$ sudo umount /dev/mmcblk0p2
$ sudo mkfs.vfat /dev/mmcblk0p1
$ sudo mkfs.ext4 /dev/mmcblk0p2

creazione e montaggio delle cartelle, ed infine copiare il sistema originale Debian Jessie sulla microsd:

$ sudo mkdir /mnt/{boot,system}
$ sudo mount /dev/mmcblk0p1 /mnt/boot
$ sudo mount /dev/mmcblk0p2 /mnt/system
$ sudo rsync -av rootfs/boot/ /mnt/boot
$ sudo rsync -av --exclude=/boot/* rootfs/ /mnt/system
$ sudo umount /mnt/{boot,system}

 

Adesso siamo pronti ad usare una Debian Jessie pura su raspberry pi 2. 

enjoy 😉

 

Installare WordPress 4.1.1 su Debian Jessie

 

Installare WordPress 4.1.1 su Debian Jessie

 

 

Per installare WordPress 4.1.1 su Debian Jessie basta seguire questa semplice guida:

 

Installare LAMP:

 

# apt-get install apache2 mysql-server mysql-client php5 php5-mysql php5-gd php5-curl

 

verrà chiesto di scegliere una password per mysql. Una volta terminata l'installazione di tutto l'occorrente si può procedere con la preparazione del database, dove i parametri immessi nell'esempio sotto saranno i seguenti:

database=wpdb, user=wpuser, password=wppassword:

 

# mysql -u root -p

 

verrà chiesta la password di root per mysql, scelta in fase d'installazione, successivamente inserire linea per linea e dare invio:

 

CREATE DATABASE wpdb;
CREATE USER wpuser@localhost IDENTIFIED BY 'wppassword';
GRANT ALL PRIVILEGES ON wpdb.* TO wpuser@localhost;
FLUSH PRIVILEGES;
exit

 

riavviare i servizi:

 

# service apache2 restart
# service mysql restart

 

Scaricare wordpress, settare i permessi e configurare wp-config.php:

 

# cd /tmp/ && wget https://wordpress.org/latest.tar.gz
# tar -xvzf latest.tar.gz
# mv wordpress /var/www/html/
# chown -R www-data.www-data /var/www/html/wordpress
# chmod -R 755 /var/www/html/wordpress
# mkdir -p /var/www/html/wordpress/wp-content/uploads
# chown -R www-data.www-data /var/www/html/wordpress/wp-content/uploads
# cd /var/www/html/wordpress/
# cp wp-config-sample.php wp-config.php
# nano wp-config.php

 

che dovrà essere così:

 

// ** MySQL settings – You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wpdb');

/** MySQL database username */
define('DB_USER', 'root');

/** MySQL database password */
define('DB_PASSWORD', 'wppassword');

/** MySQL hostname */
define('DB_HOST', 'localhost');

 

a questo punto basterà andare all'indirizzo https://localhost/wordpress/, per iniziare l'installazione guidata di WordPress, ed iniziare quindi con la creazione di un proprio blog.

 

enjoy 😉

 

(Solved) a start job is running for dev-disk-by-\x2duuid

 

L'errore "a start job is running for dev-disk-by-\x2duuid" che mi è capitato di vedere al boot sulla mia Debian Jessie, e che ti chiede di aspettare 90 secondi, è da imputare al fatto che la partizione di swap non può essere montata. Di fatto ho notato che l'UUID, presente in etc/fstab, non coincide con quello che si può vedere con i comandi:

 

# ls -l /dev/disk/by-uuid
# blkid

 

ad ogni modo per risolvere velocemente, c'è sempre il buon vecchio metodo di rimuovere da /etc/fstab l'UUID, inserendo la partizione:

 

# nano /etc/fstab

 

e modificare da così:

 

UUID=5192c3e0-f825-4732-95ae-5ded44834615  none swap sw 0 0

 

a così:

 

/dev/sda6 none  swap sw 0 0

 

enjoy 😉

 

Copiare un file contemporaneamente in più directory

 

Per copiare un file contemporaneamente in più directory, si può scegliere di usare il comando xargs, a cui si dirà di eseguire un determinato comando più volte. Quindi invece di copiare con questi tre comandi:

 

$ cp file /percorso/dir1
$ cp file /percorso/dir2
$ cp file /percorso/dir3

 

se ne userà solamente uno:

 

$ echo /percorso/dir1 /percorso/dir2 /percorso/dir3 | xargs -n 1 cp -v file

 

enjoy 🙂

 

Speedtest da teminale in Linux

Speedtest da teminale in Linux

Per misurare la velocità della connessione internet, si può fare anche uno speedtest da teminale in Linux, utilizzando Speedtest-cli. Scritto in Python CLI, si appoggia al sito Speedtest.net per misurare la velocità della connessione, sia in download che in upload. Per installarlo su Debian dai repository:

# apt-get install python-pip
# pip install speedtest-cli

manualmente:

$ wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
# chmod a+rx speedtest_cli.py
# mv speedtest_cli.py /usr/local/bin/speedtest-cli
# chown root:root /usr/local/bin/speedtest-cli

effettuare uno speedtest:

# speedtest-cli

speedtest con condivisione:

# speedtest-cli --share

lista dei server:

# speedtest-cli --list

cambiare server:

# speedtest-cli --server 4302
root-DebianJessie speedtest-cli --list
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
2567) Prometeus di Daniela Agro (Cologno Monzese, Italy) [14.66 km]
5502) Linkem SPA (Milan, Italy) [14.86 km]
3667) Telecom Italia S.p.A. (Milan, Italy) [14.86 km]
5331) C.U. SRL (Milan, Italy) [14.86 km]
4302) Vodafone IT (Milan, Italy) [14.86 km]
4388) ItaliaOnline (Milan, Italy) [14.86 km]
2824) H3G (Milan, Italy) [14.86 km]
1392) ENTER S.r.l. (Milan, Italy) [14.86 km]
3997) NGI SpA (Busto Arsizio, Italy) [21.39 km]
4492) GOLINE SA (Stabio, Switzerland) [32.53 km]
 999) InternetONE (Varese, Italy) [33.51 km]
ecc.ecc.ecc.ecc

aggiornare speedtest-cli:

# pip install speedtest-cli --upgrade

enjoy 😉

Confrontare il contenuto di due cartelle usando diff

 

Puo capitare di volere confrontare il contenuto di due cartelle simili, ed uno dei metodi potrebbe essere quello di usare il comando diff:

 

$ diff --suppress-common-lines -y <(cd /percorso/cartella1; find .|sort) <(cd /percorso/cartella2; find .|sort)

 

questo comando mostrerà nel terminale solo sul lato destro, le differenze tra le due cartelle. In caso di un output lungo è meglio redirigere il tutto in un file di testo:

 

$ diff --suppress-common-lines -y <(cd /percorso/cartella1; find .|sort) <(cd /percorso/cartella2; find .|sort) >confronto.txt

 

enjoy 😉