summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNiels de Vos <ndevos@redhat.com>2013-05-22 16:20:36 +0200
committerAnand Avati <avati@redhat.com>2013-05-22 12:20:46 -0700
commit323fe9ec806a4a922fc6f3fd2389368811d6b417 (patch)
treef773cf524e2075c24376578fc90b5357e4aab643
parent4df7a3c4888fbf1e1f84246aeac92af396879ce5 (diff)
rpm: automatically load the fuse module on EL5
The fuse module needs to be loaded before /dev/fuse can be used. On RHEL6 and Fedora the module is loaded on demand. RHEL5 needs to load the module manually. This change add a script under /etc/sysconfig/modules/ that loads the fuse module on boot and packages it in the EL5 version of glusterfs-fuse. One of the features of GlusterFS is to not depend on additional fuse userspace. The conditional requires on /usr/bin/fusermount is not needed, this command is never called in the current version (even though is it referenced in the sources). Change-Id: I77028dade54771cb49cea68a517100f73763dc85 BUG: 947830 Signed-off-by: Niels de Vos <ndevos@redhat.com> Reviewed-on: http://review.gluster.org/5070 Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@redhat.com>
-rw-r--r--extras/init.d/Makefile.am2
-rwxr-xr-xextras/init.d/rhel5-load-fuse.modules7
-rw-r--r--glusterfs.spec.in11
3 files changed, 16 insertions, 4 deletions
diff --git a/extras/init.d/Makefile.am b/extras/init.d/Makefile.am
index 66715f4314a..7c26a0e8e2b 100644
--- a/extras/init.d/Makefile.am
+++ b/extras/init.d/Makefile.am
@@ -1,5 +1,5 @@
-EXTRA_DIST = glusterd-Debian glusterd-Redhat glusterd-SuSE glusterd.plist
+EXTRA_DIST = glusterd-Debian glusterd-Redhat glusterd-SuSE glusterd.plist rhel5-load-fuse.modules
CLEANFILES =
diff --git a/extras/init.d/rhel5-load-fuse.modules b/extras/init.d/rhel5-load-fuse.modules
new file mode 100755
index 00000000000..ee194db99b8
--- /dev/null
+++ b/extras/init.d/rhel5-load-fuse.modules
@@ -0,0 +1,7 @@
+#!/bin/sh
+#
+# fusermount-glusterfs requires the /dev/fuse character device. The fuse module
+# provides this and is loaded on demand in newer Linux distributions.
+#
+
+[ -c /dev/fuse ] || /sbin/modprobe fuse
diff --git a/glusterfs.spec.in b/glusterfs.spec.in
index 0f300f69431..f795444da6d 100644
--- a/glusterfs.spec.in
+++ b/glusterfs.spec.in
@@ -193,9 +193,6 @@ Group: Applications/File
BuildRequires: fuse-devel
Requires: %{name} = %{version}-%{release}
-%if ! 0%{?_with_fusermount}
-Requires: /usr/bin/fusermount
-%endif
Obsoletes: %{name}-client < %{version}-%{release}
Provides: %{name}-client = %{version}-%{release}
@@ -325,6 +322,11 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%{__rm} -f %{buildroot}%{_sysconfdir}/init.d/glusterd
%endif
+%if 0%{?rhel} && 0%{?rhel} <= 5
+%{__install} -D -p -m 0755 extras/init.d/rhel5-load-fuse.modules \
+ %{buildroot}%{_sysconfdir}/sysconfig/modules/glusterfs-fuse.modules
+%endif
+
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterd
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfs
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfsd
@@ -483,6 +485,9 @@ fi
%if 0%{!?_without_fusermount:1}
%{_bindir}/fusermount-glusterfs
%endif
+%if 0%{?rhel} && 0%{?rhel} <= 5
+%{_sysconfdir}/sysconfig/modules/glusterfs-fuse.modules
+%endif
%files server
%defattr(-,root,root,-)