暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

知识点 | linux系统文件和目录的权限掩码umask命令解读

396

Linux系统(或其他Linux发行版)中,umask 命令用于设置用户创建新文件或目录时的默认权限掩码。它本身不是一个文件,而是一个设置值。

1. 命令概念

umask 值定义了需要从默认权限中屏蔽掉(减去)的权限位。

文件默认最大权限:666 (rw-rw-rw-)

目录默认最大权限:777 (rwxrwxrwx)

umask 值通常用 八进制 表示(如 022, 002, 077)。

实际权限默认最大权限 - umask 值。


2. 修改umask 的方法

两种修改方式,一种临时,一种永久;


临时修改(仅对当前Shell会话有效)

直接在终端输入umask 命令加新值:

umask <新值>

示例:

1)设置umask 为 022(常见默认值,新文件权限 644,目录 755):

a.命令:umask 022


2)设置umask 为 002(用户和组有写权限,新文件 664,目录 775,适用于协作环境):

a.命令:umask 002


3)设置umask 为 077(最严格,仅用户自己有权限,新文件 600,目录 700):

a.命令:umask 077

验证当前umask配置状态

命令:umask


永久修改(对所有新登录会话生效)

需要修改用户的Shell 配置文件(如 ~/.bashrc, ~/.profile, etc/profile, etc/bash.bashrc)。推荐优先修改用户级配置文件 (~/.bashrc)


操作步骤:

1. 打开配置文件(以 ~/.bashrc 为例):

vi  ~/.bashrc  # 使用  vim 或 gedit编辑器

2. 在文件末尾添加一行:

umask <你想要的umask>  # 例如 umask 002 或 umask 022

3. 保存并退出编辑器:

Nano: 按 Ctrl+O 保存,按 Enter 确认文件名,再按 Ctrl+X 退出。

Vim: 按 :wq 然后回车。

4. 使更改立即生效(在当前终端):

source ~/.bashrc

或者直接关闭并重新打开终端。

5. (可选系统级修改:

如果需要为所有用户设置默认umask,需编辑系统级配置文件(需要管理员权限):

/etc/profile

/etc/bash.bashrc


提示:特定于登录Shell 的 /etc/profile.d/*.sh(推荐创建自定义文件),操作前务必备份!


重点说明权限计算示例

    umask 022
    文件:
    666 - 022 = 644 (rw-r--r--)
    目录:
    777 - 022 = 755 (rwxr-xr-x)


    umask 002
    文件:
    666 - 002 = 664 (rw-rw-r--)
    目录:
    777 - 002 = 775 (rwxrwxr-x)


    umask 077
    文件:
    666 - 077 = 600 (rw-------) 
    目录:
    777 - 077 = 700 (rwx------) 

    umask 值表示被屏蔽的权限:

    0 = 不屏蔽任何权限(允许读、写、执行)

    2 = 屏蔽写权限

    4 = 屏蔽读权限

    6 = 屏蔽读和写权限 (4+2)

    7 = 屏蔽读、写和执行权限 (4+2+1)

    符号表示法:umask 也可用符号模式设置(如 u=rwx,g=rx,o=),但八进制形式更常用。


    三点安全建议:

    1)普通用户:002 或 022 是常见选择,取决于是否需要同组用户协作。

    2)严格环境/root用户:考虑 077 或 027(屏蔽其他用户的所有权限)。

    3)修改系统级umask 要极其谨慎,错误设置可能导致系统服务或新用户遇到权限问题。


    文章小结

    场景

    命令

    生效范围

    临时修改

    umask <新值>

    当前Shell会话

    永久修改(用户级)

     ~/.bashrc 添加 umask <>

    用户所有新登录会话

    永久修改(系统级)

     /etc/profile 等文件添加

    所有用户


    文章至此。

    文章转载自戏说数据那点事,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论