Index: chapter.sgml
===================================================================
RCS file: /home/dcvs/doc/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.sgml,v
retrieving revision 1.256
diff -u -r1.256 chapter.sgml
--- chapter.sgml 15 Dec 2011 13:29:19 -0000 1.256
+++ chapter.sgml 17 Dec 2011 13:01:47 -0000
@@ -2472,6 +2472,69 @@
+
+
+
+
+ Anton
+ Shterenlikht
+ Based on notes provided by
+
+
+
+ Deleting obsolete files, directories and libraries
+
+ Deleting obsolete files, directories and libraries
+
+
+ As a part of the &os; development lifecycle, it happens from time
+ to time that files and their contents become obsolete. This may be
+ because their functionality is implemented elsewhere, the version number
+ of the library has changed or it was removed from the system entirely.
+ This includes old files, libraries and directories, which should
+ be removed when updating the system. The benefit for the user is that
+ the system is not cluttered with old files which take up unnecessary
+ space on the storage (and backup) medium. Additionally, if the old
+ library had a security or stability issue, you should update to the
+ newer library to keep your system safe and prevent crashes caused by
+ the old library implementation. The files, directories, and libraries
+ that are considered obsolete are listed in
+ /usr/src/ObsoleteFiles.inc. The following
+ instructions will help you removing these obsolete files during the
+ system upgrade process.
+
+ We assume you are following the steps outlined in . After the make
+ installworld and the subsequent
+ mergemaster commands have finished successfully, you
+ should check for obsolete files and libraries as follows:
+
+ &prompt.root; cd /usr/src
+ &prompt.root; make check-old
+
+ If any obsolete files are found, they can be deleted using the
+ following commands:
+
+ &prompt.root; make delete-old
+
+
+ See /usr/src/Makefile
+ for more targets of interest.
+
+
+ A prompt is displayed before deleting each obsolete file. You can
+ skip the prompt and let the system remove these files automatically by
+ using the BATCH_DELETE_OLD_FILES make-variable as
+ follows:
+
+ &prompt.root; make -DBATCH_DELETE_OLD_FILES delete-old
+
+ You can also achieve the same goal by piping these commands through
+ yes like this:
+
+ &prompt.root; yes|make delete-old
+
+
Update Files Not Updated by make installworld
@@ -2733,6 +2796,48 @@
&prompt.root; shutdown -r now
+
+ Deleting obsolete libraries
+
+
+ Warning
+
+ Deleting obsolete files will break applications that still
+ depend on those obsolete files. This is especially true for old
+ libraries. In most cases, you need to recompile the programs, ports,
+ or libraries that used the old library before make
+ delete-old-libs is executed.
+
+
+ Utilities for checking shared library dependencies are available from
+ the Ports Collection in sysutils/libchk or sysutils/bsdadminscripts.
+
+ Obsolete shared libraries can conflict with newer libraries,
+ causing messages like these:
+
+ /usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5
+ /usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so, may conflict with librpcsvc.so.5
+
+ To solve these problems, determine which port installed the
+ library:
+
+ &prompt.root; pkg_info -W /usr/local/lib/libtiff.so
+ /usr/local/lib/libtiff.so was installed by package tiff-3.9.4
+ &prompt.root; pkg_info -W /usr/local/lib/libXext.so
+ /usr/local/lib/libXext.so was installed by package libXext-1.1.1,1
+
+ Then deinstall, rebuild and reinstall the port. The ports-mgmt/portmaster and ports-mgmt/portupgrade utilities can be used to
+ automate this process. After you've made sure that all ports are rebuilt
+ and do not use the old libraries anymore, you can delete them using the
+ following command:
+
+ &prompt.root; make delete-old-libs
+
+
Finished
@@ -3021,106 +3126,6 @@
-
-
-
-
- Anton
- Shterenlikht
- Based on notes provided by
-
-
-
- Deleting obsolete files, directories and libraries
-
- Deleting obsolete files, directories and libraries
-
-
- As a part of the &os; development lifecycle, it happens from time
- to time that files and their contents become obsolete. This may be
- because their functionality is implemented elsewhere, the version number
- of the library has changed or it was removed from the system entirely.
- This includes old files, libraries and directories, which should
- be removed when updating the system. The benefit for the user is that
- the system is not cluttered with old files which take up unnecessary
- space on the storage (and backup) medium. Additionally, if the old
- library had a security or stability issue, you should update to the
- newer library to keep your system safe and prevent crashes caused by
- the old library implementation. The files, directories, and libraries
- that are considered obsolete are listed in
- /usr/src/ObsoleteFiles.inc. The following
- instructions will help you removing these obsolete files during the
- system upgrade process.
-
- We assume you are following the steps outlined in . After the make
- installworld and the subsequent
- mergemaster commands have finished successfully, you
- should check for obsolete files and libraries as follows:
-
- &prompt.root; cd /usr/src
-&prompt.root; make check-old
-
- If any obsolete files are found, they can be deleted using the
- following commands:
-
- &prompt.root; make delete-old
-
-
- See /usr/src/Makefile
- for more targets of interest.
-
-
- A prompt is displayed before deleting each obsolete file. You can
- skip the prompt and let the system remove these files automatically by
- using the BATCH_DELETE_OLD_FILES make-variable as
- follows:
-
- &prompt.root; make -DBATCH_DELETE_OLD_FILES delete-old
-
- You can also achieve the same goal by piping these commands through
- yes like this:
-
- &prompt.root; yes|make delete-old
-
-
- Warning
- Deleting obsolete files will break applications that still
- depend on those obsolete files. This is especially true for old
- libraries. In most cases, you need to recompile the programs, ports,
- or libraries that used the old library before make
- delete-old-libs is executed.
-
-
- Utilities for checking shared library dependencies are available from
- the Ports Collection in sysutils/libchk or sysutils/bsdadminscripts.
-
- Obsolete shared libraries can conflict with newer libraries,
- causing messages like these:
-
- /usr/bin/ld: warning: libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5
-/usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so, may conflict with librpcsvc.so.5
-
- To solve these problems, determine which port installed the
- library:
-
- &prompt.root; pkg_info -W /usr/local/lib/libtiff.so
-/usr/local/lib/libtiff.so was installed by package tiff-3.9.4
-&prompt.root; pkg_info -W /usr/local/lib/libXext.so
-/usr/local/lib/libXext.so was installed by package libXext-1.1.1,1
-
- Then deinstall, rebuild and reinstall the port. The ports-mgmt/portmaster and ports-mgmt/portupgrade utilities can be used to
- automate this process. After you've made sure that all ports are rebuilt
- and do not use the old libraries anymore, you can delete them using the
- following command:
-
- &prompt.root; make delete-old-libs
-
-