LinuxSir.Org  
| 网站首页 | 注册账号 | 论坛帮助 |

欢迎来到LinuxSir.Org!
您还未登录,请登录后查看论坛,或者点击论坛上方的注册链接注册新账号。


发表新主题 回复
精华主题  
主题工具
旧 03-06-01, 17:24 第 1 帖
monpython
 
monpython 的头像
 
 
注册会员  
  注册日期: Nov 2002
  帖子: 513
  精华: 4
 

标题: 比 rpm 强大得多的 urpmi 常见问题!


说明:

很多从Redhat转移到Mandrake的使用者都不知道MDK提供的 urpmi 命令. 其实这个命令比
rpm要强大的多, 最大的优点就是可以自己解决安装rpm包时烦人的依赖关系. 只要你
预先指定了要搜索的文件源(本地或者网络上的), 只要一个urpmi <package> 就自动为你安
装rpm包, 解决依赖关系.

下面是经常出没于 irc/Freenode 频道的garrick写的 urpmi 常见问题. 觉得翻译出来对大
家有帮助. 他的网页:http://speculation.org/garrick 上还有其它有用的东东.


------------------------------------------
upmi 常见问题
------------------------------------------


作者: garrick
翻译: monpython


Q: 什么是urpmi?
A: 'urpmi' 是Mandrake处理rpm文件来源的工具. 它是一个rpm的打包程序,可以让使用着更容易的进行安装.


Q: 它有什么样的文件来源?
A: 'urpmi' 能够处理像你的mandrake CD这种可拆卸媒体上的文件源,也可以是硬盘上rpm文件,或者是ftp,http服务器上的文件源.
缺省状态下,'urpmi' 已经知道mandrake CD上的文件源的位置.


Q: 怎么用'urpmi'安装文件包?
A: 让我们拿BitchX这个文件举个例子: 'urpmi BitchX' 'urpmi' 将会搜索文件源的索引,查找名为"BitchX"的文件包.
如果找到该包,它会进一步寻找"BitchX"所需要的其它包 (这就时urpmi一个很酷的功能,自动解决相依性问题).还有,
如果需要,它会要求你插入光盘.


Q: 提示"command not found", 是不是'urpmi'有问题?
A: 不是,用'su -'命令再试试.


Q: 有哪些文件来源?
A: Mandrake有三种文件源: main(一般分别放在三个CD上),contrib目录,和updates.如果你的系统是从CD上安装的,
那么urpmi将会预先根据三个CD设置好main和contrib目录.(所以看起来就好像是四个安装来源,因为三片光盘
上既有main又有contrib目录).如果你的系统是从ftp上安装的,那么它会预先根据ftp服务器设置好main和contrib.
不管是以上哪种情况,你都要用一个ftp镜像站点配置一个update安装源.


Q: 到哪里去找urpmi的安装源?
A: 去http://plf.zarb.org/~nanardon/ 这个叫"Easy Urpmi"的网页. 首先选择你mandrake版本和你的体系结构(如果你不知道你的
机器体系,就选i586),点下一步.然后为main,contrib和updates选择地理位置接近的镜像. 如果你要的软件包没有到侵权和其它
法律问题, 可以选择一个plf镜像. 如果你自己可以处理一些情况,还可以选择一个texstar镜像.接下来点击下一步.在网页的底部
把得出的 urpmi.addmedia 命令拷贝粘贴到有root执行权的shell中.


Q: 什么是PLF(Penguin Liberation Front)?
A: http://plf.zarb.org, 该站上有因为法律原因无法通过mandrake发行的mandrake文件包. 像DVD解码,mp3编码等软件可以在那里找到.
PLF很方便的组织成一个urpmi的文件源,你可以访问该站获得更多的信息.


Q: 我如何加入新的文件源?
A: 用 'urpmi.addmedia' 命令. 用法是这样的:

urpmi.addmedia [--update] <name> <location> with <hdlist>

下面是加入我的mandrake ftp镜像的例子: (要整行输入):

Mandrake 9.1:

urpmi.addmedia usc-main ftp://mirrors.usc.edu/pub/linux/dist.../Mandrake/RPMS with ../base/hdlist.cz
urpmi.addmedia usc-contrib ftp://mirrors.usc.edu/pub/linux/dist...1/contrib/RPMS with ../../i586/Mandrake/base/hdlist2.cz
urpmi.addmedia --update usc-update ftp://mirrors.usc.edu/pub/linux/dist...dates/9.1/RPMS with ../base/hdlist.cz

