linux 软件包的安装
软件包的安装:
Debian: 编译成二进制,管理工具,软件包管理器
vim bash mount/umount
封装成一中特定的格式!
rpm:Redhat Package Manager
RPM Package Manager
RPM
缺点是依赖关系:
前段工具:依赖rpm ,deb
rpm:yum
deb:apt-get
软件包仓库,yum源
软件包:
二进制文件 (bin目录下)
配置文件 (etc目录下)
库文件 (lib目录下)
文档(man,info,/usr/share/doc)
源代码:
软件包的安装方式:
1、手动编译安装源代码;gcc
2、二进制格式的软件包
rpm(制作繁琐)
类似解压软件,解压直接使用的
x86 ,x86_64 ,power ,
使用RPM格式管理安装软件包:
name - version(主版本.次版本.修订号) - release(发行号) - os.arch(平台).rpm
RPM:
-i 安装:
rpm -ivh --nodeps /path/to/rpm_package
-e 卸载:
rpm -e name 直接卸载
rpm -e --nodeps 忽略依赖关系,卸载
-U / -F 升级:
rpm -Uvh /path/to/rpm_package
后面接的软件即使没有安装过,则系统将予以直接安装; 若后面接的软件有安装过旧版,则系统自劢更新至新版;
rpm -Fvh /patn/to/rpm_package
如果后面接的软件幵未安装到你的 Linux 系统上,则该软件丌会被安装;亦即只有已安装至你 Linux 系统内的软件会被『升级』!
-q 查询:
rpm -q name
rpm -qa 查询所有安装的rpm包
rpm -qa *keyword* 查询有关keyword字符的软件包
rpm -qi name 显示软件包的相关信息
rpm -ql name 显示软件包安装之后生成了什么文件
rpm -qc name 只显示生成的配置文件
rpm -qd name 只显示生成的文档
rpm -q --scripts 显示rpm需要执行的脚本文件
rpm -qf +生成的文件名 显示文件时由哪个rpm包生成的
eg:
[root@localhost ~]# rpm -qf /etc/passwd
setup-2.5.58-7.el5
-V 校验
S file Size differs 文件大小改变
M Mode differs (includes permissions and file type) 权限改变
5 MD5 sum differs MD5 改变
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs 文件属主改变
G Group ownership differs 文件属组改变
T mTime differs 文件修改时间改变
--nodeps 忽略依赖关系
--force 强制安装
RPM数据库为: /usr/lib/rpm
RPM重建数据库;
rpm --initdb 若没有则重建
rpm --rebuilddb 不管有没有都会重建或者覆盖
身份验证
导入公钥信息:
[root@localhost media]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
验证是否合法: rpm -k
yum(前端):
安装的是rpm 格式的软件包,可以自动解决依赖关系。
yum源:
ftp://
http://
file:/// 最后一个斜线是指本地的根目录
redhat镜像中默认的四个rpm源:Server VT Cluster ClusterStorage
yum客户端的配置文件由两部分组成:
1、/etc/yum.conf
2、/etc/yum.repos.d/*.repo
server.repo源组成:
[Server](id)
name=server
baseurl=ftp://172.16.0.1/pub/server
gpgcheck=0
enabled=1(启用yum源)
eg:
[Server]
name=Server
baseurl=ftp://172.16.0.1/pub/Server
gpgcheck=0
enabled=1
[VT]
name=VT
baseurl=ftp://172.16.0.1/pub/VT
gpgcheck=0
enabled=1
[Cluster]
name=Cluster
baseurl=ftp://172.16.0.1/pub/Cluster
gpgcheck=0
enabled=1
[ClusterStorage]
name=ClusterStorage
baseurl=ftp://172.16.0.1/pub/ClusterStorage
gpgcheck=0
enabled=1
yum list {all|installed|updates|avaiable}
yum -y install package_name1 ...
-y 自动回答yes
yum remove | erase 删除
yum update package_name1... 更新rpm包
yum check-update 用于检查哪些软件包可用于升级
yum info + 文件名 查看帮助信息
yum provides +文件名 查询文件是由哪个安装包生成的
eg:yum provides /etc/passwd
yum downgrade package_name 降级软件包
yum reinstall package_name 重装rpm包
yum repolist {all| enabled |disabled}
yum clean all 清除yum缓存
yum grouplist 可以安装的rpm包组
yum groupinstall ” development tools“ 安装包组软件 若这个包组名中间有空格,需要用引号引起来!!
yum groupinfo ” development tools“
显示包组信息
yum localinstall /path/to/rpm_file 直接安装下载到本地后的rpm,解决其网络上的依赖关系
--nogpgcheck 忽略公钥信息检查
eg; yum --nogpgcheck localinstall /path/to/rpm_file
yum search keywords 从yum源中查看有关keywords关键字的rpm