rn7.net/wiki

MonRaspberryPi

PagePrincipale :: rn7.net :: DerniersChangements :: DerniersCommentaires :: ParametresUtilisateur :: Vous êtes ec2-54-80-18-223.compute-1.amazonaws.com

Mon Raspberry Pi

J'ai le modèle B : 256 Mo, 2 USB, carte SD normale.
Ce modèle est plus consommateur que le modèle B+.

Ailleurs

https://www.kickstarter.com/projects/cguionet/helixee-the-guardian-of-your-connected-life


Préparer la carte SD pour que le wifi soit actif

https://raspberrypi.stackexchange.com/questions/10251/prepare-sd-card-for-wifi-on-headless-pi#10413

Contents of /etc/network/interfaces:

auto lo
iface lo inet loopback

allow-hotplug eth0
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet manual
iface default inet dhcp

Contents of /etc/wpa_supplicant/wpa_supplicant.conf:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
}


Raspberry Pi 3

Pour l'essentiel :


Raspberry Pi 2

Le raspberry Pi 2 a l'air de consommer environ autant que le RPi modèle B, mais il est 6 fois plus rapide.
http://raspi.tv/2015/raspberry-pi2-power-and-performance-measurement
http://raspi.tv/2015/raspberry-pi-2-the-new-quad-core-a7-pi2

Autres plateformes


Matériel



Config matérielle 201601

Environ 150-180€ au total

Connexion : ssh pi@192.168.0.40



Prochaine config pour sauvegarde réseau locale


Usages


Détection de présence


Vidéosurveillance privée


Matériel :

Détection du genre (homme/femme)

http://openbiometrics.org/
https://www.youtube.com/watch?v=yywC6NbP2OA
https://thinkrpi.wordpress.com/2013/04/03/step-6-face-recognition/
http://codnsol.blogspot.fr/2013/07/raspberry-pi-face-recognition-using_3.html
http://blog.oscarliang.net/raspberry-pi-face-recognition-opencv/
http://blog.ubidots.com/building-a-people-counter-with-raspberry-pi-and-ubidots
http://www.element14.com/community/community/raspberry-pi/blog/2014/12/18/thanksgiving-pi
http://perclass.com/index.php/html/blog_comments/perclass_on_raspberry_pi/
http://docs.opencv.org/2.4/modules/contrib/doc/facerec/tutorial/facerec_gender_classification.html
http://blog.mashape.com/list-of-10-face-detection-recognition-apis/


Logiciel

sudo mount -o loop,offset=62914560 "/home/charles/00/binaires/RPi/2012-09-18-wheezy-raspbian.img" /mnt
sudo mount -o loop,offset=4194304 "/home/charles/00/binaires/RPi/2012-09-18-wheezy-raspbian.img" /mnt/boot
sudo apt-get install kpartx qemu binfmt-support qemu-user qemu-user-static
sudo cp /usr/bin/qemu-arm-static /mnt/usr/bin
sudo cp /usr/bin/qemu-arm /mnt/usr/local/bin/
sudo mount --rbind /dev /mnt/dev
sudo mount -t proc none /mnt/proc
sudo mount -o bind /sys /mnt/sys
sudo chroot /mnt

# Mettre à jour, installer quelques paquets de base et SSH
apt-get update
apt-get upgrade
apt-get install htop # 0,074 Mo
apt-get install mc # 5 Mo
apt-get install lynx # 2,4 Mo
apt-get install lsb-release # 0,026 Mo
sudo update-rc.d ssh defaults

2016-01-15

2016-11-20


