溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

詳解ftp創(chuàng)建文件權(quán)限問題

發(fā)布時間:2020-08-26 20:22:18 來源:腳本之家 閱讀:902 作者:heshan307 欄目:服務(wù)器

詳解ftp創(chuàng)建文件權(quán)限問題

一、問題

有一個這樣的需求,admin為一個Linux為其FTP應(yīng)用創(chuàng)建的一個有權(quán)限限制的用戶,通過admin用戶可以進(jìn)行登錄FTP服務(wù),登錄FTP服務(wù)后,創(chuàng)建文件夾,該文件夾的用戶和用戶組都是admin,屬性為755,即只有admin用戶才有寫的權(quán)限,但是,F(xiàn)TP后臺是通過b用戶登錄linux系統(tǒng)執(zhí)行程序上傳文件到FTP服務(wù)器,由于FTP服務(wù)器的文件夾都是由admin用戶創(chuàng)建的,且屬性為755,b用戶根本沒有寫的權(quán)限,導(dǎo)致程序上傳文件失敗。

二、分析

那么解決問題的方法應(yīng)該很容易,既然admin用戶創(chuàng)建的目錄默認(rèn)屬性為755,那么只要將默認(rèn)屬性改為775,并將b用戶添加到admin所屬用戶組里面去,問題就解決了。

三、解決

1、因為系統(tǒng)默認(rèn)的登錄用戶是b,為了方便測試,需要登錄到admin用戶,然后創(chuàng)建文件夾看看默認(rèn)屬性是否改變。通過b用戶su到admin用戶的時候報出了  This account is currently not available.  錯誤。才想到,當(dāng)時創(chuàng)建admin用戶的時候是用戶的shell是禁止登錄的,這里為了方便測試,通過如下命令開啟shell登錄:

  $ sudo usermod -s /bin/bash admin

2、然后修改系統(tǒng)環(huán)境變量/etc/profile文件,設(shè)置umask為002 (目錄默認(rèn)屬性 777-002=775,文件默認(rèn)屬性 666-002= 664),source 文件生效后,切換到admin用戶創(chuàng)建文件夾試試:發(fā)現(xiàn)目錄的默認(rèn)屬性成功改了,變?yōu)?55了

   drwxrwxr-x 2 admin admin 4.0K Dec 6 22:54 a

3、然后用admin登錄FTP,新建一個文件夾看看,發(fā)現(xiàn)其權(quán)限還是755

詳解ftp創(chuàng)建文件權(quán)限問題

4、由于對FTP并不熟悉,開始并沒有想到FTP那里去,而是在搗鼓各種Linux用戶組和用戶權(quán)限的設(shè)置,嘗試都沒有用。最后靜下來慢慢思考,突然想到,用admin賬戶登錄FTP創(chuàng)建的文件屬性一直是755,這里登錄的只是FTP應(yīng)用,沒有登錄到shell,所以才會不受Linux環(huán)境變量中umask的影響,而修改umask后的admin登錄shell后創(chuàng)建的文件屬性是775,這里登錄到了shell,是根據(jù)umask的值沒有問題。既然發(fā)現(xiàn)了問題,那么想到FTP應(yīng)該也會有類似Linux  umask的設(shè)置才對,于是找到了FTP的配置文件,果然發(fā)現(xiàn)了如下的參數(shù):

詳解ftp創(chuàng)建文件權(quán)限問題

5、修改FTP的Umask的值為002,重啟FTP服務(wù),發(fā)現(xiàn)問題解決了。

注:這次問題雖小,也比較快解決了,告誡自己!在搗鼓一些應(yīng)用服務(wù)的前,要先充分了解和熟悉這些應(yīng)用服務(wù)的資料配置等,切莫貪快,否則,出現(xiàn)了問題,自己都不知道從何排查。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI