女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

詳解Linux權限相關指令

馬哥Linux運維 ? 來源:CSDN技術社區 ? 2025-06-06 11:47 ? 次閱讀

Linux】權限相關指令

前言:

本文我們來講Linux中關于權限中的一些指令

shell命令

Linux嚴格來說是一個操作系統,我們稱之為“核心”(kernel)。而作為用戶的我們并不能直接與核心交流,這時候就有一個中間人的角色出現:將我們的指令翻譯為核心可以看懂的符號,交由核心執行,并將執行結果翻譯并返回給我們。

這個中間人就是“包裹”在核心外的“外殼程序”,介于我們和核心之前。我們稱之為:shell命令

從技術層面來講,shell的最簡單定義就是:命令解釋器。其主要功能就是:

1.將命令翻譯后交給核心執行

2.將核心執行的結果翻譯并返回給我們

形象理解shell

假如小y過年回家打算相親了,打算小y并不擅長與異性交流,這時候就拜托了媒人王姨作為中間人,幫忙小y和異性之前傳話。這時候王姨就是“外殼程序”shell。

為什么要有shell?

1.方便用戶使用

2.作為外殼程序,保護核心

補充

d7056016-4061-11f0-b715-92fbcf53809c.png

權限概念

Linux中權限分為兩種:root賬號、普通賬號

root賬號:為超級權限賬號,不受任何權限限制

普通賬號:受到權限限制,在Linux中只能做有限的事

su

命令:su 用戶名

功能:切換賬號

hyc@hcss-ecs-4ce7:/$ whoami
hyc

#切換root賬號執行su即可
hyc@hcss-ecs-4ce7:/$ su
#輸入root賬號密碼
Password:
root@hcss-ecs-4ce7:/# whoami
root

#切換普通賬號:su 用戶名(不需要密碼)
root@hcss-ecs-4ce7:/# su hyc
hyc@hcss-ecs-4ce7:/$ whoami
hyc



補充:普通用戶 -> root賬號,除了su可以實現,su -也可以實現。但是區別是?

hyc@hcss-ecs-4ce7:/$ pwd
/
hyc@hcss-ecs-4ce7:/$ su
Password:
root@hcss-ecs-4ce7:/# whoami
root
root@hcss-ecs-4ce7:/# pwd
/


hyc@hcss-ecs-4ce7:/$ pwd
/
hyc@hcss-ecs-4ce7:/$ su -
Password:
root@hcss-ecs-4ce7:~# whoami
root
root@hcss-ecs-4ce7:~# pwd
/root

#我們可以看到su、su-,都成功的切換到了root。
#不同的是su切換賬號并不會改變之前所處路徑,既su不會改變位置
#而su-會改變位置,之前是/下,切換之后在/root下




![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)


sudo:短暫的指令提權

如果我們需要使用root權限來執行一些指令,但是卻沒有root密碼怎么辦?

在指令最前面加上sudo,就可以使用root權限執行命令

hyc@hcss-ecs-4ce7:~$sudo ls
[sudo] passwordforhyc:



這樣確實方便,但是有一個問題:那豈不是人人都可以使用root權限了?這不亂套了?

Linux設計者當然考慮到了這個問題,普通用戶如果想要使用sudo進行指令提權。必須要root賬號給予普通賬號提權權限才行。所以并不是什么普通賬號都可以進行提權

沒有提權權限的賬戶,就會顯示以下報錯

hyc@hcss-ecs-4ce7:~$ sudo ls
[sudo] password for hyc:
hyc is not in the sudoers file. This incident will be reported.



總結:

普通 -> root:su(不會改變位置)

su-(會改變位置:默認切換至家目錄)

root -> 普通:su 用戶名

sodu : 指令提權

權限管理

權限的本質是:能做或者不能做什么事情(控制用戶行為,防止錯誤操作)

理解:

1.權限限制的是人

2.權限要求目標必須具備對應屬性:權限:角色+目標屬性(權限)

屬性

對于Linux中的屬性來說主要為三個:讀、寫、執行

讀:r

寫:w

執行:x

d72e9990-4061-11f0-b715-92fbcf53809c.png

之前我們說過第一個字母代表文件屬性,而后面的一串字符則代表該文件的權限。

r:對文件來說,代表可以讀取文件內容;對目錄來說,代表可以瀏覽目錄內容

w:對文件來說,代表可以修改文件內容;對目錄來說,代表可以刪除目錄中的內容

x:對文件來說,代表可以執行該文件;對目錄來說,代表可以進入該目錄

但是為什么這里有多個wrx呢?這就涉及到角色的問題。

角色

上面我們說了權限=角色+對應屬性。

屬性代表相應的角色擁有什么權限,那么我們是如何分辨角色呢?如何知道角色對應所擁有的權限呢?

首先我們可以通過命令行得知我們當前的角色、或者使用whoami指令

d74479ea-4061-11f0-b715-92fbcf53809c.png

然后根據當前用戶,來判斷其說擁有的權限

d765ff7a-4061-11f0-b715-92fbcf53809c.png

解釋:

我們當前用戶是root,對于第一個目錄來說,我們就是其擁有者。所對應擁有的權限則是rwx

而什么是所屬組?什么是other呢?

所屬組就是當前角色不是擁有者,但是與擁有者在同一個隊伍中。這時候就會匹配所屬組權限,這時候這個角色就是所屬者。

所屬組的存在是為了更精細化的權限管理。舉例:a組和b組都在同一臺Linux機器上開發項目,a組項目代碼需要公開出來讓a組全體成員都能看見,但是不希望b組看見。這時候就只需要將a組全體成員納入所屬組中,然后將other權限關閉,就可以實現。(現在很少用到了,了解即可)

other就是既不屬于擁有者,也不屬于所屬者的角色。這時候就會匹配other權限。

如何描述文件權限信息?

`-rw-r--r-- 1 root root 22902 May 18 11:51 new.txt`

對于new.txt這個文件來說權限的描述應該為:擁有者權限為rw,所屬組權限為r,other權限為r。

文件權限表示方法

1.字符表示法

3個字母為一組,分別為:r、w、x,如沒有對應權限則用 " - "表示。其順序是固定的不可交換

d783cc12-4061-11f0-b715-92fbcf53809c.png

2.8進制表示法

d7a77d92-4061-11f0-b715-92fbcf53809c.png

chmod指令

語法:chmod 參數 權限 文件名

功能:改變文件權限(只有root或者文件擁有者才有資格修改權限)

選項:

-R:遞歸的將目錄下的文件權限全部修改

參數:

u:擁有者

g:所屬組

o:other

a:有所用戶

實際操作展示 :

root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-r--r-- 1 root root 22902 May 18 11:51 new.txt

#關閉u的w權限
root@hcss-ecs-4ce7:~# chmod u-w new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-r--r--r-- 1 root root 22902 May 18 11:51 new.txt

#開放u的w權限
root@hcss-ecs-4ce7:~# chmod u+w new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-r--r-- 1 root root 22902 May 18 11:51 new.txt


#關閉u的多條權限
root@hcss-ecs-4ce7:~# chmod u-rw new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
----r--r-- 1 root root 22902 May 18 11:51 new.txt

#開放u的多條權限
root@hcss-ecs-4ce7:~# chmod u+rw new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-r--r-- 1 root root 22902 May 18 11:51 new.txt

#開放g的w權限
root@hcss-ecs-4ce7:~# chmod g+w new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-rw-r-- 1 root root 22902 May 18 11:51 new.txt

#關閉g的w權限
root@hcss-ecs-4ce7:~# chmod g-w new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-r--r-- 1 root root 22902 May 18 11:51 new.txt

#以此類推,其他的權限操作類似

另外也可以通過八進制來實現多個用戶權限的修改:

root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-r--r-- 1 root root 22902 May 18 11:51 new.txt

#通過3個8進制數字實現,對多個用戶權限修改
root@hcss-ecs-4ce7:~# chmod 000 new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
---------- 1 root root 22902 May 18 11:51 new.txt


root@hcss-ecs-4ce7:~# chmod 663 new.txt
root@hcss-ecs-4ce7:~# ls -l
total 28
drwxr-xr-x 5 root root 4096 May 20 13:58 new
-rw-rw--wx 1 root root 22902 May 18 11:51 new.txt

修改權限注意事項

1.任何人都可以修改文件權限嗎?

只有root和文件擁有者才能修改權限!

2.如果在進行相應操作時沒有權限會怎么樣?

系統會拒絕我們的指令請求

hyc@hcss-ecs-4ce7:~$ ls -l
total 0
-rw-rw-r-- 1 hyc hyc 0 May 24 23:07 new.txt

hyc@hcss-ecs-4ce7:~$ chmod u-r new.txt
hyc@hcss-ecs-4ce7:~$ ls -l
total 0
--w-rw-r-- 1 hyc hyc 0 May 24 23:07 new.txt

hyc@hcss-ecs-4ce7:~$ cat new.txt
cat: new.txt: Permission denied

3.確定權限信息時,系統會先確認誰?

先確認擁有者權限,再確認所屬組,最后是other。權限只會確定一次,不會多次確定,第一次匹配上的權限既為我們當前角色所擁有的權限。

4.root賬號權限?

擁有最高權限,不受一切權限的限制。所有設定的限制只針對普通賬號有用。

5.可執行權限?

我們之前所講的例子中都沒有可執行樣例,其實可執行程序是.exe文件。普通文件一般沒有x權限,當然即使擁有x權限也無法執行,因為其本身就不是可執行文件。

chown與chgrp指令

語法:chown 用戶名 文件名

功能:改變文件或目錄的擁有者

選項:-R 遞歸的修改目錄中所有文件的擁有者

語法:chgrp 所屬組名 文件名

功能:修改文件或目錄的所屬組

選項:-R遞歸修改目錄中所有文件的所屬組

使用chown修改擁有者、chgrp修改所屬組出現問題?

hyc@hcss-ecs-4ce7:~$ ls -l
total 0
-rw-rw-rw- 1 hyc hyc 0 May 24 23:07 new.txt

hyc@hcss-ecs-4ce7:~$ chown root new.txt
chown: changing ownership of 'new.txt': Operation not permitted

hyc@hcss-ecs-4ce7:~$ chgrp root new.txt
chgrp: changing group of 'new.txt': Operation not permitted


原因:

系統并不支持隨意的將文件的擁有者或所屬組修改,這一操作只有root權限才能被允許。所以在要在這句指令前加上sodu,或者切換為root賬號。

下面我切換為root賬號作為演示:

root@hcss-ecs-4ce7:~# ls -l
total 24
-rw-rw--wx 1 root root 22902 May 18 11:51 new.txt
root@hcss-ecs-4ce7:~# chown hyc new.txt
root@hcss-ecs-4ce7:~# ls -l
total 24
-rw-rw--wx 1 hyc root 22902 May 18 11:51 new.txt
root@hcss-ecs-4ce7:~# chgrp hyc new.txt
root@hcss-ecs-4ce7:~# ls -l
total 24
-rw-rw--wx 1 hyc hyc 22902 May 18 11:51 new.txt

目錄權限問題

1.rwx對于目錄來說意味這什么?

沒有r權限,無法查看其內容

hyc@hcss-ecs-4ce7:~$ ls -l
total 4
drwxrwxr-x 2 hyc hyc 4096 May 26 15:41 new
hyc@hcss-ecs-4ce7:~$ chmod u-r new
hyc@hcss-ecs-4ce7:~$ ls -l
total 4
d-wxrwxr-x 2 hyc hyc 4096 May 26 15:41 new

hyc@hcss-ecs-4ce7:~$ ls new
ls: cannot open directory 'new': Permission denied



沒有w權限,無法在其內部創建文件

hyc@hcss-ecs-4ce7:~$ ls -l
total 4
drwxrwxr-x 2 hyc hyc 4096 May 26 15:41 new
hyc@hcss-ecs-4ce7:~$ chmod u-w new
hyc@hcss-ecs-4ce7:~$ ls -l
total 4
dr-xrwxr-x 2 hyc hyc 4096 May 26 15:41 new
hyc@hcss-ecs-4ce7:~$ ls
new

hyc@hcss-ecs-4ce7:~$ touch ./new/my.txt
touch: cannot touch './new/my.txt': Permission denied

沒有x權限,無法進入目錄

hyc@hcss-ecs-4ce7:~$ ls -l
total 4
drw-rwxr-x 2 hyc hyc 4096 May 26 15:41 new
hyc@hcss-ecs-4ce7:~$ cd new
bash: cd: new: Permission denied



rwx這三個權限都與目錄的正常使用相關,所以我們創建的目錄默認權限這三個都有

2.理解Linux中多用戶是如何相互“隔離”的?

root@hcss-ecs-4ce7:~# ls -l /home
total 8
drwxr-x--- 3 hyc hyc 4096 May 26 15:41 hyc
drwxr-x--- 2 ye ye 4096 May 26 16:03 ye



所有用戶的other權限都是全部關閉的,任意用戶都無法進入。這就帶來了“隔離”

3.缺省權限

對于普通文件:默認起始權限是666

對于目錄:默認起始權限是777,帶x

但我們看到的默認權限一般都不是我們說所的起始權限 ,這是為什么?

root@hcss-ecs-4ce7:~# ls -l
total 4
drwxr-xr-x 2 root root 4096 May 26 16:59 new
-rw-r--r-- 1 root root  0 May 26 16:40 new.txt




因為Linux中存在一個東西叫做權限掩碼(umask)

root用戶的權限掩碼為:022

普通用戶的權限掩碼為:002

root@hcss-ecs-4ce7:~# umask
0022
(最前面的0表示八進制)



最終的權限=起始權限&(~umask)

d7bdb8f0-4061-11f0-b715-92fbcf53809c.png

umask的目的是什么?

凡是出現在umask上的權限,都不會出現在最終的權限上面。

umask為什么會出現?

可以讓我們自定義默認權限,是一種靈活滿足需求的表現

4.文件的刪除由誰決定?

一個文件是否可以被刪除與文件本身無關,而在于目錄的w權限。

粘滯鍵

如果有兩個或者多個用戶需要在文件層面上的相互合作,那么所創建的文件就不能在私人目錄下。將目錄創建根目錄下,這樣所有用戶就都可以訪問并寫入自己的內容。

但是這里存在一個問題,就是如果在眾多用戶中存在隔壁公式派來的內鬼(bushi),內鬼可以刪除自己的文件也可以刪除被人的文件(文件是否可以被刪除與自己無關,與文件的w權限有關)!

這該怎么辦??關閉w權限嗎?不行,這會影響其他用戶的正常使用,那怎么辦?

Linux給粘滯鍵有效的解決這一問題

`chmod +t`

給權限加上粘滯位,加上粘滯位的目錄有以下效果:

1.文件只能被root刪除

2.文件只能被其擁有者刪除

3.文件只能有該目錄的擁有者刪除

其實系統已經為我們準備好了這一特殊目錄,就是根目錄下的temp目錄

d7dc9112-4061-11f0-b715-92fbcf53809c.png

我們可以看到temp的other權限最后一個字母是t,這就代表粘滯位。

一般需要文件上的多人合作,都是在temp里進行。

鏈接:https://blog.csdn.net/huangyuchi/article/details/148154142

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11462

    瀏覽量

    212803
  • 操作系統
    +關注

    關注

    37

    文章

    7091

    瀏覽量

    124961
  • 程序
    +關注

    關注

    117

    文章

    3824

    瀏覽量

    82420

原文標題:Linux權限管理太復雜?3個命令輕松搞定!90%的人不知道的技巧

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    linux權限指令

    一、進入目錄需要哪些權限?在目錄中執行增刪查(cd, touch, ls, rm, mv等)改文件動作, 需要哪些權限權限分類可見,權限有四種:一種是執行
    發表于 07-04 06:58

    Linux 中文件權限管理的探討

    Linux 是一種多用戶的操作系統,其文件權限管理在文件管理中占有重要的地位。為了更好地把握Linux 的文件權限相關內容,本文以多種
    發表于 06-11 09:37 ?11次下載

    ARM指令詳解

    ARM指令詳解 內容提要 ARM指令集 ARM指令集分類與指令格式 ARM指令的尋址方
    發表于 03-09 09:39 ?263次下載
    ARM<b class='flag-5'>指令</b>集<b class='flag-5'>詳解</b>

    Linux改變文件或目錄的訪問權限命令

    Linux改變文件或目錄的訪問權限命令 Linux改變文件或目錄的訪問權限命令  Linux系統中的每個文件和目錄都有訪問許可
    發表于 01-18 12:46 ?1244次閱讀

    linux指令大全

    linux指令大全 名稱:cat 使用權限:所有使用者 使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName 說明:把檔案串連接后傳到基本輸出(螢幕或加 > fileName
    發表于 01-18 12:56 ?619次閱讀

    淺談Linux權限管理的ACL權限

    Linux權限管理是Linux很重要的一項內容,重則引起用戶信息泄露,輕則導致文件錯亂和丟失。企業服務器里有些目錄下面的東西暫時保密,不希望別人可以進入目錄并查看。有些文件希望別人可以看,但不能刪除。有些目錄只有root等管理員
    的頭像 發表于 08-18 11:13 ?9165次閱讀

    Linux進程權限的分析說明

     在linux下,關于文件權限,大部分人接觸比較多,也比較熟悉了解。但是對進程權限一般知之甚少。本文總結一下linux系統下進程權限問題和現
    發表于 07-17 10:55 ?970次閱讀

    linux修改文件權限

    我們首先使用`ls -l`指令查看文件的權限信息(以/etc/fstab為例)。
    的頭像 發表于 01-11 10:45 ?1232次閱讀

    linux文件訪問權限怎么設置

    Linux 文件訪問權限是操作系統中一個非常重要的概念。正確地設置文件訪問權限可以保護系統的安全性,防止未經授權的人員對文件進行修改、刪除或執行。本文將詳細介紹 Linux 文件訪問
    的頭像 發表于 11-23 10:20 ?1950次閱讀

    Linux把目錄權限給指定用戶

    Linux是一個開放源代碼的操作系統,它基于Unix的設計原則,提供了豐富的權限管理功能,允許用戶對系統中的文件和目錄進行精確的控制。在Linux中,每個文件和目錄都有相應的權限,這些
    的頭像 發表于 11-23 10:30 ?9152次閱讀

    詳解Linux中的權限控制

    本章將和大家分享Linux中的權限控制。廢話不多說,下面我們直接進入主題。
    的頭像 發表于 08-05 15:32 ?931次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>Linux</b>中的<b class='flag-5'>權限</b>控制

    Linux用戶身份與進程權限詳解

    在學習 Linux 系統權限相關的主題時,我們首先關注的基本都是文件的 ugo 權限。ugo 權限信息是文件的屬性,它指明了用戶與文件之間的
    的頭像 發表于 10-23 11:41 ?704次閱讀
    <b class='flag-5'>Linux</b>用戶身份與進程<b class='flag-5'>權限</b><b class='flag-5'>詳解</b>

    Linux文件權限詳解

    權限的意義在于允許某一個用戶或某個用戶組以規定的方式去訪問某個文件。
    的頭像 發表于 11-01 09:45 ?549次閱讀

    linux權限管理詳解

    權限:在計算機系統中,權限是指某個計算機用戶具有使用軟件資源的權利。
    的頭像 發表于 12-25 09:43 ?492次閱讀

    Linux權限管理基礎入門

    Linux的廣闊天空中,權限管理猶如一只翱翔的雄鷹,掌控著系統的安全與秩序。掌握Linux權限,不僅能讓你的系統管理更加得心應手,還能有效防止未授權訪問和數據泄露。本文將帶你深入探索
    的頭像 發表于 05-06 13:44 ?162次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>權限</b>管理基礎入門