關于文件權限管理了解和使用

                文件權限管理

  文件屬性格式             

關于文件權限管理了解和使用

文件屬性操作

chown          設置文件的所有者

chgrp          設置文件的屬組信息

 修改文件的屬主:

chown [選項] [所有者][:[組]] file

         

命令中的冒號可用.替換;

-R :遞歸操作文件或目錄

chown [選項] –reference=RFLE FILE

       -rw-r–r–. 1 root root    0 8月   3 18:17 xiaomage   這是沒更改屬主時候的文件 

例如:~]# chown -R makangbo xiaomage  

(命令加選項-R 將原來的屬主root 修改為makangbo屬主 后面跟文件名稱)

       -rw-r–r–. 1 makangbo root    0 8月   3 18:17 xiaomage   這是更改成功的結果

       

 修改文件的屬組

chgrp [選項] group file

chgrp [選項] –reference=RFILE FILE 

-R : 遞歸操作文件或目錄

      -rw-r–r–. 1 makangbo root    0 8月   3 18:17 xiaomage   

      (這個是上面改過屬主的, 然后組還沒改)

  

例如:~]# chgrp -R makangbo xiaomage  

(命令選項-R makangbo組名  xiaomge文件)

       -rw-r–r–. 1 makangbo xiaomage    0 8月   3 18:17 xiaomag   

       (這個就是更改過組的,將原來的root組更改為makangbo組)

            

文件權限的主要對三類對象進行定義

owner: 屬組,u

group: 屬組,g

other: 其他,o

每個文件針對每類訪問者都定義了三種權限

r:  readable  可讀的 

w:  writable  可寫的

x:  excutable 可執行的針對二進制程序或腳本 

文件的權限

r:可使用文件查看類工具獲取里面內容

w:可修改文件里面的內容

x:可以把此文件提交給內核啟動為一個進程操作,對二進制程序或腳本有效

目錄的權限

r:可以查看dir內文件列表,但不能訪問文件,不能cd,也不能查看文件的元數據

w:可以在dir中創建文件,,也可以刪除此dir中的文件

x:可以使用查看類命令查看dir中的列表,可以cd進入此dir

X:只給目錄x權限,不給文件x權限 (前提是本身沒有x權限)

關于文件權限管理了解和使用

文件權限,示意圖

權選項    文件類型    讀    寫    執行    讀     寫    執行   讀   寫   執行

字符表示(d|l|c|s|p)(r)  (w)    (x)    (r)    (w)   (x)    (r)  (w)  (x)          

數字表示               4     2      1      4      2     1      4    2     1

權限分配             (  文件所有者  )   文件所屬組用戶)    ( 其他用戶 )      

關于文件權限管理了解和使用

八進制數字

— 000 0

–x 001 1

-w- 010 2

-wx 011 3

r– 100 4

r-x 101 5

rw- 110 6      例如

rwx-111 7      640 ; rw-r—–   (其中rw-是6  r–是4   —是0 )

               755;  rwxr-xr-x   (其中rwx是7  r-x是5 r-x=5)    

                

                                                        

      umask值,可以用來保留在創建文件權限                                        

umask 666 文件

umask 777 目錄

dir: 777-umask  目錄的最大

file:666-umask  文件的最大 ;有奇數加1,偶數保留

非特權用戶是002

root的umask是022

umask  查看結果

umask [權限掩碼]  設定

umask -S 新建文件直接模式顯示

umask -p 輸出可被調用

全局設置 : /etc/bashrc 

用戶設置:~/.bashrc

   修改文件權限

chmod [選項] 八進制數字的方式 文件

-R遞歸修改權限

修改一類用戶的所有權限

u=權限      UID=什么權限

g=權限

o=權限     不是管理員的用戶=權限

ug=權限     UID和GID=權限

a=ugo

修改一類用戶某位或某些位權限

u+   

u-

g+

g-

o+

o-

a+

a-

+  增加權限

–  減去權限

特殊權限

suid

sgid

sticky

進程有屬主和屬組;文件有屬主和屬組

》任何一個可執行程序文件能不能啟動為進程,取決于發起者對程序文件是否擁有執行權限

》啟動為進程后,其進程的屬主為發起者;進程的屬組為發起者所屬的組

可執行文件上suid權限

啟動為進程之后,其進程的屬主為原文件的屬主

chmod u+s file     增加文件權限 。

      相對應普通用戶的權限,s相當于繼承root的權限,進行某些操作 (只有二進制程序才有意義)

chmod u-s file     減去文件權限 。  suid設置在目錄上無意義

可執行文件上sgid權限

啟動進程之后,其進程的屬主為源程序文件的屬組

chmod g+s  file   相對應組的GID  權限   (作用二進制程序)

chmod g-s  file   

目錄上的sgid權限

如果作用在目錄上將使該目錄中新建文件或目錄將自動繼承該目錄所屬組

通常用戶創建一個協作目錄

chmod g+ dir

chmod g- dir

sticky具有寫權限的目錄通常用戶可以刪除該目錄中的任何文件,無論該文件的權限或擁有權

在目錄上設置sticky,只有文件的所有者或者root可以刪除該文件

對文件無效

chmod o-t dir

chmod o-t dir

例如 ~]# ls -ld /tmp

        rwxrwxrwt. 13 root root 4096 8月   4 08:40 /tmp    加了t權限的

suid;sgid都占據屬主的執行權限位

s代表UID擁有x權限,S表帶UID沒有x權限

     GID                GID

t占據其他的執行權限位

不管是suid和sgid還有sticky三個都要配合x權限

設定文件特定屬性

chattr +i   不能刪除,改名,更改

chattr +a   只能增加

lsattr  顯示特定屬性

關于ACL : Access Control List 實現靈活的權限管理

除了文件的所有著,所屬組和其他人,可以對更多的用戶設置權限

ACL生效順序:所屬主,自定義ACL屬主,所屬組,自定義ACL組 ,其他用戶

 setfacl -m u:xiaommage:0(rwx) file

(命令選項) (用戶名稱 )(給定權限) 文件)

 setfacl -x u:xiaoamge file

(命令選項)(用戶名名稱)(文件)

 getfacl file

 (查看文件給定的用戶權限)

 不僅可以設定用戶權限   也可以g組設定權限

 setfacl -m u:xiaomage:rwx file

(命令選項 uid用戶名:權限:文件)

 setfacl -m g:xiaomage:rwx file

(命令選項 gid用戶名:權限:文件)

 setfacl -m d:u:xiaomage:rwx file 

 (  加了d選項,就是指以后在文件夾中創建的文件都帶有該權限    )

 setfacl -k dir   刪除默認ACL權限

 

getfacl file1 | setfacl –set-file=-  file2

  復制file1的ACL權限給file2 

]# getfacl f1 | setfacl –set-file=- f2

 (命令)(file)(管道傳給命令=f1 到f2)

從file1文件中保存到file2文件中,保留了ACL權限

 setfacl -b file

(命令選項清空文件內所有ACL權限)

 批量加權限

vim file.txt

u:xiaomage:0

u:xiaomage:rwx

g:xiaoamge:rx

g:xiaomage:0

setfacl -M file.txt (調用文檔內容并執行)

 批量刪權限

vim file2.txt

u:xiaomage:0

u:xiaomage:rwx

g:xiaoamge:0

g:xiaomage:rwx

setfacl -X file.txt(調用文檔內容并執行)

ACL文件上的group權限是mask值 自定義用戶或者組,擁有組的最大權限,而不是傳統的組權限

  一旦設置ACL權限后,權限已經變成mask的權限

mask的權限相當于高壓線   其他用戶只能比他小,或者相等。

用戶或組的設置必須存在與mask權限設定的方位內才會生效

格式:setfacl -m mask::rx file

備份和恢復ACL

主要文件操作命令cp和mv都支持ACL,只是cp命令需要加上-p參數。

