首页 » VPS 知识 » 浏览内容

VPS管理常用命令——权限管理


2011-11-18 23:45:15 2,490 0 发表评论 字体: 作者:C.K.
标签: VPS权限

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

管理VPS需要的命令并不多,大致分为服务管理、软件管理、目录/文档操作、权限管理等。本篇是权限管理,以Debian为例。本文参考了鸟哥的私房菜

文件和目录权限

所有者与群组

Linux中的文件和目录可以针对三种用户类型设置权限。这三种类型是所有者、群组、其他。

所有者

所有者即是文件的确实拥有者,在默认情况下为创建文件的用户。

群组

一个群组由多个用户组成。一个文件可以设定为属于哪一个群组,并对该群组设定权限。群组的权限对于多用户的协作情况非常有用。比如有两个群组A和B,他们分别承担不同的项目。一个文件是属于A群组所承担的项目的,那么就可以通过设置群组的权限,使A组中所有成员都可以阅读此文件。

Note:对于只有一个人使用维护的VPS,群组的设置并不重要,一般设为所有者所在组,权限和其他相同即可。

其他

除了所有者和所属群组外其他所有用户均属于“其他”。

权限

每种用户类型都可以设置相应的权限。一般文件的权限有读、写、执行;目录的权限有读、写、进入。

文件权限

  • 读:r,能否读取文件的实际内容。
  • 写:w,能否新增、编辑、修改文件内容(但不包括删除)
  • 执行:x,文件能否被系统所执行

Note:Windows中文件能否被执行由后缀名判断,如“.exe”等,但在Linux中则由其是否具有执行权限判断。一个文件可以执行的条件是:1)确实是可以执行的内容,比如一个脚本。2)文件具有可执行的权限。

文件夹权限

  • 读:r,能否读取一个目录下的结构,即该目录下都有那些文件和子目录。当拥有对文件夹的读权限时,可以使用ls命令列出目录下的文件和子目录列表
  • 写:w,能否修改一个目录下的结构。当拥有对目录的写权限时,可以新增、删除、重命名、移动文件和子目录。
  • 进入:x,能否进入一个目录。当拥有对某一目录的进入权限,可以用cd目录将工作目录切换到该目录。

Note:因为x决定能否进入一个目录,因此一个软件/用户要读取到某个目录的文件,其必须同时具有r和x权限。对于目录权限而言,w写权限不可以随便赋予。比如某个用户对一个文件没有任何权限,但对于这个文件所属的文件夹有w写权限,那么他可以删除这个文件!

查看文件/目录属性

可以使用ls命令来查看属性。例如

ls -al

列出一个目录下所有文件/子目录的属性。其中-a是列出所有文件,-l表示列出属性。得到结果如下:

drwxr-xr-x  2 www-data www-data   4096 2010-02-04 14:44 test
-rw-r--r--  1 www-data www-data      0 2010-02-04 14:44 test.txt

将它们分组解释

类型与权限 连接数 所有者 群组 容量 创建/最近修改日期 文件/目录名
drwxr-xr-x 2 www-data www-data 4096 2010-02-04 14:44 test
-rw-r–r– 1 www-data www-data 0 2010-02-04 14:44 test.txt

类型与权限

  • 第一字元:表示类型,“-d”代表目录,“-”代表文件,“l”代表链接。上面三个比较重要,另外还有“b”不代表随机存取设备,”c“代表一次性存取设置(例如键盘、鼠标)。
  • 后面的字元每三个一组,为”rwx“的组合。”r“为读,”w“为写,”x“为执行或进入,如果没有相应权限则显示为”-“。
    • 第一组:所有者的权限。例如“rw-”,表示所有者有读和写的权限,但没有执行权限。
    • 第二组:所属群组的权限。
    • 第三组:其他用户的权限。

所有者和群组

所有者:文件或目录的所有者。群组:文件或目录所属的群组

chown命令

chown命令可以改变一个文件/目录所属的用户和群组。例如一个文件test.txt的所有者原本是root,群组是root组,现在要将它变为所有者www-data和群组www-data,则:

sudo chown www-data:www-data  test.txt

要改变一个目录和其下所有文件/子目录,应加上-R,例如改变test目录和其下所有文件/子目录:

sudo chown -R www-data:www-data  test

chmod命令

chmod命令可以用来改变文件/目录权限。每个权限有一个数字表示,一个用户类型所对应的权限就是这些数字的和。

  • r读权限:4
  • w写权限:2
  • x执行/进入权限:1

假设一个文件的权限为”rw-rr“,则:

  • 所有者:”rw-“,即4+2+0=6
  • 群组:”r–“,即4+0+0=4
  • 其他:”r–“,即4+0+0=4

于是,该文件的权限就是644。

要改变一个文件的权限为644,执行命令:

sudo chmod 644 test.txt

要改变一个目录和其下所有文件/子目录权限,则:

sudo chmod -R 755 test

以上将会把test目录和其下所有子目录权限变更为755,而文件权限为644。

Note:默认情况下,目录权限均为755,文件权限为644。这一般不需要修改。

网站统计 Statistics

  • 创建时间: 2005年1月3日 距今5063 天
  • 日志总数: 2461
  • 评论总数: 630
  • 标签总数: 654
  • 链接总数: 273
  • 最后更新: 2018-8-31 17:57:04
  • 您是本站第 14151186 位访客

广告区 Guǎng Gào