linux中权限和命令的关系。

我们知道权限对於使用者帐号来说是非常重要的,因为他可以限制使用者能不能读取/创建/删除/修改文件或目录。

一、让使用者能进入某目录成为『可工作目录』的基本权限为何:

  • 可使用的命令:例如 cd 等变换工作目录的命令;
  • 目录所需权限:使用者对这个目录至少需要具有 x 的权限
  • 额外需求:如果使用者想要在这个目录内利用 ls 查阅档名,则使用者对此目录还需要 r 的权限。

二、使用者在某个目录内读取一个文件的基本权限为何?

  • 可使用的命令:例如本章谈到的 cat, more, less等等
  • 目录所需权限:使用者对这个目录至少需要具有 x 权限;
  • 文件所需权限:使用者对文件至少需要具有 r 的权限才行!

三、让使用者可以修改一个文件的基本权限为何?

  • 可使用的命令:例如 nano 或未来要介绍的 vi 编辑器等;
  • 目录所需权限:使用者在该文件所在的目录至少要有 x 权限;
  • 文件所需权限:使用者对该文件至少要有 r, w 权限

四、让一个使用者可以创建一个文件的基本权限为何?

  • 目录所需权限:使用者在该目录要具有 w,x 的权限,重点在 w 啦!

五、让使用者进入某目录并运行该目录下的某个命令之基本权限为何?

  • 目录所需权限:使用者在该目录至少要有 x 的权限;
  • 文件所需权限:使用者在该文件至少需要有 x 的权限
例题:
让一个使用者 vbird 能够进行『cp /dir1/file1 /dir2』的命令时,请说明 dir1, file1, dir2 的最小所需权限为何?
答:
运行 cp 时, vbird 要『能够读取来源档,并且写入目标档!』所以应参考上述第二点与第四点的说明! 因此各文件/目录的最小权限应该是:
  • dir1 :至少需要有 x 权限;
  • file1:至少需要有 r 权限;
  • dir2 :至少需要有 w, x 权限。


例题:

有一个文件全名为 /home/student/www/index.html ,各相关文件/目录的权限如下:
drwxr-xr-x 23 root    root    4096 Sep 22 12:09 /
drwxr-xr-x  6 root    root    4096 Sep 29 02:21 /home
drwx------  6 student student 4096 Sep 29 02:23 /home/student
drwxr-xr-x  6 student student 4096 Sep 29 02:24 /home/student/www
-rwxr--r--  6 student student  369 Sep 29 02:27 /home/student/www/index.html
请问 vbird 这个帐号(不属於student群组)能否读取 index.html 这个文件呢?

答:

虽然 www 与 index.html 是可以让 vbird 读取的权限,但是因为目录结构是由根目录一层一层读取的, 因此 vbird 可进入 /home 但是却不可进入 /home/student/ ,既然连进入 /home/student 都不许了, 当然就读不到 index.html 了!所以答案是『vbird不会读取到 index.html 的内容』喔!

那要如何修改权限呢?其实只要将 /home/student 的权限修改为最小 711 ,或者直接给予 755 就可以罗! 这可是很重要的概念喔!
posted on 2014-07-25 14:48  面壁偷笑  阅读(260)  评论(0编辑  收藏  举报