公司怎么做网站推广,怎么在欧美做网站推广,教育机构网站模板,wordpress翻译制作Centos/Redhat/Fedora的软件包#xff0c;都是rpm后缀的文件。包管理器rpm(Redhat packages manager) linux的哲学思想是简单命令解决复杂任务#xff0c;因此每个软件的功能较单一#xff0c;所以各种包之间有着复杂的依赖关系#xff0c;为了解决这种可以使用前端工具都是rpm后缀的文件。包管理器rpm(Redhat packages manager) linux的哲学思想是简单命令解决复杂任务因此每个软件的功能较单一所以各种包之间有着复杂的依赖关系为了解决这种可以使用前端工具 前端管理工具自动解决依赖关系。 01、rpm包命名格式 二进制格式 name-VERSION.tar.gz VERSION的格式: major.minor.release.os.arch arch:i386,x64(amd64),ppc(power pc),noarch(java编写的,可以跨平台) os:e17(红帽七) os:el6(红帽6) eg 主版本号为3次版本号为0发行号为2编译次数为1系统为centos7平台为x64的rpm包 redis-3.0.2-1.centos7.x64.rpm 02、版本类型 fc final candidate 最终版 alpha 内测版 beta 公测版 rc 发布候选版 release 正式版 程序包管理器 源代码--- 目标二进制格式---- 组织成为一个或有限几个“包”文件实现软件的安装升级卸载查询校验 后端管理工具 debian:dpt,dpkg,.deb redhat: rpm,.rpm yum S.u.S.E:rpm ,.rpm 源于rpm但是组织结构不同并不能和redhat兼容 Ubantu是debian的分支包管理机制一样 Gentoo;parts Archlinuxlinux界的新贵(极简哲学思想) yum:rhel系列系统上的rpm包管理器的前端工具 apt-get:.deb包管理器的前端工具 zypper:suse的rpm包管理工具 dnfFedora20系统上的rpm包管理器的前端工具功能更强大未来centos中也可能使用 03、常见的Mirrors 程序包组成包管理器的功能将编译好的应用程序的各组成文件打包成一个或几个程序包文件 1.系统发行版的光盘或官方的文件服务器或镜像站点 http://mirrors.aliyun.com http://mirrors.sohu.com EPEL较为可靠的组织阿里云等中的epel目录 2.对rpm单个包下载 http://pkgs.org http://rpm.pbone.net http://rpmfind.net 04、RPM参数含义 CentOS系统上的rpm命令管理程序包安装升级卸载查询和校验数据库维护 rpm命令 rpm [OPTIONS] [PACKAGE_FILE] 安装: -i,--install 升级-U--updata,-F,freshen 卸载-e,--erase 查询-q,--query 校验 -V--verify 数据库维护--builddb,--initdb 1.安装 rpm -ivh PACKAGE_FILE 通用选项 -vverbose 显示详细信息 -vv更详细的输出 rpm {-i|--install} [install-options] PACKAGE_FILE... [install-options]: -h:hash marks 输出进度条,每个#表示2%的进度 --test仅是测试并不真的安装 --nodeps忽略依赖关系可以让你安装但是不一定可以用。你建议使用 --force 强制安装 --replacepkgs重新安装 如果自己不小心错误修改了某些配置文件想要安装的初始文件可以通过这个命令但是要把改变过的文件删除否则重新安装不会替换它 --nodigest:不检查程序包的完整性 --nosignature:不检查包签名信息不检查来源合法性 注意 rpm可以自带脚本 四类--noscripts不执行任何脚本 preinstall安装过程开始之前运行的脚本%pre postinstall安装过程完成之后运行的脚本%post peruninstall:卸载过程真正开始执行之前运行的脚本 postuninstall卸载过程完成之后运行的脚本 2.升级 rpm {-U|--upgrade} [install-options] PACKAGE_FILE rpm {-F|--freshen} [install-options] PACKAGE_FILE -U升级或安装有则升级无则安装 -F : 升级如果事先没有也不会安装 --oldpackage:降级 --force:强制升级 常见用法 rpm -Uvh PACKAGE_FILE.... rpm -Fvh PACKAGE_FILE 注意 1.不要对内核做升级操作linux支持多内核版本共存因此直接安装新版本内核 2.如果某源程序的配置文件安装后被修改过升级时新版本的程序提供的同一个配置文件不会覆盖原有版本的配置文件而是把新版本的配置文件重命名 (FILENAME.rpmnew)后提供(删除旧的新的自动生成) 3.卸载 rpm {-e|--erase} [--allmatchs][--nodeps][--noscripts][--test]PACKAGE_NAME --allmatchs:卸载所有匹配指定名称的程序包的各版本 --nodeps: 忽略依赖关系即使该文件被依赖也会卸载 --test 仅是测试并不真的卸载 4.查询 rpm {-q|--query}[select-options][query-options] [select-options]: -a,-all:查询所有已经安装的包 -f FILE:查询指定的文件由那个程序安装生成 -p,--package PACKAGE_FILE:用于实现对未安装的程序包执行查询操作 eg rpm -qpi PACKAGE.NAME: 不安装包查看包的具体信息 rpm -qlp PACKAGE.NAME不安装包直接查看生成的文件 rpm -qcp PACKAGE.NAME不安装包查看包会生成的配置文件 --whatprovides CAPABILITY:查看指定的CAPABLITY由哪个程序包提供 --whatrequires CAPABLITY:查询指定的CAPABLITY被哪个包所依赖 [query-options] --changlog查询rpm包的changlog -l,--list:列出该安装包生成的文件列表 -i--info程序包相关的信息版本号大小所属的包组等 -c,--configure:查询指定的程序包提供的配置文件 -d,--docfiles查询指定的程序包提供的文档 --provides:列出指定的程序包提供的所有的CAPABLITY提供了某个文件也是能力 -R,--requires:查询指定包的依赖关系 --scripts查看程序包自带的脚本程序 eg [rootlocalhost ~]# rpm -q --provides bash bash提供的能力 config(bash) 4.1.2-40.el6 bash 4.1.2-40.el6 bash(x86-64) 4.1.2-40.el6 [rootlocalhost ~]# rpm -q --whatprovides ‘config(bash)‘ ‘config(bash)‘ 这个能力是谁提供的 bash-4.1.2-40.el6.x86_64 [rootlocalhost ~]# rpm -q --whatrequires ‘config(bash)‘ ‘config(bash)‘ 这个能力被谁依赖 bash-4.1.2-40.el6.x86_64 05、RPM常见用法 rpm -qi PACKAGE.NAME: 查询安装包的具体信息 rpm -ql PACKAGE.NAME列出安装包生成的文件 rpm -qf FILE查询某个文件是由那个安装包提供的 eg[rootlocalhost ~]# rpm -qf /usr/share/man/man1/wait.1.gz bash-4.1.2-40.el6.x86_64 rpm -qc PACKAGE.NAME查看安装包生成的配置文件 rpm -qa :已经安装的所有包 不安装包直接查看 eg rpm -qpi PACKAGE.NAME: 不安装包查看包的具体信息 rpm -qlp PACKAGE.NAME不安装包直接查看生成的文件 rpm -qcp PACKAGE.NAME不安装包查看包会生成的配置文件 06、RPM效验 校验务必保证公钥是安全的合法的 rpm {-V|--verify} [select-options] [verify-options] eg rpm -Va S file Size differs M Mode differs (includes permissions and file type) 5 digest (formerly MD5 sum) differs D Device major/minor number mismatch L readLink(2) path mismatch U User ownership differs G Group ownership differs T mTime differs P caPabilities differ eg [rootlocalhost ~]# rpm -V zsh S.5....T. /usr/share/zsh/4.3.11/scripts/newuser 这里对应的就是上面的信息.表示没有变化 包来源合法性验证和完整性验证 合法性一个包制作者利用单向加密数据然后利用私钥对数据的MD5加密这样大家获得公钥后就可以验证这个包的来源了 完整性自己利用单向加密方法计算数据的MD5然后比对md5码比对如果一致说明数据内容没有被修改。 [rootlocalhost ~]# rpm -K /media/cdrom/Packages/zsh-4.3.11-4.el6.centos.2.x86_64.rpm /media/cdrom/Packages/zsh-4.3.11-4.el6.centos.2.x86_64.rpm: rsa sha1 (md5) pgp md5 OK [rootlocalhost ~]# rpm --import /media/cdrom/RPM-GPG-KEY-CentOS-6 查看导入的秘钥文件 [rootlocalhost ~]# rpm -qa gpg-pubkey* gpg-pubkey-c105b9de-4e0fd3a3 删除导入的文件 [rootlocalhost ~]# rpm -e gpg-pubkey-c105b9de-4e0fd3a3 数据库的重建 rpm {--initdb|--rebuilddb}[--depath DIRECTORY][--root DIRECTORY] --initdb:初始化数据库当前无任何数据库可实验化创建一个新的当前有时不执行任何操作不要轻易操作 --rebuilddb:重新构建读取当前系统上所有已经安装过的程序包进行重新创建 --depath:指定数据库的路径 --root:指定根的路径 转载于:https://www.cnblogs.com/xiaochina/p/5915192.html