当前位置:文档之家› 怎么在linux操作系统上安装可执行的软件

怎么在linux操作系统上安装可执行的软件

仅以RedHat Linux 为参照,包括但不限于其他版本的Linux都要遵循此方法,以下是说明:先来看看Linux软件扩展名。

软件后缀为.rpm最初是Red Hat Linux提供的一种包封装格式,现在许多Linux发行版本都使用;后缀为.deb是Debain Linux 提供的一种包封装格式;后缀为.tar.gz、tar.Z、tar.bz2或.tgz是使用Unix 系统打包工具tar打包的;后缀为.bin的一般是一些商业软件。

通过扩展名可以了解软件格式,进而了解软件安装。

RPM格式软件包的安装1.简介几乎所有的Linux发行版本都使用某种形式的软件包管理安装、更新和卸载软件。

与直接从源代码安装相比,软件包管理易于安装和卸载;易于更新已安装的软件包;易于保护配置文件;易于跟踪已安装文件。

RPM全称是Red Hat Package Manager(Red Hat包管理器)。

RPM本质上就是一个包,包含可以立即在特定机器体系结构上安装和运行的Linux软件。

RPM 示意图见图1。

大多数Linux RPM软件包的命名有一定的规律,它遵循名称-版本-修正版-类型-MYsoftware-1.2 -1.i386.rpm 。

2.安装RPM包软件#rpm -ivh MYsoftware-1.2 -1.i386.rpmRPM命令主要参数:-i 安装软件。

-t 测试安装,不是真的安装。

-p 显示安装进度。

-f 忽略任何错误。

-U 升级安装。

-v 检测套件是否正确安装。

3.卸载软件#rpm -e 软件名需要说明的是,上面代码中使用的是软件名,而不是软件包名。

例如,要卸载software-1.2.-1.i386.rpm这个包时,应执行:#rpm -e software4.强行卸载RPM包有时除去一个RPM是不行的,尤其是系统上有别的程序依赖于它的时候。

如果执行命令会显示如下错误信息:## rpm -e xsnowerror: removing these packages would break dependencies:/usr/X11R6/bin/xsnow is needed by x-amusements-1.0-1在这种情况下,可以用--force选项重新安装xsnow:## rpm -ivh --force xsnow-1.41-1.i386.rpmxsnow这里推荐使用工具软件Kleandisk,用它可以安全彻底清理掉不再使用的RPM包。

5.安装.src.rpm类型的文件目前RPM有两种模式,一种是已经过编码的(i386.rpm),一种是未经编码的(src.rpm)。

rpm --rebuild Filename.src.rpm这时系统会建立一个文件Filenamr.rpm,在/usr/src/redflag/RPMS/子目录下,一般是i386,具体情况和Linux发行版本有关。

然后执行下面代码即可:rpm -ivh /usr/src/regflag/RPMS/i386/Filename.rpm使用deb打包的软件安装deb是Debian Linux提供的一个包管理器,它与RPM十分类似。

但由于RPM 出现得早,并且应用广泛,所以在各种版本的Linux中都常见到,而Debian的包管理器dpkg只出现在Debina Linux中。

它的优点是不用被严格的依赖性检查所困扰,缺点是只在Debian Linux发行版中才能见到这个包管理工具。

1. 安装#dpkg -i MYsoftware-1.2.-1.deb2. 卸载#dpkg -e MYsoftware使用源代码进行软件安装和RPM安装方式相比,使用源代码进行软件安装会复杂一些,但是用源代码安装软件是Linux下进行软件安装的重要手段,也是运行Linux的最主要的优势之一。

使用源代码安装软件,能按照用户的需要选择定制的安装方式进行安装,而不是仅仅依靠那些在安装包中的预配置的参数选择安装。

另外,仍然有一些软件程序只能从源代码处进行安装。

现在有很多地方都提供源代码包,到底在什么地方获得取决于软件的特殊需要。

对于那些使用比较普遍的软件,如Sendmail,可以从商业网站处下载源代码软件包(如)。

一般的软件包,可从开发者的Web 站点下载。

下面介绍一下安装步骤:1.解压数据包源代码软件通常以.tar.gz做为扩展名,也有tar.Z、tar.bz2或.tgz为扩展名的。

不同扩展名解压缩命令也不相同,见表1。

2.编译软件成功解压缩源代码文件后,进入解包的目录。

在安装前阅读Readme文件和Install文件。

尽管许多源代码文件包都使用基本相同的命令,但是有时在阅读这些文件时能发现一些重要的区别。

例如,有些软件包含一个可以安装的安装脚本程序(.sh)。

在安装前阅读这些说明文件,有助于安装成功和节约时间。

在安装软件以前要成为root用户。

实现这一点通常有两种方式:在另一台终端以root用户登录,或者输入“su”,此时系统会提示输入root用户的密码。

输入密码以后,就将一直拥有root用户的权限。

如果已经是root用户,那就可以进行下一步。

通常的安装方法是从安装包的目录执行以下命令:gunzip soft1.tar.gzcd soft1#. /configure #配置#make #调用make#make install #安装源代码#删除安装时产生的临时文件:#make clean卸载软件:#make uninstall有些软件包的源代码编译安装后可以用make uninstall命令卸载。

