ฉันลองดูคำถามอื่น ๆ ที่นี่และในบทแนะนำ "การใช้งาน scp" บนอินเทอร์เน็ต แต่ฉันไม่สามารถแยกแยะสิ่งที่ผิด
ฉันใช้ Linux Mint และฉันพยายามหาวิธีการทำงานของscp
ฉันเป็นไฟล์file.ext (บนคอมพิวเตอร์ของฉัน) ในไดเรกทอรี/ home / name / dir /
ฉันเชื่อมต่อกับเครื่องระยะไกลโดยใช้sshเช่น:
ssh -p 2222 username@domain
มันถามรหัสผ่านและเชลล์แสดง:
username@domain ~ $
ตอนนี้ถ้าฉันออกคำสั่ง (ก่อนที่ฉันจะเรียกใช้ ssh ฉันอยู่ในไดเรกทอรีท้องถิ่น / home / ชื่อ / dir ):
scp -r -P 2222 file.ext username@domain
ผลลัพธ์คือ:
cp: cannot stat ‘file.ext’: No such file or directory
ผลเหมือนกันถ้าแทนที่จะเป็น file.ext ฉันเขียนเส้นทางที่สมบูรณ์
scp -r -P 2222 /home/name/dir/file.ext username@domain
นอกจากนี้ผู้ดูแลเซิร์ฟเวอร์บอกฉันว่าฉันจะอัปโหลดไฟล์ไปยังไดเรกทอรีบ้านระยะไกลของฉัน (แทนรูท) เช่น:
scp -r -P 2222 file.ext username@domain:~/
แต่เมื่อฉันทำมันและกด "Enter" ไม่มีอะไรเกิดขึ้นเช่นถ้าเปลือกกำลังรอการป้อนข้อมูลเพิ่มเติม
สรุปปัญหาของฉัน:
- cp: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว
- เชลล์ "ค้าง" บน ~ /
ข้อเสนอแนะใด ๆ
scp
งานรีโมตจะต้องมีโคลอน (เช่นremotehost:/tmp
) มิฉะนั้นจะทำสำเนาธรรมดา ( scp /tmp/foo.txt example.com
จะคัดลอก/tmp/foo.txt
ไปยังไฟล์โลคอลexample.com
)
-r
แฟ
localuser@machineA: ssh -p 2222 username@domain
(เพื่อระบุว่าคุณกำลังใช้งานคำสั่ง ssh เป็น localuser บน machineA)