Linux で scp コマンドを使用してファイルをリモートでコピーする方法の詳細な説明

Linux で scp コマンドを使用してファイルをリモートでコピーする方法の詳細な説明

序文

scp は secure copy の略です。scp は、Linux システムの ssh ログインに基づいて安全にリモート ファイルをコピーするためのコマンドです。 Linux の scp コマンドを使用すると、Linux サーバー間でファイルとディレクトリをコピーできます。

使用する構文:

scp [パラメータ] [送信元パス] @IP:/送信先パス

scp パラメータは次のとおりです。

-1: scp コマンドにプロトコル ssh1 の使用を強制する

-2: scp コマンドにプロトコル ssh2 の使用を強制する

-4: scp コマンドが IPv4 アドレスのみを使用するように強制します

-6: scp コマンドが IPv6 アドレスのみを使用するように強制する

-B: バッチモードを使用する (転送中に転送パスワードやフレーズを要求しない)

-C: 圧縮を有効にします。 (圧縮を有効にするには、ssh に -C フラグを渡します)

-p: 元のファイルの変更時刻、アクセス時刻、およびアクセス許可を保持します。

-q: 転送進行状況バーを表示しません。

-r: ディレクトリ全体を再帰的にコピーします。

-v: 出力を詳細モードで表示します。 scp および ssh(1) はプロセス全体を通じてデバッグ情報を表示します。この情報は、接続、認証、および構成の問題をデバッグするために使用されます。

-c cipher: 暗号を使用してデータ転送を暗号化します。このオプションは ssh に直接渡されます。

-F ssh_config: 代替の ssh 構成ファイルを指定します。このパラメータは ssh に直接渡されます。

-i identity_file: 指定されたファイルから送信に使用するキー ファイルを読み取ります。このパラメーターは ssh に直接渡されます。

-l limit: ユーザーが使用できる帯域幅を Kbit/s 単位で制限します。

-o ssh_option: ssh_config(5)を使用してパラメータを渡すのに慣れている場合は、

-P ポート: 大文字の P であることに注意してください。ポートはデータ転送に使用されるポート番号です。

-S プログラム: 暗号化された送信に使用するプログラムを指定します。プログラムはssh(1)オプションを理解する必要があります。

テスト: サーバー サーバー IP 192.168.43.117 バックアップ サーバー IP 192.168.43.200

①ローカルからリモートにデータをコピーする:

server/tmp/ディレクトリをリモート バックアップ server/text ディレクトリにコピーします。

scp -r /tmp/ ルート@192.168.43.200: /テキスト

バックアップ サーバーにコピーされたデータを表示します。

②リモートからローカルにデータをコピーする:

バックアップ サーバーの text ディレクトリにある 123.log ファイルをローカル サーバーの tmp ディレクトリにコピーします。

scp ルート@192.168.43.200:/text/123.log /tmp/ 

scp は Linux でファイルをリモートコピーするためのコマンドです。似たようなコマンドに cp がありますが、cp はローカルでのみファイルをコピーし、サーバー間でファイルをコピーすることはできません。また、scp の送信は暗号化されます。速度に若干影響が出る可能性があります。サーバーのハードディスクが読み取り専用システムになった場合は、scp を使用してファイルを移動することができます。また、scp はリソースをあまり消費せず、システム負荷もそれほど増加しません。この点では、rsync は scp よりはるかに劣っています。 rsync は scp よりも高速ですが、小さなファイルが多数ある場合、rsync ではハードディスクの I/O が非常に高くなりますが、scp では基本的にシステムの通常の使用に影響はありません。 scp がマシン間でコピーされる際のデータのセキュリティを向上させるために、ssh 接続と暗号化が使用されます。マシン間で ssh パスワードフリー ログインが設定されている場合、scp を使用するときにパスワードは必要ありません。

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

以下もご興味があるかもしれません:
  • Vue-CLI 3 scp2 プロジェクトのサーバーへの自動デプロイ方法
  • Python は scp を呼び出してファイルをサーバーにアップロードする例
  • Windows で秘密鍵を介して ssh と scp を使用する方法
  • Pythonはscpコマンドを実行して、ファイルとフォルダをリモートホストのディレクトリにコピーします。
  • Linuxはscpコマンドを使用してファイルをローカルコンピュータにコピーし、ローカルファイルをリモートサーバーにコピーします。
  • bash スクリプトで ssh/scp コマンドにパスワードを渡す方法の詳細な説明
  • Python Pexpectはパスワード入力によるscpコピーの方法を実装します
  • scp は Linux サーバーから別の Linux サーバーにデータをコピーします
  • Androidでscp操作を実装する方法

<<:  Vue プロジェクト コード分割ソリューション

>>:  MySQL におけるデータベース間関連クエリメソッド

推薦する

HTML テーブル タグ チュートリアル (34): 行スパン属性 ROWSPAN

複雑なテーブル構造では、一部のセルが水平方向に複数のセルにまたがるため、行間属性 ROWSPAN を...

Windows 2019 アクティベーション チュートリアル (Office2019)

数日前、Server2019の正式版がリリースされたことを知り、面白半分でインストールしてみることに...

JavaScript スタイル オブジェクトと CurrentStyle オブジェクトのケース スタディ

1. スタイルオブジェクトスタイル オブジェクトは単一のスタイル宣言を表し、スタイルが適用されている...

CSS3を使用してトランジションとアニメーション効果を実現する

JS アニメーションの代わりに CSS アニメーションを使用する必要があるのはなぜですか? Java...

Ubuntu 20.04でAliソースを変更する方法

なお、この記事では、単に 20.04 ソースに変更する方法を説明するのではなく、20.04 に基づい...

ウェブページの表の分割線を削除する方法

<br />Web テーブルの分割線を削除する方法。実際、上記の 3 つの表はいずれも ...

Linux (Ubuntu) での MySQL 5.7.17 のインストールと設定のチュートリアル

序文以前、MySQL 5.6 をインストールしました。3 か月後、開発者から MySQL で JSO...

IDEA に基づいて Tomcat サーバーを展開するための詳細な手順

目次導入ステップ1ステップ2: アイデアで動的Webプロジェクトを作成するステップ3: Tomcat...

Webpack コンポーネントの使用状況統計を実装するための 50 行のコード

背景最近、リーダーからコンポーネント ライブラリを構築するように依頼があり、プロジェクトで現在使用さ...

Windows に MySQL 8.0.16 をインストールする手順とエラーの解決方法

1. はじめに: mysql8以降は、これまでよく使われていたバージョンと比べてかなり変更点が大きい...

Windows 8 での MySQL Community Server 5.6 のインストールと設定のチュートリアル

この記事では、Windows 8 での MySQL5.6 のインストールと設定のチュートリアルを記録...

MySQL データベースの show processlist コマンドの使用の分析

実際のプロジェクト開発では、多数のクエリや挿入、特にマルチスレッド挿入など、データベースに大きな負荷...

重要なmysqlログファイルの概要

著者: 丁易出典: https://chengxuzhixin.com/blog/post/mysq...

Linux における mv コマンドの高度な使用例

序文mv コマンドは、move の略語で、ファイルを移動したり、ファイル名を変更したり (ファイルの...

HTMLページの読み込み速度を上げる方法

(1)HTTPリクエストを減らす。 (リソース ファイルをマージし、イメージ スプライトを使用します...