绝大数开源软件都是公布源代码的,源代码一般被打包为tar.gz归档压缩文件,然后手工编译为二进制可执行文件
./configure 检查编译环境/相关库文件/配置参数,生成makefile
make 对源代码进行编译,生成可执行文件
make install 将生成的可执行文件安装到当前计算机中
特点;
兼容性好/可控制性好/开源软件会大量使用其他开源软件的功能,要解决大量的依赖关系
为了解决编译时间长复杂容易出错等问题,开发了rpm(redhat package manager)
命名规范:linuxcast-1.2.0-20.e16.i686.rpm
名字 版本 操作系统名字(跨平台)32位或64位
基础命令:
rpm -i software.rpm install安装
rpm -e software 卸载
rpm -U softwarenew.rpm 更新
rpm -ivh http;,,,.rpm 下载并安装
-v 显示详细信息
-h 显示进度条
安装软件要管理员权限
rpm查询:
rpm -qa 列出操作系统中已经安装的,所有rpm软件
rpm -qi linucast 查询一个软件的基本信息 information
rpm ql linux 列出所有属于这个软件的文件 list
rpm -qf linux 查看该文件是哪个rpm包安进来的
以上时已安装的
以下是查询未安装的
rpm -qip 查询rpm文件的信息 -qlp 查询包含的文件
rpm验证功能:
在软件传输的过程中,有可能被恶意修改,使用非对称加密算法,所以需要一个密码
rpm -K xxx.rpm 包是否被修改
rpm -V xxx 已安装的文件是否被修改(安好后的文件)
yum (yellowdog updater modified) 是一个专门管理 rpm的,是rpm的前端程序(rpm是一种封装包的方式,把二进制文件释放出来),实际安装的时rpm包
作用 1.自动解决依赖关系 2.对rpm进行分组,开发类之类的,一次性安装整组软件(基于组进行安装) 3.引入仓库来解决依赖关系 4.配置简单
repo仓库,yum把所有的rpm包进行管理,例如放在一个文件夹下,如果存在依赖关系,会自动在仓库中寻找,如果没有,无法安装,如果有,可以用,并且自动解决依赖关系
有两种1是本地的 2是网络仓库,通过http ftp nfs形式使用集中的统一的仓库(个人的话,一般使用网络仓库)
使用 yum的话,就要先配置他的仓库 配置文件放在/etc/yum.repos.d/目录下,格式;
[linuxcast] 仓库的名字
name = this is linuxcast.net rpm soft repo 仓库的基本信息,主要是给管理员自己看的
baseurl=http;//www.xxx 仓库的路径file ftp nfs 可以是网络的 也可以是本地的
enable=1 配置文件是否启用(这个仓库是否可用)
gpgcheck=1 是否打开校验
以 .repo结尾,名字随意取,一个配置文件可以保存多个仓库,目录下可以有多个文件
yum基本命令;
yum install software-name 安装
yum remove ''' 删除
yum update ''' 更新
yum查询;
yum search keyword 查找所有关于这个关键字的软件包
yum list(all|installed|recent|update) 列出仓库的信息 所有 已安装的 最近的 要更新的
yum info package 查看软件信息 (相当于rpm -qi)