配置全局环境变量/etc/environment,/etc/profile区别,sudo -i和sudo su的区别
创始人
2024-05-01 05:24:25
0

在 Ubuntu 系统中,可以使用 /etc/environment 文件来设置全局环境变量。这个文件中的环境变量会在系统启动时加载,对所有用户都生效。

/etc/profile 文件是系统的配置文件,它在系统启动时加载,对所有用户都生效。/etc/environment 文件也是一个系统配置文件,它在系统启动时加载,对所有用户都生效。

这两个文件的区别在于,/etc/profile 文件包含了系统的默认环境变量和配置,以及所有用户的个人配置。而 /etc/environment 文件仅包含系统的默认环境变量,但是我们也可以把自定义的环境变量放入这里, /etc/environment里的环境变量不再针对哪一个用户,他对整个系统都生效无论是哪个用户。

如果在这两个文件中设置了环境变量,必须系统启动后才能生效(也就是开机重启),锁屏重新登陆并不能使其生效。

如果想在当前终端会话中立即生效,可以使用 source 命令来重新加载这些文件。例如,你可以使用以下命令来重新加载 /etc/profile 文件:

source /etc/profile

同样,你也可以使用以下命令来重新加载 /etc/environment 文件:

source /etc/environment

但是,重新加载这些文件只会在当前终端会话中使新设置的环境变量生效。如果想让新设置的环境变量对所有用户都生效,需要重启系统。

sudo -i 和 sudo su 命令都是用来切换到 root 用户的。
它们之间的区别在于:
sudo -i 会清空当前用户的环境变量,然后加载 root 用户的环境变量,并且会加载加载 /etc/profile。

sudo su 则会保留当前用户的环境变量,并在其中添加 root 用户的环境变量,如会加载 /root/.bashrc 文件。但不会加载 /etc/profile。
还有一个区别sudo su在切换后会处在当前目录下,sudo -i切换后会处在/root目录下。

你也可以在 /etc/bash.bashrc 设置环境变量,这些环境变量会在所有用户切换到 bash 时加载,这时使用sudo su应该可以访问到/etc/bash.bashrc 设置环境变量中的环境变量。/etc/bash.bashrc 文件只对使用 bash shell 的用户生效。

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...