scp - 藉由 ssh 的遠端檔案傳輸指令
先前在鳥哥的網站上看到一個不錯的指令 scp,它主要的功用是用來複製兩主機間的檔案,用法就與 cp 類似,只不過多了個使用者名稱 (username) 與遠端位置 (remote address)。
1.1. 本地端需安裝 openssh-client 套件。
1.2. 遠端需安裝 openssh-server 套件。
2.2. 由遠端主機複製檔案至本機。
2.3. ssh 預設走的 Port 為 22,如果有自訂其他 Port 可加上 -P 參數。
2.4. 若有多個檔案,則可以使用 -r 參數來進行。
※ 註:在 GNU/Linux 的世界裡,若檔案或目錄的第一個字元為 . 時則為隱藏檔。
1. 安裝 ssh
在使用 scp 指令之前先在本地端以及遠端安裝對應的套件方可運作,畢竟 scp 是靠 ssh 在運作的。1.1. 本地端需安裝 openssh-client 套件。
[ jonny@local ~ ]
$ sudo apt-get install openssh-client [Enter]
1.2. 遠端需安裝 openssh-server 套件。
[ jonny@remote ~ ]
$ sudo apt-get install openssh-server [Enter]
2. 指令說明
2.1. 將檔案由本機複製到遠端主機。[ jonny@local ~ ]
$ scp FileName jonny@remote:/home/jonny/ [Enter]
jonny@remote's password: # 此為遠端使用者密碼。
FileName 100% 0 0.0KB/s 00:00
- FileName: 預複製的檔案名稱。
- jonny: 遠端使用者。
- remote: 遠端伺服器的位址,可以是 IP 也可以是網域名稱(Domain name)。
- /home/jonny/: 遠端伺服器內的檔案位置。
2.2. 由遠端主機複製檔案至本機。
[ jonny@local ~ ]
$ scp jonny@remote-server.net:/home/jonny/.bashrc .
jonny@remote's password: # 此為遠端使用者密碼。
.bashrc 100% 0 0.0KB/s 00:00
- jonny: 遠端使用者。
- remote: 遠端伺服器的位址,可以是 IP 也可以是網域名稱(Domain name)。
- /home/jonny/.bashrc: 遠端伺服器內的檔案位置。
- .: 當前目錄。
2.3. ssh 預設走的 Port 為 22,如果有自訂其他 Port 可加上 -P 參數。
[ jonny@local ~ ]
$ scp -P 2222 FileName jonny@remote:/home/jonny/ [Enter]
2.4. 若有多個檔案,則可以使用 -r 參數來進行。
[ jonny@local ~ ]
$ scp -r FileName* jonny@remote:/home/jonny/ [Enter]
※ 註:在 GNU/Linux 的世界裡,若檔案或目錄的第一個字元為 . 時則為隱藏檔。
資料來源:
★鳥哥的 Linux 私房菜 - SSH 伺服器 - 4.3 ssh 用戶端連線 - scp
我試者從Linux丟到
回覆刪除Ubuntu 10
最後卻是timeout
請問知道怎麼處理
首先您要確定..
回覆刪除1. ubuntu 10 (server) 有無安裝 openssh-server。
sudo aptitude install openssh-server
2. ubuntu 10 (server) 的防火牆是否擋住 22 port。
sudo iptables -L
您可以參考:
zh-tw/HowTos/Network/IPTables - CentOS Wiki、CreMaker 的生活雜記: 談談 ufw