tapitapi’s blog

1日1杯タピオカ!エンジニア

SCPコマンドで、ローカルのフォルダをXserverにコピー

ローカルのファイルをフォルダごとXserver上にコピーしたいな、、いちいち管理画面で操作したくないし、、

 

ということで、SCPコマンドを使ってローカルフォルダをXserver上にコピーする方法を紹介します

 

1.エックスサーバーでsshの設定

下記を参考に、秘密鍵(今回はexample.keyとします)をダウンロード

www.xserver.ne.jp

 

2. 秘密鍵配置と権限変更

// .sshフォルダがまだない場合は作成

$ mkdir ~/.ssh

 

// 1でダウンロードしたKeyを.sshフォルダへ移動

$ mv ~/Downloads/example.key ~/.ssh/

 

// .sshフォルダへ移動

$ cd ~/.ssh/

 

// Keyの名前を変更

$ mv example.key xserver_ssh_key

 

//  権限を変更

$ chmod 700 ~/.ssh

$ chmod 600 ~/.ssh/xserver_ssh_key

  

 

3. サーバへSSH接続ができるか試す

$ ssh -l サーバーID -i  ~/.ssh/xserver_ssh_key サーバーID.xsrv.jp -p 10022

 

ログインできたらexitコマンドで、ローカルに戻る

 

4. ローカルのフォルダをXserverへコピー

scp -i ~/.ssh/xserver_ssh_key -P 10022 -C -r コピーしたいローカルフォルダパス ユーザ名@サーバーID.xsrv.jp:/home/ユーザ名/サーバーID.xsrv.jp/public_html/

 

*-P は必ず大文字で(-p はNG)

*-C  でフォルダが圧縮されます

*フォルダではなくファイルをコピーしたい場合は、-rオプションなしで直接ローカルファイルパスを記載すればOK

 

以上ですー!!

 

-P でポート10022を指定しないとXserverにコピーできなかったので、(Pオプションないと、ポート22で接続しにいってしまい失敗する)ここでハマってしまって時間がかかってしまいました、、、

 

おやすみなさい