Linux下软件安装的几种方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chan0311/article/details/78817654

yum工具

yum list 列出所有可用rpm包资源
搜索某个包: yum search ‘keywords’或 yum list |grep ‘keywords’
yum 安装包: yum install -y filename(包名)
yum 卸载包: yum remove -y filename (包名)
yum 升级包: yum update -y filename(包名)

yum 查找包:yum provides “*/vim” //这里用通配,可以查找一个命令由哪个包安装来的

yum group list 列出所有的套件
yum group install 安装套件
yum group remove 卸载套件

创建本地的yum源
mount /dev/cdrom /mnt
cp -r /etc/yum.repos.d /etc/yum.repos.d.bak //先备份一下
rm -f /etc/yum.repos.d/*
vim /etc/yum.repos.d/dvd.repo #加入如下内容:
[dvd]
name=install dvd
baseurl=file:///mnt
enabled=1
gpgcheck=0
yum list //查看是否有dvd的标志出现

安装完成之后yum list 右侧可以列出很多epel的包,供以后使用;

使用yum下载rpm包,而不安装,方法1:
yum有一个plugin(插件)叫做yum-downloadonly,可以实现让用户只下载软件包的功能;
首先需要安装插件:yum install -y yum-plugin-downloadonly
安装完成后:yum install 包名 -y –downloadonly
这样就已经下载,centos6默认在 /var/cache/yum/i386/6/base/packages 我这里是32位的显示为i386目录;
yum install 包名 -y –downloadonly –downloaddir=/usr/local/src #指定一个下载目录,如果是已经安装过的rpm包这样不成功,需要使用reinstall: yum reinstall 包名 -y –downloadonly –downloaddir=/usr/local/src
reinstall 重新安装;

使用yum下载rpm包,而不安装,方法2:

通过一个专门的包下载工具–yumdownloader。 这个工具是yum工具包(包含了用来进行yum包管理的帮助工具套件)的子集。

使用命令安装:yum install -y yum-utlis
安装完成后,下载rpm包,使用命令:yumdownloader 包名
下载的包保存到当前的目录,你需要使用root权限,因为yumdownloader会在下载过程中更新包索引文件。与yum命令不同的是,任何依赖包不会被下载。

设置yum保留下载的rpm包
yum 默认情况下,升级或者安装后,会删除下载的rpm包。

修改 /etc/yum.conf 配置文件保留下载的包;
[main]
cachedir=/home/soft/yumcache
keepcache=1
debuglevel=2
cachedir 存放下载包的地址,可以修改为自己放置的地址;
keepcacahe设置为1,表示保存已经下载的rpm包;

rpm工具

rpm全称为RedHat Package Manager,红帽软件包管理工具,设计理念是开放的,不仅仅是在RedHat平台上,在其他上也是可以使用的。
rpm包名字构成由-和.分成了若干部分,如abrt-cli-2.0.8-15.el6.CentOS.i686.rpm,abrt-cli是包名,2.0.8-15是版本号,el6指的是redhat企业版6,centos指的是这是在centos上用的,i686指的是平台类型。有些rpm包并没有写具体的平台而是noarch,这代表这个rpm包没有硬件平台限制。

安装过程

安装一个包:rpm -ivh [安装路径]
-i 表示安装
-v 可视化
-h 显示安装进度
–force : 强制安装,即使覆盖属于其他包的文件也要安装
–nodeps : 当要安装的rpm包依赖其他包时,即使其他包没有安装,也要安装这个包
升级:rpm -Uvh filename.rpm
-U 就是升级的意思

rpm的卸载:
rpm -e filename //这里的filename是通过rpm的查询功能所查询到的
echo $? 查看上一条命令执行状态,返回0表示执行成功,非0为不成功;
查询一个包是否安装
rpm -q 包名 (不带有平台信息以及后缀名 )
查询当前系统所有安装过的rpm包
rpm -qa
查询rpm包的相关信息 :
rpm -qi 包名
列出一个rpm所安装的文件:
rpm -ql 包名

查看某个文件属于哪个rpm包:
rpm -qf filename

yum与rpm的区别

  1. yum是从网络安装源(例如网易镜像,可以自己配置)上下载rpm,如果存在依赖关系会把依赖的rpm同时下载安装。
  2. rpm是安装本地存在的rpm包,如果存在依赖也需要安装上,如果某个rpm是自己修改编译的,那么只能用rpm安装了。

源码包安装

源码包是开源的可自行更改的程序包,大多用C语言开发,不能直接使用,需要编译成二进制的可执行文件;
编译源码包的必须有gcc支持,如果没有需要安装 yum install -y gcc
通常情况编译三步曲: ./configure 配置各种编译参数; make 根据指定的编译参数进行编译;make install 安装到指定目录

实例:
1、下载源码包#cd /usr/local/src/ #约定目录;
首先安装wget,安装命令:yum install -y wget
#wget http://mirrors.hust.edu.cn/apache//httpd/httpd-2.2.29.tar.gz
2、解压tar zxvf httpd-2.2.29.tar.gz //查看README或者INSTALL说明文件
3、指定编译参数 ./configure –help 可以查看帮助
#./configure –prefix=/usr/local/apache2 指定一个路径;
执行时提示checking for gcc… no 需要安装gcc编译器;安装命令#yum install -y gcc
4、#echo $? 验证是否成功
5、#make 编译成二进制的文件;
6、#make install 安装编译后的文件;

参考文档

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页