Linux软件管理rpm

2017年1月14日10:16:38 1 2,657 ℃

应用程序:

程序,Architecture

C语言:源代码-->(编译)二进制格式

脚本:解释器(二进制程序)

源代码-->编译-->链接-->运行

程序:

静态

动态

静态链接

动态链接

/usr/share/man

/etc , /bin , /sbin , /lib 

系统启动就需要用到的程序,这些目录不能挂载额外的分区,必须在根文件系统的分区上

/usr/

bin

sbin

lib

操作系统核心功能,可以单独分区

/usr/local

bin

shin

lib

etc

man

建议单独分区

/proc

/sys

不能单独分区,默认为空

/dev :设备,不能单独分区:

/home :普通用户的宿主目录,可以单独分区

/root  :管理员宿主目录,不能单独分区

/var: 建议单独分区

/boot :内核,initrd(initramfs)建议单独分区

POST-->BIOS(HD)-->(MBR)bootloader(文件系统结构,ext2 ,ext3 ,xfs)-->内核

软件包管理器的核心功能:

1、制作软件包:

2、安装、卸载、升级、查询、校验

Redhat, SUSE ,Debian

Rehat ,SUSE: RPM

Redhat package Manager

PRM is package Manager

Debian : dpt

依赖关系:

x-->y-->z

前端工具:yum , apt-get

后端工具:RPM , dpt

rpm命令

rpm:

数据库:/var/lib/rpm

rpmbuild:

安装、查询、卸载、升级、校验、数据库的重建等工作

rpm 命名:

包:组成部分

主包:bind-9.7.1-1.i586.e15.rpm

子包:bind-libs-9.7.1-1.i586.e15.rpm

   bind-utils-9.7.1-1.i586.e15.rpm

包名格式:

name-version-release.arch.rpm

bind-major.minor.release-release-arch.rpm

主版本号:重大改进

次版本号:某个子功能发生重大变化

发行号:修正了部分bug,调整了一点功能

rpm包:

二进制格式

rpm包作者下载源程序,编辑配置完成后,制作成rpm包

bind-9.7.1-1.i686.rpm

bind-9.7.1-1.ppc.rpm

源码格式

1、安装

rpm    -i /PATH/TO/PACKAGE_FILE

-h:以#显示精度:每个#表示2%

-v:显示详细过程

-vv:更详细的过程

rpm -ivh /PATH/TO/PACKAGE_FILE

--nodeps:忽略依赖关系:

--replacepkgs:重新安装,替换原有的安装

--oldpackage : 降级安装

--force:强行安装,可以实现重装或者降级

2、查询

rpm -q  PACKAGE_NAME 查询指定的包是否已经安装

rpm -qa :查询已经安装的所有包

rpm -qi PACKAGE_NAME :查询指定包的说明信息

rpm -ql PACKAGE_NAME:查询指定包安装后生成的文件列表

rpm -qc PACKAGE_NAME:查询指定安装包的配置文件

rpm -qd PACKAGE_NAME:查询指定安装包的帮助文件

rpm -q --scripts PACKAGE_NAME :查询指定包中包含的脚本

rpm -qf /path/to/somefile :查询指定的文件是由哪个rpm包安装生成的

如果某rpm包尚未安装,我们需要查询其说明信息、安装以后会生成的文件

rpm -qpi /PATH/TO/PACKAGE_FILE

rpm -qpl

3、升级

rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE:如果装有老版本的,则升级:否则,则安装

rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE:如果装有老版本的,则升级:否则,则退出

--oldpackage :降级

4、卸载

rpm -e PACKAGE_NAME

--nodeps

5、校验

rpm -V PACKAGE_NAME

6、重建数据库

rpm

--rebuilddb:重建数据库,一定会重新建立

--initdb:初始化数据库,没有才建立,有就不用建立

7、检验来源合法性,及软件完整性

加密类型:

对称:加密解密使用同一个密钥

公钥:一对密钥,公钥,私钥隐含于私钥中,可以提取出来,并公开出去;

单向:

ls /etc/pki/rpm-gpg/

RPM-GPG-KEY-rehat-release

rpm -K /PATH/TO/PACKAGE_FILE

dsa ,gpg:验证来源合法性,也即验证签名,可以使用--nosignature,略过此项

sha1,md5:验证软件包完整性,可以使用--nodigest ,略过此项

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEEY-redhat-release:导入密钥文件

【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:1   其中:访客  0   博主  0

    • avatar 单刀赴会 1

      除了膜拜,别无它言!