shell编程之环境变量配置文件
因为环境变量的作用是定义每个用户的操作环境,所以肯定是永久生效的,不会一重启就失效,因此他们都是保存在环境变量文件里。
先介绍一些关于配置文件的命令:
source命令
作用:本来修改配置文件后,需要重启才能生效,但是使用source命令不用重启。
格式: source 配置文件 或 .配置文件
环境变量配置文件加载顺序图
若是一个完整登录过程,选择用户,输入密码的过程,其文件加载顺序如下:
若是通过超级用户权限直接切换用户,其文件加载过程如下:
其中/etc/profile中主要定义了:
变量USER,LOGNAME,MAIL,PATH,HOSTNAME,HISTSIZE
还会调用/etc/profile.d/*.sh文件,还通过umask定义系统默认权限。
umask介绍
umask命令 可查看系统默认权限
一般结果是 "022"
注意:1)文件最高权限为666
2)目录最高权限为777
3)权限不能使用数字进行换算,必须使用字母
4)umask定义的权限,是系统默认权限中准备丢弃的权限
如何查看目录和文件的权限属性呢?
只需: 执行 " ll "
比如结果: -rwx r-x r-x 1 root root 2774 Apr 17 2017 test
-rwx r-x r-x : 文件类型和权限(最前面的"-"表示文件类型,常见的有 : "-" 普通文件 "d" 目录文件 "s"套接字文件)
1 : 连接数
root : 拥有者
root : 所属用户组
2774 : 文件大小
Apr 17 2017 : 最后修改日期
test : 文件名
其中 rwx r-x r-x :每3位一组(第一组rwx表示拥有者的权限,第二组r-x表示同一用户组成员的权限,第三组r-x表示其他人的权限)
"权限不能使用数字进行换算,必须使用字母"之前提到的这句话是什么意思呢?
目录最高权限 umask权限 创建的目录权限
rwx rwx rwx --- -w- -w- rwx r-x r-x
7 7 7 0 2 2 7 5 5
其中 "r"表示4,"w"表示2,"x"表示1
文件最高权限 umask权限 创建的文件权限
rw- rw- rw- --- -w- -w- rw- r-- r--
6 6 6 0 2 2 6 4 4
目录和文件之间权限的区别
在linux里面,目录也是一个文件。权限设置方法与普通文件一样。
目录的可执行权限:目录无所谓执行不执行,目录只能否被开启(也称作“遍历”或“搜索”) 对目录的执行权限不仅意味着查看目录下文件名还允许查看文件的其它信息如文件大小、修改时间。 说的再详细些就是这样的 Linux的权限不是很细致,只有RWX三种 r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。 w(Write,写入):对文件而言,具有新增,修改,删除文件内容的权限;对目录来说,具有新建,删除,修改,移动目录内文件的权限。 x(eXecute,执行):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。 1、目录的只读访问不允许使用cd进入目录,必须要有执行的权限才能进入。 2、只有执行权限只能进入目录,不能看到目录下的内容,要想看到目录下的文件名和目录名,需要可读权限。 3、一个文件能不能被删除,主要看该文件所在的目录对用户是否具有写权限,如果目录对用户没有写权限,则该目录下的所有文件都不能被删除,文件所有者除外 4、目录的w位不设置,即使你拥有目录种某文件的w权限也不能写该文件 再具体的话 只能# man chmod 自己查看了