Hôm nay topweb.store gửi đến các bạn tổng hợp một số lệnh SCP để truyền file và folder trên Linux
1. Verbose output
Với Verbose output, chương trình SCP sẽ cho ra kết quả output với nhiều thông tin hơn về những gì chương trình thực thi ở background.
Điều này thường sẽ có ích khi chương trình lỗi hoặc không thể hoàn tất request đến.
Verbose output sẽ cho bạn thấy chính xác các thông tin chương trình hoạt động và có vấn đề như thế nào.
scp -v ~/test.txt root@ip_server_remote:/path/test1.txt
2. Chuyển nhiều file cùng lúc
Bạn có thể chuyển (transfer) nhiều file bằng cách chỉ định các file và cách nhau một “khoảng trắng” là được.
scp test1.txt test2.txt root@ip_server_remote:/path/
3. Copy toàn bộ thư mục lên máy chủ remote
Để copy toàn bộ thư mục từ máy chủ này đến máy chủ khác bạn thêm option ‘-r‘ và chỉ định thư mục nhé.
scp -v -r ~/data root@ip_server_remote:/path/data
4. Copy file trên hai máy chủ remote
SCP có thể copy file từ một máy chủ remote này và chuyển đến một máy chủ remote khác với cách thực hiện như sau:
scp root@ip_server_remote1:/path/test1.txt root@ip_server_remote2:/path/test2.txt
5. Tăng tốc độ chuyển file bằng cách nén file lại
Một option cực hay để tăng tốc độ truyền tải nhầm tiết kiệm thời gian và băng thông.
Tất cả những gì bạn cần làm là bật option ‘–C‘ để nén file.
Và kết quả file sẽ được nén để chuyển đi và giải nén khi tới đích.
scp -vrC ~/data root@ip_server_remote:/path/data
Lệnh trên là ví dụ bạn muốn chuyển toàn bộ thư mục data với option nén được bật, tốc độ chuyển file sẽ dựa trên mức độ các file có thể được nén.
6. Giới hạn băng thông có thể sử dụng
Nếu bạn không muốn SCP chiếm toàn bộ băng thông nơi bạn gửi file, hãy sử dụng option ‘–l‘ để giới hạn băng thông tối đa cho việc gửi file đi tính bằng Kbit/s.
scp -vrC -l 400 ~/data root@ip_server_remote:/path/data
7. Kết nối với port khác mặc định trên máy chủ remote
Nếu trên máy chủ remote SSH deamon đang hoạt động với port khác 22, khi đó bạn cần nói cho SCP biết rằng phải request đến port khác này thông qua option ‘–P‘.
scp -vrC -P 2222 ~/test.txt root@ip_server_remote:/path/test.txt
8. Giữ nguyên các thuộc tính của file cần chuyển
Sử dụng option ‘–p‘ (không viết hoa) sẽ giúp file giữ nguyên các thuộc tính như thời gian chỉnh sửa file, thời gian truy cập file…
scp -p ~/test.txt root@ip_server_remote:/path/test.txt
9. Quiet mode
Trong chế độ “im lặng” này, bạn bật bằng option ‘–q‘, output của SCP sẽ bị chặn và tiến độ thực hiện cũng sẽ không hiển thị ra nữa, cũng như các thông báo cũng không xuất hiện.
scp -vCq ~/test.txt root@ip_server_remote:/path/test.txt
10. Chỉ định file private key SSH
Trường hợp này áp dụng khi bạn sử dụng xác thực SSH bằng key, bạn sẽ cần chỉ định file chứa private key.
scp -vCq -i private_key.pem ~/test.txt root@ip_server_remote:/path/test.txt
11. Sử dụng file ssh_config khác mặc định
Bạn có thể sử dụng option ‘–F‘ để chỉnh định file ssh_config khác mặc định như sau:
scp -vC -F /home/user/my_ssh_config ~/test.txt root@ip_server_remote:/path/test.txt
12. Sử dụng thuật toán mã hóa khác
SCP mặc định sử dụng thuật toán AES để mã hóa file truyền đi.
Bạn có thể muốn sử dụng một thuận toán khác để tăng tốc độ chuyển file chẳng hạn, ví dụ như thuật toán blowfish và arcfour thì nhanh hơn AES (nhưng bảo mật lại kém hơn).
scp -c blowfish -C ~/test.txt root@ip_server_remote:/path/test.txt