Linux 文檔多租戶管理方法
例題
同一群組microsoft下的兩個賬號justmine001和justmine002需要共同擁有目錄/microsoft/eshop的開發(fā)權(quán),以便進行協(xié)同工作,但是其他人不允許進入和查閱該目錄。
從例題可以分析出:
- 同一群組下的賬戶需要共同擁有目錄的使用權(quán),且可以編輯里面的任何文件。
- 其他賬戶不擁有該目錄的任何權(quán)限。
- 需要使用root賬戶,創(chuàng)建賬戶、群組,設(shè)置目錄權(quán)限,然后搭建開發(fā)環(huán)境。
創(chuàng)建賬戶相關(guān)信息
groupadd microsoft ; 新增群組
useradd -G microsoft justmine001; 新增賬戶,并加入到群組microsoft
useradd -G microsoft justmine002; 新增賬戶,并加入到群組microsoft
查閱賬號屬性
id justmine001;
id justmine002;

搭建環(huán)境
創(chuàng)建開發(fā)目錄
mkdir -p /microsoft/eshop
查詢
ll -d /microsoft/eshop

設(shè)置傳統(tǒng)權(quán)限
從上圖可以看到,開發(fā)目錄的擁有者和群組都是root,權(quán)限為rwxr-xr-x,所以justmine001和justmine002可以查閱(ls)和進入(cd)該目錄,但是都不能在目錄中創(chuàng)建文件。


首先,設(shè)置目錄群組為microsoft,其次,其他人對該目錄沒有任何權(quán)限,所以應該設(shè)置權(quán)限為770。如果不理解,請閱讀上一篇詳解Linux文檔屬性、擁有者、群組、權(quán)限、差異
chgrp microsoft /microsoft/eshop; 分配群組
chmod 770 /microsoft/eshop; 設(shè)置權(quán)限
首先測試justmine賬號(其他人)的權(quán)限,如下:

其他人無法訪問ls和進入cd該目錄,已達到預期效果。
測試同群組下的justmine001和justmine002賬號,再次創(chuàng)建文件,如下:


為了淋漓盡致的展現(xiàn),我將文件創(chuàng)建權(quán)限從拒絕到許可的整個過程都截取下來了!??!
從上面可以看到,文件test和test1的擁有者和群組分別為justmine001和justmine002,雖然用戶justmine001可以刪除justmine002創(chuàng)建的文件test1(目錄權(quán)限的控制范圍),但是卻不能編輯它(文件權(quán)限的控制范圍)。那該腫么辦呢,還是無法完成協(xié)作工作啊。第一種方法是我們將文件test1權(quán)限設(shè)置為777,這樣文件對任何人都可讀、可寫、可編輯,再加上目錄權(quán)限的控制,其他人訪問不了文件test1,沒毛病。第二種方法,變更它們創(chuàng)建的文件群組為microsoft,這樣也可以實現(xiàn)協(xié)作工作,貌似這種方法才是切合現(xiàn)實的。不過,每次都要管理員去做這件事情,那豈不是太麻煩他老人家,多不好意思啊,嘿嘿。正所謂,車道山前必有路,使用Linux特殊權(quán)限SGID可以完美實現(xiàn)同一群組下的任何賬戶創(chuàng)建的文件都擁有相同的群組microsoft(詳情請閱讀:理解Linux文檔的默認安全機制、隱藏屬性、特殊權(quán)限)。
備注:Linux文檔權(quán)限是一級一級的往下控制的,所以任何讀、寫、編輯文件的前提就是要擁有能夠進入文件所屬目錄的權(quán)限。
設(shè)置特殊權(quán)限
為目錄/microsoft/eshop設(shè)置SGID權(quán)限
chmod 2770 /microsoft/eshop
使用justmine002賬號創(chuàng)建文件,查詢文件權(quán)限:

