
Unter Ubuntu 16.10 habe ich eine systemweite Umgebungsvariable in der Datei /etc/environment festgelegt. Die Variable ist eine Zeichenfolge mit einer Länge von Tausenden von Zeichen (die Zeichenfolge ist eine durch Kommas getrennte Liste kleiner alphanumerischer Codes). Das Problem besteht darin, dass die Umgebungsvariable abgeschnitten wird.
Python-Code zum Generieren des Inhalts der Datei /etc/environment mit einer Variablen namens X:
fp = open('/etc/environment','w')
fp.write('X="' + ",".join([str(i) for i in range(2000)]) + '"')
fp.close()
Shell abmelden, erneut anmelden und Umgebungsvariable anzeigen
echo $X
Auf meinem Computer ist das Ergebnis:
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
Jemand hat mir von einer 128-KB-Begrenzung für Umgebungsvariablen erzählt, aber meine Variable ist relativ kurz. Kann mir jemand erklären, warum sie abgeschnitten wird und, noch wichtiger, was ich tun kann, um Abhilfe zu schaffen?
BEARBEITEN: Ausgabe von 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
Antwort1
Ich bin nicht sicher, ob es genau das ist, was Mark vorgeschlagen hat, aber ich habe meine Datei /etc/environment aktualisiert, sodass sie jetzt die folgende Syntax hat:
export X="1,2,..."
und ich habe eine Zeile in /etc/profile hinzugefügt:
source /etc/environment
Ich weiß nicht, ob das der richtige Weg ist, aber es funktioniert.