Tôi có một hành vi thú vị ở Jenkins.
Vỏ của Jenkins không sử dụng hệ thống của tôi.
Jenkins chạy như người dùng jenkins
trên hệ thống của tôi.
Đăng nhập như jenkins
thông qua SSH:
locale
hiển thị:
LANG = en_US.UTF-8
LANGUAGE = en_US: en
LC_CTYPE = "en_US.UTF-8"
v.v ...
env
chương trình LANG
và LANGUAGE
biến:
LANG = en_US.UTF-8
LANGUAGE = en_US: vi
id
hiển thị ID của người dùng:
uid = 1008 (jenkins) gid = ...
Đã nhập các lệnh trên vào một vỏ công việc jenkins:
locale
hiển thị:
LANG =
LANGUAGE =
LC_CTYPE = "POSIX",
v.v ...
env
không không hiển thị LANG
và LANGUAGE
biến
id
hiển thị ID của người dùng (như mong đợi):
uid = 1008 (jenkins) gid = ...
Tập tài liệu:
/etc/profile
chứa đựng:
xuất LANG = en_US.UTF-8
xuất LANGUAGE = en_US: en
/etc/default/locale
chứa đựng:
xuất LANG = en_US.UTF-8
xuất LANGUAGE = en_US: en
tập lệnh khởi động /etc/init.d/jenkins
nên xuất địa phương của hệ thống:
# môi trường tải
nếu [-r / etc / default / locale]; sau đó
. / etc / default / locale
xuất LANG LANGUAGE
elif [-r / etc / môi trường]; sau đó
. / etc / môi trường
xuất LANG LANGUAGE
fi
Tất nhiên tôi đã khởi động lại sau khi sửa đổi các ngôn ngữ;)
Apache cũng sử dụng các ngôn ngữ
của hệ thống Hệ thống của tôi là bản cài đặt Ubuntu 14.04.
Tôi đã bỏ lỡ để kiểm tra cái gì khác?
Cảm ơn bạn đã đọc!
Tôi hy vọng ai đó có thể giúp đỡ :)