
Ubuntu 16.10에서는 /etc/environment 파일에 시스템 전체 환경 변수를 설정했습니다. 변수는 수천 자 길이의 문자열입니다(문자열은 쉼표로 구분된 작은 알파 코드 목록임). 문제는 환경 변수가 잘린다는 것입니다.
X라는 변수를 사용하여 /etc/environment 파일의 내용을 생성하는 Python 코드:
fp = open('/etc/environment','w')
fp.write('X="' + ",".join([str(i) for i in range(2000)]) + '"')
fp.close()
쉘 로그아웃, 다시 로그인 및 환경 변수 표시
echo $X
내 컴퓨터에서 결과는 다음과 같습니다.
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49, 50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72
누군가 환경 변수에 대한 128K 제한에 대해 말했지만 내 변수의 길이는 상대적으로 작습니다. 왜 그것이 잘리고 더 중요한지 설명해 줄 수 있는 사람이 있습니까? 이 상황을 해결하려면 어떻게 해야 합니까?
편집: dpkg -l libpam-modules의 출력:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============================================-============================-============================-==================================================================================================
ii libpam-modules:amd64 1.1.8-3.2ubuntu2 amd64 Pluggable Authentication Modules for PAM
답변1
Mark가 제안한 것이 정확히 맞는지는 잘 모르겠지만 이제 다음 구문을 갖도록 /etc/environment 파일을 업데이트했습니다.
export X="1,2,..."
/etc/profile에 한 줄을 추가했습니다.
source /etc/environment
그것이 좋은 방법인지는 모르겠지만 작동합니다.