解决Linux环境变量每次要source /etc/profile问题
Linux的profile与权限相关问题
问题:
在/etc/profile中添加环境变量后,是使用source /etc/profile
编译后只能在当前终端生效;重新开启一个终端后,该环境变量失效。
每次使用交叉编译链之前都要进行source /etc/profile
才能进行编译
解决方法
使用su - root
进入系统instead of su
问题解决;
因为设置的环境变量,并没有真正生效,只是使用source 命令让临时运行而已。
原理上解析Linux中sudo,su与su -的异同
在linux系统中,由于root的权限过大,一般情况都不使用它。只有在一些特殊情况下才采用登录root执行管理任务,一般情况下临时使用root权限多采用su和sudo命令。
su - 命令(切换工作目录):
su -,su -l或su –login 命令改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,LOGNAME。此外,也会变更PATH变量。用su -命令则默认转换成成root用户了。
su 命令:
su为switch user,即切换用户的简写。
格式为两种:
su -l username(-l为login,即登陆的简写)
su username
如果不指定username(用户名),默认即为root,所以切换到root的身份的命令即为:su -root或su -,su root 或su。
su username,与su - username的不同之处如下:
su - username切换用户后,同时切换到新用户的工作环境中。
su username切换用户后,不改变原用户的工作目录,及其他环境变量目录。
解决Linux环境变量每次要source /etc/profile问题
http://wahoyu.xyz/2022/06/03/解决Linux环境变量每次要source-etc-profile问题/