在linux中,常常都要提示设置:
umask 022
其作用如下:
功能说明:指定在建立文件时预设的权限掩码。
语 法:umask [-S][权限掩码]
补充说明:umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。
参 数:
-S 以文字的方式来表示权限掩码。
文件:用八进制基数666,即无x位(可执行位)rw- rw- rw-.执行位需由用户自行加入
例一:设要生成的文件以rw- r– r–这样的权限字出现,即真实权限用八进制表示为644,则被666基数减得022,022即掩码。使用umask 022。
注:033效果与022一样,假设使用033掩码进行设置,则真实权限应为633即rw- r-x r-x ,但前提规定文件不生成x位,所以文件的权限最终将以rw-r–r–出现。
目录:用八进制基数777
例二:设要生成的目录权限以rwxr-xr-x这样的权限字出现,即真实权限用八进制表示为755,则被基数为777的权限字相减后,得掩码022。则使用umask 022进行设置。
总结:
掌握二个要点,一、文件基数为666,目录为777,即文件无设x位,目录可设x位。二、chmod是设哪个位,哪么哪个位就有权限,而umask是设哪个位,则哪个位上就没权限。
实例:
# umask
00
# mkdir test
# ls -ltr
drwxrwxrwx 2 root sys 96 Oct 11 11:10 test
# umask 022
# umask
022
# mkdir test2
# ls -ltr
drwxrwxrwx 2 root sys 96 Oct 11 11:10 test
drwxr-xr-x 2 root sys 96 Oct 11 11:11 test2
白话:
其实就是默认权限不一样,umask用来设置默认权限的。