如果不提供此功能,则软件的卸载必须手动删除。

由于软件可能将文件分散地安装在系统的多个目录中,往往很难把它删除干净,应该在编译前进行配置。

.bin文件安装扩展名为.bin文件是二进制的,它也是源程序经编译后得到的机器语言。

有一些软件可以发布为以.bin为后缀的安装包,例如,流媒体播放器RealONE。

如果安装过RealONE的Windows版的话,那么安装RealONE for Linux版本(文件名:r1p1_linux22_libc6_i386_a1.bin)就非常简单了:#chmod +x r1p1_linux22_libc6_i386_a1.bin./ r1p1_linux22_libc6_i386_a1.bin接下来选择安装方式,有普通安装和高级安装两种。

如果不想改动安装目录,就可选择普通安装,整个安装过程几乎和在Windwos下一样。

.bin文件的卸载,以RealONE for Linux为例,如果采用普通安装方式的话,在用户主目录下会有Real和Realplayer9两个文件夹,把它们删除即可。

Linux程序安装方法关于GPL的详细内容见/nuke/modules.php?name=Forums&file=viewtopic& t=22301下面是正文:Linux程序安装,总的来说,可以分为两种:一是源码包,文件名一般是*.tar.gz,*.tar.bz2,*.tgz和*.tbz2是它们相应的缩写格式;二是二进制包,一般是为特定发行版制作的,种类较多,*.rpm,*.deb,*.run,我也见过*.tbz2格式的二进制包。

我想,按照源码和二进制包的分类方法,说Linux软件的安装,会比较麻烦。

因为常常是,一种发行版,有二进制包,也有源码包,讲二进制安装方法会免不了把一个发行版的包管理机制扯碎。

我们把Linux程序的安装,分为三个部分:一是通用的源码安装方法;二是通用的二进制包安装方法;三是发行版相关的安装方法。

1通用源码通用源码安装,常见于这么几种清况:1你的发行版,不包括这个软件;2你的发行版包涵的这个软件的版本太旧,你希望新的工能;3你希望定制软件,得到个性化到软件。

因为,通常这种安装方法,耗时又耗力,而且对系统升级会带来一些不利的影响,新手最好三思而后行1)根据你要安装的程序是否需要X支持,可以分为两类。

所谓的X,就是我们在Linux上看到的图形界面。

如果你是在Linux下用firefox上网,来到Linux 公社的,那么你现在看到的桌面上的所有东西都是X。

跟X相对的是虚拟终端界面。

按下键盘上的Alt-Ctrl-F1(等等,先别按),你就可以看到一个黑乎乎的屏幕,它就是虚拟终端。

Alt-Ctrl-F1,Alt-Ctrl-F2……Alt-Ctrl-F6都是虚拟终端,Alt-Ctrl-F7是图形界面。

如果你要安装的程序需要X支持,那么,你就应该先安装X的开发包。

不过,不要担心,一般的发行版,都会在你安装X的同时,把X开发包安上。

只是,对于debian发行版,情况有些不同。

它把Linux 软件分得相当细,很可能默任不安装任何开发软件包(包括X)。

2)在登录到图形界面的时候,你注意一下。

你的登录页是否有个Session选项,中文的是会话选项。

如果有,点一下,很可能就有KDE和Gnome。

因为直接开发X程序,是比较麻烦的事情。

就有了建筑在X之上的开发库,qt和gtk+。

qt是KDE的开发库,gtk+是Gnome的开发库。

qt的作者呢,是Trolltech,就是生产opera浏览器的那个公司了。

因为最初的qt是GPL不兼容的,所以就有了GNOME,全称是 GNU Network Object Model Environment。

当然,现在在Linux平台,qt已经是GPL兼容的了。

如果你想要编译KDE程序,qt库是必须安装的。

gtk 库包括glib、pango、atk、gtk+四个组成部分,如果你要编译相应的软件,就必须把它们都装上。

3)当然,在Linux下,还有很多的其它一些库,像libpng,libtiff等等。

经常安装一个软件,找不到libxxx.so.x(经常是这个格式),我想这是对于新手安装软件最为棘手的问题──这也是大虾常劝大家把所有开发库都装上的原因。

不过,不要急,libxxx.so.x中的xxx很可能就是相应库的名字。

你可以用locate 找找看,电脑上有没有相应的文件。

代码:locate libxxx.so.x如果有,切换到跟用户,打开/etc/ld.so.conf(不同的发行版,可能有所差别,gentoo就没有这个目录;看一下ldconfig的帮助文件),看里面有没有相应文件夹的路径(或者说,里面有没有相应的目录;注意是目录,不是文件的绝对路径)。

如果没有,添加,保存;再运行ldconfig。

感觉这种情况比较少见(除非你自己拷了其它的库。

我的一个同学需要安装intel的Fortran编译器,他把它拷到/opt/下)。

4)下面说到最关键的地方,就是编译工具。

Linux下最重要的编译工具当然是gcc,gcc包括gcc和glibc。

相关主题