47 lines
1.1 KiB
Text
47 lines
1.1 KiB
Text
#!/sbin/openrc-run
|
|
# Copyright 1999-2019 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
description="Load lustre modules"
|
|
|
|
extra_commands="checkmodule"
|
|
|
|
depend() {
|
|
need lnet
|
|
before netmount
|
|
}
|
|
|
|
checkmodule() {
|
|
local LOADED="$(lctl modules | awk -F"/" /lustre/'{print $2F}')"
|
|
for mod in ${LOADED[@]}; do
|
|
ewarn "Module is still loaded: ${mod}"
|
|
eend $*
|
|
done
|
|
}
|
|
|
|
start() {
|
|
if [ "${RC_CMD}" = "restart" ];
|
|
then
|
|
einfo "Restarting Lustre..."
|
|
checkmodule
|
|
fi
|
|
|
|
ebegin "Loading Lustre modules..."
|
|
modprobe lustre
|
|
eend $*
|
|
}
|
|
|
|
stop() {
|
|
local LMODULES=( "lustre" "osc" "mgc" "lmv" "fld" "mdc" "fid" "lov" "ptlrpc" )
|
|
ebegin "Trying to unmount all Lustre fs"
|
|
umount -a -t lustre
|
|
eend $*
|
|
einfo "Unloading lustre modules:"
|
|
for mod in ${LMODULES[@]}; do
|
|
ebegin "... ${mod}"
|
|
modprobe -r ${mod}
|
|
eend $*
|
|
done
|
|
|
|
checkmodule
|
|
}
|