• Linux命令 改变文档权限及所有者


    • chgrp :改变档案所属群组
    • chown :改变档案拥有者
    • chmod :改变档案的权限, SUID, SGID, SBIT等等的特性
    复制代码
    chgrp说明及范例
    [root@www ~]# chgrp [-R] dirname/filename  

    选项与参数: -R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有档案、目录 都更新成为这个群组之意。常常用在变更某一目录内所有的档案之情况。 

    范例:

     [root@www ~]# chgrp users install.log 

    [root@www ~]# ls -l -rw-r--r-- 1 root users 68495 Jun 25 08:53 install.log 

    [root@www ~]# chgrp testing install.log chgrp: invalid group name `testing' <== 发生错误讯息啰~找不到这个群组名~
    复制代码
    复制代码
    chown 说明及范例
    [root@www ~]# chown [-R] 账号名称 档案或目录 [root@www ~]
    # chown [-R] 账号名称:组名 档案或目录 选项与参数: -R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有档案都变更

    范例:将install.log的拥有者改为bin这个账号:
    [root@www ~]# chown bin install.log 
    [root@www ~]# ls -l -rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log 

    范例:将install.log的拥有者与群组改回为root:
    [root@www ~]# chown root:root install.log 
    [root@www ~]# ls -l -rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log
    复制代码
    备注
    Tips: 事实上,chown也可以使用『chown user.group file』,亦即在拥有者与群组间加上小数点『.』也行! 不过很多朋友设定账号时,喜欢在账号当中加入小数点(例如vbird.tsai这样的账号格式),这就会造成系统的误判了! 所以我们比较建议使用冒号『:』来隔开拥有者与群组啦!此外,chown也能单纯的修改所属群组呢! 例如『chown .sshd install.log』就是修改群组~看到了吗?就是那个小数点的用途!

    Linux档案的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限, 先复习一下刚刚上面提到的数据:档案的权限字符为:『-rwxrwxrwx』, 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:
    r:4

    w:2

    x:1
    每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx---] 分数则是:
    owner = rwx = 4+2+1 = 7

     group = rwx = 4+2+1 = 7

    others= --- = 0+0+0 = 0

    复制代码
    chmod说明及范例
    [root@www ~]# chmod [-R] xyz 档案或目录

    选项与参数: xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。 -R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有档案都会变更

    举例来说,如果要将.bashrc这个档案所有的权限都设定启用

    [root@www ~]# ls -al .bashrc -rw-r--r-- 1 root root 395 Jul 4 11:45 .bashrc 
    [root@www ~]# chmod 777 .bashrc 
    [root@www ~]# ls -al .bashrc -rwxrwxrwx 1 root root 395 Jul 4 11:45 .bashrc
    复制代码
    复制代码
    符号类型改变档案权限
    设定一个档案的权限成为『-rwxr-xr-x』时,基本上就是:
    o user (u):具有可读、可写、可执行的权限;
    o group 与 others (g/o):具有可读与执行的权

    [root@www ~]# chmod u=rwx,go=rx .bashrc

    # 注意喔!那个 u=rwx,go=rx 是连在一起的,中间并没有任何空格符! 

    [root@www ~]# ls -al .bashrc -rwxr-xr-x 1 root root 395 Jul 4 11:45 .bashrc

    我只想要增加.bashrc这个档案的每个人均可写入的权限

    [root@www ~]# ls -al .bashrc -rwxr-xr-x 1 root root 395 Jul 4 11:45 .bashrc 
    [root@www ~]# chmod a+w .bashrc 
    [root@www ~]# ls -al .bashrc -rwxrwxrwx 1 root root 395 Jul 4 11:45 .bashrc

    要拿掉全部人的可执行权限

    [root@www ~]# chmod a-x .bashrc
    [root@www ~]# ls -al .bashrc -rw-rw-rw- 1 root root 395 Jul 4 11:45 .bashrc
  • 相关阅读:
    jQuery插件开发模式
    优化布局
    jquery easyui 选项卡
    easy ui 点击行展开与折叠
    考拉海购技术支持的前世今生
    跑的好好的 Java 进程,怎么突然就瘫痪了
    Dubbo 如何成为连接异构微服务体系的最佳服务开发框架
    微服务治理实践:如何对单点异常进行自动摘除
    盘点阿里巴巴 15 款开发者工具
    千万创业者的自白:踩过坑才明白这些真相!
  • 原文地址:https://www.cnblogs.com/jiangzhaowei/p/4730825.html
Copyright © 2020-2023  润新知