Dernière mise-à-jour : 2020/01/30 03:28
Historiquement il était nécessaire d'installer un logiciel à partir de ses fichiers sources.
Pour comprendre ce qui est la compilation d'un logiciel, commencez par télécharger le logiciel hello :
SLES12SP1:~ # wget https://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz --2018-07-16 11:10:26-- https://ftp.gnu.org/gnu/hello/hello-2.1.1.tar.gz Résolution de ftp.gnu.org (ftp.gnu.org)… 208.118.235.20 Connexion à ftp.gnu.org (ftp.gnu.org)|208.118.235.20|:443… connecté. requête HTTP transmise, en attente de la réponse… 200 OK Taille : 389363 (380K) [application/x-gzip] Enregistre : «hello-2.1.1.tar.gz» hello-2.1.1.tar.gz 100%[===========================================================>] 380,24K 946KB/s ds 0,4s 2018-07-16 11:10:27 (946 KB/s) - «hello-2.1.1.tar.gz» enregistré [389363/389363]
Ensuite désarchivez le logiciel :
SLES12SP1:~ # tar xvf hello-2.1.1.tar.gz hello-2.1.1/ hello-2.1.1/intl/ hello-2.1.1/intl/ChangeLog hello-2.1.1/intl/Makefile.in hello-2.1.1/intl/config.charset hello-2.1.1/intl/locale.alias hello-2.1.1/intl/ref-add.sin hello-2.1.1/intl/ref-del.sin hello-2.1.1/intl/gmo.h hello-2.1.1/intl/gettextP.h hello-2.1.1/intl/hash-string.h hello-2.1.1/intl/plural-exp.h hello-2.1.1/intl/eval-plural.h hello-2.1.1/intl/os2compat.h hello-2.1.1/intl/libgnuintl.h hello-2.1.1/intl/loadinfo.h hello-2.1.1/intl/bindtextdom.c hello-2.1.1/intl/dcgettext.c hello-2.1.1/intl/dgettext.c hello-2.1.1/intl/gettext.c hello-2.1.1/intl/finddomain.c hello-2.1.1/intl/loadmsgcat.c hello-2.1.1/intl/localealias.c hello-2.1.1/intl/textdomain.c hello-2.1.1/intl/l10nflist.c hello-2.1.1/intl/explodename.c hello-2.1.1/intl/dcigettext.c hello-2.1.1/intl/dcngettext.c hello-2.1.1/intl/dngettext.c hello-2.1.1/intl/ngettext.c hello-2.1.1/intl/plural.y hello-2.1.1/intl/plural-exp.c hello-2.1.1/intl/localcharset.c hello-2.1.1/intl/localename.c hello-2.1.1/intl/osdep.c hello-2.1.1/intl/os2compat.c hello-2.1.1/intl/intl-compat.c hello-2.1.1/intl/plural.c hello-2.1.1/intl/VERSION hello-2.1.1/po/ hello-2.1.1/po/Makefile.in.in hello-2.1.1/po/Makevars hello-2.1.1/po/remove-potcdate.sin hello-2.1.1/po/quot.sed hello-2.1.1/po/boldquot.sed hello-2.1.1/po/en@quot.header hello-2.1.1/po/en@boldquot.header hello-2.1.1/po/insert-header.sin hello-2.1.1/po/Rules-quot hello-2.1.1/po/POTFILES.in hello-2.1.1/po/hello.pot hello-2.1.1/po/ca.po hello-2.1.1/po/da.po hello-2.1.1/po/de.po hello-2.1.1/po/de_DE.po hello-2.1.1/po/el.po hello-2.1.1/po/eo.po hello-2.1.1/po/es.po hello-2.1.1/po/et.po hello-2.1.1/po/fi.po hello-2.1.1/po/fr.po hello-2.1.1/po/gl.po hello-2.1.1/po/he.po hello-2.1.1/po/hr.po hello-2.1.1/po/hu.po hello-2.1.1/po/id.po hello-2.1.1/po/it.po hello-2.1.1/po/ja.po hello-2.1.1/po/ko.po hello-2.1.1/po/lv.po hello-2.1.1/po/nb.po hello-2.1.1/po/nl.po hello-2.1.1/po/nn.po hello-2.1.1/po/pl.po hello-2.1.1/po/pt.po hello-2.1.1/po/pt_BR.po hello-2.1.1/po/ru.po hello-2.1.1/po/sk.po hello-2.1.1/po/sl.po hello-2.1.1/po/sv.po hello-2.1.1/po/tr.po hello-2.1.1/po/uk.po hello-2.1.1/po/ca.gmo hello-2.1.1/po/da.gmo hello-2.1.1/po/de.gmo hello-2.1.1/po/de_DE.gmo hello-2.1.1/po/el.gmo hello-2.1.1/po/eo.gmo hello-2.1.1/po/es.gmo hello-2.1.1/po/et.gmo hello-2.1.1/po/fi.gmo hello-2.1.1/po/fr.gmo hello-2.1.1/po/gl.gmo hello-2.1.1/po/he.gmo hello-2.1.1/po/hr.gmo hello-2.1.1/po/hu.gmo hello-2.1.1/po/id.gmo hello-2.1.1/po/it.gmo hello-2.1.1/po/ja.gmo hello-2.1.1/po/ko.gmo hello-2.1.1/po/lv.gmo hello-2.1.1/po/nb.gmo hello-2.1.1/po/nl.gmo hello-2.1.1/po/nn.gmo hello-2.1.1/po/pl.gmo hello-2.1.1/po/pt.gmo hello-2.1.1/po/pt_BR.gmo hello-2.1.1/po/ru.gmo hello-2.1.1/po/sk.gmo hello-2.1.1/po/sl.gmo hello-2.1.1/po/sv.gmo hello-2.1.1/po/tr.gmo hello-2.1.1/po/uk.gmo hello-2.1.1/po/ChangeLog hello-2.1.1/po/LINGUAS hello-2.1.1/README hello-2.1.1/ABOUT-NLS hello-2.1.1/AUTHORS hello-2.1.1/COPYING hello-2.1.1/ChangeLog hello-2.1.1/INSTALL hello-2.1.1/Makefile.am hello-2.1.1/Makefile.in hello-2.1.1/NEWS hello-2.1.1/THANKS hello-2.1.1/TODO hello-2.1.1/aclocal.m4 hello-2.1.1/config.guess hello-2.1.1/config.h.in hello-2.1.1/config.rpath hello-2.1.1/config.sub hello-2.1.1/configure hello-2.1.1/configure.ac hello-2.1.1/depcomp hello-2.1.1/install-sh hello-2.1.1/missing hello-2.1.1/mkinstalldirs hello-2.1.1/BUGS hello-2.1.1/ChangeLog.O hello-2.1.1/contrib/ hello-2.1.1/contrib/ChangeLog hello-2.1.1/contrib/Makefile.am hello-2.1.1/contrib/Makefile.in hello-2.1.1/contrib/de_franconian_po.txt hello-2.1.1/contrib/evolution.txt hello-2.1.1/contrib/hello.1 hello-2.1.1/doc/ hello-2.1.1/doc/gpl.texi hello-2.1.1/doc/ChangeLog hello-2.1.1/doc/Makefile.am hello-2.1.1/doc/Makefile.in hello-2.1.1/doc/mdate-sh hello-2.1.1/doc/stamp-vti hello-2.1.1/doc/texinfo.tex hello-2.1.1/doc/version.texi hello-2.1.1/doc/hello.texi hello-2.1.1/doc/hello.info hello-2.1.1/src/ hello-2.1.1/src/ChangeLog hello-2.1.1/src/Makefile.am hello-2.1.1/src/Makefile.in hello-2.1.1/src/alloca.c hello-2.1.1/src/hello.c hello-2.1.1/src/version.c hello-2.1.1/src/getopt.c hello-2.1.1/src/getopt1.c hello-2.1.1/src/getopt.h hello-2.1.1/src/system.h hello-2.1.1/man/ hello-2.1.1/man/ChangeLog hello-2.1.1/man/Makefile.am hello-2.1.1/man/Makefile.in hello-2.1.1/man/hello.1 hello-2.1.1/man/help2man hello-2.1.1/m4/ hello-2.1.1/m4/README hello-2.1.1/m4/ChangeLog hello-2.1.1/m4/Makefile.am hello-2.1.1/m4/Makefile.in hello-2.1.1/m4/codeset.m4 hello-2.1.1/m4/gettext.m4 hello-2.1.1/m4/glibc21.m4 hello-2.1.1/m4/iconv.m4 hello-2.1.1/m4/isc-posix.m4 hello-2.1.1/m4/lcmessage.m4 hello-2.1.1/m4/lib-ld.m4 hello-2.1.1/m4/lib-link.m4 hello-2.1.1/m4/lib-prefix.m4 hello-2.1.1/m4/progtest.m4 hello-2.1.1/tests/ hello-2.1.1/tests/ChangeLog hello-2.1.1/tests/Makefile.am hello-2.1.1/tests/Makefile.in hello-2.1.1/tests/hello-1 hello-2.1.1/tests/world-1 hello-2.1.1/tests/nothing-1
Changez de répertoire :
SLES12SP1:~ # cd hello-2.1.1/ SLES12SP1:~/hello-2.1.1 #
A l'étude du fichier hello-2.1.1/README, celui-ci nous renvoie vers le fichier hello-2.1.1/INSTALL. Visualisez donc ce dernier :
SLES12SP1:~/hello-2.1.1 # more INSTALL Copyright 1994, 1995, 1996, 1999, 2000, 2001 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.) If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You only need --More--(16%)
La procédure expliquée est celle utilisée pour la plupart des installations manuelles, à savoir la saisie des quatre commandes suivantes.
Important : configure est un script chargé de créer les makefiles pour une architecture donnée. Les makefiles sont lus par la commande make.
SUSE12SP1:~/hello-2.1.1 # ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets ${MAKE}... yes checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for strerror in -lcposix... no checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for string.h... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking sys/file.h usability... yes checking sys/file.h presence... yes checking for sys/file.h... yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking for working alloca.h... yes checking for alloca... yes checking for struct stat.st_blksize... yes checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... no checking for msgmerge... no checking build system type... x86_64-suse-linux checking host system type... x86_64-suse-linux checking for ranlib... ranlib checking for gcc option to accept ANSI C... none needed checking for an ANSI C-conforming const... yes checking for inline... inline checking for off_t... yes checking for size_t... yes checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking for getpagesize... yes checking for working mmap... yes checking whether we are using the GNU C Library 2.1 or newer... yes checking for ld used by GCC... /usr/x86_64-suse-linux/bin/ld checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld... yes checking for shared library run path origin... done checking for iconv... yes checking argz.h usability... yes checking argz.h presence... yes checking for argz.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking nl_types.h usability... yes checking nl_types.h presence... yes checking for nl_types.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stddef.h usability... yes checking stddef.h presence... yes checking for stddef.h... yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/param.h... (cached) yes checking for feof_unlocked... yes checking for fgets_unlocked... yes checking for getc_unlocked... yes checking for getcwd... yes checking for getegid... yes checking for geteuid... yes checking for getgid... yes checking for getuid... yes checking for mempcpy... yes checking for munmap... yes checking for putenv... yes checking for setenv... yes checking for setlocale... yes checking for stpcpy... yes checking for strcasecmp... yes checking for strdup... yes checking for strtoul... yes checking for tsearch... yes checking for __argz_count... yes checking for __argz_stringify... yes checking for __argz_next... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); checking for nl_langinfo and CODESET... yes checking for LC_MESSAGES... yes checking for bison... no checking whether NLS is requested... yes checking whether included gettext is requested... no checking for GNU gettext in libc... yes checking for perl... perl configure: creating ./config.status config.status: creating Makefile config.status: creating contrib/Makefile config.status: creating doc/Makefile config.status: creating intl/Makefile config.status: creating man/Makefile config.status: creating po/Makefile.in config.status: creating m4/Makefile config.status: creating src/Makefile config.status: creating tests/Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing default-1 commands config.status: creating po/POTFILES config.status: creating po/Makefile config.status: executing default commands
Important : make sert à appeler des commandes créant des fichiers nécessaires à l'installation du logiciel.
SUSE12SP1:~/hello-2.1.1 # make make all-recursive make[1]: Entering directory '/root/hello-2.1.1' Making all in contrib make[2]: Entering directory '/root/hello-2.1.1/contrib' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/hello-2.1.1/contrib' Making all in doc make[2]: Entering directory '/root/hello-2.1.1/doc' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/hello-2.1.1/doc' Making all in intl make[2]: Entering directory '/root/hello-2.1.1/intl' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/hello-2.1.1/intl' Making all in po make[2]: Entering directory '/root/hello-2.1.1/po' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/hello-2.1.1/po' Making all in src make[2]: Entering directory '/root/hello-2.1.1/src' source='hello.c' object='hello.o' libtool=no \ depfile='.deps/hello.Po' tmpdepfile='.deps/hello.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.. -I. -I. -I.. -I../intl -I../intl -g -O2 -c `test -f 'hello.c' || echo './'`hello.c source='version.c' object='version.o' libtool=no \ depfile='.deps/version.Po' tmpdepfile='.deps/version.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.. -I. -I. -I.. -I../intl -I../intl -g -O2 -c `test -f 'version.c' || echo './'`version.c source='getopt.c' object='getopt.o' libtool=no \ depfile='.deps/getopt.Po' tmpdepfile='.deps/getopt.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.. -I. -I. -I.. -I../intl -I../intl -g -O2 -c `test -f 'getopt.c' || echo './'`getopt.c source='getopt1.c' object='getopt1.o' libtool=no \ depfile='.deps/getopt1.Po' tmpdepfile='.deps/getopt1.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I. -I. -I.. -I. -I. -I.. -I../intl -I../intl -g -O2 -c `test -f 'getopt1.c' || echo './'`getopt1.c gcc -g -O2 -o hello hello.o version.o getopt.o getopt1.o make[2]: Leaving directory '/root/hello-2.1.1/src' Making all in man make[2]: Entering directory '/root/hello-2.1.1/man' perl help2man --name="Friendly Greeting Program" ../src/hello >hello.1 make[2]: Leaving directory '/root/hello-2.1.1/man' Making all in m4 make[2]: Entering directory '/root/hello-2.1.1/m4' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/hello-2.1.1/m4' Making all in tests make[2]: Entering directory '/root/hello-2.1.1/tests' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/hello-2.1.1/tests' make[2]: Entering directory '/root/hello-2.1.1' make[2]: Leaving directory '/root/hello-2.1.1' make[1]: Leaving directory '/root/hello-2.1.1'
Important : make check permet de vérifier si la commande make a bien fonctionné.
SUSE12SP1:~/hello-2.1.1 # make check Making check in contrib make[1]: Entering directory '/root/hello-2.1.1/contrib' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/contrib' Making check in doc make[1]: Entering directory '/root/hello-2.1.1/doc' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/doc' Making check in intl make[1]: Entering directory '/root/hello-2.1.1/intl' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/intl' Making check in po make[1]: Entering directory '/root/hello-2.1.1/po' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/po' Making check in src make[1]: Entering directory '/root/hello-2.1.1/src' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/src' Making check in man make[1]: Entering directory '/root/hello-2.1.1/man' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/man' Making check in m4 make[1]: Entering directory '/root/hello-2.1.1/m4' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/root/hello-2.1.1/m4' Making check in tests make[1]: Entering directory '/root/hello-2.1.1/tests' make check-TESTS make[2]: Entering directory '/root/hello-2.1.1/tests' PASS: hello-1 PASS: world-1 PASS: nothing-1 ================== All 3 tests passed ================== make[2]: Leaving directory '/root/hello-2.1.1/tests' make[1]: Leaving directory '/root/hello-2.1.1/tests' make[1]: Entering directory '/root/hello-2.1.1' make[1]: Leaving directory '/root/hello-2.1.1'
Important : make install sert à installer le logiciel.
SUSE12SP1:~/hello-2.1.1 # make install Making install in contrib make[1]: Entering directory '/root/hello-2.1.1/contrib' make[2]: Entering directory '/root/hello-2.1.1/contrib' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/hello-2.1.1/contrib' make[1]: Leaving directory '/root/hello-2.1.1/contrib' Making install in doc make[1]: Entering directory '/root/hello-2.1.1/doc' make[2]: Entering directory '/root/hello-2.1.1/doc' make[2]: Nothing to be done for 'install-exec-am'. /bin/sh ../mkinstalldirs /usr/local/info mkdir -p -- /usr/local/info /usr/bin/install -c -m 644 ./hello.info /usr/local/info/hello.info install-info --info-dir=/usr/local/info /usr/local/info/hello.info make[2]: Leaving directory '/root/hello-2.1.1/doc' make[1]: Leaving directory '/root/hello-2.1.1/doc' Making install in intl make[1]: Entering directory '/root/hello-2.1.1/intl' if test "hello" = "gettext" \ && test '' = 'intl-compat.o'; then \ /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/local/lib /usr/local/include; \ /usr/bin/install -c -m 644 libintl.h /usr/local/include/libintl.h; \ @LIBTOOL@ --mode=install \ /usr/bin/install -c -m 644 libintl.a /usr/local/lib/libintl.a; \ else \ : ; \ fi if test 'no' = yes; then \ test yes != no || /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/local/lib; \ temp=/usr/local/lib/t-charset.alias; \ dest=/usr/local/lib/charset.alias; \ if test -f /usr/local/lib/charset.alias; then \ orig=/usr/local/lib/charset.alias; \ sed -f ref-add.sed $orig > $temp; \ /usr/bin/install -c -m 644 $temp $dest; \ rm -f $temp; \ else \ if test yes = no; then \ orig=charset.alias; \ sed -f ref-add.sed $orig > $temp; \ /usr/bin/install -c -m 644 $temp $dest; \ rm -f $temp; \ fi; \ fi; \ /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/local/share/locale; \ test -f /usr/local/share/locale/locale.alias \ && orig=/usr/local/share/locale/locale.alias \ || orig=./locale.alias; \ temp=/usr/local/share/locale/t-locale.alias; \ dest=/usr/local/share/locale/locale.alias; \ sed -f ref-add.sed $orig > $temp; \ /usr/bin/install -c -m 644 $temp $dest; \ rm -f $temp; \ else \ : ; \ fi if test "hello" = "gettext"; then \ /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/local/share/gettext/intl; \ /usr/bin/install -c -m 644 VERSION /usr/local/share/gettext/intl/VERSION; \ /usr/bin/install -c -m 644 ChangeLog.inst /usr/local/share/gettext/intl/ChangeLog; \ dists="COPYING.LIB-2.0 COPYING.LIB-2.1 Makefile.in config.charset locale.alias ref-add.sin ref-del.sin gmo.h gettextP.h hash-string.h plural-exp.h eval-plural.h os2compat.h libgnuintl.h loadinfo.h bindtextdom.c dcgettext.c dgettext.c gettext.c finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c explodename.c dcigettext.c dcngettext.c dngettext.c ngettext.c plural.y plural-exp.c localcharset.c localename.c osdep.c os2compat.c intl-compat.c"; \ for file in $dists; do \ /usr/bin/install -c -m 644 ./$file \ /usr/local/share/gettext/intl/$file; \ done; \ chmod a+x /usr/local/share/gettext/intl/config.charset; \ dists="plural.c"; \ for file in $dists; do \ if test -f $file; then dir=.; else dir=.; fi; \ /usr/bin/install -c -m 644 $dir/$file \ /usr/local/share/gettext/intl/$file; \ done; \ dists="xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c COPYING.LIB-2 gettext.h libgettext.h plural-eval.c"; \ for file in $dists; do \ rm -f /usr/local/share/gettext/intl/$file; \ done; \ else \ : ; \ fi make[1]: Leaving directory '/root/hello-2.1.1/intl' Making install in po make[1]: Entering directory '/root/hello-2.1.1/po' /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/local/share mkdir -p -- /usr/local/share/locale/ca/LC_MESSAGES installing ca.gmo as /usr/local/share/locale/ca/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/da/LC_MESSAGES installing da.gmo as /usr/local/share/locale/da/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/de/LC_MESSAGES installing de.gmo as /usr/local/share/locale/de/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/de_DE/LC_MESSAGES installing de_DE.gmo as /usr/local/share/locale/de_DE/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/el/LC_MESSAGES installing el.gmo as /usr/local/share/locale/el/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/eo/LC_MESSAGES installing eo.gmo as /usr/local/share/locale/eo/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/es/LC_MESSAGES installing es.gmo as /usr/local/share/locale/es/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/et/LC_MESSAGES installing et.gmo as /usr/local/share/locale/et/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/fi/LC_MESSAGES installing fi.gmo as /usr/local/share/locale/fi/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/fr/LC_MESSAGES installing fr.gmo as /usr/local/share/locale/fr/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/gl/LC_MESSAGES installing gl.gmo as /usr/local/share/locale/gl/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/he/LC_MESSAGES installing he.gmo as /usr/local/share/locale/he/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/hr/LC_MESSAGES installing hr.gmo as /usr/local/share/locale/hr/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/hu/LC_MESSAGES installing hu.gmo as /usr/local/share/locale/hu/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/id/LC_MESSAGES installing id.gmo as /usr/local/share/locale/id/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/it/LC_MESSAGES installing it.gmo as /usr/local/share/locale/it/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/ja/LC_MESSAGES installing ja.gmo as /usr/local/share/locale/ja/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/ko/LC_MESSAGES installing ko.gmo as /usr/local/share/locale/ko/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/lv/LC_MESSAGES installing lv.gmo as /usr/local/share/locale/lv/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/nb/LC_MESSAGES installing nb.gmo as /usr/local/share/locale/nb/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/nl/LC_MESSAGES installing nl.gmo as /usr/local/share/locale/nl/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/nn/LC_MESSAGES installing nn.gmo as /usr/local/share/locale/nn/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/pl/LC_MESSAGES installing pl.gmo as /usr/local/share/locale/pl/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/pt/LC_MESSAGES installing pt.gmo as /usr/local/share/locale/pt/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/pt_BR/LC_MESSAGES installing pt_BR.gmo as /usr/local/share/locale/pt_BR/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/ru/LC_MESSAGES installing ru.gmo as /usr/local/share/locale/ru/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/sk/LC_MESSAGES installing sk.gmo as /usr/local/share/locale/sk/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/sl/LC_MESSAGES installing sl.gmo as /usr/local/share/locale/sl/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/sv/LC_MESSAGES installing sv.gmo as /usr/local/share/locale/sv/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/tr/LC_MESSAGES installing tr.gmo as /usr/local/share/locale/tr/LC_MESSAGES/hello.mo mkdir -p -- /usr/local/share/locale/uk/LC_MESSAGES installing uk.gmo as /usr/local/share/locale/uk/LC_MESSAGES/hello.mo if test "hello" = "gettext"; then \ /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/local/share/gettext/po; \ for file in Makefile.in.in Makevars remove-potcdate.sin quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot ; do \ /usr/bin/install -c -m 644 ./$file \ /usr/local/share/gettext/po/$file; \ done; \ else \ : ; \ fi make[1]: Leaving directory '/root/hello-2.1.1/po' Making install in src make[1]: Entering directory '/root/hello-2.1.1/src' make[2]: Entering directory '/root/hello-2.1.1/src' /bin/sh ../mkinstalldirs /usr/local/bin /usr/bin/install -c hello /usr/local/bin/hello make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/hello-2.1.1/src' make[1]: Leaving directory '/root/hello-2.1.1/src' Making install in man make[1]: Entering directory '/root/hello-2.1.1/man' make[2]: Entering directory '/root/hello-2.1.1/man' make[2]: Nothing to be done for 'install-exec-am'. /bin/sh ../mkinstalldirs /usr/local/man/man1 /usr/bin/install -c -m 644 ./hello.1 /usr/local/man/man1/hello.1 make[2]: Leaving directory '/root/hello-2.1.1/man' make[1]: Leaving directory '/root/hello-2.1.1/man' Making install in m4 make[1]: Entering directory '/root/hello-2.1.1/m4' make[2]: Entering directory '/root/hello-2.1.1/m4' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/hello-2.1.1/m4' make[1]: Leaving directory '/root/hello-2.1.1/m4' Making install in tests make[1]: Entering directory '/root/hello-2.1.1/tests' make[2]: Entering directory '/root/hello-2.1.1/tests' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/hello-2.1.1/tests' make[1]: Leaving directory '/root/hello-2.1.1/tests' make[1]: Entering directory '/root/hello-2.1.1' make[2]: Entering directory '/root/hello-2.1.1' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/hello-2.1.1' make[1]: Leaving directory '/root/hello-2.1.1'
Il convient maintenant de tester le nouveau logiciel :
SUSE12SP1:~/hello-2.1.1 # hello Hello, world!
Le logiciel hello a été correctement installé.
A faire - Placez-vous dans le répertoire personnel de root grâce à la commande cd ~.
Afin de faciliter l'installation, la désinstallation et la gestion des logiciels (appelés paquets), CentOS et Red Hat utilisent un format de fichier de logiciels installables spécifique. Celui-ci s'appelle RPM pour Red Hat Package Manager. La commande utilisée pour manipuler ses paquets s'appelle aussi rpm.
Les options de la commande rpm sont :
SUSE12SP1:~ # cd ~ SUSE12SP1:~ # rpm --help Usage: rpm [OPTION...] Query/Verify package selection options: -a, --all query/verify all packages -f, --file query/verify package(s) owning file -g, --group query/verify package(s) in group -p, --package query/verify a package file --pkgid query/verify package(s) with package identifier --hdrid query/verify package(s) with header identifier --triggeredby query the package(s) triggered by the package --whatrequires query/verify the package(s) which require a dependency --whatprovides query/verify the package(s) which provide a dependency --nomanifest do not process non-package files as manifests Query options (with -q or --query): -c, --configfiles list all configuration files -d, --docfiles list all documentation files -L, --licensefiles list all license files --dump dump basic file information -l, --list list files in package --queryformat=QUERYFORMAT use the following query format -s, --state display the states of the listed files Verify options (with -V or --verify): --nofiledigest don't verify digest of files --nofiles don't verify files in package --nodeps don't verify package dependencies --noscript don't execute verify script(s) Install/Upgrade/Erase options: --allfiles install all files, even configurations which might otherwise be skipped --allmatches remove all packages which match <package> (normally an error is generated if <package> specified multiple packages) --badreloc relocate files in non-relocatable package -e, --erase=<package>+ erase (uninstall) package --excludedocs do not install documentation --excludepath=<path> skip files with leading component <path> --force short hand for --replacepkgs --replacefiles -F, --freshen=<packagefile>+ upgrade package(s) if already installed -h, --hash print hash marks as package installs (good with -v) --ignorearch don't verify package architecture --ignoreos don't verify package operating system --ignoresize don't check disk space before installing -i, --install install package(s) --justdb update the database, but do not modify the filesystem --nodeps do not verify package dependencies --nofiledigest don't verify digest of files --nocontexts don't install file security contexts --noorder do not reorder package installation to satisfy dependencies --noscripts do not execute package scriptlet(s) --notriggers do not execute any scriptlet(s) triggered by this package --nocollections do not perform any collection actions --oldpackage upgrade to an old version of the package (--force on upgrades does this automatically) --percent print percentages as package installs --prefix=<dir> relocate the package to <dir>, if relocatable --relocate=<old>=<new> relocate files from path <old> to <new> --replacefiles ignore file conflicts between packages --replacepkgs reinstall if the package is already present --test don't install, but tell if it would work or not -U, --upgrade=<packagefile>+ upgrade package(s) Common options for all rpm modes and executables: -D, --define='MACRO EXPR' define MACRO with value EXPR --undefine=MACRO undefine MACRO -E, --eval='EXPR' print macro expansion of EXPR --macros=<FILE:...> read <FILE:...> instead of default file(s) --nodigest don't verify package digest(s) --nosignature don't verify package signature(s) --rcfile=<FILE:...> read <FILE:...> instead of default file(s) -r, --root=ROOT use ROOT as top level directory (default: "/") --dbpath=DIRECTORY use database in DIRECTORY --querytags display known query tags --showrc display final rpmrc and macro configuration --quiet provide less detailed output -v, --verbose provide more detailed output --version print the version of rpm being used Options implemented via popt alias/exec: --scripts list install/erase scriptlets from package(s) --setperms set permissions of files in a package --setugids set user/group ownership of files in a package --conflicts list capabilities this package conflicts with --obsoletes list other packages removed by installing this package --provides list capabilities that this package provides --requires list capabilities required by package(s) --recommends list capabilities recommended by package(s) --suggests list capabilities suggested by package(s) --supplements list capabilities supplemented by package(s) --enhances list capabilities enhanced by package(s) --info list descriptive information from package(s) --changelog list change logs for this package --xml list metadata in xml --triggers list trigger scriptlets from package(s) --last list package(s) by install time, most recent first --dupes list duplicated packages --filesbypkg list all files from each package --fileclass list file names with classes --filecolor list file names with colors --fscontext list file names with security context from file system --fileprovide list file names with provides --filerequire list file names with requires --filecaps list file names with POSIX1.e capabilities Help options: -?, --help Show this help message --usage Display brief usage message
Le fichier de configuration principal de la commande rpm est /usr/lib/rpm/rpmrc :
SUSE12SP1:~ # cat /usr/lib/rpm/rpmrc #/*! \page config_rpmrc Default configuration: /usr/lib/rpm/rpmrc # \verbatim # # This is a global RPM configuration file. All changes made here will # be lost when the rpm package is upgraded. Any per-system configuration # should be added to /etc/rpmrc, while per-user configuration should # be added to ~/.rpmrc. # ############################################################# # Values for RPM_OPT_FLAGS for various platforms # "fat" binary with both archs, for Darwin optflags: fat -O2 -g -arch i386 -arch ppc optflags: i386 -O2 -g -m32 -march=i486 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: i486 -O2 -g -m32 -march=i486 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: i586 -O2 -g -m32 -march=i586 -mtune=i686 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: i686 -O2 -g -m32 -march=i686 -mtune=i686 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: pentium3 -O2 -g -m32 -march=pentium3 optflags: pentium4 -O2 -g -m32 -march=pentium4 optflags: athlon -O2 -g -m32 -march=athlon optflags: geode -Os -g -m32 -march=geode optflags: ia64 -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: x86_64 -O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables optflags: amd64 -O2 -g optflags: ia32e -O2 -g ...
Les directives indiquent comment optimiser la construction d'un rpm en fonction du type de processeur retourné par la commande uname -p. Par exemple, la directive buildarchtranslate: athlon: i586 indique que le processus doit utiliser les optimisations i586 lors de la construction d'un src.rpm sur une architecture athlon. Si au contraire il est souhaité que les optimisations athlon soient utilisées, il convient d'inclure la ligne buildarchtranslate: athlon: athlon dans le fichier /etc/rpmrc. En effet lors de la mise à jour du paquet rpm, le fichier /usr/lib/rpm/rpmrc est écrasé. Toute modification des directives de ce fichier doivent être inscrites dans /etc/rpmrc ou dans un fichier ~/.rpmrc spécifique à un utilisateur.
Afin de connaître la liste des paquets installés sur la machine, il convient de saisir la commande suivante dans une console en tant que root :
SUSE12SP1:~ # rpm -qa | more deltarpm-3.6-3.58.x86_64 yelp-lang-3.10.2-1.20.noarch hwinfo-21.23-1.13.x86_64 python3-speechd-0.8-7.9.x86_64 libzio1-1.00-9.188.x86_64 libgudev-1_0-0-210-83.2.x86_64 libnl-config-3.2.23-2.21.noarch iso_ent-2000.11.03-826.7.noarch gnome-control-center-3.10.3-17.1.x86_64 bash-completion-2.1-4.15.noarch libgsttag-1_0-0-1.2.4-1.124.x86_64 cpupower-3.13-8.2.x86_64 Mesa-libEGL1-10.0.2-90.17.x86_64 yast2-trans-en_GB-3.0.0-36.1.noarch libtiff5-32bit-4.0.4-12.2.x86_64 gnome-tweak-tool-3.10.1-5.18.noarch xvinfo-1.1.2-1.16.x86_64 yast2-pam-3.1.1-1.264.noarch libpyglib-gi-2_0-python3-0-3.10.2-3.5.x86_64 smartmontools-6.2-4.33.x86_64 patterns-sles-documentation-32bit-12-64.3.x86_64 libboost_regex1_54_0-1.54.0-13.1.x86_64 libitm1-5.2.1+r226025-4.1.x86_64 python3-3.4.1-12.1.x86_64 yast2-control-center-3.1.3-1.15.x86_64 libarchive13-3.1.2-9.1.x86_64 haveged-1.9.1-14.2.x86_64 zip-3.0-15.18.x86_64 xkbcomp-1.2.4-9.59.x86_64 which-2.20-3.180.x86_64 libgcr-3-1-3.10.1-1.187.x86_64 libmozjs-17_0-17.0-8.1.x86_64 sysconfig-0.83.8-7.1.x86_64 master-boot-code-1.22-16.27.x86_64 bind-libs-32bit-9.9.6P1-30.2.x86_64 --More--
Afin de connaître le nombre total de paquets installés sur la machine, utilisez la commande suivante :
SUSE12SP1:~ # rpm -qa | wc -l 1592
Imaginons maintenant que vous souhaitez vérifier si un paquet contenant la chaine de caractères setup soit déjà installé sur la machine. Dans ce cas, il convient d'utiliser la commande suivante :
SUSE12SP1:~ # rpm -qa | grep setup libcryptsetup4-1.6.4-2.10.x86_64 cryptsetup-1.6.4-2.10.x86_64 libcryptsetup4-32bit-1.6.4-2.10.x86_64
Afin de connaitre les détails du paquet cryptsetup, il convient de saisir la commande suivante :
SUSE12SP1:~ # rpm -qi cryptsetup Name : cryptsetup Version : 1.6.4 Release : 2.10 Architecture: x86_64 Install Date: Sun May 1 15:17:28 2016 Group : System/Base Size : 647221 License : SUSE-GPL-2.0-with-openssl-exception and LGPL-2.0+ Signature : RSA/SHA256, Mon Sep 22 13:52:09 2014, Key ID 70af9e8139db7c82 Source RPM : cryptsetup-1.6.4-2.10.src.rpm Build Date : Mon Sep 22 13:51:47 2014 Build Host : sheep08 Relocations : (not relocatable) Packager : https://www.suse.com/ Vendor : SUSE LLC <https://www.suse.com/> URL : http://code.google.com/p/cryptsetup/ Summary : Set Up dm-crypt Based Encrypted Block Devices Description : cryptsetup is used to conveniently set up dm-crypt based device-mapper targets. It allows to set up targets to read cryptoloop compatible volumes as well as LUKS formatted ones. The package additionally includes support for automatically setting up encrypted volumes at boot time via the config file /etc/crypttab. Distribution: SUSE Linux Enterprise 12
Afin de lister tous les fichiers installés par le paquet concerné, utilisez la commande suivante :
SUSE12SP1:~ # rpm -ql cryptsetup /sbin/cryptsetup /usr/sbin/cryptsetup /usr/sbin/cryptsetup-reencrypt /usr/sbin/veritysetup /usr/share/locale/cs/LC_MESSAGES/cryptsetup.mo /usr/share/locale/de/LC_MESSAGES/cryptsetup.mo /usr/share/locale/es/LC_MESSAGES/cryptsetup.mo /usr/share/locale/fi/LC_MESSAGES/cryptsetup.mo /usr/share/locale/fr/LC_MESSAGES/cryptsetup.mo /usr/share/locale/id/LC_MESSAGES/cryptsetup.mo /usr/share/locale/it/LC_MESSAGES/cryptsetup.mo /usr/share/locale/nl/LC_MESSAGES/cryptsetup.mo /usr/share/locale/pl/LC_MESSAGES/cryptsetup.mo /usr/share/locale/sv/LC_MESSAGES/cryptsetup.mo /usr/share/locale/uk/LC_MESSAGES/cryptsetup.mo /usr/share/locale/vi/LC_MESSAGES/cryptsetup.mo /usr/share/man/man8/cryptsetup-reencrypt.8.gz /usr/share/man/man8/cryptsetup.8.gz /usr/share/man/man8/veritysetup.8.gz
A l'inverse, si vous connaissez le nom d'un fichier et vous souhaitez savoir quel paquet l'a installé, utilisez la commande suivante :
SUSE12SP1:~ # rpm -qf /sbin/cryptsetup cryptsetup-1.6.4-2.10.x86_64
Pour connaitre les fichiers modifiés depuis l'installation d'un paquetage, utilisez la commande suivante :
# rpm -qV packet
Dans le cas où aucun fichier n'a été modifié, le console n'affiche rien. Dans le cas où les fichiers ont été modifiés, le système vous indique, fichier par fichier, les modifications apportées selon le tableau ci-dessous :
Lettre ou mot Clé | Description |
---|---|
5 | Contrôle MD5 |
S | Taille du fichier |
L | Lien symbolique |
T | Date de modification |
D | Périphérique |
U | Utilisateur propriétaire |
G | Groupe propriétaire |
M | Droits d'accès |
? | Fichier illisible |
Manquant | Fichier manquant |
Important : Un paquet rpm est un fichier cpio modifié. Pour pouvoir extraire le contenu d'un src.rpm et explorer l'arborescence utilisé pour construire le paquet, utilisez la commande rpm2cpio paquet.src.rpm | cpio -i –make-directories
zypper est le nom d'un programme utilitaire de gestion de paquets utilisé par SLES et openSUSE.
Il permet de gérer l'installation et la mise à jour des logiciels installés. C'est une surcouche à RPM gérant les téléchargements et les dépendances, de la même manière que APT de Debian, Urpmi de Mandriva ou yum de Redhat.
La commande zypper prend la forme suivante :
# zypper [--options-globales] <commande> [--options-commande] [arguments] [Entrée]
Les options et commandes de zypper sont :
SUSE12SP1:~ # zypper --help Usage: zypper [--global-options] <command> [--command-options] [arguments] zypper <subcommand> [--command-options] [arguments] Global Options: --help, -h Help. --version, -V Output the version number. --promptids Output a list of zypper's user prompts. --config, -c <file> Use specified config file instead of the default. --userdata <string> User defined transaction id used in history and plugins. --quiet, -q Suppress normal output, print only error messages. --verbose, -v Increase verbosity. --[no-]color Whether to use colors in output if tty supports it. --no-abbrev, -A Do not abbreviate text in tables. --table-style, -s Table style (integer). --non-interactive, -n Do not ask anything, use default answers automatically. --non-interactive-include-reboot-patches Do not treat patches as interactive, which have the rebootSuggested-flag set. --xmlout, -x Switch to XML output. --ignore-unknown, -i Ignore unknown packages. --reposd-dir, -D <dir> Use alternative repository definition file directory. --cache-dir, -C <dir> Use alternative directory for all caches. --raw-cache-dir <dir> Use alternative raw meta-data cache directory. --solv-cache-dir <dir> Use alternative solv file cache directory. --pkg-cache-dir <dir> Use alternative package cache directory. Repository Options: --no-gpg-checks Ignore GPG check failures and continue. --gpg-auto-import-keys Automatically trust and import new repository signing keys. --plus-repo, -p <URI> Use an additional repository. --plus-content <tag> Additionally use disabled repositories providing a specific keyword. Try '--plus-content debug' to enable repos indicating to provide debug packages. --disable-repositories Do not read meta-data from repositories. --no-refresh Do not refresh the repositories. --no-cd Ignore CD/DVD repositories. --no-remote Ignore remote repositories. --releasever Set the value of $releasever in all .repo files (default: distribution version) Target Options: --root, -R <dir> Operate on a different root directory. --disable-system-resolvables Do not read installed packages. Commands: help, ? Print help. shell, sh Accept multiple commands at once. Repository Management: repos, lr List all defined repositories. addrepo, ar Add a new repository. removerepo, rr Remove specified repository. renamerepo, nr Rename specified repository. modifyrepo, mr Modify specified repository. refresh, ref Refresh all repositories. clean Clean local caches. Service Management: services, ls List all defined services. addservice, as Add a new service. modifyservice, ms Modify specified service. removeservice, rs Remove specified service. refresh-services, refs Refresh all services. Software Management: install, in Install packages. remove, rm Remove packages. verify, ve Verify integrity of package dependencies. source-install, si Install source packages and their build dependencies. install-new-recommends, inr Install newly added packages recommended by installed packages. Update Management: update, up Update installed packages with newer versions. list-updates, lu List available updates. patch Install needed patches. list-patches, lp List needed patches. dist-upgrade, dup Perform a distribution upgrade. patch-check, pchk Check for patches. Querying: search, se Search for packages matching a pattern. info, if Show full information for specified packages. patch-info Show full information for specified patches. pattern-info Show full information for specified patterns. product-info Show full information for specified products. patches, pch List all available patches. packages, pa List all available packages. patterns, pt List all available patterns. products, pd List all available products. what-provides, wp List packages providing specified capability. Package Locks: addlock, al Add a package lock. removelock, rl Remove a package lock. locks, ll List current package locks. cleanlocks, cl Remove unused locks. Other Commands: versioncmp, vcmp Compare two version strings. targetos, tos Print the target operating system ID string. licenses Print report about licenses and EULAs of installed packages. download Download rpms specified on the commandline to a local directory. source-download Download source rpms for all installed packages to a local directory. Subcommands: subcommand Lists available subcommands. Type 'zypper help <command>' to get command-specific help.
La configuration de zypper est effectuée en éditant les fichiers /etc/zypp/zypp.conf, /etc/zypp/zypper.conf et éventuellement $HOME/.zypper.conf :
L'ordre d’interprétation des configurations est importante :
SUSE12SP1:~ # more /etc/zypp/zypp.conf ## Configuration file for software management ## /etc/zypp/zypp.conf ## ## Boolean values are 0 1 yes no on off true false [main] ## ## Override the detected architecture ## ## Valid values: i586, i686, x86_64, ppc, ppc64, ia64, s390, s390x, .. ## Default value: Autodetected ## ## ** CAUTION: Only set if you know what you're doing ! ## ** Changing this needs a full refresh (incl. download) ## ** of all repository data. ## # arch = s390 ## ## Path where the caches are kept. ## ## Valid values: A directory ## Default value: /var/cache/zypp ## # cachedir = /var/cache/zypp ## ## Path where the repo metadata is downloaded and kept. ## ## Valid values: A directory ## Default value: {cachedir}/raw ## ## Changing this needs a full refresh (incl. download) of all repository data ## --More--(4%)
SUSE12SP1:~ # more /etc/zypp/zypper.conf ## Configuration file for Zypper. ## ## location: /etc/zypp/zypper.conf (system-wide) ## or: $HOME/.zypper.conf (user-specific) ## ## You can edit this file by hand (try to keep the structure) or by using ## 'zypper conf' command (TODO). If you need user-specific configuration ## and you do not have ~/.zypper.conf yet, use /etc/zypp/zypper.conf ## as template (copy it to ~/.zypper.conf) and adjust to your liking. ## ## The options known also to libzypp will be overriden by zypper.conf, if set. ## ## Boolean values are: ## 0 1 yes no on off true false ## Color values: ## Color values are case insensitive and may be prefixed with ## either Bold, Light or Bright to turn on the terminals ## bold/increased intensity attribute: ## Grey Red Green Blue Brown Cyan Purple/Magenta Black ## White (== LightGrey) ## Yellow (== LightBrown) ## Default (== terminals default color) ## Bold, Light, Bright (== LightDefault, terminals default bold color) [main] ## Show repository alias instead of name. ## ## Alias is an alternative unique name of repository. Some users prefer ## to define short, handy aliases for their repositories and use them ## when specifying repositories instead of number, name, or URI. ## These users might want to set this option to 'true'. ## ## Other users prefer to keep the aliases and names set by installation, --More--(18%)
Important : Un dépôt est un lieu de stockage de paquets binaires prêts à installer. Un dépôt peut être le DVD d'installation de la distribution, un dossier sur disque dur ou bien des serveurs distants accessibles par Internet.
Les dépôts de paquets sont spécifiés dans un fichier par dépôt stocké dans le répertoire /etc/zypp/repos.d :
SUSE12SP1:~ # ls /etc/zypp/repos.d SLES12-SP1-12.1-0.repo SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Debuginfo-Pool.repo SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Debuginfo-Updates.repo SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Pool.repo SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Source-Pool.repo SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Updates.repo
Par exemple :
SUSE12SP1:~ # cat /etc/zypp/repos.d/SLES12-SP1-12.1-0.repo [SLES12-SP1-12.1-0] name=SLES12-SP1-12.1-0 enabled=1 autorefresh=0 baseurl=cd:///?devices=/dev/disk/by-id/ata-VBOX_CD-ROM_VB2-01700376 path=/ type=yast2 keeppackages=0
ou :
SUSE12SP1:~ # cat /etc/zypp/repos.d/SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Updates.repo [SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Updates] name=SLES12-SP1-Updates enabled=1 autorefresh=1 baseurl=https://updates.suse.com/SUSE/Updates/SLE-SERVER/12-SP1/x86_64/update?4Z3imOnkmCfmVfTjzKnS5a1z21vEfrb1Qhxjo8tVzrZ2-Bz_VQxbeJkQJ8Uo7f7IH1MNmeNGZOLUxhVkga2iFnLNFd7wwjGUBeBh_c47J_Ngy1uSjUWas-GXe2UdY9wv1yTUy1pQMs5n0HU type=rpm-md service=SUSE_Linux_Enterprise_Server_12_SP1_x86_64
Les commandes les plus utilisées de zypper sont :
Commande | Abréviation | Description |
---|---|---|
install | in | Installer un ou plusieurs paquets. |
update | up | Mettre à jour un ou plusieurs paquets. Sans nom(s) de paquet(s), tous les paquets sont mis à jour. |
refresh | ref | Rafraîchir le cache des paquets disponibles. |
remove | rm | Supprimer un paquet. |
what-provides | wp | Visualiser une liste de paquetages qui fournissent le fichier ou caractéristique spécifié. |
search -d | se -d | Trouver un paquetage qui a la chaîne recherchée dans sa description. |
search | se | Trouver un paquetage qui a la chaîne recherchée dans son nom. |
info | if | Obtenir de l'information sur un paquet. |
patch | Appliquer les patchs nécessaires au système. | |
verify | ve | Vérifier si les dépendances des paquets installés sont satisfaites. |
repos | lr | Lister les dépôts configurés dans votre système. |
help | Obtenir de l'aide sur une des commandes ci-dessus. Par exemple zypper help search. |
Commencez par mettre à jour les dépôts de zypper :
SUSE12SP1:~ # zypper refresh Repository 'SLES12-SP1-12.1-0' is up to date. Repository 'SLES12-SP1-Pool' is up to date. Repository 'SLES12-SP1-Updates' is up to date. All repositories have been refreshed.
Listez les dépôts zypper configurés dans votre système :
SUSE12SP1:~ # zypper repos # | Alias | Name | Enabled | GPG Check | Refresh --+-------------------------------------------------------------------------+------------------------------+---------+-----------+-------- 1 | SLES12-SP1-12.1-0 | SLES12-SP1-12.1-0 | Yes | (r ) Yes | No 2 | SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Debuginfo-Pool | SLES12-SP1-Debuginfo-Pool | No | ---- | No 3 | SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Debuginfo-Updates | SLES12-SP1-Debuginfo-Updates | No | ---- | Yes 4 | SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Pool | SLES12-SP1-Pool | Yes | (r ) Yes | No 5 | SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Source-Pool | SLES12-SP1-Source-Pool | No | ---- | No 6 | SUSE_Linux_Enterprise_Server_12_SP1_x86_64:SLES12-SP1-Updates | SLES12-SP1-Updates | Yes | (r ) Yes | Yes
Recherchez la chaîne mc dans le nom des paquets :
SUSE12SP1:~ # zypper search mc Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... S | Name | Summary | Type --+------------------------------+-----------------------------------------------------------------------------+----------- | jakarta-commons-pool-tomcat5 | Jakarta Commons Pool Package | package | libXdmcp | X Display Manager Control Protocol library | srcpackage i | libXdmcp6 | X Display Manager Control Protocol library | package | libXdmcp6-32bit | X Display Manager Control Protocol library | package | libXvMC | X-Video Motion Compensation library | srcpackage | libXvMC1 | X-Video Motion Compensation library | package | libmemcached | A C/C++ client library and tools for the memcached server | srcpackage | libmemcached | A C/C++ client library and tools for the memcached server | package | libmemcached11 | Libmemcached is a C/C++ client library and tools for the memcached server | package | libmemcachedutil2 | Libmemcached is a C/C++ client library and tools for the memcached server | package | mc | Midnight Commander | package | mc | Midnight Commander | srcpackage | mc-lang | Languages for package mc | package i | mcelog | Log Machine Check Events | package | mcelog | Log Machine Check Events | srcpackage | mcstrans | SELinux Translation Daemon | package | mcstrans | SELinux Translation Daemon | srcpackage | memcached | A high-performance, distributed memory object caching system | srcpackage | memcached | A high-performance, distributed memory object caching system | package | openlmi-bmc | CMPI provider for BMC management | package | openlmi-bmc | CMPI provider for BMC management | srcpackage | sblim-wbemcli | SBLIM WBEM Command Line Interface | package | sblim-wbemcli | SBLIM WBEM Command Line Interface | srcpackage | termcap | The Termcap Library | package | termcap | The Termcap Library | srcpackage | termcap-32bit | The Termcap Library | package | tomcat | Apache Servlet/JSP/EL Engine, RI for Servlet 3.1/JSP 2.3/EL 3.0 API | package | tomcat | Apache Servlet/JSP/EL Engine, RI for Servlet 3.1/JSP 2.3/EL 3.0 API | srcpackage | tomcat-admin-webapps | The host-manager and manager web applications for Apache Tomcat | package | tomcat-docs-webapp | The docs web application for Apache Tomcat | package | tomcat-el-3_0-api | Expression Language v3.0 API | package | tomcat-javadoc | Javadoc generated documentation for Apache Tomcat | package | tomcat-jsp-2_3-api | Apache Tomcat JSP API implementation classes | package | tomcat-lib | Libraries needed to run the Tomcat Web container | package | tomcat-servlet-3_1-api | Apache Tomcat Servlet API implementation classes | package | tomcat-webapps | ROOT and examples web applications for Apache Tomcat | package i | typelib-1_0-NMClient-1_0 | Convenience library for clients of NetworkManager -- Introspection bindings | package
Recherchez la chaîne mc dans la description des paquets :
SUSE12SP1:~ # zypper search -d mc Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... S | Name | Summary | Type --+----------------------------------+-----------------------------------------------------------------------------+----------- | SUSE-SLE-SERVER-12-SP1-2015-922 | Security update for gpg2 | patch | SUSE-SLE-SERVER-12-SP1-2016-1004 | Security update for the Linux Kernel | patch | SUSE-SLE-SERVER-12-SP1-2016-1103 | Recommended update for aaa_base | patch | SUSE-SLE-SERVER-12-SP1-2016-1123 | Security update for libarchive | patch | SUSE-SLE-SERVER-12-SP1-2016-1186 | Security update for java-1_7_0-openjdk | patch | SUSE-SLE-SERVER-12-SP1-2016-1187 | Security update for java-1_8_0-openjdk | patch | SUSE-SLE-SERVER-12-SP1-2016-1246 | Security update for the Linux Kernel | patch | SUSE-SLE-SERVER-12-SP1-2016-1293 | Security update for tomcat | patch | SUSE-SLE-SERVER-12-SP1-2016-1358 | Optional update for gcc6 | patch | SUSE-SLE-SERVER-12-SP1-2016-1464 | Security update for X Window System client libraries | patch | SUSE-SLE-SERVER-12-SP1-2016-1520 | Recommended update for lvm2 | patch | SUSE-SLE-SERVER-12-SP1-2016-1639 | Security update for jasper | patch | SUSE-SLE-SERVER-12-SP1-2016-1654 | Recommended update for pcsc-ccid | patch | SUSE-SLE-SERVER-12-SP1-2016-1680 | Security update for libtcnative-1-0 | patch | SUSE-SLE-SERVER-12-SP1-2016-1683 | Security update for java-1_8_0-openjdk | patch | SUSE-SLE-SERVER-12-SP1-2016-1700 | Security update for the Linux Kernel | patch | SUSE-SLE-SERVER-12-SP1-2016-1731 | Optional update apache-commons-pool2, apache-commons-dbcp | patch | SUSE-SLE-SERVER-12-SP1-2016-1743 | Initial release of libmemcached, memcached, php5-memcached | patch | SUSE-SLE-SERVER-12-SP1-2016-1788 | Recommended update for systemd | patch | SUSE-SLE-SERVER-12-SP1-2016-1791 | Security update for tomcat | patch | SUSE-SLE-SERVER-12-SP1-2016-1795 | Security update for xen | patch | SUSE-SLE-SERVER-12-SP1-2016-1931 | Recommended update for hwinfo | patch | SUSE-SLE-SERVER-12-SP1-2016-1937 | Security update for tiff | patch | SUSE-SLE-SERVER-12-SP1-2016-1940 | Recommended update for shibboleth-sp | patch | SUSE-SLE-SERVER-12-SP1-2016-213 | Recommended update for xorg-x11-server | patch | SUSE-SLE-SERVER-12-SP1-2016-379 | Recommended update for wicked | patch | SUSE-SLE-SERVER-12-SP1-2016-448 | Security update for tomcat | patch | SUSE-SLE-SERVER-12-SP1-2016-556 | Security update for java-1_7_0-openjdk | patch | SUSE-SLE-SERVER-12-SP1-2016-599 | Recommended update for release-notes-sles | patch | SUSE-SLE-SERVER-12-SP1-2016-600 | Security update for the Linux Kernel | patch | SUSE-SLE-SERVER-12-SP1-2016-602 | Recommended update for clamav | patch | SUSE-SLE-SERVER-12-SP1-2016-659 | Recommended update for aaa_base | patch | SUSE-SLE-SERVER-12-SP1-2016-76 | Security update for wireshark | patch | SUSE-SLE-SERVER-12-SP1-2016-761 | Recommended update for lvm2 | patch | SUSE-SLE-SERVER-12-SP1-2016-929 | Recommended update for mtools | patch | SUSE-SLE-SERVER-12-SP1-2017-18 | Recommended update for ipmitool | patch | SUSE-SLE-SERVER-12-SP1-2017-238 | Security update for the Linux Kernel | patch | SUSE-SLE-SERVER-12-SP1-2017-297 | Security update for xen | patch | SUSE-SLE-SERVER-12-SP1-2017-374 | Recommended update for systemd | patch | SUSE-SLE-SERVER-12-SP1-2017-625 | Recommended update for tomcat | patch | SUSE-SLE-SERVER-12-SP1-2017-740 | Security update for qemu | patch | SUSE-SLE-SERVER-12-SP1-2017-812 | Recommended update for Mesa | patch | SUSE-SLE-SERVER-12-SP1-2017-831 | Security update for the Linux Kernel | patch | SUSE-SLE-SERVER-12-SP1-2017-848 | Security update for tomcat | patch | apache2-mod_jk | Connectors between Apache and Tomcat Servlet Container | package | apache2-mod_jk | Connectors between Apache and Tomcat Servlet Container | srcpackage i | crash | Crash utility for live systems; netdump, diskdump, LKCD or mcore dumpfiles | package | crash | Crash utility for live systems; netdump, diskdump, LKCD or mcore dumpfiles | srcpackage i | crash-kmp-default | Crash utility for live systems; netdump, diskdump, LKCD or mcore dumpfiles | package | crash-kmp-xen | Crash utility for live systems; netdump, diskdump, LKCD or mcore dumpfiles | package i | gpm | Console Mouse Support | package | gpm | Console Mouse Support | srcpackage i | gpm-32bit | Console Mouse Support | package i | ipmitool | Utility for IPMI Control | package | ipmitool | Utility for IPMI Control | srcpackage | jakarta-commons-pool-tomcat5 | Jakarta Commons Pool Package | package i | joe | A Text Editor | package | joe | A Text Editor | srcpackage | kdumpid | Utility to extract information from vmcores | package | kdumpid | Utility to extract information from vmcores | srcpackage i | kernel-default | The Standard Kernel | package | kernel-default | The Standard Kernel | srcpackage | kernel-default-base | The Standard Kernel - base modules | package i | kernel-default-devel | Development files necessary for building kernel modules | package i | kernel-devel | Development files needed for building kernel modules | package i | kernel-macros | RPM macros for building Kernel Module Packages | package | kernel-source | The Linux Kernel Sources | package | kernel-source | The Linux Kernel Sources | srcpackage | kernel-syms | Kernel Symbol Versions (modversions) | package | kernel-syms | Kernel Symbol Versions (modversions) | srcpackage | kernel-xen | The Xen Kernel | package | kernel-xen | The Xen Kernel | srcpackage | kernel-xen-base | The Xen Kernel - base modules | package | kernel-xen-devel | Development files necessary for building kernel modules | package | libXdmcp | X Display Manager Control Protocol library | srcpackage i | libXdmcp6 | X Display Manager Control Protocol library | package | libXdmcp6-32bit | X Display Manager Control Protocol library | package | libXvMC | X-Video Motion Compensation library | srcpackage | libXvMC1 | X-Video Motion Compensation library | package | libdv | The Quasar DV Codec | srcpackage i | libdv4 | The Quasar DV Codec | package | libgme | Collection of video game music file emulators | srcpackage i | libgme0 | Collection of video game music file emulators | package | libmemcached | A C/C++ client library and tools for the memcached server | srcpackage | libmemcached | A C/C++ client library and tools for the memcached server | package | libmemcached11 | Libmemcached is a C/C++ client library and tools for the memcached server | package | libmemcachedutil2 | Libmemcached is a C/C++ client library and tools for the memcached server | package | libpcsclite1 | PCSC Smart Card Library | package | libstoragemgmt | Storage array management library | package | libstoragemgmt | Storage array management library | srcpackage | libstoragemgmt1 | Storage array management library | package | libtcnative-1-0 | JNI wrappers for Apache Portable Runtime for Tomcat | package | libtcnative-1-0 | JNI wrappers for Apache Portable Runtime for Tomcat | srcpackage | mc | Midnight Commander | package | mc | Midnight Commander | srcpackage | mc-lang | Languages for package mc | package i | mcelog | Log Machine Check Events | package | mcelog | Log Machine Check Events | srcpackage | mcstrans | SELinux Translation Daemon | package | mcstrans | SELinux Translation Daemon | srcpackage | memcached | A high-performance, distributed memory object caching system | srcpackage | memcached | A high-performance, distributed memory object caching system | package i | mtools | Access Files on an MS-DOS File System | package | mtools | Access Files on an MS-DOS File System | srcpackage | openlmi-bmc | CMPI provider for BMC management | package | openlmi-bmc | CMPI provider for BMC management | srcpackage i | pcsc-lite | PCSC Smart Cards Library | package | pcsc-lite | PCSC Smart Cards Library | srcpackage | sblim-wbemcli | SBLIM WBEM Command Line Interface | package | sblim-wbemcli | SBLIM WBEM Command Line Interface | srcpackage i | supportutils | Support Troubleshooting Tools | package | supportutils | Support Troubleshooting Tools | srcpackage | termcap | The Termcap Library | package | termcap | The Termcap Library | srcpackage | termcap-32bit | The Termcap Library | package i | terminfo | A terminal descriptions database | package i | terminfo-base | A terminal descriptions database | package | tomcat | Apache Servlet/JSP/EL Engine, RI for Servlet 3.1/JSP 2.3/EL 3.0 API | package | tomcat | Apache Servlet/JSP/EL Engine, RI for Servlet 3.1/JSP 2.3/EL 3.0 API | srcpackage | tomcat-admin-webapps | The host-manager and manager web applications for Apache Tomcat | package | tomcat-docs-webapp | The docs web application for Apache Tomcat | package | tomcat-el-3_0-api | Expression Language v3.0 API | package | tomcat-javadoc | Javadoc generated documentation for Apache Tomcat | package | tomcat-jsp-2_3-api | Apache Tomcat JSP API implementation classes | package | tomcat-lib | Libraries needed to run the Tomcat Web container | package | tomcat-servlet-3_1-api | Apache Tomcat Servlet API implementation classes | package | tomcat-webapps | ROOT and examples web applications for Apache Tomcat | package i | typelib-1_0-NMClient-1_0 | Convenience library for clients of NetworkManager -- Introspection bindings | package
Recherchez tout paquet commencant par kern :
SUSE12SP1:~ # zypper search kern* Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... S | Name | Summary | Type --+----------------------+---------------------------------------------------------+----------- i | kernel-default | The Standard Kernel | package | kernel-default | The Standard Kernel | srcpackage | kernel-default-base | The Standard Kernel - base modules | package i | kernel-default-devel | Development files necessary for building kernel modules | package i | kernel-devel | Development files needed for building kernel modules | package i | kernel-firmware | Linux kernel firmware files | package | kernel-firmware | Linux kernel firmware files | srcpackage i | kernel-macros | RPM macros for building Kernel Module Packages | package | kernel-source | The Linux Kernel Sources | package | kernel-source | The Linux Kernel Sources | srcpackage | kernel-syms | Kernel Symbol Versions (modversions) | package | kernel-syms | Kernel Symbol Versions (modversions) | srcpackage | kernel-xen | The Xen Kernel | package | kernel-xen | The Xen Kernel | srcpackage | kernel-xen-base | The Xen Kernel - base modules | package | kernel-xen-devel | Development files necessary for building kernel modules | package | kernelshark | GUI for trace-cmd | package
Recherchez le paquet qui fournit mc :
SUSE12SP1:~ # zypper what-provides mc Command 'what-provides' is replaced by 'search --provides --match-exact'. See 'help search' for all available options. Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... S | Name | Summary | Type --+------+--------------------+-------- | mc | Midnight Commander | package
Installez le paquet mc :
SUSE12SP1:~ # zypper install mc Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... Resolving package dependencies... The following 3 NEW packages are going to be installed: libslang2 mc mc-lang The following recommended package was automatically selected: mc-lang 3 new packages to install. Overall download size: 1.7 MiB. Already cached: 0 B. After the operation, additional 6.8 MiB will be used. Continue? [y/n/? shows all options] (y): y Retrieving package libslang2-2.2.4-9.7.x86_64 (1/3), 282.1 KiB ( 1.1 MiB unpacked) Retrieving: libslang2-2.2.4-9.7.x86_64.rpm .....................................................................................[done] Retrieving package mc-4.8.11-2.110.x86_64 (2/3), 711.9 KiB ( 2.3 MiB unpacked) Retrieving: mc-4.8.11-2.110.x86_64.rpm .........................................................................................[done] Retrieving package mc-lang-4.8.11-2.110.noarch (3/3), 759.0 KiB ( 3.4 MiB unpacked) Retrieving: mc-lang-4.8.11-2.110.noarch.rpm .......................................................................[done (56.0 KiB/s)] Checking for file conflicts: ...................................................................................................[done] (1/3) Installing: libslang2-2.2.4-9.7 ..........................................................................................[done] (2/3) Installing: mc-4.8.11-2.110 ..............................................................................................[done] Additional rpm output: setting /usr/lib/mc/cons.saver to root:root 4755. (wrong permissions 0755) (3/3) Installing: mc-lang-4.8.11-2.110 .........................................................................................[done]
Important - Sous SLES, il existe deux approches pour maintenir le système à jour. La première approche est basée sur des patchs tandis que la deuxième est basée sur la mise à jour des paquets. Dans le premier cas, des patchs sont téléchargés et appliqués aux versions de paquets stables déjà installées. Dans le deuxième cas, des mises à jour des paquets sont téléchargées et installées, remplaçant ainsi les versions de paquets déjà installées.
Pour visualiser la liste des patchs disponibles pour les paquets installés, utilisez la commande suivante :
SUSE12SP1:~ # zypper list-patches | more Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... The following software management updates will be installed first: Repository | Name | Category | Severity | Interactive | Status | Summary -------------------+----------------------------------+-------------+----------+-------------+--------+------------------------------- ------------------ SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-1051 | recommended | moderate | --- | needed | Recommended update for libsolv , libzypp, zypper SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-1515 | recommended | moderate | --- | needed | Recommended update for the Sof tware Update Stack SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-1602 | recommended | low | --- | needed | Recommended update for yast2-m igration SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-269 | recommended | moderate | --- | needed | Recommended update for libsolv , libzypp, zypper SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-532 | recommended | moderate | --- | needed | Recommended update for libzypp , zypper SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-743 | recommended | moderate | --- | needed | Recommended update for Softwar e Update Stack SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2016-911 | recommended | moderate | --- | needed | Recommended update for gnome-p ackagekit SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2017-484 | recommended | moderate | --- | needed | Recommended update for libsolv , libzypp, zypper The following updates are also available: Repository | Name | Category | Severity | Interactive | Status | Summary -------------------+----------------------------------+-------------+-----------+-------------+--------+------------------------------ --------------------------------------------------------------------------------------------------------------------------- SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2015-1001 | security | important | --- | needed | Security update for MozillaFi refox SLES12-SP1-Updates | SUSE-SLE-SERVER-12-SP1-2015-1016 | security | important | --- | needed | Security update for bind --More--
Pour installer les patchs, utilisez la commande suivante :
SUSE12SP1:~ # zypper patch Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... Resolving package dependencies... The following 2 NEW packages are going to be installed: yast2-migration zypper-migration-plugin The following 8 NEW patches are going to be installed: SUSE-SLE-SERVER-12-SP1-2016-1051 SUSE-SLE-SERVER-12-SP1-2016-1515 SUSE-SLE-SERVER-12-SP1-2016-1602 SUSE-SLE-SERVER-12-SP1-2016-269 SUSE-SLE-SERVER-12-SP1-2016-532 SUSE-SLE-SERVER-12-SP1-2016-743 SUSE-SLE-SERVER-12-SP1-2016-911 SUSE-SLE-SERVER-12-SP1-2017-484 The following 9 packages are going to be upgraded: gnome-packagekit gnome-packagekit-lang libsolv-tools libzypp python-solv yast2-pkg-bindings yast2-registration zypper zypper-log 9 packages to upgrade, 2 new. Overall download size: 8.9 MiB. Already cached: 0 B. After the operation, additional 600.3 KiB will be used. Continue? [y/n/? shows all options] (y): y
Important - Notez que les patchs proposés sont ceux pour le système de gestion de paquets. Ces paquets doivent être patchés avant de pouvoir appliquer les patchs aux autres paquets. Veillez donc à répondre y à la question Continue? [y/n/?] (y): de façon à pouvoir poursuivre le cours.
Pour appliquer les autres patchs, utilisez de nouveau la commande zypper patch :
SUSE12SP1:~ # zypper patch Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... Resolving package dependencies... The following 11 NEW packages are going to be installed: crash-kmp-default-7.1.5_k3.12.69_60.64.35-10.11 kernel-default-3.12.74-60.64.40.1 kernel-default-devel-3.12.74-60.64.40.1 kernel-devel-3.12.74-60.64.40.1 libQt5Network5 libinput-udev libinput10 libts-1_0-0 perl-Expect perl-IO-Stty perl-IO-Tty The following 501 NEW patches are going to be installed: SUSE-SLE-SERVER-12-SP1-2015-1001 SUSE-SLE-SERVER-12-SP1-2015-1016 SUSE-SLE-SERVER-12-SP1-2015-1022 SUSE-SLE-SERVER-12-SP1-2015-1027 SUSE-SLE-SERVER-12-SP1-2015-1028 SUSE-SLE-SERVER-12-SP1-2015-828 SUSE-SLE-SERVER-12-SP1-2015-846 SUSE-SLE-SERVER-12-SP1-2015-862 SUSE-SLE-SERVER-12-SP1-2015-863 SUSE-SLE-SERVER-12-SP1-2015-867 SUSE-SLE-SERVER-12-SP1-2015-869 SUSE-SLE-SERVER-12-SP1-2015-870 SUSE-SLE-SERVER-12-SP1-2015-922 SUSE-SLE-SERVER-12-SP1-2015-946 SUSE-SLE-SERVER-12-SP1-2015-954 SUSE-SLE-SERVER-12-SP1-2015-979 SUSE-SLE-SERVER-12-SP1-2015-985 SUSE-SLE-SERVER-12-SP1-2015-991 SUSE-SLE-SERVER-12-SP1-2015-992 SUSE-SLE-SERVER-12-SP1-2015-996 SUSE-SLE-SERVER-12-SP1-2016-10 SUSE-SLE-SERVER-12-SP1-2016-1003 SUSE-SLE-SERVER-12-SP1-2016-1004 SUSE-SLE-SERVER-12-SP1-2016-1012 SUSE-SLE-SERVER-12-SP1-2016-1014 SUSE-SLE-SERVER-12-SP1-2016-1017 SUSE-SLE-SERVER-12-SP1-2016-1021 SUSE-SLE-SERVER-12-SP1-2016-1022 SUSE-SLE-SERVER-12-SP1-2016-1026 SUSE-SLE-SERVER-12-SP1-2016-1028 SUSE-SLE-SERVER-12-SP1-2016-1029 SUSE-SLE-SERVER-12-SP1-2016-1036 SUSE-SLE-SERVER-12-SP1-2016-104 SUSE-SLE-SERVER-12-SP1-2016-1048 SUSE-SLE-SERVER-12-SP1-2016-1055 SUSE-SLE-SERVER-12-SP1-2016-1056 SUSE-SLE-SERVER-12-SP1-2016-1063 SUSE-SLE-SERVER-12-SP1-2016-1083 SUSE-SLE-SERVER-12-SP1-2016-1085 SUSE-SLE-SERVER-12-SP1-2016-1086 SUSE-SLE-SERVER-12-SP1-2016-1087 SUSE-SLE-SERVER-12-SP1-2016-1090 SUSE-SLE-SERVER-12-SP1-2016-1091 SUSE-SLE-SERVER-12-SP1-2016-1095 SUSE-SLE-SERVER-12-SP1-2016-1103 SUSE-SLE-SERVER-12-SP1-2016-1109 SUSE-SLE-SERVER-12-SP1-2016-1110 SUSE-SLE-SERVER-12-SP1-2016-1115 SUSE-SLE-SERVER-12-SP1-2016-1117 SUSE-SLE-SERVER-12-SP1-2016-1123 SUSE-SLE-SERVER-12-SP1-2016-1124 SUSE-SLE-SERVER-12-SP1-2016-1126 SUSE-SLE-SERVER-12-SP1-2016-113 SUSE-SLE-SERVER-12-SP1-2016-1132 SUSE-SLE-SERVER-12-SP1-2016-1138 SUSE-SLE-SERVER-12-SP1-2016-114 SUSE-SLE-SERVER-12-SP1-2016-1141 SUSE-SLE-SERVER-12-SP1-2016-1147 SUSE-SLE-SERVER-12-SP1-2016-1149 SUSE-SLE-SERVER-12-SP1-2016-1150 SUSE-SLE-SERVER-12-SP1-2016-1152 SUSE-SLE-SERVER-12-SP1-2016-1158 SUSE-SLE-SERVER-12-SP1-2016-1159 SUSE-SLE-SERVER-12-SP1-2016-1166 SUSE-SLE-SERVER-12-SP1-2016-1168 SUSE-SLE-SERVER-12-SP1-2016-117 SUSE-SLE-SERVER-12-SP1-2016-1205 SUSE-SLE-SERVER-12-SP1-2016-1209 SUSE-SLE-SERVER-12-SP1-2016-121 SUSE-SLE-SERVER-12-SP1-2016-1211 SUSE-SLE-SERVER-12-SP1-2016-1212 SUSE-SLE-SERVER-12-SP1-2016-122 SUSE-SLE-SERVER-12-SP1-2016-1228 SUSE-SLE-SERVER-12-SP1-2016-124 SUSE-SLE-SERVER-12-SP1-2016-1240 SUSE-SLE-SERVER-12-SP1-2016-1245 SUSE-SLE-SERVER-12-SP1-2016-1246 SUSE-SLE-SERVER-12-SP1-2016-1247 SUSE-SLE-SERVER-12-SP1-2016-1252 SUSE-SLE-SERVER-12-SP1-2016-1254 SUSE-SLE-SERVER-12-SP1-2016-1257 SUSE-SLE-SERVER-12-SP1-2016-1258 SUSE-SLE-SERVER-12-SP1-2016-1259 SUSE-SLE-SERVER-12-SP1-2016-1263 SUSE-SLE-SERVER-12-SP1-2016-1267 SUSE-SLE-SERVER-12-SP1-2016-1277 SUSE-SLE-SERVER-12-SP1-2016-1292 SUSE-SLE-SERVER-12-SP1-2016-1294 SUSE-SLE-SERVER-12-SP1-2016-1309 SUSE-SLE-SERVER-12-SP1-2016-1310 SUSE-SLE-SERVER-12-SP1-2016-1326 SUSE-SLE-SERVER-12-SP1-2016-1327 SUSE-SLE-SERVER-12-SP1-2016-133 SUSE-SLE-SERVER-12-SP1-2016-1330 SUSE-SLE-SERVER-12-SP1-2016-1331 SUSE-SLE-SERVER-12-SP1-2016-1332 SUSE-SLE-SERVER-12-SP1-2016-134 SUSE-SLE-SERVER-12-SP1-2016-1342 SUSE-SLE-SERVER-12-SP1-2016-1344 SUSE-SLE-SERVER-12-SP1-2016-1347 SUSE-SLE-SERVER-12-SP1-2016-1350 SUSE-SLE-SERVER-12-SP1-2016-1352 SUSE-SLE-SERVER-12-SP1-2016-1358 SUSE-SLE-SERVER-12-SP1-2016-136 SUSE-SLE-SERVER-12-SP1-2016-1362 SUSE-SLE-SERVER-12-SP1-2016-1364 SUSE-SLE-SERVER-12-SP1-2016-1367 SUSE-SLE-SERVER-12-SP1-2016-1370 SUSE-SLE-SERVER-12-SP1-2016-1374 SUSE-SLE-SERVER-12-SP1-2016-1375 SUSE-SLE-SERVER-12-SP1-2016-1383 SUSE-SLE-SERVER-12-SP1-2016-1388 SUSE-SLE-SERVER-12-SP1-2016-139 SUSE-SLE-SERVER-12-SP1-2016-1390 SUSE-SLE-SERVER-12-SP1-2016-1393 SUSE-SLE-SERVER-12-SP1-2016-1399 SUSE-SLE-SERVER-12-SP1-2016-140 SUSE-SLE-SERVER-12-SP1-2016-1406 SUSE-SLE-SERVER-12-SP1-2016-1419 SUSE-SLE-SERVER-12-SP1-2016-1421 SUSE-SLE-SERVER-12-SP1-2016-1424 SUSE-SLE-SERVER-12-SP1-2016-1430 SUSE-SLE-SERVER-12-SP1-2016-1445 SUSE-SLE-SERVER-12-SP1-2016-1448 SUSE-SLE-SERVER-12-SP1-2016-1452 SUSE-SLE-SERVER-12-SP1-2016-1454 SUSE-SLE-SERVER-12-SP1-2016-1456 SUSE-SLE-SERVER-12-SP1-2016-1457 SUSE-SLE-SERVER-12-SP1-2016-1458 SUSE-SLE-SERVER-12-SP1-2016-1461 SUSE-SLE-SERVER-12-SP1-2016-1464 SUSE-SLE-SERVER-12-SP1-2016-1487 SUSE-SLE-SERVER-12-SP1-2016-1490 SUSE-SLE-SERVER-12-SP1-2016-1492 SUSE-SLE-SERVER-12-SP1-2016-1493 SUSE-SLE-SERVER-12-SP1-2016-1502 SUSE-SLE-SERVER-12-SP1-2016-1510 SUSE-SLE-SERVER-12-SP1-2016-1519 SUSE-SLE-SERVER-12-SP1-2016-1520 SUSE-SLE-SERVER-12-SP1-2016-1522 SUSE-SLE-SERVER-12-SP1-2016-155 SUSE-SLE-SERVER-12-SP1-2016-1555 SUSE-SLE-SERVER-12-SP1-2016-1557 SUSE-SLE-SERVER-12-SP1-2016-1558 SUSE-SLE-SERVER-12-SP1-2016-1560 SUSE-SLE-SERVER-12-SP1-2016-1565 SUSE-SLE-SERVER-12-SP1-2016-157 SUSE-SLE-SERVER-12-SP1-2016-1571 SUSE-SLE-SERVER-12-SP1-2016-1588 SUSE-SLE-SERVER-12-SP1-2016-1591 SUSE-SLE-SERVER-12-SP1-2016-16 SUSE-SLE-SERVER-12-SP1-2016-1613 SUSE-SLE-SERVER-12-SP1-2016-1617 SUSE-SLE-SERVER-12-SP1-2016-1621 SUSE-SLE-SERVER-12-SP1-2016-1630 SUSE-SLE-SERVER-12-SP1-2016-1634 SUSE-SLE-SERVER-12-SP1-2016-1639 SUSE-SLE-SERVER-12-SP1-2016-1644 SUSE-SLE-SERVER-12-SP1-2016-1655 SUSE-SLE-SERVER-12-SP1-2016-1657 SUSE-SLE-SERVER-12-SP1-2016-1663 SUSE-SLE-SERVER-12-SP1-2016-1669 SUSE-SLE-SERVER-12-SP1-2016-1672 SUSE-SLE-SERVER-12-SP1-2016-1681 SUSE-SLE-SERVER-12-SP1-2016-1690 SUSE-SLE-SERVER-12-SP1-2016-1692 SUSE-SLE-SERVER-12-SP1-2016-1697 SUSE-SLE-SERVER-12-SP1-2016-1698 SUSE-SLE-SERVER-12-SP1-2016-1700 SUSE-SLE-SERVER-12-SP1-2016-1721 SUSE-SLE-SERVER-12-SP1-2016-1723 SUSE-SLE-SERVER-12-SP1-2016-1734 SUSE-SLE-SERVER-12-SP1-2016-1735 SUSE-SLE-SERVER-12-SP1-2016-1744 SUSE-SLE-SERVER-12-SP1-2016-1746 SUSE-SLE-SERVER-12-SP1-2016-1749 SUSE-SLE-SERVER-12-SP1-2016-1754 SUSE-SLE-SERVER-12-SP1-2016-1762 SUSE-SLE-SERVER-12-SP1-2016-1767 SUSE-SLE-SERVER-12-SP1-2016-1771 SUSE-SLE-SERVER-12-SP1-2016-1774 SUSE-SLE-SERVER-12-SP1-2016-1775 SUSE-SLE-SERVER-12-SP1-2016-1788 SUSE-SLE-SERVER-12-SP1-2016-18 SUSE-SLE-SERVER-12-SP1-2016-1804 SUSE-SLE-SERVER-12-SP1-2016-1827 SUSE-SLE-SERVER-12-SP1-2016-1831 SUSE-SLE-SERVER-12-SP1-2016-1841 SUSE-SLE-SERVER-12-SP1-2016-1845 SUSE-SLE-SERVER-12-SP1-2016-1850 SUSE-SLE-SERVER-12-SP1-2016-1853 SUSE-SLE-SERVER-12-SP1-2016-186 SUSE-SLE-SERVER-12-SP1-2016-1863 SUSE-SLE-SERVER-12-SP1-2016-1868 SUSE-SLE-SERVER-12-SP1-2016-1880 SUSE-SLE-SERVER-12-SP1-2016-1883 SUSE-SLE-SERVER-12-SP1-2016-1898 SUSE-SLE-SERVER-12-SP1-2016-1908 SUSE-SLE-SERVER-12-SP1-2016-1911 SUSE-SLE-SERVER-12-SP1-2016-1917 SUSE-SLE-SERVER-12-SP1-2016-1921 SUSE-SLE-SERVER-12-SP1-2016-1922 SUSE-SLE-SERVER-12-SP1-2016-1931 SUSE-SLE-SERVER-12-SP1-2016-1932 SUSE-SLE-SERVER-12-SP1-2016-1937 SUSE-SLE-SERVER-12-SP1-2016-194 SUSE-SLE-SERVER-12-SP1-2016-197 SUSE-SLE-SERVER-12-SP1-2016-199 SUSE-SLE-SERVER-12-SP1-2016-201 SUSE-SLE-SERVER-12-SP1-2016-207 SUSE-SLE-SERVER-12-SP1-2016-210 SUSE-SLE-SERVER-12-SP1-2016-213 SUSE-SLE-SERVER-12-SP1-2016-22 SUSE-SLE-SERVER-12-SP1-2016-225 SUSE-SLE-SERVER-12-SP1-2016-243 SUSE-SLE-SERVER-12-SP1-2016-252 SUSE-SLE-SERVER-12-SP1-2016-255 SUSE-SLE-SERVER-12-SP1-2016-259 SUSE-SLE-SERVER-12-SP1-2016-266 SUSE-SLE-SERVER-12-SP1-2016-267 SUSE-SLE-SERVER-12-SP1-2016-270 SUSE-SLE-SERVER-12-SP1-2016-271 SUSE-SLE-SERVER-12-SP1-2016-280 SUSE-SLE-SERVER-12-SP1-2016-286 SUSE-SLE-SERVER-12-SP1-2016-291 SUSE-SLE-SERVER-12-SP1-2016-294 SUSE-SLE-SERVER-12-SP1-2016-300 SUSE-SLE-SERVER-12-SP1-2016-302 SUSE-SLE-SERVER-12-SP1-2016-304 SUSE-SLE-SERVER-12-SP1-2016-307 SUSE-SLE-SERVER-12-SP1-2016-31 SUSE-SLE-SERVER-12-SP1-2016-311 SUSE-SLE-SERVER-12-SP1-2016-318 SUSE-SLE-SERVER-12-SP1-2016-329 SUSE-SLE-SERVER-12-SP1-2016-330 SUSE-SLE-SERVER-12-SP1-2016-333 SUSE-SLE-SERVER-12-SP1-2016-334 SUSE-SLE-SERVER-12-SP1-2016-349 SUSE-SLE-SERVER-12-SP1-2016-353 SUSE-SLE-SERVER-12-SP1-2016-370 SUSE-SLE-SERVER-12-SP1-2016-371 SUSE-SLE-SERVER-12-SP1-2016-373 SUSE-SLE-SERVER-12-SP1-2016-374 SUSE-SLE-SERVER-12-SP1-2016-375 SUSE-SLE-SERVER-12-SP1-2016-379 SUSE-SLE-SERVER-12-SP1-2016-38 SUSE-SLE-SERVER-12-SP1-2016-382 SUSE-SLE-SERVER-12-SP1-2016-384 SUSE-SLE-SERVER-12-SP1-2016-386 SUSE-SLE-SERVER-12-SP1-2016-394 SUSE-SLE-SERVER-12-SP1-2016-398 SUSE-SLE-SERVER-12-SP1-2016-408 SUSE-SLE-SERVER-12-SP1-2016-413 SUSE-SLE-SERVER-12-SP1-2016-414 SUSE-SLE-SERVER-12-SP1-2016-419 SUSE-SLE-SERVER-12-SP1-2016-44 SUSE-SLE-SERVER-12-SP1-2016-443 SUSE-SLE-SERVER-12-SP1-2016-444 SUSE-SLE-SERVER-12-SP1-2016-456 SUSE-SLE-SERVER-12-SP1-2016-46 SUSE-SLE-SERVER-12-SP1-2016-462 SUSE-SLE-SERVER-12-SP1-2016-463 SUSE-SLE-SERVER-12-SP1-2016-464 SUSE-SLE-SERVER-12-SP1-2016-465 SUSE-SLE-SERVER-12-SP1-2016-466 SUSE-SLE-SERVER-12-SP1-2016-476 SUSE-SLE-SERVER-12-SP1-2016-479 SUSE-SLE-SERVER-12-SP1-2016-487 SUSE-SLE-SERVER-12-SP1-2016-490 SUSE-SLE-SERVER-12-SP1-2016-491 SUSE-SLE-SERVER-12-SP1-2016-497 SUSE-SLE-SERVER-12-SP1-2016-498 SUSE-SLE-SERVER-12-SP1-2016-503 SUSE-SLE-SERVER-12-SP1-2016-509 SUSE-SLE-SERVER-12-SP1-2016-510 SUSE-SLE-SERVER-12-SP1-2016-543 SUSE-SLE-SERVER-12-SP1-2016-565 SUSE-SLE-SERVER-12-SP1-2016-567 SUSE-SLE-SERVER-12-SP1-2016-575 SUSE-SLE-SERVER-12-SP1-2016-578 SUSE-SLE-SERVER-12-SP1-2016-583 SUSE-SLE-SERVER-12-SP1-2016-586 SUSE-SLE-SERVER-12-SP1-2016-587 SUSE-SLE-SERVER-12-SP1-2016-599 SUSE-SLE-SERVER-12-SP1-2016-600 SUSE-SLE-SERVER-12-SP1-2016-604 SUSE-SLE-SERVER-12-SP1-2016-61 SUSE-SLE-SERVER-12-SP1-2016-62 SUSE-SLE-SERVER-12-SP1-2016-624 SUSE-SLE-SERVER-12-SP1-2016-634 SUSE-SLE-SERVER-12-SP1-2016-636 SUSE-SLE-SERVER-12-SP1-2016-643 SUSE-SLE-SERVER-12-SP1-2016-646 SUSE-SLE-SERVER-12-SP1-2016-659 SUSE-SLE-SERVER-12-SP1-2016-66 SUSE-SLE-SERVER-12-SP1-2016-661 SUSE-SLE-SERVER-12-SP1-2016-663 SUSE-SLE-SERVER-12-SP1-2016-667 SUSE-SLE-SERVER-12-SP1-2016-669 SUSE-SLE-SERVER-12-SP1-2016-67 SUSE-SLE-SERVER-12-SP1-2016-675 SUSE-SLE-SERVER-12-SP1-2016-683 SUSE-SLE-SERVER-12-SP1-2016-684 SUSE-SLE-SERVER-12-SP1-2016-689 SUSE-SLE-SERVER-12-SP1-2016-691 SUSE-SLE-SERVER-12-SP1-2016-694 SUSE-SLE-SERVER-12-SP1-2016-697 SUSE-SLE-SERVER-12-SP1-2016-699 SUSE-SLE-SERVER-12-SP1-2016-704 SUSE-SLE-SERVER-12-SP1-2016-709 SUSE-SLE-SERVER-12-SP1-2016-71 SUSE-SLE-SERVER-12-SP1-2016-713 SUSE-SLE-SERVER-12-SP1-2016-717 SUSE-SLE-SERVER-12-SP1-2016-722 SUSE-SLE-SERVER-12-SP1-2016-728 SUSE-SLE-SERVER-12-SP1-2016-729 SUSE-SLE-SERVER-12-SP1-2016-732 SUSE-SLE-SERVER-12-SP1-2016-756 SUSE-SLE-SERVER-12-SP1-2016-761 SUSE-SLE-SERVER-12-SP1-2016-764 SUSE-SLE-SERVER-12-SP1-2016-781 SUSE-SLE-SERVER-12-SP1-2016-790 SUSE-SLE-SERVER-12-SP1-2016-801 SUSE-SLE-SERVER-12-SP1-2016-803 SUSE-SLE-SERVER-12-SP1-2016-812 SUSE-SLE-SERVER-12-SP1-2016-818 SUSE-SLE-SERVER-12-SP1-2016-82 SUSE-SLE-SERVER-12-SP1-2016-834 SUSE-SLE-SERVER-12-SP1-2016-835 SUSE-SLE-SERVER-12-SP1-2016-841 SUSE-SLE-SERVER-12-SP1-2016-845 SUSE-SLE-SERVER-12-SP1-2016-85 SUSE-SLE-SERVER-12-SP1-2016-863 SUSE-SLE-SERVER-12-SP1-2016-869 SUSE-SLE-SERVER-12-SP1-2016-879 SUSE-SLE-SERVER-12-SP1-2016-880 SUSE-SLE-SERVER-12-SP1-2016-885 SUSE-SLE-SERVER-12-SP1-2016-890 SUSE-SLE-SERVER-12-SP1-2016-897 SUSE-SLE-SERVER-12-SP1-2016-898 SUSE-SLE-SERVER-12-SP1-2016-9 SUSE-SLE-SERVER-12-SP1-2016-900 SUSE-SLE-SERVER-12-SP1-2016-905 SUSE-SLE-SERVER-12-SP1-2016-907 SUSE-SLE-SERVER-12-SP1-2016-909 SUSE-SLE-SERVER-12-SP1-2016-912 SUSE-SLE-SERVER-12-SP1-2016-915 SUSE-SLE-SERVER-12-SP1-2016-916 SUSE-SLE-SERVER-12-SP1-2016-920 SUSE-SLE-SERVER-12-SP1-2016-922 SUSE-SLE-SERVER-12-SP1-2016-929 SUSE-SLE-SERVER-12-SP1-2016-930 SUSE-SLE-SERVER-12-SP1-2016-932 SUSE-SLE-SERVER-12-SP1-2016-940 SUSE-SLE-SERVER-12-SP1-2016-941 SUSE-SLE-SERVER-12-SP1-2016-942 SUSE-SLE-SERVER-12-SP1-2016-943 SUSE-SLE-SERVER-12-SP1-2016-946 SUSE-SLE-SERVER-12-SP1-2016-949 SUSE-SLE-SERVER-12-SP1-2016-96 SUSE-SLE-SERVER-12-SP1-2016-962 SUSE-SLE-SERVER-12-SP1-2016-967 SUSE-SLE-SERVER-12-SP1-2016-969 SUSE-SLE-SERVER-12-SP1-2016-973 SUSE-SLE-SERVER-12-SP1-2016-98 SUSE-SLE-SERVER-12-SP1-2016-982 SUSE-SLE-SERVER-12-SP1-2016-987 SUSE-SLE-SERVER-12-SP1-2016-992 SUSE-SLE-SERVER-12-SP1-2016-996 SUSE-SLE-SERVER-12-SP1-2017-101 SUSE-SLE-SERVER-12-SP1-2017-11 SUSE-SLE-SERVER-12-SP1-2017-144 SUSE-SLE-SERVER-12-SP1-2017-150 SUSE-SLE-SERVER-12-SP1-2017-151 SUSE-SLE-SERVER-12-SP1-2017-156 SUSE-SLE-SERVER-12-SP1-2017-16 SUSE-SLE-SERVER-12-SP1-2017-177 SUSE-SLE-SERVER-12-SP1-2017-18 SUSE-SLE-SERVER-12-SP1-2017-185 SUSE-SLE-SERVER-12-SP1-2017-196 SUSE-SLE-SERVER-12-SP1-2017-212 SUSE-SLE-SERVER-12-SP1-2017-217 SUSE-SLE-SERVER-12-SP1-2017-218 SUSE-SLE-SERVER-12-SP1-2017-223 SUSE-SLE-SERVER-12-SP1-2017-231 SUSE-SLE-SERVER-12-SP1-2017-236 SUSE-SLE-SERVER-12-SP1-2017-238 SUSE-SLE-SERVER-12-SP1-2017-240 SUSE-SLE-SERVER-12-SP1-2017-241 SUSE-SLE-SERVER-12-SP1-2017-246 SUSE-SLE-SERVER-12-SP1-2017-25 SUSE-SLE-SERVER-12-SP1-2017-260 SUSE-SLE-SERVER-12-SP1-2017-261 SUSE-SLE-SERVER-12-SP1-2017-263 SUSE-SLE-SERVER-12-SP1-2017-267 SUSE-SLE-SERVER-12-SP1-2017-27 SUSE-SLE-SERVER-12-SP1-2017-291 SUSE-SLE-SERVER-12-SP1-2017-3 SUSE-SLE-SERVER-12-SP1-2017-309 SUSE-SLE-SERVER-12-SP1-2017-31 SUSE-SLE-SERVER-12-SP1-2017-312 SUSE-SLE-SERVER-12-SP1-2017-32 SUSE-SLE-SERVER-12-SP1-2017-325 SUSE-SLE-SERVER-12-SP1-2017-326 SUSE-SLE-SERVER-12-SP1-2017-332 SUSE-SLE-SERVER-12-SP1-2017-333 SUSE-SLE-SERVER-12-SP1-2017-353 SUSE-SLE-SERVER-12-SP1-2017-354 SUSE-SLE-SERVER-12-SP1-2017-357 SUSE-SLE-SERVER-12-SP1-2017-361 SUSE-SLE-SERVER-12-SP1-2017-374 SUSE-SLE-SERVER-12-SP1-2017-376 SUSE-SLE-SERVER-12-SP1-2017-392 SUSE-SLE-SERVER-12-SP1-2017-403 SUSE-SLE-SERVER-12-SP1-2017-414 SUSE-SLE-SERVER-12-SP1-2017-439 SUSE-SLE-SERVER-12-SP1-2017-445 SUSE-SLE-SERVER-12-SP1-2017-446 SUSE-SLE-SERVER-12-SP1-2017-448 SUSE-SLE-SERVER-12-SP1-2017-451 SUSE-SLE-SERVER-12-SP1-2017-457 SUSE-SLE-SERVER-12-SP1-2017-458 SUSE-SLE-SERVER-12-SP1-2017-478 SUSE-SLE-SERVER-12-SP1-2017-48 SUSE-SLE-SERVER-12-SP1-2017-480 SUSE-SLE-SERVER-12-SP1-2017-485 SUSE-SLE-SERVER-12-SP1-2017-5 SUSE-SLE-SERVER-12-SP1-2017-512 SUSE-SLE-SERVER-12-SP1-2017-54 SUSE-SLE-SERVER-12-SP1-2017-542 SUSE-SLE-SERVER-12-SP1-2017-551 SUSE-SLE-SERVER-12-SP1-2017-562 SUSE-SLE-SERVER-12-SP1-2017-571 SUSE-SLE-SERVER-12-SP1-2017-579 SUSE-SLE-SERVER-12-SP1-2017-580 SUSE-SLE-SERVER-12-SP1-2017-582 SUSE-SLE-SERVER-12-SP1-2017-588 SUSE-SLE-SERVER-12-SP1-2017-589 SUSE-SLE-SERVER-12-SP1-2017-598 SUSE-SLE-SERVER-12-SP1-2017-606 SUSE-SLE-SERVER-12-SP1-2017-607 SUSE-SLE-SERVER-12-SP1-2017-609 SUSE-SLE-SERVER-12-SP1-2017-610 SUSE-SLE-SERVER-12-SP1-2017-611 SUSE-SLE-SERVER-12-SP1-2017-62 SUSE-SLE-SERVER-12-SP1-2017-624 SUSE-SLE-SERVER-12-SP1-2017-636 SUSE-SLE-SERVER-12-SP1-2017-639 SUSE-SLE-SERVER-12-SP1-2017-641 SUSE-SLE-SERVER-12-SP1-2017-643 SUSE-SLE-SERVER-12-SP1-2017-644 SUSE-SLE-SERVER-12-SP1-2017-646 SUSE-SLE-SERVER-12-SP1-2017-656 SUSE-SLE-SERVER-12-SP1-2017-659 SUSE-SLE-SERVER-12-SP1-2017-668 SUSE-SLE-SERVER-12-SP1-2017-669 SUSE-SLE-SERVER-12-SP1-2017-693 SUSE-SLE-SERVER-12-SP1-2017-700 SUSE-SLE-SERVER-12-SP1-2017-707 SUSE-SLE-SERVER-12-SP1-2017-71 SUSE-SLE-SERVER-12-SP1-2017-716 SUSE-SLE-SERVER-12-SP1-2017-720 SUSE-SLE-SERVER-12-SP1-2017-728 SUSE-SLE-SERVER-12-SP1-2017-732 SUSE-SLE-SERVER-12-SP1-2017-735 SUSE-SLE-SERVER-12-SP1-2017-742 SUSE-SLE-SERVER-12-SP1-2017-743 SUSE-SLE-SERVER-12-SP1-2017-748 SUSE-SLE-SERVER-12-SP1-2017-750 SUSE-SLE-SERVER-12-SP1-2017-760 SUSE-SLE-SERVER-12-SP1-2017-788 SUSE-SLE-SERVER-12-SP1-2017-789 SUSE-SLE-SERVER-12-SP1-2017-790 SUSE-SLE-SERVER-12-SP1-2017-793 SUSE-SLE-SERVER-12-SP1-2017-804 SUSE-SLE-SERVER-12-SP1-2017-807 SUSE-SLE-SERVER-12-SP1-2017-810 SUSE-SLE-SERVER-12-SP1-2017-812 SUSE-SLE-SERVER-12-SP1-2017-816 SUSE-SLE-SERVER-12-SP1-2017-817 SUSE-SLE-SERVER-12-SP1-2017-831 SUSE-SLE-SERVER-12-SP1-2017-833 SUSE-SLE-SERVER-12-SP1-2017-834 SUSE-SLE-SERVER-12-SP1-2017-835 SUSE-SLE-SERVER-12-SP1-2017-854 SUSE-SLE-SERVER-12-SP1-2017-856 SUSE-SLE-SERVER-12-SP1-2017-859 SUSE-SLE-SERVER-12-SP1-2017-863 SUSE-SLE-SERVER-12-SP1-2017-865 SUSE-SLE-SERVER-12-SP1-2017-866 SUSE-SLE-SERVER-12-SP1-2017-869 SUSE-SLE-SERVER-12-SP1-2017-871 SUSE-SLE-SERVER-12-SP1-2017-872 SUSE-SLE-SERVER-12-SP1-2017-873 SUSE-SLE-SERVER-12-SP1-2017-877 SUSE-SLE-SERVER-12-SP1-2017-888 SUSE-SLE-SERVER-12-SP1-2017-89 SUSE-SLE-SERVER-12-SP1-2017-895 SUSE-SLE-SERVER-12-SP1-2017-94 SUSE-SLE-SERVER-12-SP1-2017-95 SUSE-SLE-SERVER-12-SP1-2017-98 The following package is going to be REMOVED: ruby2.1-rubygem-suse-connect The following 636 packages are going to be upgraded: Mesa Mesa-32bit Mesa-libEGL1 Mesa-libEGL1-32bit Mesa-libGL1 Mesa-libGL1-32bit Mesa-libGLESv2-2 Mesa-libglapi0 Mesa-libglapi0-32bit MozillaFirefox MozillaFirefox-branding-SLE MozillaFirefox-translations SUSEConnect SuSEfirewall2 aaa_base aaa_base-extras acl alsa apparmor-docs apparmor-parser apparmor-profiles apparmor-utils at augeas-lenses autofs automake autoyast2 autoyast2-installation bash bash-completion bash-doc bind-libs bind-libs-32bit bind-utils binutils boost-license1_54_0 btrfsmaintenance btrfsprogs bzip2 ca-certificates-mozilla coreutils coreutils-lang cpio cpio-lang cpp48 cracklib crash cryptsetup cups cups-client cups-filters cups-filters-cups-browsed cups-filters-foomatic-rip cups-filters-ghostscript cups-libs cups-libs-32bit curl dbus-1 dbus-1-x11 deltarpm desktop-data-SLE device-mapper device-mapper-32bit dhcp dhcp-client dirmngr dmidecode dosfstools dracut e2fsprogs eog eog-lang expat fdupes findutils fontconfig fontconfig-32bit gcc48 gconf-editor gconf-editor-lang gcr-data gcr-lang gcr-prompter gd gdb gdk-pixbuf-lang gdk-pixbuf-query-loaders gdm gdm-branding-upstream gdm-lang gdmflexiserver ghostscript ghostscript-x11 glibc glibc-32bit glibc-devel glibc-i18ndata glibc-locale glibc-locale-32bit gnome-control-center gnome-control-center-lang gnome-desktop-lang gnome-keyring gnome-keyring-lang gnome-keyring-pam gnome-keyring-pam-32bit gnome-nettool gnome-nettool-lang gnome-session gnome-session-core gnome-session-default-session gnome-session-lang gnome-settings-daemon gnome-settings-daemon-lang gnome-shell gnome-shell-browser-plugin gnome-shell-classic gnome-shell-extensions-common gnome-shell-extensions-common-lang gnome-shell-lang gnome-shell-search-provider-nautilus gnome-version gpg2 gpg2-lang grub2 grub2-i386-pc grub2-snapper-plugin gstreamer gstreamer-lang gstreamer-plugins-bad gstreamer-plugins-bad-lang gstreamer-plugins-base gstreamer-plugins-base-lang gstreamer-plugins-good gstreamer-plugins-good-lang gtk2-lang gtk2-tools gtk3-data gtk3-lang gtk3-tools guile-modules-2_0 haveged hwinfo insserv-compat inst-source-utils ipmitool irqbalance iscsiuio kbd kdump kernel-firmware kernel-macros kexec-tools kmod kmod-compat kpartx krb5 krb5-32bit libFLAC8 libGLU1 libQt5Core5 libQt5DBus5 libQt5Gui5 libQt5Widgets5 libQt5X11Extras5 libSDL-1_2-0 libX11-6 libX11-6-32bit libX11-data libX11-xcb1 libX11-xcb1-32bit libXaw3d8 libXaw7 libXfixes3 libXfixes3-32bit libXfont1 libXi6 libXi6-32bit libXpm4 libXrandr2 libXrandr2-32bit libXrender1 libXrender1-32bit libXtst6 libXv1 libacl1 libacl1-32bit libapparmor1 libarchive13 libasan0 libasound2 libasound2-32bit libass5 libatomic1 libaudiofile1 libaugeas0 libavahi-client3 libavahi-client3-32bit libavahi-common3 libavahi-common3-32bit libavahi-glib1 libblkid1 libblkid1-32bit libbluray1 libboost_regex1_54_0 libboost_system1_54_0 libboost_thread1_54_0 libbtrfs0 libbz2-1 libbz2-1-32bit libcairo-gobject2 libcairo2 libcairo2-32bit libcap2 libcap2-32bit libcom_err2 libcom_err2-32bit libcrack2 libcrack2-32bit libcryptsetup4 libcryptsetup4-32bit libcurl4 libcurl4-32bit libdbus-1-3 libdbus-1-3-32bit libdcerpc-binding0 libdcerpc-binding0-32bit libdcerpc0 libdcerpc0-32bit libesmtp libexpat1 libexpat1-32bit libext2fs2 libffi4 libffi4-32bit libfltk1 libfreebl3 libfreebl3-32bit libgbm1 libgbm1-32bit libgc1 libgcc_s1 libgcc_s1-32bit libgck-1-0 libgck-modules-gnome-keyring libgcr-3-1 libgcrypt20 libgcrypt20-32bit libgdk_pixbuf-2_0-0 libgdm1 libgensec0 libgensec0-32bit libgif6-32bit libgme0 libgnome-desktop-3-8 libgnome-desktop-3_0-common libgnomesu libgnomesu-lang libgnomesu0 libgnutls28 libgomp1 libgraphite2-3 libgraphite2-3-32bit libgsm1 libgstallocators-1_0-0 libgstapp-1_0-0 libgstaudio-1_0-0 libgstbasecamerabinsrc-1_0-0 libgstcodecparsers-1_0-0 libgstegl-1_0-0 libgstfft-1_0-0 libgstmpegts-1_0-0 libgstpbutils-1_0-0 libgstphotography-1_0-0 libgstreamer-1_0-0 libgstriff-1_0-0 libgstrtp-1_0-0 libgstrtsp-1_0-0 libgstsdp-1_0-0 libgsttag-1_0-0 libgstvideo-1_0-0 libgtk-2_0-0 libgtk-3-0 libgudev-1_0-0 libguile-2_0-22 libhavege1 libhogweed2 libical1 libidn-tools libidn11 libidn11-32bit libimobiledevice4 libitm1 libjack0 libjasper1 libkmod2 libksba8 libldap-2_4-2 libldap-2_4-2-32bit libldb1 libldb1-32bit libltdl7 liblua5_2 libmount1 libmount1-32bit libmozjs-17_0 libnautilus-extension1 libndr-krb5pac0 libndr-krb5pac0-32bit libndr-nbt0 libndr-nbt0-32bit libndr-standard0 libndr-standard0-32bit libndr0 libndr0-32bit libnetapi0 libnetapi0-32bit libnetpbm11 libnettle4 libnuma1 libopenssl1_0_0 libopenssl1_0_0-32bit libopus0 libp11-kit0 libparted0 libpcap1 libpci3 libpci3-32bit libpciaccess0 libpciaccess0-32bit libpcre1 libpcre1-32bit libpcre16-0 libpeas-1_0-0 libpeas-gtk-1_0-0 libplist1 libpng16-16 libpng16-16-32bit libpolkit0 libpoppler-glib8 libpoppler44 libprocps3 libpth20 libpulse-mainloop-glib0 libpulse0 libpython2_7-1_0 libpython2_7-1_0-32bit libpython3_4m1_0 libqt4 libqt4-32bit libqt4-sql libqt4-sql-32bit libqt4-sql-sqlite libqt4-x11 libqt4-x11-32bit libquicktime0 libreadline6 libregistry0 libruby2_1-2_1 libsamba-credentials0 libsamba-credentials0-32bit libsamba-hostconfig0 libsamba-hostconfig0-32bit libsamba-passdb0 libsamba-passdb0-32bit libsamba-util0 libsamba-util0-32bit libsamdb0 libsamdb0-32bit libseccomp2 libsecret-1-0 libsecret-lang libselinux1 libselinux1-32bit libsgutils2-2 libsmartcols1 libsmbclient-raw0 libsmbclient-raw0-32bit libsmbclient0 libsmbconf0 libsmbconf0-32bit libsmbldap0 libsmbldap0-32bit libsnapper3 libsndfile1 libsoftokn3 libsoftokn3-32bit libspectre1 libspeechd2 libsqlite3-0 libsqlite3-0-32bit libssh2-1 libssh2-1-32bit libstdc++6 libstdc++6-32bit libstorage-ruby libstorage6 libtalloc2 libtalloc2-32bit libtasn1 libtasn1-6 libtdb1 libtdb1-32bit libtevent-util0 libtevent-util0-32bit libtevent0 libtevent0-32bit libtiff5 libtiff5-32bit libtirpc1 libtool libtool-32bit libtsan0 libudev1 libudev1-32bit libusbmuxd2 libuuid1 libuuid1-32bit libwbclient0 libwbclient0-32bit libwebp5 libwicked-0-6 libxcb-dri2-0 libxcb-dri2-0-32bit libxcb-glx0 libxcb-glx0-32bit libxcb-randr0 libxcb-render0 libxcb-render0-32bit libxcb-shape0 libxcb-shm0 libxcb-shm0-32bit libxcb-sync1 libxcb-xfixes0 libxcb-xfixes0-32bit libxcb-xkb1 libxcb-xv0 libxcb1 libxcb1-32bit libxml2-2 libxml2-2-32bit libxml2-tools libxslt-tools libxslt1 libz1 libz1-32bit lsof lua lvm2 mailx man man-pages mdadm mksh mlocate mozilla-nspr mozilla-nspr-32bit mozilla-nss mozilla-nss-32bit mozilla-nss-certs mozilla-nss-certs-32bit mtools multipath-tools mutt nautilus nautilus-lang netcfg netpbm nfs-client nfs-doc nfs-kernel-server nscd ntp numactl open-iscsi openldap2-client openslp openslp-32bit openslp-server openssh openssh-helpers openssl os-prober p11-kit p11-kit-tools p7zip pam pam-32bit pam-doc parted pciutils pciutils-ids pcsc-lite perl perl-32bit perl-Net-HTTP perl-Net-SSLeay perl-apparmor perl-base perl-libwww-perl permissions polkit polkit-default-privs polkit-gnome polkit-gnome-lang poppler-tools postfix ppp procps psmisc psmisc-lang pulseaudio pulseaudio-esound-compat pulseaudio-lang pulseaudio-module-x11 pulseaudio-utils pytalloc pytalloc-32bit python python-base python-cffi python-cryptography python-enum34 python-pyasn1 python-xml python3 python3-base python3-speechd readline-doc release-notes-sles rpcbind rpm rpm-32bit rpm-python rsync rsyslog ruby-common ruby2.1 ruby2.1-rubygem-gem2rpm ruby2.1-stdlib samba samba-32bit samba-client samba-client-32bit samba-libs samba-libs-32bit samba-winbind samba-winbind-32bit sg3_utils shadow shared-mime-info sles-admin_en-pdf sles-deployment_en-pdf sles-installquick_en-pdf sles-manuals_en sles-security_en-pdf sles-storage_en-pdf sles-tuning_en-pdf snapper snapper-zypp-plugin speech-dispatcher speech-dispatcher-module-espeak sqlite3 star strace sudo supportutils suse-build-key suse-module-tools sysconfig sysconfig-netconfig syslinux systemd systemd-32bit systemd-bash-completion systemd-presets-branding-SLE systemd-sysvinit tar tar-lang tcpdump tigervnc timezone typelib-1_0-Gck-1 typelib-1_0-Gcr-3 typelib-1_0-GdkPixbuf-2_0 typelib-1_0-Gdm-1_0 typelib-1_0-GnomeDesktop-3_0 typelib-1_0-Gtk-3_0 typelib-1_0-Peas-1_0 typelib-1_0-PeasGtk-1_0 typelib-1_0-Polkit-1_0 ucode-intel udev update-alternatives usbmuxd util-linux util-linux-lang util-linux-systemd vim vim-data vlan vsftpd w3m wget wicked wicked-service xf86-video-modesetting xfsprogs xinit xorg-x11-Xvnc xorg-x11-server xorg-x11-server-extra xscreensaver xscreensaver-data yast2 yast2-audit-laf yast2-bootloader yast2-core yast2-dhcp-server yast2-dns-server yast2-firewall yast2-inetd yast2-installation yast2-kdump yast2-mail yast2-network yast2-ntp-client yast2-packager yast2-ruby-bindings yast2-samba-server yast2-schema yast2-services-manager yast2-storage yast2-trans-en_GB yast2-update yast2-users The following 15 patches require a system reboot: SUSE-SLE-SERVER-12-SP1-2015-985 SUSE-SLE-SERVER-12-SP1-2016-1004 SUSE-SLE-SERVER-12-SP1-2016-1012 SUSE-SLE-SERVER-12-SP1-2016-124 SUSE-SLE-SERVER-12-SP1-2016-1246 SUSE-SLE-SERVER-12-SP1-2016-1522 SUSE-SLE-SERVER-12-SP1-2016-1700 SUSE-SLE-SERVER-12-SP1-2016-1762 SUSE-SLE-SERVER-12-SP1-2016-1845 SUSE-SLE-SERVER-12-SP1-2016-329 SUSE-SLE-SERVER-12-SP1-2016-600 SUSE-SLE-SERVER-12-SP1-2017-238 SUSE-SLE-SERVER-12-SP1-2017-267 SUSE-SLE-SERVER-12-SP1-2017-485 SUSE-SLE-SERVER-12-SP1-2017-831 636 packages to upgrade, 11 new, 1 to remove. Overall download size: 486.2 MiB. Already cached: 0 B. After the operation, additional 273.9 MiB will be used. System reboot required. Continue? [y/n/? shows all options] (y): n
Important - Veillez à répondre n à la question Continue? [y/n/? shows all options] (y): de façon à pouvoir poursuivre le cours.
Pour visualiser la disponibilité des mises à jour, utilisez la commande suivante :
SUSE12SP1:~ # zypper list-updates Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... S | Repository | Name | Current Version | Available Version | Arch --+--------------------+--------------------------------------+------------------------------+-------------------------------+------- v | SLES12-SP1-Updates | Mesa | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-32bit | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libEGL1 | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libEGL1-32bit | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libGL1 | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libGL1-32bit | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libGLESv2-2 | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libglapi0 | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | Mesa-libglapi0-32bit | 10.0.2-90.17 | 10.0.2-102.7.7 | x86_64 v | SLES12-SP1-Updates | MozillaFirefox | 38.4.0esr-51.1 | 45.9.0esr-105.1 | x86_64 v | SLES12-SP1-Updates | MozillaFirefox-branding-SLE | 31.0-17.1 | 45.0-28.2 | x86_64 v | SLES12-SP1-Updates | MozillaFirefox-translations | 38.4.0esr-51.1 | 45.9.0esr-105.1 | x86_64 v | SLES12-SP1-Updates | SUSEConnect | 0.2.27-1.1 | 0.3.0-17.8.1 | x86_64 v | SLES12-SP1-Updates | SuSEfirewall2 | 3.6.312-1.3 | 3.6.312-2.3.1 | noarch v | SLES12-SP1-Updates | aaa_base | 13.2+git20140911.61c1681-9.1 | 13.2+git20140911.61c1681-25.1 | x86_64 v | SLES12-SP1-Updates | aaa_base-extras | 13.2+git20140911.61c1681-9.1 | 13.2+git20140911.61c1681-25.1 | x86_64 v | SLES12-SP1-Updates | acl | 2.2.52-3.148 | 2.2.52-6.1 | x86_64 v | SLES12-SP1-Updates | alsa | 1.0.27.2-11.10 | 1.0.27.2-15.1 | x86_64 v | SLES12-SP1-Updates | apparmor-docs | 2.8.2-36.1 | 2.8.2-54.1 | noarch v | SLES12-SP1-Updates | apparmor-parser | 2.8.2-36.1 | 2.8.2-54.1 | x86_64 v | SLES12-SP1-Updates | apparmor-profiles | 2.8.2-36.1 | 2.8.2-54.1 | noarch v | SLES12-SP1-Updates | apparmor-utils | 2.8.2-36.1 | 2.8.2-54.1 | noarch v | SLES12-SP1-Updates | at | 3.1.14-2.1 | 3.1.14-7.3 | x86_64 v | SLES12-SP1-Updates | augeas-lenses | 1.2.0-3.1 | 1.2.0-10.1 | x86_64 v | SLES12-SP1-Updates | autofs | 5.0.9-8.1 | 5.0.9-20.7.1 | x86_64 v | SLES12-SP1-Updates | automake | 1.13.4-4.56 | 1.13.4-6.2 | noarch v | SLES12-SP1-Updates | autoyast2 | 3.1.101.2-1.1 | 3.1.101.18-15.10 | noarch v | SLES12-SP1-Updates | autoyast2-installation | 3.1.101.2-1.1 | 3.1.101.18-15.10 | noarch v | SLES12-SP1-Updates | bash | 4.2-75.2 | 4.2-82.1 | x86_64 v | SLES12-SP1-Updates | bash-completion | 2.1-4.15 | 2.1-10.16.1 | noarch ...
Pour appliquer la seule mise à jour de at, utilisez la commande suivante :
SUSE12SP1:~ # zypper update at Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... Resolving package dependencies... The following package is going to be upgraded: at 1 package to upgrade. Overall download size: 57.2 KiB. Already cached: 0 B. After the operation, additional 96.0 B will be used. Continue? [y/n/? shows all options] (y): n
Important - Veillez à répondre n à la question Continue? [y/n/? shows all options] (y): de façon à pouvoir poursuivre le cours.
Pour mettre à jour tous les paquets, utilisez la commande suivante :
SUSE12SP1:~ # zypper update Refreshing service 'SUSE_Linux_Enterprise_Server_12_SP1_x86_64'. Loading repository data... Reading installed packages... The following 11 NEW packages are going to be installed: crash-kmp-default-7.1.5_k3.12.69_60.64.35-10.11 kernel-default-3.12.74-60.64.40.1 kernel-default-devel-3.12.74-60.64.40.1 kernel-devel-3.12.74-60.64.40.1 libQt5Network5 libinput-udev libinput10 libts-1_0-0 perl-Expect perl-IO-Stty perl-IO-Tty The following package is going to be REMOVED: ruby2.1-rubygem-suse-connect The following 636 packages are going to be upgraded: Mesa Mesa-32bit Mesa-libEGL1 Mesa-libEGL1-32bit Mesa-libGL1 Mesa-libGL1-32bit Mesa-libGLESv2-2 Mesa-libglapi0 Mesa-libglapi0-32bit MozillaFirefox MozillaFirefox-branding-SLE MozillaFirefox-translations SUSEConnect SuSEfirewall2 aaa_base aaa_base-extras acl alsa apparmor-docs apparmor-parser apparmor-profiles apparmor-utils at augeas-lenses autofs automake autoyast2 autoyast2-installation bash bash-completion bash-doc bind-libs bind-libs-32bit bind-utils binutils boost-license1_54_0 btrfsmaintenance btrfsprogs bzip2 ca-certificates-mozilla coreutils coreutils-lang cpio cpio-lang cpp48 cracklib crash cryptsetup cups cups-client cups-filters cups-filters-cups-browsed cups-filters-foomatic-rip cups-filters-ghostscript cups-libs cups-libs-32bit curl dbus-1 dbus-1-x11 deltarpm desktop-data-SLE device-mapper device-mapper-32bit dhcp dhcp-client dirmngr dmidecode dosfstools dracut e2fsprogs eog eog-lang expat fdupes findutils fontconfig fontconfig-32bit gcc48 gconf-editor gconf-editor-lang gcr-data gcr-lang gcr-prompter gd gdb gdk-pixbuf-lang gdk-pixbuf-query-loaders gdm gdm-branding-upstream gdm-lang gdmflexiserver ghostscript ghostscript-x11 glibc glibc-32bit glibc-devel glibc-i18ndata glibc-locale glibc-locale-32bit gnome-control-center gnome-control-center-lang gnome-desktop-lang gnome-keyring gnome-keyring-lang gnome-keyring-pam gnome-keyring-pam-32bit gnome-nettool gnome-nettool-lang gnome-session gnome-session-core gnome-session-default-session gnome-session-lang gnome-settings-daemon gnome-settings-daemon-lang gnome-shell gnome-shell-browser-plugin gnome-shell-classic gnome-shell-extensions-common gnome-shell-extensions-common-lang gnome-shell-lang gnome-shell-search-provider-nautilus gnome-version gpg2 gpg2-lang grub2 grub2-i386-pc grub2-snapper-plugin gstreamer gstreamer-lang gstreamer-plugins-bad gstreamer-plugins-bad-lang gstreamer-plugins-base gstreamer-plugins-base-lang gstreamer-plugins-good gstreamer-plugins-good-lang gtk2-lang gtk2-tools gtk3-data gtk3-lang gtk3-tools guile-modules-2_0 haveged hwinfo insserv-compat inst-source-utils ipmitool irqbalance iscsiuio kbd kdump kernel-firmware kernel-macros kexec-tools kmod kmod-compat kpartx krb5 krb5-32bit libFLAC8 libGLU1 libQt5Core5 libQt5DBus5 libQt5Gui5 libQt5Widgets5 libQt5X11Extras5 libSDL-1_2-0 libX11-6 libX11-6-32bit libX11-data libX11-xcb1 libX11-xcb1-32bit libXaw3d8 libXaw7 libXfixes3 libXfixes3-32bit libXfont1 libXi6 libXi6-32bit libXpm4 libXrandr2 libXrandr2-32bit libXrender1 libXrender1-32bit libXtst6 libXv1 libacl1 libacl1-32bit libapparmor1 libarchive13 libasan0 libasound2 libasound2-32bit libass5 libatomic1 libaudiofile1 libaugeas0 libavahi-client3 libavahi-client3-32bit libavahi-common3 libavahi-common3-32bit libavahi-glib1 libblkid1 libblkid1-32bit libbluray1 libboost_regex1_54_0 libboost_system1_54_0 libboost_thread1_54_0 libbtrfs0 libbz2-1 libbz2-1-32bit libcairo-gobject2 libcairo2 libcairo2-32bit libcap2 libcap2-32bit libcom_err2 libcom_err2-32bit libcrack2 libcrack2-32bit libcryptsetup4 libcryptsetup4-32bit libcurl4 libcurl4-32bit libdbus-1-3 libdbus-1-3-32bit libdcerpc-binding0 libdcerpc-binding0-32bit libdcerpc0 libdcerpc0-32bit libesmtp libexpat1 libexpat1-32bit libext2fs2 libffi4 libffi4-32bit libfltk1 libfreebl3 libfreebl3-32bit libgbm1 libgbm1-32bit libgc1 libgcc_s1 libgcc_s1-32bit libgck-1-0 libgck-modules-gnome-keyring libgcr-3-1 libgcrypt20 libgcrypt20-32bit libgdk_pixbuf-2_0-0 libgdm1 libgensec0 libgensec0-32bit libgif6-32bit libgme0 libgnome-desktop-3-8 libgnome-desktop-3_0-common libgnomesu libgnomesu-lang libgnomesu0 libgnutls28 libgomp1 libgraphite2-3 libgraphite2-3-32bit libgsm1 libgstallocators-1_0-0 libgstapp-1_0-0 libgstaudio-1_0-0 libgstbasecamerabinsrc-1_0-0 libgstcodecparsers-1_0-0 libgstegl-1_0-0 libgstfft-1_0-0 libgstmpegts-1_0-0 libgstpbutils-1_0-0 libgstphotography-1_0-0 libgstreamer-1_0-0 libgstriff-1_0-0 libgstrtp-1_0-0 libgstrtsp-1_0-0 libgstsdp-1_0-0 libgsttag-1_0-0 libgstvideo-1_0-0 libgtk-2_0-0 libgtk-3-0 libgudev-1_0-0 libguile-2_0-22 libhavege1 libhogweed2 libical1 libidn-tools libidn11 libidn11-32bit libimobiledevice4 libitm1 libjack0 libjasper1 libkmod2 libksba8 libldap-2_4-2 libldap-2_4-2-32bit libldb1 libldb1-32bit libltdl7 liblua5_2 libmount1 libmount1-32bit libmozjs-17_0 libnautilus-extension1 libndr-krb5pac0 libndr-krb5pac0-32bit libndr-nbt0 libndr-nbt0-32bit libndr-standard0 libndr-standard0-32bit libndr0 libndr0-32bit libnetapi0 libnetapi0-32bit libnetpbm11 libnettle4 libnuma1 libopenssl1_0_0 libopenssl1_0_0-32bit libopus0 libp11-kit0 libparted0 libpcap1 libpci3 libpci3-32bit libpciaccess0 libpciaccess0-32bit libpcre1 libpcre1-32bit libpcre16-0 libpeas-1_0-0 libpeas-gtk-1_0-0 libplist1 libpng16-16 libpng16-16-32bit libpolkit0 libpoppler-glib8 libpoppler44 libprocps3 libpth20 libpulse-mainloop-glib0 libpulse0 libpython2_7-1_0 libpython2_7-1_0-32bit libpython3_4m1_0 libqt4 libqt4-32bit libqt4-sql libqt4-sql-32bit libqt4-sql-sqlite libqt4-x11 libqt4-x11-32bit libquicktime0 libreadline6 libregistry0 libruby2_1-2_1 libsamba-credentials0 libsamba-credentials0-32bit libsamba-hostconfig0 libsamba-hostconfig0-32bit libsamba-passdb0 libsamba-passdb0-32bit libsamba-util0 libsamba-util0-32bit libsamdb0 libsamdb0-32bit libseccomp2 libsecret-1-0 libsecret-lang libselinux1 libselinux1-32bit libsgutils2-2 libsmartcols1 libsmbclient-raw0 libsmbclient-raw0-32bit libsmbclient0 libsmbconf0 libsmbconf0-32bit libsmbldap0 libsmbldap0-32bit libsnapper3 libsndfile1 libsoftokn3 libsoftokn3-32bit libspectre1 libspeechd2 libsqlite3-0 libsqlite3-0-32bit libssh2-1 libssh2-1-32bit libstdc++6 libstdc++6-32bit libstorage-ruby libstorage6 libtalloc2 libtalloc2-32bit libtasn1 libtasn1-6 libtdb1 libtdb1-32bit libtevent-util0 libtevent-util0-32bit libtevent0 libtevent0-32bit libtiff5 libtiff5-32bit libtirpc1 libtool libtool-32bit libtsan0 libudev1 libudev1-32bit libusbmuxd2 libuuid1 libuuid1-32bit libwbclient0 libwbclient0-32bit libwebp5 libwicked-0-6 libxcb-dri2-0 libxcb-dri2-0-32bit libxcb-glx0 libxcb-glx0-32bit libxcb-randr0 libxcb-render0 libxcb-render0-32bit libxcb-shape0 libxcb-shm0 libxcb-shm0-32bit libxcb-sync1 libxcb-xfixes0 libxcb-xfixes0-32bit libxcb-xkb1 libxcb-xv0 libxcb1 libxcb1-32bit libxml2-2 libxml2-2-32bit libxml2-tools libxslt-tools libxslt1 libz1 libz1-32bit lsof lua lvm2 mailx man man-pages mdadm mksh mlocate mozilla-nspr mozilla-nspr-32bit mozilla-nss mozilla-nss-32bit mozilla-nss-certs mozilla-nss-certs-32bit mtools multipath-tools mutt nautilus nautilus-lang netcfg netpbm nfs-client nfs-doc nfs-kernel-server nscd ntp numactl open-iscsi openldap2-client openslp openslp-32bit openslp-server openssh openssh-helpers openssl os-prober p11-kit p11-kit-tools p7zip pam pam-32bit pam-doc parted pciutils pciutils-ids pcsc-lite perl perl-32bit perl-Net-HTTP perl-Net-SSLeay perl-apparmor perl-base perl-libwww-perl permissions polkit polkit-default-privs polkit-gnome polkit-gnome-lang poppler-tools postfix ppp procps psmisc psmisc-lang pulseaudio pulseaudio-esound-compat pulseaudio-lang pulseaudio-module-x11 pulseaudio-utils pytalloc pytalloc-32bit python python-base python-cffi python-cryptography python-enum34 python-pyasn1 python-xml python3 python3-base python3-speechd readline-doc release-notes-sles rpcbind rpm rpm-32bit rpm-python rsync rsyslog ruby-common ruby2.1 ruby2.1-rubygem-gem2rpm ruby2.1-stdlib samba samba-32bit samba-client samba-client-32bit samba-libs samba-libs-32bit samba-winbind samba-winbind-32bit sg3_utils shadow shared-mime-info sles-admin_en-pdf sles-deployment_en-pdf sles-installquick_en-pdf sles-manuals_en sles-security_en-pdf sles-storage_en-pdf sles-tuning_en-pdf snapper snapper-zypp-plugin speech-dispatcher speech-dispatcher-module-espeak sqlite3 star strace sudo supportutils suse-build-key suse-module-tools sysconfig sysconfig-netconfig syslinux systemd systemd-32bit systemd-bash-completion systemd-presets-branding-SLE systemd-sysvinit tar tar-lang tcpdump tigervnc timezone typelib-1_0-Gck-1 typelib-1_0-Gcr-3 typelib-1_0-GdkPixbuf-2_0 typelib-1_0-Gdm-1_0 typelib-1_0-GnomeDesktop-3_0 typelib-1_0-Gtk-3_0 typelib-1_0-Peas-1_0 typelib-1_0-PeasGtk-1_0 typelib-1_0-Polkit-1_0 ucode-intel udev update-alternatives usbmuxd util-linux util-linux-lang util-linux-systemd vim vim-data vlan vsftpd w3m wget wicked wicked-service xf86-video-modesetting xfsprogs xinit xorg-x11-Xvnc xorg-x11-server xorg-x11-server-extra xscreensaver xscreensaver-data yast2 yast2-audit-laf yast2-bootloader yast2-core yast2-dhcp-server yast2-dns-server yast2-firewall yast2-inetd yast2-installation yast2-kdump yast2-mail yast2-network yast2-ntp-client yast2-packager yast2-ruby-bindings yast2-samba-server yast2-schema yast2-services-manager yast2-storage yast2-trans-en_GB yast2-update yast2-users 636 packages to upgrade, 11 new, 1 to remove. Overall download size: 486.2 MiB. Already cached: 0 B. After the operation, additional 273.9 MiB will be used.
A faire - Mettez à jour votre système par la méthode de mise à jour des paquets en répondant y. Pendant le processus, consultez le manuel de zypper pour vous renseigner sur les autres commandes et options.
Les bibliothèques partagées sont des fonctions communes à plusieurs programmes différents d'un même domaine (son, base de données, vidéo etc.). Les fonctions proposées par une ou plusieurs bibliothèques forment un API (Application Programming Interface). Sous Linux les bibliothèques se nomment Shared Objects et portent le suffixe .so.
Les bibliothèques partagées sont stockées par convention dans des répertoires lib, par exemple :
Répertoire | Contenu |
---|---|
/lib | Bibliothèques du système de base |
/usr/lib | Bibliothèques utilisateurs |
/usr/local/lib | Bibliothèques locales |
/usr/X11R6/lib | Bibliothèques de l'environnement X |
/opt/kde4/lib | Bibliothèques de KDE |
Important : La bibliothèque la plus importante est libc. Sans elle, le système Linux ne peut pas fonctionner.
La bibliothèque ld-linux.so.2 est utilisée par le système pour créer un lien avec une bibliothèque partagée au moment de l'exécution d'un programme et s'appelle le chargeur de liens. Ce dernier recherche des bibliothèques partagées dans un ordre précis :
Il est à noter que le contenu du cache ld.so.cache est construit à partir des informations contenus dans le fichier de configuration /etc/ld.so.conf.
Afin d'étudier les bibliothèques liées à une application, nous allons d'abord installer l'application mc, un explorateur de fichiers en mode console.
Pour déterminer quelles sont les bibliothèques liées à une application, il convient d'utiliser la commande ldd :
SUSE12SP1:~ # ldd /usr/bin/mc linux-vdso.so.1 (0x00007fff1b1cd000) libslang.so.2 => /usr/lib64/libslang.so.2 (0x00007efe9bb68000) libgpm.so.2 => /usr/lib64/libgpm.so.2 (0x00007efe9b961000) libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x00007efe9b735000) libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007efe9b531000) libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007efe9b22e000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007efe9b011000) libc.so.6 => /lib64/libc.so.6 (0x00007efe9ac69000) libdl.so.2 => /lib64/libdl.so.2 (0x00007efe9aa65000) libm.so.6 => /lib64/libm.so.6 (0x00007efe9a764000) libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007efe9a370000) libz.so.1 => /lib64/libz.so.1 (0x00007efe9a15a000) libpcre.so.1 => /usr/lib64/libpcre.so.1 (0x00007efe99eeb000) /lib64/ld-linux-x86-64.so.2 (0x00007efe9bedf000)
Afin de comprendre ce qui se passe dans le cas où une bibliothèque est manquante, renommez la bibliothèque /usr/lib/libslang.so.2 en /usr/lib/libslang.so.2.old :
SUSE12SP1:~ # mv /usr/lib64/libslang.so.2 /usr/lib64/libslang.so.2.old
Exécutez de nouveau la commande ldd. Vous obtiendrez un résultat similaire à celui-ci :
SUSE12SP1:~ # ldd /usr/bin/mc linux-vdso.so.1 (0x00007fffa09c1000) libslang.so.2 => not found libgpm.so.2 => /usr/lib64/libgpm.so.2 (0x00007f96b418d000) libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x00007f96b3f61000) libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007f96b3d5d000) libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f96b3a5a000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f96b383d000) libc.so.6 => /lib64/libc.so.6 (0x00007f96b3495000) libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007f96b30a1000) libz.so.1 => /lib64/libz.so.1 (0x00007f96b2e8b000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f96b2c87000) libpcre.so.1 => /usr/lib64/libpcre.so.1 (0x00007f96b2a18000) /lib64/ld-linux-x86-64.so.2 (0x00007f96b4394000)
Notez la présence de la ligne libslang.so.2 ⇒ not found. Compte tenu de la bibliothèque partagée manquante, le programme mc ne peut plus être lancé :
SUSE12SP1:~ # mc mc: error while loading shared libraries: libslang.so.2: cannot open shared object file: No such file or directory
Renommez la bibliothèque correctement et vérifiez la résolution de l'erreur précédente avec la commande ldd :
SUSE12SP1:~ # mv /usr/lib64/libslang.so.2.old /usr/lib64/libslang.so.2 SUSE12SP1:~ # ldd /usr/bin/mc linux-vdso.so.1 (0x00007ffc3f262000) libslang.so.2 => /usr/lib64/libslang.so.2 (0x00007f51b70ca000) libgpm.so.2 => /usr/lib64/libgpm.so.2 (0x00007f51b6ec3000) libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x00007f51b6c97000) libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007f51b6a93000) libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f51b6790000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f51b6573000) libc.so.6 => /lib64/libc.so.6 (0x00007f51b61cb000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f51b5fc7000) libm.so.6 => /lib64/libm.so.6 (0x00007f51b5cc6000) libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007f51b58d2000) libz.so.1 => /lib64/libz.so.1 (0x00007f51b56bc000) libpcre.so.1 => /usr/lib64/libpcre.so.1 (0x00007f51b544d000) /lib64/ld-linux-x86-64.so.2 (0x00007f51b7441000)
Le fichier /etc/ld.so.conf est utilisé pour configurer le cache /etc/ld.so.cache :
SUSE12SP1:~ # cat /etc/ld.so.conf /usr/local/lib64 /usr/local/lib include /etc/ld.so.conf.d/*.conf # /lib64, /lib, /usr/lib64 and /usr/lib gets added # automatically by ldconfig after parsing this file. # So, they do not need to be listed.
Dans ce cas, le fichier contient des chemins ainsi qu'une directive include qui renvoie vers le contenu du répertoire /etc/ld.so.conf.d/ :
SUSE12SP1:~ # ls -l /etc/ld.so.conf.d/ total 0
La commande ldconfig est utilisée pour :
Les liens symboliques sont utilisés pour gérer les versions de bibliothèques.
La commande ldconfig peut être utilisée avec l'option -p pour visualiser le contenu du cache :
SUSE12SP1:~ # ldconfig -p | more 1128 libs found in cache `/etc/ld.so.cache' libzypp.so.1519 (libc6,x86-64) => /usr/lib64/libzypp.so.1519 libzio.so.1 (libc6,x86-64) => /usr/lib64/libzio.so.1 libz.so.1 (libc6,x86-64) => /lib64/libz.so.1 libz.so.1 (libc6) => /lib/libz.so.1 liby2util.so.5 (libc6,x86-64) => /usr/lib64/liby2util.so.5 liby2.so.4 (libc6,x86-64) => /usr/lib64/liby2.so.4 libyui.so.7 (libc6,x86-64) => /usr/lib64/libyui.so.7 libyelp.so.0 (libc6,x86-64) => /usr/lib64/libyelp.so.0 libycpvalues.so.6 (libc6,x86-64) => /usr/lib64/libycpvalues.so.6 libycp.so.5 (libc6,x86-64) => /usr/lib64/libycp.so.5 libyaml-0.so.2 (libc6,x86-64) => /usr/lib64/libyaml-0.so.2 libx86emu.so.1 (libc6,x86-64) => /usr/lib64/libx86emu.so.1 libxtables.so.10 (libc6,x86-64) => /usr/lib64/libxtables.so.10 libxslt.so.1 (libc6,x86-64) => /usr/lib64/libxslt.so.1 libxshmfence.so.1 (libc6,x86-64) => /usr/lib64/libxshmfence.so.1 libxml2.so.2 (libc6,x86-64) => /usr/lib64/libxml2.so.2 libxml2.so.2 (libc6) => /usr/lib/libxml2.so.2 libxklavier.so.16 (libc6,x86-64) => /usr/lib64/libxklavier.so.16 libxkbfile.so.1 (libc6,x86-64) => /usr/lib64/libxkbfile.so.1 libxkbcommon.so.0 (libc6,x86-64) => /usr/lib64/libxkbcommon.so.0 libxkbcommon-x11.so.0 (libc6,x86-64) => /usr/lib64/libxkbcommon-x11.so.0 libxcb.so.1 (libc6,x86-64) => /usr/lib64/libxcb.so.1 libxcb.so.1 (libc6) => /usr/lib/libxcb.so.1 libxcb-xv.so.0 (libc6,x86-64) => /usr/lib64/libxcb-xv.so.0 libxcb-xkb.so.1 (libc6,x86-64) => /usr/lib64/libxcb-xkb.so.1 libxcb-xfixes.so.0 (libc6,x86-64) => /usr/lib64/libxcb-xfixes.so.0 libxcb-xfixes.so.0 (libc6) => /usr/lib/libxcb-xfixes.so.0 libxcb-util.so.1 (libc6,x86-64) => /usr/lib64/libxcb-util.so.1 libxcb-sync.so.1 (libc6,x86-64) => /usr/lib64/libxcb-sync.so.1 libxcb-shm.so.0 (libc6,x86-64) => /usr/lib64/libxcb-shm.so.0 libxcb-shm.so.0 (libc6) => /usr/lib/libxcb-shm.so.0 libxcb-shape.so.0 (libc6,x86-64) => /usr/lib64/libxcb-shape.so.0 libxcb-render.so.0 (libc6,x86-64) => /usr/lib64/libxcb-render.so.0 libxcb-render.so.0 (libc6) => /usr/lib/libxcb-render.so.0 --More--
Pour ajouter des bibliothèques partagées, il convient de :
<html>
Copyright © 2004-2017 I2TCH LIMITED.<br><br>
</html>