Linux学习笔记第三天--修改权限操作
2018-03-23 00:00
316 查看
摘要: Linux命令:chmod
Linux修改权限
chmod u+x,g-x,o=r代表 给“所有者”添加一个执行权限,给“所属组”去掉执行权限,让“其他人”只有一个读的权限(不管他以前是什么权限)。这样一看应该很明显了吧。
感觉光说不是很清楚,直接上命令吧
比如:chmod 761 /tmp/test
解释:给这个test目录赋权限,所有者权限为7,也就是说,所有者拥有读写和执行的权限(7=4+2+1),所属组有读和写的权限(6=4+2),其他人有执行的权限(1)也就是drwxrw---r。因为是目录,所以是d开头。
chmod 700 /tmp/test
解释:给这个test目录赋权限,所有者权限为7,也就是说,所有者拥有读写和执行的权限(7=4+2+1),所属组和其他人没有权限。也就是drwx------
直接看两个例子,应该就很明显了吧.
Ok,最后在说一下文件的rwx和目录的rwx
对上面的权限做一个小的测试。
管理员账号创建一个目录,test,并在目录下创建一个文件Test.t 现在,将目录test的权限修改为777,Test.t的权限为700。问:现在新建一个普通用户,他能不能删除Test.t?
文件的权限是700,普通用户没有修改文件内容的权限,而文件所在目录的权限是777,也就是说,所有人都有权限操作这个目录,普通用户也就有w权限,也就是说,它可以在目录中新建或者删除文件,所以,是可以删除的。
chown
chgrp用来修改所属组:chgrp 用户组 文件或目录。
每个文件或者目录都会有一个默认的用户组,默认用户组的名字和所有者是一样的,也就是缺省组(Emmmmmm,我这里也不是很清楚)。当你想要改变一个文件或者目录的所属组的时候,直接chgrp +组名 +文件位置。
如图,我先创建一个用户组,叫 hdg,在通过chgrp hdg /tmp/hj0326将hj0326的所属组由mytest改为hdg,不过要注意,我能做改变所属组,是因为我当前登录的是root账号。
最常用的一个功能:umask -S,看好,这个是大写的S:
执行umask -S,你会看到u=rwx,g=rx,o=rx,这个一看就很好理解了,所有者权限为rwx,用户组权限为rw,其他人为rx。其实,这个权限的分配就是你新建目录或者文件的默认权限。当我们创建一个目录的时候:
会发现,他的权限就是rwxr-xr-x,正好是我们执行umask -S看到的。既然我们可以看到默认的权限分配,当然,我们也可以一修改它。
就用umask +数字。不过在说这个之前,还有一些东西需要介绍一下。
如过我们直接输入umask
就系那个上图,你会看到四个数字0022。第一个数字0,代表特殊权限,具体的呢,...我就不知道了
。不过后边这三个022,它和我们的默认权限是有关系的。咱们默认的权限是u=rwx,g=rx,o=rx,也就是755,发现没? 一个022,一个755!!!! 发现没? 没发现吧,
,我就知道。其实是他们俩 相加是777。也就是说,如果你想要你的默认权限为755(u=rwx,g=rx,o=rx),那么你就需要输入这个命令:umask 022。比如如果我想把默认的权限改为rwxr-xr--,也就是我需要把权限改为754,那么我就需要执行umask 023。
这样当我再创建一个目录的时候,他就会变成rwxr-xr--了。不过Linux的默认权限还是很合理的,建议大家不要修改。
还有一个事!当我们创建一个目录的时候,他的默认的权限是755,也就是rwxr-xr-x。可是看一下下面这张图
默认的权限是022,但是我创建出来的文件的权限是rw-r--r--,对比一下会发现,所有人的权限都少了一个x权限,这是因为,在linux中,新建的文件时没有执行权限的。所以,当你新建一个文件的时候,他的权限就变成了rw-r--r--。
ok!打完收工
Linux修改权限
chmod
在linux中,只有root和文件的所有者可以修改权限,修改权限命令用的是chmod,这个命令有两个方式1:chmod {u g o}+-={r w x} +文件位置
在这个命令中,u代表所有者,g代表所属组,o代表其他组。r代表读权限,w代表写权限,x代表执行权限。+代表添加一个权限,-代表减少一个权限,=直接赋予权限。比如:chmod u+x,g-x,o=r代表 给“所有者”添加一个执行权限,给“所属组”去掉执行权限,让“其他人”只有一个读的权限(不管他以前是什么权限)。这样一看应该很明显了吧。
2:chmod 777 +文件位置
在说这个方式之前,需要说一下权限所代表的数字权限 | 数值 |
r | 4 |
w | 2 |
x | 1 |
比如:chmod 761 /tmp/test
解释:给这个test目录赋权限,所有者权限为7,也就是说,所有者拥有读写和执行的权限(7=4+2+1),所属组有读和写的权限(6=4+2),其他人有执行的权限(1)也就是drwxrw---r。因为是目录,所以是d开头。
chmod 700 /tmp/test
解释:给这个test目录赋权限,所有者权限为7,也就是说,所有者拥有读写和执行的权限(7=4+2+1),所属组和其他人没有权限。也就是drwx------
直接看两个例子,应该就很明显了吧.
Ok,最后在说一下文件的rwx和目录的rwx
权限 | 文件 | 目录 |
r | 可以查看文件的内容 | 可以列出目录的内容 |
w | 可以修改文件 | 可以在目录中创建,删除文件,也可以修改文件的名称 |
x | 可以执行文件 | 可以进入目录 |
管理员账号创建一个目录,test,并在目录下创建一个文件Test.t 现在,将目录test的权限修改为777,Test.t的权限为700。问:现在新建一个普通用户,他能不能删除Test.t?
文件的权限是700,普通用户没有修改文件内容的权限,而文件所在目录的权限是777,也就是说,所有人都有权限操作这个目录,普通用户也就有w权限,也就是说,它可以在目录中新建或者删除文件,所以,是可以删除的。
chown
chown是用来修改所有者的,格式:chown +所有者 +操作对象
但是当你执行这个命令的时候,可能会发现报错,因为只有root才可以改变所有者。
可以看到上黄色部分,当切换到root时,再执行chown命令,就可以更换所有者了。
chgrp
chgrp用来修改所属组:chgrp 用户组 文件或目录。每个文件或者目录都会有一个默认的用户组,默认用户组的名字和所有者是一样的,也就是缺省组(Emmmmmm,我这里也不是很清楚)。当你想要改变一个文件或者目录的所属组的时候,直接chgrp +组名 +文件位置。
如图,我先创建一个用户组,叫 hdg,在通过chgrp hdg /tmp/hj0326将hj0326的所属组由mytest改为hdg,不过要注意,我能做改变所属组,是因为我当前登录的是root账号。
umask
umask是一个权限管理命令。最常用的一个功能:umask -S,看好,这个是大写的S:
执行umask -S,你会看到u=rwx,g=rx,o=rx,这个一看就很好理解了,所有者权限为rwx,用户组权限为rw,其他人为rx。其实,这个权限的分配就是你新建目录或者文件的默认权限。当我们创建一个目录的时候:
会发现,他的权限就是rwxr-xr-x,正好是我们执行umask -S看到的。既然我们可以看到默认的权限分配,当然,我们也可以一修改它。
就用umask +数字。不过在说这个之前,还有一些东西需要介绍一下。
如过我们直接输入umask
就系那个上图,你会看到四个数字0022。第一个数字0,代表特殊权限,具体的呢,...我就不知道了
。不过后边这三个022,它和我们的默认权限是有关系的。咱们默认的权限是u=rwx,g=rx,o=rx,也就是755,发现没? 一个022,一个755!!!! 发现没? 没发现吧,
,我就知道。其实是他们俩 相加是777。也就是说,如果你想要你的默认权限为755(u=rwx,g=rx,o=rx),那么你就需要输入这个命令:umask 022。比如如果我想把默认的权限改为rwxr-xr--,也就是我需要把权限改为754,那么我就需要执行umask 023。
这样当我再创建一个目录的时候,他就会变成rwxr-xr--了。不过Linux的默认权限还是很合理的,建议大家不要修改。
还有一个事!当我们创建一个目录的时候,他的默认的权限是755,也就是rwxr-xr-x。可是看一下下面这张图
默认的权限是022,但是我创建出来的文件的权限是rw-r--r--,对比一下会发现,所有人的权限都少了一个x权限,这是因为,在linux中,新建的文件时没有执行权限的。所以,当你新建一个文件的时候,他的权限就变成了rw-r--r--。
ok!打完收工
相关文章推荐
- linux学习笔记(三)-文本操作&&用户权限管理
- linux 基础操作 (五)————文件权限及修改
- Linux主机系统目录误操作权限修改为777修复方法
- mycncart使用教程 - 修改管理员操作权限
- windows c++ 修改用户的文件夹操作权限
- mongodb查看操作记录方法以及用户添加删除权限修改密码
- Linux学习笔记4-基础权限操作
- linux mysql 修改密码、连接权限、端口 基础操作
- 通过IIS操作修改服务器文件没有权限的解决办法
- ubuntu chmod 无法更改 文件夹权限 系统提示“不允许的操作 2、linux 如何修改只读文件 3、ubuntu安装
- 权限模块-修改操作存在问题
- linux操作命令:chmod修改文件权限
- mysql 新用户 创建 修改 赋予权限 删除权限操作
- Linux修改用户的操作权限
- linux学习笔记(三)-文件权限操作
- php修改服务器文件操作权限
- mycncart使用教程 - 修改管理员操作权限
- Linux ubuntu 修改了locale文件后系统无法启动进入系统修复模式变成无权限操作locale文件
- ubuntu 下修改文件访问权限chmod 777 -R *血的教训!没事别乱开权限!用谁开谁的就行。。。最后不要用这个命令,文件操作全部改用终端
- Linux系统下的文件和文件夹相关操作(创建/删除/修改权限)