當時情況:
- 使用的是普通用戶,上傳本地文件到遠程服務器的一個文件夾下失敗,傳輸失敗報:無法啓動傳輸
上傳失敗原因:
- 普通用戶對這個文件夾權限不夠,沒有寫權限,查看這個文件夾的權限分配可通過登錄xshell,通過下命令查看:
ls -ld
這裏以我的爲例子(我是查看server文件夾的權限):
先進入這個文件夾下
執行命令
zsh@iZ11rzn3f6tZ:~$ cd /alidata/server
zsh@iZ11rzn3f6tZ:/alidata/server$ ls -ld
drwxr-xrwx 9 root root 4096 Jun 8 10:53 .
這裏第三行中的drwxr-xrwx就是文件夾權限說明,這裏來分析一下每個字母的意思:
d表示目錄(文件夾)
d後面每三個字母爲一組來分析
rwx表示文件所有者對該文件夾的權限爲:可讀、可寫、可執行
r-x表示文件夾所屬的組用戶對該文件夾的權限爲可:可讀、不可寫、可執行
rwx表示其他用戶對該文件夾的的權限爲:可讀、可寫、可執行(這裏我本來的的權限爲r-x,所以不能上傳文件,後來改爲rwx後就可上傳文件了)
好了,問題分析清楚了,解決辦法就明朗了
解決辦法:
查看是否因爲用戶權限不夠,通過上面的辦法查看
若當前用戶沒有可寫的權限(要看你當前用戶是組用戶還是其他用戶),就是權限行裏面,對應的用戶權限裏沒有r
修改文件夾權限,通過以下方法:
sudo chmod 0757 /*/*/文件夾名字
這裏說明一下0757 的意思:
0755=rwxr-xr-x=0(4+2+1)(4+0+1)(4+0+1)
7表示擁有所有的權限:讀、寫、執行
注意:我這裏的當前用戶屬於其他用戶,所以設置的是最後一個數字爲7,如果你當前用戶屬於組用戶,則設置爲0775即可
這裏就可以正常上傳文件了