#當出現下面這個錯誤的時候這是更新源的問題,要更改更新源。
(Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package vsftpd)
更新 /etc/apt/sources.list 文件中的地址,具體可以參考:Raspbian 中國軟件源
===========================================================================
文章中配置的local_umask與anon_umask值的介紹。
在Linux系統中,當我們創建文件的默認權限是怎么來的?如何改變這個默認權限呢?
在vsftpd配置中有local_umask項:local_umask=022
首先,我們要搞清楚umask是個啥子玩意兒?
當我們創建一個文件后,總是有一個默認權限的,那么這個權限是怎么來的呢?這就是umask干的事情。
umask設置了用戶創建文件的默認去除的權限,它與chmod的效果剛好相反,umask設置的是權限的“補碼”,也有叫它掩碼的,而chmod設置的是文件權限碼。
一般在會在/etc/profile、$ [HOME]/.bash_profile或$[HOME]/.profile中設置umask值。
如何計算umask值?
umask命令允許你設定文件創建時的缺省模式,對應每一類用戶(文件屬主、同組用戶、其他用戶)存在一個相應的umask值中的數字。對於文件來說,這一數字的最大值分別是6。系統不允許你在創建一個文本文件時就賦予它執行權限,必須在創建后用chmod命令增加這一權限。目錄則允許設置執行權限,這樣針對目錄來說,umask中各個數字最大可以到7。
umask是在linux中常見的一個東西,它其實是一個掩碼。當然,也有umask這樣一個命令,它是對用戶建立的文件的默認屬性的定義。該定義為:
假設umask為022,則對於一個文件夾的話,它的默認屬性為 777-022=755,這也就是我們平時建立文件夾的權限。
而對於一般的文件的話,則是用 666-022=644.
umask是unix操作系統的概念,umask決定目錄和文件被創建時得到的初始權限
umask = 022 時,新建的目錄 權限是755,文件的權限是 644
umask = 077 時,新建的目錄 權限是700,文件的權限時 600
vsftpd的local_umask和anon_umask借鑒了它,該命令的一般形式為:umask nnn
其中nnn為umask值,從000 – 777。
我們只要記住umask是從權限中“拿走”相應的位即可。下表是umask值與權限的對照表:
umask值文件權限目錄權限
umask值 | 文件權限 | 目錄權限 |
---|---|---|
0 | 6 | 7 |
1 | 6 | 6 |
2 | 4 | 5 |
3 | 4 | 4 |
4 | 2 | 3 |
5 | 2 | 2 |
6 | 0 | 1 |
7 | 0 | 0 |
默認情況下vsftp上傳之后文件的權限是600,目錄權限是700
想要修改上傳之后文件的權限,有兩種情況
1.如果使用vsftp的是本地用戶,則要修改配置文件中的 local_umask 的值
2.如果使用vsftp的是虛擬用戶,則要修改配置文件中的 anon_umask 的值
如:umask值為022,則默認目錄權限為755,默認文件權限為644。
多點例子:
如果配置的umask值為000,則默認目錄權限為777,默認文件權限為666
如果配置的umask值為047,則默認目錄權限為730,默認文件權限為620
是不是很簡單呢,呵呵呵
參考出處:
https://blog.csdn.net/faye0412/article/details/6280755
http://blog.sina.com.cn/s/blog_49fd52cf0100nekk.html