Это становится довольно безумным - я пытаюсь создать RPM из некоторых сценариев BASH, которые работают как плагины Nagios. Я продолжаю получать:
error: Installed (but unpackaged) file(s) found:
/usr/lib64/nagios/plugins/netappassigncheck
/usr/lib64/nagios/plugins/netappassignprep
В директиве %files моего spec-файла я испробовал большинство комбинаций, предложенных здесь и на различных других интернет-форумах:
- /usr/lib/нагиос/плагины/*
- /usr/lib/nagios/plugins/netappassigncheck
- /usr/lib/nagios/plugins/netappassignprep
- %dir /usr/lib/nagios/плагины/
И в настоящее время я на
%dir %{_libdir}/nagios/plugins/
Вот почему мой последний вывод об ошибке - lib64, предыдущие ошибки при цитировании полного пути были /usr/lib/...
Это единственные 2 файла, которые также должны составлять пакет.
Вот мой файл .spec
Name: netappautoassign
Summary: A set of Nagios Plugins for automatically assigning disks to a Netapp
Version: 1.0
Release: 1
License: %{license}
Group: Applications/System
Source: %{source}
URL: Reserved
Vendor: %{vendor}
Packager: %{packager}
BuildArch: noarch
Requires: bash, grep, util-linux, coreutils, expect, openssh-clients, bc, sed
Provides: netappassignprep, netappassigncheck
%description
Since Netapp's autoassign function may lead to disks being assigned to the
wrong head these NAGIOS plugins will ensure disks are added to the correct
head when replaced.
%prep
%setup -q
%build
%install
rm -rf %{buildroot}
install -d %{buildroot}%{_libdir}/nagios/plugins
cp netappassigncheck %{buildroot}%{_libdir}/nagios/plugins/
cp netappassignprep %{buildroot}%{_libdir}/nagios/plugins/
%files
%defattr(755,root,root,755)
%dir %{_libdir}/nagios/plugins/
%clean
rm -rf %{buildroot}
%post
А вот мой ~/.rpmmacros
%_topdir %(echo $HOME)/rpmbuild
%_tmppath %{_topdir}/tmp
%buildroot %{_tmppath}/%{name}-%{version}
%license RESERVED
%source %{name}-%{version}.tar.gz
%vendor REDACTED
%packager REDACTED
ИЗМЕНИТЬ – РЕШЕНО
Я не уверен, является ли это ошибкой или желаемым поведением, но оказалось, что во время сборки переменная %{buildroot} не читалась из .rpmmacros. Переместив эту переменную в основной файл спецификации, RPM теперь построен.
[user@stor-wb-d1 plugins]$ pwd
/home/user/rpmbuild/tmp/netappautoassign-1.0/usr/lib64/nagios/plugins
[user@stor-wb-d1 plugins]$ ls -al
total 16
drwxr-xr-x 2 user user 4096 Dec 7 13:02 .
drwxr-xr-x 3 user user 4096 Dec 7 13:02 ..
-rwxr-xr-x 1 user user 1902 Dec 7 13:03 netappassigncheck
-rwxr-xr-x 1 user user 2170 Dec 7 13:03 netappassignprep
- person DJNrrd   schedule 07.12.2013