Inhaltsverzeichnis

Changelog beim Paketupdate

Wer kennt es nicht, das flaue Gefühl im Magen, wenn mal wieder jede Menge Systemupdates anstehen, oder gerade wieder vulnerability-bug Nachrichten in den einschlägigen Medien auftauchen. Ist bei dem gerade anstehenden Update ein hotfix mit dabei oder was genau wurde wurde in dem Updatepaket geändert?

Hilfreiche Informationen vermerkt ein Paketmaintainer beim Bauen eines RPMs in dessen Changelog.

 $ less rpmbuild/SPECS/smf-spf-2.0.4-3.spec
...

%changelog
* Sun May 04 2014 Django <django@nausch.org> 2.0.4-3
  - version 2.0.4-3 build with patches from Andreas Schulze:
     ° fixwarnings.patch
     ° ar-header.patch
     ° no_daemon.patch
     ° logging.patch
     ° insert_header.patch
     ° ipv6.patch
  Thanx to Andreas!

...

Standard Update

Bei einem Paketupdate sehen wir nur nichts von diesen Informationen.

 # yum update
Loaded plugins: changelog, priorities, security                                                          
1524 packages excluded due to repository priority protections                                            
Setting up Update Process                                                                                
Resolving Dependencies                                                                                   
--> Running transaction check                                                                            
---> Package mpg123.x86_64 0:1.20.0-1.el6.rf will be updated                                             
---> Package mpg123.x86_64 0:1.20.1-1.el6.rf will be an update                                           
--> Finished Dependency Resolution                                                                       
                                                                                                         
Dependencies Resolved                                                                                    
                                                                                                         
=========================================================================================================
 Package             Arch                Version                       Repository                   Size 
=========================================================================================================
Updating:                                                                                                
 mpg123              x86_64              1.20.1-1.el6.rf               rpmforge-LOCAL              433 k 
                                                                                                         
Transaction Summary                                                                                      
=========================================================================================================
Upgrade       1 Package(s)

Total download size: 433 k
Is this ok [y/N]: 

Installation

Damit wir bei einem Update die Changelog-Informationen sehen können, installieren wir uns das Paket yum-plugin-changelog.

 # yum install yum-plugin-changelog

Was uns das Paket mitbringt zeigt uns der folgende Aufruf:

 # rpm -qil yum-plugin-changelog
Name        : yum-plugin-changelog
Version     : 1.1.31
Release     : 24.el7
Architecture: noarch
Install Date: Fri 11 Jul 2014 10:48:41 PM CEST
Group       : System Environment/Base
Size        : 41381
License     : GPLv2+
Signature   : RSA/SHA256, Fri 04 Jul 2014 07:53:12 AM CEST, Key ID 24c6a8a7f4a80eb5
Source RPM  : yum-utils-1.1.31-24.el7.src.rpm
Build Date  : Tue 10 Jun 2014 09:49:41 AM CEST
Build Host  : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : http://yum.baseurl.org/download/yum-utils/
Summary     : Yum plugin for viewing package changelogs before/after updating
Description :
This plugin adds a command line option to allow viewing package changelog
deltas before or after updating packages.
/etc/yum/pluginconf.d/changelog.conf
/usr/lib/yum-plugins/changelog.py
/usr/lib/yum-plugins/changelog.pyc
/usr/lib/yum-plugins/changelog.pyo
/usr/share/doc/yum-plugin-changelog-1.1.31
/usr/share/doc/yum-plugin-changelog-1.1.31/COPYING
/usr/share/man/man1/yum-changelog.1.gz
/usr/share/man/man5/yum-changelog.conf.5.gz

man page

Weitere Informationen über das Paket yum-changelog finden wir auch in der man-Page des Paketes.

 # man yum-changelog
YUM-CHANGELOG(1)                             User Manuals                             YUM-CHANGELOG(1)

NAME
       yum-changelog

SYNOPSIS
       The yum-changelog package

DESCRIPTION
       yum-changelog(1)  is  a  Yum  plugin for viewing package changelogs before/after updating.  yum
       will invoke yum-changelog(1) plugin if the --changelog option or the changelog command is  used
       with yum.

OPTIONS
       --changelog
              Show changelog delta of updated packages

COMMANDS
       changelog
              Show  changelog  data  of  packages listed (same format as the list command).  The first
              argument is required and is either "all" for all the changelog entries, a date  for  the
              changelog  entries  since  a  specified  point in time or a number for a given number of
              changelog entries.

FILES
       /etc/yum/pluginconf.d/changelog.conf
              The system wide configuration file. See yum-changelog.conf(5) for more information.

EXAMPLES
       # yum changelog 2008-Jan yum\*
       Listing changelogs since: 2008-01-18
       yum-versionlock-1.1.11-1.fc8.noarch      installed
       * Wed Jan 30 17:00:00 2008 Tim Lauridsen <timlau@fedoraproject.org>
       - mark as 1.1.11
       changelog stats. 33 pkgs, 12 source pkgs, 1 changelog
       # yum update ktechlab --changelog
       Loading "changelog" plugin
       Setting up Update Process
       Setting up repositories
       [..]
       Resolving Dependencies
       --> Populating transaction set with selected packages. Please wait.
       ---> Package ktechlab.i386 0:0.3-6 set to be updated
       --> Running transaction check

       Changes in packages about to be updated:

       ktechlab - 0.3-6.i386
       * Wed Nov 22 23:00:00 2006 Chitlesh Goorah - 0.3-6
       - Rebuilt due to new gpsim-devel release

BUGS
       There are of course no bugs, but should you find any, you should first consult the FAQ  section
       on  http://yum.baseurl.org/wiki/Faq  and  if  unsuccessful  in finding a resolution contact the
       mailing list: yum-devel@lists.baseurl.org.  To file a bug  use  http://bugzilla.redhat.com  for
       Fedora/RHEL/Centos related bugs and http://yum.baseurl.org/report for all other bugs.

AVAILABILITY
       yum-changelog is available via:
       # yum install yum-changelog

AUTHORS
              Chitlesh Goorah <chitlesh@fedoraproject.org>
              Panu Matilainen <pmatilai@laiskiainen.org>
              James Antill <james@and.org>

SEE ALSO
       yum(1)

                                           08 February 2007                           YUM-CHANGELOG(1)

manueller Aufruf

Mit der Option --changelog beim Aufruf von yum update werden uns nun die Informationen aus dem RPM-Paket angezeigt.

 # yum update --changelog
Loaded plugins: changelog, priorities, security
1524 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package mpg123.x86_64 0:1.20.0-1.el6.rf will be updated
---> Package mpg123.x86_64 0:1.20.1-1.el6.rf will be an update
--> Finished Dependency Resolution

Changes in packages about to be updated:

ChangeLog for: mpg123-1.20.1-1.el6.rf.x86_64
* Thu Jul 10 14:00:00 2014 Dag Wieers <dag@wieers.com> - 1.20.1-1
- Updated to release 1.20.1.


Dependencies Resolved

=========================================================================================================
 Package             Arch                Version                       Repository                   Size
=========================================================================================================
Updating:
 mpg123              x86_64              1.20.1-1.el6.rf               rpmforge-LOCAL              433 k

Transaction Summary
=========================================================================================================
Upgrade       1 Package(s)

Total download size: 433 k
Is this ok [y/N]:

automatischer Aufruf

Damit wir nun nicht bei jedem Update diese Option „manuell“ mit anfügen müssen, machen wir eine kleine Änderung in der Konfigurationsdatei des Plugins. Wir setzen dazu die Option always auf true.

 # vim /etc/yum/pluginconf.d/changelog.conf
/etc/yum/pluginconf.d/changelog.conf
[main]
enabled=1
 
# Set to 'pre' or 'post' to see changes before or after transaction
when=pre
# Set to true, to always get the output (removes the cmd line arg)
# Django : 2014-07-11
# default: always=false
always=true

Nun können wir unser System wie gewohnt einfach updaten und wir erhalten die Information(en) aus dem oder den Paketen angezeigt.

 # yum update
Loaded plugins: changelog, priorities, security
1524 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package mpg123.x86_64 0:1.20.0-1.el6.rf will be updated
---> Package mpg123.x86_64 0:1.20.1-1.el6.rf will be an update
--> Finished Dependency Resolution

Changes in packages about to be updated:

ChangeLog for: mpg123-1.20.1-1.el6.rf.x86_64
* Thu Jul 10 14:00:00 2014 Dag Wieers <dag@wieers.com> - 1.20.1-1
- Updated to release 1.20.1.


Dependencies Resolved

=========================================================================================================
 Package             Arch                Version                       Repository                   Size
=========================================================================================================
Updating:
 mpg123              x86_64              1.20.1-1.el6.rf               rpmforge-LOCAL              433 k

Transaction Summary
=========================================================================================================
Upgrade       1 Package(s)

Total download size: 433 k
Is this ok [y/N]:

Links