Linux安装软件方式

Linux安装软件方式

常见的安装方式:
1.apt,yum,rpm;
2.源代码安装;
3.二进制安装。

一.apt,rpm,yum

  1. apt(ubuntu)
    (Advancd Packaging Tool)软件包管理器,Ubuntu的软件包管理工具。
    详细介绍:
    apt-get是debian,ubuntu发行版的包管理工具,与红帽中的yum工具非常类似。
    apt-get命令一般需要root权限执行,所以一般跟着sudo命令例sudo apt-get xxxx
    apt-get install packagename——安装一个新软件包。
    apt-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——打印软件包列表中所有软件包的名称。

  2. rpm
    rpm(Red Hat Linux软件包管理工具)rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序语法:
    rpm [选项] [软件包]常用选项:
    -a:查询所有套件;
    -b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
    -c:只列出组态配置文件,本参数需配合"-l"参数使用;
    -d:只列出文本文件,本参数需配合"-l"参数使用;
    -e<套件档>或–erase<套件档>:删除指定的套件;
    -f<文件>+:查询拥有指定文件的套件;
    -h或–hash:套件安装时列出标记;
    -i:显示套件的相关信息;
    -i<套件档>或–install<套件档>:安装指定的套件档;
    -l:显示套件的文件列表;
    -p<套件档>+:查询指定的RPM套件档;
    -q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
    -R:显示套件的关联性信息;
    -s:显示文件状态,本参数需配合"-l"参数使用;
    -U<套件档>或–upgrade<套件档>:升级指定的套件档;
    -v:显示指令执行过程;
    -vv:详细显示指令执行过程,便于排错。
    常用-ivh,需要下载好安装包。

  3. yum(centos)
    但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。所以很多情况下我们出于方便,选择使用yum包管理器来进行安装。Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器(例如淘宝镜像、腾讯云、网易镜像等,可自己配置)自动下载RPM包并且安装,可以自动处理软件包的依赖关系,一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
    yum仓库用来存放所有的现有的.rpm包,当使用yum安装一个rpm包时,需要依赖关系,会自动在仓库中查找依赖软件并安装。仓库可以是本地的,也可以是HTTP、FTP、nfs形式使用的集中地、统一的网络仓库。
    仓库的配置文件/etc/yum.repos.d目录下
    1安装:
    yum install package1 #安装指定的安装包package1
    2.更新和升级:
    yum update #全部更新
    yum update package1 #更新指定程序包package1
    yum check-update #检查可更新的程序
    yum upgrade package1 #升级指定程序包package1
    yum groupupdate group1 #升级程序组group1
    3.卸载:
    yum remove package1
    4.清除缓存:
    yum clean packages #清除缓存目录下的软件包
    yum clean headers #清除缓存目录下的 headers yum clean oldheaders #清除缓存目录下旧的 headers
    5.查找和显示:
    yum info package1 #显示安装包信息package1
    yum list #显示所有已经安装和可以安装的程序包
    yum list package1 #显示指定程序包安装情况package1
    yum groupinfo group1 #显示程序组group1信息
    yum search string 根据关键字string查找安装包

二. 源码安装

源码安装(.tar、tar.gz、tar.bz2、tar.Z)
首先解压缩源码压缩包然后通过tar命令来完成
a.解xx.tar.gz:tar zxf xx.tar.gz
b.解xx.tar.Z:tar zxf xx.tar.Z
c.解xx.tgz:tar zxf xx.tgz
d.解xx.bz2:bun zip2 xx.bz2
e.解xx.tar:tar xf xx.tar

然后进入到解压出的目录中,一般依次执行:
./configure (检查编译环境)
make (对源代码进行编译)
make install (将生成的可执行文件安装到当前计算机中)
make clean (选择执行,主要是用来清除一些临时文件)即可完成安装。

解释:
1、 configure
这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码:./configure –prefix=/usr 意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。同时一些软件的配置文件你可以通过指定 –sys-config= 参数进行设定。有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –help 察看详细的说明帮助。
2、 make
这一步就是编译,大多数的源代码包都经过这一步进行编译(当然有些perl或python编写的软件需要调用perl或python来进行编译)。如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。

  1. install
    这条命令来进行安装(当然有些软件需要先运行 make check 或 make test 来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)。

三. 二进制安装

Linux下二进制格式的软件是指事先已经在各种平台编译安装好的相关软件,然后压缩打包,安装时只需解压或,或者执行可安装文件即可;

二进制软件包常见的打包格式包括.rpm/.tar.gz/.tgz/.bz2;
直接解压到安装文件夹即可完成安装;
删除时直接删除对应的文件夹,如果解压后文件分散在多个目录,需要一一删除;

对于提供了安装程序的软件包,直接进入目录,运行类似于setup/install/install.sh之类的文件,然后跟随提示进行相应设置,之后安装就自动完成;

举例1:安装java jdk(主要看环境变量配置)

解压JDK: tar -zxvf jdk-7u72-linux-i586.gz
移动jdk至安装文件夹:
mkdir /usr/local/src/java
mv jdk1.7.0_72/ /usr/local/src/java/jdk1.7 #将jdk1.7.0_72下在所有内容称至新文件夹jdk1.7之下,并且删除原文件夹(jdk1.7.0_72)
配置系统环境变量
vim /etc/profile #添加以下两句
export JAVA_HOME=/usr/local/src/java/jdk1.7
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH
使配置生效并测试
source /etc/profile
java -version
举例2:安装tomcat(主要看防火墙配置)

解压: tar -zxvf apache-tomcat-7.0.52.tar.gz
移动: mv apache-tomcat-7.0.52 /usr/local/src/java/tomcat7
启动:/usr/local/src/java/tomcat7/bin/startup.sh
配置防火墙:
vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT #开放8080端口
service iptables restart #重启防火墙

四. 比较

1.源码包
优点:
1.1开源,如果有足够的能力,可以修改源代码;
1.2可以自由选择所需的功能;
1.3软件是编译安装,所以更加适合自己的系统,更加稳定、效率更高;
1.4卸载方便;
缺点:
1.5安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误;
1.6编译过程时间较长,安装比二进制安装时间长;
1.7因为是编译安装,安装过程中一旦报错新手很难解决;
注:
对于要求效率的软件,要安装源码包版本,因为是本机编译,更具有兼容性和效率,而rpm包是软件开发者提供的大众版本,可用于不注重效率的应用。

2 二进制包(RPM包)
优点:
2.1包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载;
2.2安装速度比源码包安装快的多;
缺点:
2.3经过编译,不再可以看到源代码;
2.4功能选择不如源码包灵活;
2.5依赖性;

3 yum在线安装
可以方便的解决RPM安装依赖文件,一条命令就可以帮用户从网上(本地也可以)找到安装包进行安装。

注:RedHat的yum是收费服务,而CentOS的yum是免费服务

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值