概要
SSH経由でファイルやディレクトリをコピーします。単発転送や手早い退避に便利です。
基本構文
scp [オプション] 送信元 送信先詳細解説
scpは、SSHを使ってファイルを安全にコピーするコマンドです。ローカルとリモート、あるいはリモート同士の転送を簡潔に書けるため、日常運用でよく使われます。
近年のOpenSSHでは、scpが既定でSFTP方式を用いる方向へ変わっており、古い挙動を前提にした手順との差に注意が必要です。
単発転送には便利ですが、大量同期や再実行性が重要ならrsync、対話的操作ならsftpのほうが向くことがあります。
このコマンドを使う場面
単発のファイル退避、ログ取得、手早い配布に使います。
まず安全に試す方法
1. scp file.txt localhost:/tmp/
2. scp localhost:/etc/hosts .
3分ミッション
少しでも手を動かすと定着しやすくなります。終わった項目にチェックを入れてください。
-
単一ファイル転送の基本形を確認します。
-
送受方向の書き方の違いを整理します。
資格試験との関連
-
LinuC レベル1
範囲: ネットワーク確認と接続の基本根拠: editorialscpはLinuCレベル1相当の理解を深めるのに役立つコマンドです。
-
LPIC-1
範囲: ネットワーク確認と接続の基本根拠: editorialscpはLPIC-1相当の基本事項を整理するのに有効です。
-
共通基礎
範囲: Linuxコマンド基礎根拠: editorial試験横断で、scpはLinux運用の基礎体力を支える重要コマンドです。
実行結果サンプル
-
scp user@example.com:/var/log/app.log .app.log 100% ...
戻り値コード
- 0 正常終了。転送に成功しました。
- >0 認証失敗、到達不能、パス不正などで転送できませんでした。
使用例
scp file.txt user@example.com:/tmp/scp -r dir user@example.com:/srv/scp -P 2222 -i ~/.ssh/id_ed25519 file.txt user@example.com:/tmp/
よくあるエラー
-
ワイルドカードやパス解釈が想定と違う 原因: 既定プロトコルやシェル解釈の違いを意識していません。対処: 必要に応じて互換オプションや引用を見直します。
-
大量転送が遅くてつらい 原因: scpは差分同期向けではありません。対処: 再実行性や効率が必要ならrsyncを検討します。
導入・互換性情報
OpenSSHでは既定プロトコルの扱いが変わっています。古いSCPプロトコル挙動が必要な場合は互換オプションの理解が必要です。
注意点 / セキュリティリスク
危険度は中程度です。転送先パスや接続先を取り違えると誤配布や情報漏えいにつながります。
FAQ
-
Q. sftpと何が違いますか。 A. scpは単発コピー向き、sftpは対話的なファイル操作向きです。
-
Q. 今もSCPプロトコルを使っていますか。 A. OpenSSHでは既定が変わっており、古い挙動を前提にしないほうが安全です。
関連用語
参照リンク
- カテゴリー: Networking
- レベル: Practical
- 対応試験: LinuC, LinuC レベル1, LPIC, LPIC-1, 共通基礎