從遠端 Mac 到 SSH 伺服器的 SCP 失敗

從遠端 Mac 到 SSH 伺服器的 SCP 失敗

我見過這個問題的許多變體,但我認為沒有任何東西適合我的具體情況。

我在工作時使用一台透過 SSH 連接到伺服器的電腦。在這台伺服器上時,我想從家裡的 Mac 上 SCP 一些檔案。

我可以透過 SSH 從伺服器連接到我的 Mac,使用正常命令沒有問題:

ssh [email protected]

然而,當我嘗試 SCP 時,我得到:-bash: /usr/bin/scp: 權限被拒絕

我正在使用命令:

scp [email protected]:/absolute/filepath/i* local/folder

我也嘗試過 number -p 標誌。我的 Mac 上只有一個帳戶,它是管理帳戶。我不確定是否存在權限問題,或者是因為我透過 SSH 連接到伺服器還是其他原因。

當我在家中的 Mac 上執行此操作時,我還能夠成功從伺服器到我的 Mac 進行 SCP。

有什麼建議麼?

編輯:其他相關資訊最初是作為評論發布,因為我對協議有一個腦放屁。 (我的錯)。

特別與我關於能夠「反轉」SCP 的最後一句話相關:當我作為本機登入我的 Mac 時,以下命令有效:

scp -P 22003 [email protected]:Data/path/i* /Full/Path/On/Mac/

ls -l /usr/bin/scp在伺服器(本地)上運行返回以下內容:

rwxr-x---。 1 root root 67648 八月 31 12:40 /usr/bin/scp

ls -l /usr/bin/scp在 Mac(遠端)上運行將返回以下內容:

-rwxr-xr-x 1 根輪 81360 12 月 1 日 14:45 /usr/bin/scp

答案1

上面的命令失敗並出現指定的錯誤,但當我作為本機登入 Mac 時,以下命令有效:

scp -P 22003 [email protected]:Data/path/i* /Full/Path/On/Mac/

因此,您無法從伺服器訪問,/usr/bin/scp您會收到“訪問被拒絕”錯誤。導致此類錯誤的原因可能有很多,例如檔案權限。

由於您可以scp從 Mac 上進行操作,也可以ssh從伺服器到 Mac 上進行操作,所以我認為這就是您目前應該做的。ssh進入 Mac 並scp從那裡。

要解決伺服器上的問題,請先檢查您是否在/usr/bin/scp伺服器上具有執行權限:

ls -l /usr/bin/scp

你會看到類似的東西:

-rwxr-xr-x 1 root root 84104 Jan 16 14:28 /usr/bin/scp
   ^  ^  ^

基本上,該檔案由使用者擁有root(具有讀取、寫入、執行功能),群組成員root具有讀取和執行權限,而世界也是如此(其他所有人都已登入)

如果您x在命令上有(執行)privs,則使用scp -v它可以增加詳細程度(您可以添加更多v,最多三個,iirc),您可能會看到一條訊息,告訴您出了什麼問題。您也可以嘗試ldd /usr/bin/scp查看所有依賴項是否都存在並且可讀。

相關內容