2015-06-25 25 views
0

我瘋了。CentOS上的Artifactory環境變量

/usr/lib/jvm/ 

java-1.7.0-openjdk-1.7.0.65.x86_64 
java-1.7.0-openjdk-1.7.0.79.x86_64 

昨晚在最不幸的可能時間,#65的內容,這artifactory的顯然使用,消失了。 Java消失了。也許它已經不存在了,但是新的Linux人員正在'升級'這臺機器,所以這是可疑的。現在

,這個問題是artifactory的不能忘記版本65.

如果我輸入envset,我們是金色的。沒有提到v65。但是手工藝品存在於它自己的世界中。

[[email protected]]# service artifactory check 
Checking arguments to Artifactory: 
ARTIFACTORY_HOME  = /var/opt/jfrog/artifactory 
ARTIFACTORY_USER  = artifactory 
TOMCAT_HOME   = /opt/jfrog/artifactory/tomcat 
ARTIFACTORY_PID  = /var/opt/jfrog/run/artifactory.pid 
JAVA_HOME   = 
JAVA_OPTIONS   = -server -Xms512m -Xmx2g -Xss256k -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+UseG1GC 

[[email protected]]# service artifactory start 
Starting Artifactory tomcat as user artifactory... 
Max number of open files: 32000 
Using ARTIFACTORY_HOME: /var/opt/jfrog/artifactory 
Using ARTIFACTORY_PID: /var/opt/jfrog/run/artifactory.pid 
Using CATALINA_BASE: /opt/jfrog/artifactory/tomcat 
Using CATALINA_HOME: /opt/jfrog/artifactory/tomcat 
Using CATALINA_TMPDIR: /opt/jfrog/artifactory/tomcat/temp 
Using JRE_HOME:  /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre 
Using CLASSPATH:  /opt/jfrog/artifactory/tomcat/bin/bootstrap.jar:/opt/jfrog/artifactory/tomcat/bin/tomcat-juli.jar 
Using CATALINA_PID: /var/opt/jfrog/run/artifactory.pid 

envset顯示

JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64 
JRE_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64/jre 

PATH是正確的了。 ls -l顯示

lrwxrwxrwx 1 root root 34 Jun 24 22:38 java-1.7.0-openjdk.x86_64 -> java-1.7.0-openjdk-1.7.0.79.x86_64 

因此它指向正確的地方。在地獄裏哪裏是獲得65的神器用戶?如果我嘗試su artifactory,我會去bash-4.1$表明artifactory不是傳統意義上的用戶,但即使如此,env和set也是正確的。

我終於設法讓它工作妥協。

/opt/jfrog/artifactory/bin 

我編輯artifactory.default,把我出口JAVA_HOME在那裏,並從該文件夾啓動artifactory的,而不是作爲一個服務。直到下一次Linux團隊搞砸我的服務器時,纔會這樣做。

但任何人都知道如何讓它作爲服務運行?

回答

2

查看/etc/init.d/artifactory,它是在您調用「service artifactory ...」時運行的腳本 - 它看起來像是那裏的某個東西(可能是另一個腳本來源)是將JRE_HOME設置爲舊版本。

您也可以嘗試

sudo su - artifactory; env | grep JRE 

,以確保該artifactory的用戶的環境中沒有設置JRE_HOME舊版本。

+0

有沒有什麼可疑的/etc/init.d/artifactory 。我確實在/etc/profile.d/java.sh下找到了一個在哪裏設置了JAVA_HOME和JRE_HOME的問題。現在,當我嘗試啓動服務時,我獲得了正確的JRE_HOME,但「SQL數據更改不允許用於只讀連接,用戶或數據庫」。嗯。任何想法? – djb

+0

這聽起來像您配置Artifactory使用的MySQL用戶沒有Artifactory數據庫的寫入權限。看看http://www.jfrog.com/confluence/display/RTF/MySQL,並確保你已經運行了該頁面上提到的GRANT命令。 –

1

我以後有類似的問題。安裝Artifactory 5.3.2和幾個月後,我的Linux服務器上運行yum更新。我看到了msg:「錯誤artifactory tomcat服務器沒有在60秒內啓動」這個問題發生在我運行yum更新之後。該更新影響了我的Java版本,如下所述。

驗證錯誤日誌

vi /var/opt/jfrog/artifactory/logs/catalina.out 

- > /opt/jfrog/artifactory/tomcat/bin/catalina.sh:線433:/usr/lib/jvm/java-1.8.0-openjdk- 1.8.0.121-0.b13.el7_3。x86_64的/斌/ java的:沒有這樣的文件或目錄

vi /opt/jfrog/artifactory/tomcat/bin/catalina.sh 
export JRE_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64 
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64 
cd /opt/jfrog/artifactory/tomcat/bin/ 

重啓卡塔利娜

./catalina.sh 

artifactory的將重新啓動,並應顯示更新JRE_HOME