在被告知虛擬專用伺服器不適合我的專案範圍後,我膽怯地進入了專用託管的世界。不幸的是,這迫使我如何學習 Linux 伺服器管理員的基礎知識。
GoDaddy 有一個伺服器主帳戶。當你使用SSH時,他們希望你使用「su」切換到root使用者。到目前為止,我已經能夠以 root 使用者身分透過命令列完成迄今為止所需的所有操作。
但是,現在我需要將文件上傳到我的伺服器。我習慣使用WinSCP上傳檔案。我可以使用我的通用伺服器帳戶來查看文件,但是當我嘗試拖曳或建立文件時,它說我不能,因為我沒有這樣做的權限。
我研究了WinSCP文檔,似乎這個「su」功能超出了程式的範圍。
我如何授予自己使用 SSH 上傳這些文件的權限?
我應該創建一個具有適當權限的使用者嗎?我很高興這樣做,但到目前為止我還無法理解我在網路上找到的內容。
我將嘗試並繼續前進,但任何幫助和/或見解都會受到讚賞。
答案1
我對 GoDaddy 不熟悉,但您可以使用 Winscp 將檔案上傳到某個目錄。有限使用者俱有寫入權限 - 即主目錄
然後ssh到伺服器,su root並將檔案移動到正確的位置並最終調整權限
如果伺服器上安裝了一些控制台檔案管理器,例如 Midnight Commander (mc),您可以使用它
答案2
您可以su
在 WinSCP 中運行,但弄清楚如何運行並不是很直觀。
在連線設定中的環境/SCP/Shell 下,尋找頂部的項目(在該方塊中稱為「Shell」),鍵入su -
... 或您想要的任何命令。通常,這用於選擇要執行哪個 shell - 但是當您只是輸入類似的命令時su -
,它將使用 root 的設定檔(選項)以 root 身分開始 shell 會話-
,因此將執行 root 的預設 shell。
答案3
一種解決方案是使用scp
而不是winscp
.這需要一台運行 *nix 的本機。 Cygwin 將允許您在 Windows 中本機執行 *nix。或者如果你有一台空閒的計算機,你可以在上面安裝linux。或雙啟動您的電腦。或使用 Mac。
答案4
我認為更好的問題是為什麼要嘗試透過 scp 以 root 身分更新文件?如果這是部署檔案的問題,您應該研究設定管理系統和安裝程式。
例如,如果您要複製配置,請查看 puppet 或 cfengine。如果您正在考慮安裝程序,請查看特定 Linux 發行版的套件管理系統(aptitude、yum 等)。
我還可以告訴您,您的最終解決方案是以用戶身份登錄root
,但這會帶來巨大的安全漏洞,並且在大多數系統上都已停用。但如果您想走這條路,您可以透過開啟 SSH 設定(最有可能在/etc/ssh/sshd_config
)並設定來重新啟用 root 登入:
PermitRootLogin yes
然後重新啟動sshd:
sudo /etc/init.d/sshd restart
安德魯