zoukankan      html  css  js  c++  java
  • su命令cannot set groups: Operation not permitted的解决方法

    版权声明:本文由曾倩倩原创文章,转载请注明出处: 
    文章原文链接:https://www.qcloud.com/community/article/103

    来源:腾云阁 https://www.qcloud.com/community

    问题场景:

    user_00@hadoop-10-125-224-102:> su root
    Password: 
    su: cannot set groups: Operation not permitted
    

    1.观察:

    (1) 查看 /bin/su

    user_00@hadoop-10-125-224-102:> ll /bin/su
    -rwxr-xr-x 1 user_00 users 37880 May  3  2007 /bin/su
    

    (2)对比能正常使用 su 命令的跳板机中/bin/su文件

    user_00@Tencent64:~> ll /bin/su
    -rwsr-xr-x 1 root root 37880 Jul 14  2014 /bin/su
    

    2.对比不同点:

    3.分析:

    • -rwsr-xr-x 中 s 表示setuid,可以让执行这个文件时,是以文件的拥有者的权限进行,而不是执行这个命令的用户本身的权限

    • /bin本属于root组的文件改成其它组导致出错,(ps:比较笨的错误,千万不能这样做)

    4.解决:

    • 改变文件拥有者:

      hadoop-10-125-224-102:~ # chown -R root:root /bin/su 
      ==>  -rwxr-xr-x 1 root root 37880 May  3  2007 /bin/su
      
    • 设置文件属性

      hadoop-10-125-224-102:~ # chmod u+s /bin/su
      ==>  -rwsr-xr-x 1 root root 37880 May  3  2007 /bin/su
      

    5.脑补的知识点:

    权限状态: -rwsr-xr-x,此时就被称为Set UID,简称为SUID。那么这个特殊权限的特殊性的作用

    • SUID权限仅对二进制程序(binary program)有效;

    • 执行者对于该程序需要具有x的可执行权限;

    • 本权限仅在执行该程序的过程中有效(run-time);

    • 执行者将具有该程序拥有者(owner)的权限。

    类似的权限 "SGID,SBIT" ,可自行搜索 "Linux 特殊权限"的相关资料。

  • 相关阅读:
    JMM内存模型
    APUE习题8.7
    整型和字符数组之间的转换(略带进制的转化)
    数据结构学习——shell排序的C语言实现
    Unix环境高级编程学习笔记——fcntl
    Unix环境高级编程学习笔记——dup
    链表
    计算机数值表示
    整数位运算相关操作
    win和linux下控制台界面中停顿X秒的方式
  • 原文地址:https://www.cnblogs.com/purpleraintear/p/6010659.html
Copyright © 2011-2022 走看看