回顾:使用别人编译好的二进制(dep[apt]和rpm)软件包管理器,linux没有注册表。编译安装源代码(gcc)
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
rpm的yum使用类似于c/s的架构。基于三个协议:file:///,ftp://,http://
创建yum库:createrepo工具,xml格式定义软件包的组
/var/yum/repodata/
install 安装 update升级 remove卸载 info显示软件包的信息 list{all|installed|available}
clean all 清楚缓存 search whatprovides查询哪个文件是由哪个安装包安装的 localinstall --nogpgcheck grouplist groupinstall groupremove repolist
安装:-I -v,-h显示安装进度 --nodeps不检查依赖关系 –force忽略软件包及文件的冲突
--test测试不安装 --replacepkgs重新安装
卸载:-e --nodeps
升级:-U可安装可升级/-F要有老版本的软件包,内核一定不能升级只能安装 --force强行
查询:-q –i显示文件包中的概要信息 -l显示软件包中的文件列表 –f查询文件属于哪个软件包安装的 -p显示软件包的文件(路径) -a查询所有安装的软件包 -c查询配置文件
-d显示文档文件列表 -R显示软件包所依赖的文件 --scripts 显示安装软件包时可能会自动执行的脚本
校验:-V校验文件包是否被破坏 S大小发生改变 N:文件权限类型5:MD5校验码发生改变 D:特殊文件的设备号是否改变 L:resdlink路径不匹配
U:所属用户改变 G:组发生改变 T:时间改变
-K校验数字签名 rpm –import /etc/pki/rmp-gpg/RPM-GPG-KEY-redhat-下的文件
--checksig同上
md5sum检查一文件的校验码
rpm –ql rpm /var/lib/rpm数据库、改变时重建数据库
rpm --initdb 初始化 --rebuilddb没有创建有覆盖
如何使用函数:
是实现模块化编程,代码重用,实现结构化明朗
定义function
function NAME {
statement
…..
return 0-255 返回值
}
二 NAME(){ }
转载于:https://blog.51cto.com/shugao/559319