点我
文件权限
1 .查看文件属性
管理文件所有者的所有组
文件的一般权限
用文字更改文件权限
用数值更改文件的权限
设置系统默认权限
和chmod一样是设定权限。 但是,chmod的直接设置权限为r、w或x,而umask是默认权限。 也就是说,不设置r、w或x
umask角色
1、useradd -d -s在Linux上是什么意思
useradd是添加用户的东西。 必须在后面添加用户名。
-d是指定用户的主目录
-s是指定用户的登录shell
例如:useradd -d /usr/qqq -s /受伤的枕头/tcsh qqq
含义:指定的主目录为usr目录下的qqq登录shell为tcsh
注意:用户创建时不使用-d和-s表示系统的缺省主目录(/home/qqq )和登录shell ) /受伤的枕头/bash。
文件权限
chmod [-R] 777文件或目录:设置权限(chmodarwxa=chmodugorwxa=chmod 777 a ) )。
注意: r (读)对应于4,w ) w (写)对应于2,x ) x (执行)对应于1。
-R :如果递归更改文件所属组,则在更改目录文件所属组时添加-R参数会更改该目录下所有文件的所属组。)
chmod [{ugoa}{=}{rwx}][文件或目录] :例如,chmod u-w、g x、o=r test.txt取消了user (所有者)写入权限,而group
chown [-R] admin:root /opt/:更改文件和目录的所有者和所属组。 -R递归处理所有文件和文件夹(管理员所有者,超级用户所有者)
1
2
3
4
5
1 .查看文件属性
ls-l文件名称
-热情的眼神| nov 105336003|filename
| rw-rr--.|1| root|root|46|nov 107336003|filename
1
阶段性意义
-”:文件类型-普通文件d目录c字符设备s插槽p管道b高速设备l连接
“rw-rr”:文件读写权限u
“1”对文件:系统记录文件内容的次数对目录:目录中文件属性的字节数
“根”文件的所有者
根文件中的所有组
" 46 "文件内容的大小
上次修改“nov 107:03”:文件的时间
文件名称文件的名称
管理文件所有者的所有组
阶段性意义
修改chown username (用户名)文件的所有人
chgrp groupname (组名称)文件更改所有组
chown -R username dir更改目录本身和其中所有内容的所有者
chgrp -R groupname dir更改目录本身和其中所有内容的所有组
文件的一般权限
rw-| r| r
1
rw-rr
u g o
文件所有者可以对文件读写文件组的成员可以对文件读取其他人可以对文件读取
u优先匹配g次优先o=u,g不一致时匹配
r w x
相对文件:可以显示文件中的字符对文件:可以更改文件中的字符对文件:可以执行文件中记录的程序操作
目录-用于显示目录中文件的信息对目录。 可以在目录中添加和删除文件对目录。 可以访问目录
用文字更改文件权限
chmod [-r ] u|g|o|-|=r|w|xfile|dir
命令的意思
chmod u-x文件1文件1的所有者删除x权限
chmod g w file1 file1具有添加组w权限
chmod u-x,g w file1 file1所有者解除了x权,file1拥有添加组w权限
chmod ugo-r file2 file2用户组中的其他用户组将删除r权限
chmod ug x,o-r文件3文件3用户和组添加x权限,其他人删除r权限
用数值更改文件的权限
r w x
4 2 1
rw-rr
u g o
rw-=420=6r=400=4r=400=4
因此,文件权限显示为644 chmod 644文件
chmod变更后的权限值file
命令的意思
7 rwx
6 rw-
5 r-x
4r
3 wx-
2 -w-
1x
0-
设置系统默认权限
和chmod一样是设定权限。 但是,chmod的直接设置权限为r、w或x,而umask是默认权限。 也就是说,不设置r、w或x
从系统存在的角度来讲,开放权力越大,系统存在的意义就越大
越高从系统安全角度来说,开放权力越少,系统安全性越高
所以系统设定新建文件或目录会去掉一些权限
正常情况下:管理员的umask值是0022,普通用户的umask值是0002。
umask的作用
用户在创建文件或文件目录时,从其默认权限(目录0777,文件0666)中去掉掩码中的权限(root:0022,普通用户:0002)。
文件创建时的权限:(普通用户下)默认权限-umask值=0666-0002=0664(rw-rw-r–)。
[tyson@tysonscloud learnUmask]$ touch test
[tyson@tysonscloud learnUmask]$ ll
total 0
-rw-rw-r-- 1 tyson tyson 0 Jan 30 10:05 test
1
2
3
4
umask一般是用在你初始创建一个目录或者文件的时候赋予他们的权限。
这里要说明两点:
1、针对目录来说x权限代表可以进入该目录,所以说对于这个权限初始赋值是没什么问题的;
2、针对文件的x的权限代表执行,这个风险太高,所以一般权限初始赋值必须去掉x的;
[root@www ~]# umask
0022
这四个字母代表什么?
首先说明一点,上面四个数字代表是赋值初始化准备丢弃的权限。(相对应文件来说,x权限就算没说明出来丢弃一样必须默认丢弃)
第一个0代表suid 丢弃的权限;
第二个0代表本文件/目录拥有者什么权限都没丢弃(如果是文件,x权限除外,为什么看看上面解释);
第三个2代表本文件/目录的用户组丢弃了w权限(如果是文件那么它的x权限也丢弃);
第三个2代表本文件/目录的其他用户能使用的权限只有有r和x(文件除外)。
综合上面所说如果你新创建一个文件那么它的权限是:-wr-w–w-- 即是:644
如果你新创建一个目录的话那么它的权限是:dwrxw-xw-x 即是:755
如果你要修改unask熟悉直接:
[root@www ~]# umask 002
明白了吧!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
设置umask值
很多情况下我们需要自定义umask值,这时候也比较简单,只要输入umask +掩码值。
比如,我们希望默认情况下我们创建的一个文件除了用户以外,其他人以及用户组内的成员都不能进行修改。
因而umask的值应该是0022。
umask 0022
umask
0022
touch test && ll test
-rw-r–r-- 1 summer summer 0 3月 1 10:46 test
1
2
3
4
5
显然创建的文件已经变成了644的权限。在很多情况下,我们是不关注文件的特殊权限的,事实上,如果设定掩码值时候,我们输入的umask值如果不足四位数,那么它就会从后网往前更改原来的掩码值。
如初始umask值为 0002,如果我们输入命令umask 022,那么umask值就会被更改为0022。
如果我们输入命令umask 2,那么umask值就会被更改为0002。
设定方式
umask ##查看系统权限默认umask值为0022
umask 077 ##修改该系统umask为0077,此设定为临时设定,只当前shell中生效
在这里插入图片描述
文件权限为:777-umask
vim /etc/bashrc (shell)
在这里插入图片描述
vim /etc/profile ##系统
在这里插入图片描述
以上两个文件umask设定值必须保持一致
source /etc/bashrc
source /etc/profile
设定立即生效