Chinaunix首页 | 论坛 | 博客
  • 博客访问: 710690
  • 博文数量: 112
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 1192
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-12 16:46
文章分类

全部博文(112)

文章存档

2009年(4)

2008年(108)

我的朋友

分类: LINUX

2008-11-28 16:11:17

 在视窗系统下安装软件时,只需运行软件的安装程式(setup、install等)或用zip等解压缩软件解开即可安装,运行反安装程式(uninstall、unware、“卸载”等)就能将软件清除干净,完全图像化的操作界面,简单到只要用鼠标一直点击“下一步”就能了。而 Linux好象就不相同了,非常多的初学者都抱怨在Linux下安装和卸载软件非常地困难,没有像使用视窗系统时那么直观。其实在Linux下安装和卸载软件也非常简单,同样也有安装向导或解压安装的方式,不相同的只不过是除了二进制形式的软件分发外,更有许多以原始码形式分发的软件包,下面就来周详地讲一讲这些软件的安装和卸载
一、二进制分发软件包的安装和卸载
Linux软件的二进制分发是指事先已编译好二进制形式的软件包的发布形式,其好处是安装使用容易,缺点则是缺乏灵活性,如果该软件包是为特定的硬件/操作系统平台编译的,那他就不能在另外的平台或环境下正确执行。
1、*.rpm形式的二进制软件包
安装:rpm -ivh *.rpm
卸载:rpm -e packgename
说明:RPM(RedHat Packge Manager)是RedHat公司出的软件包管理器,使用他能非常容易地对rpm形式的软件包进行安装、升级、卸载、验证、查询等操作,安装简单,而卸载
也能将软件安装在多处目录中的文件删除干净,因此推荐初学者尽可能使用rpm形式的软件包。rpm的参数中-i是安装,-v是校验,-h是用散列符显示
安装进度,*.rpm是软件包的文件名(这里的*.rpm特指*.src.rpm以外的以rpm为后缀的文件);参数-e是删除软件包,
packgename是软件包名,和软件包的文件名有所差别,他往往是文件名中位于版本号前面的字符串,例如apache-3.1.12-
i386.rpm和apache-devel-3.1.12-i386.rpm是软件包文件名,他们的软件包名称分别是apache和apache-
devel。更多的rpm参数请自行参看手册页:man rpm。
如果你不喜欢在字符界面下安装或卸载这些软件包,完万能在X-Window下使用图像界面的软件包管理程式,如glint、xrpm这样的图像接口,或是KDE的kpackge等,这样对软件包的安装、升级、卸载、验证和查询就能通过点击鼠标来轻松完成。
2、*.tar.gz/*.tgz、*.bz2形式的二进制软件包
安装:tar zxvf *.tar.gz 或 tar yxvf *.bz2
卸载:手动删除
说明:*.tar.gz/*.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后只有单一目录的软件,卸载
用命令“rm -rf
软件目录名”;如果解压后文件分散在多处目录中,则必须一一手动删除(稍麻烦),想知道解压时向系统中安装了哪些文件,能用命令“tar ztvf
*.tar.gz”/“tar ytvf
*.bz2”获取清单。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果,y是调用bzip2解压,t是列出包的文件清单。更多的参
数请参看手册页:man tar。
如果你更喜欢图像界面的操作,能在X-Window下使用KDE的ArK压缩档案管理工具。
3、提供安装程式的软件包
这类软件包已提供了安装脚本或二进制的安装向导程式(setup、install、install.sh等),只需运行他就能完成软件的安装;而卸载时也相应地提供了反安装的脚本或程式。例如SUN公司的StarOffice办公软件套件就使用名为setup的安装程式,而且在软件安装后提供反安装的功能,目前这种类型的软件包还比较少,因其安装和卸载的方式和视窗系统软件相同,所以就无需多讲了。
二、原始码分发软件包的安装和卸载
Linux软件的原始码分发是指提供了该软件所有程式原始码的发布形式,需要用户自己编译成可执行的二进制代码并进行安装,其好处是设置灵活,能随意去掉或保留某些功能/模块,适应多种硬件/操作系统平台及编译环境,缺点是难度较大,一般不适合初学者使用。
1、*.src.rpm形式的原始码软件包
安装:rpm -rebuild *.src.rpm
cd /usr/src/dist/RPMS
rpm -ivh *.rpm
卸载:rpm -e packgename
说明:rpm --rebuild *.src.rpm命令将原始码编译并在/usr/src/dist/RPMS下生成二进制的rpm包,然后再安装该二进制包即可。packgename如前所述。
2、*.tar.gz/*.tgz、*.bz2形式的原始码软件包
安装:tar zxvf *.tar.gz 或 tar yxvf *.bz2 先解压
然后进入解压后的目录:
./configure 设置
make 编译
make install 安装
卸载:make uninstall 或 手动删除
说明:建议解压后先阅读说明文件,能了解安装有哪些需求,有必要时还需改动编译设置。有些软件包的原始码在编译安装后能用make install命令来进行卸载,如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,往往非常难把他删除干净,那你应该在编译前进行设置,指定软件将要安装到目标路径:./configure --prefix=目录名,这样能使用“rm -rf 软件目录名”命令来进行干净完全的卸载。和其他安装方式相比,需要用户自己编译安装是最难的,他适合于使用Linux已有一定经验的人,一般不推荐初学者使用。

于Linux下软件的安装和卸载lanche已讲了这么多,但可能还会有人问怎么知道一个tar.gz/bz2包是二进制文件包呢还是原始码包?如果你
用过压缩工具就会明白,压缩包未必就是软件,他也可能是备份的许多图片,也可能是打包在一起的普通资料,要分辨他到底是什么最佳的办法就是查看包里的文件
清单,使用命令tar ztvf *.tar.gz / tar ytvf
*.bz2或在X-Window下使用图像化的ArK压缩档案管理工具都能,原始码包里的文件往往会含有种种原始码文件,头文件*.h、c代码源文件
*.c、C++代码源文件*.cc/*.cpp等;而二进制包里的文件则会有可执行文件(和软件同名的往往是主执行文件),标志是其所在路径含有名为
bin的目录(仅有少数例外)。原来这么简单呀,还不快点自己试试!
阅读(1080) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~