Mandrake 9.0:
urpmi.addmedia usc-main ftp://mirrors.usc.edu/pub/linux/dist.../Mandrake/RPMS with ../base/hdlist.cz
urpmi.addmedia usc-contrib ftp://mirrors.usc.edu/pub/linux/dist...0/contrib/RPMS with ../../i586/Mandrake/base/hdlist2.cz
urpmi.addmedia --update usc-update ftp://mirrors.usc.edu/pub/linux/dist...dates/9.0/RPMS with ../base/hdlist.cz

Mandrake 8.2:
urpmi.addmedia usc-main ftp://mirrors.usc.edu/pub/linux/dist.../Mandrake/RPMS with ../base/hdlist.cz
urpmi.addmedia usc-contrib ftp://mirrors.usc.edu/pub/linux/dist...2/contrib/i586 with ../../i586/Mandrake/base/hdlist2.cz
urpmi.addmedia --update usc-update ftp://mirrors.usc.edu/pub/linux/dist...dates/8.2/RPMS with ../base/hdlist.cz

Mandrake 8.1 (mdk8.1 has been End-of-Lifed):
urpmi.addmedia usc-main ftp://mirrors.usc.edu/pub/linux/dist.../Mandrake/RPMS with ../base/hdlist.cz
urpmi.addmedia usc-contrib ftp://mirrors.usc.edu/pub/linux/dist...1/contrib/RPMS with ../../i586/Mandrake/base/hdlist2.cz
urpmi.addmedia --update usc-update ftp://mirrors.usc.edu/pub/linux/dist...dates/8.1/RPMS with ../base/hdlist.cz

对于 mdk 8.2, 我自己有一些更新的软件包,你也许会兴趣.你在那里总可以找到最新的 Mozilla, Galeon 和 Fluxbox:
urpmi.addmedia --update garrick.update ftp://polop.usc.edu/pub/rpms with hdlist.cz


你可以用 --update 参数, 把文件源标记为 "updates" (稍后再讨论)


** mandrake 9.0 的新功能! 你现在可以更方便的从任何 ftp 镜像加入整个安装和contrib文件源:
urpmi.addmedia --distrib ftp://ftp-linux.cc.gatech.edu/pub/li...drake/8.2/i586

** 注意, 这个功能在 8.2上就有, 但是不起作用 =/



Q: 我能不能把我喜欢的任何本地目录加入为文件源?
A: 可以, 很简单:
urpmi.addmedia --update 自己取个名字 file://some/directory/path


