查看文件和目录的权限
使用命令:
ls -al
或者
ll
使用ls不带参数只显示文件名称,通过ls -al 可显示文件或者目录的权限信息。
显示的信息依次代表:
文件类型,文件权限,文件的用户,文件的所属组,文件的大小,文件的创建时间,文件的名称。
第一列文件类型一共有12位。
第一位为一组,代表文件类型。后面每三位为一组。
第一位:
-:代表普通文件
d:代表目录
l:代表链接文件
三位代表含义:
rw-:说明后面root用户有读写权限,没有运行权限
r--:表示用户组只有读权限,没有写和运行的权限
r--:其他用户只有读权限,没有写权限和运行的权限
注:
r:读的权限
w:写的权限
x:可执行的权限
新建脚本文件进行测试
输入命令:
vi shell.sh
按i键进入插入模式
输入如下脚本内容,使其在控制台输出内容:
按ESC回到编辑模式,输入
:wq!
然后回车。
可以看到当前目录下多了文件,但是没有对其执行的权限。
执行文件的命令是
./shell.sh
如果不在当前目录, 要写完整目录。
可以看到没有执行的权限。
更改操作权限
改变访问权限
chmod [who] [+ | - | =] [mode] 文件名
who
表示操作对象可以说是以下字母的一个或者多个组合。
u:用户user
g:用户组group
o:表示其他用户
a:表示所有用户是系统默认的
操作符号
+:添加权限
-:删除权限
举例
给shell.sh添加可执行的权限
输入:
chmod +x shell.sh
其中x代表可执行的权限
此时shell已经可以被root执行,输入:
./shell.sh
删除权限
输入:
chmod -x shell.sh
改变所有者
chown
是change owner的意思,主要作用是改变文件或者目录所有者,所有者包含用户和用户组。
chown [-R] 用户名称 文件或者目录
chown [-R] 用户名称 用户组名称 文件或目录
注:
-R 进行递归式的权限更改,将目录下的所有文件、子目录更新为指定用户组权限
举例
在root用户下新建test文件夹
可以看到此目录属于root组的root用户,其他用户可读可执行,但是没有写的权限。
切换到其他用户,输入:
su badao
进入test目录,写一个文件测试
再切换到root账户,并修改test目录的所有者属于badao组下的badao用户
输入:
chown badao:badao test
此时再切换为badao用户,对test进行写操作
数字设定法
数字设定法中数字表示的含义
0表示没有任何权限
1表示有可执行权限 = x
2表示有可写权限 =w
4表示有可读权限 =r
也可以用数字来表示权限比如:
chmod 755 file_name
若要rwx属性则4+2+1=7
若要rw-属性则4+2=6
若要r-x属性则4+1=5
举例:
去掉test目录所有权限
让badao组具有可读可写可执行的权限
标签:文件,shell,用户,Linux,操作,权限,badao,目录 From: https://blog.51cto.com/BADAOLIUMANGQZ/6147472