Linux的使用者 組 檔案 許可權的關係

2021-06-23 05:00:25 字數 2318 閱讀 4411

偶爾會用到linux,它的使用者、組之間的關係之前一直覺得十分複雜,而且劃分了三種許可權,交織在一起就更覺得凌亂了。今天想理一理他們之前的關係,偶遇某前輩的文章,質量很高,略刪減編輯以留博備份,同時也方便他人。

原文如下:

在linux中一切都是檔案(資料夾和硬體外設是特殊的檔案),如果有可能盡量使用文字檔案。文字檔案是人和機器能理解的檔案,也成為人和機器進行交流的最好途徑。由於所有的配置檔案都是文字,所以你只需要乙個最簡單的編輯器就可以修改。即使是2進製執行檔案,也會附上源**。

這就是linux的基本哲學,也是開源的基本精神。gnu/linux的最終發展就是跨越人和機器之間的界限。

(比較:windows中的一切也都是檔案,大多都是微軟格式編碼過的2進製檔案,而配置檔案也往往都是進行2進製編碼的,甚至成果物都是2進製編碼的,比如doc檔案,你需要使用微軟的api才能完成修改。)

由於修改文字檔案如此簡單,linux系統本身肯定要加以規範。這就引出了使用者(組)和許可權這2個概念。

而這2個概念的引入,完美的保證了linux的安全性,同時沒有新增複雜性。由於一切皆為檔案。所以linux引入了2個檔案來管理使用者(組), /etc/passwd存放使用者,/etc/group存放組,然後在檔案系統中的每個檔案的檔案頭裡面新增了使用者和檔案之間的關係資訊。

使用者和檔案的關係只有2種, 擁有和不擁有。

組和檔案的關係只有2種,擁有和不擁有。

使用者和組的關係只有2種, 屬於和不屬於。

將這三種關係疊加,使用者和檔案的最終關係可以歸納為3類

1,使用者擁有該檔案

2,使用者屬於某個組,某個組擁有該檔案(即使用者通過屬於某組來擁有該檔案)

3,使用者不擁有該檔案

而在檔案的檔案頭里,則儲存了3組資訊分別對應上面3類關係

第一組存放擁有該檔案的使用者的的許可權。

第二組存放擁有該檔案的組的許可權,(所有屬於該組的其他成員都獲得此許可權)。

第三組存放所有不擁有該檔案的使用者(等於所有使用者減去以上2類使用者)所獲得許可權。

下面要說明一下許可權

許可權一共有三種讀(縮寫為r),寫(縮寫為w),執行(縮寫為x)。讀和寫很好理解,執行的話當然只對能執行的檔案才有效果。許可權相對資料夾來說意義略有不同。比如如果你擁有對某目錄的執行許可權,你才能cd 到某目錄,而如果你沒有讀許可權,你即使cd到了某目錄,你也不能ls。

在實踐為了省事,我們一般都會用上所有三種許可權,所以初學者只要知道有這麼回事情就可以了。結合使用者(組),許可權,檔案,我們用乙個命令ls -l 就能顯示出三者之間的關係

下面是乙個例子

顯示readme.txt的許可權資訊

r-x-w-rw- tom admin readme.txt

上面的r-x-w-rw-,每3個字元為一組,分別對應使用者,組,其他使用者,-表示無此許可權。使用者(縮寫為u)的許可權:是讀(r)和執行(x)組(縮寫為g)的許可權:是寫(w)。其他使用者(縮寫為o)的許可權:是讀(r)和寫(w)。使用者tom擁有該檔案

組admin擁有該檔案。任何使用者登入以後根據以上設定就可以獲得自己相應的許可權。修改許可權也很簡單,比如要給g新增許可權讀(r)和執行許可權(x)就是:

chmod g+rx 檔名 ---加號表示新增權

要取消其他使用者的寫(w)許可權

chmod o-w 檔名 ---減號表示取消許可權

make everything as ****** aspossible, but not ******r

albert einstein

我對這句名言的翻譯也很******,就是「簡約不簡單」,linux這種許可權系統的精妙設計很容易讓人聯想到人體的dna系統,只有四種鹼基,確可以演化出人體這麼複雜而有效的系統。而反觀windows系統,真是無奈呀。使用者的電腦居然可以成為qq和360的戰場,使用者還沒有任何證據來證明誰是誰非。這到了linux系統上,在這麼簡潔的安全機制下是根本不可能的事呀)

最後來談一談 linux的**幫助系統

命令 –help,比如 ls –help

第二種是中型幫助,這種幫助篇幅較長,說明詳細,多用在象詳細了解某個命令的來龍去脈,命令用法如下

man 命令--------man是(manual的縮寫),比如 man cd

第三種是大型幫助, 這種幫助篇幅最長,有的可能是一本書, 命令用法如下

info 命令,比如 info rm

linux學習一定要自己多磨練,才能真正掌握。easy come easy go。任何很容易學會的知識和技術,多半都很廉價。

ps.有網友希望推薦關於linux深入淺出的書籍,我看過多本原版書,不過大多數的知識還是靠自己實踐,和谷歌來的。很多linux知識可能是在學習別的東西的時候獲得,比如配置apache的時候,就會多了解一些symboliclink的含義。很多東西要磨練以後才可能明白真正的內涵。

linux檔案許可權 使用者組

新增組 groupadd 組名檢視所有組 cat etc group建立使用者並將使用者新增到組 useradd g 組名 使用者名稱刪除使用者 userdel 使用者名稱刪除使用者及使用者的主目錄檔案 userdel r 使用者名稱檢視所有使用者資訊 cat etc passwd檔案許可權解釋 當...

Linux使用者 使用者組 檔案許可權

最近打算更仔細學習一下linux作業系統。先是惡補了一下使用者 使用者組 檔案許可權這三樣比較重要的知識。學習這幾樣東西,得先掌握linux的許可權系統相關知識。linux的許可權系統主要是由使用者 使用者組和許可權組成。使用者就是乙個個的登入並使用linux的使用者。linux內部用uid表示。使...

Linux使用者 使用者組 檔案許可權設定

最近打算更仔細學習一下linux作業系統。先是惡補了一下使用者 使用者組 檔案許可權這三樣比較重要的知識。我也正在學linux,所以就找到這篇日誌了,有些設定修改後需要重啟系統後才能生效。學習這幾樣東西,得先掌握linux的許可權系統相關知識。linux的許可權系統主要是由使用者 使用者組和許可權組...