2012-04-26 33 views
525

Tôi đang cố gắng tìm một tệp từ máy chủ từ xa đến máy cục bộ của mình. Chỉ có thể truy cập cổng 80.scp với số cổng được chỉ định

tôi đã cố gắng:

scp -p 80 [email protected]:/root/file.txt . 

nhưng đã nhận lỗi này: cp: 80: No such file or directory

Làm thế nào để xác định số cổng trong một lệnh scp?

+6

cổng phải ở thủ đô -P 80 – Eliethesaiyan

Trả lời

936

Không giống như ssh, scp sử dụng công tắc viết hoa P để đặt cổng thay vì p chữ thường: p switch

scp -P 80 ... # Use port 80 to bypass the firewall, instead of the scp default 

Các chữ thường được sử dụng với scp cho việc bảo tồn lần và chế độ.

Dưới đây là một đoạn trích từ trang người đàn ông scp với tất cả các chi tiết liên quan đến hai công tắc, cũng như một lời giải thích của P tại sao hoa đã được lựa chọn cho scp:

-P port   Specifies the port to connect to on the remote host. Note that this option is written with a capital 'P', because -p is already reserved for preserving the times and modes of the file in rcp(1).

-p           Preserves modification times, access times, and modes from the original file.

+321

+1 Làm thế nào mà 'ssh' sử dụng' p' và 'scp' sử dụng' P' – wim

+61

btw, 'scp' yêu cầu thứ tự tùy chọn chính xác:' scp -r some_directory - P 80 ... 'không hoạt động ----- nhưng' scp -P 80 -r some_directory ... 'hoạt động. – Abdull

+7

nói chung trong linux lệnh được theo sau bởi các tùy chọn và sau đó các hướng dẫn/giá trị – Gary

22

Tôi đang sử dụng cổng khác nhau sau đó tiêu chuẩn và sao chép tập tin giữa các file như thế này:

scp -P 1234 [email protected][ip address or host name]:/var/www/mywebsite/dumps/* /var/www/myNewPathOnCurrentLocalMachine 

này chỉ dành cho sử dụng thường xuyên, nếu nó lặp lại dựa trên một lịch trình bạn nên sử dụng rsync và cron công việc để làm điều đó.

2

Đang sao chép tệp để lưu trữ: file scp SourceFile [email protected]:/directory/TargetFile

sao chép từ máy chủ: scp [email protected]:/directory/SourceFile TargetFile

thư mục sao chép một cách đệ quy từ máy chủ: scp -r [email protected]:/directory/SourceFolder TargetFolder

LƯU Ý: Nếu chủ nhà đang sử dụng một cổng khác so với cổng 22, bạn có thể chỉ định tùy chọn -P: scp -P 2222 [email protected]:/directory/SourceFile TargetFile

+3

Chỉ cần LƯU Ý là đủ – blagus

3

scp giúp đỡ cho chúng ta biết rằng cổng được xác định bởi chữ hoa P.

~$ scp 
usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] 
      [-l limit] [-o ssh_option] [-P port] [-S program] 
      [[[email protected]]host1:]file1 ... [[[email protected]]host2:]file2 

Hope this helps.

30

Một gợi ý bổ sung. Đặt tùy chọn '-P' sau lệnh scp, cho dù máy bạn đang ssh-ing có phải là máy thứ hai (hay còn gọi là đích). Ví dụ:

scp -P 2222 /absolute_path/source-folder/some-file [email protected]:/absolute_path/destination-folder 
22

Bạn biết điều gì thú vị hơn -P?không có gì

Nếu bạn sử dụng máy chủ này nhiều hơn một vài lần, thiết lập/tạo một file ~/.ssh/config với một mục như:

Host www.myserver.com 
    Port 80 

hoặc

Host myserver myserver80 short any.name.u.want yes_anything well-within-reason 
    HostName www.myserver.com 
    Port 80 
    User username 

Sau đó, bạn có thể sử dụng:

scp [email protected]:/root/file.txt .

hoặc

scp short:/root/file.txt .

Bạn có thể sử dụng bất cứ điều gì vào "Host" phù hợp với ssh, scp, rsync, git & hơn

Có tùy chọn cấu hình NHIỀU mà bạn có thể sử dụng trong các tập tin cấu hình, xem:

man ssh_config

+1

'Tùy chọn cấu hình sai: tên người dùng'. Thay vào đó hãy sử dụng 'Tên người dùng '. – avjaarsveld

0

này có thể được achived bằng cách xác định cổng thông qua -P switch:

scp -i ~/keys/yourkey -P2222 file [email protected]:/directory/ 
Các vấn đề liên quan