Documentation du Dr FRAPPE

Ce wiki regroupe les résultats de mes expériences en informatique accumulés au cours de mes recherches sur le net.

Dans la mesure du possible, j'ai cité mes sources ; il en manque certainement… :-)

Ceci est une ancienne révision du document !


74 Commandes pour Raspberry Pi - Antisèche commandes Raspberry Pi

Gestion des fichiers

Voici les commandes de base que tout débutant sous Linux doit apprendre pour naviguer dans l'arborescence de fichiers.

L'organisation des fichiers sous Linux est un arbre, dont la racine est /

Chaque nouveau sous-dossier ajoute un niveau en dessous de /

Par exemple, voici la représentation de la branche /home/pi/test

/home pi test
  1. cd <DOSSIER> : Changer de dossier, pour aller dans l'emplacement spécifié
    • Chemin absolu:

      ...@...:~ $ cd /home/pi/test

    • Chemin relatif:

      ...@...:~ $ cd test

    • “Absolu” correspond au chemin en entier, alors que“Relatif” prend en compte le chemin à partir du chemin actuel (le second exemple ne marche que si vous êtes déjà dans /home/pi par exemple)
  2. mkdir <DOSSIER> : Créer un nouveau dossier au nom indiqué (dans le répertoire courant ou spécifié)
  3. mv <SRC> <DEST> : Déplace un fichier vers l'emplacement spécifié (permet aussi de renommer)
    • Un fichier:

      ...@...:~ $ mv test.txt /home/pi

    • Un dossier:

      ...@...:~ $ mv /home/pi/test /home/pi/test2

  4. more <FICHIER> : Affiche le contenu d'un fichier, page par page
    • Chemin absolu:

      ...@...:~ $ more test.txt

    • Chemin relatif:

      ...@...:~ $ more /home/pi/test.txt

      Dans les longs fichiers, il faut appuyer sur “Espace” pourpasser à la page suivante.

  5. ls (DOSSIER) : Lister les fichiers et dossiers présents dans l'emplacement indiqué
    • Dossier en cours:

      ...@...:~ $ ls

    • Dossier spécifié:

      ...@...:~ $ ls /home/pi/test

      Il existe plein d'options facultatives permettant de changer l'affichage du résultat, par exemple:

      ...@...:~ $ ls -latr /home/pi
  6. cp <SOURCE> <DEST> : Copie un fichier d'un emplacement à un autre
    1. Copier un fichier:

      ...@...:~ $ cp test.txt /home/pi

    2. Copie récursive:

      ...@...:~ $ cp -r /home/pi/test /home/user/

      Utilisez l'option récursive afin de copier un dossier et tout son contenu

  7. cat <FICHIER> : Affiche le contenu d'un fichier, sans pagination
    • Usage basique:

      ...@...:~ $ cat test.txt

    • Avec un jocker:

      ...@...:~ $ cat *.txt

  8. tail <FICHIER> : Affiche les dernières lignes d'un fichier
    • Base:

      ...@...:~ $ tail test.txt

    • Lignes à prendre:

      ...@...:~ $ tail -n20 test.txt

    • Temps réel:

      ...@...:~ $ tail -f test.txt

  9. head <FICHIER> : Similaire à la commande tail mais pour afficher le début d'un fichier
    • 10 lignes:

      ...@...:~ $ head test.txt

    • 20 lignes:

      ...@...:~ $ head -n20 test.txt

  10. grep : Grep est un outil puissant (mais complexe), permettant de faire des recherches
    • Rechercher valeur:

      ...@...:~ $ grep "dhcp" /var/log/syslog

    • Filtrer les résultats:

      ...@...:~ $ ls -latr | grep ".php"

    • Ou sur un script:

      ...@...:~ $ /home/pi/script.sh | grep error

    • Le pipe (|) vous permet d'exécuter une commande sur le résultat de la première
    • De nombreuses options avancées sontdisponibles:
      • Exp. régulières:

        ...@...:~ $ grep "dhcp\|dns" /var/log/syslog

      • Options diverses:

        ...@...:~ $ grep -A2 -B4 'Fatal error' /var/log/syslog

      • Recherche inversée:

        ...@...:~ $ grep -v 'Notice' /var/log/syslogi

  11. nano <FICHIER> : Ouvre un fichier pour modification. Nano est un éditeur de fichier très puissant
    • Usage basique:

      ...@...:~ $ nano /home/pi/test.txt

      Nano va créer le fichier s'il n'existe pas

  12. tar : Tar est le gestionnaire de fichiers compressés sous Linux
    • Créer un fichier:

      ...@...:~ $ tar -cvfz archive.tar.gz /home/pi/test

    • Extraire le contenu:

      ...@...:~ $ tar -xvfz archive.tar.gz

    • Options:
      • -c pour Compresser,
      • -x pour extraire
      • -v : mode verbeux,
      • -z : utilise gZip pour la compression,
      • -f spécifie le nom du fichier.
      • Utilisez “man tar” pour en savoir plus
  13. touch <FICHIER> : Crée un nouveau fichier (vide)
    • Dossier courant:

      ...@...:~ $ touch test.txt

    • Spécifique:

      ...@...:~ $ touch /home/pi/test.txt

    • La plupart du temps, on utilisera plutôt “nano”, car il permetde modifier le fichier directement
  14. rm <FICHIER> : Supprimer un fichier ou un dossier
    • Un fichier:

      ...@...:~ $ rm test.txt

    • Un dossier:

      ...@...:~ $ rm -rf /home/pi/test

    • L'option -rf sur un dossier permet de supprimer un dossier et tout son contenu (même s'il n'est pas vide).
  15. zip / unzip : Zip est similaire à tar, mais pour le format Zip (commun sous Windows)
    • Créer un fichier:

      ...@...:~ $ zip -r archive.zip /home/pi/test

    • Extraire le contenu:

      ...@...:~ $ unzip archive.zip

    • L'option -r permet de compresser tout le contenu dudossier.
    • L'option -d permet d'extraire à un emplacement spécifique.
    • Regardez “man zip” pour voir toutes les options disponibles
  16. pwd : Une commande simple pour afficher l'emplacement actuel
    • Exemple:pwd
  17. find : Find permet de faire une recherche sur votre Raspberry Pi
    • Trouver un fichier:

      ...@...:~ $ find /home/pi -iname test.txt

    • Filtrer les extensions:

      ...@...:~ $ find /home/pi -iname *.php

    • Se limiter aux dossiers:

      ...@...:~ $ find / -type d -iname test

    • -iname est insensible à la casse (contrairement à -name).
    • Vous pouvez utiliser “-type f” pour chercher uniquement les fichiers
  18. tree : Un autre outil permet d'afficher l'emplacement actuel, sous forme d'arbre
    • Dossier courant:

      ...@...:~ $ tree

    • Dossier spécifié:

      ...@...:~ $ tree /home/pi/

    • Il existe quelques options permettant de changer l'affichage du résultat, utilisez “man tree” pour en savoir plus
  19. Des options plus poussées:
    • Taille des fichiers:

      ...@...:~ $ find / -size +10M

      affiche tous les fichiers de plus de 10M

    • Date modification:

      ...@...:~ $ find /home -mtime -2

      -mtime -2 liste les fichiers modifiés depuis 48h

    • Lancer une commande sur les résultats:

      ...@...:~ $ find /var/log -iname *.log.gz -exec rm {} \;

      Le paramètre {} sera remplacé par les résultats

    • Consultez “man find” pour plus de détails