Q: 我能否把我喜欢的网络目录(ftp或http地址)加入为文件源?
A: 不行. 文件源目录还需要一些特殊的文件. 除了用mandrake镜像作为文件源, Penguin Liberation Front网站 (http://plf.zarb.org/) 拥有最大的
网上文件源. 你可以访问 "Easy Urpmi" 以获得最有名的完整文件源列表.

你可以加入任何你要的本地目录, urpmi.addmedia 命令将会立刻创建所需的文件.


Q: 如何删除文件源?
A: 'urpmi.removemedia <name>' (只键入 'urpmi.removemedia' 将会列出所有可以删除的预设名称.)


Q: 能否用 urpmi 安装 rpm ?
A: 当然! 'urpmi foobar-<version>.i586.rpm' (或其它软件包) 将会自动安装任何所需的相关软件包. 但是记住并不保证非mandrake rpms能够
运行. 实际上, 我很不愿意推荐第三方的rpm安装包. 相反, 应该找一个 src.rpm 自己从源代码编译一个新的rpm包. 参考 rpm 常见问题.


Q: 如何升级软件?
A: 第一, 你需要标记为 "updates" 的 rpm 安装源. 注意, 这是镜像上的一个不同的目录.
下面是一个和上面类似的升级软件的例子:
urpmi.addmedia --update update_gatech ftp://ftp-linux.cc.gatech.edu/pub/li...ates/8.2/RPMS/ with ../base/hdlist.cz
注意: 这个例子用了 --update 参数和一个略微不同的地址

现在我们已经为 urpmi 加入了合适的升级文件源. 只要打入:
'urpmi --update <package>' urpmi 就会只在文件源搜索标记为 "update" 的包.


Q: 如何自动升级所有需要升级的包?
A: 'urpmi --update --auto-select'


Q: 哪个包里有某某文件?
A: 'urpmf' 程序可以用来在 urpmi 数据库中查找某个文件. 只需键入'urpmf foobar.something' 就可能会显示
"foobar:/usr/bin/foobar.something". 说明你要的文件在 "foobar" 这个包中.

技巧一: 如果你找的是程序或命令名称, 那么在所查找的名称前面加入 bin/ 比如: bin/ls'.

技巧二: 如果你找的是库文件, 那么在库文件的前面加入 lib/ 比如: 'urpmf lib/libssl'.


Q: ftp上的文件源已经改变, 如何升级我的本地索引?
A: 'urpmi.update <name>' 注意: main 和 contrib 从来不会改变. 但是 升级和 PLF 安装源经常更新.


Q: 非 root 权限的人可以用 urpmi 安装软件吗? 
A: 根据文档, 是可以的. 但是这个功能不起作用.


Q: 我不喜欢 urpmi, 有没有其它选择?
A: 当然, 有很多. 可以到 http://rpm.org/software/updaters/ 看到很长的列表. 我喜欢 'yum' 网址是 http://www.linux.duke.edu/projects/yum/.
yum 的一个好处是你从来不需要去升级一个文件源 (用 yum 术语叫做文件仓库)! yum 已经打包在 9.1 的 contrib 中,
键入 'urpmi yum' 修改你的 /etc/yum.conf . 到下面的地址参照我的样本:
http://speculation.org/garrick/yum.conf

用法:
yum list updates - 列出任何升级
yum update - 进行升级
yum info <package> - 就像 'rpm -qi', 但是是你的文件仓库的任何包
yum list <file> - 就像 'urpmf <file>', 但是你必须用完整路径
yum install <package> - 就像 'urpmi <package>'
  monpython 当前离线   回复时引用此帖
旧 03-06-01, 17:48 第 2 帖
fundawang 帅哥
 
fundawang 的头像
 
 
注册会员  
  注册日期: Dec 2002
  我的住址: 北京
  帖子: 8,291
  精华: 18
 

这篇文章写得不错,可惜还是没有理解Mandrake的精髓。因为上面所说的各种命令基本都可以通过RPMDrake这个图形化工具搞定。







__________________
引领潮流但不迎合潮流:Mandriva Linux,Opera。
  fundawang 当前离线   回复时引用此帖
旧 03-06-01, 18:08 第 3 帖
ShiyuTang
 
ShiyuTang 的头像
 
 
★版☆主★  
  注册日期: Oct 2002
  我的住址: 湖北荆州
  帖子: 2,434
  精华: 24
 

不过还是有大量喜欢字符界面的人存在。这篇文章确实应该是精华。







__________________
因本人即将毕业,急求工作,有意者请来电洽谈咨询.本人承接以下业务:苦力搬运,装卸,车工,钳工,焊工,水电工,瓦工,砸墙,砌墙,筛沙,油漆,通下水道,贴瓷砖,室内装璜,VC,.NET,C#,Java,j2ee,j2me,php,asp,delphi,汇编,PC&手机游戏开发,网络维护管理,三维建模,照片上色,平面设计,建筑效果图,flash动画,硬件设计,单片机开发,四六级替考,办证,黑*,黑车,暗杀,洗钱,要债,代写小学生暑假作业.谢谢!
  ShiyuTang 当前离线   回复时引用此帖
旧 03-06-01, 21:43 第 4 帖
月风
 
 
 
注册会员  
  注册日期: Nov 2002
  我的住址: 成都
  帖子: 1,027
  精华: 5
 

呵呵,不错不错,昨天还在问在命令行下如何安装一个包并且能自动检查依赖,结果今天就遇上这好东西了。有点像APT了
  月风 当前离线   回复时引用此帖
旧 03-06-01, 22:05 第 5 帖
QuickTime
 
QuickTime 的头像
 
 
注册会员  
  注册日期: Nov 2002
  我的住址: Virginia
  帖子: 5,868
  精华: 29
 

确实很不错
我最近也正在从rpm向urpmi迁移:)
我安装rpm喜欢用字符是因为这样更快一点







__________________
Mac OS X 10.4.8
PowerBook G4 12" 1.5G + iMac 24" Intel Core 2 Duo 2.16
www.vitamin-max.com
  QuickTime 当前离线   回复时引用此帖
旧 03-06-01, 23:17 第 6 帖
faint
 
faint 的头像
 
 
注册会员  
  注册日期: Nov 2002
  我的住址: 中国-深圳
  帖子: 3,241
  精华: 5
 

