アンドロイド

linux sftpコマンドを使用してファイルを転送する方法

Правила чтения с нуля. Буквы F, S. Буквосочетание CH. Учимся читать без акцента. Французский язык.

Правила чтения с нуля. Буквы F, S. Буквосочетание CH. Учимся читать без акцента. Французский язык.

目次:

Anonim

SFTP(SSHファイル転送プロトコル)は、暗号化されたSSHトランスポートを介してファイルにアクセス、管理、および転送するために使用される安全なファイルプロトコルです。

従来のFTPプロトコルと比較すると、SFTPはFTPのすべての機能を提供し、構成が簡単です。

ファイル転送のみを許可する scp command とは異なり、 sftp コマンドを使用すると、リモートファイルに対してさまざまな操作を実行し、ファイル転送を再開できます。

このチュートリアルでは、Linuxの sftp コマンドの使用方法を示します。

あなたが始める前に

SFTP経由でファイルを転送および管理できるようにするには、リモートシステムに対する書き込み権限が必要です。

大きなファイルを転送する場合、画面またはtmuxセッション内でsftpコマンドを実行することをお勧めします。

sftp コマンドを実行するディレクトリは、ローカルの作業ディレクトリです。

SFTP接続の確立

SFTPはクライアントサーバーモデルで動作します。 SSHのサブシステムであり、すべてのSSH認証メカニズムをサポートしています。

従来のパスワード認証はデフォルトで設定されていて使いやすいですが、SSH / SFTPを介してサーバーに定期的に接続する場合は、SSHキーを作成し、パスワードなしのSFTPログインを設定することをお勧めします。

リモートシステムへのSFTP接続を開くには、 sftp コマンドの後にリモートサーバーのユーザー名とIPアドレスまたはドメイン名を続けて使用します。

sftp remote_username@server_ip_or_hostname

接続されると、 sftp プロンプトが表示され、リモートマシンとの対話を開始できます。

Connected to remote_username@server_ip_or_hostname. sftp>

リモートSSHサーバーがデフォルトのポート22でリッスンしていない場合は、 -oPort オプションを使用して代替ポートを指定します。

sftp -oPort=custom_port remote_username@server_ip_or_hostname

SFTPコマンド

SFTPコマンドのほとんどは、Linuxシェルプロンプトで使用するコマンドと類似または同一です。

help または ? 入力 help と、使用可能なすべてのSFTPコマンドのリストを取得できます ?

help

Available commands: bye Quit sftp cd path Change remote directory to 'path'…… version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help

SFTPを使用したナビゲーション

リモートサーバーにログインすると、現在の作業ディレクトリがリモートユーザーのホームディレクトリになります。 次のように入力して確認できます。

pwd

Remote working directory: /home/remote_username

ファイルとディレクトリをリストするには、 ls コマンドを使用します。

ls

別のディレクトリに移動するには、 cd コマンドを使用します。 たとえば、 /tmp ディレクトリに切り替えるには、次のように入力します。

cd /tmp

上記のコマンドは、遠隔地をナビゲートして作業するために使用されます。

sftp シェルは、ローカルナビゲーション、情報、およびファイル管理用のコマンドも提供します。 ローカルコマンドの先頭には文字 l が付いています。

たとえば、ローカルの作業ディレクトリを印刷するには、次のように入力します。

cd lpwd

Local working directory: /home/local_username

SFTPを使用したファイルの転送

SFTPを使用すると、2台のマシン間でファイルを安全に転送できます。

sftp コマンドは、GUIを使用せずにサーバーで作業し、リモートファイルでファイルを転送したり、他の操作を実行したりする場合に便利です。

SFTPコマンドを使用したファイルのダウンロード

リモートサーバーにログインすると、現在の作業ディレクトリがリモートユーザーのホームディレクトリになります。

sftp コマンドを使用してファイルをダウンロードすると、ファイルは sftp コマンドを入力したディレクトリにダウンロードされます。

リモートサーバーから単一のファイルをダウンロードするには、 get コマンドを使用し get

get filename.zip

出力は次のようになります。

Fetching /home/remote_username/filename.zip to filename.zip /home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13

get filename.zip local_filename.zip

リモートシステムからディレクトリをダウンロードするには、再帰 -r オプションを使用します。

get -r remote_directory

ファイル転送が失敗または中断した場合、 reget コマンドを使用して再開できます。

reget の構文は get の構文と同じ get

reget filename.zip

SFTPコマンドを使用したファイルのアップロード

ローカルマシンからリモートSFTPサーバーにファイルをアップロードするには、 put コマンドを使用します。

put filename.zip

出力は次のようになります。

Uploading filename.zip to /home/remote_username/filename.zip filename.zip 100% 12MB 1.7MB/s 00:06

アップロードするファイルが現在の作業ディレクトリにない場合は、ファイルへの絶対パスを使用します。

put を使用する場合、 get コマンドで使用できるものと同じオプションを使用できます。

ローカルディレクトリをアップロードするには、次のように入力します。

put -r locale_directory

中断したアップロードを再開するには:

reput filename.zip

SFTPを使用したファイル操作

通常、リモートサーバーでタスクを実行するには、SSHを介して接続し、シェルターミナルを使用して作業を行います。 ただし、状況によっては、ユーザーはリモートサーバーへのSFTPアクセスのみを持つ場合があります。

SFTPでは、いくつかの基本的なファイル操作コマンドを実行できます。 以下に、SFTPシェルの使用方法の例をいくつか示します。

  • リモートシステムのディスク使用量に関する情報を取得します。

    df

    Size Used Avail (root) %Capacity 20616252 1548776 18002580 19067476 7%

    リモートサーバーに新しいディレクトリを作成します。

    mkdir directory_name

    リモートサーバー上のファイルの名前を変更します。

    rename file_name new_file_name

    リモートサーバー上のファイルを削除します。

    rm file_name

    リモートサーバー上のディレクトリを削除します。

    rmdir directory_name

    リモートシステム上のファイルの権限を変更します。

    chmod 644 file_name

    リモートシステム上のファイルの所有者を変更します。

    chown user_id file_name

    chown および chgrp コマンドにユーザーIDを提供する必要があります。

    リモートファイルのグループ所有者を次のように変更します。

    chgrp group_id file_name

作業が完了したら、 bye または quit 入力して接続を閉じます。

結論

このチュートリアルでは、 sftp コマンドを使用してリモートSFTPサーバーにファイルをダウンロードおよびアップロードする方法を示しました。

SSHキーベースの認証を設定し、パスワードを入力せずにLinuxサーバーに接続することもできます。

ご質問やご意見がありましたら、お気軽にコメントをお寄せください。

sftpターミナル