!11 Upgrade to 2.6
From: @starlet-dx Reviewed-by: @wang--ge Signed-off-by: @wang--ge
This commit is contained in:
commit
8df4814527
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:
|
||||
BIN
rear-2.4.tar.gz
BIN
rear-2.4.tar.gz
Binary file not shown.
BIN
rear-2.6.tar.gz
Normal file
BIN
rear-2.6.tar.gz
Normal file
Binary file not shown.
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
|
||||
46
rear.spec
46
rear.spec
@ -1,15 +1,25 @@
|
||||
%define debug_package %{nil}
|
||||
|
||||
Name: rear
|
||||
Version: 2.4
|
||||
Release: 4
|
||||
Version: 2.6
|
||||
Release: 1
|
||||
License: GPLv3
|
||||
Summary: Relax-and-Recover is a setup-and-forget Linux bare metal disaster recovery solution
|
||||
URL: http://relax-and-recover.org/
|
||||
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
|
||||
# https://github.com/rear/rear/commit/df5e18b8d7c8359b48bc133bfa29734934d18160
|
||||
Patch0: 0001-skip-kernel-buildin-modules.patch
|
||||
ExclusiveArch: x86_64 loongarch64
|
||||
Requires: binutils ethtool gzip iputils parted tar openssl gawk attr bc crontabs iproute
|
||||
Requires: genisoimage util-linux syslinux
|
||||
Requires: genisoimage util-linux
|
||||
%ifarch x86_64 i686
|
||||
Requires: syslinux
|
||||
%endif
|
||||
BuildRequires: make asciidoctor
|
||||
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
||||
|
||||
%description
|
||||
@ -29,32 +39,44 @@ if [ $1 -gt 1 ] ; then
|
||||
fi
|
||||
|
||||
%prep
|
||||
%autosetup
|
||||
%autosetup -p1
|
||||
|
||||
sed -E -e "s:([\"' ])/lib:\1/usr/lib:g" \
|
||||
-i usr/share/rear/prep/GNU/Linux/*include*.sh
|
||||
|
||||
sed -e 's:/lib/:/usr/lib/:g' \
|
||||
-e 's:/lib\*/:/usr/lib\*/:g' \
|
||||
-e 's:/usr/usr/lib:/usr/lib:g' \
|
||||
-i 'usr/share/rear/conf/GNU/Linux.conf'
|
||||
|
||||
%build
|
||||
make doc
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
make install DESTDIR="%{buildroot}"
|
||||
echo "30 1 * * * root /usr/sbin/rear checklayout || /usr/sbin/rear mkrescue" > rear.cron
|
||||
install -Dp -m 0644 rear.cron %{buildroot}%{_sysconfdir}/cron.d/rear
|
||||
%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}/
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%files
|
||||
%doc MAINTAINERS COPYING README.adoc doc/*.txt
|
||||
%config(noreplace) %{_sysconfdir}/cron.d/rear
|
||||
%doc MAINTAINERS COPYING README.adoc doc/*.txt doc/user-guide/*.html
|
||||
%config(noreplace) %{_sysconfdir}/rear/
|
||||
%config(noreplace) %{_sysconfdir}/rear/cert/
|
||||
%doc %{_docdir}/%{name}/rear.*
|
||||
%{_datadir}/rear/
|
||||
%{_localstatedir}/lib/rear/
|
||||
%{_sharedstatedir}/rear/
|
||||
%{_sbindir}/rear
|
||||
|
||||
%files help
|
||||
%doc %{_mandir}/man8/rear.8*
|
||||
|
||||
%changelog
|
||||
* Tue Oct 17 2023 yaoxin <yao_xin001@hoperun.com> - 2.6-1
|
||||
- Upgrade to 2.6
|
||||
|
||||
* Tue Nov 15 2022 huajingyun <huajingyun@loongson.cn> - 2.4-4
|
||||
- Add loongarch64 support
|
||||
|
||||
|
||||
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…
x
Reference in New Issue
Block a user