Aujourd'hui, je vais vous rapidement vous parler des différentes commandes pour installer un ou plusieurs programmes.
Pour commencer, je vais vous parler brièvement de la suite de commande dpkg.
En effet, la commande dpkg n'est pas toute seule et nous allons voir qu'elles peuvent être très utiles.
Commençons par la commande dpkg en elle même.
Cette commande permet de manipuler les paquets deb directement, sans l'aide d'un "package manager" tel que apt-get, aptitude ou synaptique.
elle permet de connaître les version des paquets installés, les fichiers installés et leur emplacement.
Mais je dois avouer qu'on ne l'utilise que dans certains cas précis, au profit des "package manager" qui prennent en compte les dépendances et sans aucun doute plus facile à utiliser.
Pour installer un paquet deb :
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo dpkg -i votre_packet.deb
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude install
rien de plus facile avec la commande dpkg avec la bonne option :
Code : Tout sélectionner
pi@raspberrypi ~ $ dpkg -l bash
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-================================================================================================================
ii bash 4.2+dfsg-0.1+deb7u3 armhf GNU Bourne Again SHell
Code : Tout sélectionner
pi@raspberrypi ~ $ dpkg -l bash*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-================================================================================================================
ii bash 4.2+dfsg-0.1+deb7u3 armhf GNU Bourne Again SHell
ii bash-completion 1:2.0-1 all programmable completion for the bash shell
un bash-doc <none>
Combien de fois n'ai-je pas cherché quels sont les fichiers installé par un paquet ainsi que leur emplacement,
dpkg est là pour répondre à cette question, avec la bonne option :
Code : Tout sélectionner
pi@raspberrypi ~ $ dpkg -L bash
/.
/usr
/usr/share
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/bash
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/rbash.1.gz
/usr/share/man/man1/bashbug.1.gz
/usr/share/man/man1/bash.1.gz
/usr/share/man/man1/clear_console.1.gz
/usr/share/man/man7
/usr/share/man/man7/bash-builtins.7.gz
/usr/share/doc
/usr/share/doc/bash
/usr/share/doc/bash/INTRO.gz
/usr/share/doc/bash/README.commands.gz
/usr/share/doc/bash/changelog.Debian.gz
/usr/share/doc/bash/inputrc.arrows
/usr/share/doc/bash/NEWS.gz
/usr/share/doc/bash/COMPAT.gz
/usr/share/doc/bash/README.Debian.gz
/usr/share/doc/bash/FAQ
/usr/share/doc/bash/copyright
/usr/share/doc/bash/CHANGES.gz
/usr/share/doc/bash/POSIX.gz
/usr/share/doc/bash/README.abs-guide
/usr/share/menu
/usr/share/menu/bash
/usr/share/locale
/usr/share/locale/hu
/usr/share/locale/hu/LC_MESSAGES
/usr/share/locale/hu/LC_MESSAGES/bash.mo
/usr/share/locale/vi
/usr/share/locale/vi/LC_MESSAGES
/usr/share/locale/vi/LC_MESSAGES/bash.mo
/usr/share/locale/zh_TW
/usr/share/locale/zh_TW/LC_MESSAGES
/usr/share/locale/zh_TW/LC_MESSAGES/bash.mo
/usr/share/locale/es
/usr/share/locale/es/LC_MESSAGES
/usr/share/locale/es/LC_MESSAGES/bash.mo
/usr/share/locale/id
/usr/share/locale/id/LC_MESSAGES
/usr/share/locale/id/LC_MESSAGES/bash.mo
/usr/share/locale/ga
/usr/share/locale/ga/LC_MESSAGES
/usr/share/locale/ga/LC_MESSAGES/bash.mo
/usr/share/locale/af
/usr/share/locale/af/LC_MESSAGES
/usr/share/locale/af/LC_MESSAGES/bash.mo
/usr/share/locale/et
/usr/share/locale/et/LC_MESSAGES
/usr/share/locale/et/LC_MESSAGES/bash.mo
/usr/share/locale/ja
/usr/share/locale/ja/LC_MESSAGES
/usr/share/locale/ja/LC_MESSAGES/bash.mo
/usr/share/locale/ro
/usr/share/locale/ro/LC_MESSAGES
/usr/share/locale/ro/LC_MESSAGES/bash.mo
/usr/share/locale/en@boldquot
/usr/share/locale/en@boldquot/LC_MESSAGES
/usr/share/locale/en@boldquot/LC_MESSAGES/bash.mo
/usr/share/locale/cs
/usr/share/locale/cs/LC_MESSAGES
/usr/share/locale/cs/LC_MESSAGES/bash.mo
/usr/share/locale/fi
/usr/share/locale/fi/LC_MESSAGES
/usr/share/locale/fi/LC_MESSAGES/bash.mo
/usr/share/locale/fr
/usr/share/locale/fr/LC_MESSAGES
/usr/share/locale/fr/LC_MESSAGES/bash.mo
/usr/share/locale/pt_BR
/usr/share/locale/pt_BR/LC_MESSAGES
/usr/share/locale/pt_BR/LC_MESSAGES/bash.mo
/usr/share/locale/sv
/usr/share/locale/sv/LC_MESSAGES
/usr/share/locale/sv/LC_MESSAGES/bash.mo
/usr/share/locale/nl
/usr/share/locale/nl/LC_MESSAGES
/usr/share/locale/nl/LC_MESSAGES/bash.mo
/usr/share/locale/pl
/usr/share/locale/pl/LC_MESSAGES
/usr/share/locale/pl/LC_MESSAGES/bash.mo
/usr/share/locale/zh_CN
/usr/share/locale/zh_CN/LC_MESSAGES
/usr/share/locale/zh_CN/LC_MESSAGES/bash.mo
/usr/share/locale/bg
/usr/share/locale/bg/LC_MESSAGES
/usr/share/locale/bg/LC_MESSAGES/bash.mo
/usr/share/locale/de
/usr/share/locale/de/LC_MESSAGES
/usr/share/locale/de/LC_MESSAGES/bash.mo
/usr/share/locale/uk
/usr/share/locale/uk/LC_MESSAGES
/usr/share/locale/uk/LC_MESSAGES/bash.mo
/usr/share/locale/lt
/usr/share/locale/lt/LC_MESSAGES
/usr/share/locale/lt/LC_MESSAGES/bash.mo
/usr/share/locale/en@quot
/usr/share/locale/en@quot/LC_MESSAGES
/usr/share/locale/en@quot/LC_MESSAGES/bash.mo
/usr/share/locale/ru
/usr/share/locale/ru/LC_MESSAGES
/usr/share/locale/ru/LC_MESSAGES/bash.mo
/usr/share/locale/ca
/usr/share/locale/ca/LC_MESSAGES
/usr/share/locale/ca/LC_MESSAGES/bash.mo
/usr/share/locale/eo
/usr/share/locale/eo/LC_MESSAGES
/usr/share/locale/eo/LC_MESSAGES/bash.mo
/usr/share/locale/sk
/usr/share/locale/sk/LC_MESSAGES
/usr/share/locale/sk/LC_MESSAGES/bash.mo
/usr/share/locale/tr
/usr/share/locale/tr/LC_MESSAGES
/usr/share/locale/tr/LC_MESSAGES/bash.mo
/usr/bin
/usr/bin/clear_console
/usr/bin/bashbug
/bin
/bin/bash
/etc
/etc/skel
/etc/skel/.bash_logout
/etc/skel/.bashrc
/etc/skel/.profile
/etc/bash.bashrc
/bin/rbash
au lieu de les réinstaller, il est possible de réécrire la configuration d'un paquet :
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo dpkg-reconfigure bash
Je vais maintenant m’attarder brièvement sur apt-get et s'est dérivée.
Tout d'abord, je tiens à attirer votre attention sur le fait que aptitude est à l'heure actuelle préférée à apt-get.
En effet, aptitude gère mieux les dépendances des paquets et permet de gérer les conflits plus facilement, de plus, aptitude peut-être utilisée en "graphique" comme synaptic mais en commande.
Avant toute utilisation de apt-get et apt-cache, il est fortement conseillé de reconstruire la base de données des paquets disponibles dans les dépôts avec la commande "apt-get upade"
La première étape pour installer un paquet, c'est de le chercher, pour celà nous utilisons la commande apt-cache :
Code : Tout sélectionner
pi@raspberrypi ~ $ apt-cache search vlc
browser-plugin-vlc - multimedia plugin for web browsers based on VLC
dvblast - Simple and powerful dvb-streaming application
freeplayer - wrapper around vlc for French ADSL FreeBox
freetuxtv - Internet television and radio player
getstream - DVB streaming application
hdhomerun-config - Configuration utility for Silicon Dust HD HomeRun
libavbin0 - cross-platform media decoding library
libbluray-dev - Blu-ray disc playback support library (development files)
libbluray1 - Blu-ray disc playback support library (shared library)
libbluray1-dbg - Blu-ray disc playback support library (debug symbols)
libhdhomerun-dev - Development library for Silicon Dust HD HomeRun
libhdhomerun1 - Library for Silicon Dust HD HomeRun
libvcdinfo-dev - library to extract information from VideoCD (development files)
libvcdinfo0 - library to extract information from VideoCD
libvlc-dev - development files for libvlc
libvlc5 - multimedia player and streamer library
libvlccore-dev - development files for libvlccore
libvlccore5 - base library for VLC and its modules
mozilla-plugin-vlc - transitional dummy package
phonon-backend-vlc - Phonon VLC backend
phonon-backend-vlc-dbg - Phonon VLC backend debugging symbols
phonon-backend-xine - transitional package to aid switching to phonon-backend-vlc
pidgin-mpris - sets your available message to your currently playing track
pidgin-musictracker - Plugin for Pidgin which displays the current music track in your status
remuco-vlc - duplex remote control for media players - VLC adapter
vlc - multimedia player and streamer
vlc-data - Common data for VLC
vlc-dbg - debugging symbols for vlc
vlc-nox - multimedia player and streamer (without X support)
vlc-plugin-fluidsynth - FluidSynth plugin for VLC
vlc-plugin-jack - Jack audio plugins for VLC
vlc-plugin-notify - LibNotify plugin for VLC
vlc-plugin-pulse - PulseAudio plugin for VLC
vlc-plugin-sdl - SDL video and audio output plugin for VLC
vlc-plugin-svg - SVG plugin for VLC
vlc-plugin-zvbi - VBI teletext plugin for VLC
x264 - video encoder for the H.264/MPEG-4 AVC standard
Code : Tout sélectionner
pi@raspberrypi ~ $ apt-cache show vlc
Package: vlc
Version: 2.0.3-5+deb7u1
Architecture: armhf
Maintainer: Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
Installed-Size: 2883
Pre-Depends: dpkg (>= 1.15.6~)
Depends: fonts-freefont-ttf, vlc-nox (= 2.0.3-5+deb7u1), libaa1 (>= 1.4p5), libavcodec53 (>= 6:0.8.3-1~) | libavcodec-extra-53 (>= 6:0.8.10), libavutil51 (>= 6:0.8.3-1~), libc6 (>= 2.13-28), libcaca0 (>= 0.99.beta17-1), libfreetype6 (>= 2.2.1), libfribidi0 (>= 0.19.2), libgcc1 (>= 1:4.4.0), libgl1-mesa-glx | libgl1, libice6 (>= 1:1.0.0), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.7.0~beta1), libsdl-image1.2 (>= 1.2.10), libsdl1.2debian (>= 1.2.11), libsm6, libstdc++6 (>= 4.6), libtar0, libva-x11-1 (>> 1.0.15~), libva1 (>> 1.0.15~), libvlccore5 (>= 2.0.0), libx11-6, libxcb-composite0, libxcb-keysyms1 (>= 0.3.9), libxcb-randr0 (>= 1.1), libxcb-render0, libxcb-shape0, libxcb-shm0, libxcb-xfixes0, libxcb-xv0 (>= 1.2), libxcb1 (>= 1.6), libxext6, libxinerama1, libxpm4, zlib1g (>= 1:1.2.3.3)
Recommends: vlc-plugin-notify (= 2.0.3-5+deb7u1), vlc-plugin-pulse (= 2.0.3-5+deb7u1), xdg-utils
Suggests: videolan-doc
Breaks: vlc-data (<< 1.1.5), vlc-nox (<< 2.0.2)
Replaces: vlc-data (<< 1.1.5), vlc-nox (<< 2.0.2)
Provides: mp3-decoder
Homepage: http://www.videolan.org/vlc/
Priority: optional
Section: video
Filename: pool/main/v/vlc/vlc_2.0.3-5+deb7u1_armhf.deb
Size: 910874
SHA256: 936b09236ca975ce8a61d9830463fdd0cd7f69bd932ec04846b59479220415a7
SHA1: 7ce39021d5b334d6b98d16b20a9a3b548390670f
MD5sum: 84ea992b2a7c1d2ea2cc6299fb1f8fc0
Description: multimedia player and streamer
VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4,
DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs,
podcasts, and multimedia streams from various network sources.
.
VLC can also be used as a streaming server that duplicates the stream it
reads and multicasts them through the network to other clients, or serves
them through HTTP.
.
VLC has support for on-the-fly transcoding of audio and video formats, either
for broadcasting purposes or for movie format transformations. Support for
most output methods is provided by this package, but features can be added
by installing additional audio plugins (vlc-plugin-pulse, vlc-plugin-sdl)
or video plugins (vlc-plugin-sdl).
Passons maintenant à apt-get, cette commande, bien connue de tous permets de faire beaucoup de chose, en plus d'installer des paquets.
Elle permet de recharger la base de données des paquets disponibles sur le dépôt de raspbian :
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get update
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get upgrade
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get dist-upgrade
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get install vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get remove vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get purge vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get autoremove
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get autoremove --purge
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get install --reinstall vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get clean
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo apt-get autoclean
-d : télécharge les paquets, mais ne les installe pas, utilisation avec "upgrade", "install".
-y : répond "yes" à toutes les questions: permet d'inclure apt-get dans un script.
-s : simulation : permet d'observer le comportement d'apt-get sans affecter le système.
Je vais maintenant parler de aptitude et ses options.
Vous aller observer qu'il est possible de faire beaucoup de chose avec cette seule commande.
Avant toute utilisation de aptitude, il est fortement conseillé de reconstruire la base de données des paquets disponibles dans les dépôts avec la commande "aptitude upade"
Tout comme apt-cache il est possible de chercher des paquets :
Code : Tout sélectionner
pi@raspberrypi ~ $ aptitude search vlc
p browser-plugin-vlc - multimedia plugin for web browsers based on VLC
p libvlc-dev - development files for libvlc
i A libvlc5 - multimedia player and streamer library
p libvlccore-dev - development files for libvlccore
i A libvlccore5 - base library for VLC and its modules
p mozilla-plugin-vlc - transitional dummy package
p phonon-backend-vlc - Phonon VLC backend
p phonon-backend-vlc-dbg - Phonon VLC backend debugging symbols
p remuco-vlc - duplex remote control for media players - VLC adapter
i vlc - multimedia player and streamer
i A vlc-data - Common data for VLC
p vlc-dbg - debugging symbols for vlc
i A vlc-nox - multimedia player and streamer (without X support)
p vlc-plugin-fluidsynth - FluidSynth plugin for VLC
p vlc-plugin-jack - Jack audio plugins for VLC
i A vlc-plugin-notify - LibNotify plugin for VLC
i A vlc-plugin-pulse - PulseAudio plugin for VLC
p vlc-plugin-sdl - SDL video and audio output plugin for VLC
p vlc-plugin-svg - SVG plugin for VLC
p vlc-plugin-zvbi - VBI teletext plugin for VLC
Il est également possible d'obtenir plus d'information sur un paquet :
Code : Tout sélectionner
pi@raspberrypi ~ $ aptitude show vlc
Package: vlc
State: installed
Automatically installed: no
Version: 2.0.3-5+deb7u1
Priority: optional
Section: video
Maintainer: Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
Architecture: armhf
Uncompressed Size: 2,952 k
Depends: fonts-freefont-ttf, vlc-nox (= 2.0.3-5+deb7u1), libaa1 (>= 1.4p5), libavcodec53 (>= 6:0.8.3-1~) | libavcodec-extra-53 (>= 6:0.8.10), libavutil51 (>= 6:0.8.3-1~), libc6 (>= 2.13-28), libcaca0 (>= 0.99.beta17-1), libfreetype6 (>=
2.2.1), libfribidi0 (>= 0.19.2), libgcc1 (>= 1:4.4.0), libgl1-mesa-glx | libgl1, libice6 (>= 1:1.0.0), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.7.0~beta1), libsdl-image1.2 (>= 1.2.10), libsdl1.2debian (>= 1.2.11), libsm6,
libstdc++6 (>= 4.6), libtar0, libva-x11-1 (> 1.0.15~), libva1 (> 1.0.15~), libvlccore5 (>= 2.0.0), libx11-6, libxcb-composite0, libxcb-keysyms1 (>= 0.3.9), libxcb-randr0 (>= 1.1), libxcb-render0, libxcb-shape0, libxcb-shm0,
libxcb-xfixes0, libxcb-xv0 (>= 1.2), libxcb1 (>= 1.6), libxext6, libxinerama1, libxpm4, zlib1g (>= 1:1.2.3.3)
PreDepends: dpkg (>= 1.15.6~)
Recommends: vlc-plugin-notify (= 2.0.3-5+deb7u1), vlc-plugin-pulse (= 2.0.3-5+deb7u1), xdg-utils
Suggests: videolan-doc
Breaks: vlc-data (< 1.1.5), vlc-nox (< 2.0.2)
Replaces: vlc-data (< 1.1.5), vlc-nox (< 2.0.2)
Provides: mp3-decoder
Description: multimedia player and streamer
VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, podcasts, and multimedia streams from various network sources.
VLC can also be used as a streaming server that duplicates the stream it reads and multicasts them through the network to other clients, or serves them through HTTP.
VLC has support for on-the-fly transcoding of audio and video formats, either for broadcasting purposes or for movie format transformations. Support for most output methods is provided by this package, but features can be added by
installing additional audio plugins (vlc-plugin-pulse, vlc-plugin-sdl) or video plugins (vlc-plugin-sdl).
Homepage: http://www.videolan.org/vlc/
Pour le reste des sous commandes disponnibles :
Elle permet de recharger la base de données des paquets disponibles sur le dépôt de raspbian :
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude update
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitute upgrade
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude dist-upgrade
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude full-upgrade
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitutde install vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude remove vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude purge vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude reinstall vlc
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude clean
Code : Tout sélectionner
pi@raspberrypi ~ $ sudo aptitude autoclean
-d : télécharge les paquets, mais ne les installe pas, utilisation avec "upgrade", "install".
-y : répond "yes" à toutes les questions: permet d'inclure apt-get dans un script.
-s : simulation : permet d'observer le comportement d'apt-get sans affecter le système.
-i : installe un ou plusieurs paquets au redémarrage du système, utile dans certain cas.
Je me permet de me répéter : La commande aptitude gère beaucoup mieux les dépendances que apt-get.
Elle permet également d'avoir un interface graphique en console si on appelle aptitude sans argument/paramètre.
Si vous avez des questions, même si je ne connais pas toutes les réponse, n'hésitez pas.
Je vous souhaites à toutes et à tous une [bonne journée - bonne soirée - bonne nuit]*
*Biffer les mentions inutiles.