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… :-)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Dernière révision Les deux révisions suivantes
materiel:raspi:start-new [2019/05/18 19:40]
127.0.0.1 modification externe
materiel:raspi:start-new [2019/06/08 15:31]
admin
Ligne 1: Ligne 1:
 {{tag>​matériel Raspberry_pi BROUILLON}} {{tag>​matériel Raspberry_pi BROUILLON}}
 ====== Le Raspberry Pi ====== ====== Le Raspberry Pi ======
-===== - Compatibilité ===== 
-===== - Pré-requis ===== 
  
  
-===== - Installation sans clavier ni écran ni souris ===== 
  
-<WRAP center round info 60%> 
-Nous supposons ici que nous n'​avons pas d'​écran ni de clavier ni de souris à brancher sur le RPI. 
  
-Nous travaillons donc depuis un PC du réseau, via SSH ou VNC. 
-</​WRAP>​ 
- 
-==== - Préparation de la carte µSD ==== 
- 
-Sur un ordinateur, insérez la carte µSD dans un lecteur de cartes et formatez-la en FAT 32 : 
-  * sous **Windows**,​ utilisez l'​**outil de gestion des disques** (Windows 10 : clic droit sur le bouton Démarrer, autres Windows : clic droit sur l'​icône de l'​ordinateur sur le bureau) 
-  * sous **Linux**, utilisez **gparted** ou la version en ligne de commande (**parted**) 
- 
-=== - Avec NOOBS === 
- 
-Allez sur le site : [[https://​www.raspberrypi.org/​downloads/​noobs/​]]. 
- 
-Choisissez et téléchargez **NOOBS Lite** : 
- 
-{{:​materiel:​raspi:​noobs_lite.png|}} 
-=== - Avec PINN (fork de NOOBS) === 
- 
-Allez sur le site : [[https://​sourceforge.net/​projects/​pinn/​files/​]] 
- 
-Téléchargez la dernière version de **pinn-lite.zip**. 
- 
-=== - Ensuite, dans les deux cas === 
- 
-Ouvrez le fichier zip (double-clic) et extrayez son contenu à la racine de la carte µSD. 
- 
-Éditez le fichier **recovery.cmdline** et ajoutez le paramètre **vncinstall** à la fin de la ligne, ce qui donne par exemple : 
-<code - recovery.cmdline>​ 
-runinstaller quiet ... elevator=deadline vncinstall 
-</​code>​ 
- 
-=== - noobsconfig : personnaliser NOOBS === 
- 
-**noobsconfig** permet de personnaliser l'​installation d'une installation d'une distribution avec NOOBS 
- 
-++++ Cliquez pour voir comment | 
- 
-<WRAP center round tip 60%> 
-**noobsconfig** est intégré à PINN (un fork de NOOBS) : préférez donc PINN à NOOBS ; cela évite de devoir copier **noobsconfig.zip** et patcher les fichiers **partition_setup.sh** 
-</​WRAP>​ 
- 
-Ce dépôt contient des fichiers pour personnaliser l'​installation d'une installation distribution standard de NOOBS sur un Raspberry Pi. 
- 
-Quand NOOBS a installé les images **boot** **root** sur la carte SD, cette modification permet de copier, décompresser et extraire un ensemble personnalisé de fichiers sur chaque partition de la distribution en cours d'​installation. 
- 
-<WRAP center round important 60%> 
-Cela ne fonctionne qu'​avec la version standard de NOOBS et non avec NOOBS-lite. 
-</​WRAP>​ 
- 
-Voici une description rapide de la façon de l'​utiliser,​ suivie d'une description plus détaillée ​ . 
- 
-Démarrage rapide 
-  - Décompressez / copiez les fichiers NOOBS standard sur une carte SD vierge.  ​ 
-  - Décompressez / copiez le fichier **noobsconfig.zip** sur les fichiers noobs. (Cela écrase les fichiers partition_setup.sh pour chacune des distributions).\\ Votre carte SD NOOBS est maintenant modifiée pour prendre en charge les personnalisations. 
-  - Placez tous les fichiers de personnalisation dans les dossiers /os/distro. 
-  - Insérez votre carte SD dans le RPi et installez le système d'​exploitation souhaité comme d'​habitude  ​ 
- 
-### Customisation Files 
- 
-First, a brief explanantion about `flavours`. 
-For each distro NOOBS allows different `flavours`, which allow the same distro to be installed, but with slightly different customised options that are applied on first boot. Currently this feature is only used on Raspbian to allow booting into the desktop or straight to scratch, but it could be applied to any distro. In this documentation I use `flavour` to represent the "os name or flavour name". Typically a flavour name is the os name appended with a dash and the flavour. See `flavours.json` if it exists for your distro. 
- 
-Three types of customisation files can be used. They must all have the same base filename of `(flavour)_(partitionName)` and differ in the three extensions that may be used: 
-* `(flavour)_(partitionName).tar` 
-* `(flavour)_(partitionName).tar.xz` 
-* `(flavour)_(partitionName).txt` 
- 
-(Any spaces in the flavour or partitionName should be replaced by underscores) 
-The above files can be used individually or in combination. If more than one is found they are processed in the above order. They should be placed in the os/(distro) folder. 
-The .tar file will be un-tarred to the root of the appropriate partition. 
-The .xz file is assumed to be a compressed tar file and is treated in the same way after decompression. 
-The .txt file is used to install a list of files, each one on a separate line. These are described in more detail in Advanced Customisations below. 
- 
-### Repository Organisation 
-* noobsconfig - contains noobsconfig.zip to allow customisations to be made to a distro 
-* dev - contains the contents of noobsconfig.zip 
-* helpers - contains helper scripts to help create custom tarballs 
-* Examples - contains example customisations 
- 
-## Detailed Description 
- 
-### What can it be used for? 
-This method is for simple customisations of a distro. It behaves a bit like applying a patch file to the distro after it has been installed. 
-As such it can replace or add files to the distro, but not delete existing files. 
-Some examples of its use are therefore: 
-* setting up wifi so that it works "out of the box" (maybe useful for schools etc) 
-* installing script files to install other packages (either manually or on first boot - like raspi-config) 
-* provide standard configurations for config.txt (instead of requiring raspi-config to be executed on first execution) 
-* install a standard set of "​lesson support materials"​ into the `/home/pi` folder. 
- 
-### Benefits 
-* ideal for small customisations 
-* does not require the creation of a full customised OS 
-* independent of NOOBS distributions 
-* Simple to apply to the standard NOOBS download 
-* the same customisations can be quickly and easily applied to a subsequent update of the NOOBS download 
- 
-### What it doesn'​t do 
-Currently it does not execute user-defined scripts, it simply copies/​replaces existing files. 
-Whilst it could be used to copy entire packages onto the distro, this use is not recommended and it is suggested to follow the existing instructions to create a customised OS if the modifications are extensive. 
- 
-### Rationale 
-I like to use the latest version of NOOBS whenever it is released, ensuring I get all the latest updates and distro versions. 
-However, whenever I update to a new version, or reinstall a distro from NOOBS, I end up having to apply the same customisations and installations over and over again. 
-I've now learnt to create scripts for these common operations and a custom tarball that I can use to overwrite files like `/​etc/​network/​interfaces` etc. 
-But it's still an extra step to perform after NOOBS has finished. So I thought about how this could be applied automatically. 
- 
-From a simple enhancement suggestion, this has developed from extracting a tarball, to decompressing xz files, copying single files and setting owner and permission attributes for all distros and flavours. ​ 
- 
-The ability to patch using a flavour would be ideal for schools and others, it could save building full custom images and avoids having to rebuild it for every new release of Raspbian. It would also allow Zero-config setups, for instance you'd be able to configure NOOBS to auto-install a distro which has direct wifi networking enabled out of the box. 
-  
-## How does the noobsconfig customisation work? 
- 
-After noobs has installed a distro, it runs the `partition_setup.sh` script for that distro. 
-Unzipping noobsconfig.zip over noobs replaces the partition_setup.sh files with a new version that adds a single line that executes customise.sh. This customise.sh script looks for files in the distro folder with a basename of (flavour)_(partitionName) and an extension of either `.tar`, `.tar.xz` or `.txt`. (The contents of noobsconfig.zip can be found in the `dev` folder.) 
- 
-Note that `(flavour)` and `(partitionName)` must exactly match (in characters and case) the names provided in the `*.json` files that describe each OS in order for them to be recognised. Any spaces should be replaced with underscores. 
-So, for the standard v1.3.4 installation of noobs, the following base filenames are valid: 
-<pre> 
-Arch_boot 
-Arch_root 
-Data_Partition_data 
-OpenELEC_Storage 
-OpenELEC_System 
-Pidora_boot 
-Pidora_rootfs 
-Raspbian_boot 
-Raspbian_root 
-Raspbian_-_Boot_to_Scratch_boot 
-Raspbian_-_Boot_to_Scratch_root 
-RaspBMC_boot 
-RaspBMC_root 
-</​pre>​ 
- 
-If a file is found with the appropriate base filename above and one of the following extensions, then the following actions are carried out: 
-A filename ending in `.tar` is untarred onto the appropriate partition. 
-A filename ending in `.tar.xz` is decompressed,​ and untarred onto the appropriate partition. 
- 
-So to add/replace some custom files on your distro, you just need to create a tar ball with the correct name, optionally compress it using XZ, drop it into the distro folder and install the distro as usual - simples! Some helper scripts are provided to help create these tarballs (see the Helpers folder). 
- 
-(A filename with the appropriate basename ending in `.txt` is processed according to the Advanced Customisation section described below.) 
- 
-If you add any other distros, flavours or OS partition names, you need to name the custom files according to the filename format above and add the following line to the partition_setup.sh script for that distro: 
-        `if [ -e /​mnt/​customise.sh ]; then . /​mnt/​customise.sh;​ fi` 
-This technique can also be used on the data partition - just create a partition_setup.sh file containing just this line. However, it is not really necessary as you could more easily just replace the original data.tar.xz file with your own, since it only contains a README.txt file. 
- 
-### How to Create a Custom Tarball 
- 
-These instructions assume you already have a working installation of a distro on the RPi and you want to capture the customisations you have made for future installations of the same distro. 
- 
-1. Firstly you need to start from a working installation of the distro. I suggest you use NOOBS to install the distro first. 
-2. Modify any existing, or create any new files that you want to be included in your customisation. 
-3. For manageability I suggest creating a simple text file that contains a list of all the new/​modified files that you want, with one fullpathname on each line. 
-For example: 
- 
-```$>​sudo nano files.txt<​br>​ 
-/​etc/​network/​interfaces 
-/​etc/​init.d/​rc.local 
-``` 
- 
-4. Now create the tar ball using this text file as input, as follows: 
- 
-```$>​sudo tar cvf &​lt;​flavour&​gt;​_&​lt;​partitionName&​gt;​.tar -T files.txt 
-$>sudo xz &​lt;​flavour&​gt;​_&​lt;​partitionName&​gt;​.tar 
-``` 
- 
-(See the Helpers folder for alternative ways to do this using scripts). 
-5. Copy the tarball to the appropriate OS folder. 
- 
-### Advanced Customisation 
-Sometimes, you may want to have greater control over your customisations. Maybe you want to: 
-* segregate them into separate tar files for distinct uses. 
-* give them better names according to their use. 
-* have easier control over which ones should be installed. 
-* share files between different flavours of the same distro. 
-* provide raw files that are not tarred or compressed, e.g. by direct copying on to the recovery partition using Windows. 
-For these and other uses, the (flavour)_(partitionName).txt file can be useful. 
- 
-This text file contains a list of files (one per line) to be installed to the distro AFTER the above `.tar` or `.tar.xz` files have been installed. ​ In this way some tweaks can be applied to existing .tar files without having to modify/​rebuild them. 
- 
-The text file is processed a line at a time to extract the filenames to be processed. 
-Any filename ending in `.tar` is untarred to the root of the partition. 
-Any filename ending in `.tar.xz` is decompressed and then untarred to the root of the partition. 
-Any other filename is copied directly to the partition. 
- 
-NOTE: If you are already using a `(flavour)_(partitionName).tar(.xz)` file, you should NOT specify it in this text file as well, otherwise it would be installed twice. 
- 
-If you are directly copying files, you may need to provide additional information in the form of optional fields on the same line. 
- 
-There are five fields as follows (separated by spaces): 
- 
- Filename destination attributes user group 
- 
-Only the filename field is mandatory and it is the only field used for TAR and XZ files; the others can be omitted and default values will then be applied. If you want to omit a field but follow it with another field, then use a '#'​ instead to keep the relative placement of the fields. 
- 
-Blank lines will be ignored. 
-Comments can be added by starting the line with a '#'​ in the first column, or adding the comment after field 5. 
- 
-Here are some examples to illustrate this: 
-* Readme.txt 
-* Readme.txt # 0644 
-* nc-helpers.tar 
-* wifi/​interfaces /​etc/​network 0644 root root 
-* wifi/​wpa_supplicant.conf /​etc/​wpa_supplicant 0600 root root 
- 
-(The last 2 examples above show how using this direct copy technique, it is possible to specify the '/​etc/​network/​interfaces'​ and '/​etc/​wpa_supplicant/​wpa_supplicant.conf'​ files for easy wifi setup from Windows, whilst specifying the correct attributes and avoiding the problem of creating Tar files from Windows.) 
- 
-#### Filename 
-This is the name of the file you want to copy from the recovery partition. 
-It can be stored in the /os/distro folder, or any subfolder. If you put it in a subfolder then this must be specified. 
-e.g.  
-To copy the file `/​os/​Raspbian/​readme.txt`,​ use `readme.txt` 
-To copy the file `/​os/​Raspbian/​folder/​readme.txt`,​ use `folder/​readme.txt` 
-The folder name is only used to locate the source file. It is not used as part of the destination folder. 
-This field is mandatory. 
- 
-If you need to include a filename that has embedded spaces in it, then you must enclose it in double quotation marks: 
-e.g. 
-* "my wifi/​interfaces"​ /​etc/​network 0644 root root 
- 
-#### Destination 
-This is the name of the destination folder where the file is to be stored on the target partition, relative to the root. E.g. `/home/pi`. It must begin with a slash, but have no trailing slash. 
-This field is optional. If not specified, then the root directory is used. 
-If you need to include a destination pathname that includes embedded spaces,then enclose this in double quotations. 
- 
-#### Attributes 
-This specifies the attributes to be applied to the new file using the chmod command. e.g. `0644`. I guess options such as `+x` would also work but I've not tried. 
- 
-#### User 
-This specifies the new user of the file e.g. `pi` or `root` etc. 
- 
-#### Group 
-This specifies the new group of the file e.g. `root` 
- 
-### Selecting a Method of customisation 
-It can be confusing to decide which type of customisation to use, so here is a short guide. 
-* TAR files are very convenient when there are many related files to be installed, possibly in different folders, and where file permissions or ownership are important. They capture the contents, ownership and permissions of each file into a single TAR file which is then easily managed. So they are best created directly on an existing distro on the RPi. Not so many compression programs allow you to create a TAR file on Windows (7-zip can), but nevertheless,​ the file permissions and attributes cannot be set. Plain TAR files are not compressed and append 2 blocks of 512 bytes at the end. So the minimum size of a TAR file is 10kB. This can be quite an overhead if you only want to install a couple of small script files. 
-* TAR.XZ files are TAR files that have been compressed using the XZ program. They therefore retain the advantages of the TAR file's manageability,​ but also avoid the TAR file's largish size. It is best to compress them on the RPi, but it can be done on another Linux distro, but not so easily on Windows. 
-* If you want to create your customisation on Windows, referencing files from the TXT file may be the easiest method. This does not provide any compression,​ nor does it collect the separate files into one single file for manageability. However, it does provide control of user permissions and ownership. This is also a convenient method if you only want to install 1 or 2 small files. If you are creating script files on Windows, be careful to choose Linux line endings. Some editing programs, like Notepad++ allow you to visualise the line endings and change them from Windows to Linux and vice versa. 
- 
-## Testing & Retrospective customisation 
- 
-Since noobsconfig executes after NOOBS has installed a distro, it can be a lengthy process to test any customisations as they are developed, because each test potentially means installing a distro and waiting to see the result. Also, if you already have a Raspbian distro installed by noobs, then you probably don't want to have to overwrite it all just to test your scripts. Or maybe you have created a new '​flavour'​ to install your customisations and you want to install them onto your existing distro that was installed as another flavour. 
- 
-There is a script called `retro.sh` that is placed on the root of the recovery partition to aid testing, or to apply a customisation retrospectively,​ i.e. after a distro has already been installed by NOOBS. 
- 
-The purpose of `retro.sh` is to apply a set of customisations from the recovery partition to the currently installed distro, after that distro has been installed and is now executing. It works on a partition at a time, so if your distro has 2 partitions that you want to customise, you need to run it once for each partition. It requires a bit of work to setup the environment first, and a few arguments to tell it what it does, but these are easily captured into a script. 
- 
-The main thing that needs to be done is to mount the recovery partition so that it is accessible. Also note that the installation has to be done by the root user (or using sudo) since it may need to (over)write system files. 
- 
-### retro.sh 
-Usage: sudo ./retro.sh [source folder] [destination folder] [(flavour)_(partitionName)] 
-Example1: sudo ./retro.sh /​mnt/​os/​Raspbian / Raspbian_root 
-Example2: sudo ./retro.sh /​mnt/​os/​Raspbian /boot/ Raspbian_boot 
- 
-### Example use of retro.sh 
-Here is an example script file that automates the retrospective installation or testing of a Raspbian customisation. 
- 
-    #!/bin/sh 
-    # Make sure only root can run our script 
-    if [ "$(id -u)" != "​0"​ ]; then 
-       echo "This script must be run as root" 1>&2 
-       exit 1 
-    fi 
-    ​ 
-    #Mount the recovery partition 
-    mount /​dev/​mmcblk0p1 /mnt 
-    cdir=`pwd` 
-    cd /mnt 
-    #Install the customisations 
-    ./retro.sh /​mnt/​os/​Raspbian /boot/ RaspbianMyFlavour_boot 
-    ./retro.sh /​mnt/​os/​Raspbian / RaspbianMyFlavour_root 
-    #​Restore ​ 
-    cd $cdir 
-    sync 
-    sleep 1 
-    umount /mnt 
-    echo "​Customisation done." 
- 
-## Further Examples 
-You will find some examples of how to apply some configurations to Raspbian in the Examples/​Raspbian folder. 
-Please see zeroconf_wifi.md for a very quick setup of a WPA/WPA2 wifi network. 
-I welcome other examples, particularly for the other Linux distros. 
-++++ 
-==== - Avec PINN (fork de NOOBS) ==== 
- 
-Allez dans le répertoire **/os** : 
-  * <​code>​cd /​media/​.../​os</​code>​ 
- 
-Créez-y un répertoire Raspbian : 
-  * <​code>​mkdir Raspbian</​code>​ 
- 
-Allez dans ce répertoire : 
-  * <​code>​cd Raspbian</​code>​ 
- 
-Créez-y un fichier ssh vide : 
-  * <​code>​touch ssh</​code>​ 
- 
-Créez enfin dans le répertoire **/​os/​Raspbian** un fichier **Raspbian_boot.txt** contenant : 
- 
-<code - Raspbian_boot.txt>​ 
-ssh 
-</​code>​ 
- 
-=== - Avec NOOBS === 
- 
-Démontez la carte µSD et installez-la sur votre RPI. 
- 
-Branchez le câble réseau et l’alimentation du RPI : le RPI démarre. Attendez que les clignotements se calment. 
- 
-Débranchez l’alimentation du RPI, retirez la carte µSD et replacez-la sur votre PC. 
- 
-Créez un fichier **ssh** vide : 
-  * <​code>​touch /​chemin_vers_votre_carte/​boot/​ssh</​code>​ 
- 
-Démontez la carte et remettez-la sur le RPI. 
-==== - Premier démarrage du RPI ==== 
- 
-Insérez la carte µSD dans votre RPI, branchez le câble réseau et connectez l'​alimentation : le RPI démarre. Attendez que les clignotements se calment. 
- 
-=== - Premier démarrage du RPI === 
- 
- 
-Installez-vous sur un PC du réseau. 
- 
-Tout d'​abord,​ il faut retrouver l’adresse IP du RPI. 
- 
-Pour cela, installez le paquet **[[apt>​nmap]]**,​ ou en ligne de commande : 
-  * <​code>​sudo apt install nmap</​code>​ 
- 
-Pour connaître l'IP du PC sur lequel vous travaillez, lancez : 
-  * <​code>​ifconfig</​code>​ 
- 
-Exemple de réponse de la commande : 
-<​code>​eth0 ​     Link encap:​Ethernet ​ HWaddr XXXXXXXXXXXXX 
-          inet adr:​192.168.0.1 ​ Bcast:​XXX.XXX.X.XXX ​ Masque:​255.255.255.0 
-</​code>​ 
-L’adresse IP de ma machine est donc 192.168.0.1,​ ce qui veut dire que le RPI est sur une adresse en 192.168.1.xxx. Il faut donc scanner le réseau : 192.168.0.0/​24. 
- 
-Lancez **nmap** : 
-  * <​code>​sudo nmap -O 192.168.0.0/​24</​code>​ 
- 
-Le résultat est un peu long, voici la partie qui nous intéresse : 
-<​code>​Nmap scan report for framboise.parc (192.168.0.31) 
-Host is up (0.00017s latency). 
-Not shown: 999 closed ports 
-PORT   STATE SERVICE 
-22/tcp open  ssh 
-MAC Address: B8:​27:​EB:​F5:​F4:​F3 (Raspberry Pi Foundation)</​code>​ 
- 
-Le RPI a donc l'​adresse IP : **192.168.0.31** 
- 
-Téléchargez vncviewer sur [[https://​www.realvnc.com/​download/​viewer/​]]. 
- 
-Décompressez-le sur le bureau. Lancez-le (double-clic) et connectez-vous en VNC au RPI : 
- 
- 
- 
-Votre RPI démarre dans PINN et affiche une liste des systèmes d'​exploitation que vous pouvez choisir d'​installer. 
-==== - Préparation de la carte SD ==== 
- 
-Formatez la carte microSD en FAT32 (sous Windows, avec la gestion des disques ; sous Linux, avec Gparted) 
-=== - Avec NOOBS === 
- 
-Installez-vous sur un PC du réseau. 
- 
-Tout d'​abord,​ il faut retrouver l’adresse IP du RPI. 
- 
-Pour cela, installez le paquet **[[apt>​nmap]]**,​ ou en ligne de commande : 
-  * <​code>​sudo apt install nmap</​code>​ 
- 
-Pour connaître l'IP du PC sur lequel vous travaillez, lancez : 
-  * <​code>​ifconfig</​code>​ 
- 
-Exemple de réponse de la commande : 
-<​code>​eth0 ​     Link encap:​Ethernet ​ HWaddr XXXXXXXXXXXXX 
-          inet adr:​192.168.0.1 ​ Bcast:​XXX.XXX.X.XXX ​ Masque:​255.255.255.0 
-</​code>​ 
-L’adresse IP de ma machine est donc 192.168.0.1,​ ce qui veut dire que le RPI est sur une adresse en 192.168.1.xxx. Il faut donc scanner le réseau : 192.168.0.0/​24. 
- 
-Lancez **nmap** : 
-  * <​code>​sudo nmap -O 192.168.0.0/​24</​code>​ 
- 
-Le résultat est un peu long, voici la partie qui nous intéresse : 
-<​code>​Nmap scan report for framboise.parc (192.168.0.31) 
-Host is up (0.00017s latency). 
-Not shown: 999 closed ports 
-PORT   STATE SERVICE 
-22/tcp open  ssh 
-MAC Address: B8:​27:​EB:​F5:​F4:​F3 (Raspberry Pi Foundation)</​code>​ 
- 
-Le RPI a donc l'​adresse IP : **192.168.0.31** 
- 
-Téléchargez vncviewer sur [[https://​www.realvnc.com/​download/​viewer/​]]. 
- 
-Décompressez-le sur le bureau. Lancez-le et connectez-vous en VNC au RPI : 
- 
-{{:​materiel:​raspi:​vnc_viewer_001.png|}} 
- 
-Renseignez dans la case l'​adresse IP du RPI et cliquez sur <​key>​Ouvrir une session</​key>​ 
- 
-Renseignez : 
-  * le nom d'​utilisateur (**pi**) 
-  * son mot de passe (**raspberry**) 
- 
-L'​écran du RPI apparaît : 
- 
-{{:​materiel:​raspi:​vnc-001.png|}} 
-  - Choisissez la langue et le clavier français 
-  - cochez Raspbian 
-  - cochez éventuellement Data Partition si vous voulez créer une partition ext4 de 512 Mo 
-  - cliquez sur le bouton <​key>​Réseaux Wi-fi</​key>,​ sélectionnez votre réseau et donnez son mot de passe\\ {{:​materiel:​raspi:​vnc-002.png|}} 
-  - cliquez sur le bouton <​key>​Installer</​key>​ : le téléchargement et l'​installation démarrent. 
- 
-Quand l'​installation est terminée : 
- 
-{{:​materiel:​raspi:​noobs_fin.png|}} 
- 
-Cliquez sur <​key>​OK</​key>​ 
- 
-Le RPI redémarre et la connexion VNC se coupe : Fermez Remmina. 
- 
-Il reste à autoriser l'​accès au RPI via SSH. Pour cela, 
-  * coupez l'​alimentation du RPI, 
-  * retirez la carte µSD 
- 
-Sur votre PC, mettez la carte sur le lecteur : trois partitions se montent : SETTINGS, boot et root. 
- 
-  * Ouvrez un terminal, allez sur la partition **boot**<​code>​cd /​media/​[USER]/​boot</​code>​([USER] = nom de l'​utilisateur en cours) 
-  * et créez un fichier vide nommé **ssh** :<​code>​touch ssh</​code>​ 
- 
-Démontez la carte µSD et installez-la sur votre RPI. Rallumez le RPI. 
- 
-Sur votre PC, lancez **nmap** : 
-  * <​code>​sudo nmap -O 192.168.0.31</​code>​ 
- 
-<​code>​Nmap scan report for framboise.parc (192.168.0.31) 
-Host is up (0.00017s latency). 
-Not shown: 999 closed ports 
-PORT   STATE SERVICE 
-22/tcp open  ssh 
-MAC Address: B8:​27:​EB:​F5:​F4:​F3 (Raspberry Pi Foundation)</​code>​ 
- 
-La connexion SSH est disponible. Voici comment la lancer. 
- 
-Par défaut à l’installation,​ le nom d’utilisateur est pi et le mot de passe raspberry. 
- 
-Pour vous connecter en SSH au RPI, lancez : ssh nom_utilisateur@ip-de-la-machine soit ici : 
-  * <​code>​ssh pi@192.168.0.31 
- 
-pi@192.168.1.101'​s password:</​code>​ 
- 
-Donnez le mot de passe (raspberry) et validez. 
- 
-A la première connexion acceptez la demande d’autorisation de clé de cryptage du SSH ; nous voila connecté sur la Raspberry : 
- 
-<​code>​Linux raspberrypi 3.12.22+ #691 PREEMPT Wed Jun 18 18:29:58 BST 2014 armv6l 
- 
-The programs included with the Debian GNU/Linux system are free software; 
-the exact distribution terms for each program are described in the 
-individual files in /​usr/​share/​doc/​*/​copyright. 
- 
-Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent 
-permitted by applicable law. 
-pi@raspberrypi ~ $</​code>​ 
- 
-La dernière ligne, le prompt, montre que nous ne sommes plus sur la console de notre pc mais sur celle du Raspberry. 
- 
-Première opération : mises à jour. Lancez : 
-  * <​code>​sudo apt update 
-sudo apt upgrade</​code>​ 
- 
-L'​opération est longue : patience... 
- 
-Lancez la configuration : 
-  * <​code>​sudo raspi-config</​code>​ 
- 
-{{:​materiel:​raspi:​raspi-config-001.png|}} 
- 
-Utilisez le clavier (flèches et tabulation pour vous déplacer et sélectionner) 
-  - Changez le mot de passe de l'​utilisateur 
-  - Nom du RPI sur le réseau (chez moi : framboise) 
-  - Options pour le boot 
-  - Langue choisissez fr-FR-UTF8 
-  - Connexions aux périphériques : activez SSH et VNC 
-  - Overclock 
-  - Options avancées 
-  - Mise à jour de raspi-config 
- 
-++++ Cliquez pour voir comment installer aussi automatiquement le wi-fi | 
-  * Téléchargez **noobsconfig** ici : [[https://​github.com/​procount/​noobsconfig]] (cliquez sur <​key>​Clone or Download</​key>​ et choisissez Download) 
-  * Décompressez le fichier zip -> répertoire **noobsconfig-master** 
-  * Dans le répertoire **noobsconfig-master**,​ décompressez le fichier **noobsconfig.zip** -> répertoire **noobsconfig** 
-  * Copiez le contenu du répertoire **noobsconfig** à la racine de la clé (cela écrasera les fichiers **partition_setup.sh** pour chaque distribution). 
-  * Dans le répertoire **os** de la clé, ne gardez que le sous-répertoire **Raspbian** (effacez les autres). 
-  * Dans le répertoire **noobsconfig-master** téléchargé,​ allez dans le répertoire **Examples/​Raspbian** 
-  * Copiez le contenu du sous-répertoire **wifi** dans le répertoire **os/​Raspbian** de votre clé. 
-  * Sur votre clé, ouvrez le fichier **os/​Raspbian/​wifi/​wpa_supplicant.conf** pour renseigner le **SSID** et la **passphrase** de votre réseau. 
-++++ 
- 
- 
-=== - sans NOOBS === 
- 
-(d'​après [[https://​raspbian-france.fr/​creation-carte-sd-raspberry-raspbian-sous-gnulinux/​|Installer une carte SD Raspberry avec Raspbian sous GNU/​Linux]]) 
- 
-<hidden cliquez ici pour en savoir plus> 
-Pour cela, vous aurez besoin : 
-  * d’une carte SD 
-  * d’un PC sous Linux 
-  * d'un lecteur de carte microSD (interne ou externe, si possible multi-formats). 
- 
-Si vous ne possédez pas de PC sous Linux, vous pouvez utiliser une Live Distribution sur une clef USB (si possible usb3 avec une très bonne vitesse) 
- 
-Téléchargez le fichiez zip de **Raspbian** ici : [[http://​downloads.raspberrypi.org/​raspbian_latest]]. Dézippez-le pour obtenir un fichier ***.img** 
- 
-Enregistrez-la où vous voulez sur le PC (par défaut dans le dossier **~/​Téléchargements**) 
- 
-Insérez la carte micro-SD dans un lecteur de carte. Linux ne monte pas toujours automatiquement la carte SD. 
- 
-Repérez la carte SD (**/​dev/​sdX** ou **/​dev/​mmX**) : 
-  * soit avec l'​utilitaire **Disques** en examinant les propriétés de la carte micro-SD. 
-  * soit en lançant<​code>​sudo ls -ltr /​dev/​*</​code>​pour lister les dev ; le nom de votre carte devrait apparaître dans les derniers résultats, de la forme **mmX**, ou **sdX** (X étant les numéros de partition). 
- 
-Il est possible que vous ayez plusieurs fois le même nom, avec un chiffre à la fin (ex. : sdb, sdb1). 
- 
-La carte à utiliser pour la commande suivante est celle sans chiffre à la fin (ex. : sdb), c’est-à-dire la carte entière, et non pas une de ses partitions. 
- 
-Notez le __nom de la clé sans numéro de partition__ (ex. : __sdb__ et non sdb<​del>​1</​del>​). 
- 
-Copiez Raspbian sur la carte SD, en utilisant la commande : 
-  * <​code>​sudo dd bs=1M if=chemin_vers_le_img_de_raspbian of=/​dev/​sdX</​code>​ 
- 
-L’écriture de Raspbian sur la carte SD peut être longue, c'est normal. 
- 
-Plus simple : utilisez l'​utilitaire graphique Etcher à télécharger sur [[https://​etcher.io/​]] qui vous indiquera le déroulement de l'​opération et qui fera une vérification. 
- 
-Quand le terminal vous rend la main, pour activer SSH, Créez un fichier **ssh** (()) dans le répertoire /boot/. Le contenu du fichier n'a pas d'​importance : il peut contenir un texte ou même rien du tout. 
- 
-Lorsque le Pi démarre, il recherche ce fichier ; s'il le trouve, il active SSH puis supprime le fichier. 
- 
-Vous pouvez retirer votre carte SD : Raspbian est installé dessus. 
- 
-voir la page [[logiciel:​systeme:​os:​raspi:​raspbian]] 
- 
-et [[logiciel:​systeme:​os:​raspi:​berryboot|]] 
-</​hidden>​ 
-==== - Premier démarrage ==== 
- 
-  * Installez sur votre RPI la carte micro-SD préparée, 
-  * branchez le câble réseau 
-  * et l’alimentation du RPI. 
- 
-LE RPI démarre Attendez que les clignotements se calment. 
-==== - Retrouver l'​adresse du RPI sur le réseau ==== 
- 
-Placez-vous devant un PC du réseau. 
- 
-Nous allons scanner le réseau pour retrouver les IP des machines présentes, dont le RPI. 
- 
-Installez le paquet **[[apt>​zenmap]]**,​ ou en ligne de commande : 
-  * <​code>​sudo apt install -y zenmap</​code>​ 
- 
-Pour connaître l'IP du PC sur lequel vous travaillez, lancez **ifconfig** : 
-  * <​code>​ifconfig</​code>​ 
- 
-<WRAP center round info 60%> 
-Par exemple, 
-  * si vous lisez à la rubrique **inet adr** l'​adresse IP de la machine **192.168.0.60**,​ 
-  * c'est que le réseau est **192.168.0** 
-  * et que l'​adresse du RPI est de la forme **192.168.0.***. 
- 
-Le réseau à scanner est donc **192.168.0.0.***. 
-</​WRAP>​ 
- 
-Lancez **zenmap** et renseignez : 
-  - **cible** : le réseau trouvé ci-dessus (ici **192.168.0.***) 
-  - **profil** : **Quick scan plus** 
-  - et lancez le scan. 
- 
-Après un temps assez long, le résultat s'​affiche. Recherchez le RPI : 
- 
-{{:​materiel:​raspi:​zenmap-001.png|}} 
-  - adresse MAC : ... **Raspberry Pi Foundation** (c'est bien notre RPI) 
-  - adresse IP du RPI sur le réseau :​**192.168.0.6** 
-  - le serveur vnc est actif. 
- 
-<WRAP center round tip 60%> 
-Vous auriez pu aussi : 
-  * lire la table DHCP de votre box qui donne la liste des ordinateurs connectés et leur IP. 
-  * ou utiliser une tablette sous Android connectée à votre réseau local, installer **fing** et scanner votre réseau, ce qui vous donnera la liste des machines connectées ainsi que leur IP, leur adresse MAC, et vous permettra aussi de connaître les services actifs sur chacune d’elles. 
-</​WRAP>​ 
- 
-==== - Connexion via VNC ==== 
- 
-Sur votre PC, Installez le paquet **[[apt>​remmina]]** ou en ligne de commande : 
-  * <​code>​sudo apt install -y remmina</​code>​ 
- 
-Lancez Remmina et connectez-vous en VNC au RPI : 
- 
-{{:​materiel:​raspi:​remmina-001.png|}} 
-  - choisir VNC 
-  - adresse IP du RPI 
-  - Cliquez sur <​key>​Connecter !</​key>​ 
- 
-L'​écran du RPI apparaît : 
- 
-{{:​materiel:​raspi:​vnc-001.png|}} 
- 
-  - Choisissez la langue et le clavier français 
-  - cochez Raspbian 
-  - cochez Data Partition 
-  - cliquez sur le bouton <​key>​Réseaux Wi-fi</​key>​ et sélectionnez votre réseau ainsi que son mot de passe\\ {{:​materiel:​raspi:​vnc-002.png|}} 
-  - cliquez sur le bouton <​key>​Installer</​key>​ 
- 
-Dans le message qui s'​affiche,​ cliquez sur <​key>​Oui</​key>​ 
- 
-Quand l'​installation est terminée, cliquez sur <​key>​OK</​key>​ 
-==== - Connexion SSH ==== 
- 
-Lancez une session SSH sur l'​adresse du RPI sous l'​utilisateur **pi** : 
-  * <​code>​ssh pi@192.168.0.31</​code>​ 
- 
-<WRAP center round info 60%> 
-En cas de réinstallation,​ Il se peut qu'un message s'​affiche : 
- 
-{{ :​materiel:​raspi:​erreur1.png |}} 
- 
-Dans ce cas, faites : 
-  * <​code>​ssh-keygen -f "/​home/<​...>/​.ssh/​known_hosts"​ -R 192.168.0.31</​code>​ 
- 
-comme demandé et recommencez. 
-</​WRAP>​ 
- 
-{{ :​materiel:​raspi:​ssh-01.png |}} 
- 
-Répondez **yes** à la demande de confirmation de clé pour cette première mise en route. 
- 
-A la demande de mot de passe, tapez **raspberry** (réglage d'​usine). 
- 
-{{ :​materiel:​raspi:​ssh-02.png |}} 
- 
-En dernière ligne, le prompt confirme que vous n'​êtes plus sur la console du pc mais sur celle du RPI. 
- 
-<WRAP center round tip 60%> 
-__**Astuce : accéder au RPI sans fournir de mot de passe**__ 
-<​hidden>​ 
-Pour ne pas avoir à fournir le mot de passe à chaque connexion SSH au RPI, créez une clef sur le PC : 
-  * <​code>​ssh-keygen -t dsa</​code>​ 
- 
-Répondez <​key>​Entrée</​key>​ à chaque fois pour ne pas avoir de mot de passe et acceptez les noms de fichier. ​ 
- 
-Envoyez la clé publique ainsi générée au RPI : 
-  * <​code>​ssh-copy-id pi@framboise.local</​code>​ 
- 
-Reconnectez-vous au RPI : 
-  * <​code>​ssh pi@framboise.local</​code>​ 
- 
-et donnez une dernière fois le mot de passe. 
- 
-Déconnectez-vous. Maintenant, vous pouvez vous connecter au RPI via SSH sans mot de passe. 
- 
-Pour automatiser cette connexion, créez avec les droits d'​administration le fichier **~/​.ssh/​config** pour y écrire ceci : 
-<code - ~/​.ssh/​config>​ 
-Host framboise 
-User pi 
-Hostname framboise.local 
-Port 22 
-CheckHostIP no 
-LocalForward 5900 127.0.0.1:​5900 
-Compression yes 
-ForwardX11 yes 
-</​code>​ 
-<WRAP center round info 60%> 
-Il suffit maintenant de : 
-  * <​code>​ssh framboise</​code>​ 
- 
-pour lancer une session SSH sur le RPI 
-  * sous l'​utilisateur **pi** 
-  * sans mot de passe 
-  * et en mode graphique 
-</​WRAP>​ 
-</​hidden>​ 
-</​WRAP>​ 
- 
-==== - Configuration de Raspbian ==== 
- 
-Lancez une session SSH sur le RPI : 
-  * <​code>​ssh framboise</​code>​ 
- 
-Lancez la commande : 
-  * <​code>​sudo raspi-config</​code>​ 
- 
-{{ :​materiel:​raspi:​raspi-config-01.png |}} 
- 
-=== - Utiliser toute la carte === 
- 
-Pour utiliser toute la carte, positionnez-vous sur le premier choix **Expand Filesystem**. 
- 
-{{ :​materiel:​raspi:​raspi-config-01.png |}} 
- 
-Avec la touche <​key>​Tab</​key>,​ sélectionnez **<​Select>​** et tapez <​key>​Entrée</​key>​ ». 
- 
-Des lignes de commandes s'​exécutent puis un message vous informe de la réussite de l’opération. 
- 
-Validez, vous êtes renvoyé sur le menu. 
- 
-=== - Passer Raspbian et le RPI en français === 
- 
-Sélectionnez le quatrième choix, **Internationalisation Options** et appuyez sur <​key>​Entrée</​key>​. 
- 
-{{ :​materiel:​raspi:​raspi-config-02.png |}} 
- 
-Dans le menu qui s'​affiche,​ choisissez la première ligne, **Change Locale**. 
- 
-Dans la fenêtre qui s'​affiche au bout d'un moment, descendez jusqu’à la ligne **en_GB.UTF-8 UTF-8** et sélectionnez-la en appuyant sur la touche <​key>​Espace</​key>​. Un astérisque apparaît entre les crochets précédent le choix (si la ligne est déjà sélectionnée,​ gardez-la sélectionnée,​ c’est à dire avec un astérisque affiché entre les crochets). 
- 
-Même opération pour la ligne **fr_FR.UTF-8 UTF-8**. 
- 
-Avec la touche <​key>​Tabulation</​key>,​ sélectionnez le champ **<​Ok>​** et tapez <​key>​Entrée</​key>​. 
- 
-Une nouvelle fenêtre demande de choisir les langues par défaut. Déplacez-vous sur **fr_FR.UTF-8** 
- 
-Avec la touche <​key>​Tabulation</​key>,​ sélectionnez le champ **<​Ok>​** et tapez <​key>​Entrée</​key>​. 
- 
-Le système va de nouveau exécuter des commandes et revient au menu (en anglais, c’est normal). 
- 
-Pour passer le clavier en AZERTY, choisissez de nouveau la quatrième ligne **Internationalisation options**. 
- 
-Dans le menu qui s'​affiche,​ choisissez cette fois la troisième ligne **Change Keyboard Layout**. 
- 
-<WRAP center round important 60%> 
-Via ssh, on est directement ramené au menu principal car aucun clavier n'est branché au RPI... 
- 
-Si vous mettez un clavier par la suite, relancez raspi-config pour exécuter ce paragraphe. 
-</​WRAP>​ 
- 
-Sur la nouvelle fenêtre, validez directement sans changer le type de clavier. Sauf cas particuliers,​ ce devrait être le bon. 
- 
-Dans la nouvelle fenêtre qui apparaît, choisissez **Autre**, puis le clavier **Français**,​ puis la disposition **Par défaut**, **Pas de touche « compose »** et enfin **<​Non>​**. 
- 
-Vous êtes de retour sur le menu principal. 
- 
-Utilisez la touche tabulation pour choisir **Finish** et validez. répondre **non** si une fenêtre vous demande si vous souhaitez redémarrer le RPI. 
- 
-=== - Définir le nom réseau du RPI === 
- 
-Dans le menu principal, sélectionnez **Advanced options** : 
- 
-{{ :​materiel:​raspi:​nom_rpi-01.png |}} 
- 
-puis **Hostname** : 
- 
-{{ :​materiel:​raspi:​nom_rpi-02.png |}} 
- 
-Un message s'​affiche. Tapez <​key>​Retour</​key>​ pour accepter 
- 
-Changez le nom : 
- 
-{{ :​materiel:​raspi:​nom_rpi-03.png |}} 
- 
-et acceptez. 
- 
-<WRAP center round tip 60%> 
-== Autre méthode de nommage du RPI == 
- 
-Lancez : 
-  * <​code>​sudo nano /​etc/​hostname</​code>​ 
- 
-Remplacez le nom //​raspberry//​ par celui que vous voulez (pour moi : **framboise**) 
- 
-Sortez par <​key>​Ctrl+X</​key>​ puis acceptez le nom de fichier et terminez. 
-</​WRAP>​ 
- 
-=== - Changer le mot de passe du RPI === 
- 
-Nous allons maintenant changer le mot de passe de l’utilisateur **pi** (l’utilisateur par défaut du système). En effet le laisser tel quel (par défaut **raspberry**) est une grosse faille de sécurité. 
- 
-Rendez-vous avec les flèches sur le second choix, **Change User Password** et validez. 
- 
-Une fenêtre vous informe que vous allez devoir entrer un nouveau mot de passe pour l’utilisateur **pi**. 
- 
-Validez, la fenêtre disparaît, et le terminal vous demande de saisir votre nouveau password. Entrez le nouveau mot de passe, et sa vérification. 
- 
-<WRAP center round important 60%> 
-Retenez bien le nouveau mot de passe : c'est lui qui vous donnera accès au RPI. 
-</​WRAP>​ 
- 
-Une fenêtre signale que le mot de passe a été mis à jour avec succès. Validez, et vous voici de nouveau sur le menu de configuration. 
- 
-=== - Changement du mot de passe root === 
- 
-A l'​installation,​ le root n'a pas de mot de passe. Mieux vaut lui en donner un. 
- 
-Nous sommes connectés au RPI via ssh. Tapez : 
-  * <​code>​sudo passwd root</​code>​ 
- 
-Donnez le nouveau mot de passe root et confirmez-le. 
- 
-<WRAP center round info 60%> 
-== Ajout ou suppression d'un utilisateur avec son mot de passe == 
- 
-Dans une console sur le RPI, 
-  * Pour ajouter l'​utilisateur <​user>​ et lui donner un mot de passe, lancer :<code >sudo useradd -m <​user>;​sudo passwd <​user></​code>​ 
-  * On peut l'​ajouter à certains groupes. Par exemple, pour le rendre administrateur,​ lancer la commande<​code >sudo usermod -a -G adm <​user></​code>​qui le rend membre du groupe adm. 
-<WRAP center round important 60%> 
-Ne pas oublier le **-a** ! Sinon, il perdrait son appartenance aux autres groupes 
-</​WRAP>​ 
-  * Pour supprimer un utilisateur :<code >sudo userdel <​user></​code>​ 
-</​WRAP>​ 
- 
-=== - Mise à jour de Raspbian wheezy vers jessie === 
- 
-D'​après [[https://​www.raspberrypi.org/​forums/​viewtopic.php?​f=66&​t=121880]] 
- 
-  - Ouvrez avec les droits d'​administration le fichier **/​etc/​apt/​sources.list** et changez **wheezy** en **jessie** dans la première ligne, ce qui donne :<code - /​etc/​apt/​sources.list>​deb http://​mirrordirector.raspbian.org/​raspbian/​ jessie main contrib non-free rpi</​code>​ 
-  - Ouvrez avec les droits d'​administration le fichier **/​etc/​apt/​sources.list.d/​raspi.list**. Changez **wheezy** en **jessie** dans la première ligne et ajoutez “ ui” à la fin de cette ligne, ce qui donne :<code - /​etc/​apt/​sources.list.d/​raspi.list>​deb http://​archive.raspberrypi.org/​debian jessie main ui</​code>​ 
-  - Créez le répertoire **/​home/​pi/​.config/​autostart** en tapant<​code>​mkdir /​home/​pi/​.config/​autostart</​code>​dans un terminal. (Notez le . devant config.) 
-  - Tapez<​code>​sudo apt-get update</​code>​dans un terminal pour mettre à jour les fichiers d'​index apt. 
-  - Tapez<​code>​sudo apt-get dist-upgrade -y</​code>​pour démarrer le processus de mise à niveau (cela va prendre une paire d'​heures). Pour ne pas avoir à répondre aux questions, on utilise **-y**. 
-  - Une fois la mise à niveau terminée, redémarrez :<​code>​sudo reboot</​code>​. La session ssh se clôt. 
- 
-Redémarrez une  – vous verrez plusieurs messages “Calling CRDA to update world regulatory domain” – attendez jusqu'​à ce qu'ils se terminent et connectez-vous en tant qu'​utilisateur **pi** à l'​invite de commande. 
- 
-Si l'​interface graphique ne démarre pas automatiquement,​ tapez **startx** à l'​invite de commande. 
- 
-Le bureau peut prendre plusieurs minutes pour se lancer ; l'​écran devient noir, attendez patiemment que cela se termine. 
-==== - Installation de programmes de base ==== 
- 
-Faites une mise à jour du système : 
-  * <​code>​sudo apt update 
-sudo apt upgrade 
-sudo apt dist-upgrade</​code>​ 
- 
-Installez les logiciels suivants : 
-  * <​code>​sudo apt install libnss-mdns 
-sudo apt install avahi-utils 
-sudo apt install ntp 
-sudo apt install geany 
-sudo apt install manpages-fr 
-sudo apt install ntfs-3g 
-sudo apt install iftop 
-sudo apt install htop 
-sudo apt install lsof 
-sudo apt install locate 
-sudo apt install gparted 
-sudo apt install wget</​code>​ 
- 
-<WRAP center round tip 60%> 
-**avahi** permet de s'​affranchir des DNS -> le RPI sera désormais accessible sur le réseau sous le nom DNS **framboise.local** 
- 
-**Avantage** : Le nom DNS suit les changements d'​adresse IP... 
-</​WRAP>​ 
- 
-Pour éviter des erreurs de langue, installez le français par : 
-  * <​code>​sudo locale-gen fr</​code>​ 
- 
-Pour les serveurs, créez le groupe **www-data** et l'​utilisateur **www-data** ; rendez l'​utilisateur pi membre de ce groupe 
-  * <​code>​sudo addgroup --system www-data 
-sudo adduser www-data www-data 
-sudo adduser pi www-data</​code>​ 
- 
-==== - Paramétrage de nano et de bash ==== 
- 
-ouvrez avec les droits d'​administration le fichier **/​etc/​nanorc** pour dé-commenter les lignes : 
- 
-^Dé-commentez^pour obtenir^Commentaire^ 
-|<​code>#​ set autoindent 
-# set mouse 
-# set smarthome 
-# set tabsize 8</​code>​|<​code>​set autoindent 
-set mouse 
-set smarthome 
-set tabsize 4</​code>​|indentation automatique\\ utilisation de la souris\\ touche home intelligente\\ largeur des tabulations| 
- 
-Pour éviter de modifier trop souvent le fichier sensible qu'est .bashrc, nous utiliserons le fichier **~/​.bash_aliases**. 
- 
-Créez le fichier **~/​.bash_aliases** pour ajouter les lignes voulues : 
- 
-<code - ~/​.bash_aliases>​ 
-alias ll='ls -lArth'​ 
-alias rm='rm --preserve-root'​ 
-alias la='ls -A' 
-alias l='ls -CF' 
-alias update="​sudo apt-get -y update"​ 
-alias upgrade="​sudo apt-get -y upgrade"​ 
-alias dist-upgrade="​sudo apt-get -y dist-upgrade"​ 
-</​code>​ 
- 
-<WRAP center round info 60%> 
-Format d'une ligne : 
-<​code>​alias nom_de_votre_alias='​commande de votre alias'</​code>​ 
- 
-On peut aussi utiliser des guillemets doubles. 
-</​WRAP>​ 
- 
-En ligne de commande ssh, pour activer ces aliases, lancer : 
-  * <​code>​source .bashrc</​code>​ 
- 
-==== - Mise à l'​heure du RPI ==== 
- 
-Pour mettre a l’heure le RPI (debian), tapez la commande suivante : 
-  * <​code>​sudo dpkg-reconfigure tzdata</​code>​ 
- 
-et choisissez **europe** puis **paris**. 
- 
-Redémarrez : 
-  * <​code>​sudo reboot</​code>​ 
- 
-Le RPI redémarre et la connexion SSH s'​interrompt. 
- 
-==== - Fixer l'​adresse IP du RPI sur le réseau ==== 
- 
-Pour attribuer des noms aux IPS, 3 méthodes : 
-  - le plus simple : sur la box, en y configurant un bail DHCP 
-  - sur chaque PC du réseau, avec son fichier hosts 
-  - par un serveur **unbound** sur un PC du réseau (qui peut être le RPI) 
- 
-=== - Plan de nommage des PCs du réseau === 
- 
-Choisissez un plan de nommage pour les PCs du réseau, par exemple : 
- 
-|192.168.0.1|pc1| 
-|192.168.0.2|pc2| 
-|192.168.0.31|framboise| 
- 
-=== - Première méthode : sur la box === 
- 
-Ouvrir les réglages de la box (pour une freebox : adresse [[http://​mafreebox.freebox.fr]]). 
- 
-{{ :​materiel:​raspi:​start-mafreebox-0.png |}} 
- 
-Un double-clic sur les périphériques réseau : 
- 
-{{ :​materiel:​raspi:​mafreebox-2.png |}} 
- 
-Un clic droit, sélectionnez "​configurer un bail DHCP" 
- 
-{{ :​materiel:​raspi:​mafreebox-3.png |}} 
- 
-Et attribuez une adresse IP (1) 
- 
-{{ :​materiel:​raspi:​mafreebox-4.png |}} 
- 
-Nous avons ici choisi l'​adresse **192.168.0.31** (31 comme pi=3.14 :-) . 
- 
-=== - Deuxième méthode : fichiers hosts des PCs du réseau === 
- 
-Sur chaque PC du réseau (ici, pc1), [[tutoriel:​ficedit#​Modifier un fichier avec les droits d'​administration|ouvrez avec les droits d'​administration]] le fichier **/​etc/​hosts** pour le modifier comme ceci : 
- 
-<file - /​etc/​hosts>​ 
-127.0.0.1 localhost.localdomain localhost pc1 
-... 
-192.168.0.1 pc1 
-192.168.0.2 pc2 
-192.168.0.31 framboise 
-</​file>​ 
- 
-  ? pc1 
-  : nom réseau du PC sur lequel on travaille 
-  ? pc2, framboise, etc. 
-  : autres PCs 
- 
-La première ligne nomme le PC sur lequel on est ; les dernières lignes nomment toutes les machines du réseau. 
- 
-<WRAP center round tip 60%> 
-On peut créer un fichier modèle pour le fichier **hosts** avec tous les ordinateurs du réseau et le recopier sur chaque ordinateur en renseignant son nom sur la première ligne. 
-</​WRAP>​ 
- 
-=== - Avec un serveur DNS : unbound === 
- 
-Voir [[#Serveur DNS : unbound]] 
- 
-==== - Branchement d'un disque dur externe USB - création d'un serveur NAS ==== 
- 
-<WRAP center round info 60%> 
-Connecter un disque dur en usb présente beaucoup d'​avantages : 
-  - On peut y installer des serveurs : HTTP, DNS, FTP, etc. 
-  - On peut y installer le système du RPI, libérant la carte SD qui sera en lecture seule, ce qui l'​économise : voir [[http://​www.framboise314.fr/​booter-le-raspberry-pi-sur-un-disque-dur-usb/​]] 
-  - On peut créer un espace NAS 
-</​WRAP>​ 
- 
-  * Pour brancher un disque usb sur le RPI, voir la page [[materiel:​raspi:​disque|]] 
-  * Pour installer le système du RPI sur un disque usb, voir la page [[tutoriel:​materiel:​raspi-sysdisque]] 
-  * Pour créer un serveur NAS, voir la page [[tutoriel:​reseau:​nas|]] 
- 
-===== - Configuration ===== 
- 
-Redémarrez une session SSH : 
-  * <​code>​ssh framboise</​code>​ 
- 
-==== - Mise à jour du système de paquets ==== 
- 
-Lancez : 
-  * <​code>​sudo apt update && sudo apt upgrade && sudo apt dist-upgrade && sudo apt autoclean</​code>​ 
-==== - Serveur VNC ==== 
- 
-Voir aussi : [[materiel:​raspi:​vnc|]] 
- 
-Installez **tightvncserver** : 
-  * <​code>​sudo aptitude install -y tightvncserver</​code>​ 
- 
-Lancez le serveur VNC : 
-  * <​code>​vncserver :​1</​code>​ 
- 
-Au premier lancement, 
-  - donner et confirmer le mot de passe qui servira aux connexions via VNC. Sa longueur est limitée à 8 caractères : si vous en saisissez plus, il sera tronqué à 8 caractères. 
-  - répondre **n** à la demande de mot de passe pour la connexion en lecture seule (view-only). 
- 
-{{ :​materiel:​raspi:​rpi-vnc-01.png |}} 
- 
-Le serveur VNC tourne. 
- 
-Nous allons maintenant faire en sorte que **vncserver** se lance au démarrage. 
- 
-Sous Debian 8, le mécanisme init.d est remplacé par le mécanisme **systemd** que nous utilisons ici. 
- 
-Créez avec les droits d'​administration le fichier **/​etc/​systemd/​system/​vncserver.service** pour y écrire ceci : 
- 
-<code - /​etc/​systemd/​system/​vncserver.service>​ 
-[Unit] 
-Description=Serveur VNC 
- 
-[Service] 
-RemainAfterExit=yes 
-Environment=VNCUSER='​pi'​ 
-ExecStart=/​bin/​su $VNCUSER -c '​vncserver :1' 
-ExecStop=/​bin/​su $VNCUSER -c '​vncserver -kill :1' 
- 
-[Install] 
-WantedBy=multi-user.target 
-</​code>​ 
- 
-<WRAP center round info 60%> 
-  * Section [Unit] 
- 
-    ? Description=Serveur vncserver 
-    : Commentaire descriptif 
- 
-  * Section [Service] 
- 
-  ? RemainAfterExit=yes 
-  : Nécesaire pour pouvoir démarrer ou arrêter le service. 
-  ? ExecStart=/​bin/​su - pi -c '/​usr/​bin/​vncserver :1' 
-  :: commande qui démarre le service. 
-  .. (exécutée sous l'​utilisateur pi) 
-  ? ExecStop=/​bin/​su - pi -c '/​usr/​bin/​vncserver -kill :1' 
-  :: commande qui stoppe le service. 
-  .. (exécutée sous l'​utilisateur pi) 
- 
-  * Section [Install] 
- 
-  ? WantedBy=multi-user.target 
-  : s'​exécutera au redémarrage si une commande enable est lancée. 
- 
-<WRAP center round info 60%> 
-Pour le format du fichier **.service**,​ voir les pages de man : 
-  * **systemd.service** [[http://​www.freedesktop.org/​software/​systemd/​man/​systemd.service.html]] 
-  * sections [unit] et [install] : **systemd.unit** [[http://​www.freedesktop.org/​software/​systemd/​man/​systemd.unit.html]] 
- 
-ou la page [[logiciel:​systeme:​systemd|]] 
-</​WRAP>​ 
- 
-</​WRAP>​ 
- 
-L'​activer en lançant : 
-  * <​code>​sudo systemctl daemon-reload</​code>​ 
-  * <​code>​sudo systemctl enable vncserver</​code>​ 
-  * <​code>​sudo systemctl start vncserver</​code>​ 
- 
-Pour les autres méthodes de démarrage automatique au boot, voir [[tutoriel:​systeme:​autoboot|]] 
- 
-<WRAP center round tip 60%> 
-=== Modifier le mot de passe de tightVNCserver === 
- 
-  * <​code>​pi@raspberrypi ~ $ tightvncpasswd</​code>​ 
- 
-<​code>​Using password file /​home/​pi/​.vnc/​passwd 
-Password: 
-Warning: password truncated to the length of 8. 
-Verify: 
-Would you like to enter a view-only password (y/n)? n 
-pi@raspberrypi ~ $</​code>​ 
-</​WRAP>​ 
- 
- 
-==== - Mise en place du wi-fi ==== 
- 
-Avec un dongle wi-fi, plus besoin de câble réseau. 
- 
-Connectez-vous via vnc (cf le paragraphe [[#Accès au RPI via VNC depuis un PC du réseau]]). 
- 
-Dans l'​angle en haut à droite, cliquez sur l'​icone réseau (deux PCs) : 
- 
-{{ :​materiel:​raspi:​rpi-reseau.png |}} 
- 
-Cliquez sur le réseau voulu (ici, versailles, protégé par wpa) : 
- 
-Fournissez la clé wpa et validez : 
- 
-{{ :​materiel:​raspi:​rpi-wpa.png |}} 
- 
-Le réseau wi-fi démarre : 
- 
-{{ :​materiel:​raspi:​rpi-iconewifi.png |}} 
- 
-En survolant l'​icone,​ notez l'​adresse wlan attribuée par la box. 
- 
-Retirez le câble LAN. Le wi-fi est en place. 
- 
-Sur les périphériques réseau de la box, on retrouve le RPI sur le réseau avec l'​adresse désignée. 
- 
-Elle est aussi accessible sous le nom **framboise.local**,​ via ssh ou vnc. 
- 
-Donnez-lui l'​adresse prévue (dans mon cas, 192.168.0.31) : 
-  * Sur la box, donnez-lui un bail DHCP pour cette adresse 
-  * rebootez le RPI :<​code>​sudo reboot</​code>​ 
- 
-Voir la page [[logiciel:​internet:​vnc:​start]] [[materiel:​raspi:​acces:​vnc]]. 
- 
-Installez les logiciels suivants : 
-  * <​code>​sudo apt install -y samba samba-common-bin cifs-utils unbound vsftpd db-util</​code>​ 
 ===== - Utilisation ===== ===== - Utilisation =====
  
-==== - Accès au RPI via VNC depuis un PC du réseau ==== 
- 
-Sur le PC, installez le paquet **[[apt>​ssvnc]]** ou en ligne de commande :  
-  * <​code>​sudo aptitude install ssvnc -y</​code>​ 
- 
-Connectez-vous en donnant précisant l’ip du RPI et le canal du serveur VNC : 
-  * <​code>​ssvnc 192.168.1.31:​1</​code>​ 
- 
-{{ :​materiel:​raspi:​ssvnc-01.png |}} 
- 
-  - adresse du RPI 
-  - pas de SSH 
-  - cliquez sur le bouton <​key>​Connect</​key>​ 
- 
-Donnez le mot de passe et... vous voila connecté à distance sur le RPI : 
  
-{{ :​materiel:​raspi:​vnc-01.png |}} 
 ==== - Serveur DNS : unbound ==== ==== - Serveur DNS : unbound ====
  

Navigation