【问题标题】:Automatically setting permissions on files created in a directory自动设置目录中创建的文件的权限
【发布时间】:2012-05-24 10:55:11
【问题描述】:

我想在我的 Linux 机器中拥有一个具有 777 权限的目录,但是放置(复制/移动)其中的任何文件都需要自动设置 666 权限。 换句话说,在 Linux 中是否有可能有一个目录,其中放置的任何文件都会自动变为不可执行?

【问题讨论】:

  • 是 666 更重要,还是该目录中的文件不可执行?

标签: linux file permissions directory


【解决方案1】:

您可以使用noexec 标志挂载文件系统;此类系统中的任何文件都将不可执行,即使其权限另有说明。

【讨论】:

    【解决方案2】:

    这样做的一个好方法是使用“umask”内置,这会影响当前shell环境的文件创建掩码,您可以使用

    获取当前掩码
    umask -S
    

    所以要创建具有特定掩码的文件,您可以执行以下操作:

    mask_for_file_creation="u=rw,g=rw,o=rw"
    curr_mask=$(umask -S)
    umask $mask_for_file_creation
    #create files here
    umask $curr_mask
    

    提供掩码作为 umask 的第一个参数会将掩码设置为该值。

    【讨论】:

      猜你喜欢
      • 2018-08-18
      • 1970-01-01
      • 1970-01-01
      • 2018-04-26
      • 1970-01-01
      • 2015-07-28
      • 2016-01-17
      • 2010-10-09
      • 2018-12-10
      相关资源
      最近更新 更多