软件包安装和管理:
库文件: 软件角度分为 1.标准库 或通用库(glibc) 2.程序附带的库
软件包:
安装软件方式: 1.源代码需手动编译安装 2.二进制格式
组成: 1.配置文件 2.二进制程序 3.库文件 4.帮助文件
软件包的安装路径:
默认路径文件保存路径:
启动要用到的 在" /" 下
1.usr 系统启动后用到的
2. usr/local 第三方软件
3.usr/local/APP 4.opt 指定的目录
配置文件:/etc 二进制文件:/bin ;/sbin;/usr/bin;/usr/sbin 库:/lib
帮助文件:/usr/share/man
定义库文件路径::
/etc/ld.so.conf 保存路径
/etc/ld.so.conf.d/*.conf 保存文件路径
man定义路径:
/etc/man.config
MANPATH (路径)
二进制格式安装:
GPL 程序为GPL 一般为源代码
manage ,软件包管理器
1.redhat .rpm包
2.suse rpm 同redhat rpm不同
3.debian .dep包
Redhat软件包管理器 RPM RPM is Package Manager
命名格式: package-version-release.arch.rpm
release redhat内部发行号 .el5 redhat企业版5
arch:标示平台 noarch 跟平台无关
[注:安装光盘中一般保存有大多数软件包]
rpm包管理:
rpm数据库 : /var/lib/rpm
一般为标准安装 安装至默认路径下
重新导入RPM数据库
rpm --rebuilddb 重建
rpm --initdb 原来要是有就不建
rpm包的管理的常用命令 : 包存在依赖关系
1、查询:rpm
-q PACKAGE_NAME 查询软件包是否安装
-qa 查看所有安装的软件包
-ql packagename 列出来软件包安装都生成了那些文件
-qc packagename 查看软件的配置文件
-qd packagename 显示软件包安装完后生成的帮助文档
-qf filepath 查询文件是有哪个软件包生成的
-qi packagename 查询软件包的摘要信息
2、安装:
rpm -i packagename 安装
rpm -ivh packagename 显示安装进度
--nodeps 忽略依赖关系,但是装的软件包可能无法使用
3、卸载:
rpm -e PACKAGENAME 卸载
--nodeps 忽略依赖关系
4、升级:
rpm -U /path/to/rpm_file
-Uvh 老版本没装,直接安装新版本,有安装和升级
rpm -F /path/to/rpm_file
-Fvh 仅能在原版本基础上升级
--force 强行升级
[注:内核只能安装,不能升级]
5. 校验
rpm -V (包名) 可以查看软件包和安装文件是否被修改
rpm -V -p filename 安装前检查软件是否可靠
S表示大小变化 M 权限 5 校验码 D 设备号不起配 L U G 属主 属组
签名: 软件包 操作系统发行商签名使用公钥加密算法和md5 校验码
检查签名: --checksig 只检查签名
rpm -V (完整包名) 安装后检查
rpm -K (完整包名) 安装前检查
rpm -V -p (完整包名) 同上
导入key (key文件位置: /etc/pki/rpm-gpg/*-release)
rpm --import (key文件)
数据库:
重建: rpm --rebuilddb 完全重建
rpm --initdb 没有才建 有则不建
为自动解决依赖关系而产生的软件包管理工具:
Redhat
1.up2date
2.Yellow Dog
3.yum --> rpm :Yellowdog Updater Modified
yum: 1.支持所有rpm包 2. XML文件 记录软件依赖关系
yum获取软件包支持的协议1. ftp协议 2. http协议 3. file:/// 本地文件
yum仓库: yum repository 软件仓库
yum客户端配置文件 :/etc/yum.conf
仓库配置文件 :/etc/yum.repos.d/*.repo
XML在哪儿 yum仓库在哪儿 XML一般在仓库父目录
仓库配置:
分类存放:
[id] 分为四块:
1.base
2.VT
3.Cluster 集群
4.ClusterStorage 集群存储
每块下配置内容格式:
name= 随便起
baseurl=URL 具体yum库地址 本地file:///yum.....找到repodata所在位置
gpgcheck=0 校验 0 不检查
enabled=1 /0 默认为1 不启用为0
yum客户端管理软件包yum不允许运行两次 yum list all 查看所有可用yum包
格式:yum [option] [command] [package]
查看软件包:
yum list ( all| installed | available )
查询文件是由哪个软件包生成的
yum provides | whatprovides FILE
查询yum包摘要信息:
yum info == rpm -qi
查看组:
yum grouplist
安装组:
yum gruopinstall 1 安装一个组 可跟多个组
安装软件包: -y 表示自动回答为yes
yum install (包名,可不加版本号) p1 p2 p3
安装本地文件:
yum --nogpgcheck localinstall RPM_FILE
--nogpgcheck 不检测签名信息
重装软件包
yum reinstall
降级安装:
yum downgrad
升级:
yum update (包名)
如果升级的为内核的话 将自动切换为安装
检查是否有可升级的软件包
yum check-update
卸载:
remove (包名)
清除缓存cache:
yum clean all 清除所有缓存
注:可能会遇到的问题
1. 启动两次
提示有一个yum正在运行 使用ps kill
2. 地址正确 但经常报错
可能是DNS配置错误
其他软件包:
一. 类似绿色软件
二. 源码安装
C ,C++ , Perl
源码文件: 编译顺序 makefile文件 根据makefile编译
C,C++ 编写的文件编译安装:
1. ./configure --prefix= (自定义安装路径)
2. make
3. make install
两个文件: 1.configure 2. Makefile.in
1. 检查预编译环境 结合2. --> 生成makefile
Perl 编写的文件编译安装:
1. Perl Makefile
2. make
3. make install
头文件在 /etc/include/ 存放.没有可以链接过来
include 包含头文件
转载于:https://blog.51cto.com/weiweilinux/637113