linux 中umask的作用(还可以)

发布时间 2023-08-02 14:26:33作者: kelelipeng

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