0

Followed sonarqube setup instructions from below link. But executing chkconfig command failed. It is blocking me to start the sonarqube as service in centos7.

http://docs.sonarqube.org/display/SONAR/Running+SonarQube+as+a+Service+on+Linux

http://devopscube.com/setup-and-configure-sonarqube-on-linux/

[build@inches-jenkins-master ~]$ cat /etc/init.d/sonar
#! /usr/bin/sh

/usr/bin/sonar $*

[build@inches-jenkins-master ~]$ which sh
/usr/bin/sh

[build@inches-jenkins-master ~]$ ls -lrt /usr/bin/sonar
lrwxrwxrwx. 1 root root 50 Aug 30 16:59 /usr/bin/sonar -> /usr/local/sonarqube-6.0/bin/linux-x86-64/sonar.sh

[build@inches-jenkins-master init.d]$ sudo chkconfig --add sonar
service sonar does not support chkconfig

No issues while starting manually.

[build@inches-jenkins-master init.d]$ sudo sonar start
Starting SonarQube...
Started SonarQube.
[build@inches-jenkins-master init.d]$
4

1 回答 1

1

your /etc/init.d/sonar file is incorrect, it should be :

#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO

/usr/bin/sonar $*

I just tested it on CentOS 7.2 box and it works out of the box :

wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.0.zip
unzip sonarqube-6.0.zip
sudo mv sonarqube-6.0 /opt
sudo ln -s /opt/sonarqube-6.0/bin/linux-x86-64/sonar.sh /usr/bin/sonar
sudo tee /etc/init.d/sonar <<-'EOF'
#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO

/usr/bin/sonar $*

EOF

sudo chmod 755 /etc/init.d/sonar
# Enable sonar service
sudo chkconfig --add sonar

# Start service (systemd delegate to initd)
sudo service sonar start
# Stop service (systemd delegate to initd)
sudo service sonar stop
# Check Sonarqube log
sudo tail -3 /opt/sonarqube-6.0/logs/sonar.log
于 2016-08-30T15:57:16.683 回答