# Pour avoir le service "bonjour" et faire en sorte que le RPi réponde à l'adresse raspberrypi.local
sudo apt-get install avahi-daemon
[éteindre pour être sur que le loopfs soit bien démonté (je n'y suis pas arrivé avec un umount)]
sudo dd bs=1M if=2012-09-18-wheezy-raspbian.img of=/dev/mmcblk0
ou
sudo dd bs=1M if=/media/DONNEES/Binaires/Raspberry.Pi/2012-09-18-wheezy-raspbian.img of=/dev/sde

ssh pi@raspberrypi.local

sudo apt-get install dnsmasq

Au premier démarrage : sudo raspi-config (régler notamment la mémoire partagée avec la carte graphique)

Consommation électrique

/opt/vc/bin/tvservice -off
/opt/vc/bin/tvservice -p # to re-enable

http://www.midwesternmac.com/blogs/jeff-geerling/controlling-pwr-act-leds-raspberry-pi : ne marche pas.

Astuces pour la durée de vie de la carte SD

Source : https://raymii.org/s/blog/Broken_Corrupted_Raspberry_Pi_SD_Card.html
http://www.zdnet.com/article/raspberry-pi-extending-the-life-of-the-sd-card/

[...] choose the largest card for your budget. The thinking behind this is simple: with a limit on the number of times data can be written to SD cards, and the fact that data written to the device should be spread out into untouched areas before going back to the beginning, there is less change of writing to the same area of the card. Choosing 16 GB over 8 GB will cut by half the number of rewrites. In theory this will double the life expectancy of your storage.

Write To RAM, Not The Card
Intégrer à /etc/fstab :
tmpfs /var/log tmpfs defaults,noatime,nosuid,mode=0755,size=100m 0 0
ou
tmpfs /tmp tmpfs defaults,noatime,nosuid,size=100m 0 0
tmpfs /var/tmp tmpfs defaults,noatime,nosuid,size=30m 0 0
tmpfs /var/log tmpfs defaults,noatime,nosuid,mode=0755,size=100m 0 0
tmpfs /var/run tmpfs defaults,noatime,nosuid,mode=0755,size=2m 0 0
tmpfs /var/spool/mqueue tmpfs defaults,noatime,nosuid,mode=0700,gid=12,size=30m 0 0

The kernel will mount /var/log to RAM, however it will not use any RAM until files are written to /var/log. When files are written to /var/log, the kernel will save them to RAM and only use space to save the files. When files are removed from /var/log, the associated RAM to store them is freed up.

Disable swap
sudo dphys-swapfile swapoff
sudo dphys-swapfile uninstall
sudo update-rc.d dphys-swapfile remove

Remove the GUI
I don't use the Raspbian GUI so I decided to remove everything GUI related. The best way to do this is to remove libx11 and all it's dependencies, that being all the GUI applications:
sudo apt-get purge --auto-remove 'libx11-.*'


Sauvegarder la carte SD (et donc tout le système)

sudo dd if=/dev/mmcblk0 | gzip > /media/sauvegarde3/`date +%y%m%d`.image.gz
ou
sudo dd if=/dev/mmcblk0 of=/media/sauvegarde3/`date +%y%m%d`.image

Restaurer :
gzip -dc /path/to/image.gz | dd of=/dev/sda #sda est à adapter
ou
dd if=/path/to/image of=/dev/sda


IP fixe

MAC : b8:27:eb:f4:53:c9


Disque XFS

# Installations complémentaires
# xfsprogs 3 867ko
sudo apt-get install xfsprogs
sudo reboot # pour qu'il prenne en compte ces nouvelles bibliothèques et outils

# Puis tester -- ne pas oublier de créer le dossier : sudo mkdir /media/sauvegarde3
sudo mount -t xfs /dev/sda1 /media/sauvegarde3
ls -a /media/sauvegarde3
sudo umount /dev/sda1

Pour réparer une partition xfs : xfs_check /dev/sda1 puis, si ça ne marche pas xfs_repair -L /dev/sda1
Puis : mount /dev/sda1

Monter dans /etc/fstab




MiniDLNA?

http://minidlna.sourceforge.net/
http://packages.debian.org/search?lang=fr&searchon=names&keywords=minidlna
http://www.galipe.net/articles/minidlna-serveur-upnp-dlna-leger/

Sur Debian Wheezy :
sudo apt-get install minidlna
sudo nano /etc/minidlna.conf

MiniDLNA? ne permet pas d'exclure des sous-dossiers du dossier à indexer.
Quand un dossier est indexé, son nom n'apparaît pas dans les interfaces UPNP qui le consultent ; si j'indexe 0_Video_enfants et 1_Video, les fichiers video vont donc se retrouver mélangés.
Astuce à tester : créer un répertoire spécifique dans lequel on va créer des liens symboliques (ou dur?) vers les répertoires qui doivent être indexés.
sudo mkdir /home/minidlna_files
sudo ln -s /sauvegarde3/0_Video_enfants /home/minidlna_files/0_Video_enfants
sudo ln -s /sauvegarde3/1_Video /home/minidlna_files/1_Video
sudo /etc/init.d/minidlna stop
sudo nano /etc/minidlna.conf
sudo rm /var/lib/minidlna/files.db
sudo /etc/init.d/minidlna start

less /var/log/minidlna.log

Pour que le service se lance au démarrage du RPI :
sudo update-rc.d minidlna enable


NFS

(Plus rapide que le protocole SMB.)

Installation du serveur
# ... Ko
apt-get install nfs-kernel-server rpcbind
sudo service rpcbind start
sudo update-rc.d rpcbind enable

Configuration du serveur
sudo nano /etc/exports
Ajouter :
/home/minidlna_files 192.168.0.*(rw)

Prise en compte de la nouvelle configuration
sudo exportfs -rv

Installation côté client
apt-get install nfs-common

Montage ponctuel côté client
mount -t nfs 192.168.0.20:/sauvegarde3 /media/sauvegarde3
ou montage à chaque démarrage en configurant /etc/fstab
nano /etc/fstab
en ajoutant
192.168.0.20:/sauvegarde3 /media/barbaplug nfs defaults 0 0

Pour redémarrer le serveur NFS complètement, vous devez utiliser cette commande:
sudo /etc/init.d/nfs-kernel-server restart



Carte wifi

$ sudo lsusb
ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN

http://wiki.debian.org/fr/rtl819x
Et surtout pour le RPi : http://www.raspberrypi.org/phpBB3/viewtopic.php?t=6256 -- cela dit le script devrait être inopérant si j'en crois l'extrait suivant :
# Check for new wifi setup with built in driver. Don't run script if it is.
if [ -f /lib/modules/$(uname -r)/kernel/drivers/net/wireless/rtl8192cu/8192cu.ko ] && grep -q "iface wlan0 inet manual" /etc/network/interfaces > /dev/null 2>&1; then
fi
Il est donc probable que la clé fonctionne sans rien faire en utilisant l'image 2012-09-18-wheezy-raspbian.
Il n'y a plus qu'à configurer le wifi en ligne de commande :
http://wiki.debian.org/fr/WiFi/HowToUse#Ligne_de_commande
http://manpages.debian.net/cgi-bin/man.cgi?sektion=5&query=interfaces&apropos=0&manpath=sid&locale=en
http://manpages.debian.net/cgi-bin/man.cgi?query=iwconfig&sektion=8&apropos=0&manpath=Debian+unstable+sid&locale=

Exemple :
iwconfig eth0 essid "My Network"
iwconfig eth0 mode Managed

Références complémentaires :
http://forum.ubuntu-fr.org/viewtopic.php?id=1025531
http://ubuntuforums.org/showthread.php?t=1963121
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1030858

dd bs=4M if=./2014-12-24-wheezy-raspbian.img of=/dev/sdd

/etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet manual
# wpa_supplicant is slightly more complicated but has the advantage that it should automatically reconnect if the network goes away temporarily.
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp


/etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
}

$ wpa_cli status
Selected interface 'wlan0'
bssid=f4:ca:e5:e3:1d:a4
ssid=turlututu
id=0
mode=station
pairwise_cipher=CCMP
group_cipher=TKIP
key_mgmt=WPA-PSK
wpa_state=COMPLETED
ip_address=192.168.0.40
address=48:02:2a:8f:2c:1d

$ sudo service networking restart

Surveiller le Pi et le resetter en cas de problème

http://pi.gadgetoid.com/article/who-watches-the-watcher ou http://rayshobby.net/mediawiki/index.php?title=Set_Up_RPi,_RTC,_WiFi,_Data_Log

$ sudo modprobe bcm2708_wdog
$ sudo vi /etc/modules
# Add the line "bcm2708_wdog"

$ sudo apt-get install watchdog chkconfig
$ chkconfig watchdog on
$ sudo /etc/init.d/watchdog start

sudo vi /etc/watchdog.conf
# Uncomment the line watchdog-device = /dev/watchdog
# You might also want to uncomment max-load-1, or add something like "max-load-1 = 24" to reset your Pi if the load average exceeds 24 in any 1-minute span.

NAS

Distrib : http://sourceforge.net/projects/openmediavault/files/Raspberry%20Pi%20images/
https://hackberrypi.wordpress.com/2013/06/01/openmediavaultraspberrypi/
http://www.smallnetbuilder.com/nas/nas-howto/32053-make-your-own-raspberry-pi-nas
http://www.element14.com/community/community/raspberry-pi/blog/2012/12/14/raspberry-pi-nas-with-openmediavault
Il n'y a pas de commentaire sur cette page. [Afficher commentaires/formulaire]
Query log :
SELECT * FROM wikini_pages WHERE tag = 'MonRaspberryPi' AND latest = 'Y' LIMIT 1 (0.0003)
SELECT id, value FROM wikini_triples WHERE resource = "http://www.wikini.net/_vocabulary/handler/show" AND property = "http://www.wikini.net/_vocabulary/acls" (0.0002)
SELECT id, value FROM wikini_triples WHERE resource = "ThisWikiGroup:admins" AND property = "http://www.wikini.net/_vocabulary/acls" (0.0002)
select * from wikini_acls where page_tag = 'MonRaspberryPi' and privilege = 'write' limit 1 (0.0002)
select * from wikini_acls where page_tag = 'MonRaspberryPi' and privilege = 'read' limit 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'LinkIt' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'Pin3' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'Pin5' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'Pin13' AND latest = 'Y' LIMIT 1 (0.0001)
SELECT * FROM wikini_pages WHERE tag = 'SanDisk' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'SerialNumber' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'NoIR' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'MiniDLNA' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'WiFi' AND latest = 'Y' LIMIT 1 (0.0002)
select * from wikini_pages where comment_on = 'MonRaspberryPi' and latest = 'Y' order by substring(tag, 8) + 0 (0.0002)
SELECT id, value FROM wikini_triples WHERE resource = "http://www.wikini.net/_vocabulary/action/header" AND property = "http://www.wikini.net/_vocabulary/acls" (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'DerniersChangements' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'DerniersCommentaires' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'ParametresUtilisateur' AND latest = 'Y' LIMIT 1 (0.0002)
SELECT id, value FROM wikini_triples WHERE resource = "http://www.wikini.net/_vocabulary/action/footer" AND property = "http://www.wikini.net/_vocabulary/acls" (0.0002)
select * from wikini_acls where page_tag = 'MonRaspberryPi' and privilege = 'write' limit 1 (0.0002)
SELECT * FROM wikini_pages WHERE tag = 'CharlesNepote' AND latest = 'Y' LIMIT 1 (0.0002)
0.0042 s (total SQL time)
0.0695 s (total time)
SQL time represent : 6.07% of total time