solution
This commit is contained in:
62
Readme.md
62
Readme.md
@@ -1,44 +1,44 @@
|
||||
# Gestion des paquets
|
||||
|
||||
## Ressources
|
||||
|
||||
https://debian-handbook.info/browse/fr-FR/stable/sect.manipulating-packages-with-dpkg.html
|
||||
|
||||
https://www.debian.org/doc/manuals/securing-debian-manual/deb-pack-sign.en.html
|
||||
|
||||
## Bas niveau
|
||||
|
||||
Créer un fichier 🗎 ~formation/pkg.md contenant la réponse aux questions suivantes
|
||||
|
||||
1. Trouver à quel paquet appartient la commande ls.
|
||||
2. Télécharger le paquet https://mirror.mariadb.org/repo/11.4/debian/pool/main/m/mariadb/libmariadb3_11.4.3%2Bmaria~deb12_arm64.deb
|
||||
3. Éxaminer l'archive téléchargée et notamment la liste des fichiers se trouvant à l'intérieur.
|
||||
4. Est-ce que cette archive peut s'installer sur notre système ? Pourquoi ?
|
||||
5. Trouver la date et l'heure à laquelle le paquet git a été installé pour la première fois sur votre machine.
|
||||
6. Quelle commande permet d'obtenir la liste de tous les paquets installés
|
||||
## bas niveau
|
||||
|
||||
```bash
|
||||
dpkg --search '*bin/ls'
|
||||
curl -OL https://mirror.mariadb.org/repo/11.4/debian/pool/main/m/mariadb/libmariadb3_11.4.3%2Bmaria~deb12_arm64.deb
|
||||
dpkg -c libmariadb3_11.4.3%2Bmaria~deb12_arm64.deb
|
||||
dpkg -I libmariadb3_11.4.3%2Bmaria~deb12_arm64.deb | grep '^Architecture'
|
||||
grep git /var/log/dpkg.log # ce fichier étant le plus ancien log dpkg existant
|
||||
dpkg --get-selections # exploitable par dpkg --set-selections permettant d'installer les même paquets qu'un système existant
|
||||
```
|
||||
## Haut niveau
|
||||
|
||||
1. Citez 2 différences entre apt et apt-get
|
||||
2. Quelle est la principale différence entre apt et aptitude ?
|
||||
3. À quoi sert la commande _apt update_ ?
|
||||
4.
|
||||
apt-get : interface historique, retrocompatibilité garantie, à l'inverse de apt. apt: plus moderne et corrige quelques erreurs de apt-get.
|
||||
apt: interface de base. aptitude: interface "graphique" à apt. c'est donc une surcouche
|
||||
apt update permet de mettre à jour la liste des paquets disponibles. Cette opération est à réaliser avant chaque opération d'installation ou de mise à jour.
|
||||
|
||||
|
||||
## Signature des paquets
|
||||
|
||||
À quoi sert la signature des paquets ?
|
||||
À garantir qu'un paquet téléchargé n'a pas été modifié (parce que le dépôt s'est fait troué par ex).
|
||||
|
||||
Quel mécanisme est utilisé par Debian pour signer les paquets ?
|
||||
il y en a 2 : une signature md5 et une gpg.
|
||||
|
||||
De quoi notre système (apt) a besoin pour vérifier la légitimité d'un paquet téléchargé ?
|
||||
Il est nécessaire d'avoir la clé publique correspondant à la clé ayant signé le paquet.
|
||||
|
||||
Où sont localement stockés ces éléments ? Quelle commande permet
|
||||
dans /etc/apt/keyring et /etc/apt/trusted.gpg.d/ dont on peut manipuler le contenu avec la commande apt-key (nécessite d'avoir gnupg2)
|
||||
|
||||
## Gestion des dépôts
|
||||
|
||||
Déterminer la version de php que nous pouvons installer avec les dépôts par défaut.
|
||||
```
|
||||
apt-policy php
|
||||
php:
|
||||
Installed: (none)
|
||||
Candidate: 2:8.2+93 # version 8.2
|
||||
|
||||
En vous aidant des informations sur https://sury.org :
|
||||
* récupérer et installer la clé utilisée pour vérifier la signature des paquets.
|
||||
* créer le fichier /etc/apt/sources.list.d/php_sury.list
|
||||
* vérifier que vous pouvez installer (sans le faire) des paquets php en version 8.3
|
||||
apt -y install lsb-release ca-certificates curl
|
||||
curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
|
||||
dpkg -i /tmp/debsuryorg-archive-keyring.deb && rm -f /tmp/debsuryorg-archive-keyring.deb
|
||||
sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
|
||||
apt update
|
||||
apt policy php
|
||||
|
||||
|
||||
```
|
||||
Reference in New Issue
Block a user