詳解ftp創(chuàng)建文件權(quán)限問(wèn)題
詳解ftp創(chuàng)建文件權(quán)限問(wèn)題
一、問(wèn)題
有一個(gè)這樣的需求,admin為一個(gè)Linux為其FTP應(yīng)用創(chuàng)建的一個(gè)有權(quán)限限制的用戶(hù),通過(guò)admin用戶(hù)可以進(jìn)行登錄FTP服務(wù),登錄FTP服務(wù)后,創(chuàng)建文件夾,該文件夾的用戶(hù)和用戶(hù)組都是admin,屬性為755,即只有admin用戶(hù)才有寫(xiě)的權(quán)限,但是,F(xiàn)TP后臺(tái)是通過(guò)b用戶(hù)登錄linux系統(tǒng)執(zhí)行程序上傳文件到FTP服務(wù)器,由于FTP服務(wù)器的文件夾都是由admin用戶(hù)創(chuàng)建的,且屬性為755,b用戶(hù)根本沒(méi)有寫(xiě)的權(quán)限,導(dǎo)致程序上傳文件失敗。
二、分析
那么解決問(wèn)題的方法應(yīng)該很容易,既然admin用戶(hù)創(chuàng)建的目錄默認(rèn)屬性為755,那么只要將默認(rèn)屬性改為775,并將b用戶(hù)添加到admin所屬用戶(hù)組里面去,問(wèn)題就解決了。
三、解決
1、因?yàn)橄到y(tǒng)默認(rèn)的登錄用戶(hù)是b,為了方便測(cè)試,需要登錄到admin用戶(hù),然后創(chuàng)建文件夾看看默認(rèn)屬性是否改變。通過(guò)b用戶(hù)su到admin用戶(hù)的時(shí)候報(bào)出了 This account is currently not available. 錯(cuò)誤。才想到,當(dāng)時(shí)創(chuàng)建admin用戶(hù)的時(shí)候是用戶(hù)的shell是禁止登錄的,這里為了方便測(cè)試,通過(guò)如下命令開(kāi)啟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用戶(hù)創(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,新建一個(gè)文件夾看看,發(fā)現(xiàn)其權(quán)限還是755
4、由于對(duì)FTP并不熟悉,開(kāi)始并沒(méi)有想到FTP那里去,而是在搗鼓各種Linux用戶(hù)組和用戶(hù)權(quán)限的設(shè)置,嘗試都沒(méi)有用。最后靜下來(lái)慢慢思考,突然想到,用admin賬戶(hù)登錄FTP創(chuàng)建的文件屬性一直是755,這里登錄的只是FTP應(yīng)用,沒(méi)有登錄到shell,所以才會(huì)不受Linux環(huán)境變量中umask的影響,而修改umask后的admin登錄shell后創(chuàng)建的文件屬性是775,這里登錄到了shell,是根據(jù)umask的值沒(méi)有問(wèn)題。既然發(fā)現(xiàn)了問(wèn)題,那么想到FTP應(yīng)該也會(huì)有類(lèi)似Linux umask的設(shè)置才對(duì),于是找到了FTP的配置文件,果然發(fā)現(xiàn)了如下的參數(shù):
5、修改FTP的Umask的值為002,重啟FTP服務(wù),發(fā)現(xiàn)問(wèn)題解決了。
注:這次問(wèn)題雖小,也比較快解決了,告誡自己!在搗鼓一些應(yīng)用服務(wù)的前,要先充分了解和熟悉這些應(yīng)用服務(wù)的資料配置等,切莫貪快,否則,出現(xiàn)了問(wèn)題,自己都不知道從何排查。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章:
1. Win10搭建FTP服務(wù)器實(shí)現(xiàn)局域網(wǎng)內(nèi)訪(fǎng)問(wèn)2. centos7下如何安裝ftp服務(wù)3. windows server2008 R2搭建ftp服務(wù)器的圖文教程4. vsftpd的530 Login incorrect錯(cuò)誤解決方法 vsftpd登錄錯(cuò)誤5. win10下FTP服務(wù)器搭建圖文教程6. windows Server 2008R2 FTP服務(wù)器搭建圖文教程7. CentOS7搭設(shè)FTP服務(wù)器的方法步驟8. win10搭建配置ftp服務(wù)器的方法9. Serv-U FTP與AD完美集成方案詳解10. CentOS6.9中搭建FTP服務(wù)器的方法
