cp: could stat: Không có tập tin hoặc thư mục như vậy


10

Tôi gặp lỗi khi cố gắng sao chép tệp từ máy tính cục bộ sang máy chủ từ xa ssh. Tôi nhận được cùng một lỗi cho dù tôi sử dụng cphay scp.

Đây là đầu vào của tôi ở lỗi kết quả:

[root@xxx.xx.xxx.xx /]# cp /home/username/some.xml root@xxx.xx.xxx.xx:/path/to/directory/  
cp: cannot stat ‘/home/username/some.xml’: No such file or directory

Tôi đã kiểm tra và chắc chắn có một tệp tại đường dẫn /home/username/some.xmltrên máy cục bộ của tôi.

Cả máy tính cục bộ và máy chủ từ xa đang chạy CentOS 7. Làm thế nào tôi có thể giải quyết lỗi này và sao chép thành công?


1
Bạn có thể dán đầu ra của (như root) ls -l /home/username/some.xml?
Đánh dấu Plotnick

Bạn cần phải có đường dẫn chính xác cho tên tệp để bắt đầu, nếu bạn có thể tìm thấy tệp trong trình duyệt tệp, bạn sẽ có thể tìm thấy nó trong thiết bị đầu cuối bằng cách điều hướng các thư mục với cd và sử dụng ls để xem các tệp và thư mục khác.
Chris Davidson

@MarkPlotnick Đề xuất của bạn khiến tôi phải giải quyết vấn đề. Như root@remote.server.ip, tôi đã gõ exit, sau đó gõ scplệnh ở trên và nó hoạt động. Vấn đề là tôi đã đăng nhập root@remote.web.server, vì vậy nó chỉ nhìn thấy cấu trúc thư mục remote.web.server, khác với cấu trúc thư mục của máy cục bộ của tôi. Vì bạn khiến tôi tìm thấy điều này, tôi sẽ vui lòng chấp nhận câu trả lời mà bạn có thể gửi. Cảm ơn bạn.
CodeMed

Câu trả lời:


6

Nếu bạn đã đăng nhập vào máy cục bộ , bạn sẽ sử dụng scpnhư thế này:

scp /home/username/some.xml root@remote.machine.ip.address:/path/to/directory/

Nếu bạn đã đăng nhập vào máy từ xa (như trong OP), hãy sử dụng scpnhư thế này:

scp username@local.machine.ip.address:/home/username/some.xml /path/to/directory

Thay thế các địa chỉ IP theo chỉ dẫn trong các lệnh.


Sau khi thử các giải pháp khác nhau cả ngày, cái này hiệu quả với tôi.
Sở thích Dev

2

Đầu tiên bạn sẽ phải sử dụng SCP, không có cách nào chỉ sử dụng cp để sao chép các tập tin qua mạng.

Lệnh scp sẽ giống như sau trong ví dụ của bạn, lưu ý rằng cấu trúc thư mục sẽ cần tồn tại trên máy chủ nhận phía tệp;

scp /home/username/some.xml root@xxx.xxx.xxx.xxx:/path/to/directory/

Nếu bạn chưa có thì bạn sẽ cần phải đăng nhập vào máy chủ mà bạn đang sao chép tệp vào và tạo thư mục bạn muốn sao chép tệp vào, tức là;

mkdir /path/to/directory

Một thay thế sẽ là sử dụng rsync.


Điều đó không làm việc. Bây giờ tôi mới thử lại, kiểm tra xem tôi đã làm đúng như bạn đã viết chưa, đó là điều tương tự tôi đã đề cập trong OP của tôi ở trên khi tôi nói rằng điều này tạo ra cùng một lỗi cho dù tôi sử dụng scphay cp.
CodeMed
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.