linux的umask设置
系统的安全机制:umask (过滤码)
使用 umask 命令可以查看当前用户的值
对于普通用户来讲 umask:0002
对于管理员来讲 umask : 0022
所以当
管理员创建文件夹的时候是 777-umask = 755
对于管理员创建文件的时候 666-umask = 644
所以:
管理员建立文件默认是 644 权限
管理员建立文件夹默认是 755 权限
用户建立文件默认是 664 权限
用户建立文件夹默认是 775 权限
------------------------------------------------------------
umask是可以改变的
umask N:
比如:umask 027
假设,我们让用户设置754权限则: 777-754= 023 所以,umask =023
而创建文件的时候,666-023 = 643。但是文件的默认权限是不具有x权限的,所以643会自动将其变成642
umask的设置是不具有持久性的。重登陆之后则失效
使用umask命令设置的命令是只对当前用户的当期shell有效。
----------------------------------------------------------------------
如果想让他永远有效:则需要将umask定义在启动配置文件中
全局:/etc/profile ,/etc/profile.d/* /etc/bashre
用户:~/.bash_profile , ~/.bashrc
profile类,应用于交互式登录shell
bashrc类,非交互式登录。
交互式登录:读取次序:(越靠后优先级越高)
/etc/profile --> /etc/profile.d/* --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc
非交互式shell :当一个脚本系统能开机自动运行的shell 运行次序
~/.bashrc --> /etc/bashrc --> /etc/profile.d/*
------------------------------------------------------------------------
所以,想让修改umask则,编辑/etc/bashrc里
如果想单独修改用户,则只需要定义那个用户的 ~/.bashrc
评论: