SCPコマンドの使い方

scpコマンド初めて使ったので備忘録として書いておく

SCPコマンドとは

SCPコマンドとはlinuxでsshプロトコルを利用してマシンとファイルをやり取りするためのコマンド

 

使い方

基本

[code]scp username@IpOrHostName:sourcepath username@IpOrHostName:destpath[/code]

ローカルからリモート

[code]scp sourcepath remoteusername@IpOrHostName:destpath[/code]

リモートからローカル

[code]scp remoteusername@IpOrHostName:destpath sourcepath[/code]

ローカルからリモート(ssh configを用いた例)

[code]scp sourcepath registhostname:destpath[/code]

リモートからローカル(ssh configを用いた例)

[code]scp registhostname:sourcepath destpath [/code]

オプション

 

 
オプション意味
-Bバッチモードで動作する(パスワード入力などを求めない)
-l リミット使用帯域をKbit/秒単位で指定する
-pコピー元のタイムスタンプやパーミッションを保持する
-P ポート番号接続に使用するポート番号を指定する
-i IDファイル接続に使用する公開鍵ファイルを指定する
-C全ての通信を圧縮する
-c 暗号化方法通信を暗号化する方法を指定する(「3des」「blowfish」「des」が指定可能)
-1SSHv1(SSHプロトコルバージョン1)だけを使用する
-2SSHv2(SSHプロトコルバージョン2)だけを使用する
-4IPv4だけを使用する
-6IPv6だけを使用する
-F 設定ファイルSSHの設定ファイルを指定する
-o 設定パラメータSSHの設定パラメータを指定する(設定ファイルに書かれた内容より優先される)
-qエラーメッセージや診断メッセージを表示しない(quiet mode)
-vデバッグメッセージを表示する(verbose mode)

 

具体例

ローカルからリモート

[code]scp -P 22 -i ~./ssh/id_rsa /home/test.txt tsujiikenta@192.168.0.2:/home/test.txt[/code]

リモートからローカル

[code]scp -P 22 -i ~./ssh/id_rsa tsujiikenta@192.168.0.2:/home/test.txt /home/test.txt[/code]

ローカルからリモート(ssh configを用いた例)

[code]scp /home/test.txt KentaHomeServer:/home/test.txt[/code]

リモートからローカル(ssh configを用いた例)

[code]scp KentaHomeServer:/home/test.txt /home/test.txt[/code]

 

はまった点

permission denied (publickey)

というエラー。自分の場合はローカルからリモートにファイルを転送したのですが、転送先のディレクリに権限がなかった。。。。
同じ現象の方はローカルファイル、転送先の権限確認してみてください!

 

以上

コメント

タイトルとURLをコピーしました