保护你的文件,请修改 Linux 中的 Umask 值

这篇教程教将指导 Linux 用户如何永久性地更改其系统的 Umask 值。特别建议全新安装的用户学习(想知道为什么的话,请移步下文)

Umask 是什么?解释下,UMASK 代表用户掩码或用户文件创建掩码,它用于新创建的文件和文件夹,是其默认权限的基础。

上面的意思可以解释成任何基于 Linux 的操作系统为新建文件(包括文件夹)添加默认权限的规则。出于教育目的,下面列出了一些可以用来设置文件权限的八进制值掩码:


  1. 0 – 读, 写, 可执行 (rwx)
  2. 1 – 读和写 (rw-)
  3. 2 – 读和可执行 (r-x)
  4. 3 – 只读 (r--)
  5. 4 – 写和可执行 (-wx)
  6. 5 – 只写 (-w-)
  7. 6 – 仅可执行 (--x)
  8. 7 – 没有权限 (---)

在几乎所有的 Linux 发行版本中默认 Umask 值是 0022(或022),可以在终端模拟程序中输入 umask 命令来查看。也可以运行 “umask 八进制值掩码” 命令(例如 umask 027)来临时改变这个值。

你也许知道,新创建的文件的默认权限设置原本应该是 0666,文件夹的是 0777。应用上面所说的 umask 值后就得到 644 和 755 权限。

许多意见认为 022 掩码会带来隐私问题,也就是说您所创建的文件对其他用户来说是可随意查看的,一想到这就感到不太爽!

言归正传,用户可以按他们所愿来修改默认的 Umask 值,当然首先要保证修改的值合法。要修改默认值,请在您的 shell 配置文件中或者 /etc/profile 文件中写入一个新的 Umask 值。

好了,这就大功告成了!从现在开始,在你的 Linux 系统上新创建的文件或文件夹都会有准确设置的权限。但请注意已经存在的文件或文件夹的权限并不会因为上面的操作而改变。

如果您使用的是命令行,可以在任意目录下运行 ls -lah 命令,就可以看到当前的文件权限。另外,新手也可以很容易地查看到文件权限,在基于 GNOME 桌面的环境中,通过右击文件,选择属性 -> 权限选项卡。

原文发布时间为:2014-05-21

本文来自合作伙伴“Linux中国”

时间: 2024-11-29 19:58:08

保护你的文件,请修改 Linux 中的 Umask 值的相关文章

c语言-修改Linux中pppoe拨号工具的源代码问题

问题描述 修改Linux中pppoe拨号工具的源代码问题 我们大学的宿舍网络需要pppoe拨号客户端登陆,现在已经了解到这个客户端对拨号的用户名做了加密,加密后的用户名形如"{SRUN3} 123456789",注意,"{SRUN3}"和"123456789"之间是一个回车符号............... 我的路由器可以运行openwrt操作系统,这个系统默认用ppp-2.4.7这个工具进行pppoe拨号.但是试了各种办法都没法在用户名中加上这

mvc3 如果实现只修改表中部分字段值?

问题描述 用EF映射了一张用户表User,字段如下:userid用户名pwd密码name姓名tel电话address地址createtime创建时间接到要求要实现一个用户资料修改的功能,需对数据表中已有的数据(电话,地址)进行修改.于是,我在修改页面上制作了两个文本框tel电话,address地址,提供给用户输入,其他项是只读的标签.在提交修改的代码中,实例化了一个对象user,并且接收修改界面传递过来的值由于页面传递过来只有文本框和用户名输入了值,即userid='001',user.tel=

js修改table中Td的值(定义td的单击事件)_javascript技巧

项目做完,在测试验收时,用户突然提出,可以更改查询结果,便于打印.隐藏工程错误.但是这个时候提要求,比较头痛,后来,想了想还是用前台代码,这样,只要在项目的JS文件中,加入以下几个函数,便可以解决了. 复制代码 代码如下: /* 页面装载时,为每个td增加单击事件,这样,就可以不用对每个页面进行更改. */ function ReWritable() { var tbmian=document.getElementById("tbmain"); for(var i=0;i<tbm

java语言:修改session中的hashMap值,为什么不需要更新session

问题描述 publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{HttpSessionsession=request.getSession(false);RequestDispatcherdispatcher;//如果session不存在,转向/ch04/books.jspif(session==null){dispatcher=reque

js修改table中Td的值(定义td的双击事件)_javascript技巧

客户需求至上. 这次是更改后的代码,去掉了"确定","取消"按钮.变单击为双击事件,用户按ESC键,取消更改. 复制代码 代码如下: //为每个Td添加双击事件 function ReWritable() { var tbmian=document.getElementById("tbmain"); //循环,为每行每列添加双击事件,但是,第一行(thead)与最后一行(tfoot)不添加. for(var i=1;i<tbmain.row

5 个在 Linux 中管理文件类型和系统时间的有用命令

对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同的命令,你应该每天使用终端并明白怎样将命令和不同选项以及参数一同使用. 在 Linux 中管理文件类型和设置时间 请先查看我们 Linux 小技巧系列之前的文章: 5 个有趣的 Linux 命令行技巧 给新手的 10 个有用 Linux 命令行技巧 在这篇文章中,我们打算看看终端中 5 个和文件以及

【我的技术我做主】浅谈linux中umask值及其对应的文件权限

 最近刚好系统学习到linux文件权限这一块,在"umask值及其对应的文件权限"这一个问题上,找过视频看(老男孩老师的视频,强烈推荐),也看过鸟哥的书,当然也在网上找了找,发现计算方法都是多种多样的,但是个人觉得掌握一种就好了,看了各种方法,觉得其实大多数都是在找规律,不是找规律的又实在是太复杂,因此个人感觉不太好记,时间一长可能就忘记了,于是就根据自己的理解,做各种测试,发现有了如下更好的方法.(从理解和记忆的层次上更好的方法)  1.问题引出:设置umask为004与005时,创

总结Linux中压缩文件和解压文件的用法

总结Linux中压缩文件和解压文件的用法,压缩文件和解压文件是在Linux中最常见的一种操作,熟悉和掌握这部分的技能也是必须的,一般我们常用的命令有:tar.unzip.bunzip2等等,如何正确的使用也是需要掌握的一个知识重点,下面我们分两个部分来对压缩文件和解压文件进行说明. a.解压小全 tar -I或者bunzip2命令都可以解压.bz2文件tar xvfj example.tar.bz2tar xvfz example.tar.gztar xvfz example.tgztar xv

如何在Linux中压缩及解压缩.bz2文件

对文件进行压缩,可以通过使用较少的字节对文件中的数据进行编码来显著地减小文件的大小,并且在跨网络的文件的备份和传送时很有用. 另一方面,解压文件意味着将文件中的数据恢复到初始状态. Linux 中有几个文件压缩和解压缩工具,比如gzip.7-zip.Lrzip.PeaZip 等等. 本篇教程中,我们将介绍如何在 Linux 中使用 bzip2 工具压缩及解压缩.bz2文件. bzip2 是一个非常有名的压缩工具,并且在大多数主流 Linux 发行版上都有,你可以在你的发行版上用合适的命令来安装它