從上圖可以看到,justmine002所屬的文件群組自動變更成microsoft,而umask默認為002,兩人同屬一個群組,自然就可以互相修改彼此的文件了?。?!
總結(jié)
Linux系統(tǒng)管理員的主要任務其實就是如何管理好系統(tǒng)的文件系統(tǒng),那么對于文檔多租戶管理,首先新建一個統(tǒng)一的群組,然后將目錄權(quán)限設(shè)置為2770,最后把需要協(xié)作工作的用戶加入這個群組,就是這么簡單。往往,結(jié)果很簡短,但是思考分析過程就如同西天取經(jīng),希望把整個過程分享給大家,不僅要知其然,更要知其所以然,這樣才能舉一反三,融匯貫通,達到靈活運用的目的。
相關(guān)文章

集成系統(tǒng)級Claw模式! Deepin 官宣發(fā)布 25.1 版本
deepin操作系統(tǒng)發(fā)布了最新的 25.1 版本更新,該版本基于 deepin 25 正式版積累的多輪內(nèi)測成果,在 AI 能力、內(nèi)核版本、桌面環(huán)境、文件管理器以及系統(tǒng)安全等方面進行了更新2026-04-13
又一代老硬件退場! Linux 內(nèi)核正式放棄Intel 486 CPU
在過去的幾十年間,CPU 的架構(gòu)已經(jīng)經(jīng)歷了飛速發(fā)展,x86 系列就是其中之一,而 i486 則屬于該系列中的一個,當前,i486 的CPU處理器已經(jīng)夠老,從 Linux 7.1 開始將不再有對2026-04-09
趕緊收藏! 全網(wǎng)最全 Linux 命令總結(jié)
我把 Linux 中最常用、最實用、最常被問到的命令按照實際使用場景分類整理,方便你快速查閱和記憶,內(nèi)容覆蓋日常運維、開發(fā)調(diào)試、性能分析、文件處理、網(wǎng)絡、安全、系統(tǒng)管2026-04-08
一分鐘內(nèi)檢查Linux服務器性能? 9個性能檢測常用的基本命令
今天我們來看看Linux系統(tǒng)中用于性能監(jiān)控的一系列命令,這些命令可以快速查看機器的負載情況,詳細請看下文介紹2026-03-18
從零基礎(chǔ)到精通! 適合高級用戶的15款Linux發(fā)行版推薦
Linux作為操作系統(tǒng)領(lǐng)域靈活性和可定制性的基石,提供了大量滿足不同用戶需求的發(fā)行版,今天分享適合高級用戶的15款Linux發(fā)行版2026-03-10
開箱即用? 這4個高手級Linux發(fā)行版遠沒你想象的那么安全易用
如果你正在糾結(jié)用哪個發(fā)行版?零基礎(chǔ)新手別被“高端”“極客”“聲明式”這些詞沖昏頭腦,先用好用的,再慢慢進階2026-03-10
這幾款SSH工具真的夠用了! Linux好用的ssh工具推薦
在Linux上使用SSH,您需要安裝一個SSH客戶端,今天整理找到的8 款 SSH / 終端工具,從免費開源到企業(yè)級商用,從輕量化命令行到一站式工具箱,每款都做了介紹與對比,希望能2026-03-09
在Linux系統(tǒng)下有兩種用戶,即高級用戶root,普通用戶,高級用戶root可以在系統(tǒng)中做任何事情,普通用戶僅可在Linux系統(tǒng)中做有限的事情,下面我們就來看看切換方法2026-02-28
揭秘當前登錄用戶的身份! Linux中使用logname命令的技巧
logname命令就是這樣一個簡單但強大的工具,它能幫助我們輕松獲取當前登錄用戶的用戶名,今天,我們就來深入探索一下這個命令的工作原理、使用方法和最佳實踐2026-02-26
在 Linux 系統(tǒng)中,DNS 緩存是一種將域名和 IP 地址映射關(guān)系緩存在本地的機制,可以加快域名解析速度,并減輕 DNS 服務器的負載2026-02-26



