1. 源代码形式
绝大多数开源软件都是直接以原码形式发布的
源代码一般会被打成.tar.gz的归档压缩文件
源代码需要编译成为二进制形式之后才能够运行使用
源代码基本编译流程:
- configure 检查编译环境;
- make对源代码进行编译;
- make insall 将生成的可执行文件安装到当前计算机中
./configure
#可以指定安装路径,启用或者禁用功能等,最终生成makefile
make
#按Makefile文件编译
make install
#按Makefile定义的文件路径安装
make clean
#清除上一次make命令所产生的object文件,要重新执行
configure时,需要执行make clean。
2. RPM
RMP 是 LINUX 下的一种软件的可执行程序,你只要安装它就可以了。这种软件安装包通常是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
RPM是Red Hat公司随Redhat Linux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装。
1. 安装软件:执行rpm -ivh rpm包名,如:
$ rpm -ivh apache-1.3.6.i386.rpm
2. 升级软件:执行rpm -Uvh rpm包名。
3.反安装:执行rpm -e rpm包名。
4.查询软件包的详细信息:执行rpm -qpi rpm包名
5.查询某个文件是属于那个rpm包的:执行rpm -qf rpm包名
6.查该软件包会向系统里面写入哪些文件:执行 rpm -qpl rpm包名
源代码形式的特点:操作复杂、编译时间长、极易出现问题、依赖关系复杂,为了方便,RPM(redhat package manager)
RPM通过将代码基于特定平台系统编译为可执行文件,并保存依赖关系,来简化开源软件的安装管理。针对不同的系统设定不同的包. 常用命令规范:linuxcast-1.2.0-30.el6.1686.rpm 包名-版本号-适用平台-32/64-rpm
使用
rpm –i software.rpm(安装);
rpm -e software.rpm(卸载);
rpm –U software.rpm(升级形式安装);
rpm –ivh http://www.linuxcast.net/software.rpm(支持通过http\ftp协议形式安装)
-v 显示详细信息;-h显示进度条
查询功能:rpm –qa 列出全部已经安装的.rpm软件 rpm –qa |grep ***
3. YUM
rpm软件包形式的管理虽然方便,但是需要手工解决软件包的依赖关系。很多时候安装一个软件安装一个软件需要安装1个或者多个其他软件,手动解决时,很复杂,yum解决这些问题。Yum是rpm的前端程序,主要目的是设计用来自动解决rpm的依赖关系,其特点:
- 自动解决依赖关系
- 可以对rpm进行分组,基于组进行安装操作
- 引入仓库概念,支持多个仓库
- 配置简单
yum仓库用来存放所有的现有的.rpm包,当使用yum安装一个rpm包时,需要依赖关系,会自动在仓库中查找依赖软件并安装。仓库可以是本地的,也可以是HTTP、FTP、nfs形式使用的集中地、统一的网络仓库。
仓库的配置文件/etc/yum.repos.d目录下
命令
yum install -y httpd #安装软件包
yum update httpd #升级软件包,改变软件设置和系统设置,系统版本内核都升级
yum install upgrade #升级软件包,不改变软件设置和系统设置,系统版本内核都升级
yum info httpd #查询包
yum provides /usr/bin/find #查询命令属于哪一个包
yum remove -y httpd #卸载
yum search httpd #按关键字搜索包
yum clan all #清除缓存
yum makecache #生成缓存
yum repolist #查看可用的yum源
yum grouplist #列出可用组
配置本地yum源
[root@localhost ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# cat /etc/yum.reps.d/Centos7.repo
[centos7]#yum源名称,在本服务器上唯一
name=centos#源的描述信息
baseurl=file:///mnt源的路径,可以使用ftp.http
enabled=1#启动yum,0为不启用
gpgcheck=0#不使用使用公钥检验rpm的正确性,1为使用。
配置网络yum
下载阿里云
[root@localhost ~]# wget -O /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo