Articles

ubuntu上のファイルをコピーするには、rsyncコマンドを使用する方法

rsyncは、ファ rsyncは、コンピュータからリモートマシンにファイルをコピーするために使用されます,リモートマシンからコンピュータに,ディレクトリから同じコンピュータ上の別のディレクトリに,お使いのコンピュータから外付けハードドライブやネットワーク共有などに. rsyncは、増分バックアップを取るためにも使用できます。この記事では、rsyncコマンドを使用してファイルとディレクトリをコピーし、増分バックアップを取る方法を紹介します。 私はデモのためにUbuntuを使用します。 しかし、現代のLinuxディストリビューションは正常に動作するはずです。 それでは、始めましょう。Rsyncをインストールする:

RsyncはUbuntuに既にインストールされている必要があります。 しかし、何らかの理由でコンピュータにインストールされていない場合は、次のコマンドを使用してUbuntuの公式パッケージリポジトリから簡単にインスh3>rsyncコマンドの形式:

rsyncコマンドの基本形式は、

source rsyncオプションソース宛先
  • ソースは、ファイル、ディレクトリ、またはネットワー
  • 宛先は、ディレクトリまたはネットワークパスにすることができます。
  • rsyncには多くのオプションがあります。 これらのオプションを使用してrsyncの動作を変更できます。 私たちは、道に沿って最も一般的なオプションのいくつかを見てみましょう。rsyncを使用するときは、次のことを知っている必要があります。