但是tar等常見的備份工具是不會保留目錄和文件的ACL信息

 cp -a file dirfile

 cp -p file dirfile

getfacl -R /tmp/dir1 > acl.txt

(命令加選項)(指定某個目錄路徑)(重定向到文本文檔中)

getfacl -R * > /dir1/file.txt

(在當前目錄下將所有的ACL重定向到某個目錄中并定義名稱)

setfacl -R -b /tmp/dir1

(命令加選項)-b清空目錄中的ACL

setfacl -R –set-file=cal.txt /tmp/dir1 file.txt*

(命令加選項) (命令=讀取文檔恢復ACL) (到指定的文件目錄)

原創文章,作者:小馬哥,如若轉載,請注明出處:http://www.www58058.com/28963

(0)
小馬哥小馬哥
上一篇 2016-08-05 10:18
下一篇 2016-08-05 10:18

相關推薦

  • 淺析linux軟、硬鏈接

    軟鏈接 硬鏈接 不同點 創建時會占用新的inode號, 不會占用 可以跨分區 不可以跨分區 與源文件是兩個不同的文件,不會增加文件鏈接數 與源文件數據相同,會增加文件鏈接數 依賴于鏈接的文件名,當刪除或移動源文件后,連接可能失效 不依賴于源文件名,刪除或移動源文件后,硬鏈接依然使用 對文件,目錄都可以執行鏈接操作 只能對文件執行鏈接操作 大小為指向源文件路徑…

    Linux干貨 2016-12-05
  • Linux的文件系統架構基礎

    前言     當今計算機操作系統來說常見功能主要有:進程調度、內存管理、文件系統管理、網絡協議棧支持、驅動程序管理、安全功能等。所有對于我們來講學習Linux文件系統也是一個十分重要的知識,也是學習Linux的必備基礎知識,學習好Linux的文件系統知識也是為接下來學習Linux的其他知識奠定良好的基礎 關鍵詞  &n…

    Linux干貨 2015-04-16
  • 重構-改善既有代碼的設計:重構原則(二)

    1.什么是重構 重構(Refactoring):在不改變軟件的功能和外部可見性的情況下,為了改善軟件的結構,提高清晰性、可擴展性和可重用性而對軟件進行的改造,對代碼內部的結構進行優化。 2.為何重構   1)改進軟件設計(整理代碼) 重構和設計是相輔相成的,它和設計彼此互補。有了重構,你仍然必須做預先的設計,但是不必是最優的設計,只需要一個合理的解…

    Linux干貨 2015-04-07
  • 常見文件管理命令及bash特性

    cat:查看文件文本內容  -n:顯示行號  [root@study ~]# cat -n /etc/passwd  1  root:x:0:0:root:/root:/bin/bash  2  bin:x:1:1:bin:/bin:/sb…

    系統運維 2016-11-06
  • 搜索引擎的檢索模型-查詢與文檔的相關度計算

    1. 檢索模型概述       搜索結果排序時搜索引擎最核心的部分,很大程度度上決定了搜索引擎的質量好壞及用戶滿意度。實際搜索結果排序的因子有很多,但最主要的兩個因素是用戶查詢和網頁內容的相關度,以及網頁鏈接情況。這里我們主要總結網頁內容和用戶查詢相關的內容。     &nbsp…

    2015-12-10
  • Http協議中的各種長度限制總結

    HTTP1.0的格式 request(HTTP請求消息)結構:一個請求行.部分消息頭,以及實體內容,其中的一些消息內容都是可選擇的.消息頭和實體內容之間要用空行分開. GET /index.html HTTP/1.1 //請求頭,下面都是消息頭.Accept: */*Accept-Languang:en-usConnection:keep-aliveHost…

    Linux干貨 2015-04-04

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-07 23:51

    文章整體結構層次清晰,對命令的總結很詳細,但是少了一些具體實踐,在以后的寫作中可以加上自己的實際操作部分。

欧美性久久久久