Linux(centos)マシンを使用して、あるマシンから別のマシンにファイルをコピーする方法。すでに
。今、私の質問は、あるシステムから別のシステムにファイルをコピーするにはどうすればよいですか?
私の環境に、とSystem B
。私はSystem A
マシンを使用しており、他のいくつかはSystem B
マシン。
System B
からSystem A
にファイルをコピーするにはどうすればよいですか。そして、ファイルをSystem A
からSystem B
にコピーしますか?
コメント
回答
構文:
scp <source> <destination>
宛先B
にログインした状態で、ファイルをB
からA
にコピーします。
scp /path/to/file username@a:/path/to/destination
iv idにログインしているときに、ファイルをB
からA
にコピーするには= “2a634c09ca”>
:
scp username@b:/path/to/file /path/to/destination
コメント
回答
別のアプローチが必要な場合。
sshfsをインストールします。 ubuntu / debianを使用する場合:
sudo apt-get install sshfs
またはcentos / rhelを使用する場合:
sudo yum install fuse-sshfs
または、macOSの場合
brew install sshfs
空のディレクトリを作成します
mkdir /home/user/testdir
2つのディレクトリを「リンク」または「マウント」します
sshfs [email protected]:/remote/dir /home/user/testdir
ディレクトリを「リンク解除」します
fusermount -u /home/user/testdir
BSDおよびmacOSで、ファイルシステムをアンマウントするには:
umount mountpoint
または
diskutil unmount mountpoint
詳細については、 linuxjournal.com libfuse / sshfs
<をご覧ください。 h3>コメント
回答
タールを使いこなす必要がある場合があります:
tar -C / -cf - \ opt/widget etc/widget etc/cron.d/widget etc/init.d/widget \ --exclude=opt/widget/local.conf | ssh otherhost tar -C / -xvf -
コメント
- 創造性?これは、私たちがテープドライブを共有するために使用した方法です。 🙂
- これが何をするのか教えていただけますか?たとえば、' cron 'がファイルのコピーと何の関係があるのかわかりません!
- @aliqandil opt /ウィジェットなど/ウィジェットなど/cron.d/ウィジェットなど/init.d/ウィジェットは、tarアーカイブに含まれる個々のファイルです。重要なのは、なぜ時々あなたが空想を得る必要があるのかを説明することでした。この一連のコマンドは、ssh接続を介してtarアーカイブをストリーミングし、反対側でアーカイブを解除します。したがって、tarアーカイブがディスクに書き込まれることはありません。これを使用して、1つのコマンドでコピーするファイルを選択します。
- わあ!最初の' / 'がソースパスであることを教えました。 (それはなんですか?)それはばかげた質問でした!ありがとう。 🙂
- Tarは" / "にchdirするため、以下のすべてのパスは" / "。
回答
回答
一般的なOSのいずれかを使用している場合は、複数のコアを使用することを除いて、gzipと同じpigzをインストールできます。高速ネットワーク上でより速くなります。私のコマンドは少し異なります。
tar cf - -C /opt -S <dir> | pigz | ssh <target> "pigz -d | tar xf - -C /opt -S"
またはファイルを取得する他の方法
ssh <target> "tar cf - -C /opt -S <dir> | pigz" | pigz -d | tar xf - -C /opt -S
またはルートfsをバックアップする
ssh <target> "tar cf - -C / --one-file-system -S --numeric-owner . | pigz" > root.tgz
コメント
回答
SSH制御のNVIDIAJetsonコンピューターを介して機能するより簡単な方法は、SFTP(SSHファイル転送プロトコル)に接続することです。
ドキュメントを移動したいとしますUFO_blueprint.odt
NASAのリモートサーバーからドキュメントに移動します。
-
cd
ファイルを保存する場所に移動します
$ cd Documents
- 接続
$ sftp sammy@your_server_ip_or_remote_hostname
- 転送するファイルが含まれているディレクトリに移動します。
$ cd NASA/secret_files/
- 転送
$ get UFO_blueprint.odt
完全なディレクトリを取得するには、代わりに
$ get -r secret_files/
コメント
回答
ファイルとフォルダのUnix / Linux再帰コピー次のコードを使用して、セキュアシェル上で:
scp -r <host@machine_name:from_remote_directory_path> <to_local_directory_path>
完全な例は次のようになります:
scp -r sizwe@hprobook:./home/sizwe/PycharmProjects ./home/immaculate/OtherPycharmProjects
ホスト名を解決するDNSサーバーがない場合は、代わりにIPアドレスを使用してください。上記の例は次のようになります
scp -r 192.168.43.167:./home/sizwe/PycharmProjects ./home/immaculate/OtherPycharmProjects
回答
実行中の場合別のポートのSCP / SSHの場合、大文字の-P
ポートオプションを指定してください。
例:
scp -P 7121 /users/admin/downloads/* [email protected]:/home/
コメント
scp
はしばしばカンバーストーンだと思います。ニーズに合う場合は、これを試してください linuxjournal.com/article/8904 リモートファイルシステムをローカルにマウントします。ssh
を使用したリモートマシン上のローカルdir/
のダウンロード:tar -c dir/ | gzip | gpg -c | ssh user@remote 'dd of=dir.tar.gz.gpg'
$wget -r --level=9 --no-parent --reject "index.html*" ftp://<USERID>:<PASSWORD>@<MACHINE-NAME>/path/to
Reference1 Reference2scp
は問題なく、答えとして最も簡単な方法です。そのため、modは、誰かが他のフラグに移動するかのように重複フラグを削除してください。最も有用な答えが失われます。