mirror of
https://github.com/dynup/kpatch
synced 2024-12-23 05:32:13 +00:00
c9614c4298
Currently kpatch rely on systemd to load all kmods on startup. This patch aims to enable kpatch to be used on upstart systems. Limitations: With systemd, it would be possible to unload all modules by issuing: systemctl stop kpatch It was not possible to make a reasonable upstart's equivalent of it, so to unload the modules it will be necessary to call kpatch explicitly: kpatch unload --all I believe this it an non-issue, as it is still possible to unload the modules by calling kpatch explicitly. The file /etc/init/kpatch.conf will be installed unconditionally, and removed on uninstall. On my tests I have verified that all newly added files by this commit are also deleted on uninstall. It was also verified that applied patches are loaded again on startup. rpmlint does not complain about anything new. Signed-off-by: Bruno Loreto <loretob@amazon.com>
120 lines
3.5 KiB
RPMSpec
120 lines
3.5 KiB
RPMSpec
Name: kpatch
|
|
Summary: Dynamic kernel patching
|
|
Version: 0.5.0
|
|
License: GPLv2
|
|
Group: System Environment/Kernel
|
|
URL: http://github.com/dynup/kpatch
|
|
Release: 1%{?dist}
|
|
Source0: %{name}-%{version}.tar.gz
|
|
|
|
Requires: kmod bash
|
|
BuildRequires: gcc kernel-devel elfutils elfutils-devel
|
|
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
|
|
|
# needed for the kernel specific module
|
|
%define KVER %(uname -r)
|
|
|
|
%description
|
|
kpatch is a Linux dynamic kernel patching tool which allows you to patch a
|
|
running kernel without rebooting or restarting any processes. It enables
|
|
sysadmins to apply critical security patches to the kernel immediately, without
|
|
having to wait for long-running tasks to complete, users to log off, or
|
|
for scheduled reboot windows. It gives more control over up-time without
|
|
sacrificing security or stability.
|
|
|
|
|
|
%package runtime
|
|
Summary: Dynamic kernel patching
|
|
Buildarch: noarch
|
|
Provides: %{name} = %{version}
|
|
%description runtime
|
|
kpatch is a Linux dynamic kernel patching tool which allows you to patch a
|
|
running kernel without rebooting or restarting any processes. It enables
|
|
sysadmins to apply critical security patches to the kernel immediately, without
|
|
having to wait for long-running tasks to complete, users to log off, or
|
|
for scheduled reboot windows. It gives more control over up-time without
|
|
sacrificing security or stability.
|
|
|
|
|
|
%package build
|
|
Requires: %{name}
|
|
Summary: Dynamic kernel patching
|
|
%description build
|
|
kpatch is a Linux dynamic kernel patching tool which allows you to patch a
|
|
running kernel without rebooting or restarting any processes. It enables
|
|
sysadmins to apply critical security patches to the kernel immediately, without
|
|
having to wait for long-running tasks to complete, users to log off, or
|
|
for scheduled reboot windows. It gives more control over up-time without
|
|
sacrificing security or stability.
|
|
|
|
%package %{KVER}
|
|
Requires: %{name}
|
|
Summary: Dynamic kernel patching
|
|
%description %{KVER}
|
|
kpatch is a Linux dynamic kernel patching tool which allows you to patch a
|
|
running kernel without rebooting or restarting any processes. It enables
|
|
sysadmins to apply critical security patches to the kernel immediately, without
|
|
having to wait for long-running tasks to complete, users to log off, or
|
|
for scheduled reboot windows. It gives more control over up-time without
|
|
sacrificing security or stability.
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
%build
|
|
make %{_smp_mflags}
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
|
|
make install PREFIX=/%{_usr} DESTDIR=%{buildroot}
|
|
|
|
%clean
|
|
rm -rf %{buildroot}
|
|
|
|
%files runtime
|
|
%defattr(-,root,root,-)
|
|
%doc COPYING README.md
|
|
%{_sbindir}/kpatch
|
|
%{_mandir}/man1/kpatch.1*
|
|
%{_usr}/lib/systemd/system/*
|
|
%{_sysconfdir}/init/kpatch.conf
|
|
|
|
%files %{KVER}
|
|
%defattr(-,root,root,-)
|
|
%{_usr}/lib/kpatch/%{KVER}
|
|
|
|
%files build
|
|
%defattr(-,root,root,-)
|
|
%{_bindir}/*
|
|
%{_libexecdir}/*
|
|
%{_datadir}/%{name}
|
|
%{_mandir}/man1/kpatch-build.1*
|
|
|
|
%changelog
|
|
* Wed Dec 3 2014 Josh Poimboeuf <jpoimboe@redhat.com> - 0.2.2-1
|
|
- rebased to current version
|
|
|
|
* Tue Sep 2 2014 Josh Poimboeuf <jpoimboe@redhat.com> - 0.2.1-1
|
|
- rebased to current version
|
|
|
|
* Mon Jul 28 2014 Josh Poimboeuf <jpoimboe@redhat.com> - 0.1.9-1
|
|
- moved core module to /usr/lib/kpatch
|
|
- rebased to current version
|
|
|
|
* Mon Jul 07 2014 Udo Seidel <udoseidel@gmx.de> - 0.1.7-1
|
|
- rebased to current version
|
|
|
|
* Sat May 24 2014 Udo Seidel <udoseidel@gmx.de> - 0.1.1-1
|
|
- rebased to current version
|
|
|
|
* Thu Apr 10 2014 Udo Seidel <udoseidel@gmx.de> - 0.0.1-3
|
|
- added dracut module
|
|
|
|
* Tue Mar 25 2014 Udo Seidel <udoseidel@gmx.de> - 0.0.1-2
|
|
- added man pages
|
|
|
|
* Sat Mar 22 2014 Udo Seidel <udoseidel@gmx.de> - 0.0.1-1
|
|
- initial release
|