linux 安装软件的几种方法

 一、 解析Linux应用软件安装包:
    通常Linux应用软件的安装包有三种:
    1) tar包,如software-1.2.3-1.tar.gz。它是使用UNIX系统的打包工具tar打包的。
    2) rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux提供的一种包封装格式。
    3) dpkg包,如software-1.2.3-1.deb。它是Debain Linux提供的一种包封装格式。
         而且,大多数Linux应用软件包的命名也有一定的规律,它遵循:
    名称-版本-修正版-类型
    例如:
    1) software-1.2.3-1.tar.gz 意味着:
    软件名称:software
    版本号:1.2.3
    修正版本:1
     类型:tar.gz,说明是一个tar包。
    2) sfotware-1.2.3-1.i386.rpm
    软件名称:software
    版本号:1.2.3
    修正版本:1
    可用平台:i386,适用于Intel 80x86平台。
    类型:rpm,说明是一个rpm包。
    注:由于rpm格式的通常是已编译的程序,所以需指明平台。在后面会详细说明。
    而software-1.2.3-1.deb就不用再说了吧!大家自己练习一下。
  二、 了解包里的内容:
    一个Linux应用程序的软件包中可以包含两种不同的内容:
    1) 一种就是可执行文件,也就是解开包后就可以直接运行的。在Windows中所 有的软件包都是这种类型。安装完这个程序后,你就可以使用,但你看不到源程序。而且下载时要注意这个软件是否是你所使用的平台,否则将无法正常安装。
    2) 另一种则是源程序,也就解开包后,你还需要使用编译器将其编译成为可执行文件。这在Windows系统中是几乎没有的,因为Windows的思想是不开放源程序的。
    通常,用tar打包的,都是源程序;而用rpm、dpkg打包的则常是可执行程序。一般来说,自己动手编译源程序能够更具灵活性,但也容易遇到各种问题和困难。而相对来说,下载那些可执行程序包,反而是更容易完成软件的安装,当然那样灵活性就差多了。所以一般一个软件总会提供多种打包格式的安装程序的。你可以根据自己的情况来选择。
一、rpm包安装方式步骤: 
1、找到相应的软件包,比如soft.version.rpm,下载到本机某个目录; 
2、打开一个终端,su -成root用户; 
3、cd soft.version.rpm所在的目录; 
4、输入rpm -ivh soft.version.rpm
详细介绍:
1. 安装:
  我只需简单的一句话,就可以说完。执行:
  rpm –ivh rpm的软件包名
     更高级的,请见下表:
  rpm参数 参数说明
  -i 安装软件
  -t 测试安装,不是真的安装
  -p 显示安装进度
  -f 忽略任何错误
  -U 升级安装
  -v 检测套件是否正确安装
  这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。
2. 卸载:
  我同样只需简单的一句话,就可以说完。执行:
  rpm –e 软件名
  不过要注意的是,后面使用的是软件名,而不是软件包名。例如,要安装software-1.2.3-1.i386.rpm这个包时,应执行:
  rpm –ivh software-1.2.3-1.i386.rpm
  而当卸载时,则应执行:
  rpm –e software。
另外,在Linux中还提供了象GnoRPM、kpackage等图形化的RPM工具,使得整个过程会更加简单。
二、deb包安装方式步骤: 
1、找到相应的软件包,比如soft.version.deb,下载到本机某个目录; 
2、打开一个终端,su -成root用户; 
3、cd soft.version.deb所在的目录; 
4、输入dpkg -i soft.version.deb
详细介绍:
       这是Debian Linux提供的一个包管理器,它与RPM十分类似。
       但由于RPM出现得更早,所以在各种版本的Linux都常见到。
       而debian的包管理器dpkg则只出现在Debina Linux中,其它Linux版本一般都没有。
  1. 安装
     dpkg –i deb的软件包名
  如:dpkg –i software-1.2.3-1.deb
  2. 卸载
   dpkg –e 软件名
  如:dpkg –e software
       3.查询:查询当前系统安装的软件包:
        dpkg –l ‘*软件包名*’
       如:dpkg –l '*software*'
