rpm命令:
-qa 查看软件包是否被安装
-ivh 安装rpm包
-e 卸载包
-qpl 查看rpm包中有什么东西
-qi 查看软件的详细安装信息:安装路径
安装fpm
#FPM是Ruby模块
yum -y install ruby rubygems ruby-devel
#添加淘宝的Ruby仓库
gem sources -a http://ruby.taobao.org/
#移除原生的Ruby仓库
gem sources -r http://rubygems.org/
#查看fpm的源 确保只有一个淘宝的源
gem sources -l
#安装fpm
gem install fpm
fpm打包命令
详细使用见fpm --help
常用参数:
-s 指定源类型
-t 指定目标类型
-n 指定包的名字
-v 指定包的版本号
-C 指定打包的相对路径
-d 指定依赖于那些包
-f 第二次打包时目录下如果有相同的安装包存在,则覆盖它
-p 输出的安装的目录,不想放在当前目录下就需要指定它
--post-install 软件包安装完成之后所要运行的脚本;同--after-install
--pre-install 软件包安装完成之前所要运行的脚本;同--before-install
--post-uninstall 软件包卸载完成之后所要运行的脚本;同--after-remove
--pre-uninstall 软件包安装完成之前所要运行的脚本;同--before-remove
注意
如果是内网yum源安装的话,如果包A和B有依赖关系就需要将A和B都放在内网yum源,在打包的时候使用-d参数指定依赖关系。
制作一个nginx 的rpm包:
fpm和tar类似,只不过fpm制作的rpm包能够被yum识别。
使用fpm制作rpm的前提:
1.这个包已经被安装好了,通常是对编译安装的软件进行打包
2.已经知道这个包的依赖包,在打包的时候使用-d 参数指定
nginx已事先被编译安装在/application/nginx1.6.2目录下了。
打包的命令: fpm -s dir -t rpm -n nginx -v 1.6.2 -d 'openssl-devel,pcre-devel' -f --post-install /server/scripts/nginx_rpm.sh /application/nginx1.6.2/
注意“--post-install /server/scripts/nginx_rpm.sh”中指定的脚本也会被打进包中。
查看这个脚本的内容:
#!/bin/sh
/usr/sbin/useradd nginx -M -s /sbin/nologin //创建nginx用户
#########################################我是分割线###################################
yum命令
yum install <package-name>
yum install <package-name> -y
不记得软件包的确切名字,可以使用search函数搜索
yum search <package-name>
查找某个文件属于哪个软件包
yum provides /etc/my.cnf
列出所有的可用群组
yum grouplist
安装群组软件包
yum groupinstall
列出启用的软件
yum repolist
列出所有的软件库
yum repolist all 包括禁用的也列出
清楚yum缓存内容
yum clean
查看yum历史记录
yum history
创建yum仓库
yum install yum-utils
下载一个RPM包:
yumdownloader <package-name>
开启缓存功能:
vim /etc/yum.conf
keepcache=1
默认rpm包的存放路径:/var/cache/yum/x86_64/7/base/packages/
yum install createrepo -y
createrepo -pdo /var/www/html/CentOS-7.1-x86_64/ /var/www/html/CentOS-7.1-x86_64/ 为目标目录中的rpm包创建xml文件
createrepo --update /server/CentOS_7.2_x86_64/ 新增或者移除rpm包之后更新仓库
客户端
[root@mysql yum.repos.d]# pwd
/etc/yum.repos.d
[root@mysql yum.repos.d]# vim chenyao.repo
[chenyao] name=Server baseurl=http://192.168.220.165/CentOS-7.1-x86_64 enable=1 gpgcheck=0
yum --enablerepo=chenyao --disablerepo=base,extras,updates list