RHEL 9.0.0 Alpha bootstrap
The content of this branch was automatically imported from Fedora ELN with the following as its source: https://src.fedoraproject.org/rpms/rear#130bac656a9e9c99699cfb493c0e6b8c53ffc904
This commit is contained in:
parent
9e3880b197
commit
cace5a1108
2
.gitignore
vendored
2
.gitignore
vendored
@ -0,0 +1,2 @@
|
||||
/rear-*.tar.gz
|
||||
/rear-*/
|
47
0001-skip-kernel-buildin-modules.patch
Normal file
47
0001-skip-kernel-buildin-modules.patch
Normal file
@ -0,0 +1,47 @@
|
||||
From df5e18b8d7c8359b48bc133bfa29734934d18160 Mon Sep 17 00:00:00 2001
|
||||
From: Johannes Meixner <jsmeix@suse.com>
|
||||
Date: Mon, 10 Aug 2020 16:20:38 +0200
|
||||
Subject: [PATCH] Merge pull request #2469 from
|
||||
rear/skip-kernel-builtin-modules-issue2414
|
||||
|
||||
In 400_copy_modules.sh skip copying kernel modules that are builtin modules.
|
||||
The new behaviour is that when modules are listed in modules.builtin
|
||||
and are also shown by modinfo then those modules are now skipped.
|
||||
Before for such modules the modules file(s) would have been included
|
||||
in the recovery system.
|
||||
See https://github.com/rear/rear/issues/2414
|
||||
---
|
||||
usr/share/rear/build/GNU/Linux/400_copy_modules.sh | 12 ++++++++++--
|
||||
1 file changed, 10 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/usr/share/rear/build/GNU/Linux/400_copy_modules.sh b/usr/share/rear/build/GNU/Linux/400_copy_modules.sh
|
||||
index d8d733d2..641b7f83 100644
|
||||
--- a/usr/share/rear/build/GNU/Linux/400_copy_modules.sh
|
||||
+++ b/usr/share/rear/build/GNU/Linux/400_copy_modules.sh
|
||||
@@ -133,8 +133,13 @@ for dummy in "once" ; do
|
||||
module=${module#.o}
|
||||
# Strip trailing ".ko" if there:
|
||||
module=${module#.ko}
|
||||
- # Continue with the next module if the current one does not exist:
|
||||
+ # Continue with the next module if the current one does not exist as a module file:
|
||||
modinfo $module 1>/dev/null || continue
|
||||
+ # Continue with the next module if the current one is a kernel builtin module
|
||||
+ # cf. https://github.com/rear/rear/issues/2414#issuecomment-668632798
|
||||
+ # Quoting the grep search value is mandatory here ($module might be empty or blank),
|
||||
+ # cf. "Beware of the emptiness" in https://github.com/rear/rear/wiki/Coding-Style
|
||||
+ grep -q "$( echo $module | tr '_-' '..' )" /lib/modules/$KERNEL_VERSION/modules.builtin && continue
|
||||
# Resolve module dependencies:
|
||||
# Get the module file plus the module files of other needed modules.
|
||||
# This is currently only a "best effort" attempt because
|
||||
@@ -166,7 +171,10 @@ done
|
||||
|
||||
# Remove those modules that are specified in the EXCLUDE_MODULES array:
|
||||
for exclude_module in "${EXCLUDE_MODULES[@]}" ; do
|
||||
- # Continue with the next module if the current one does not exist:
|
||||
+ # Continue with the next module only if the current one does not exist as a module file
|
||||
+ # but do not continue with the next module if the current one is a kernel builtin module
|
||||
+ # so when a module file exists that gets removed regardless if it is also a builtin module
|
||||
+ # cf. https://github.com/rear/rear/issues/2414#issuecomment-669115481
|
||||
modinfo $exclude_module 1>/dev/null || continue
|
||||
# In this case it is ignored when a module exists but 'modinfo -F filename' cannot show its filename
|
||||
# because then it is assumed that also no module file had been copied above:
|
4
rear.cron
Normal file
4
rear.cron
Normal file
@ -0,0 +1,4 @@
|
||||
# cronjob for ReaR
|
||||
# periodically check if disk layout has changed and update
|
||||
# the rescue image
|
||||
30 1 * * * root /usr/sbin/rear checklayout || /usr/sbin/rear mkrescue
|
6
rear.service
Normal file
6
rear.service
Normal file
@ -0,0 +1,6 @@
|
||||
[Unit]
|
||||
Description=Update ReaR rescue image
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/sbin/rear checklayout || /usr/sbin/rear mkrescue
|
136
rear.spec
Normal file
136
rear.spec
Normal file
@ -0,0 +1,136 @@
|
||||
# this is purely a shell script, so no debug packages
|
||||
%global debug_package %{nil}
|
||||
|
||||
Name: rear
|
||||
Version: 2.6
|
||||
Release: 3%{?dist}
|
||||
Summary: Relax-and-Recover is a Linux disaster recovery and system migration tool
|
||||
URL: http://relax-and-recover.org/
|
||||
License: GPLv3
|
||||
|
||||
# as GitHub stopped with download section we need to go back to Sourceforge for downloads
|
||||
Source0: https://sourceforge.net/projects/rear/files/rear/%{version}/rear-%{version}.tar.gz
|
||||
# Add cronjob and systemd timer as documentation
|
||||
Source1: rear.cron
|
||||
Source2: rear.service
|
||||
Source3: rear.timer
|
||||
# Skip buildin modules, RHBZ#1831311
|
||||
Patch0: 0001-skip-kernel-buildin-modules.patch
|
||||
|
||||
# rear contains only bash scripts plus documentation so that on first glance it could be "BuildArch: noarch"
|
||||
# but actually it is not "noarch" because it only works on those architectures that are explicitly supported.
|
||||
# Of course the rear bash scripts can be installed on any architecture just as any binaries can be installed on any architecture.
|
||||
# But the meaning of architecture dependent packages should be on what architectures they will work.
|
||||
# Therefore only those architectures that are actually supported are explicitly listed.
|
||||
# This avoids that rear can be "just installed" on architectures that are actually not supported (e.g. ARM or IBM z Systems):
|
||||
ExclusiveArch: %ix86 x86_64 ppc ppc64 ppc64le ia64
|
||||
# Furthermore for some architectures it requires architecture dependent packages (like syslinux for x86 and x86_64)
|
||||
# so that rear must be architecture dependent because ifarch conditions never match in case of "BuildArch: noarch"
|
||||
# see the GitHub issue https://github.com/rear/rear/issues/629
|
||||
%ifarch %ix86 x86_64
|
||||
Requires: syslinux
|
||||
%endif
|
||||
# In the end this should tell the user that rear is known to work only on ix86 x86_64 ppc ppc64 ppc64le ia64
|
||||
# and on ix86 x86_64 syslinux is explicitly required to make the bootable ISO image
|
||||
# (in addition to the default installed bootloader grub2) while on ppc ppc64 the
|
||||
# default installed bootloader yaboot is also useed to make the bootable ISO image.
|
||||
|
||||
# Required for HTML user guide
|
||||
BuildRequires: asciidoctor
|
||||
|
||||
### Mandatory dependencies:
|
||||
Requires: binutils
|
||||
Requires: ethtool
|
||||
Requires: gzip
|
||||
Requires: iputils
|
||||
Requires: parted
|
||||
Requires: tar
|
||||
Requires: openssl
|
||||
Requires: gawk
|
||||
Requires: attr
|
||||
Requires: bc
|
||||
Requires: iproute
|
||||
Requires: genisoimage
|
||||
%if 0%{?rhel}
|
||||
Requires: util-linux
|
||||
%endif
|
||||
|
||||
%description
|
||||
Relax-and-Recover is the leading Open Source disaster recovery and system
|
||||
migration solution. It comprises of a modular
|
||||
frame-work and ready-to-go workflows for many common situations to produce
|
||||
a bootable image and restore from backup using this image. As a benefit,
|
||||
it allows to restore to different hardware and can therefore be used as
|
||||
a migration tool as well.
|
||||
|
||||
Currently Relax-and-Recover supports various boot media (incl. ISO, PXE,
|
||||
OBDR tape, USB or eSATA storage), a variety of network protocols (incl.
|
||||
sftp, ftp, http, nfs, cifs) as well as a multitude of backup strategies
|
||||
(incl. IBM TSM, MircroFocus Data Protector, Symantec NetBackup, EMC NetWorker,
|
||||
Bacula, Bareos, BORG, Duplicity, rsync).
|
||||
|
||||
Relax-and-Recover was designed to be easy to set up, requires no maintenance
|
||||
and is there to assist when disaster strikes. Its setup-and-forget nature
|
||||
removes any excuse for not having a disaster recovery solution implemented.
|
||||
|
||||
Professional services and support are available.
|
||||
|
||||
#-- PREP, BUILD & INSTALL -----------------------------------------------------#
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
# build HTML user guide
|
||||
make doc
|
||||
|
||||
%install
|
||||
%{make_install}
|
||||
install -p -d %{buildroot}%{_docdir}/%{name}/
|
||||
install -m 0644 %{SOURCE1} %{buildroot}%{_docdir}/%{name}/
|
||||
install -m 0644 %{SOURCE2} %{buildroot}%{_docdir}/%{name}/
|
||||
install -m 0644 %{SOURCE3} %{buildroot}%{_docdir}/%{name}/
|
||||
|
||||
#-- FILES ---------------------------------------------------------------------#
|
||||
%files
|
||||
%doc MAINTAINERS COPYING README.adoc doc/*.txt doc/user-guide/*.html
|
||||
%doc %{_mandir}/man8/rear.8*
|
||||
%doc %{_docdir}/%{name}/rear.*
|
||||
%config(noreplace) %{_sysconfdir}/rear/
|
||||
%{_datadir}/rear/
|
||||
%{_sharedstatedir}/rear/
|
||||
%{_sbindir}/rear
|
||||
|
||||
#-- CHANGELOG -----------------------------------------------------------------#
|
||||
%changelog
|
||||
* Wed Sep 23 2020 Christopher Engelhard <ce@lcts.de> - 2.6-3
|
||||
- Stop auto-creating a cronjob, but ship example cronjob/
|
||||
systemd timer units in docdir instead (upstream issue #1829)
|
||||
- Build & ship HTML user guide
|
||||
- Remove %pre scriptlet, as it was introduced only to fix a
|
||||
specific upgrade issue with v1.15 in 2014
|
||||
|
||||
* Tue Sep 22 2020 Christopher Engelhard <ce@lcts.de> - 2.6-2
|
||||
- Backport upstream PR#2469 to fix RHBZ #1831311
|
||||
|
||||
* Tue Sep 22 2020 Christopher Engelhard <ce@lcts.de> - 2.6-1
|
||||
- Update to 2.6
|
||||
- Streamline & clean up spec file
|
||||
|
||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Thu Jul 30 2015 Johannes Meixner <jsmeix@suse.de>
|
||||
- For a changelog see the rear-release-notes.txt file.
|
||||
|
10
rear.timer
Normal file
10
rear.timer
Normal file
@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Update ReaR rescue image
|
||||
|
||||
[Timer]
|
||||
OnCalendar=daily
|
||||
RandomizedDelaySec=1h
|
||||
Persistent=true
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
Loading…
Reference in New Issue
Block a user