三、tar.gz源代码包安装方式: 
1、找到相应的软件包,比如soft.tar.gz,下载到本机某个目录; 
2、打开一个终端,su -成root用户; 
3、cd soft.tar.gz所在的目录; 
4、tar -xzvf soft.tar.gz //一般会生成一个soft目录 
5、cd soft 
6、./configure 
7、make 
8、make install
详细介绍:
1. 安装:
  整个安装过程可以分为以下几步:
  1) 取得应用软件:通过下载、购买光盘的方法获得;
  2)解压缩文件:一般tar包,都会再做一次压缩,如gzip、bz2等,所以你需要先解压。如果是最常见的gz格式,则可以执行:“tar –xvzf 软件包名”,就可以一步完成解压与解包工作。如果不是,则先用解压软件,再执行“tar –xvf 解压后的tar包”进行解包;
  3) 阅读附带的INSTALL文件、README文件;
  4) 执行“./configure”命令为编译做好准备;
  5) 执行“make”命令进行软件编译;
  6) 执行“make install”完成安装;
  7) 执行“make clean”删除安装时产生的临时文件。
  好了,到此大功告成。我们就可以运行应用程序了。但这时,有的读者就会问,我怎么执行呢?这也是一个Linux特色的问题。其实,一般来说, Linux的应用软件的可执行文件会存放在/usr/local/bin目录下!不过这并不是“放四海皆准”的真理,最可靠的还是看这个软件的 INSTALL和README文件,一般都会有说明。
2. 卸载:
  通常软件的开发者很少考虑到如何卸载自己的软件,而tar又仅是完成打包的工作,所以并没有提供良好的卸载方法。
  那么是不是说就不能够卸载呢!其实也不是,有两个软件能够解决这个问题,那就是Kinstall和Kife,它们是tar包安装、卸载的黄金搭档。
四、tar.bz2源代码包安装方式: 
1、找到相应的软件包,比如soft.tar.bz2,下载到本机某个目录; 
2、打开一个终端,su -成root用户; 
3、cd soft.tar.bz2所在的目录; 
4、tar -xjvf soft.tar.bz2 //一般会生成一个soft目录 
5、cd soft 
6、./configure 
7、make 
8、make install 
五、apt方式安装:(安装deb包)
1、打开一个终端,su -成root用户; 
2、apt-cache search soft 注:soft是你要找的软件的名称或相关信息 
3、如果2中找到了软件soft.version,则用apt-get install soft.version命令安装软件
 
