Linux_shell_文件安全與權限(03)

1.8 umask

當最初登錄到系統時,umask命令確定了你創建文件的缺省模式

umask命令允許你設定文件創建時的缺省模式,對應每一類用戶(文件屬主、同組用戶、其他用戶)存在一個相應的umask值中的數字。

對於文件來說,這一數字最大值分別是6.(系統不允許你在創建一個文本文件時就賦於執行權限,需用chmod增加)

對於目錄來說,這一數字最大值分別是7

 

計算umsak值:

計算umsak值的方法 我們只要記住umask是從權限中"拿走"相應的位即可

示例:

1.首先寫下具有全部權限的模式,即777(所以用戶具有讀、寫、執行權限)

2.按照umask值寫下相應的位

3.對於目錄來說,寫下上面兩行沒有匹配的位

4.對於文件來說 ,在創建是不具有執行權限,拿掉相應的執行權限位即可

我們按照上面的假設umask值爲002:

1. rwx rwx rwx   (777)

2. ---   ---   -w-     (umask值爲:002)

3.rwx rwx r-x    (寫下沒有匹配的位:775)     兩行匹配位爲其他用戶的w權限位  所以把其它位寫下 即是目錄創建缺省權限

4.rw- rw- r--     (寫下沒有匹配的位,並去掉執行權限:664)  即是文件創建的缺省權限

 

 

 

下面我們在Linux下使用umask:

1.首先使用下面命令設置umask值:

# umask 002          

2.接着創建一個目錄和一個文件

  使用下面命令創建目錄

  # mkdir cs

  #ls -l

  drwxrwxr-x 2 root root 4096 05-23 12:57 cs        創建了一個cs目錄 其缺省值爲775

 使用下面命令創建文件

  # touch css

  #ls -l

  -rw-rw-r-- 1 root root    0 05-23 12:58 css            創建了一個css文件 其缺省值爲 664

 

 

 

 

使用如下命令查看當前使用umask值:

# umask

如果想要修改其值 只需重新設置即可

# umask 002

 

一般來說,umask命令是在/etc/profile文件中設置的,每個用戶在登錄時候會引用這個文件,所以如果希望改變所有用戶的umask,可以在該文件中加入相應條目。如果希望永久性的設置自己的umask值,那麼就把它放在自己$HOME目錄下的.profile或.bash_profile文件中。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章