1 |
=head1 NAME |
2 |
|
3 |
urpmi - rpm downloader, installer and dependency solver |
4 |
|
5 |
=head1 SYNOPSIS |
6 |
|
7 |
urpmi [options] [package_names | rpm_files...] |
8 |
urpmi [options] --auto-select |
9 |
|
10 |
=head1 DESCRIPTION |
11 |
|
12 |
The purpose of urpmi is to install rpm packages, including all their |
13 |
dependencies. You can also use it to install the build dependencies of an |
14 |
srpm (an rpm source package), or the build dependencies read from a plain |
15 |
rpm spec file; or to install a source package itself in order to rebuild |
16 |
it afterwards. |
17 |
|
18 |
You can compare rpm vs. urpmi with insmod vs. modprobe or dpkg vs apt-get. |
19 |
Just run urpmi followed by what you think is the name of the package(s), |
20 |
and urpmi will: |
21 |
|
22 |
=over 4 |
23 |
|
24 |
=item * |
25 |
|
26 |
Propose different package names if the name was ambiguous, and quit. |
27 |
|
28 |
=item * |
29 |
|
30 |
If only one corresponding package is found, check whether its |
31 |
dependencies are already installed. |
32 |
|
33 |
=item * |
34 |
|
35 |
If not, propose to install the dependencies, and on a positive answer, |
36 |
proceed. |
37 |
|
38 |
=item * |
39 |
|
40 |
Finish by installing the requested package(s). |
41 |
|
42 |
=back |
43 |
|
44 |
Note that urpmi handles installations from various types of media (ftp, |
45 |
http, https, rsync, ssh, local and nfs volumes, and removable media such |
46 |
as CDROMs or DVDs) and is able to install dependencies from a medium |
47 |
different from the original package's media. For removable media, urpmi |
48 |
may ask you to insert the appropriate disk, if necessary. |
49 |
|
50 |
To add a new medium containing rpms, run C<urpmi.addmedia>. To remove an |
51 |
existing medium, use C<urpmi.removemedia>. To update the package list (for |
52 |
example when the ftp archive changes) use C<urpmi.update>. |
53 |
|
54 |
=head1 OPTIONS |
55 |
|
56 |
=over |
57 |
|
58 |
=item B<--help> |
59 |
|
60 |
Prints a help message and exit (this is the same as B<-h> or B<-?>). |
61 |
|
62 |
=item B<--media> I<media1,...,mediaN> |
63 |
|
64 |
Select specific media to be used, instead of defaulting |
65 |
to all available media (or all update media if B<--update> is used). |
66 |
No rpm will be fetched from other media. |
67 |
|
68 |
=item B<--excludemedia> I<media1,...,mediaN> |
69 |
|
70 |
Do not use the specified media. |
71 |
|
72 |
=item B<--searchmedia> I<media1,...,mediaN> |
73 |
|
74 |
Use only the specified media to search for packages that are specified on |
75 |
the command-line, or which are found when using B<--auto-select>. |
76 |
Dependencies of those packages can still be found in other media. |
77 |
|
78 |
=item B<--sortmedia> I<media1,...,mediaN> |
79 |
|
80 |
Sort the specified media. Substrings may be used to simplify grouping. |
81 |
This way, C<media1> will be taken into account first, then C<media2>, and |
82 |
so on. Media which aren't listed are taken into account after the others. |
83 |
|
84 |
=item B<--update> |
85 |
|
86 |
Use only update media. This means that urpmi will search packages and |
87 |
resolve dependencies only in media marked as containing updates. |
88 |
|
89 |
=item B<--synthesis> I<file> |
90 |
|
91 |
Use the specified synthesis file instead of the urpmi database for |
92 |
searching packages and resolving dependencies. This option is mostly |
93 |
designed for internal use. |
94 |
|
95 |
=item B<--auto> |
96 |
|
97 |
Install all required dependencies without asking. |
98 |
|
99 |
=item B<--auto-select> |
100 |
|
101 |
Select all packages that can be upgraded, according to already installed |
102 |
packages and packages listed in various registered media. |
103 |
|
104 |
=item B<--auto-update> |
105 |
|
106 |
Like B<--auto-select>, but also updates all relevant media before |
107 |
selection of upgradeable packages is made. This avoids a previous call to |
108 |
C<urpmi.update>. |
109 |
|
110 |
=item B<--auto-orphans> |
111 |
|
112 |
Remove all orphans without asking (see also C<urpme --auto-orphans>) |
113 |
|
114 |
=item B<--no-md5sum> |
115 |
|
116 |
Disable MD5SUM file checking when updating media. |
117 |
|
118 |
=item B<--force-key> |
119 |
|
120 |
Force update of GPG key when updating media. |
121 |
|
122 |
=item B<--no-install> |
123 |
|
124 |
Only download packages, don't install them. After operation, you'll find |
125 |
them in F</var/cache/urpmi/rpms>. |
126 |
|
127 |
=item B<--no-uninstall> |
128 |
|
129 |
Never ask to uninstall a package but prefer aborting instead. This can be |
130 |
safer in auto mode. |
131 |
|
132 |
=item B<--keep> |
133 |
|
134 |
When some dependencies cannot be satisfied, change the selection of |
135 |
packages to try to keep existing packages instead of removing them. This |
136 |
behaviour generally rejects the upgrade of packages given on command line |
137 |
(or when using B<--auto-select>) when a dependency error occurs. |
138 |
|
139 |
=item B<--split-level> I<number> |
140 |
|
141 |
Split urpmi's operation in small transactions when the total number of |
142 |
packages to upgrade is greater than the given I<number>. This option is |
143 |
activated by default, and the default value of I<number> is 20. |
144 |
|
145 |
=item B<--split-length> I<count> |
146 |
|
147 |
Split urpmi's operation in small transactions of at |
148 |
least I<count> packages. The default is 8 and setting this value to 0 just |
149 |
disables splitting in small transactions. |
150 |
|
151 |
=item B<--fuzzy> |
152 |
|
153 |
Disable fast search on exact package name; that means that urpmi will |
154 |
propose all packages matching part of the name, even if one of them |
155 |
matches exactly the specified name (this is the same as B<-y>). |
156 |
|
157 |
=item B<--buildrequires> |
158 |
|
159 |
Select all the C<BuildRequires> of the wanted source packages. |
160 |
(You can also install the build dependencies read directly from an rpm spec file.) |
161 |
|
162 |
=item B<--install-src> |
163 |
|
164 |
Install only the source package (that is, no binary packages will be |
165 |
installed). You don't need to be root to use this option (if you have |
166 |
write access to your rpm build top directory). |
167 |
|
168 |
=item B<--clean> |
169 |
|
170 |
Remove all packages from the cache in directory F</var/cache/urpmi/rpms>. |
171 |
|
172 |
=item B<--noclean> |
173 |
|
174 |
Do not remove any package from the cache in directory |
175 |
F</var/cache/urpmi/rpms>. |
176 |
|
177 |
=item B<--force> |
178 |
|
179 |
Assume yes on all questions. |
180 |
|
181 |
=item B<--quiet> |
182 |
|
183 |
Quiet mode: when calling rpm no upgrade status is printed. |
184 |
|
185 |
=item B<--verbose> |
186 |
|
187 |
Proposes a verbose mode with various messages. |
188 |
|
189 |
=item B<--debug> |
190 |
|
191 |
Proposes a very verbose mode. |
192 |
|
193 |
=item B<--debug-librpm> |
194 |
|
195 |
Proposes a very verbose mode (similar to rpm -vv) |
196 |
|
197 |
=item B<--no-suggests> |
198 |
|
199 |
With this option, urpmi will not install "suggested" packages. |
200 |
By default, urpmi will install (newly) suggested packages. |
201 |
|
202 |
=item B<--allow-suggests> |
203 |
|
204 |
With this option, urpmi will install "suggested" packages. |
205 |
This is useful if you have C<no-suggests> in urpmi.cfg. |
206 |
|
207 |
=item B<--justdb> |
208 |
|
209 |
Update only the database, not the filesystem. |
210 |
|
211 |
=item B<--replacepkgs> |
212 |
|
213 |
Force installing the packages even though they are already installed. |
214 |
|
215 |
=item B<--allow-nodeps> |
216 |
|
217 |
With this option, urpmi will ask the user on error whether it should |
218 |
continue the installation without checking dependencies. By default, urpmi |
219 |
exits immediately in this case. |
220 |
|
221 |
=item B<--allow-force> |
222 |
|
223 |
With this option, urpmi will ask the user on error whether it should |
224 |
proceed to a forced installation. By default, urpmi exits immediately in |
225 |
this case. |
226 |
|
227 |
=item B<--allow-medium-change> |
228 |
|
229 |
When used when B<--auto>, do not suppress all questions, but still ask the |
230 |
user for medium changes (e.g. insertion of CD-ROMs). |
231 |
|
232 |
=item B<--parallel> I<alias> |
233 |
|
234 |
Activate distributed execution of urpmi to other machines (it is mandatory |
235 |
that urpmi is installed, but it is not necessary to have media defined on |
236 |
any machines). I<alias> defines which extension module is to be used by |
237 |
urpmi (currently, C<urpmi-parallel-ka-run> or C<urpmi-parallel-ssh> are |
238 |
available) and which machines should be updated. This alias is defined in |
239 |
the file F</etc/urpmi/parallel.cfg> as described in the L<urpmi.files> |
240 |
manpage. |
241 |
|
242 |
=item B<--root> I<directory> |
243 |
|
244 |
Use the file system tree rooted for rpm install. All operations and |
245 |
scripts will run after chroot(2). The rpm database that lies in the rooted |
246 |
tree will be used, but the urpmi configuration comes from the normal |
247 |
system. |
248 |
|
249 |
=item B<--urpmi-root> I<directory> |
250 |
|
251 |
Use the file system tree rooted for urpmi database and rpm install. Contrary |
252 |
to B<--root>, the urpmi configuration comes from the rooted tree. |
253 |
|
254 |
=item B<--use-distrib> I<directory> |
255 |
|
256 |
Configure urpmi on the fly from a distrib tree, useful to install a chroot |
257 |
with the B<--root> option. See the description of the B<--distrib> option |
258 |
in the C<urpmi.addmedia> manpage. |
259 |
|
260 |
=item B<--download-all> I<dest-dir> |
261 |
|
262 |
By default, urpmi will download packages when they are needed. This can be |
263 |
problematic when connection failures happen during a big upgrade. When this |
264 |
option is set, urpmi will first download all the needed packages and proceed |
265 |
to install them if it managed to download them all. You can optionally |
266 |
specify a directory where the files should be downloaded (default is /var/cache/urpmi which could be too small to hold all the files). |
267 |
|
268 |
=item B<--downloader> I<program name> |
269 |
|
270 |
Use a specific program for downloading distant files via http or ftp. |
271 |
By default curl is used if available, or wget instead. |
272 |
|
273 |
=item B<--curl-options> I<'options'> |
274 |
|
275 |
=item B<--rsync-options> I<'options'> |
276 |
|
277 |
=item B<--wget-options> I<'options'> |
278 |
|
279 |
Specify additional command-line options to be passed to curl, rsync or |
280 |
wget when retrieving files. If several options are to be passed, separate |
281 |
them with spaces and enclose them in quotes. |
282 |
|
283 |
Note that the rsync options will also be used for ssh media (since it's |
284 |
actually rsync over ssh). |
285 |
|
286 |
=item B<--limit-rate> I<rate> |
287 |
|
288 |
Try to limit the download speed. I<rate> is given in bytes/sec. This |
289 |
option is not active by default. |
290 |
|
291 |
=item B<--resume> |
292 |
|
293 |
Resume transfer of partially-downloaded files. |
294 |
|
295 |
=item B<--retry> I<times> |
296 |
|
297 |
Retries to download files over FTP or HTTP the specified number |
298 |
of times. |
299 |
|
300 |
=item B<--proxy> I<proxyhost[:port]> |
301 |
|
302 |
Use specified HTTP proxy. |
303 |
|
304 |
=item B<--proxy-user> I<user:password> |
305 |
|
306 |
Use specified user and password to use for proxy authentication. |
307 |
Specifying B<--proxy-user=ask> will cause urpmi to prompt for a username |
308 |
and a password. |
309 |
|
310 |
=item B<--bug> I<directory> |
311 |
|
312 |
Create a bug report in I<directory>. You have to send a compressed archive |
313 |
of the directory to the urpmi maintainer for the bug being (probably) |
314 |
reproduced. See L</"BUG REPORTS"> below. |
315 |
|
316 |
=item B<--env> I<directory> |
317 |
|
318 |
Use a different environment directly from a bug report to replay a bug. |
319 |
The argument is the same argument given to B<--bug> option. |
320 |
|
321 |
=item B<--verify-rpm> |
322 |
|
323 |
=item B<--no-verify-rpm> |
324 |
|
325 |
Activate or deactivate rpm signature checking. It's activated by default, |
326 |
and can be overriden in global configuration. |
327 |
|
328 |
=item B<--test> |
329 |
|
330 |
Test the installation of packages but do not actually install anything or |
331 |
modify the system. (That's the same as C<rpm --test>). |
332 |
|
333 |
=item B<--excludepath> I<string> |
334 |
|
335 |
Do not install files of which the |
336 |
names begin with the given I<string> (same as C<rpm --excludepath>). |
337 |
|
338 |
=item B<--excludedocs> |
339 |
|
340 |
Do not install documents files (same as C<rpm --excludedocs>). |
341 |
|
342 |
=item B<--ignorearch> |
343 |
|
344 |
Allow to install packages whose architecture does not match the |
345 |
architecture of the host. This is equivalent to C<rpm --ignorearch>. |
346 |
|
347 |
=item B<--ignoresize> |
348 |
|
349 |
Don't check file systems for sufficient disk space before installation. |
350 |
This is equivalent to C<rpm --ignoresize>. |
351 |
|
352 |
=item B<--repackage> |
353 |
|
354 |
Save previous state of upgraded packages; in other words, save the old |
355 |
rpms (usually in F</var/spool/repackage>, but you can override this with |
356 |
an rpm macro.) This is equivalent to providing the B<--repackage> flag to |
357 |
rpm. |
358 |
|
359 |
I<Note:> if you use C<urpmi.recover> to set up a repackage policy, you |
360 |
don't need this option, because C<urpmi.recover> will globally override |
361 |
the appropriate rpm macro that enables repacking of all rpm transactions |
362 |
system-wide. |
363 |
|
364 |
=item B<--noscripts> |
365 |
|
366 |
Don't execute the scriptlets. |
367 |
This is equivalent to C<rpm --noscripts>. |
368 |
|
369 |
=item B<--replacefiles> |
370 |
|
371 |
Ignore file conflicts. |
372 |
This is equivalent to C<rpm --replacefiles>. |
373 |
|
374 |
=item B<--skip> I<pattern,...> |
375 |
|
376 |
You can specify a list of packages which installation should be skipped. |
377 |
You can also include patterns between //, just like in |
378 |
F</etc/urpmi/skip.list> (see urpmi.files(5)). |
379 |
|
380 |
=item B<--prefer> I<pattern,...> |
381 |
|
382 |
You can specify a list of packages which installation should be preferred |
383 |
(especially useful with B<--auto>). |
384 |
You can also include patterns between //, just like in |
385 |
F</etc/urpmi/prefer.list> (see urpmi.files(5)). |
386 |
|
387 |
=item B<--more-choices> |
388 |
|
389 |
When several packages are found, propose more choices than the default. |
390 |
|
391 |
=item B<--nolock> |
392 |
|
393 |
Don't lock urpmi and rpm db. This can be useful in conjunction with |
394 |
B<--root>. |
395 |
|
396 |
=item B<--wait-lock> |
397 |
|
398 |
If the urpmi or rpm db is busy, wait until it is available |
399 |
|
400 |
=item B<--strict-arch> |
401 |
|
402 |
Upgrade only packages if the newer version has the same architecture as |
403 |
the one installed. Mostly useful on machines that support several |
404 |
architectures (32 and 64 bit). |
405 |
|
406 |
=item B<-a> |
407 |
|
408 |
If multiple packages match the given substring, install them all. |
409 |
|
410 |
=item B<-p> |
411 |
|
412 |
Allow search in provides to find the package (this is the default). |
413 |
|
414 |
=item B<-P> |
415 |
|
416 |
Do not search in provides to find package (this is the opposite of B<-p>). |
417 |
|
418 |
=item B<-y> |
419 |
|
420 |
This is the same as B<--fuzzy>. |
421 |
|
422 |
=item B<-q> |
423 |
|
424 |
This is the same as B<--quiet>. |
425 |
|
426 |
=item B<-v> |
427 |
|
428 |
This is the same as B<--verbose>. |
429 |
|
430 |
=back |
431 |
|
432 |
=head1 EXAMPLES |
433 |
|
434 |
urpmi ssh://foo@bar.net/home/foo/test.rpm |
435 |
|
436 |
Fetch F</home/foo/test.rpm> from server bar.net over ssh using user foo. |
437 |
You can use a public key or enter your password. |
438 |
|
439 |
urpmi --media foo- --auto-select |
440 |
|
441 |
Fetch all the updates from media containing C<foo-> in their name. |
442 |
|
443 |
=head1 FILES |
444 |
|
445 |
See urpmi.files(5). |
446 |
|
447 |
=head1 EXIT CODES |
448 |
|
449 |
=over |
450 |
|
451 |
=item 1 |
452 |
|
453 |
Command line inconsistency. |
454 |
|
455 |
=item 2 |
456 |
|
457 |
Problem registering local packages. |
458 |
|
459 |
=item 3 |
460 |
|
461 |
Source packages not retrievable. |
462 |
|
463 |
=item 4 |
464 |
|
465 |
Medium is not selected. |
466 |
|
467 |
=item 5 |
468 |
|
469 |
Medium already |
470 |
exists. |
471 |
|
472 |
=item 6 |
473 |
|
474 |
Unable to save configuration. |
475 |
|
476 |
=item 7 |
477 |
|
478 |
urpmi database locked. |
479 |
|
480 |
=item 8 |
481 |
|
482 |
Unable to read or create bug report. |
483 |
|
484 |
=item 9 |
485 |
|
486 |
Unable to open rpmdb. |
487 |
|
488 |
=item 10 |
489 |
|
490 |
Some files are missing for installation. |
491 |
|
492 |
=item 11 |
493 |
|
494 |
Some transactions failed but not all. |
495 |
|
496 |
=item 12 |
497 |
|
498 |
All transactions failed. |
499 |
|
500 |
=item 13 |
501 |
|
502 |
Some files are missing and some transactions failed but not all. |
503 |
|
504 |
=item 14 |
505 |
|
506 |
Some files are missing and all transactions failed. |
507 |
|
508 |
=item 15 |
509 |
|
510 |
No package installed (when using --expect-install) |
511 |
|
512 |
=item 16 |
513 |
|
514 |
Bad signature |
515 |
|
516 |
=item 17 |
517 |
|
518 |
Some packages couldn't be installed or upgraded |
519 |
|
520 |
=back |
521 |
|
522 |
=head1 BUG REPORTS |
523 |
|
524 |
If you find a bug in urpmi please report it using the command : |
525 |
|
526 |
urpmi --bug bug_name_as_directory <other arguments> |
527 |
|
528 |
This will automatically create a directory called F<bug_name_as_directory> |
529 |
containing necessary files to reproduce it if possible. I<< <other |
530 |
arguments> >> represent the command-line arguments you noticed the bug |
531 |
with (e.g. C<--auto-select> or a list of rpm names). Please test the |
532 |
report using |
533 |
|
534 |
urpmi --env bug_name_as_directory <other arguments> |
535 |
|
536 |
to check that the bug is still here. Obviously, only reproducible bugs can |
537 |
be resolved. For sending the report, make a tarball of this directory and |
538 |
send it directly to the current maintainer with a description of what you |
539 |
think is wrong. |
540 |
|
541 |
=head1 AUTHOR |
542 |
|
543 |
Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), |
544 |
FranE<ccedil>ois Pons, Rafael Garcia-Suarez |
545 |
|
546 |
=head1 SEE ALSO |
547 |
|
548 |
urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), urpme(8), |
549 |
urpmf(8), urpmq(8), urpmi.cfg(5), urpmi.files(5), urpmi.recover(8). |
550 |
|
551 |
=cut |
552 |
|
553 |
$Id: urpmi.8.pod 261993 2009-10-15 17:12:03Z cfergeau $ |