diff --git a/redhat/apache-cassandra.spec b/redhat/apache-cassandra.spec index d23ab58cd7..a215b7905a 100644 --- a/redhat/apache-cassandra.spec +++ b/redhat/apache-cassandra.spec @@ -51,11 +51,15 @@ mkdir -p %{buildroot}/usr/share/%{username}/lib mkdir -p %{buildroot}/usr/share/%{username}/default.conf mkdir -p %{buildroot}/etc/%{username}/default.conf mkdir -p %{buildroot}/etc/rc.d/init.d/ +mkdir -p %{buildroot}/etc/security/limits.d/ +mkdir -p %{buildroot}/etc/default/ mkdir -p %{buildroot}/usr/sbin mkdir -p %{buildroot}/usr/bin cp -p conf/* %{buildroot}/etc/%{username}/default.conf cp -p conf/* %{buildroot}/usr/share/%{username}/default.conf cp -p redhat/%{username} %{buildroot}/etc/rc.d/init.d/ +cp -p redhat/%{username}.conf %{buildroot}/etc/security/limits.d/ +cp -p redhat/default %{buildroot}/etc/default/%{username} cp -p lib/*.jar %{buildroot}/usr/share/%{username}/lib mv redhat/cassandra.in.sh %{buildroot}/usr/share/%{username} rm bin/cassandra.in.sh @@ -90,6 +94,8 @@ fi %attr(755,root,root) %{_bindir}/* %attr(755,root,root) %{_sbindir}/cassandra %attr(755,root,root) /etc/rc.d/init.d/%{username} +%attr(755,root,root) /etc/default/%{username} +%attr(755,root,root) /etc/security/limits.d/%{username}.conf %attr(755,%{username},%{username}) /usr/share/%{username}* %attr(755,%{username},%{username}) %config(noreplace) /%{_sysconfdir}/%{username} %attr(755,%{username},%{username}) %config(noreplace) /var/lib/%{username}/* diff --git a/redhat/cassandra b/redhat/cassandra index 80b7c48a5d..83d5e0deea 100644 --- a/redhat/cassandra +++ b/redhat/cassandra @@ -14,10 +14,13 @@ export CASSANDRA_HOME=/usr/share/cassandra/ export CASSANDRA_INCLUDE=/usr/share/cassandra/cassandra.in.sh export CASSANDRA_CONF=/etc/cassandra/conf export CASSANDRA_OWNR=cassandra +NAME="cassandra" log_file=/var/log/cassandra/cassandra.log pid_file=/var/run/cassandra/cassandra.pid CASSANDRA_PROG=/usr/sbin/cassandra +# Read configuration variable file if it is present +[ -r /etc/default/$NAME ] && . /etc/default/$NAME case "$1" in start) diff --git a/redhat/cassandra.conf b/redhat/cassandra.conf new file mode 100644 index 0000000000..d8e680a703 --- /dev/null +++ b/redhat/cassandra.conf @@ -0,0 +1 @@ +cassandra - memlock unlimited diff --git a/redhat/cassandra.in.sh b/redhat/cassandra.in.sh index e03251dfeb..49b90e74d0 100644 --- a/redhat/cassandra.in.sh +++ b/redhat/cassandra.in.sh @@ -2,6 +2,9 @@ # The directory where Cassandra's configs live (required) CASSANDRA_CONF=/etc/cassandra/conf +# use JNA if installed in standard location +[ -r /usr/share/java/jna.jar ] && CLASSPATH="$CLASSPATH:/usr/share/java/jna.jar" + # The java classpath (required) CLASSPATH=$CLASSPATH:$CASSANDRA_CONF diff --git a/redhat/default b/redhat/default new file mode 100644 index 0000000000..1b56a980fd --- /dev/null +++ b/redhat/default @@ -0,0 +1,7 @@ +# NOTICE: See also /etc/cassandra/cassandra-env.sh + +# EXTRA_CLASSPATH provides the means to extend Cassandra's classpath with +# additional libraries. It is formatted as a colon-delimited list of +# class directories and/or jar files. For example, to enable the +# JMX-to-web bridge install libmx4j-java and uncomment the following. +#EXTRA_CLASSPATH="/usr/share/java/mx4j-tools.jar"