web-dev-qa-db-ja.com

crontabでnetcatを実行します

2つのシステムがあります

1: 192.168.0.31 
2: 192.168.0.32

システム1の端末から以下のコマンドを実行しました

tar -zcf - test | pv | nc -l -p 5555 -q 5

システム2ターミナルから以下のコマンドを実行しました

nc 192.168.0.31 5555 | pv | tar -zxf -

システム2にコピーされたすべてのファイルを含む完全なテストフォルダー

crontabなどを使用して両方のコマンドをスケジュールするにはどうすればよいですか?

2
shaji

あるコンピューターのデータを別のコンピューターにバックアップ/コピーしたいようです。

非常にシンプルで安全なソリューションは、scpに基づくsshを使用することです。

scpサンプルコマンドは次のようになります。

scp -r /path/to/local/folder user@remotehost:/path/to/remote/folder

例えば.

  • 仮定して:

    • ユーザー名はshajiです
    • 192.168.0.31/home/shajiからファイルをコピーしたい
    • 192.168.0.32フォルダー/backup/shaji/backup
  • 192.168.0.31で次のコマンドを実行する必要があります。

    scp -r /home/shaji [email protected]:/home/shaji/backup

注:crontabを使用してscp commandを実行できます

man scp

scp —セキュアコピー(リモートファイルコピープログラム)

説明

 scp copies files between hosts on a network.  It uses ssh(1) for data
 transfer, and uses the same authentication and provides the same security
 as ssh(1).  Unlike rcp(1), scp will ask for passwords or passphrases if
 they are needed for authentication.

 File names may contain a user and Host specification to indicate that the
 file is to be copied to/from that Host.  Local file names can be made
 explicit using absolute or relative pathnames to avoid scp treating file
 names containing ‘:’ as Host specifiers.  Copies between two remote hosts
 are also permitted.

 -r      Recursively copy entire directories.  Note that scp follows
         symbolic links encountered in the tree traversal.

いくつかの事前要件があります。

  • sshdはリモートホストで実行する必要があります
  • リモートホストへのパスワードなしのsshアクセスの設定- askubuntu Q&Aを参照
2
Yaron