2013-03-28 49 views
18

Làm thế nào tôi có thể thay đổi vị trí nơi jenkins lưu trữ dữ liệu tạm thời trong các nô lệ của nó. Hiện nay, nó tắt kết nối đến những người nô lệ của tôi, vì nó than phiền về những điều sauLàm thế nào để thay đổi vị trí thư mục `/ tmp` jenkins?

Disk space is too low. Only 0.119GB left on /tmp. 

Tôi muốn di chuyển vị trí tmpdir một cái gì đó giống như /var/tmp/ thay vì /tmp. Làm thế nào tôi có thể làm điều đó?

Trả lời

1

Bạn có thể sử dụng Java Service Wrapper. Và cấu hình wrapper của bạn (tìm ví dụ)

wrapper.java.additional.2=-Djava.io.tmpdir=../tmp 

Hoặc bạn có thể tạo liên kết tượng trưng /var/tmp thư mục và đưa vào Jenkins nhà daemon.

18

Chỉ cần thêm "-Djava.io.tmpdir =/path/to/tmp" vào tùy chọn dòng lệnh java (bạn không cần bất kỳ trình bao bọc dịch vụ bổ sung nào).

Tùy thuộc vào quá trình cài đặt của bạn, có thể có tập lệnh khởi động và/hoặc tệp cấu hình hiện có mà điều này có thể thực hiện. Trên hệ thống fedora của tôi, tôi có thể thêm tùy chọn vào/etc/sysconfig/Jenkins file:

## Type:  string 
## Default:  "-Djava.awt.headless=true" 
## ServiceRestart: jenkins 
# 
# Options to pass to java when running Jenkins. 
# 
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Djava.io.tmpdir=/var/tmp" 
+0

Trên Windows có một tệp jenkins.xml trong thư mục cài đặt mà bạn có thể thêm tùy chọn dòng lệnh. – Dormouse

+0

Nó dường như không tôn trọng điều này. Tôi đặt rằng trong/etc/sysconfig/jenkins trên CentOS7 nhưng nó vẫn bị treo ra cố gắng để thực hiện các tập tin trong/tmp vẫn còn. – seeafish

1

Chạy trên FreeBSD, bạn có thể cấu hình các thư mục tạm bằng cách thêm dòng này để /etc/rc.conf của bạn:

jenkins_java_opts="-Djava.io.tmpdir=/var/tmp" 
5

Trên một máy debian/ubuntu, thêm dòng sau vào file /etc/default/jenkins:

# use a different tmpdir for jenkins 
JAVA_ARGS="$JAVA_ARGS -Djava.io.tmpdir=/var/tmp/" 
1

Khi Jenkins được gói, ví dụ: bootstrapped như một dịch vụ cửa sổ, thêm cấu hình cho% JENKINS_HOME% \ jenkins.xml <arguments> yếu tố hoặc trên một nô lệ,% JENKINS_HOME% \ Jenkins-slave.xml

0

Trên một nô lệ, bạn có thể chỉ cần thêm nó vào nô lệ tham số tiên tiến trong Jenkins -Djava.io.tmpdir =/var/tmp/

0

thông tin tương tự như câu trả lời khác nhưng hỗ trợ bài viết chính thức từ CloudBees regading lỗi JNA trên Jenkins Thạc sĩ (mặc dù cùng áp dụng cho Jenkins Nodes):

https://support.cloudbees.com/hc/en-us/articles/215281717-Jenkins-fails-to-start-with-JNA-error

Để thay đổi thời gian thư mục ry rằng Jenkins sử dụng, bạn cần phải:

  • thêm -Djava.io.tmpdir=$JENKINS_HOME/tmp vào JENKINS_JAVA_OPTIONS biến trong cả hai /etc/sysconfig/jenkins hoặc /etc/default/jenkins tập tin tùy thuộc vào hệ điều hành của bạn
  • tạo /var/lib/jenkins/tmp sử dụng người dùng Unix chạy quá trình Jenkins
Các vấn đề liên quan