注:只要你可以上网,只需要用apt-cache search查找软件,用apt-get install软件 
详细介绍:
apt-get是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似。
apt-get命令一般需要root权限执行,所以一般跟着sudo命令例sudo apt-get xxxx
  • apt-get install packagename——安装一个新软件包(参见下文的aptitudeapt-get remove packagename——卸载一个已安装的软件包(保留配置文件)apt-get --purge remove packagename——卸载一个已安装的软件包(删除配置文件)
  • dpkg --force-all --purge packagename ——有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险。
  • apt-get autoremove——因为apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件。
  • apt-get autoclean——定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,可以释放大量的磁盘空间。如果需求十分迫切,可以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。
  • apt-get clean——这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。
  • apt-get upgrade——更新所有已安装的软件包
  • apt-get dist-upgrade——将系统升级到新版本
  • apt-cache search string——在软件包列表中搜索字符串
  • apt-cache showpkg pkgs——显示软件包信息。
  • apt-cache stats——查看库里有多少软件
  • apt-cache dumpavail——打印可用软件包列表。
  • apt-cache show pkgs——显示软件包记录,类似于dpkg –print-avail。
  • apt-cache pkgnames——打印软件包列表中所有软件包的名称(需要定期运行这一命令以确保您的软件包列表是最新的)
  • 简单的说: dpkg只能安装已经下载到本地机器上的deb包. apt-get能在线下载并安装deb包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是dpkg工具所不具备的。
 
六、yum方式安装:(安装rpm包)
rpm 是linux的一种软件包名称,以.rmp结尾,安装的时候语法为:rpm -ivh
rpm包的安装有个很大的缺点就是文件的关联性太大,有时装一个软件要安装很多其他的软件包,很麻烦。
所以为此RedHat小红帽开发了yum安装方法,他可以彻底解决这个关联性的问题,很方便,只要配置两个文件即可安装,安装方法是:yum -y install 。
yum并不是一中包,而是安装包的软件
  • 简单的说: rpm 只能安装已经下载到本地机器上的rpm 包. yum能在线下载并安装rpm包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的。
七、bin文件安装: 
如果你下载到的软件名是soft.bin,一般情况下是个可执行文件,安装方法如下: 
1、打开一个终端,su -成root用户; 
2、chmod +x soft.bin 
3、./soft.bin //运行这个命令就可以安装软件了 
八、不需要安装的软件: 
有了些软件,比如lumaqq,是不需要安装的,自带jre解压缩后可直接运行。假设 
下载的是lumaqq.tar.gz,使用方法如下: 
1、打开一个终端,su -成root用户; 
2、tar -xzvf lumaqq.tar.gz //这一步会生成一个叫LumaQQ的目录 
3、cd LumaQQ 
4、chmod +x lumaqq //设置lumaqq这个程序文件为可运行 
5、此时就可以运行lumaqq了,用命令./lumaqq即可,但每次运行要输入全路径或 
切换到刚才生成的LumaQQ目录里 
6、为了保证不设置路径就可以用,你可以在/bin目录下建立一个lumaqq的链接, 
用命令ln -s lumaqq /bin/ 即可,以后任何时候打开一个终端输入lumaqq就可以 
启动QQ聊天软件了 
7、 如果你要想lumaqq有个菜单项,使用菜单编辑工具,比如Alacarte Menu 
Editor,找到上面生成的LumaQQ目录里的lumaqq设置一个菜单项就可以了,当然你 
也可以直接到 /usr/share/applications目录,按照里面其它*.desktop文件的格 
式生成一个自己的desktop文件即可。
 
===================================================================================
软件的安装 
  ---- Linux下软件的安装主要有两种不同的形式。第一种安装文件名为filename.tar.gz。另一种安装文件名为 filename.i386.rpm。以第一种方式发行的软件多为以源码形式发送的。第二种方式则是直接以二进制形式发行的。i386即表示该软件是按 Inter 386指令集编译生成的。 
  ---- 对于第一种,安装方法如下: 
  ---- 首先,将安装文件拷贝至你的目录中。例如,如果你是以root身份登录上的,就将软件拷贝至/root中。 
  ---- #cp filename.tar.gz /root 
  ---- 由于该文件是被压缩并打包的,所以,应对其解压缩。命令为: 
  ---- #tar xvzf filename.tar.gz 
  ---- 执行该命令后,安装文件按路径,解压缩在当前目录下。用ls命令可以看到解压缩后的文件。通常在解压缩后产生的文件中,有名为"INSTALL"的文件。该文件为纯文本文件,详细讲述了该软件包的安装方法。 
  ---- 对于多数需要编译的软件,其安装的方法大体相同。执行解压缩后产生的一个名为configure的可执行脚本程序。它是用于检查系统是否有编译时所需的库,以及库的版本是否满足编译的需要等安装所需要的系统信息。为随后的编译工作做准备。命令为: 
  ---- #./configure 
  ---- 如果检查过程中,发现有错误,configure将给予提示,并停止检查。你可以跟据提示对系统进行配置。再重新执行该程序。检查通过后,将生成用于编译 的MakeFile文件。此时,可以开始进行编译了。编译的过程视软件的规模和计算机的性能的不同,所耗费的时间也不同。命令为: 
  ---- #make 
  ---- 成功编译后,键入如下的命令开始安装: 
  ---- #make install 
  ---- 安装完毕,应清除编译过程中产生的临时文件和配置过程中产生的文件。键入如下命令: 
  #make clean 
  #make distclean 
  至此,软件的安装结束。 
  ---- 对于第二种,其安装方法要简单的多。 
  ---- 同第一种方式一样,将安装文件拷贝至你的目录中。然后使用rpm来安装该文件。命令如下: 
  ---- #rpm -i filename.i386.rpm 
  ---- rpm将自动将安装文件解包,并将软件安装到缺省的目录下。并将软件的安装信息注册到rpm的数据库中。参数i的作用是使rpm进入安装模式。 
  ---- 另外,还有一些Linux平台下的商业软件。在其安装文件中,有Setup安装程序,其安装方法同Windows平台下的一样。如:Corel WordPerfect。 
  软件的卸载 
  ---- 软件的卸载主要是使用rpm来进行的。卸载软件首先要知道软件包在系统中注册的名称。键入命令: 
  ---- #rpm -q -a 
  ---- 即可查询到当前系统中安装的所有的软件包。参数q的作用是使rpm进入查询命令模式。参数a是查询模式的子参数,意为全部(ALL)。查询到的信息较多,可使用less人屏显示。 
  ---- 确定了要卸载的软件的名称,就可以开始实际卸载该软件了。键入命令: 
  ---- #rpm -e [package name] 
  ---- 即可卸载软件。参数e的作用是使rpm进入卸载模式。对名为[package name]的软件包进行卸载。由于系统中各个软件包之间相互有依赖关系。如果因存在依赖关系而不能卸载,rpm将给予提示并停止卸载。你可以使用如下的命 令来忽略依赖关系,直接开始卸载: 
  ---- #rpm -e [package name] -nodeps 
  ---- 忽略依赖关系的卸载可能会导致系统中其它的一此软件无法使用。你可以使用 
  ---- #rpm -e [package name] -test 
  ---- 使rpm进行一次卸载预演,而不是真正卸载。这样可以使你检查一下软件是否存在有依赖关系。卸载过程中是否有错误。

 

转载于:https://www.cnblogs.com/bug1024/p/8445023.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267599.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

对计算机网络用户而言 掌握网络,计算机网络的特点

1、可靠性在一个网络系统中,当一台计算机出现故障时,可立即由系统中的另一台计算机来代替其完成所承担的任务。同样,当网络的一条链路出了故障时可选择其它的通信链路进行连接。2、高效性计算机网络系统摆脱了中心计算机控制结构数据传输的局…

Bootstrap-CSS:表格

ylbtech-Bootstrap-CSS&#xff1a;表格1.返回顶部 1、Bootstrap 表格 Bootstrap 提供了一个清晰的创建表格的布局。下表列出了 Bootstrap 支持的一些表格元素&#xff1a; 标签描述<table>为表格添加基础样式。<thead>表格标题行的容器元素&#xff08;<tr>…

Oracle找出需要建立索引的表

文章讨论的是本来应该建立索引而因为疏忽&#xff0c;或者考虑不周全而没有建立的情况 select distinct sp.OBJECT_NAME,round(ds.bytes/1024/1024,2) MB,num_rows,last_analyzed from v$sql_plan sp ,v$sqlarea sq,dba_segments ds,dba_tables dt where sq.ADDRESSsp.ADDRESS …

石油采集(求联通区域) 2018多校寒假集训 (dfs+二分匹配)

题目&#xff1a; 链接&#xff1a;https://www.nowcoder.com/acm/contest/76/A来源&#xff1a;牛客网 随着海上运输石油泄漏的问题&#xff0c;一个新的有利可图的行业正在诞生&#xff0c;那就是撇油行业。如今&#xff0c;在墨西哥湾漂浮的大量石油&#xff0c;吸引了许多商…

Struts1 处理接收参数插入到数据库之后呈乱码的问题解决

Struts处理接收参数乱码问题&#xff08;actionForm接受的参数发送至数据库成乱码&#xff09;的解决办法: 第一步&#xff1a; 新建一个类如&#xff1a;EncodingActionServlet 继承 ActionServlet 覆盖父类process()方法代码如下&#xff1a;package com.aptech.jb.epet.we…

计算机nit题百度云,计算机NIT应用基础试题

一、 填空题(25分)文章地址&#xff1a;https://www.llysc.cn/content/24-24873.html1、完整的计算机由硬件系统 和软件系统 两大部件组成的。3、存储器可分为内存储器 和外存储器 两类。4、微型计算机硬件系统一般应包括主机、键盘、鼠标和显示器 。5、通过鼠标的基本操作方法…

前端(2)CSS

css&#xff1a;Cascading Style Sheet 层叠样式表——修饰、美化网页&#xff0c;化妆师CSS优先级&#xff0c;即是指CSS样式在浏览器中被解析的先后顺序。行间样式 > 内嵌css样式 > 外链css样式&#xff08;在style之前引入&#xff09;如果外链css样式在style之后引入…

某计算机公司的库存管理,《管理系统中计算机应用》应用题数据流程图汇总题及参考答案...

《管理系统中计算机应用》应用题及参考答案——数据流程图1、教学管理的主要工作过程是&#xff1a;系办(公室)输入班级和教学时间&#xff0c;查看教学计划表&#xff0c;确定本学期教学任务&#xff1b;根据本学期教学任务&#xff0c;查看教师表&#xff0c;制作开课任务书和…

perl命令行参数

查看perl版本 perl -version 对脚本进行语法检查 perl -c scriptname.pl&#xff0c;比如 perl -c zdd.pl对zdd.pl进行语法检查&#xff0c;并不执行。 调试perl脚本 perl -d script.pl 执行命令 perl -e print "hellow, world!\n" 注意&#xff0c;在Windows上-e后面…

Missing artifact net.sf.json-lib:json-lib:jar:2.4错误和Eclipse安装Maven插件错误

微信公众号&#xff1a;compassblog 欢迎关注、转发&#xff0c;互相学习&#xff0c;共同进步&#xff01; 有任何问题&#xff0c;请后台留言联系&#xff01; 1、配置Maven项目的pom.xml文件报错 &#xff08;1&#xff09;、错误描述&#xff1a;Missing artifact net.sf.j…

C linux Debug

1 gcc -g -o dest source.c gdb dest //执行可执行文件并DEBUG b 5 // 设计第五行为断点 run //运行程序 l //下一步 p //打印 s //跳入函数并下一步 转载于:https://www.cnblogs.com/lovemo1314/archive/2011/09/19/2181793.html

bzoj千题计划241:bzoj3864: Hero meet devil

http://www.lydsy.com/JudgeOnline/problem.php?id3864 题意&#xff1a; 给你一个DNA序列&#xff0c;求有多少个长度为m的DNA序列和给定序列的LCS为0&#xff0c;1&#xff0c;2.... 求LCS方式&#xff1a;f[i][j]max&#xff08;f[i-1][j],f[i][j-1],f[i-1][j-1]*(s[i]t[j]…

计算机网络工程本科培养计划,网络工程专业卓越计划本科培养方案2015版-西安电子科技大学计算机.doc...

网络工程专业卓越计划本科培养方案2015版-西安电子科技大学计算机.doc网络工程专业卓越计划本科培养方案一、培养目标及培养模式(一)培养目标网络工程专业培养服务于社会主义现代化建设需要的德、智、体、美全面发展&#xff0c;较好的掌握工科公共基础知识&#xff0c;系统地掌…

Apache日志配置

有时候我们需要定制Apache默认日志的格式和内容&#xff0c;比如增加或减少日志所记录的信息、改变默认日志文件的格式等。本文介绍可以用日志 记录的所有信息&#xff0c;以及如何设置Apache使其记录这些信息。    一、定义日志格式(4月3日) 很久以前&#xff0c;日志文件…

web前端【补充】CSS补充

css常用的一些属性&#xff1a; 1.去掉下划线 &#xff1a;text-decoration:none ;2.加上下划线&#xff1a; text-decoration: underline; 3.调整文本和图片的位置&#xff08;也就是设置元素的垂直对齐方式&#xff09;&#xff1a;vertical-align:-20px; 没设置之前&#xf…

语言教案 小小计算机,小班《小小手机本领大》语言教案

【活动目标】1、认识各种手机&#xff0c;了解手机的变化史。2、探索手机的秘密&#xff0c;知道手机的使用方法。【活动准备】各类手机。【活动过程】一、谈话引出课题。星期天你和妈妈去公园&#xff0c;不小心和妈妈走散了&#xff0c;小朋友们有什么办法能找到妈妈&#xf…

XNA游戏:Hello XNA

下面创建一个简单的Windows Phone 7的XNA 程序&#xff0c;只是一个Hello XNA的文本&#xff0c;从屏幕的左上角一直往右下角移动&#xff0c;通过该例子来开始Windows Phone 7 XNA的游戏编程。 新建一个项目后可以看到这样的一个项目工程结构&#xff0c;如图所示。 Content项…

最快超级计算机神威,我国超算第一不保, 2018年最快超级计算机超神威太湖之光2倍...

原标题&#xff1a;我国超算第一不保, 2018年最快超级计算机超神威太湖之光2倍计算机的进化可以说是日新月异&#xff0c;去年的我国的神威太湖之光与天河二号分别为全球最快的大型计算机榜单第一和第二名。但是2018年新的超级计算机性能排名又出来了&#xff0c;这次我国的神威…

Website for the introduction to Matlab and Java

http://www.aquaphoenix.com/#Lectures转载于:https://www.cnblogs.com/stoneresearch/archive/2011/09/21/4336541.html

20180223

<1>集合对象转数组 Object[] arrayOfObject list.toArray(); <2>数组复制 int[] arr1 {1, 2, 3, 4, 5}; int[] arr2 Arrays.copyOf(arr1, arr1.length); Arrays的copyOf()方法传回的数组是新的数组对象&#xff0c;所以您改变传回数组中的元素值&#xff0c;也…