:myfiles/などのrsyncのソースのディレクトリ名の後に/を置くと、ディレクトリ内のすべてのファイルをコピー先にのみコピーすることを意味します。

  • myfilesなどのrsyncのソースのディレクトリ名の後に/を入れないと、rsyncはディレクトリからディレクトリを含むすべてのファイルをコピー先にコピーします。
  • 存在しない宛先ディレクトリパスを入力すると、rsyncは必要に応じて自動的に作成します。
  • rsyncを使用したローカルファイルとディレクトリのバックアップ:

    rsyncを使用すると、コンピュータ上のあるディレクトリから別のディレクトリにファイルを非常に迅速にコピーできます。たとえば、~/Downloadsディレクトリに重要なファイルがあるとします。 ここで、~/Downloadsディレクトリからすべてのファイルを/mnt/myusbディレクトリにマウントされたUSBサムドライブ/dev/sdb1にバックアップします。

    ~/Downloadsディレクトリにダミーファイルを作ってみましょう。p>

    touch touch~/Downloads/test{1..100}

    次のrsyncコマンドを使用して、~/Downloadsディレクトリから/mnt/myusbディレクトリにすべてのファイルをコピーします。

    $rsync-avzh~/downloads//mnt/myusb

    ファイルをコピーする必要があります。あなたが見ることができるように、ファイルは/mnt/myusbディレクトリにあります。次のように、~/Downloadsディレクトリ全体をUSBサムドライブにコピーすることもできます。

    $rsync-avzh~/Downloads/mnt/myusb

    $rsync-avzh~/Downloads/mnt/myusb

    ~rsync-avzh~/Downloads/mnt/myusb

    ~rsync-avzh~/Downloads/mnt/myusb

    ~rsync-avzh~/Downloads/mnt/myusb

    ~rsync-avzh~/Downloads/mnt/myusb

    ~rsync-avzh~/Downloads/mnt/myusb

    ~rsync-avzh~/Downloads/あなたが見ることができるように、ディレクトリ全体がusbサムドライブにコピーされます。ここでも、~/DownloadsディレクトリからすべてのファイルをUSBサムドライブの別のディレクトリ(mydownloads/としましょう)にコピーする場合は、rsyncを次のように実行します。

    $rsync-avzh~/downloads//mnt/myusb/mydownloads

    ご覧のように、ファイルはusbサムドライブに正しくコピーされます。

    rsyncを使用してリモートファイルとディレクトリをバックアップします。

    rsyncを使用すると、バックア ローカルのファイルシステムからリモートバックアップサーバーにファイルとディレクトリをコピーすることもできます。 rsyncは、リモートサーバーとの間でファイルとディレクトリをコピーするためにSSHを使用します。ファイルバックアップの目的でrsyncを使用する場合は、SSHサーバーパッケージ(Ubuntuのopenssh-server)とrsyncパッケージがリモートサーバーにインストールされている必要があります。

    たとえば、/wwwディレクトリのすべてのコンテンツ(ディレクトリを含む)をリモートサーバーからコピーしたいとしますwww.example1.com ローカルファイルシステムのパス/mnt/myusbにマウントされているUSBサムドライブに。これを行うには、次のrsyncコマンドを使用します。

    $rsync-avzh [email protected]:/www /mnt/myusb

    メモ: ここで、rootはリモートユーザー名です。www.example1.com はリモートサーバーのDNS名、/wwwはリモートサーバー上のディレクトリパスです。 必要に応じて、DNS名の代わりにリモートサーバーのIPアドレスを使用することもできます。初めてリモートサーバーに接続している場合は、次のメッセージが表示されることがあります。 はいと入力して、<Enter>を押します。ここで、リモートユーザー(私の場合はroot)のパスワードを入力し、<Enter>を押します。p>

    ディレクトリ/wwwを含む/wwwディレクトリ内のすべてのファイルとディレクトリは、下のスクリーンショッまた、rsyncを使用して、ローカルファイルシステムからリモートサーバーにファイルをコピーすることもできます。

    前の例では、リモートサーバー上の/wwwディレクトリのバックアップを取得しました。 ここで、リモートサーバー内のファイルの一部が破損しており、バックアップからそれらを回復したいとしましょう。これを行うには、次のようにrsyncコマンドを実行します。

    $rsync-avzh/mnt/myusb/www/[email protected]:/www

    今、あなたのリモートサーバーのパスワードを入力し、を押します<>。p>

    ファイルは、ローカルファイルシステムからリモートサーバーにコピーする必要があります。

    Rsyncを使用した増分バックアップの作成:

    このタイプのバックアップでは、ソースディレクトリとデ いずれかのファイルがソースディレクトリに追加された場合、それは宛先ディレクトリにも追加されます。 同じように、ソースディレクトリからファイルやディレクトリが削除されると、コピー先ディレクトリからも削除されます。rsyncは、増分バックアップを取るための素晴らしいツールです。

    ユーザーのホームディレクトリにディレクトリ~/cloudがあるとしましょう。 ここで、ディレクトリの増分バックアップを、リモートサーバーのパス/mnt/usb1にマウントされているUSBサムドライブに取りたいとしますbackup.example.com.

    注意: これを機能させるには、リモートサーバーにopenssh-serverとrsyncパッケージがインストールされている必要があります。/cloudの増分バックアップを取るには、次のコマンドを実行します。

    $rsync-avzh–delete–progress~/cloud/[email protected]:/mnt/usb1/backup

    ここで、リモートユーザーのパスワードを入力し、を押します<Enter>。/p>

    ~/cloudディレクトリの内容は、リモートサーバー上のUSBサムドライブにコピーする必要があります。ご覧のとおり、すべてのファイルはリモートバックアップサーバーにマウントされているUSBサムドライブにコピーされます。p>

    さて、ローカルファイルシステムからファイルを削除し、何が起こるかを見てみましょう。p>

    rm rm~/cloud/packages.txt

    さて、rsyncを使用して、以前と同じコマンドでディレクトリを再び同期します。p>

    $rsync-avzh–delete–progress~/cloud/[email protected]:/mnt/usb1/backup

    ご覧のように、ファイルパッケージ。txtは、リモートバックアップサーバーにマウントされているUSBサムドライブからも削除されます。p>

    次の場所に移動します:rsyncの詳細については、rsyncのmanページを参照してください。 Rsyncのmanページには、rsyncのすべてのオプションに関する詳細な説明があります。 私は非常にあなたがそれをチェックアウトすることをお勧めします。次のコマンドでrsyncのmanページにアクセスできます。

    man man rsync

    だから、rsyncを使用する方法ですファイルをコピーし、ubuntu上で増分バックアップを取る。 この記事を読んでくれてありがとう。