rpm取消安装,并显示警告取消链接消息

时间:2017-03-28 13:57:24

标签: shell jenkins-plugins rpm-spec

我创建了一个可以安装/升级/卸载软件包的spec文件。但是,在卸载时,它会卸载带有警告的软件包

warning:    erase unlink of /var/hudson/master/plugins/publish-over-cifs/help/global/username.html failed: No such file or directory
warning:    erase unlink of /var/hudson/master/plugins/publish-over-cifs/help/global/timeOut.html failed: No such file or directory
warning:    erase unlink of /var/hudson/master/plugins/publish-over-cifs/help/global/remoteRootDir.html failed: No such file or directory
warning:    erase unlink of /var/hudson/master/plugins/publish-over-cifs/help/global/port.html failed: No such file or directory
warning:    erase unlink of /var/hudson/master/plugins/publish-over-cifs/help/global/password.html failed: No such file or directory

如何解决此错误?有没有办法在spec文件中忽略这样的警告?

2 个答案:

答案 0 :(得分:0)

这是我必须解决警告消息的解决方法。它是由放置在rm -rf [卸载前]部分中的%preun引起的。您不需要在SPEC文件中包含任何rm -rf。 RPM将隐式地并递归地删除安装目录中每个目录的内容。因此,如果您真的想继续清理卸载后留下的空目录,请在rm -rf <installdir>部分下添加%postun。这将处理警告,并将导致卸载后删除安装目录的干净卸载。查看此文章http://meinit.nl/rpm-spec-prepostpreunpostun-argument-values - 介绍4个有用的标记:%pre %preun %post %postun

答案 1 :(得分:-1)

您的RPM包会尝试删除它已放置的文件和文件夹(隐式行为)。现在,您将收到以下消息:

  1. 如果有人(您或您的应用程序)在此期间删除了包含文件夹。
  2. 如果您的SPEC文件明确删除了该文件夹,通常位于%preun部分(暂时没有rm -rf?)
  3. 请注意,我实际上是指文件夹,即您的/var/hudson/master/plugins/publish-over-cifs/help/global。如果目标文件丢失,您将不会收到这些警告。换句话说,尝试在SPEC文件中替换rm -rf <path> rm -rf <path>/*,如果您要删除它的话。