上一篇讲到了kali linux的代理,在配置kali Linux代理的过程中对linux的环境变量有了一个较为深入的了解,现有的文章比较零散,遂加上作者自己的理解进行一个整理并记录下来,也为日后再想回顾时做一个参考。
一、环境配置文件
由于在使用kali linux之前,作者一直在使用Windows,Linux的环境变脸显然不如windows的环境变量清晰,在配置windows的环境变量时只需要在一个固定的窗口上调整,而在配置linux时则需要在不同的配置文件上进行更改,因此在了解linux的环境配置之前,我们需要了解kali linux有哪些文件决定了环境的配置:
/etc/environment:系统变量,相当于windows的系统变量,是最顶层的变量
/etc/profile:用户的全局环境变量,适用于所有用户的变量
/etc/bash.bashrc:shell(命令提示符的解释器)的全局环境变量
~/.profile:用户变量
~/.bashrc:shell的用户全局变量
以上的几个文件就是kali linux中的基本环境配置文件。
二、运行逻辑
介绍执行逻辑时需要先了解两个概念,一个交互式non-login shell,另一个是交互式login shell。其中交互式的意思是需要用户去手动输入的,比如我们在命令行输入命令就属于交互;non-login是不需要输入用户名与密码就能取得bash接口,login就是需要输入用户名与密码才能获得bash权限,例如我们登录系统时需要输入账号密码,这时就是属于login的方法。这里还要补充一下知识点,bash(GNU Bourne-Again Shell)属于shell(Bourne shell)的扩展,是完全向后兼容的。
下面开始介绍运行逻辑,首先当我们输入账号与密码进入系统时,启动的shell是通过bash --login所启动的shell文件,此时系统的调用环境变量顺序是/etc/profile、/etc/profile.d目录下的脚本文件、~/.profile、 ~/.bashrc、
/etc/bash.bashrc。当以non-login的方式启动shell时,此时会依次调用~/.bashrc、/etc/bash.bashrc/,也就是login启动shell时调用步骤的最后两步,但是这里还多了一步,就是在调用完/etc/bash.bashrc后还会再调用一
次/etc/profile.d目录下的脚本文件。
这时再回到对kali linux的网络配置上可以看出,如果想要整个系统都使用代理的话,应该在~/.profile之前的调用链上填写配置;如果想要仅仅当前用户使用的话,应该在 ~/.profile这个文件进行配置;如果仅仅想要在shell上使用代理,应该在代理链后面两步调用文件进行配置。
三、总结
这里还要在扩展一点,su与su-切换用户的区别,使用su切换用户是属于non-login的形式,su-切换用户是属于login的形式;通过export可以添加仅仅在当前shell适用的临时变量。本文到此就结束了,后面有时间的话作者会介绍关于kali linux的各项配置文件的作用。
标签:shell,kali,etc,linux,login,环境变量,bash From: https://blog.csdn.net/qq_70625456/article/details/142291699