Tôi đã xem qua các câu hỏi khác ở đây và tại các hướng dẫn "sử dụng scp" khác nhau trên Internet, nhưng tôi không thể phân loại được điều gì sai.
Tôi đang sử dụng Linux Mint và tôi đang cố gắng tìm ra cách hoạt động của scp .
Tôi có một tệp file.ext (trên máy tính của tôi) trong thư mục / home / name / dir /
Tôi kết nối với một máy từ xa bằng ssh , như:
ssh -p 2222 username@domain
Nó hỏi tôi mật khẩu và vỏ hiển thị:
username@domain ~ $
Bây giờ, nếu tôi phát lệnh (trước khi tôi chạy ssh, tôi đã ở trong thư mục cục bộ / home / name / dir ):
scp -r -P 2222 file.ext username@domain
đầu ra là:
cp: cannot stat ‘file.ext’: No such file or directory
Kết quả tương tự nếu thay vì file.ext tôi viết đường dẫn đầy đủ
scp -r -P 2222 /home/name/dir/file.ext username@domain
Ngoài ra, quản trị viên máy chủ nói với tôi rằng tôi sẽ tải tệp lên thư mục chính từ xa (thay vì root), như:
scp -r -P 2222 file.ext username@domain:~/
nhưng khi tôi làm điều đó và nhấn "Enter" thì không có gì xảy ra, vì nếu shell đang chờ thêm đầu vào.
Tóm tắt các vấn đề của tôi:
- cp: không có tập tin hoặc thư mục như vậy
- vỏ "kẹt" trên ~ /
Bất kỳ đề xuất?
scp
, phía từ xa luôn phải chứa dấu hai chấm (ví dụ remotehost:/tmp
), nếu không, nó sẽ chỉ thực hiện một bản sao thông thường ( scp /tmp/foo.txt example.com
sẽ sao chép /tmp/foo.txt
vào một tệp cục bộ example.com
)
-r
cờ, vì điều này là không cần thiết để sao chép các tệp đơn lẻ (nó được sử dụng để sao chép đệ quy các thư mục)
localuser@machineA: ssh -p 2222 username@domain
(để chỉ ra rằng bạn đang chạy lệnh ssh với tư cách là người dùng cục bộ trên