Outils pour utilisateurs

Outils du site


electronique:raspberry:4:toc

Raspberry 4

Mise à jour 2021-09-15

Utilisant une carte microSD 64 GB. Possible qu'il soit nécessaire de formater la carte avant avec le SD Card Formatter.

Utilisation de Raspberry Imager pour récupérer l'image d'Ubuntu Server 20.04 (LTS) et le mettre sur la carte SD.

Dans Ubuntu, le login par défaut est ubuntu:ubuntu. Une invite permettra de changer le mot de passe.

Quelques étapes pour setuper le tout:

Raspbian

Pour connaitre la version actuelle:

$ cat /etc/os-release

Configuration:

$ raspi-config

VPN sur PI

Dans la configuration de Raspbian (commande sudo raspi-config):

  • mettre un nouveau password à l'utilisateur pi.
  • On peut changer le hostname (optionel dans ce contexte)
  • Boot options, le mettre à B1 Console
  • Mettre le bon timezone
  • Donner 16MB au GPU (le minimum).
  • Enabler le ssh (dans Interfacing Options)

Modifier le fichier /etc/network/interfaces et éditer la partie de eth0:

auto eth0
allow-hotplug eth0
iface eth0 inet static
        address 192.168.1.2
        netmask 255.255.255.0
        gateway 192.168.1.1
        dns-nameserver 8.8.8.8 8.8.4.4

Installer openvpn:

$ sudo apt-get install openvpn

Ensuite les fichiers de configuration de PIA:

$ wget https://www.privateinternetaccess.com/openvpn/openvpn.zip
$ unzip openvpn.zip -d openvpn
$ sudo cp crl.rsa.2048.pem /etc/openvpn
$ sudo cp ca.rsa.2048.crt /etc/openvpn
$ sudo cp US\ New\ York\ City.ovpn /etc/openvpn/US.conf

Mettre les creds de PIA dans le fichier /etc/openvpn/login:

username
password

Redémarrer.

Vérifier que openvpn fonctionne:

$ sudo openvpn --config /etc/openvpn/US.conf

Créer la tâche système:

$ sudo systemctl enable openvpn@US

Décommenter la ligne net.ipv4.ip_forward=1 dans le fichier /etc/sysctl.conf:

$ sudo nano /etc/sysctl.conf

Ensuite enable this:

$ sudo sysctl -p

Changer la configuration iptables:

sudo iptables -A INPUT -i lo -m comment --comment "loopback" -j ACCEPT
sudo iptables -A OUTPUT -o lo -m comment --comment "loopback" -j ACCEPT
sudo iptables -I INPUT -i eth0 -m comment --comment "In from LAN" -j ACCEPT
sudo iptables -I OUTPUT -o tun+ -m comment --comment "Out to VPN" -j ACCEPT
sudo iptables -A OUTPUT -o eth0 -p udp --dport 1198 -m comment --comment "openvpn" -j ACCEPT
sudo iptables -A OUTPUT -o eth0 -p udp --dport 123 -m comment --comment "ntp" -j ACCEPT
sudo iptables -A OUTPUT -p UDP --dport 67:68 -m comment --comment "dhcp" -j ACCEPT
sudo iptables -A OUTPUT -o eth0 -p udp --dport 53 -m comment --comment "dns" -j ACCEPT
sudo iptables -A FORWARD -i tun+ -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o tun+ -m comment --comment "LAN out to VPN" -j ACCEPT
sudo iptables -t nat -A POSTROUTING -o tun+ -j MASQUERADE

Sauvegarder les règles iptables:

$ sudo apt-get install iptables-persistent
$ sudo systemctl enable netfilter-persistent

Pour sauvegarder des règles à nouveau:

$ sudo netfilter-persistent save

Source

Installer Client No-IP

  1. Créer un répertoire où mettre no-ip client : mkdir /home/pi/noip.
  2. Aller dans ce répertoire, cd /home/pi/noip.
  3. Téléchager le client : wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz.
  4. Décompresser le fichier : tar vzxf noip-duc-linux.tar.gz.
  5. Aller dans le répertoire décompressé, exemple : cd noip-2.1.9-1, mais peut différer.
  6. Installer : sudo make et ensuite sudo make install.
  7. Entrer les informations demandées : nom du compte, mot de passe, domaines à mettre à jour, temps de mise àa jour (en minutes), etc.
    • Pour réexécuter la config, on peut faire : sudo /usr/local/bin/noip2 -C.
  8. Démarrer le client : sudo /usr/local/bin/noip2.
  9. Pour vérifier que le client roule bien : sudo /usr/local/bin/noip2 -S.

Démarrage automatique lors du démarrage

  1. Éditer le fichier /etc/rc.local : sudo nano /etc/rc.local.
  2. Mettre la ligne /usr/local/bin/noip2 après le fi et avant le exit 0.

Chromium

Il n'est pas possible d'installer directement Chrome. Il faut plutot installer Chromium.

$ sudo apt-get install chromium

Source

Monter un disque-dur externe

Installer pilote NTFS

  1. Mettre à jour apt-get si nécessaire.
  2. Installer avec : $ sudo apt-get install ntfs-3g.

Monter le disque-dur

  1. Brancher le disque-dur externe via USB et s'assurer qu'il est bien alimenté.
  2. Sur le Raspberry, lister les volumes : $ sudo fdisk -l.
  3. Dans l'exemple ci-haut, le disque-dur apparaît comme /dev/sda avec deux partitions.
  4. Créer un répertoire où monter le volume, exemple /media/USBHDD.
  5. On va monter /dev/sda2 puisqu'il s'agit de la partition NTFS qui sera utilisée pour y mettre les fichiers : $ sudo mount -t auto /dev/sda2 /media/USBHDD.

Démonter

$ sudo umount /media/pi/SEAGATE8TB

S'il est utilisé (target is busy, vu que Samba l'utilise):

$ sudo umount -l /media/pi/SEAGATE8TB

Configurer Samba

$ sudo apt-get install samba samba-common-bin

Raspberry PI 3 Model B

Utiliser Noobs pour installer des OS. Sert aussi à la sélection de l'OS.

Divers

Commande pour température de CPU sous Ubuntu:

$ cat /sys/class/thermal/thermal_zone0/temp

Screen resolutions (marche pas):

$ xrandr --newmode $(cvt 1280 1024 60 | grep Mode | sed -e 's/.*"/1280x1024/')

Ubuntu 18.04 Server

Pour faire un Media Server avec Plex.

Installations:

Mount HDD

Voir la liste des devices:

$ sudo fdisk -l
$ sudo mount -t exfat /dev/sda1 /media/external

GPIO

  • Output: provides constant 3.3V at 16mA max
  • Input: “listen” to current, 3.3V = 1, 0V = 0

3 Protocoles

  • SPI: 3 data lines, faster, master-slave
  • I2C: 2 data lines, slower, master + ∞ slaves
  • UART: Async

Composantes

Écrans

5.0" 40-pin TFT

Il s'agit d'un écran touchscreen de 5.0“ avec 800×480 pixels. Cet écran idéalement doit être piloté par le RA8875 Driver Board et programmé avec sa librairie.

Raspberry Pi Display Module - 3.2" Touchscreen LCD

electronique/raspberry/4/toc.txt · Dernière modification : 2023/10/03 18:25 de sgariepy