Linux umask默认权限分配命令

简介:

Linux系统为什么目录和文件的默认权限是755,644而不是其它的值呢?

因为:网站目录安全权限:目录755,文件644是相对安全的权限(用户root以及用户组root)

Linux系统默认权限的方针:允许浏览,查看,但是禁止创建和修改,增加文件及内容。


默认权限分配的命令umask

1
2
3
4
5
6
[root@w  test ] # mkdir newdir
[root@w  test ] # touch newfile
[root@w  test ] # ls -lrt
total 4
drwxr-xr-x. 2 root root 4096 Apr 29 17:07 newdir
-rw-r--r--. 1 root root    0 Apr 29 17:08 newfile

创建目录,默认权限是755

创建文件,默认权限是644


普通用户创建文件和目录

目录775,文件664

1
2
3
4
5
6
7
8
9
[zjj@w ~]$  touch  newfile
[zjj@w ~]$  mkdir  newdir
[zjj@w ~]$  ls  -lrt
total 8
-rw-r--r--. 1 zjj zjj    6 Apr 21 11:22 hi.txt
-rw-rw-r--. 1 zjj zjj    0 Apr 29 17:23 newfile
drwxrwxr-x. 2 zjj zjj 4096 Apr 29 17:23 newdir
[zjj@w ~]$  umask
0002


控制umask的地方在/etc/profile

wKiom1coEH2Qh_xvAALNboA-bZE671.jpg

如:

1
2
3
4
5
6
[zdw@w ~]$  id  -gn
zdw
[zdw@w ~]$  id  -un
zdw
[zdw@w ~]$  umask
0002

注意:普通用户的umask未必是002


文件仅限的一般计算方法:

root下默认文件权限计算方法

1.假设umask值为:022(所有位为偶数)

   666    ==>文件的起始权限值

   022-   ==>umask的值

   ------

   644

2.假设umask值为:045(其它用户组位为奇数)

   666    ==>文件的起始权限值

   045-   ==>umask的值

   ------

   621    ==>计算出来的权限。由于umask的最后一位数字是5,所以,在用户组奇数位加1

   001+

   ------

   622    ==>真实文件仅限

Note:如果某类的用户的权限减得的结果存在x权限,则将其权限+1


命令示例:

1.umask默认022时创建目录及文件

1
2
3
4
5
6
7
8
9
[root@w ~] # umask                                        #默认为022
0022
[root@w ~] # cd /home/zdw/
[root@w zdw] # mkdir 022dir                               #创建文件夹
[root@w zdw] # ls -ld 022dir/                             #777-022权限为755
drwxr-xr-x. 2 root root 4096 May  3 10:25 022dir/
[root@w zdw] # touch 022file                              #创建文件
[root@w zdw] # ls -l 022file                              #666-022权限为644
-rw-r--r--. 1 root root 0 May  3 10:26 022file


注:文件夹的权限最大为777,用777-022,就得出文件夹的权限,文件的权限最大为666,用666-022,就得出文件的权限

2.umask设置为333(此设置方法只对当前有效)

1
2
3
4
5
6
7
8
9
[root@w zdw] # umask 333                                  #更改umask为333
[root@w zdw] # umask
0333
[root@w zdw] # mkdir 333dir                               #创建文件夹
[root@w zdw] # ls -ld 333dir/                             #777-333权限为444
dr--r--r--. 2 root root 4096 May  3 10:31 333dir/        
[root@w zdw] # touch 333file                              #创建文件
[root@w zdw] # ls -l 333file                              #666-333在奇数位加1权限为444
-r--r--r--. 1 root root 0 May  3 10:32 333file


注:奇数权限位对目录没影响,文件位有奇数时,加上1即可







      本文转自cix123  51CTO博客,原文链接:http://blog.51cto.com/zhaodongwei/1769604
,如需转载请自行联系原作者



相关文章
|
4天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
1天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)
|
1天前
|
Linux Shell Windows
Linux 常用基本命令
Linux 常用基本命令
|
2天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
2天前
|
Linux
【Linux】常用命令
【Linux】常用命令
21 0
|
2天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
15 0
Linux 网络操作命令Telnet
|
3天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
30 0
|
3天前
|
Linux 开发工具 数据安全/隐私保护
Linux(19)常用解压命令记录
Linux(19)常用解压命令记录
9 0
|
4天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
17 0
|
7天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
16 0