wordpress网站如何上传rpm文件

 火.. [复制链接]  263查看
易西 发表于 2023-10-17 18:23:18 | 显示全部楼层 |阅读模式
wordpress网站如何上传rpm文件
 楼主| 易西 发表于 2023-10-17 18:24:33 | 显示全部楼层
 楼主| 易西 发表于 2023-10-17 18:26:16 | 显示全部楼层
本帖最后由 易西 于 2023-10-17 18:27 编辑

centos 发布自己的rpm包
场景:
  用.net core开发了web应用,但是每次发布到liunx都是通过ftp,而且没有版本管理,给甲方部署也十分麻烦,因此想着把程序发布为rpm包,可以通过yum下载安装。

解决:
  1.发布rpm包

    1.1 yum -y install rpm-build ,此时得到文件结构包括:

复制代码
  1. rpmbuild/
  2. ├── BUILD  # 发布时解压的位置
  3. ├── BUILDROOT
  4. ├── RPMS  # 发布后的rpm包位置
  5. ├── SOURCES  # 源码,或者压缩包位置
  6. ├── SPECS  # spec文件位置
  7. └── SRPMS   
复制代码

复制代码
    1.2 在SPECS中建立spec文件:vi xxxx.spec

    1.3 spec文件是整个rpm包编译,安装前,安装,安装后的动作,具体内容:

复制代码
  1. Name:           bigdata
  2. Version:        1.0.0
  3. Release:        1
  4. Summary:        bigdata platform

  5. License:        GPL
  6. URL:            <a href="http://www.chenpoop.top" target="_blank">www.chenpoop.top</a>
  7. Packager:       chen
  8. Source0:        %{name}-%{version}.tar.gz

  9. BuildRoot:      %_topdir/BUILDROOT
  10. #这个是软件make install 的测试安装目录.

  11. #编译时需要的依赖;运行时需要的依赖
  12. #BuildRequires:
  13. #Requires:mysql8.0,postgres10,redis3.2

  14. # 描述
  15. %description
  16. 大数据平台

  17. # 打包开始
  18. %prep

  19. # 安装前的操作,一般是先解压rpm包到build下
  20. %setup -q

  21. # 编辑制作
  22. %build

  23. # 安装
  24. %install
  25. rm -rf %{buildroot}             #先删除原来的安装的,如果你不是第一次安装的话
  26. mkdir %_topdir/%{name}-%{version}
  27. install -d  %_topdir/%{name}-%{version} $RPM_BUILD_ROOT
  28. # install -m 755 %_topdir/BUILD/%{name}-%{version}  $RPM_BUILD_ROOT
  29. #将需要需要打包的文件从BUILD 文件夹中拷贝到BUILDROOT文件夹下。

  30. # 安装前执行的脚本
  31. %pre
  32. # 安装后执行的脚本
  33. %post
  34. sh $RPM_BUILD_ROOT/root/%{name}-%{version}/Move.sh

  35. # 卸载前执行的脚本
  36. %preun

  37. # 卸载后执行的脚本
  38. %postun

  39. # 清理
  40. %clean #清理段,删除buildroot
复制代码


复制代码
    其中每个字段的含义可以看参考中的文章,其中$RPM_BUILD_ROOT相当于yum安装后的根路径,比如:

  1. cp %_topdir/BUILD/%{name}-%{version}/root/%{name}-%{version}/Stop.sh $RPM_BUILD_ROOT/root/%{name}-%{version}/Stop.sh
复制代码

    就是把build下的Stop.sh复制到安装服务器的/root下的路径。

    然后个人觉得%post比较好用,可以把文件复制,服务启动等写在这里面去执行(因为这个install进程会报文件不存在的问题,于是我都是用sh去复制文件的)

    1.4 通过rpmbuild 来打包rpm:rpmbuild -ba xxx.spec

    1.5 同时也通过该语句查看错误信息,我就是把.tar解压在打包成rpm

参考:
  https://www.cnblogs.com/dyh004/p/10370709.html

  https://www.cnblogs.com/huowenjie/p/13467750.html

 楼主| 易西 发表于 2023-10-17 18:29:18 | 显示全部楼层
https://www.cnblogs.com/luokeli0755/articles/17699120.html
参考

保存centos的rpm包
  1. # centos7
  2.     vim /etc/yum.conf
  3.     cachedir=/var/cache/yum/    #是rpm包保存的路径
  4.     keepcache=1                       #改为1


  5. # centos8 rocky8.3
  6.     #在[main]里面添加
  7.     cachedir=/var/cache/dnf    #默认目录
  8.     keepcache=1                    #改为1

  9. # 保存并移动
  10.     mkdir -p net_tools
  11.     find  /var/cache/dnf -name "*.rpm" | xargs -t -I '{}' mv {} net_tools
复制代码


  
[发帖际遇]: 一个袋子砸在了 易西 头上,易西 赚了 3 金钱. 幸运榜 / 衰神榜
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

邮箱|首页|小黑屋|吾侪 ( 蜀ICP备2020029307号-4 )

GMT+8, 2026-9-17 19:10 , Processed in 0.035156 second(s), 23 queries .

Powered by Discuz! X3.5

Copyright © , 吾侪网

快速回复 返回顶部 返回列表