summaryrefslogtreecommitdiffstats
path: root/pod/urpmi.recover.8.pod
blob: 42c2bb8bcc2b8aecedb95fdb0a8343d453b587f8 (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
=head1 NAME

urpmi.recover - manages repackaging of old RPMs and rollbacks

=head1 SYNOPSIS

    urpmi.recover --checkpoint
    urpmi.recover --list '1 week ago'
    urpmi.recover --rollback '1 hour ago'
    urpmi.recover --disable

=head1 DESCRIPTION

B<urpmi.recover> is a tool to help management of RPM rollbacks. It has
three main functions:

C<urpmi.recover --checkpoint> is used to define a point in your system
that you consider stable, and to start storing info that will enable you
to rollback installations and upgrades to this state.

C<urpmi.recover --list> is used to list chronologically all installations
and upgrades on your system.

C<urpmi.recover --rollback> is used to roll back installations and
upgrades to a previous point in the past (at most until your checkpoint.)

=head1 OPTIONS

=over 4

=item --checkpoint

Define the repackaging checkpoint. From now on, using rpm and/or
urpmi/urpme to install, upgrade or remove packages, the older packages
will be stored in F</var/spool/repackage>, or whatever directory you set
the C<%_repackage_dir> rpm macro to. This way one can use them for
rollbacks.

Technically, using this option writes a file
F</etc/rpm/macros.d/urpmi.recover.macros> that overrides the rpm macros
used to set up the repackaging functionalities of rpm. You can change
C<%_repackage_dir> there if you want to. Note that you'll probably need
plenty of space to store repackaged rpms for a long timeframe.

You can also choose to turn off repackaging by setting
C<%_repackage_all_erasures> to 0 in this file. (Of course if you do so
rollbacks won't be possible anymore.)

=item --noclean

C<--checkpoint> defines a new checkpoint and removes everything in the
repackage directory. To prevent this cleaning, use the C<--noclean>
option.

=item --list <date>

Lists all installations and upgrades from now since the provided date. The
date parser is quite elaborated, so you can give a date in ISO format or
close to it (C<YYYY-MM-DD hh:mm:ss>) or a duration (e.g. "1 day ago").

=item --list-all

Lists all installations and upgrades known to the RPM database.

=item --rollback <date>

=item --rollback <number of transactions>

Roll back the system to the given date (see C<--list> for accepted date
formats), or rolls back the given number of transactions.

=item --disable

Turn off repackaging. Unless C<--noclean> was also specified, this cleans
up the repackage directory as well. To turn it on again, use
C<--checkpoint>.

=back

=head1 BUGS

When enabled, you can't install and repackage delta rpms (rpms generated
with the C<makedeltarpm> tool.)

=head1 FILES

    /etc/rpm/macros.d/urpmi.recover.macros

=head1 AUTHOR

Rafael Garcia-Suarez, <rgarciasuarez@mandriva.com>

=head1 SEE ALSO

urpmi(8), urpme(8)