Commandes réseau

  1. ifconfig : Affiche votre configuration réseau actuelle(adresse ip notamment)
    • Usage:

      ...@...:~ $ ifconfig

    • Il est possible d'ajouter le nom de l'interface en paramètre si vous voulez: “ifconfig wlan0”.
  2. ifup / ifdown : Permet d'activer ou de désactiver une interface
    • Activation:

      ...@...:~ $ sudo ifup eth0

    • Désactivation:

      ...@...:~ $ sudo ifdown eth0

    • Cela peut être utile pour déactiver le Wi-Fi une fois connecté en câble par exemple.
  3. hostname : Affiche ou change le nom d'hôte du Raspberry Pi:
    • Affichage:

      ...@...:~ $ hostname

    • Configuration:

      ...@...:~ $ sudo hostname RaspberryZero

  4. ssh <USER>@<IP> : Connexion à un autre système via SSH
    • Exemple:ssh pi@192.168.1.1
  5. rsync : Similaire à scp mais avec davantage defonctionnalités
    • Syntaxe:

      ...@...:~ $ rsync <file> <user>@<ip>:<path>

    • Exemple:

      ...@...:~ $ rsync test.txt pi@192.168.1.1:/home/pi/

    • Copie locale:

      ...@...:~ $ rsync /home/pi/* /media/usb/

    • Copie distante récursive::

      ...@...:~ $ rsync -auzr /home/pi/Documents/* pi@192.168.1.1:/home/pi/Documents/

  6. iwconfig : Montre les informations concernant la connexion Wi-Fi (SSID, vitesse, …)
    • Usage:

      ...@...:~ $ iwconfig

    • NB: Vous pouvez également spécifier l'interface:

      ...@...:~ $ iwconfig wlan0

  7. ping <HOTE> : Vérifier si une machine est joignable sur le réseau
    • Usage:

      ...@...:~ $ ping 192.168.1.1

    • Consultez l'aide “man ping” pour toutes les options
  8. wget <URL> : Télécharge un fichier depuis la console
    • Usage:

      ...@...:~ $ wget http://192.168.1.1/test.txt

    • Spécifier le nom de fichier:

      ...@...:~ $ wget http://192.168.1.1/test.txt -Otarget.txt

  9. scp : Copie un fichier sur le réseau à travers SSH
    • Syntaxe:

      ...@...:~ $ scp <file> <user>@<ip>:<path>

    • Exemple:

      ...@...:~ $ scp test.txt pi@192.168.1.1:/home/pi/

Gestion des paquets

Sous Linux, chaque programme est un paquet, tout comme chaque dépendance

Vous téléchargez les paquets depuis un dépôt (serveur hébergeant les paquets)

Vous aurez besoin de l'outil apt pour rechercher, installer et mettre à jour les paquets sur Debian/Raspbian.

Toutes ces commandes nécessitent les droits administrateur, il faudra donc utiliser sudo.

  1. sudo apt update : Télécharge la liste des paquets à jour depuis le dépôt
    • Usage :

      ...@...:~ $ sudo apt update

    • Pour ajouter ou modifier les dépôts utilisés, vous pouvez éditer le fichier /etc/apt/sources.list et suivre les instructions
  2. sudo rpi-update : Met tout à jour sur votre Raspberry Pi. À utiliser en dernier recours
    • Usage :

      ...@...:~ $ sudo rpi-update

  3. sudo apt remove <PAQUET> : Désinstalle un paquet du système
    • Usage :

      ...@...:~ $ sudo apt remove vim

    • Je vous donne la commande permettant de lister les paquets installés juste après
  4. Installation manuelle : Parfois, vous devrez installer des paquets à la main,voici comment faire :
    1. Téléchargez le paquet avec wget :

      ...@...:~ $ wget https://www.realvnc.com/download/file/viewer.files/VNC-Viewer-6.19.325-Linux-ARM.deb

    2. Installez-le à la main :

      ...@...:~ $ sudo dpkg -i VNC-Viewer-6.19.325-Linux-ARM.deb

    • La commande dpkg -r permet de désinstaller un paquet s'il a été installé à la main
  5. sudo apt upgrade : Télécharge et installe les dernières mises à jour pour les paquets utilisés
    • Usage :

      ...@...:~ $ sudo apt upgrade

    • L'utilisation de “apt update” avant est obligatoire. L'option -y permet d'accepter automatiquement les mises à jour (sans confirmation)
  6. sudo apt install <paquet> : Installe le paquet spécifié sur votre système
    • Usage :

      ...@...:~ $ sudo apt install phpmyadmin

    • Utilisez la commande “search” ci-dessous pour trouver le nom exact d'un paquet
  7. sudo apt search : Très utile pour retrouver le nom d'un paquet
    • Usage :

      ...@...:~ $ apt search openjdk

    • Avec grep :

      ...@...:~ $ apt search openjdk | grep jre

    • L'utilisation de sudo est inutile pour cette commande
  8. Liste des paquets installés : Dpkg permet aussi d'afficher la liste des paquets installés sur votre système
    • Syntaxe :

      ...@...:~ $ sudo dpkg -l

    • Avec grep :

      ...@...:~ $ sudo dpkg -l | grep php

    • Lisez l'aide “man dpkg” pour connaître toutes les optionsdisponibles

Gestion du système

  1. reboot : Cette commande redémarre instantanément le Raspberry Pi
    • Usage :

      ...@...:~ $ sudo reboot

  2. service : Permet de gérer le fonctionnement des services du système
    • Démarrage :

      ...@...:~ $ sudo service apache2 start

    • Arrêt :

      ...@...:~ $ sudo service apache2 stop

    • Redémarrer :

      ...@...:~ $ sudo service apache2 start

    • Recharger:

      ...@...:~ $ sudo service apache2 reload

    • Utilisez “service <service>” pour connaitre toutes les options disponibles.
    • La touche TAB vous aidera à trouver le nom du service
  3. Liste des processus : Affiche tous les processus en cours
    • Usage basique :

      ...@...:~ $ ps aux

    • Filtrer par utilisateur :

      ...@...:~ $ ps -u pi

  4. htop : Une bonne alternative à “top” pour afficher l'état du système
    • Usage :

      ...@...:~ $ htop

    • Si htop n'est pas disponible, c'est qu'il faut d'abord l'installer:

      ...@...:~ $ sudo apt install htop

Commandes Raspbian

Commandes diverses

Commandes d'expert

Voir aussi


Basé sur « 74 Commandes pour Raspberry Pi » par raspberrytips.fr.