Linux系统对文件的权限分为读(Read), 写(Write), 可执行(Exeute),对于操做者又分为三种不一样的身份:文件全部者,用户组,其余人。 shell
gilbert@gilbert-xp:~/test$ ls -l total 0 -rw-r--r-- 1 gilbert gilbert 0 2013-03-16 14:50 readme
2. 写(w):能够编辑,修改文件内容。(但不能删除文件)
3. 执行(x):文件能够被系统执行。 bash
对于文件的权限,主要都是针对“文件内容”而言的。 编辑器
gilbert@gilbert-xp:~/test$ ls -l total 0 -rw-r----- 1 gilbert gilbert 0 2013-03-16 14:50 readme #全部者对文件不具备执行权限(x) gilbert@gilbert-xp:~/test$ ./readme #文件全部者执行文件 bash: ./readme: Permission denied #无权限 gilbert@gilbert-xp:~/test$ vi readme #有写权限(w), 编辑文件,写入hello gilbert@gilbert-xp:~/test$ cat readme #有读权限(r), 读取文件内容 hello gilbert@gilbert-xp:~/test$ chmod u-r readme #移除全部者对该文件的读权限 gilbert@gilbert-xp:~/test$ ls -l readme --w-r----- 1 gilbert gilbert 6 2013-03-16 15:41 readme #已移除全部者的读权限 gilbert@gilbert-xp:~/test$ cat readme #尝试读取文件 cat: readme: Permission denied #读取失败, 无权限 gilbert@gilbert-xp:~/test$ chmod u-w readme #移除全部者对该文件的写权限 gilbert@gilbert-xp:~/test$ ls -l total 4 ----r----- 1 gilbert gilbert 6 2013-03-16 15:41 readme #已移除全部者的写权限 gilbert@gilbert-xp:~/test$ vi readme #尝试编辑文件,会打开编辑器,但内容为空,提示无权限
目录主要的内容是记录文件名列表。 学习
1. 读(r):表示具备读取目录结构列表的权限,表示你能够查询该目录下的文件名数据,能够利用ls命令将该目录的内容列表显示出来。
2. 写(w):表示你具备更改目录结构列表的权限,包括如下权限:
spa
gilbert@gilbert-xp:~/test$ ls -l total 8 drwxr-xr-x 2 gilbert gilbert 4096 2013-03-16 15:51 dir #全部者对该目录具备rwx全部权限 ----r----- 1 gilbert gilbert 6 2013-03-16 15:41 readme gilbert@gilbert-xp:~/test$ cd dir #具备x权限, 能够进入做为工做目录 gilbert@gilbert-xp:~/test/dir$ ls #具备r权限, 能够查看文件夹内文件列表 gilbert@gilbert-xp:~/test/dir$ touch file #具备w权限, 能够建立文件 gilbert@gilbert-xp:~/test/dir$ ls file #文件建立成功 gilbert@gilbert-xp:~/test/dir$ touch file1 #建立文件file1 gilbert@gilbert-xp:~/test/dir$ ls file file1 gilbert@gilbert-xp:~/test/dir$ rm file1 #具备w权限, 能够删除文件 gilbert@gilbert-xp:~/test/dir$ ls file #文件file1已删除 gilbert@gilbert-xp:~/test/dir$ cd .. gilbert@gilbert-xp:~/test$ chmod u-w dir/ #移除w权限 gilbert@gilbert-xp:~/test$ ls -l total 8 dr-xr-xr-x 2 gilbert gilbert 4096 2013-03-16 15:53 dir #已移除w权限 ----r----- 1 gilbert gilbert 6 2013-03-16 15:41 readme gilbert@gilbert-xp:~/test$ cd dir/ gilbert@gilbert-xp:~/test/dir$ ls file gilbert@gilbert-xp:~/test/dir$ touch file1 #尝试建立文件 touch: cannot touch `file1': Permission denied #建立失败, 无权限 gilbert@gilbert-xp:~/test/dir$ rm file #尝试删除文件 rm: cannot remove `file': Permission denied #删除失败, 无权限 gilbert@gilbert-xp:~/test/dir$ cd .. gilbert@gilbert-xp:~/test$ chmod u-r dir #移除r权限 gilbert@gilbert-xp:~/test$ ls -l total 8 d--xr-xr-x 2 gilbert gilbert 4096 2013-03-16 15:53 dir #已移除r权限 ----r----- 1 gilbert gilbert 6 2013-03-16 15:41 readme gilbert@gilbert-xp:~/test$ ls -l dir/ #尝试读取文件夹内容 ls: cannot open directory dir/: Permission denied #读取失败, 无权限 gilbert@gilbert-xp:~/test$ cd dir/ gilbert@gilbert-xp:~/test/dir$ ls ls: cannot open directory .: Permission denied #读取失败, 无权限 gilbert@gilbert-xp:~/test/dir$ cd .. gilbert@gilbert-xp:~/test$ chmod u-x dir/ #移除x权限 gilbert@gilbert-xp:~/test$ ls -l total 8 d---r-xr-x 2 gilbert gilbert 4096 2013-03-16 15:53 dir #已移除x权限 ----r----- 1 gilbert gilbert 6 2013-03-16 15:41 readme gilbert@gilbert-xp:~/test$ cd dir/ #切换到dir目录 bash: cd: dir/: Permission denied #切换失败, 不具备x权限, 不能用该目录做为工做目录
参考:《鸟哥的Linux私房菜-基础学习篇》 code