环境变量-Linux将它们存储在哪里,如何更改它们,这样做安全吗?


13

我正在尝试从源代码在我的开发机上配置旧版本的gcc的构建。该文档重点介绍了需要更改的几个环境变量才能执行此操作。我想知道如何执行此操作,以及Linux在哪里存储它们以及是否需要重新启动系统才能注册任何更改?


您可以列出需要更改的环境变量吗?
Hashken

Answers:


14

系统的全局环境变量存储在中/etc/environment
此处的任何更改都会在整个系统中反映出来,并将影响系统的所有用户。另外,您需要重新启动才能使此处所做的任何更改生效。

用户级环境变量主要存储在Home文件夹中,.bashrc并且.profile文件位于Home文件夹中。此处的更改仅影响该特定用户。只需关闭并打开终端以进行配置更改即可。

编辑:如果您不想重新启动或重新启动终端,则可以使用source命令。
例如。source /etc/environment要么source .bashrc


4
您不需要重新启动。您可以在更改后使用source命令加载变量。例如:来源/ etc / environment或来源.bashrc
Manula Waidyanatha 2012年

对于您尝试做的事情,改变 .profile不正确的事情。.bashrc不应使用它,因为它在某些情况下可能会导致问题。而且/etc/environment是出路(不要更改系统来完成一项工作)。
ctrl-alt-delor 2012年

2

您需要的是局部时间变化。明天您将不需要它们,而当您做其他事情时,可能会破坏您明天要做的事情。但是,您可以将其另存为build-script / makefile以便明天使用。

export VARIABLE=value
export VARIABLE2=another_value
gcc …

要么

VARIABLE=value VARIABLE2=another_value gcc …

注意:如果使用make,第一个示例将不起作用。Make为每一行启动一个新的shell(sh)。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.