引用:
最初由 mandrakechina 发表
这篇文章写得不错,可惜还是没有理解Mandrake的精髓。因为上面所说的各种命令基本都可以通过RPMDrake这个图形化工具搞定。
兄弟,这个就不一定了,如果你没有图形界面,那你如何做呢?前端界面并不一定好。比如,你只想用第一个iso安装的时候,你就会感到前端界面并那么强大。urpmi是Mandrake比Redhat更进一步的地方。
  faint 当前离线   回复时引用此帖
旧 03-06-01, 23:44 第 7 帖
monpython
 
monpython 的头像
 
 
注册会员  
  注册日期: Nov 2002
  帖子: 513
  精华: 4
 

http://plf.zarb.org/ 地址是可以访问的.
大家要记得把上面地址中的那个小句号 . 去掉.







__________________
与其咒骂黑暗不如点亮一只蜡烛。
----------------
12点以前睡觉;
先把必须要做的事做完;
多读自己的专业书;
开会的时候不要迟到;
  monpython 当前离线   回复时引用此帖
旧 03-06-02, 00:01 第 8 帖
faint
 
faint 的头像
 
 
注册会员  
  注册日期: Nov 2002
  我的住址: 中国-深圳
  帖子: 3,241
  精华: 5
 

http://myweb.tiscali.co.uk/jwrobinso...wto/index.html
  faint 当前离线   回复时引用此帖
旧 03-06-02, 10:02 第 9 帖
euboy
 
euboy 的头像
 
 
注册会员  
  注册日期: Nov 2002
  帖子: 764
  精华: 9
 

看到了debian apt的样子了







__________________
Gnu/Linux
Gnu/Emacs
LaTeX
  euboy 当前离线   回复时引用此帖
旧 03-06-02, 17:33 第 10 帖
何辛
 
何辛 的头像
 
 
注册会员  
  注册日期: Oct 2002
  我的住址: 广东清远阳山
  帖子: 82
  精华: 1
 

呵呵,原来有这么多人不知道urpmi的?







__________________
————————————————
学习linux,多问自己为什么,多看readme,不要盲目,更不要抱怨!
^_^何辛^_^
  何辛 当前离线   回复时引用此帖
旧 03-06-03, 15:38 第 11 帖
faint
 
faint 的头像
 
 
注册会员  
  注册日期: Nov 2002
  我的住址: 中国-深圳
  帖子: 3,241
  精华: 5
 

呵呵,你自己不找精华的贴子而已,我在去年11月左右已经写了一个贴子。就是关于urpmi使用的。
http://www.linuxsir.com/bbs/showthre...t=%C9%FD%BC%B6
  faint 当前离线   回复时引用此帖
旧 03-06-03, 16:19 第 12 帖
何辛
 
何辛 的头像
 
 
注册会员  
  注册日期: Oct 2002
  我的住址: 广东清远阳山
  帖子: 82
  精华: 1
 

提倡用URPMI啦.好用阿..
  何辛 当前离线   回复时引用此帖
旧 03-06-05, 21:00 第 13 帖
faint
 
faint 的头像
 
 
注册会员  
  注册日期: Nov 2002
  我的住址: 中国-深圳
  帖子: 3,241
  精华: 5
 

Debian的apt不错,还有Mandrake 的urpmi也不错。。。所以,我的系统里就只有这两个系统。。。。
  faint 当前离线   回复时引用此帖
旧 03-06-06, 11:19 第 14 帖
何辛
 
何辛 的头像
 
 
注册会员  
  注册日期: Oct 2002
  我的住址: 广东清远阳山
  帖子: 82
  精华: 1
 

同意faint的观点,,我也是一直都用urpmi,就是觉得它不错,够简单
  何辛 当前离线   回复时引用此帖
发表新主题 回复


主题工具

发帖规则
您 [不可以] 发表新主题
您 [不可以] 回复主题
您 [不可以] 上传附件
您 [不可以] 编辑您的帖子

已 [启用] BB 代码
已 [启用] 表情符号
已 [启用] IMG 代码
已 [禁用] HTML 代码
[论坛跳转…]


所有时间均为[北京时间]。现在的时间是 16:53


Powered by vBulletin 版本 3.6.8
版权所有 ©2000 - 2010, Jelsoft Enterprises Ltd.
官方中文技术支持: vBulletin 中文
版权所有 ©2002 - 2009, LinuxSir.Org