Tôi đang sử dụng máy Linux (centos), tôi đã kết nối với hệ thống khác bằng cách sử dụng ssh
. Bây giờ câu hỏi của tôi là làm thế nào tôi có thể sao chép các tập tin từ một hệ thống sang hệ thống khác?
Giả sử, trong môi trường của tôi, tôi có hai hệ thống như System A
và System B
. Tôi đang sử dụng System A
máy và một số người khác sử dụng System B
máy móc.
Làm cách nào tôi có thể sao chép tệp từ System B
đến System A
? Và, sao chép một tập tin từ System A
đến System B
?
Cú pháp:
scp <source> <destination>
Để sao chép tệp từ B
sang A
trong khi đăng nhập vào B
:
scp /path/to/file [email protected]:/path/to/destination
Để sao chép tệp từ B
sang A
trong khi đăng nhập vào A
:
scp [email protected]:/path/to/file /path/to/destination
Trong trường hợp nếu bạn cần một cách tiếp cận thay thế.
Cài đặt sshfs. nếu bạn sử dụng Ubuntu/debian:
Sudo apt-get install sshfs
hoặc, nếu bạn sử dụng centos/rhel:
Sudo yum install Fuse-sshfs
hoặc, trong macOS
brew install sshfs
Tạo một thư mục trống
mkdir /home/user/testdir
"liên kết" hoặc "gắn kết" hai thư mục
sshfs [email protected]:/remote/dir /home/user/testdir
"hủy liên kết" các thư mục
fusermount -u /home/user/testdir
Trên BSD và macOS, để ngắt kết nối hệ thống tệp:
umount mountpoint
hoặc là
diskutil unmount mountpoint
Để biết thêm xem tại đây, linuxjournal.comlibfuse/sshfs
Đôi khi bạn cần phải ưa thích với tar:
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 -
Nếu bạn muốn giữ các tệp trên cả hai hệ thống đồng bộ thì hãy xem chương trình rsync
: