前一篇博客咱們講解了Linux文件和目錄處理命令,仍是老生常淡,對於新手而言,咱們不須要徹底記住命令的詳細語法,記住該命令能完成什麼功能,而後須要的時候去查就行了,用的多了咱們就天然記住了。這篇博客咱們接着講Linux命令——連接命令和權限管理命令。linux
①、命令名稱:lnshell
②、英文原意:linkwindows
③、命令所在路徑:/bin/linkpost
④、執行權限:全部用戶url
⑤、功能描述:生成連接文件spa
⑥、語法: ln -s 【源文件】【目標文件】3d
-s 建立軟連接htm
不加 -s 建立硬連接blog
例子:1、建立文件 /etc/issue 的軟連接 /tmp/issue.soft:ln -s /etc/issue /tmp/issue.soft
2、建立文件 /etc/issue 的硬連接 /tmp/issue.hard:ln /etc/issue /tmp/issue.hard
咱們能夠看到:
第一:軟連接 前面是 l 開頭的(link),而硬連接是 - 開頭,表示文件
第二:軟連接全部者和所屬組具備所有操做的權限,rwxrwxrwx;而硬連接不是。也就是軟連接的前面都是 lrwxrwxrwx
第三:軟連接相似與 windows 的快捷方式,有一個明顯的箭頭指向,而指向的是源文件
第四:硬連接文件除了文件名與源文件不同,其他全部信息都是同樣的。相似於 cp 複製操做。可是又和複製不同,硬連接能夠同步更新。
第五:經過 ls -i 操做,來查看 文件的 i 節點。發現硬連接和源文件的 i 節點是相同的,而軟連接與源文件的 i 節點是不一樣的
第六:不容許將硬連接指向目錄;不容許跨分區建立硬連接
①、命令名稱:chmod
②、英文原意:change the permissions mode of a file
③、命令所在路徑:/bin/chmod
④、執行權限:全部用戶
⑤、功能描述:改變文件或目錄權限
⑥、語法: chmod 【{ugoa}{+-=}{rwx}】【文件或目錄】
【mode=421】【文件或目錄】
-R 遞歸修改
注意:不是每個Linux用戶都有權限更改某個文件或目錄權限,能更改文件或目錄權限的只有兩種用戶
①、文件的全部者。咱們經過ls命令查看某個文件的詳細信息,能夠看到該文件的全部者。
②、root用戶,這不用多說,root用戶是linux系統權限最大的用戶。別人不能幹的事,root用戶都能幹。
對於上面的語法 chmod 【{ugoa}{+-=}{rwx}】【文件或目錄】,咱們要知道ugoa分別是:u:表示全部者,g:表示所屬組,o:表示其餘人,a:表示全部人。而rwx表示的意思以下:
對於【mode=421】【文件或目錄】,這是咱們將權限用數字表示,其中 r 表示4,w表示2,x表示1,分別是2的0次方,1次方,2次方。那麼咱們能夠這樣理解:具備 rwx 權限的數字就是 7,具備 rw- 權限的數字是 6,具備 r-- 權限的數字是 4。
範例1:咱們賦予 tmp 目錄下的 tmp.log 全部者 x 的權限;賦予 所屬組 w 權限,其餘人 w 權限。
chmod u+x /tmp/tmp.log
chmod g+w,o+w /tmp/tmp.log
將上面例子改成用 數字來操做,也就是說咱們要給 tmp.log賦予的文件權限是 rwxrw-rw-,用數字表示是766。chmod 766 tmp.log
咱們還能夠遞歸賦予權限,也就是加上 -R 參數給指定目錄下的全部文件或目錄賦予指定權限。
範例2:給 tmp 目錄下全部文件和目錄賦予 776 的權限
chmod -R 776 /tmp
①、命令名稱:chown
②、英文原意:change file ownership
③、命令所在路徑:/bin/chown
④、執行權限:全部用戶
⑤、功能描述:改變文件或目錄的全部者
⑥、語法: chmod 【用戶】【文件或目錄】
注意:能更改文件或目錄的全部者用戶是 root
這裏咱們經過useradd【用戶名】命令建立用戶,而後經過passwd【用戶名】輸入密碼,這兩個命令後面會將。咱們經過這兩個命令建立 vae 用戶
而後咱們將tmp.log的全部者更改成 vae 用戶:chown vae tmp.log
①、命令名稱:chgrp
②、英文原意:change file group ownership
③、命令所在路徑:/bin/chown
④、執行權限:全部用戶
⑤、功能描述:改變文件或目錄的所屬組
⑥、語法: chgrp【用戶組】【文件或目錄】
注意:能更改文件或目錄的全部者用戶是 root
①、命令名稱:umask
②、英文原意:the user file-creation mask
③、命令所在路徑:shell 內置命令
④、執行權限:全部用戶
⑤、功能描述:顯示、設置文件的缺省權限
⑥、語法: umask 【-S】
-S 以rwx形式顯示新建文件的缺省權限
注意:可能你們不太明白這個命令的意思,咱們分別執行umask和 umask -S ,以下:
其中umask 執行顯示結果是 0022,第一個0表示特殊權限,後面咱們會單獨進行講解有哪幾種特殊權限。022表示權限的掩碼值,咱們用7 7 7 減去 0 2 2獲得755(是每一位相減),表示的就是下面經過加上-S輸出的rwxr-xr-x,這個值用數字表示就是755.
這個意思說明建立一個文件的默認權限全部者爲rwx,所屬組爲rx,其餘人爲rx。也就是說建立一個新文件默認權限爲 rwxr-xr-x,咱們建立一個文件來驗證一下:
咱們發現使用touch命令建立了一個文件a.txt,而後發現權限並非rwxr-xr-x,而是rw-r--r--。對比發現少了三個x,也就是少了可執行權限。這是爲何呢?
這是由於在Linux系統中,全部新建立的文件都是沒有可執行權限的。這是出於Linux系統的一種自我保護,由於相似的病毒木馬程序都是具備可執行權限的。因此在Linux系統中,新建立的文件是沒有可執行權限的。
那麼咱們如何設置默認權限呢?好比咱們想將新建立的文件權限設置爲rwxr-xr--,也就是754。咱們用777減去754獲得023。也就是經過執行 umask 023 來完成默認權限設置。
本篇文章咱們講解了連接命令ln和權限管理命令。首先對於連接命令,咱們要注意 ln -s 表示建立軟連接,不加-s表示建立硬連接,咱們須要注意軟連接和硬連接的區別,軟連接相似與 windows 的快捷方式,有一個明顯的箭頭指向,而指向的是源文件。而硬連接咱們能夠想象爲 cp -p +同步更新,也就是說建立的硬連接和原文件保持同樣的屬性,並且原文件更改了,硬連接也會更改。
接着咱們介紹了幾個權限管理命令,對於權限,咱們說夠用就好,不少新手在進行權限操做是,上來就是 chmod 777 【文件或目錄】,這樣雖然省事,可是顯然是不夠準確的,chmod命令能夠更改文件或目錄權限,chown命令能夠改變文件或目錄全部者,chgrp命令能夠改變文件或目錄所屬組。咱們須要注意的是,後面兩個命令只能由root用戶來完成,而chmod命令除了root用戶能完成,還有所更改文件或目錄的全部者。