https://blog.csdn.net/sinat_42724379/article/details/124752536
____________________________________________________________________________________________________________________
我们知道在linux服务器中文件最大权限为666,而目录最大权限为777
但是一般我们手动创建的文件或目录不是666 777而是644 755等 这就是umask在起作用
1、umask的作用:可以改变Linux上创建新文件或文件夹时授予的权限。
创建的文件默认权限怎么算呢,算法如下
对于目录,默认权限=777-umask
对于文件,默认权限=666-umask(文件默认无执行权限)
以umask=0027为例;
0027代表 -----w-rwx (只看后三位)
文件夹最高权限为777即rwxrwxrwx
文件最高权限为666 即rw-rw-rw-
此时新建的文件夹权限为rwxrwxrwx减去----w-rwx 为rwxr-x--- 即750
此时新建的文件权限为 rw-rw--rw-减去----w-rwx 为rw-r----- 即640
(将对应位置的权限去掉)
2、umask默认设置
对于root用户,系统默认的umask值是0022;
对于普通用户,系统默认的umask值是0002。执行umask命令可以查看当前用户的umask值。
3、umask如何设置
1)指令修改umask值
umask 0027 (将umask值修改为0027,系统重启后还原为默认值)
2)配置文件中修改
# vim /etc/profile 或者 #vim /etc/bashrc
增加一行 umask 0022
# source /etc/profile 使生效
# umask 查看umask值
/etc/profile和/etc/bashrc都可以用于设置用户登录系统时自动执行某些操作,他们的区别是/etc/profile只在用户第一次登录时被执行,而/etc/bashrc则在用户每次登录加载Bash Shell时都会被执行。
因而,如果是修改/etc/profile文件,将只对新创建的用户生效;而如果是修改/etc/bashrc文件,则对所有用户都生效。
详解见某位网友总结
linux中bashrc与profile的区别_jin—zzc的博客-CSDN博客_linux 全局bashrc
4、chmod 和chown
常用的相关指令
chmod -R 777 文件或目录/ (带-R 修改目录和子目录文件的权限)
chown - R user:user 文件或目录/ (带-R 修改目录和子目录文件的所属组权限)
————————————————
版权声明:本文为CSDN博主「You丶小明快跑」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_42724379/article/details/124752536