Chapter 6. Package maintainer scripts and installation procedure
43
old postrm
upgrade
new version
2 If this fails,
dpkg
will attempt:
new postrm
failed upgrade
old version
Error unwind, for both cases:
old preinst
abort upgrade
new version
This is the point of no return if
dpkg
gets this far, it won't back off past this point
if an error occurs. This will leave the package in a fairly bad state, which will require
a successful re installation to clear up, but it's when
dpkg
starts doing things that are
irreversible.
6 Any files which were in the old version of the package but not in the new are removed.
7 The new file list replaces the old.
8 The new maintainer scripts replace the old.
9 Any packages all of whose files have been overwritten during the installation, and which
aren't required for dependencies, are considered to have been removed. For each such
package
1
dpkg
calls:
disappearer's postrm
disappear \
overwriter overwriter version
2 The package's maintainer scripts are removed.
3 It is noted in the status database as being in a sane state, namely not installed (any
conffiles it may have are ignored, rather than being removed by
dpkg
). Note that
disappearing packages do not have their prerm called, because
dpkg
doesn't know
in advance that the package is going to vanish.
10 Any files in the package we're unpacking that are also listed in the file lists of other pack
ages are removed from those lists. (This will lobotomize the file list of the conflicting
package if there is one.)
11 The backup files made during installation, above, are deleted.
12 The new package's status is now sane, and recorded as unpacked .
Here is another point of no return if the conflicting package's removal fails we do not
unwind the rest of the installation; the conflicting package is left in a half removed limbo.
13 If there was a conflicting package we go and do the removal actions (described below),
starting with the removal of the conflicting package's files (any that are also in the pack
age being installed have already been removed from the conflicting package's file list,
and so do not get removed now).
footer
Our partners:
PHP: Hypertext Preprocessor Best Web Hosting
Java Web Hosting
Inexpensive Web Hosting
Jsp Web Hosting
Cheapest Web Hosting
Jsp Hosting
Cheap Hosting
Visionwebhosting.net Business web hosting division of Web
Design Plus. All rights reserved