当前位置: 首页 > 面试题库 >

RPM-安装时间参数

袁炳
2023-03-14
问题内容

我已经将我的应用程序打包到一个RPM软件包中,例如 myapp.rpm 。在安装此应用程序时,我希望收到用户的一些输入(输入示例可能是-
安装该应用程序的环境-“ dev”,“ qa”,“ uat”,“ prod”)。根据输入,应用程序将安装适当的文件。在安装应用程序时是否可以传递参数?

PS:一个可能的解决方案是为每个环境创建一个RPM包。但是,在我们的方案中,这不是一个可行的选择,因为我们有大约20个环境,并且我们不希望为同一应用程序提供20个不同的软件包。


问题答案:

通常,RPM软件包不应要求用户交互。RPM人士一次又一次地表示,没有交互式安装是RPM的明确设计目标。对于在首次使用前需要某种输入的软件包,通常会在首次使用时询问此信息,我们将它们全部放入带有宏或其他内容的配置文件中,并告诉用户在使用该应用程序之前必须对其进行配置。

即使传递某种参数也算作最终用户交互。我认为您想要的是让您的pre脚本或安装脚本以某种方式自动检测环境,也许是将文件放在可以检查的位置。我还将指出,从RPM用户的角度来看,拥有名为*
-qa.rpm的软件包比传递一些随机参数要直观得多。

对于您的确切问题,如果要html" target="_blank">安装其他内容, 则应 创建其他程序包。如果您尝试以不同的方式做事,那么最终您将越来越多地与RPM系统抗争。

创建一个可以吐出20个以上几乎都是相似的软件包的构建系统并不难。我已经完成了一个模板规范文件,并通过make运行了一些脚本,这些脚本将创建各种规范文件并构建RPM。在不知道具体细节的情况下,听起来您甚至可能拥有所有20多个环境软件包都依赖的核心软件包,然后特定于环境的软件包将安装针对其目标环境的特定软件包。



 类似资料:
  • 在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件似乎并不那么轻松了,因为我们不是在图形界面下。所以你要学会如何在linux下安装一个软件。 在前面的内容中多次提到的yum,这个yum是Redhat所特有的安装RPM程序包的工具,使用起来相当方便。因为使用RPM安装某一个程序包有可能会因为该程序包依赖另一个程序包而无法安装。而

  • 使用rpm包安装MySQL 以mysql-5.5.16为例,我们可以在光盘或者网上下载到三个安装包 MySQL-server-5.5.16-1.rhel5.i386.rpm MySQL-client-5.5.16-1.rhel4.i386.rpm MySQL-devel-5.5.16-1.rhel4.i386.rpm 其中,必须安装MySQL-server-*和MySQL-client-*软件包,

  • 本文向大家介绍centos7 用rpm安装mysql详解,包括了centos7 用rpm安装mysql详解的使用技巧和注意事项,需要的朋友参考一下    最近做一个项目,需要用centos做数据服务器,用mysql数据库,就需要安装mysql数据库,之前没接触过centos,因此什么也不懂,就从网上也查了很多资料,都觉得不是最好的方法。最后结合mysql官方资料和网友的资料,最后用rpm方式安装,

  • 本文向大家介绍linux下使用RPM安装mysql5.7.17,包括了linux下使用RPM安装mysql5.7.17的使用技巧和注意事项,需要的朋友参考一下 linux下MySQL5.7 rpm安装方式记录,供大家参考,具体内容如下 删除旧包: 安装rpm包: 启动、停止: 初始随机密码: 修改初始密码及授权远程访问: 密码复杂度属性: validate_password_policy有以下取值

  • 本文向大家介绍RPM方式安装MySQL5.6源码,包括了RPM方式安装MySQL5.6源码的使用技巧和注意事项,需要的朋友参考一下 RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称) b. 下载Linux对应的RPM包,如:CentOS6.4_64对应的RPM包,如下: c. 安装MySQL d. 初始化MySQL及设置密码 e.

  • 本文向大家介绍CentOS7使用rpm包安装mysql 5.7.18,包括了CentOS7使用rpm包安装mysql 5.7.18的使用技巧和注意事项,需要的朋友参考一下 说明 本文写于2017-05-20,使用MySQL-5.7.18。操作系统为64位CentOS Linux release 7.2.1511 (Core),以桌面形式安装。 卸载MariaDB CentOS7默认安装MariaD