Building Lustre Client from Source - shawfdong/hyades GitHub Wiki

Here we document the steps we took to rebuild the Lustre client 2.5.34.1 on Hyades:

Table of Contents

Build RPMs

# rpm -ivh /tmp/lustre-client-source-2.5.34.1-2.6.32_504.16.2.el6.x86_64.x86_64.rpm
# cd /usr/src/lustre-2.5.34.1
# ./configure
# make rpms
which produced a few RPMs in /root/rpmbuild.

Install RPMs

# cd /root/rpmbuild/RPMS/x86_64
# rpm -ivh lustre-client-2.5.34.1-2.6.32_504.16.2.el6.x86_64.x86_64.rpm lustre-client-modules-2.5.34.1-2.6.32_504.16.2.el6.x86_64.x86_64.rpm lustre-client-tests-2.5.34.1-2.6.32_504.16.2.el6.x86_64.x86_64.rpm lustre-iokit-2.5.34.1-2.6.32_504.16.2.el6.x86_64.x86_64.rpm
Preparing...                ########################################### [100%]
   1:lustre-client-modules  ########################################### [ 25%]
   2:lustre-client          ########################################### [ 50%]
   3:lustre-iokit           ########################################### [ 75%]
   4:lustre-client-tests    ########################################### [100%]

Mount Lustre

# mkdir /pfs
# mount -t lustre 10.8.8.5@o2ib0:10.8.8.4@o2ib0:/pfs /pfs
mount.lustre: mount 10.8.8.5@o2ib0:10.8.8.4@o2ib0:/pfs at /pfs failed: No such file or directory
Is the MGS specification correct?
Is the filesystem name correct?
If upgrading, is the copied client log valid? (see upgrade docs)

But if we stop the lnet service, then it can work:

# /etc/init.d/lnet stop
# mount -t lustre 10.8.8.5@o2ib0:10.8.8.4@o2ib0:/pfs /pfs

Lustre Client

In Lustre verion 2.x, unlike in older versions (e.g. 1.8.9), /etc/passwd & /etc/group must be synced between Lustre clients and Lustre MDS. Otherwise one would get "Permission denied" error on the clients.

Rebuild Lustre client 1.8.9

Rebuilding Lustre client from a source RPM is slightly different. For example, to rebuild the older Lustre client 1.8.9 from source RPM:

# rpmbuild --rebuild lustre-client-1.8.9-wc1_2.6.32_279.19.1.el6.x86_64.src.rpm 
# cd /root/rpmbuild/RPMS/x86_64
# ls
lustre-1.8.9-wc1_2.6.32_358.el6.x86_64.x86_64.rpm
lustre-modules-1.8.9-wc1_2.6.32_358.el6.x86_64.x86_64.rpm
lustre-source-1.8.9-wc1_2.6.32_358.el6.x86_64.x86_64.rpm
lustre-tests-1.8.9-wc1_2.6.32_358.el6.x86_64.x86_64.rpm
⚠️ **GitHub.com Fallback** ⚠️