Linux系统下使用FPM制作RPM的详细操作方法(图)

来源:191路由网 2020-08-31 05:12:43

原标题:"Linux系统下使用FPM制作RPM的详细操作方法"相关电脑问题教程分享。 - 来源:191路由网

  众所周知,Linux系统下想要制作RPM包,就必须使用FPM工具来完成。而FPM工具不仅能让RPM包制作变得更简单,还能帮助用户做一些收尾的工作。下面就来介绍一下Linux系统下使用FPM制作RPM的详细操作方法。

Linux系统

  这里涉及的参数是:

  --pre-install FILE:表示安装之前所要运行的脚本

  --post-install FILE:表示安装之后所要运行的脚本

  --pre-uninstall FILE:表示卸载之前所要运行的脚本

  --post-uninstall FILE:表示卸载之后所要运行的脚本

  1、fpm工具安装

  # yum -y install ruby rubygems ruby-devel rpm-build

  # gem sources -a http://ruby.taobao.org/

  # gem sources -r https://rubygems.org/

  # gem install fpm

  2、打包luajit

  # mkdir /tmp/luajit

  # cd /usr/local/src

  # wget http://luajit.org/download/LuaJIT-2.0.4.tar.gz

  # tar xvzf LuaJIT-2.0.4.tar.gz

  # cd LuaJIT-2.0.4

  # make PREFIX=/usr

  # make install PREFIX=/usr DESTDIR=/tmp/luajit

  # fpm -s dir -t rpm -n LuaJIT -v 2.0.4 --iteration 1.el7 -C /tmp/luajit/ -p /root --description ‘luajit rpm package’ --url ‘http://luajit.org’
[page]

  3、打包tengine

  # mkdir /tmp/tengine

  # cd /usr/local/src

  # wget -O lua-nginx-module-0.9.16.tar.gz https://codeload.github.com/openresty/lua-nginx-module/tar.gz/v0.9.16

  # tar xvzf lua-nginx-module-0.9.16.tar.gz

  # wget http://tengine.taobao.org/download/tengine-2.1.0.tar.gz

  # tar xvzf tengine-2.1.0.tar.gz

  # cd tengine-2.1.0

  # 。/configure --prefix=/opt/share/nginx \

  --sbin-path=/opt/sbin/nginx \

  --conf-path=/opt/etc/nginx/nginx.conf \

  --error-log-path=/opt/log/nginx/error.log \

  --http-log-path=/opt/log/nginx/access.log \

  --user=nginx \

  --group=nginx \

  --http-client-body-temp-path=/opt/lib/nginx/tmp/client_body \

  --http-proxy-temp-path=/opt/lib/nginx/tmp/proxy \

  --http-uwsgi-temp-path=/opt/lib/nginx/tmp/uwsgi \

  --pid-path=/opt/run/nginx.pid \

  --lock-path=/opt/lock/subsys/nginx \

  --with-http_ssl_module \

  --with-http_realip_module \

  --with-http_addition_module \

  --with-http_gzip_static_module \

  --with-http_gunzip_module \

  --with-http_secure_link_module \

  --with-http_stub_status_module \

  --with-http_sysguard_module \

  --with-file-aio \

  --add-module=。。/lua-nginx-module-0.9.16 \

  --with-cc-opt=‘-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security’ \

  --with-ld-opt=‘-Wl,-Bsymbolic-functions -Wl,-z,relro’

  # make

  # make install DESTDIR=/tmp/tengine

  # cd /tmp/tengine/opt

  # mkdir -p lib/nginx/tmp/{client_body,proxy,uwsgi}

  # mkdir -p lock/subsys/nginx

  # cd /tmp/tengine

  # mkdir etc/rc.d/init.d

  # cp /etc/rc.d/init.d/nginx etc/rc.d/init.d

  # mkdir etc/logrotate.d

  # cp /etc/logrotate.d/nginx etc/logrotate.d

  # mkdir tmp

  安装之前所要运行的脚本

  # vim tmp/install_before.sh

  #!/bin/bash

  [[ -n `ps aux|grep ngin[x]` ]] && killall -9 nginx

  [[ -e /opt/etc/nginx ]] && cp -a /opt/etc/nginx/ /opt/etc/nginx_$(date +%F_%H-%M-%S)
