summaryrefslogtreecommitdiffabout
path: root/README
blob: 13c7fd45b2d5a62c45bdefc7361d7b8112524e5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
Overview
========

This package provides slackupgrade, a script that performs a full
upgrade of a Slackware distribution.

Installation
============

Run "make install" as root.  The slackupgrade script will be
installed to /sbin, and its man page, slackupgrade.8, to
/usr/man/man8.  These are most suitable locations for Slackware.  To
install them elsewhere, use the following Makefile variables:

 SBINDIR  - Directory to install slackupgrade to.
 MANDIR   - toplevel directory for man page installation (/usr/man).
 MAN8DIR  - directory for the man page installation ($(MANDIR)/man8).

Usage
=====

Before upgrade, please make sure you backup all sensitive data on your
system.  When upgrading a remote machine, it is advisable to have a KVM
console attached to it, so that you can intervene if the box refuses
to boot.

Please read slackupgrade(8) to familiarize yourself with
the script and its options.

Run slackupgrade in dry-run mode:

  slackupgrade -n

This will look for the nearest next release available, create the list
of packages to be upgraded, installed and removed and will print the
results.  This run will not touch any files on your filesystem
(excepting the slackupgrade logs, see below).  Instead it
will verbosely print what would have been done during real upgrade.
Inspect its output to see if it actually does what you need.  In
particular, the upgrade will most likely decide to remove some
packages during the upgrade.  These are the packages that existed in
your current release, but have been removed in the next one, or the
packages you have installed from third-party sources.  You may wish to
retain any of them or provide replacements, or reinstall them afterward.

If you wish to retain any of them, create a list of packages to retain
and supply it to the script using the -k command line option (see the
man page for details).

To provide a replacement for a particular package, use the -p option.
  
For your information, the list of removed packages is left in file
/var/log/slackupgrade-<P>-<N>.dry_run.removed.

When you are finished with the dry run, proceed to the actual upgrade.
Run

  slackupgrade

with any additional options you decided to give it after the dry run.
After completion, the script will create three files for your
consideration.  In the discussion below, <P> stands for the original
Slackware version number, and <N> stands for the new Slackware version
number (the version you upgraded to):

/var/log/slackupgrade-<P>-<N>.log
  Log file.  Contains detailed transcript of all actions performed
  during the upgrade.
  
/var/log/slackupgrade-<P>-<N>.removed
  A list of packages removed during the upgrade.  A package is removed
  if the new release does not provide a replacement for it.  This may
  not always be desirable, and you may reinstall some of them
  afterward.
  
/var/log/slackupgrade-<P>-<N>.new
  A list of configuration file replacements created during the upgrade.
  These are configuration files provided by the upgraded packages that
  are left in the filesystem along with your current file versions.
  They have the same names as the original files, but with the ".new"
  suffix.  Please revise these files.  You may need to merge them with
  your actual files, or move them over, or simply remove them.

Before attempting to reboot your system, please make sure that the
bootloader has been updated for the new kernel.

Each run of slackupgrade creates the three log files discussed above.
When run with the "-n" command line option (a "dry-run" mode), additional
".dry_run" suffix is inserted to each name, after the <P>-<N> part.

Special notes
=============

We recommend to always upgrade to the next release, without skipping
release numbers (even though the script allows you to do so).  For
example, instead of upgrading from 14.0 to 14.2, run two subsequent
upgrades.  First, upgrade your system, to 14.1 and make sure everything
works as expected.  Then, upgrade it to 14.2.

License
=======
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program.  If not, see <http://www.gnu.org/licenses/>.

Return to:

Send suggestions and report system problems to the System administrator.