diff options
author | Thierry Vignaud <tv@mageia.org> | 2012-06-08 18:56:44 +0000 |
---|---|---|
committer | Thierry Vignaud <tv@mageia.org> | 2012-06-08 18:56:44 +0000 |
commit | 5c9233d5397d0ed370909b719c0f52365098b758 (patch) | |
tree | 4cf604c20832230f53eb4684fb59e0a4756df7e9 /pod/8 | |
parent | 091aaacde979eab5b08a3f2ef37e08ee5c585aa8 (diff) | |
download | urpmi-5c9233d5397d0ed370909b719c0f52365098b758.tar urpmi-5c9233d5397d0ed370909b719c0f52365098b758.tar.gz urpmi-5c9233d5397d0ed370909b719c0f52365098b758.tar.bz2 urpmi-5c9233d5397d0ed370909b719c0f52365098b758.tar.xz urpmi-5c9233d5397d0ed370909b719c0f52365098b758.zip |
actually rename
Diffstat (limited to 'pod/8')
-rw-r--r-- | pod/8/rurpme.pod | 34 | ||||
-rw-r--r-- | pod/8/rurpmi.pod | 38 | ||||
-rw-r--r-- | pod/8/urpme.pod | 136 | ||||
-rw-r--r-- | pod/8/urpmf.pod | 286 | ||||
-rw-r--r-- | pod/8/urpmi.addmedia.pod | 246 | ||||
-rw-r--r-- | pod/8/urpmi.pod | 553 | ||||
-rw-r--r-- | pod/8/urpmi.recover.pod | 110 | ||||
-rw-r--r-- | pod/8/urpmi.removemedia.pod | 53 | ||||
-rw-r--r-- | pod/8/urpmi.update.pod | 114 | ||||
-rw-r--r-- | pod/8/urpmihowto.pod | 396 | ||||
-rw-r--r-- | pod/8/urpmq.pod | 352 |
11 files changed, 2318 insertions, 0 deletions
diff --git a/pod/8/rurpme.pod b/pod/8/rurpme.pod new file mode 100644 index 00000000..16d6268e --- /dev/null +++ b/pod/8/rurpme.pod @@ -0,0 +1,34 @@ +=head1 NAME + +rurpme - restricted urpme + +=head1 SYNOPSIS + + rurpme [options] [package_name...] + +=head1 DESCRIPTION + +rurpme is similar to urpme, but has a stripped-down set of features. It's +intended to be used by users without root privileges but with sudo rights +on it, preventing any abuse of this tool to compromise the system. + +With rurpme, the following options are forbidden: B<--root>, +B<--use-distrib>, B<--noscripts> and B<--parallel>. + +=head1 CAVEAT + +This software is still experimental. While some operations are forbidden, +there is no guarantee it is actually secure. + +=head1 OPTIONS + +The options are the same than urpme ones. + +=head1 AUTHOR + +Maintained by Rafael Garcia-Suarez, + + +=head1 SEE ALSO + +urpme(8). diff --git a/pod/8/rurpmi.pod b/pod/8/rurpmi.pod new file mode 100644 index 00000000..dae12529 --- /dev/null +++ b/pod/8/rurpmi.pod @@ -0,0 +1,38 @@ +=head1 NAME + +rurpmi - restricted urpmi + +=head1 SYNOPSIS + + rurpmi [options] [package_name...] + +=head1 DESCRIPTION + +rurpmi is similar to urpmi, but has a stripped-down set of features. It's +intended to be used by users without root privileges but with sudo rights +on it, preventing any abuse of this tool to compromise the system. + +With rurpmi, you can't install arbitrary rpm files; moreoever the +B<--keep> and B<--verify-rpm> options are forced, and +several dangerous options are forbidden (B<--root>, B<--use-distrib>, +B<--env>, B<--allow-nodeps>, B<--allow-force>, B<--force>, B<--noscripts>, +B<--auto-update>). Also, you won't be able to install rpms with bad +signatures. + +=head1 CAVEAT + +This software is still experimental. While some operations are forbidden, +there is no guarantee it is actually secure. + +=head1 OPTIONS + +The options are the same than urpmi ones. + +=head1 AUTHOR + +Maintained by Rafael Garcia-Suarez, + + +=head1 SEE ALSO + +urpmi(8). diff --git a/pod/8/urpme.pod b/pod/8/urpme.pod new file mode 100644 index 00000000..c61a8827 --- /dev/null +++ b/pod/8/urpme.pod @@ -0,0 +1,136 @@ +=head1 NAME + +urpme - rpm deinstaller + +=head1 SYNOPSIS + + urpme [options] [package_name...] + urpme [options] --auto-orphans + +=head1 DESCRIPTION + +urpme allows packages to be deinstalled, including all their dependencies. +I<package_names> must have one of the forms I<name>, I<name-version>, +I<name-version-release>, or I<name-version-release.architecture>. If you +want to specify packages more broadly, use the B<-a> option. + +=head1 OPTIONS + +=over + +=item B<--help> + +Prints a help message and exit (this is the same as B<-h> or B<-?>). + +=item B<-a> + +If multiple packages match the given substring, deinstall them all. + +=item B<--verbose> + +Proposes a verbose mode with various messages. + +=item B<-v> + +This is the same as B<--verbose>. + +=item B<--auto> + +Removes packages non-interactively, without asking questions. + +=item B<--auto-orphans> + +Removes orphans. + +=item B<--test> + +Test deinstallation of packages but do not modify the system. + +=item B<--force> + +Force invocation even if some packages do not exist. + +=item B<--justdb> + +Update only the database, not the filesystem. + +=item B<--noscripts> + +Don't execute the scriptlets. This is equivalent to B<rpm --noscripts>. +This can be useful to remove packages where uninstall scriptlets fail for +some reason. + +=item B<--parallel> I<alias> + +Activate distributed execution of urpmi to other machines (it is mandatory +that urpmi is installed, but it is not necessary to have media defined on +any machines). I<alias> defines which extension module is to be used by +urpmi (currently, urpmi-parallel-ka-run or urpmi-parallel-ssh are +available) and which machines should be updated. This alias is defined in +the file F</etc/urpmi/parallel.cfg> as described below. + +=item B<--repackage> + +Save previous state of upgraded packages; in other words, save the old +rpms (usually in F</var/spool/repackage>, but you can override this with +an rpm macro.) This is equivalent to providing the B<--repackage> flag to +rpm. + +If you want to use the repackage/rollback functionality of rpm, you should +check out the C<urpmi.recover> tool. + +=item B<--root> I<directory> + +Use the file system tree rooted for rpm install. All operations and +scripts will run after chroot(2). The rpm database that lies in the +rooted tree will be used, but the urpmi configuration comes from the +normal system. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--use-distrib> I<directory> + +Configure urpme on the fly from a distribution tree. + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=back + +=head1 FILES + +See urpmi.files(5). + +=head1 EXIT CODES + +=over + +=item 0 + +Success; or nothing was found to remove; or the user cancelled the whole +operation. + +=item 1 + +Command line inconsistency, invocation failure (you are not root), or +packages not found. + +=item 2 + +Removal of packages failed. + +=back + +=head1 AUTHORS + +Pascal Rigaux <pixel@mandriva.com> (current maintainer), +Francois Pons, Rafael Garcia-Suarez + +=head1 SEE ALSO + +urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), urpmf(8), +urpmi(8), urpmq(8), urpmi.files(5), urpmi.recover(8). diff --git a/pod/8/urpmf.pod b/pod/8/urpmf.pod new file mode 100644 index 00000000..77759aa9 --- /dev/null +++ b/pod/8/urpmf.pod @@ -0,0 +1,286 @@ +=head1 NAME + +urpmf - Finds the packages matching some conditions + +=head1 SYNOPSIS + + urpmf [options] <pattern-expression> + +=head1 DESCRIPTION + +By default, urpmf outputs the list of the known packages that contain a +file whose name or path was specified as an argument on the command-line. +<I<pattern-expression>> is the name or part of the name of the file you +want to locate. Perl-style regular expressions are allowed. urpmf will +then print a list of matching files, with their corresponding packages. By +using options, you may format output differently, and search through other +rpm tags. The default behaviour corresponds to the B<--files> option; +using other options makes urpmf search through other tags' contents. + +Note that urpmf searches through the urpmi media (B<not> in +the system's rpm database -- for that you should use rpm(8) instead). + +=head1 OPTIONS + +=over + +=item B<--help> + +Prints a help message and exits. + +=item B<--version> + +Prints the version number and exits. + +=item B<--env> I<directory> + +Use a different environment directly out of a bug report tarball. + +=item B<--excludemedia> I<medium1,...,mediumN> + +Do not use the given media. + +=item B<--literal> + +Match literally instead of interpreting the argument as a regular +expression. + +=item B<-l> + +Equivalent to B<--literal>. + +=item B<--media> I<medium1,...,mediumN> + +Select specific media to be used, instead of defaulting to all available +media (or all update media if B<--update> is used). + +=item B<--sortmedia> I<medium1,...,mediumN> + +Sort the given media, substrings may be used to simplify grouping. +This way, C<media1> will be taken into account first, then C<media2>, and +so on. Media which aren't listed are taken into account after the others. + +=item B<--synthesis> I<file> + +Use the given synthesis file instead of urpmi db for searching packages. + +=item B<--use-distrib> I<directory> + +Use the given distribution tree instead of urpmi db for searching packages. + +=item B<--uniq> + +Do not print identical lines twice. + +=item B<--update> + +Use only update media. This means urpmf will only search through media +marked as update. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--verbose> + +Verbose mode. urpmf will emit various messages related to the parsing of +media_info files for your media. + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=item B<-i> + +Ignore case distinctions in the patterns that follow. + +=item B<-I> + +Honor case distinctions in the patterns that follow. This is the default +behaviour. + +=item B<-F> I<string> + +Change field separator to I<string> for the rest of the output line (it +defaults to ':') + +=item B<--qf> I<format-string> + +Specify a printf-like output format. + +=item B<--arch> + +Prints the architecture tag. + +=item B<--buildhost> + +Prints the BuildHost tag. + +=item B<--buildtime> + +Prints the +BuildTime tag. + +=item B<--conffiles> + +Prints the list of configuration files contained +in the package. (Might be empty.) + +=item B<--conflicts> + +Prints the Conflicts tags. + +=item B<--description> + +Prints the Description tag. + +=item B<--distribution> + +Prints the Distribution tag. + +=item B<--epoch> + +Prints the Epoch tag. + +=item B<--filename> + +Prints package file names. + +=item B<--files> + +Prints the list of files contained in the rpm (this is the default if you +specify no field). + +=item B<--group> + +Prints the Group tag. + +=item B<--license> + +Prints the License tag. + +=item B<--name> + +Prints package names. + +=item B<--obsoletes> + +Prints the Obsoletes tags. + +=item B<--packager> + +Prints the Packager tag. + +=item B<--provides> + +Prints the Provides tags. + +=item B<--requires> + +Prints the Requires tag. + +=item B<--size> + +Prints the Size tag. + +=item B<--sourcerpm> + +Prints the names of source rpms. + +=item B<--suggests> + +Prints the Suggests tag. + +=item B<--summary> + +Prints the Summary tag. + +=item B<--url> + +Prints the packages' URL. + +=item B<--vendor> + +Prints the Vendor tag. + +=item B<-m> + +Print the name of the media in which the +package has been found. + +=item B<-f> + +Print version, release and arch along with name +of package. This modifies the effect of the I<--name> option. + +=item B<-e> + +Include code directly +in the perl search expression. Use it with B<--debug> to look at the generated +perl code. In any cases, use it only if you know perl. + +=item B<-a> + +Binary AND operator, true if both expressions are true. + +=item B<-o> + +Binary OR operator, true if one expression is true. + +=item B<!> + +Unary NOT, true if expression is false. + +=item B<(> + +Left parenthesis to open a group expression. + +=item B<)> + +Right parenthesis to close a group expression. + +=item B<--debug> + +Includes debugging output. + +=back + +=head1 FORMAT + +The options to select tags (B<--arch>, B<--buildhost> and so on) control +the output format of urpmf. If not explicitly specified somewhere else, +the name of the rpm is printed first. Fields are separated by C<:> until +specified otherwise. + +You can also use B<--qf> for that. It takes a format string, where tags to +be replaced are specified as B<%>I<[-][number]>B<tagname>. The optional +number indicates the length of the space-padding and the B<-> character +its justification (like in printf(3)). + +=head1 EXPRESSIONS + +The boolean operator switches allow you to construct complex expressions +from regexps. Those expressions are then matched against the whole output +line. + +=head1 EXAMPLE + +This command will list all C<perl-Apache> modules, and list them along +with the media in which they're been found, nicely indented : + + urpmf --qf '%-30name is found in media %media' perl-Apache + +=head1 FILES + +See urpmi.files(5). + +=head1 SEE ALSO + +urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), urpmi(8), +urpmq(8), urpmi.files(5). + +=head1 AUTHOR + +Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), +FranE<ccedil>ois Pons, Rafael Garcia-Suarez diff --git a/pod/8/urpmi.addmedia.pod b/pod/8/urpmi.addmedia.pod new file mode 100644 index 00000000..d5d233e8 --- /dev/null +++ b/pod/8/urpmi.addmedia.pod @@ -0,0 +1,246 @@ +=head1 NAME + +urpmi.addmedia - adds a new rpm media to be used by urpmi + +=head1 SYNOPSIS + + urpmi.addmedia [options] <name> <url> + +=head1 DESCRIPTION + +urpmi.addmedia is used to add a new media to be used by urpmi, so it can +find new rpms at the specified location. Currently supported media types +are: local drives, removable drives (such as CDs), and networked media via +different protocols (http, ftp, ssh and rsync). One of the following modes +must be chosen: + +=over + +=item B<urpmi.addmedia> [I<options>] --distrib --mirrorlist [<I<url>>] + +A mirror list is a special API to describe mirrors available. urpmi will pick +the nearest mirror, and will dynamically handle new mirrors. Example: + + urpmi.addmedia --distrib --mirrorlist + +=item B<urpmi.addmedia> [I<options>] --mirrorlist <I<url>> <I<name>> <I<relative path>> + +Example: + + urpmi.addmedia --mirrorlist '$MIRRORLIST' backports media/main/backports + +=item B<urpmi.addmedia> [I<options>] <I<name>> http://<I<login>>:<I<pass>>@<I<host>>/<I<path>> + +where <I<name>> is a human-readable name for the new media (e.g. +"updates"). <I<name>> is optional if B<--distrib> is given in the options +list. <I<host>>/<I<path>> is the location of the media directory on the +net (e.g. C<media/main>). The location is given relative to +<I<path>>. B<curl> is used by default to download files, B<wget> may be +used if B<curl> is not installed or if or B<--wget> is given in +I<options>. Example: + + urpmi.addmedia http http://jpackage.sf.net/rpm/free + +=item B<urpmi.addmedia> [I<options>] <I<name>> ftp://<I<login>>:<I<pass>>@<I<host>>/<I<path>> + +The same as for http. Add your login and password if required (note that +you don't need to specify B<anonymous> as login for anonymous access ftp +servers). If B<wget> is used to download files with a firewall you may +have to ensure that the B<passive_ftp> option is on in B</etc/wgetrc> +(that's usually the default). Example: + + urpmi.addmedia ftp ftp://a:a@leia//export/media/main + +=item B<urpmi.addmedia> [I<options>] <I<name>> ssh://<I<login>>@<I<host>>/<I<path>> + +The same as for http and ftp; add your login and password if required. You +may want to export the public key in order not to have to type your +password. rsync over an ssh connection will be used to get files. urpmi +will try to re-use the same ssh connection over multiple invocations. + +Example: + + urpmi.addmedia ssh ssh://fpons@bi/c/i586/media/main + +=item B<urpmi.addmedia> [I<options>] <I<name>> rsync://<I<login>>@<I<host>>:<I<port>>/<I<path>> + +The same as for http; you can use the <I<host>>::<I<path>> syntax too. Example: + + urpmi.addmedia rsync rsync://ftp.orst.edu::mandrake-devel/contrib/ppc + +=item B<urpmi.addmedia> [I<options>] <I<name>> file://<I<path>> + +where <I<name>> is a human-readable name for the new media (e.g. +"local updates"). <I<path>> is the location of the media directory on your +machine (e.g. C<media/main>). + +=item B<urpmi.addmedia> [I<options>] <I<name>> cdrom://<I<path>> + +<I<path>> is the location of the media directory in the CDROM or DVD. + +=back + +=head1 OPTIONS + +=over + +=item B<--wget> + +Use wget only for downloading distant files. By default curl is used if +available. + +=item B<--curl> + +Use curl only for downloading distant files. This is the default if curl +is available. + +=item B<--curl-options> I<'options'> + +=item B<--rsync-options> I<'options'> + +=item B<--wget-options> I<'options'> + +Specify additional command-line options to be passed to curl, rsync or +wget when retrieving files. If several options are to be passed, separate +them with spaces and enclose them in quotes. + +Note that the rsync options will also be used for ssh media. + +=item B<--limit-rate I<rate>> + +Try to limit the download speed, I<rate> is given in bytes/sec. This option +is not active by default. + +=item B<--proxy> I<proxyhost[:port|1080]> + +Use specified HTTP proxy. + +=item B<--proxy-user> I<user:password> + +Use specified user and password to use for proxy authentication. +Specifying B<--proxy-user=ask> will cause C<urpmi.addmedia> to prompt for a +username and a password. + +=item B<--update> + +Adds a media which will be taken into account by B<MageiaUpdate> or by +C<urpmi --update> when looking for updates. + +If used together with B<--distrib>, it will only add media flagged "update". + +=item B<--xml-info> + +Use the specific policy for downloading xml info files. +It must be one of: never, on-demand, update-only, always. +See urpmi.cfg(5) for more information. + +=item B<--probe-synthesis> + +Use synthesis file. + +=item B<--probe-rpms> + +Use rpm files (instead of synthesis). + +=item B<--mirrorlist> + +Use the given url as a mirror list. It is quite special, please see examples +at the beginning of this page. + +You can also give a space seperated list of urls. Each url can be either a +mirrorlist or a mirror url. This is useful if you have a mirror to use inside +a local network, but still use standard mirrors when the local mirror is not +available. + + +nb: $MIRRORLIST is a special variable which gives the default URL for the +current distribution/arch. $MIRRORLIST is the default mirrorlist. + +=item B<--zeroconf> + +Find a media repository for the current distribution using zeroconf (DNS-SD). +It can be used together with B<--distrib> or by specifying a media name and a +path to the media directory, relative to the repository root. + +=item B<--distrib> + +Retrieve a set of media from a distribution. Typically, the URL provided +to C<urpmi.addmedia> will represent the parent directory of a directory +B<media>, which in turn will contain various subdirectories for each +medium of the distribution. <I<name>> is combined with medium names found +to create newer medium names in the urpmi database. + +=item B<--interactive> + +This option is to be used with B<--distrib>. With it, C<urpmi.addmedia> +will ask for confirmation for each media it finds for the specified +distribution. + +=item B<--all-media> + +This option is to be used with B<--distrib>. With it, C<urpmi.addmedia> +will attempt to add all media it finds. By default, it won't add media +containing source rpms, or media corresponding to supplementary CD-ROMs +on distributions. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=item B<--virtual> + +Creates a virtual medium: the medium is always up-to-date and so it does not +need to be updated by C<urpmi.update>. + +=item B<--raw> + +Add the new media in the urpmi configuration file, but don't update it nor +proceed to any download. The media, to be usable, will need to be updated +with C<urpmi.update>; it's ignored until then. + +=item B<--nopubkey> + +Don't import pubkey of added media. + +=back + +=head1 Variables + +Beginning with urpmi 4.6.16, you can use variables in media URLs (for +example F</mnt/mirror/$RELEASE/$ARCH/media/main>). The variables supported +so far are: + +=over + +=item B<$ARCH> + +The architecture (if found in F</etc/release>). + +=item B<$RELEASE> + +The OS release (if found in F</etc/release>; its value should be B<cauldron> +on a Mageia cauldron system.) + +=item B<$HOST> + +The canonical hostname of the machine urpmi runs on. + +=item B<$MIRRORLIST> + +The url of the default mirrorlist for the distribution. + +=back + +=head1 SEE ALSO + +urpmi(8), urpmi.update(8), urpmi.removemedia(8), urpmf(8), urpmq(8), urpmi.files(5). + +=head1 Author + +Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), +FranE<ccedil>ois Pons, Rafael Garcia-Suarez diff --git a/pod/8/urpmi.pod b/pod/8/urpmi.pod new file mode 100644 index 00000000..d1776c7d --- /dev/null +++ b/pod/8/urpmi.pod @@ -0,0 +1,553 @@ +=head1 NAME + +urpmi - rpm downloader, installer and dependency solver + +=head1 SYNOPSIS + + urpmi [options] [package_names | rpm_files...] + urpmi [options] --auto-select + +=head1 DESCRIPTION + +The purpose of urpmi is to install rpm packages, including all their +dependencies. You can also use it to install the build dependencies of an +srpm (an rpm source package), or the build dependencies read from a plain +rpm spec file; or to install a source package itself in order to rebuild +it afterwards. + +You can compare rpm vs. urpmi with insmod vs. modprobe or dpkg vs apt-get. +Just run urpmi followed by what you think is the name of the package(s), +and urpmi will: + +=over 4 + +=item * + +Propose different package names if the name was ambiguous, and quit. + +=item * + +If only one corresponding package is found, check whether its +dependencies are already installed. + +=item * + +If not, propose to install the dependencies, and on a positive answer, +proceed. + +=item * + +Finish by installing the requested package(s). + +=back + +Note that urpmi handles installations from various types of media (ftp, +http, https, rsync, ssh, local and nfs volumes, and removable media such +as CDROMs or DVDs) and is able to install dependencies from a medium +different from the original package's media. For removable media, urpmi +may ask you to insert the appropriate disk, if necessary. + +To add a new medium containing rpms, run C<urpmi.addmedia>. To remove an +existing medium, use C<urpmi.removemedia>. To update the package list (for +example when the ftp archive changes) use C<urpmi.update>. + +=head1 OPTIONS + +=over + +=item B<--help> + +Prints a help message and exit (this is the same as B<-h> or B<-?>). + +=item B<--media> I<media1,...,mediaN> + +Select specific media to be used, instead of defaulting +to all available media (or all update media if B<--update> is used). +No rpm will be fetched from other media. + +=item B<--excludemedia> I<media1,...,mediaN> + +Do not use the specified media. + +=item B<--searchmedia> I<media1,...,mediaN> + +Use only the specified media to search for packages that are specified on +the command-line, or which are found when using B<--auto-select>. +Dependencies of those packages can still be found in other media. + +=item B<--sortmedia> I<media1,...,mediaN> + +Sort the specified media. Substrings may be used to simplify grouping. +This way, C<media1> will be taken into account first, then C<media2>, and +so on. Media which aren't listed are taken into account after the others. + +=item B<--update> + +Use only update media. This means that urpmi will search packages and +resolve dependencies only in media marked as containing updates. + +=item B<--synthesis> I<file> + +Use the specified synthesis file instead of the urpmi database for +searching packages and resolving dependencies. This option is mostly +designed for internal use. + +=item B<--auto> + +Install all required dependencies without asking. + +=item B<--auto-select> + +Select all packages that can be upgraded, according to already installed +packages and packages listed in various registered media. + +=item B<--auto-update> + +Like B<--auto-select>, but also updates all relevant media before +selection of upgradeable packages is made. This avoids a previous call to +C<urpmi.update>. + +=item B<--auto-orphans> + +Remove all orphans without asking (see also C<urpme --auto-orphans>) + +=item B<--no-md5sum> + +Disable MD5SUM file checking when updating media. + +=item B<--force-key> + +Force update of GPG key when updating media. + +=item B<--no-install> + +Only download packages, don't install them. After operation, you'll find +them in F</var/cache/urpmi/rpms>. + +=item B<--no-uninstall> + +Never ask to uninstall a package but prefer aborting instead. This can be +safer in auto mode. + +=item B<--keep> + +When some dependencies cannot be satisfied, change the selection of +packages to try to keep existing packages instead of removing them. This +behaviour generally rejects the upgrade of packages given on command line +(or when using B<--auto-select>) when a dependency error occurs. + +=item B<--split-level> I<number> + +Split urpmi's operation in small transactions when the total number of +packages to upgrade is greater than the given I<number>. This option is +activated by default, and the default value of I<number> is 20. + +=item B<--split-length> I<count> + +Split urpmi's operation in small transactions of at +least I<count> packages. The default is 8 and setting this value to 0 just +disables splitting in small transactions. + +=item B<--fuzzy> + +Disable fast search on exact package name; that means that urpmi will +propose all packages matching part of the name, even if one of them +matches exactly the specified name (this is the same as B<-y>). + +=item B<--buildrequires> + +Select all the C<BuildRequires> of the wanted source packages. +(You can also install the build dependencies read directly from an rpm spec file.) + +=item B<--install-src> + +Install only the source package (that is, no binary packages will be +installed). You don't need to be root to use this option (if you have +write access to your rpm build top directory). + +=item B<--clean> + +Remove all packages from the cache in directory F</var/cache/urpmi/rpms>. + +=item B<--noclean> + +Do not remove any package from the cache in directory +F</var/cache/urpmi/rpms>. + +=item B<--force> + +Assume yes on all questions. + +=item B<--quiet> + +Quiet mode: when calling rpm no upgrade status is printed. + +=item B<--verbose> + +Proposes a verbose mode with various messages. + +=item B<--debug> + +Proposes a very verbose mode. + +=item B<--debug-librpm> + +Proposes a very verbose mode (similar to rpm -vv) + +=item B<--no-suggests> + +With this option, urpmi will not install "suggested" packages. +By default, urpmi will install (newly) suggested packages. + +=item B<--allow-suggests> + +With this option, urpmi will install "suggested" packages. +This is useful if you have C<no-suggests> in urpmi.cfg. + +=item B<--justdb> + +Update only the database, not the filesystem. + +=item B<--replacepkgs> + +Force installing the packages even though they are already installed. + +=item B<--allow-nodeps> + +With this option, urpmi will ask the user on error whether it should +continue the installation without checking dependencies. By default, urpmi +exits immediately in this case. + +=item B<--allow-force> + +With this option, urpmi will ask the user on error whether it should +proceed to a forced installation. By default, urpmi exits immediately in +this case. + +=item B<--allow-medium-change> + +When used when B<--auto>, do not suppress all questions, but still ask the +user for medium changes (e.g. insertion of CD-ROMs). + +=item B<--parallel> I<alias> + +Activate distributed execution of urpmi to other machines (it is mandatory +that urpmi is installed, but it is not necessary to have media defined on +any machines). I<alias> defines which extension module is to be used by +urpmi (currently, C<urpmi-parallel-ka-run> or C<urpmi-parallel-ssh> are +available) and which machines should be updated. This alias is defined in +the file F</etc/urpmi/parallel.cfg> as described in the L<urpmi.files> +manpage. + +=item B<--root> I<directory> + +Use the file system tree rooted for rpm install. All operations and +scripts will run after chroot(2). The rpm database that lies in the rooted +tree will be used, but the urpmi configuration comes from the normal +system. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--use-distrib> I<directory> + +Configure urpmi on the fly from a distrib tree, useful to install a chroot +with the B<--root> option. See the description of the B<--distrib> option +in the C<urpmi.addmedia> manpage. + +=item B<--download-all> I<dest-dir> + +By default, urpmi will download packages when they are needed. This can be +problematic when connection failures happen during a big upgrade. When this +option is set, urpmi will first download all the needed packages and proceed +to install them if it managed to download them all. You can optionally +specify a directory where the files should be downloaded (default is /var/cache/urpmi which could be too small to hold all the files). + +=item B<--downloader> I<program name> + +Use a specific program for downloading distant files via http or ftp. +By default curl is used if available, or wget instead. + +=item B<--curl-options> I<'options'> + +=item B<--rsync-options> I<'options'> + +=item B<--wget-options> I<'options'> + +Specify additional command-line options to be passed to curl, rsync or +wget when retrieving files. If several options are to be passed, separate +them with spaces and enclose them in quotes. + +Note that the rsync options will also be used for ssh media (since it's +actually rsync over ssh). + +=item B<--limit-rate> I<rate> + +Try to limit the download speed. I<rate> is given in bytes/sec. This +option is not active by default. + +=item B<--resume> + +Resume transfer of partially-downloaded files. + +=item B<--retry> I<times> + +Retries to download files over FTP or HTTP the specified number +of times. + +=item B<--proxy> I<proxyhost[:port]> + +Use specified HTTP proxy. + +=item B<--proxy-user> I<user:password> + +Use specified user and password to use for proxy authentication. +Specifying B<--proxy-user=ask> will cause urpmi to prompt for a username +and a password. + +=item B<--bug> I<directory> + +Create a bug report in I<directory>. You have to send a compressed archive +of the directory to the urpmi maintainer for the bug being (probably) +reproduced. See L</"BUG REPORTS"> below. + +=item B<--env> I<directory> + +Use a different environment directly from a bug report to replay a bug. +The argument is the same argument given to B<--bug> option. + +=item B<--verify-rpm> + +=item B<--no-verify-rpm> + +Activate or deactivate rpm signature checking. It's activated by default, +and can be overriden in global configuration. + +=item B<--test> + +Test the installation of packages but do not actually install anything or +modify the system. (That's the same as C<rpm --test>). + +=item B<--excludepath> I<string> + +Do not install files of which the +names begin with the given I<string> (same as C<rpm --excludepath>). + +=item B<--excludedocs> + +Do not install documents files (same as C<rpm --excludedocs>). + +=item B<--ignorearch> + +Allow to install packages whose architecture does not match the +architecture of the host. This is equivalent to C<rpm --ignorearch>. + +=item B<--ignoresize> + +Don't check file systems for sufficient disk space before installation. +This is equivalent to C<rpm --ignoresize>. + +=item B<--repackage> + +Save previous state of upgraded packages; in other words, save the old +rpms (usually in F</var/spool/repackage>, but you can override this with +an rpm macro.) This is equivalent to providing the B<--repackage> flag to +rpm. + +I<Note:> if you use C<urpmi.recover> to set up a repackage policy, you +don't need this option, because C<urpmi.recover> will globally override +the appropriate rpm macro that enables repacking of all rpm transactions +system-wide. + +=item B<--noscripts> + +Don't execute the scriptlets. +This is equivalent to C<rpm --noscripts>. + +=item B<--replacefiles> + +Ignore file conflicts. +This is equivalent to C<rpm --replacefiles>. + +=item B<--skip> I<pattern,...> + +You can specify a list of packages which installation should be skipped. +You can also include patterns between //, just like in +F</etc/urpmi/skip.list> (see urpmi.files(5)). + +=item B<--prefer> I<pattern,...> + +You can specify a list of packages which installation should be preferred +(especially useful with B<--auto>). +You can also include patterns between //, just like in +F</etc/urpmi/prefer.list> (see urpmi.files(5)). + +=item B<--more-choices> + +When several packages are found, propose more choices than the default. + +=item B<--nolock> + +Don't lock urpmi and rpm db. This can be useful in conjunction with +B<--root>. + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=item B<--strict-arch> + +Upgrade only packages if the newer version has the same architecture as +the one installed. Mostly useful on machines that support several +architectures (32 and 64 bit). + +=item B<-a> + +If multiple packages match the given substring, install them all. + +=item B<-p> + +Allow search in provides to find the package (this is the default). + +=item B<-P> + +Do not search in provides to find package (this is the opposite of B<-p>). + +=item B<-y> + +This is the same as B<--fuzzy>. + +=item B<-q> + +This is the same as B<--quiet>. + +=item B<-v> + +This is the same as B<--verbose>. + +=back + +=head1 EXAMPLES + + urpmi ssh://foo@bar.net/home/foo/test.rpm + +Fetch F</home/foo/test.rpm> from server bar.net over ssh using user foo. +You can use a public key or enter your password. + + urpmi --media foo- --auto-select + +Fetch all the updates from media containing C<foo-> in their name. + +=head1 FILES + +See urpmi.files(5). + +=head1 EXIT CODES + +=over + +=item 1 + +Command line inconsistency. + +=item 2 + +Problem registering local packages. + +=item 3 + +Source packages not retrievable. + +=item 4 + +Medium is not selected. + +=item 5 + +Medium already +exists. + +=item 6 + +Unable to save configuration. + +=item 7 + +urpmi database locked. + +=item 8 + +Unable to read or create bug report. + +=item 9 + +Unable to open rpmdb. + +=item 10 + +Some files are missing for installation. + +=item 11 + +Some transactions failed but not all. + +=item 12 + +All transactions failed. + +=item 13 + +Some files are missing and some transactions failed but not all. + +=item 14 + +Some files are missing and all transactions failed. + +=item 15 + +No package installed (when using --expect-install) + +=item 16 + +Bad signature + +=item 17 + +Some packages couldn't be installed or upgraded + +=back + +=head1 BUG REPORTS + +If you find a bug in urpmi please report it using the command : + + urpmi --bug bug_name_as_directory <other arguments> + +This will automatically create a directory called F<bug_name_as_directory> +containing necessary files to reproduce it if possible. I<< <other +arguments> >> represent the command-line arguments you noticed the bug +with (e.g. C<--auto-select> or a list of rpm names). Please test the +report using + + urpmi --env bug_name_as_directory <other arguments> + +to check that the bug is still here. Obviously, only reproducible bugs can +be resolved. For sending the report, make a tarball of this directory and +send it directly to the current maintainer with a description of what you +think is wrong. + +=head1 AUTHOR + +Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), +FranE<ccedil>ois Pons, Rafael Garcia-Suarez + +=head1 SEE ALSO + +urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), urpme(8), +urpmf(8), urpmq(8), urpmi.cfg(5), urpmi.files(5), urpmi.recover(8). + +=cut + +$Id: urpmi.8.pod 261993 2009-10-15 17:12:03Z cfergeau $ diff --git a/pod/8/urpmi.recover.pod b/pod/8/urpmi.recover.pod new file mode 100644 index 00000000..2866798a --- /dev/null +++ b/pod/8/urpmi.recover.pod @@ -0,0 +1,110 @@ +=head1 NAME + +urpmi.recover - manages repackaging of old RPMs and rollbacks + +=head1 SYNOPSIS + + urpmi.recover --checkpoint [--noclean] + urpmi.recover --list '1 week ago' + urpmi.recover --rollback '1 hour ago' + urpmi.recover --disable [--noclean] + +=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. (It has two variants, C<--list-all> and +C<--list-safe>.) + +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, +grouped by installation transactions. 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 --list-safe + +Lists all installations and upgrades up to the date of the checkpoint. + +=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 B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=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.) Also, if you install a delta rpm, you +won't be able to rollback past this point. A sound advice would be to +completely avoid delta rpms if you're planning to use urpmi.recover. + +=head1 FILES + + /etc/rpm/macros.d/urpmi.recover.macros + +=head1 AUTHOR + +Rafael Garcia-Suarez, + +Copyright (C) 2006 Mandriva SA + +=head1 SEE ALSO + +urpmi(8), urpme(8) diff --git a/pod/8/urpmi.removemedia.pod b/pod/8/urpmi.removemedia.pod new file mode 100644 index 00000000..6a5fd670 --- /dev/null +++ b/pod/8/urpmi.removemedia.pod @@ -0,0 +1,53 @@ +=head1 NAME + +urpmi.removemedia - remove a rpm media from the known media of urpmi + +=head1 SYNOPSIS + + urpmi.removemedia [options] names + +=head1 DESCRIPTION + +urpmi.removemedia removes from all configuration files all references +to the named media and to rpms from that media. <I<names>> is a list of +names you first told to urpmi.addmedia. + +=head1 OPTIONS + +=over + +=item B<-a> + +Select and remove all media. + +=item B<-y> + +Fuzzy match on media names, so you can remove several media at once. + +=item B<-v> + +Be verbose (the default). + +=item B<-q> + +Be quiet. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=back + +=head1 SEE ALSO + +urpmi(8), urpmi.addmedia(8), urpmi.update(8). + +=head1 AUTHOR + +Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), +FranE<ccedil>ois Pons, Rafael Garcia-Suarez diff --git a/pod/8/urpmi.update.pod b/pod/8/urpmi.update.pod new file mode 100644 index 00000000..134ef97a --- /dev/null +++ b/pod/8/urpmi.update.pod @@ -0,0 +1,114 @@ +=head1 NAME + +urpmi.update - Updates package lists for specified media + +=head1 SYNOPSIS + + urpmi.update [options] [<names>] + +=head1 DESCRIPTION + +urpmi.update scans the specified urpmi media to update their package list. +<I<names>> is a list of names you first told to urpmi.addmedia. + +=head1 OPTIONS + +=over + +=item B<--force-key> + +Force update of GPG key. + +=item B<--ignore>, B<--no-ignore> + +Don't update media, but mark them as ignored (that is, disables them). +B<--no-ignore> has the reverse behaviour: it marks the media as enabled. + +=item B<--limit-rate I<rate>> + +Try to limit the download speed, I<rate> is given in bytes/sec. This +option is not active by default. + +=item B<--no-md5sum> + +Disable MD5SUM file checking. + +=item B<--proxy> I<proxyhost[:port|1080]> + +Use specified HTTP proxy. + +=item B<--proxy-user> I<user:password> + +Use specified user and password to use for proxy authentication. +Specifying B<--proxy-user=ask> will cause urpmi.update to prompt for a +username and a password. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=item B<--update> + +Use only update media. + +=item B<--curl> + +Use curl for downloading distant +files. By default curl is used if available, or wget instead. + +=item B<--wget> + +Use wget for downloading distant files. By default curl +is used if available, or wget instead. + +=item B<--curl-options> I<'options'> + +=item B<--rsync-options> I<'options'> + +=item B<--wget-options> I<'options'> + +Specify additional command-line options to be passed to curl, rsync or +wget when retrieving files. If several options are to be passed, separate +them with spaces and enclose them in quotes. + +Note that the rsync options will also be used for ssh media. + +=item B<-a> + +Select all enabled non-static media to update them. + +=item B<-f> + +Force updating synthesis + +=item B<-ff> + +Really force updating synthesis + +=item B<--probe-rpms> + +Do not use synthesis, use rpm files directly + +=item B<-q> + +Quiet mode. + +=item B<-v> + +Verbose mode. + +=back + +=head1 SEE ALSO + +urpmi(8), urpmi.addmedia(8), urpmi.removemedia(8). + +=head1 AUTHOR + +Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), +FranE<ccedil>ois Pons, Rafael Garcia-Suarez diff --git a/pod/8/urpmihowto.pod b/pod/8/urpmihowto.pod new file mode 100644 index 00000000..1eb525d1 --- /dev/null +++ b/pod/8/urpmihowto.pod @@ -0,0 +1,396 @@ +=head1 NAME + +urpmihowto - urpmi Advanced How-To + +=head1 Basic notions + +=head2 Packages and media + +The urpmi suite of tools has for main purpose to download and to install +RPM packages easily. + +Software packages often depend on each other; urpmi is able to recognize +those dependencies, to download missing required packages as needed, and +to remove conflicting packages if it needs to. + +urpmi gets the list of available RPMs, and the RPMs themselves, from a +B<media>. Roughly speaking, a media is described by a name and by a +location, specified by an URL. Currently supported media types are: local +drives, removable drives (such as CDs), ISO images, and networked media +via different protocols (http, ftp, ssh and rsync). NFS mounted +directories are treated like local drives. + +=head2 Installing and updating RPMs + +The tool used to install RPMs is urpmi. Its basic usage is as follows: + + urpmi <list of package names> + +That prompts urpmi to fetch and install all packages and their unmet +dependencies from the media you have configured. In the process, urpmi +might ask a few questions. Notably, if some packages need to be upgraded, +or if some new (unspecified) packages should be installed, it will ask for +confirmation. If some packages need to be removed (due to conflicts with +the requested packages), urpmi will ask for confirmation as well. In some +cases, urpmi will also propose a choice between different alternatives, +usually proposing the "best" package as a default. + +Another very useful mode of action for urpmi is to ask it to upgrade all +packages to the latest version found on the media. This is done by + + urpmi --auto-update + +urpmi can also help installing RPM files directly. Instead of using +C<rpm -i foobar.rpm>, you can pass the path to the rpm file to urpmi: it +will then try to resolve the needed dependencies. + +Useful options to urpmi include : + +=over 4 + +=item --auto + +automatic mode: urpmi will not ask questions and always select the default +choice. + +=item --test + +tests the installation of packages, but do not actually install anything or +modify the system. + +=item --media I<media1,...,mediaN> + +Use only the specified media, instead of defaulting to all available +media. You can also specify a substring of media names, and urpmi will +select all media that contain this substring. (For example, + + urpmi --auto-update --media updates + +will search updates from all media that have "updates" in their name.) + +=back + +See the urpmi(8) manpage for the complete reference of all options that +urpmi supports. + +=head2 Removing RPMs + +The tool used to deinstall RPMs is urpme. The command + + urpme <list of package names> + +will attempt to remove all listed packages, plus the packages that depend +on them. It will refuse to uninstall "important" packages (that is, the +ones that are part of the base system.) + +See the urpme(8) manpage for the reference of all options urpme supports. + +urpme will detect packages that are no longer used: for example, libraries +that no application requires. To remove them, use B<urpme --auto-orphans> + +=head1 Media management + +=head2 Adding media + +urpmi is usable only when you have defined some media. Usually the OS +installation procedure configures a predefined set of media, which +correspond to the installation method you've selected: that might be +installation CDs, or an HTTP or FTP server if you installed from a +networked mirror, and so on. But you might want to add media yourself. +For that, you should use the urpmi.addmedia program. Its usage is as +follows: + + urpmi.addmedia [options] <name> <url> + +In this synopsis, C<< <name> >> is the name of the new media, +C<< <url> >> the URL where the RPMs are to be found. + +Supported URLs can be C<http://>, C<ftp://>, C<rsync://>, C<ssh://> (this +will use rsync over ssh), C<file://>, and C<cdrom://>. If the media requires +authentication, you can use the usual URL syntax: + + <scheme>://<login>:<pass>@host/path + +Those credentials won't be stored in any world-readable file. + +In some cases, if your media points at an external HTTP or FTP server, you +might want to use a proxy to access it. This is possible by using the +C<--proxy> and C<--proxy-user> options (the second one in case of your +proxy requires authentication.) + +=head2 Removing media + +This is straightforward; to remove a media C<foo>, simply use the +command: + + urpmi.removemedia foo + +=head2 Updating media + +Some media never change; this is the case, for example, for CD-ROMs and +the like. However, some other ones -- typically updates -- grow; new RPMs +are added to them, and old ones are removed. Thus, before using them, from +time to time, you should instruct urpmi that their contents might have +changed. + +To do this, use the urpmi.update program. You can either update all media: + + urpmi.update -a + +or update only media specifically named: + + urpmi.update updates-one updates-two + +=head2 Creating your own media + +The easiest way to create your own media is to let urpmi.addmedia do it. +However, this will work well only if you have a small number of rpms, +stored on disk or on a shared NFS mount. To do that, assuming that your +RPMs are under a directory /var/my-rpms, simply enter the command: + + urpmi.addmedia my-media /var/my-rpms + +However, to create media containing a large number of RPMs, or to be put +on a shared server, you'll need to use the gendistrib tool. It comes in +the C<rpmtools> package. It is able to generate a mirror tree for one or +several media. + +A typical media repository, under a root directory F</ROOT/>, has the +following structure: (here, we have two media, named C<first> and +C<second>) + + ROOT/ - media/ + |- first/ + | `- media_info/ + |- second/ + | `- media_info/ + `- media_info/ + +The RPMs are place in the C<first> and C<second> subdirectories. +Repository metadata is contained in the top-level F<media_info> directory. +Per-media metadata are contained in the F<first/media_info> and +F<second/media_info> subdirectories. + +Per-media metadata consists in an C<hdlist.cz> file, that contains the +gzipped headers of the RPMs in the media, a C<synthesis.hdlist.cz> file, +much smaller than the hdlist and that contains only the information +necessary to urpmi to resolve dependencies, and optionnally a C<pubkey> +file if the RPMs are signed (so urpmi can check that the RPMs it downloads +are signed with the key associated to this media.) + +Before using F<gendistrib>, you must create a file F<media_info/media.cfg> +to describe this media repository. The syntax of this file is reminiscent +of F<.ini> files. It contains one section per media: for example, + + [first] + hdlist=hdlist_first.cz + name=First supplementary media + +Here, C<first> is the directory name, C<hdlist_first.cz> is the name of +the hdlist file that will be created (it must end with C<.cz>), and +C<name=> gives a human-readable descriptive name for the media. + +Then, you can run gendistrib. It should be passed the F</ROOT/> directory as +parameter. It will then generate the hdlist and synthesis files and all +other files needed for proper repository operation. + +For further information, see the gendistrib(1) manpage. + +=head1 Searching for packages + +=head2 urpmf + +urpmf is a grep-like tool for the urpmi database (the database of all RPMs +in the media). By default, it will search through the file names contained +in packages, but a variety of options allows to search through package +names, provides, requires, RPM descriptions, etc. (or several of those at +once.) + +For example, to find all packages that begin with "apache-" : + + urpmf --name '^apache-' + +(the ^ being the beginning-of-line anchor used in standard regular +expressions.) + +To find all packages that contain files whose pathname includes +/etc/httpd.conf.d : + + urpmf /etc/httpd.conf.d + +To find all packages that provide "mail-server", with their version and +release number (-f) : + + urpmf --provides -f mail-server + +See the urpmf(8) manpage for more examples and the list of all options. + +=head2 urpmq + +urpmq is a tool to query the urpmi database. It has several modes of +operation. Here are a couple of useful uses. + + urpmq -i package + +will list the information for that package (like C<rpm -qi> would do for +installed packages.) The C<--summary> option is similar, but gives only +one-line concise information. + + urpmq --sources package + +will give the URL from which the package can be retrieved. + + urpmq --requires-recursive package + +will give the list of all RPMs that are required by the specified package +(recursively). + +Inversely, the command + + urpmq --whatrequires package + +will give the list of all RPMs that require the specified package. + +See the urpmq(8) manpage for the list of all options. + +=head1 urpmi-parallel + +urpmi-parallel is an add-on to urpmi that is useful to install packages on +a network: it will run an urpmi command in parallel on a specified number +of hosts. In more detail, the machine you run the command on (the +"server") tests its result on each machine in the group in turn (the +"clients"), downloads all necessary packages for all machines in the +group, distributes the appropriate packages to each machine, then calls +urpmi on the machine to do the actual installation. + +urpmi must be installed on all client machines, but it is not necessary to +have media defined on these. + +To use it, follow those steps : + +=over 4 + +=item * + +make sure you can ssh from the server to each client machine as root (you +can use ssh-add on the server host to avoid entering your passphrase +and/or password many times). + +=item * + +install urpmi-parallel-ssh and/or urpmi-parallel-ka-run on the server +machine. The first plugin uses plain ssh to distribute commands to other +hosts, the second one uses ka-run, an efficient parallelization method on +top of any remote shell (rsh or ssh), adapted to clusters. + +=item * + +Edit /etc/urpmi/parallel.cfg to look something like this: + + mynetwork:ssh:host1:host2:host3 + +On this line, C<mynetwork> is the name of the alias you'll use to specify +the network to urpmi, C<ssh> is the install method (to use C<ka-run>, look +up the entry for /etc/urpmi/parallel.cfg in urpmi.files(5)), and hostN are +the hostnames of all clients on your network. You can put C<localhost> in +this list. + +=item * + +Run the urpmi command : for example, to install "package_name" : + + urpmi --parallel mynetwork package_name + +=back + +=head1 urpmi.recover + +urpmi.recover is a tool to help management of RPM rollbacks. One rarely +used feature of RPM is that it can "repackage" the RPMs it deinstalls +(either because they are upgraded to a newer version, or because they are +plainly erased), and then reinstall the repackaged RPMs, thereby restoring +the system to a previous (hopefully more stable) state. + +urpmi.recover has three main functions: + +=over 4 + +=item define a checkpoint + +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 to this state (or to any later state). + +=item list installations you've done + +C<urpmi.recover --list date> is used to list chronologically all +installations and upgrades on your system up to the specified date. The +output format gives them grouped by installation transactions. (This +option has two variants, C<--list-all> and C<--list-safe>.) Here are some +examples : + +List all installations made during the last day : + + urpmi.recover --list '1 day ago' + +List all installations since 7th february 2006 : + + urpmi.recover --list 2006-02-07 + +List all installations since the checkpoint : + + urpmi.recover --list-safe + +Lists all installations and upgrades known to the RPM database : + + urpmi.recover --list-all + +=item perform rollbacks + +C<urpmi.recover --rollback> is used to roll back installations and +upgrades to a previous point in the past (at most until your checkpoint.) +It has two variants : + +To roll back until a specified date : + + urpmi.recover --rollback <date> + +The date can be a duration (for example "2 hours ago") or a date given +in YYYY-MM-SS hh:mm format. + +To roll back a specified number of transactions : + + urpmi.recover --rollback <number of transactions> + +In both cases, be careful not to rollback beyond the checkpoint! + +=back + +Once you've defined a checkpoint, when you use urpmi, urpme or directly +rpm to install or remove packages, the older packages will be stored in +/var/spool/repackage. You thus must make sure you have enough space on +this partition to store all repackaged RPMs. + +Technically, defining a checkpoint is equivalent to writing a file +/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, if you don't want to store +repackaged RPMs in /var/spool/repackage. + +If you want to disable the repackaging functionality and clean up the +repackage spool, use C<urpmi.recover --disable>. Warning: rollbacks won't +be possible anymore. + +=head1 Restricted urpmi + +urpmi has a "restricted" counterpart: rurpmi. It is similar to urpmi, but +has a stripped-down set of features. It's intended to be used by users +without root privileges, but with sudo rights on it, preventing any abuse +of this tool to compromise the system. + +Its syntax is similar to the one of urpmi, but it disallows installing +arbitrary RPMs: those are forcibly downloaded from a registered media. +A number of dangerous options, listed in the rurpmi(8) manpage, are also +forbidden. + +=cut diff --git a/pod/8/urpmq.pod b/pod/8/urpmq.pod new file mode 100644 index 00000000..7f7c9b09 --- /dev/null +++ b/pod/8/urpmq.pod @@ -0,0 +1,352 @@ +=head1 NAME + +urpmq - urpmi database query tool. + +=head1 SYNOPSIS + + urpmq [options] [package_names | rpm_files...] + +=head1 DESCRIPTION + +urpmq is a tool to access and query the urpmi database. It can be used to +list available packages in the various urpmi media, or to list the full +dependencies of a package, or to list the packages that will be installed +if you start urpmi. The output of urpmq has the following format, adjusted +according to the command-line options that were used: + + [group/]package_name[-version][-release][.arch] + +=head1 OPTIONS + +=over + +=item B<--help> + +Prints a help message and exit (this is the same as B<-h> or B<-?>). + +=item B<--list> + +List available packages. + +=item B<--list-media> [I<type>] + +List available media. You can optionally add a type selector: B<all> to +list all media (the default), B<update> to list the update media, or +B<active> to list only active media. + +=item B<--list-url> + +List available media and their URLs. + +=item B<--list-nodes> + +List available nodes for parallel installation (when using B<--parallel>). + +=item B<--list-aliases> + +List available parallel aliases. + +=item B<--update> + +Use only update media. This means that urpmq will search and resolve +dependencies only in media marked as containing updates (e.g. which have +been created with C<urpmi.addmedia --update>). + +=item B<--media> I<media1,...,mediaN> + +Select specific media to be used, instead of defaulting +to all available media (or all update media if B<--update> is used). +No rpm will be found in other media. + +=item B<--excludemedia> I<media1,...,mediaN> + +Do not use the specified media. + +=item B<--searchmedia> I<media> + +Use only the specified media to search for packages that are specified on +the command-line, or which are found when using B<--auto-select>. +Dependencies of those packages can still be found in other media. + +=item B<--sortmedia> I<media1,...,mediaN> + +Sort the specified media. Substrings may be used to simplify grouping. +This way, C<media1> will be taken into account first, then C<media2>, and +so on. Media which aren't listed are taken into account after the others. + +=item B<--synthesis> I<file> + +Use the specified synthesis file instead of the urpmi database for +searching packages and resolving dependencies. + +=item B<--auto-select> + +Select all packages that can be upgraded, according to already installed +packages and packages listed in various registered media. + +=item B<--auto-orphans> + +List orphans. + +=item B<--not-available> + +List packages that are not available on any media. This can help to find +packages that are still installed but that are now obsolete because they +have been removed from the current version of Mageia Linux. + +=item B<--no-suggests> + +With this option, urpmq will not require "suggested" packages. +By default, urpmq will require (newly) suggested packages. + +=item B<--allow-suggests> + +With this option, urpmi will install "suggested" packages. +This is useful if you have C<no-suggests> in urpmi.cfg. + +=item B<--keep> + +When some dependencies cannot be satisfied, +change the selection of packages to try to keep existing packages instead +of removing them. This behaviour generally rejects the upgrade of packages +given on command line (or when using B<--auto-select>) when a dependency error +occurs. + +=item B<--fuzzy> + +Disable fast search on exact package name; i.e. it will propose +all packages matching the name partially, even if one of them matches exactly +the specified name (this is the same as B<-y>). + +=item B<--src> I<name> + +Search a source package +matching I<name> and it will select all dependencies by default. + +=item B<--sources> + +Prints source URLs (or file names) of all selected +packages. (Can be used by the superuser only.) + +=item B<--force> + +Continue when requesting packages that are not available. + +=item B<--ignorearch> + +Allow to search packages whose architecture isn't compatible with the +architecture of the host. + +=item B<--parallel> I<alias> + +Activate distributed execution of urpmi to other machines (it is mandatory +that urpmi is installed but it is not necessary to have media defined on +any machines). I<alias> defines which extension module to use by urpmi +(currently urpmi-parallel-ka-run or urpmi-parallel-ssh) and which +machines should be updated, this alias is defined in the file +F</etc/urpmi/parallel.cfg> as described below. + +=item B<--root> I<directory> + +Use the file system tree rooted for rpm install. All operations and +scripts will run after chroot(2). The rpm database in the rooted tree +will be used but urpmi configuration comes from normal system. + +=item B<--urpmi-root> I<directory> + +Use the file system tree rooted for urpmi database and rpm install. Contrary +to B<--root>, the urpmi configuration comes from the rooted tree. + +=item B<--wget> + +Use wget for downloading distant files. By default curl +is used if available, or wget instead. + +=item B<--curl> + +Use curl for downloading distant files. By default curl is used if +available, or wget instead. + +=item B<--curl-options> I<'options'> + +=item B<--rsync-options> I<'options'> + +=item B<--wget-options> I<'options'> + +Specify additional command-line options to be passed to curl, rsync or +wget when retrieving files. If several options are to be passed, separate +them with spaces and enclose them in quotes. + +Note that the rsync options will also be used for ssh media. + +=item B<--proxy> I<proxyhost[:port|1080]> + +Use specified HTTP proxy. + +=item B<--proxy-user> I<user:password> + +Use specified user and password to use for proxy authentication. +Specifying B<--proxy-user=ask> will cause urpmq to prompt for a username +and a password. + +=item B<--use-distrib> I<directory> + +Configure urpmq on the fly from a distribution tree. + +=item B<--env> I<directory> + +Use a different environment directly from a bug report to replay a bug. +The argument is the same argument given to B<--bug> option. + +=item B<--skip> I<pattern,...> + +You can specify a list of packages which installation should be skipped. +You can also include patterns between //, just like in +F</etc/urpmi/skip.list> (see urpmi.files(5)). + +=item B<--prefer> I<pattern,...> + +You can specify a list of packages which installation should be preferred +(especially useful with B<--auto>). +You can also include patterns between //, just like in +F</etc/urpmi/prefer.list> (see urpmi.files(5)). + +=item B<--wait-lock> + +If the urpmi or rpm db is busy, wait until it is available + +=item B<--changelog> + +Prints the package changelog. + +=item B<--conflicts> + +Prints the package conflicts. + +=item B<--obsoletes> + +Prints the package obsoletes. + +=item B<--provides> + +Prints the package provides. + +=item B<--requires> + +Prints the package requires. + +=item B<--suggests> + +Prints the package suggests. + +=item B<--sourcerpm> + +Prints the sourcerpm of the package + +=item B<--summary> + +Prints concise information about the package. + +=item B<--verbose> + +Activate verbose mode. + +=item B<-v> + +This is the same as B<--verbose>. + +=item B<-d> + +This is the same as B<--requires-recursive>. + +=item B<-u> + +Deselect packages if a better version is already installed. + +=item B<-m> + +Equivalent to B<-du>. + +=item B<-a> + +Select all matches on command line; that's useful when one gives an +incomplete package name and when using B<-f> or B<-r>. + +=item B<-c> + +If maximal closure is used, assume that a package listed may have wrong or +not up-to-date dependencies. This causes more packages to be upgraded and +may correct unresolved dependencies on the rpm database. + +=item B<--requires-recursive> + +Print dependencies (maximal closure). + +=item B<--whatprovides> + +Search in provides to find package. + +=item B<--whatrequires> + +Reverse search to what requires the package given. + +=item B<--whatrequires-recursive> + +Reverse search to what requires recursively the package given +(looking through virtual packages). + +=item B<-S> + +Same as B<--summary>. + +=item B<-y> + +This is the same as B<--fuzzy>. + +=item B<-Y> + +Like B<-y>, but forces to match case-insensitively. + +=item B<-s> + +This is the same as B<--src>. + +=item B<-p> + +This is the same as B<--whatprovides>. + +=item B<-i> + +Prints useful information in human readable form, as for I<rpm -qi>. + +=item B<-g> + +Prints groups of each package listed. + +=item B<-r> + +Prints also version and release of each package listed. + +=item B<-f> + +Prints also version, release and arch of each package listed. + +=item B<-l> + +Lists files in packages. + +=back + +=head1 FILES + +See urpmi.files(5). + +=head1 SEE ALSO + +urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), urpmf(8), +urpmi(8), urpmi.files(5). + +=head1 AUTHOR + +Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), +FranE<ccedil>ois Pons, Rafael Garcia-Suarez |