⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000000.htm

📁 一份很好的linux入门资料
💻 HTM
字号:
<HTML><HEAD>  <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人:&nbsp;boyalone&nbsp;(不笑),&nbsp;信区:&nbsp;Linux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>标&nbsp;&nbsp;题:&nbsp;rpm问题解答&nbsp;<BR>发信站:&nbsp;BBS&nbsp;水木清华站&nbsp;(Fri&nbsp;Apr&nbsp;30&nbsp;11:01:56&nbsp;1999)&nbsp;<BR>&nbsp;<BR>最近比较有空,我决定贴一些文章&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;帮助大家快速对linux上手&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;我个人水平有限&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;也没有把linux-howto汉化的时间&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;发一些小文章希望对大家有帮助&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;如果大家有什么需要,可以发信给我&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;大家一起研究&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;第一篇&nbsp;RPM&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;1&nbsp;什么是rpm&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;即RedHat&nbsp;Package&nbsp;Management&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;由此可见这是RedHat的发明,也是RedHat&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;如此成功的重要原因之一&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;2&nbsp;为什么需要rpm&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;在M$的环境下有大量的软件是通过安装程序&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;来进行管理的。linux下面也要解决相应的问题,&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;这里的问题涵盖了一个软件的各个生命周期&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;安装,配置,卸载。然而linux的系统变化繁多&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;配置也不像windows那样集中。面对种种问题,&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;RedHat针对自己的系统提出了一个较好的办法来&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;管理成千上百的软件。这就是RPM管理系统。在系&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;统中安装了rpm管理系统以后,只要是符合rpm文&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;件标准的打包的程序都可以方便的安装,升级,&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;卸载。&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;3&nbsp;rpm打包的程序都有什么特点&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;a&nbsp;扩展名是rpm&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;文件名本身反映了该软件的大量信息&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如mypackage-1.1-2TL.i386.rpm&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;mypackage是说明软件的名称这是将来在rpm管理&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;系统中登记的名字。&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;1.1是版本号,凭此来发现软件的新旧&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;有时候甚至还变为&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;1.1-19990112这样的形式即1999年1月12日发布的&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;1.1版本&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;2TL这里的2是说明一种发行号意义不大,但可能&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;在生成该包时所用的环境不一样,有时变为&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;2glibc2.0x这样的形式即glibc和2.0x的内核下生&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;成的该包,因此最好在相同的环境下使用&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;至于TL即TurboLinux当然还有可能是rh了&nbsp;:)&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;i386说的是此包是针对intel平台的相应的常见的&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;还有sparc针对sun的&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;4&nbsp;怎么安装一个rpm包&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-i&nbsp;you-package.rpm即可&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;但安装时可能出现如下信息&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;conflict&nbsp;with&nbsp;...&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;这是说你安装的包里有一些文件可能会覆盖现有&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;的文件,缺省时这样的情况下是无法正确安装的&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;可以用&nbsp;rpm&nbsp;--force&nbsp;-i&nbsp;强制安装即可&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;有时会有&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;is&nbsp;needed&nbsp;by&nbsp;...&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;is&nbsp;not&nbsp;installed&nbsp;...&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;这样的情况是此包需要的一些软件你没有安装&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;但有时这样的信息是不必的&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如gnome-1.0它需要xscreen但如果你就想使用其中&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;的一部分功能比如panel,gedit,gnorpm等等,并不需&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;要xscreen因此可以用&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;--nodeps&nbsp;-i&nbsp;来忽略此信息&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;因此总结为rpm&nbsp;-i&nbsp;--force&nbsp;--nodeps&nbsp;什么包都能&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;安装上,但不保证能发挥功能&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;还可以试试rpm&nbsp;-U&nbsp;(upgrade&nbsp;升级)&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;不过最好不要用(纯属个人意见)&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;5&nbsp;怎么卸载一个软件&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;非常简单rpm&nbsp;-e&nbsp;your-package即可&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;用上面那个例子&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;mypackage-1.1-2TL.i386.rpm&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;安装以后应该用&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-e&nbsp;mypackage即可不需要有原来的安装软件&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;有时候出现&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;...&nbsp;is&nbsp;needed&nbsp;by&nbsp;...&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;这说明这个软件被其他软件需要,不能随便卸载&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;但有时也可能需要卸载&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如TLC中安装管理程序xturbopkg只需要&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;perl-Tk,perl-gettext,turbodesk这几个包&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;可他的要求还有很多其他的包,把那些包卸载时就&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;会有&nbsp;&nbsp;...&nbsp;is&nbsp;needed&nbsp;by&nbsp;xturbopkg&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;不管他用rpm&nbsp;-e&nbsp;--nodeps即可&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;很明显&nbsp;--nodeps&nbsp;即&nbsp;no&nbsp;dependencity&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;6&nbsp;怎么了解一个包里都有哪些软件...&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-q&nbsp;q&nbsp;代表查询&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;-ql&nbsp;list&nbsp;所有安装的文件&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;-qi&nbsp;info&nbsp;列出这个软件的简要说明&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;-q&nbsp;&nbsp;只列出着包是否安装了并有版本等信息&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;使用-q必须安装了包以后,后面跟软件名&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如上面的mypackage&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;可以试一试rpm&nbsp;-q&nbsp;rpm&nbsp;看看你系统的rpm版本&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;7&nbsp;rpm可否在RH以外的系统上使用&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;实际上任何系统都需要包管理系统,而rpm系统&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;确实优秀,因此很多linux都使用rpm系统。但rpm系统&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;前面提到了他是为RH专门设计的,因此这些系统都拥有&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;同RH相似的配置系统,这也限制了rpm的应用。&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;TL,Mandrake等系统都使用rpm&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;由于rpm有源程序因此可以在别的系统上编译运行,&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;所以有可能在别的系统上使用rpm&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;8&nbsp;除了rpm还有其他选择吗&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;debian的deb包,slakware也都有自己的包管理系统&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;9&nbsp;安装了一个程序为什么不能运行&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;情况太复杂了&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;...so...&nbsp;not&nbsp;found&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;安装相应的库程序,实际上在安装一个软件时会提示你&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;缺少某些库,但你得不到错误提示还有可能无法使用该程&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;序,检查一下/etc/ld.so.conf加入相应库所在的路径&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如将qt库安装在/usr/local/lib下&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;在/etc/ld.so.conf中加入/usr/local/lib(单独一行)&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;再运行ldconfig后试试qt库就能使用了&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;有时还不行试试做一些软连接&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如mtv-1.0.8需要SDL0.9&nbsp;higher而TLC中只有SDL0.88&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;其实在/usr/lib下做一个连接&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;ln&nbsp;-s&nbsp;libSDLX11.so.0.88&nbsp;libSDLX11.so.0.9&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;在运行ldconfig后试试一切正常有时软件并不需要很新的&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;支持比如kde1.1可以在libstdc++2.7.2下运行解决的办法&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;同样也是做软连接&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;error&nbsp;open&nbsp;...&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;可能是某些子目录或文件找不到试试建一个&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如apache_php3需要一个/var/logs子目录来访logs&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;建一个就可以了,找这样的错误要去看系统的log&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;在/var/log子目录下&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;core&nbsp;dumped&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果你使用TLC很有可能是wrap同软件矛盾&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;解决办法最简单了做一个shell脚本&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;比如xkobo在TLC下不能运行&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;做个脚本&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;unset&nbsp;LD_PRELOAD&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;xkobo&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;即可很多程序都能这样在TLC下运行&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;就这么多大家补充吧&nbsp;<BR>--&nbsp;<BR>\&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/&nbsp;<BR>&nbsp;&nbsp;\&nbsp;&nbsp;&nbsp;&nbsp;o&nbsp;--&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;--&nbsp;o&nbsp;&nbsp;&nbsp;&nbsp;/&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;\++++++++++++++++++++++++++++++++++++++++/&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两小球何时相撞?&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;解:&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;F=Ma&nbsp;<BR>&nbsp;<BR>※&nbsp;来源:·BBS&nbsp;水木清华站&nbsp;bbs.net.tsinghua.edu.cn·[FROM:&nbsp;166.111.7.111]&nbsp;<BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -