应用程序:
程序,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:导入密钥文件
2017年1月17日 上午11:24 沙发
除了膜拜,别无它言!