<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Why not download the matching kernel and Lustre RPMs together? I would recommend RHEL8 servers as the most stable, RHEL9 hasn't been run for very long as a Lustre server.<br class="">
<div><br class="">
<blockquote type="cite" class="">
<div class="">On Jan 5, 2024, at 02:41, Jan Andersen <<a href="mailto:jan@comind.io" class="">jan@comind.io</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div class="">Hi Xinliang and Andreas,<br class="">
<br class="">
Thanks for helping with this!<br class="">
<br class="">
I tried out your suggestions, and it compiled fine; however, things had become quite messy on the server, so I decided to reinstall the Rocky 8.8 and start over. Again, lustre built successfully, but for some reason, when you download the source code package
from the repository, you get a slightly different version from the kernel's, with the result that lustre places its modules in a place the running kernel can't find.<br class="">
<br class="">
So I built the kernel from source with the correct version, rebooted, cloned lustre again, ./configured etc, and now:<br class="">
<br class="">
[root@mds lustre-release]# make<br class="">
make all-recursive<br class="">
make[1]: Entering directory '/root/lustre-release'<br class="">
Making all in ldiskfs<br class="">
make[2]: Entering directory '/root/lustre-release/ldiskfs'<br class="">
make[2]: *** No rule to make target '../ldiskfs/kernel_patches/series/ldiskfs-', needed by 'sources'. Stop.<br class="">
make[2]: Leaving directory '/root/lustre-release/ldiskfs'<br class="">
make[1]: *** [autoMakefile:680: all-recursive] Error 1<br class="">
make[1]: Leaving directory '/root/lustre-release'<br class="">
make: *** [autoMakefile:546: all] Error 2<br class="">
<br class="">
Which I don't quite understand, because I still have all the necessary packages and tools from before.<br class="">
<br class="">
Before I barge ahead and try yet another permutation, do you have any advice so I might avoid problems? I can reinstall the OS, which will be a bit of a pain, but not that bad - but then which version; 8.8 or 8.9, or even 9? Or is there a simplish thing I can
do to avoid all that?<br class="">
<br class="">
/jan<br class="">
<br class="">
On 03/01/2024 02:17, Xinliang Liu wrote:<br class="">
<blockquote type="cite" class="">On Wed, 3 Jan 2024 at 10:08, Xinliang Liu <<a href="mailto:xinliang.liu@linaro.org" class="">xinliang.liu@linaro.org</a> <<a href="mailto:xinliang.liu@linaro.org" class="">mailto:xinliang.liu@linaro.org</a>>> wrote:<br class="">
Hi Jan,<br class="">
On Tue, 2 Jan 2024 at 22:29, Jan Andersen <<a href="mailto:jan@comind.io" class="">jan@comind.io</a> <<a href="mailto:jan@comind.io" class="">mailto:jan@comind.io</a>>> wrote:<br class="">
I have installed Rocky 8.8 on a new server (Dell PowerEdge R640):<br class="">
[root@mds 4.18.0-513.9.1.el8_9.x86_64]# cat /etc/*release*<br class="">
Rocky Linux release 8.8 (Green Obsidian)<br class="">
NAME="Rocky Linux"<br class="">
VERSION="8.8 (Green Obsidian)"<br class="">
ID="rocky"<br class="">
ID_LIKE="rhel centos fedora"<br class="">
VERSION_ID="8.8"<br class="">
PLATFORM_ID="platform:el8"<br class="">
PRETTY_NAME="Rocky Linux 8.8 (Green Obsidian)"<br class="">
ANSI_COLOR="0;32"<br class="">
LOGO="fedora-logo-icon"<br class="">
CPE_NAME="cpe:/o:rocky:rocky:8:GA"<br class="">
HOME_URL="<a href="https://rockylinux.org/" class="">https://rockylinux.org/</a> <<a href="https://rockylinux.org/" class="">https://rockylinux.org/</a>>"<br class="">
BUG_REPORT_URL="<a href="https://bugs.rockylinux.org/" class="">https://bugs.rockylinux.org/</a> <<a href="https://bugs.rockylinux.org/" class="">https://bugs.rockylinux.org/</a>>"<br class="">
SUPPORT_END="2029-05-31"<br class="">
ROCKY_SUPPORT_PRODUCT="Rocky-Linux-8"<br class="">
ROCKY_SUPPORT_PRODUCT_VERSION="8.8"<br class="">
REDHAT_SUPPORT_PRODUCT="Rocky Linux"<br class="">
REDHAT_SUPPORT_PRODUCT_VERSION="8.8"<br class="">
Rocky Linux release 8.8 (Green Obsidian)<br class="">
Rocky Linux release 8.8 (Green Obsidian)<br class="">
Derived from Red Hat Enterprise Linux 8.8<br class="">
Rocky Linux release 8.8 (Green Obsidian)<br class="">
cpe:/o:rocky:rocky:8:GA<br class="">
I downloaded the kernel source (I don't remember the exact command):<br class="">
[root@mds 4.18.0-513.9.1.el8_9.x86_64]# ll /usr/src/kernels<br class="">
total 8<br class="">
drwxr-xr-x. 24 root root 4096 Jan 2 13:49 4.18.0-513.9.1.el8_9.x86_64/<br class="">
drwxr-xr-x. 23 root root 4096 Jan 2 11:41 4.18.0-513.9.1.el8_9.x86_64+debug/<br class="">
Copied the config from /boot and ran:<br class="">
yes "" | make oldconfig<br class="">
After that I cloned the Lustre source and configured (according to my notes):<br class="">
git clone <a href="git://git.whamcloud.com/fs/lustre-release.git" class="">
git://git.whamcloud.com/fs/lustre-release.git</a> <<a href="http://git.whamcloud.com/fs/lustre-release.git" class="">http://git.whamcloud.com/fs/lustre-release.git</a>><br class="">
cd lustre-release<br class="">
git checkout 2.15.3<br class="">
dnf install libtool<br class="">
dnf install flex<br class="">
dnf install bison<br class="">
dnf install openmpi-devel<br class="">
dnf install python3-devel<br class="">
dnf install python3<br class="">
dnf install kernel-devel kernel-headers<br class="">
dnf install elfutils-libelf-devel<br class="">
dnf install keyutils keyutils-libs-devel<br class="">
dnf install libmount<br class="">
dnf --enablerepo=powertools install libmount-devel<br class="">
dnf install libnl3 libnl3-devel<br class="">
dnf config-manager --set-enabled powertools<br class="">
dnf install libyaml-devel<br class="">
dnf install patch<br class="">
dnf install e2fsprogs-devel<br class="">
dnf install kernel-core<br class="">
dnf install kernel-modules<br class="">
dnf install rpm-build<br class="">
dnf config-manager --enable devel<br class="">
dnf config-manager --enable powertools<br class="">
dnf config-manager --set-enabled ha<br class="">
dnf install kernel-debuginfo<br class="">
sh autogen.sh<br class="">
./configure<br class="">
This appeared to finish without errors:<br class="">
...<br class="">
config.status: executing libtool commands<br class="">
CC: gcc<br class="">
LD: /usr/bin/ld -m elf_x86_64<br class="">
CPPFLAGS: -include /root/lustre-release/undef.h -include /root/lustre-release/config.h -I/root/lustre-release/lnet/include/uapi -I/root/lustre-release/lustre/include/uapi -I/root/lustre-release/libcfs/include -I/root/lustre-release/lnet/utils/ -I/root/lustre-release/lustre/include<br class="">
CFLAGS: -g -O2 -Wall -Werror<br class="">
EXTRA_KCFLAGS: -include /root/lustre-release/undef.h -include /root/lustre-release/config.h -g -I/root/lustre-release/libcfs/include -I/root/lustre-release/libcfs/include/libcfs -I/root/lustre-release/lnet/include/uapi -I/root/lustre-release/lnet/include
-I/root/lustre-release/lustre/include/uapi -I/root/lustre-release/lustre/include -Wno-format-truncation -Wno-stringop-truncation -Wno-stringop-overflow<br class="">
Type 'make' to build Lustre.<br class="">
However, when I run make:<br class="">
[root@mds lustre-release]# make<br class="">
make all-recursive<br class="">
make[1]: Entering directory '/root/lustre-release'<br class="">
Making all in ldiskfs<br class="">
make[2]: Entering directory '/root/lustre-release/ldiskfs'<br class="">
make[2]: *** No rule to make target '../ldiskfs/kernel_patches/series/ldiskfs-', needed by 'sources'. Stop.<br class="">
This looks like it can't detect the ldiskfs-4.18-rhel8.8.series property. Most probably the ext4 kernel source rpm (kernel-debuginfo-common-x86_64) hasn't been installed yet.<br class="">
And like Andreas said try latest 2.15.4.<br class="">
Best,<br class="">
Xinliang<br class="">
make[2]: Leaving directory '/root/lustre-release/ldiskfs'<br class="">
make[1]: *** [autoMakefile:649: all-recursive] Error 1<br class="">
make[1]: Leaving directory '/root/lustre-release'<br class="">
make: *** [autoMakefile:521: all] Error 2<br class="">
Alternatively, I tried make rpms which results in:<br class="">
...<br class="">
rpmbuilddir=`mktemp -t -d rpmbuild-lustre-$USER-XXXXXXXX`; \<br class="">
make \<br class="">
rpmbuilddir="$rpmbuilddir" rpm-local || exit 1; \<br class="">
cp ./rpm/* .; \<br class="">
/usr/bin/rpmbuild \<br class="">
--define "_tmppath $rpmbuilddir/TMP" \<br class="">
--define "_topdir $rpmbuilddir" \<br class="">
--define "dist %{nil}" \<br class="">
-ts lustre-2.15.3.tar.gz || exit 1; \<br class="">
cp $rpmbuilddir/SRPMS/lustre-2.15.3-*.src.rpm . || exit 1; \<br class="">
rm -rf $rpmbuilddir<br class="">
make[1]: Entering directory '/root/lustre-release'<br class="">
make[1]: Leaving directory '/root/lustre-release'<br class="">
error: line 239: Dependency tokens must begin with alpha-numeric, '_' or '/': BuildRequires: %kernel_module_package_buildreqs<br class="">
And this might caused by lacking of rpm kernel-rpm-macros.<br class="">
Usually, sudo dnf builddep -y lustre.spec should install all the build required RPMs.<br class="">
make: *** [autoMakefile:1237: srpm] Error 1<br class="">
So, I'm stuck - it seems this is something I do a lot; how do I move forward from here?<br class="">
_______________________________________________<br class="">
lustre-discuss mailing list<br class="">
<a href="mailto:lustre-discuss@lists.lustre.org" class="">lustre-discuss@lists.lustre.org</a> <<a href="mailto:lustre-discuss@lists.lustre.org" class="">mailto:lustre-discuss@lists.lustre.org</a>><br class="">
<a href="http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org" class="">http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org</a> <<a href="http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org" class="">http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org</a>><br class="">
</blockquote>
_______________________________________________<br class="">
lustre-discuss mailing list<br class="">
<a href="mailto:lustre-discuss@lists.lustre.org" class="">lustre-discuss@lists.lustre.org</a><br class="">
http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org<br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
<div class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div>Cheers, Andreas</div>
<div>--</div>
<div>Andreas Dilger</div>
<div>Lustre Principal Architect</div>
<div>Whamcloud</div>
<div><br class="">
</div>
<div><br class="">
</div>
<div><br class="">
</div>
</div>
</div>
</div>
</div>
</div>
<br class="Apple-interchange-newline">
</div>
<br class="Apple-interchange-newline">
<br class="Apple-interchange-newline">
</div>
<br class="">
</body>
</html>