[page]

  安装之后所要运行的脚本

  # vim tmp/install_after.sh

  #!/bin/bash

  [[ -n `getent group nginx` ]] || groupadd -r nginx

  [[ -n `getent passwd nginx` ]] || useradd nginx -r -g nginx -s /sbin/nologin

  [[ -n `getent group www-data` ]] || groupadd -r www-data

  [[ -n `getent passwd www-data` ]] || useradd www-data -r -g www-data -s /sbin/nologin

  mkdir -p /data/log/nginx

  if [[ -e /var/log/nginx ]]; then

  if [[ -L /var/log/nginx ]]; then

  rm -f /var/log/nginx && ln -s /data/log/nginx /var/log/nginx

  else

  mv /var/log/nginx/* /data/log/nginx/

  rm -rf /var/log/nginx && ln -s /data/log/nginx /var/log/nginx

  fi

  else

  ln -s /data/log/nginx /var/log/nginx

  fi

  /opt/sbin/nginx -c /opt/etc/nginx/nginx.conf

  打包tengine

  # chmod +x tmp/*.sh

  # fpm -s dir -t rpm -n tengine -v 2.1.0 --iteration 1.waf.el7 -C /tmp/tengine/ -p /root --description ‘tengine rpm package’ --url ‘http://tengine.taobao.org’ --pre-install /tmp/tengine/tmp/install_before.sh --post-install /tmp/tengine/tmp/install_after.sh

  rpm软件包信息查看

  # rpm -qp --scripts /root/tengine-2.1.0-1.waf.ele.el7.x86_64.rpm

  最终的安装步骤

  # yum -y install pcre pcre-devel openssl openssl-devel

  # rpm -Uvh LuaJIT-2.0.4-1.el7.x86_64.rpm

  # rpm -Uvh tengine-2.1.0-1.waf.el7.x86_64.rpm

  以上就是Linux系统下使用FPM制作RPM的详细操作方法

点击展开全文

相关阅读

路由器连u盘经常打不开-(U盘连不上怎么办)

路由器连u盘都打不开(U盘连不上怎么办?今天下午,一位客户从苹果机器上拆下机械硬盘,插入蒲公英路由器USB但经过测试是无法访问的,我们进入蒲公英云平台-应用中心-文件共享,本来有1T硬盘的识别率不到200M如图所示:打开文件共享,但无法访问,我们试图重新插入或访问,所以我们让客户插入移动硬盘WINDows无法直接识别系统计算机,如图所示:这说明应...

2022-08-15

进入路由器密码忘了-(进入路由器密码忘了怎么办)

忘记进入路由器密码(忘记进入路由器密码怎么办)善忘是每个人都会有的,对于绝大多数的小伙伴来说,只要连接WiFi,一般就不会再去输入密码了。时间长了,密码难免会被遗忘。在这种情况下,不要惊慌。有很多方法可以找到密码。接下来,我会根据自己的经验教你几种方法,这样你就可以很容易地找到密码。WIFI忘了密码,怎么用最简单的方法找回来?用三种方法帮你找回密码!看完这篇文章,忘记密码再也不会发生了!方...

2022-08-15

用路由器还要猫吗-(用路由器还要猫吗吗)

用路由器还需要猫吗?(用路由器还需要猫吗?吗)光猫和路由器的区别随着网络的发展,几乎每个人都在家里安装宽带,让我们随时随地在家上网。除了路由器,还有一个重要的光猫设备。许多朋友无法区分这两种工具之间的区别。他们不知道是否一起安装。今天,小编将告诉你光猫和路由器的区别。光猫和路由器的区别:1、原...

2022-08-15

无线路由器 改密码-(无线路由器改密码怎么改)

无线路由器改密码(如何更改无线路由器的密码)经常有人时间长了,换手机就忘了以前设置的。WiFi密码是什么?今天,我将教你如何不用电脑和手机修改路由器WiFi密码。如果忘记了无线路由器WIFI进入路由器控制面板查看密码或重新修改WIFI今天,我们将教您如何使用手机登录路由器进行修改WIFI密码首先,我们需要知道路由器的登录IP地址登录手机查看路由器IP地址1,找到打开...

2022-08-15

新路由2解锁-(新路由2拆解)

新路由2解锁(新路由2拆解)这个内容来自@什么值得买APP,观点只代表作者本人|作者:Stark-C2022年,我想还有人不知道路由器还能刷吗?也许有些人可能真的不知道在几天前,一个朋友给我扔了一个K2路由器,让我刷其他东西,所以我借此机会谈谈路由器的刷过程和经验(虽然这次使用K做演示,其实K1/K2/K2P刷...

2022-08-15

191路由网 - 192.168.1.1,192.168.0.1无线路由器设置教程

版权声明:本站的文章和图片来自互联网收集,仅做分享之用如有侵权请联系站长,我们将在24小时内删除