mmbuildgpl command
Manages prerequisite packages for Linux and builds the GPFS portability layer.
Synopsis
mmbuildgpl [--quiet] [--build-package] [-v]
Availability
Available on all IBM Spectrum Scale editions. Available and needed only on Linux.
Description
Use the mmbuildgpl command to manage and verify prerequisite packages
for Linux and build the GPFS portability layer. If all packages are installed correctly,
mmbuildgpl builds the GPFS
portability layer. If any packages are missing, the package names are displayed. The missing
packages can be installed
manually.
Tip: You can configure a cluster to rebuild the GPL automatically
whenever a new level of the Linux kernel is installed or
whenever a new level of IBM Spectrum
Scale is installed. For more
information, see the description of the autoBuildGPL attribute in the topic
mmchconfig command.
Parameters
- --quiet
- Specifies that when there are any missing packages, the mmbuildgpl command installs the prerequisite packages automatically by using the default package manager.
- --build-package
- Builds an installable package (gpfs.gplbin) for the portability layer
binaries after compilation is successful. This option builds an RPM package on SLES and RHEL Linux and a Debian package on Debian and Ubuntu Linux.When the command finishes, it displays the location of the generated package as in the following examples:
orWrote: /root/rpmbuild/RPMS/x86_64/gpfs.gplbin-3.10.0-229.el7.x86_64-5.0.4-x.x86_64.rpm
Wrote: /tmp/deb/gpfs.gplbin-4.4.0-127-generic_5.0.4-x_amd64.deb
You can then copy the generated package to other machines for deployment. By default, the generated package can be deployed only to machines whose architecture, distribution level, Linux kernel, and IBM Spectrum Scale maintenance level are identical with those of the machine on which the gpfs.gplbin package was built. However, you can install the generated package on a machine with a different Linux kernel by setting theMM_INSTALL_ONLY
environment variable before you install the generated package. If you install the gpfs.gplbin package, you do not need to install the gpfs.gpl package.Note: During the package generation, temporary files are written to the /tmp/rpm or /tmp/deb directory, so be sure there is sufficient space available. By default, the generated package goes to /usr/src/packages/RPMS/<arch> for SUSE Linux Enterprise Server, /usr/src/redhat/RPMS/<arch> for Red Hat Enterprise Linux, and /tmp/deb for Ubuntu Linux.Important:- The GPFS portability layer is specific to both the current kernel and the GPFS version. If either the kernel or the GPFS version changes, a new GPFS portability layer needs to be built.
- Although operating system kernels might upgrade to a new version, they are not active until after a reboot. Thus, a GPFS portability layer for this new kernel must be built after a reboot of the operating system.
- Before you install a new GPFS portability layer, make sure to uninstall the prior version of the GPFS portability layer first.
- -v
- Specifies that the output is verbose and contains information for debugging purposes.
Exit status
- 0
- Successful completion.
- nonzero
- A failure has occurred.
Security
You must have root authority to run the mmbuildgpl command.
Examples
To build the GPFS portability
layer, issue the mmbuildgpl command with no parameters, as in the following
example:
# mmbuildgpl
--------------------------------------------------------
mmbuildgpl: Building GPL (5.0.3.0) module begins at Tue Mar 19 09:09:21 EDT 2019.
--------------------------------------------------------
Verifying Kernel Header...
kernel version = 31000229 (31000229000000, 3.10.0-229.el7.x86_64, 3.10.0-229)
module include dir = /lib/modules/3.10.0-229.el7.x86_64/build/include
module build dir = /lib/modules/3.10.0-229.el7.x86_64/build
kernel source dir = /usr/src/linux-3.10.0-229.el7.x86_64/include
Found valid kernel header file under /usr/src/kernels/3.10.0-229.el7.x86_64/include
Verifying Compiler...
make is present at /bin/make
cpp is present at /bin/cpp
gcc is present at /bin/gcc
g++ is present at /bin/g++
ld is present at /bin/ld
Verifying Additional System Headers...
Verifying kernel-headers is installed ...
Command: /bin/rpm -q kernel-headers
The required package kernel-headers is installed
make World ...
make InstallImages ...
--------------------------------------------------------
mmbuildgpl: Building GPL module completed successfully at Tue Mar 19 09:09:34 EDT 2019.
--------------------------------------------------------
See also
Location
/usr/lpp/mmfs/bin