• Set GID


    以下摘自鸟哥的Linux私房菜

    Set GID

    當 s 標誌在檔案擁有者的 x 項目為 SUID,那 s 在群組的 x 時則稱為 Set GID, SGID 囉!是這樣沒錯!^_^。 舉例來說,你可以用底下的指令來觀察到具有 SGID 權限的檔案喔:

    [root@study ~]# ls -l /usr/bin/locate
    -rwx--s--x. 1 root slocate 40496 Jun 10  2014 /usr/bin/locate
    

    與 SUID 不同的是,SGID 可以針對檔案或目錄來設定!如果是對檔案來說, SGID 有如下的功能:

    • SGID 對二進位程式有用;
    • 程式執行者對於該程式來說,需具備 x 的權限;
    • 執行者在執行的過程中將會獲得該程式群組的支援!

    舉例來說,上面的 /usr/bin/locate 這個程式可以去搜尋 /var/lib/mlocate/mlocate.db 這個檔案的內容 (詳細說明會在下節講述), mlocate.db 的權限如下:

    Tips鳥哥的圖示新版的 CentOS 7.x 全新安裝時,似乎預設將 locate 這個指令包拿掉了!如果你的 CentOS 已經有網路功能,可以直接使用『 yum install mlocate 』去安裝這個系統,如果沒有,那就先略過,未來講到網路時,再來理解 mlocate 囉!

     

    [root@study ~]# ll /usr/bin/locate /var/lib/mlocate/mlocate.db
    -rwx--s--x. 1 root slocate   40496 Jun 10  2014 /usr/bin/locate
    -rw-r-----. 1 root slocate 2349055 Jun 15 03:44 /var/lib/mlocate/mlocate.db
    

    與 SUID 非常的類似,若我使用 dmtsai 這個帳號去執行 locate 時,那 dmtsai 將會取得 slocate 群組的支援, 因此就能夠去讀取 mlocate.db 啦!非常有趣吧!

    除了 binary program 之外,事實上 SGID 也能夠用在目錄上,這也是非常常見的一種用途! 當一個目錄設定了 SGID 的權限後,他將具有如下的功能:

    • 使用者若對於此目錄具有 r 與 x 的權限時,該使用者能夠進入此目錄;
    • 使用者在此目錄下的有效群組(effective group)將會變成該目錄的群組;
    • 用途:若使用者在此目錄下具有 w 的權限(可以新建檔案),則使用者所建立的新檔案,該新檔案的群組與此目錄的群組相同。

    SGID 對於專案開發來說是非常重要的!^_^

  • 相关阅读:
    我的 conky 配置 (入门)
    三个字符编码问题的解决
    如何查看Mysql的版本
    oracle历险记纪实
    禁用USB总集
    如何更改Andrioid模拟器 avd路径
    linux 安装rpm包时遇到error:Failed dependencies解法方法
    最为流行的几款Java IDE
    android sdk 如何重新生成debug.keystore
    开始学习linux知识,每天做点总结
  • 原文地址:https://www.cnblogs.com/taosiyu/p/12973453.html
Copyright © 2020-2023  润新知