0%

linux下载软件包

linux下载软件包

linux下只有两种软件包

  • 源码包(tar 压缩包,如有.tar.gz 和.tar.bz2)
  • 二进制包(rpm) centos下 (除了rpm还有srpm,srpm 包为未编译过的 rpm 包,需要以 rpm 管理的方式编译,然后以 rpm 的安装方式安装)

RPM包操作

rpm 包是依赖 cpu 架构的,常见的格式

  • noarch.rpm
    不依赖于 CPU, 可以在所有计算机上安装

  • i386.rpm
    基于 Intel 386 CPU,这些 RPM 包可以在所有 Intel 兼容计算机上安装

  • i486.r pm
    用于带 Intel 486 CPU 的计算机(随时)

  • i586.rpm
    用于带 Intel 586 CPU 的计算机

  • i686.rpm
    用于带 Intel 686 CPU 的计算机

  • ia64.rpm
    用于带 Intel ltanium 64 位 CPU 的计算机

  • alpha.rpm
    用于带 HP Alpha CPU 的计算机,最初是 DEC 公司开发的

  • nthlon.rpm
    基于 AMD Athlon CPU

  • ppc.rpm
    用于带 Apple Powe rPC CPU 的计算机

  • s390.rpm
    用于基于 S/390 CPU 的 IBM 服务器

  • sparc.rpm
    用于带 Sun 系统公司 SPARC CPU 的计算机

rpm安装

1
2
3
4
5
rpm -ivh 包全名
-------
-i install安装
-v verbose显示详细信息
-h 显示安装进度

rpm包升级

1
2
3
rpm -Uvh  包全名
------
-U 升级安装

rpm包卸载

1
2
# 多个包的话,空格隔开
rpm -e 包名

rpm包查询

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 查询是否安装
rpm -q 包名

# 查询系统上所有安装的包
rpm -qa

# 查询软件包的文件列表
rpm -ql 包名

# 查询某个文件属于哪个包
rpm -qf 文件名

------------------
-i info信息
-a all所有
-l list文件列表
-f file文件

srpm 包的安装

源代码 RPM 包的结尾通常是.src.rpm

1
2
3
4
5
6
7
8
rpm -i 包名 

cd /usr/src/redhat/SPECS

# 编译完之后,/usr/src/redhat/RPM/i386/目录下,有一个新的 rpm 包,这个是编译好的二进制文件。
rpmbuild -bb 打出来的specs文件
# 安装
rpm -i 新的rpm包名

由于rpm安装软件包时比较麻烦,各个包之间的依赖需要去人工下载,所以一般使用yum来在线安装

yum安装软件包

yum的源配置文件保存在/etc/yum.repos.d文件夹中,默认使用的是CentOS-Base.repo

我在使用系统自带的yum源文件时发现无法访问那些网站,所以去找了个搜狐的镜像源,将原本的baseurl的前半部分换为http://mirrors.sohu.com/

如:baseurl=http://mirrors.sohu.com/centos/$releasever/os/$basearch/

查询

1
2
3
4
5
6
7
# 查询yum源服务器上的所有软件包
yum list

# 查询是否包含某个软件包
yum list 包名

yum search 关键字

安装

1
2
3
4
yum -y install 包名
-------
install 安装
-y 自动回答yes

升级

1
2
3
4
yum -y update 包名
-------
update 升级
-y 自动回答yes

卸载

1
yum remove 包名

卸载需要谨慎,会把依赖该包的所有包都卸载掉

软件组操作

1
2
3
4
5
6
yum grouplist

yum groupinfo

yum -y groupinstall 组名

源码包安装

首先下载源码包的压缩包,解压之后进入目录

第一步

先执行

1
./configure --prefix=安装到的目录位置

该命令使编译前检测系统环境是否符合安装要求,把系统环境的检测结果写入Makefile文件中,后续的安装过程都会依赖该文件。

第二步

如果检测成功,则继续执行

1
make

该命令的作用是调用gcc编译器,读取上述Makefile文件中的信息进行系统软件编译,编译是为了把源码程序转换成linux可执行的文件

第三步

如果编译出错执行

1
make clean

清空编译内容

如果编译没有出错,执行

1
make install

编译安装

卸载

1
make uninstall