สองข้อบกพร่องที่ฉันเห็นในความพยายามของคุณและการตอบสนอง
1) scp เป็นยูทิลิตี้ secure shell (ssh) สำหรับการคัดลอกไฟล์อย่างปลอดภัยระหว่างโฮสต์ มันใช้ ssh สำหรับการถ่ายโอนข้อมูลและใช้การรับรองความถูกต้องเดียวกันและให้ความปลอดภัยเช่นเดียวกับ ssh (ดู scp manpage) โดยค่าเริ่มต้น ssh ใช้พอร์ต 22 ดังนั้นหากคุณเปลี่ยนหมายเลขพอร์ตเริ่มต้นสำหรับ ssh บนเซิร์ฟเวอร์ปลายทางเป็น 21 หรือคุณยังไม่ได้ติดตั้งและเริ่มเซิร์ฟเวอร์ ssh (sshd) บนเซิร์ฟเวอร์ที่รับคุณไม่สามารถใช้ scp เพื่อคัดลอก ไฟล์
2) บรรทัดคำสั่งที่เหมาะสมจากตัวอย่างของคุณควรเป็น:
scp -P '*port running ssh on destination server*' /home/direc/file.tar username@remotehost:/home/dir
ครั้งแรกroot@myhost
ไม่จำเป็นและในความเป็นจริงจะพยายามคัดลอกไฟล์ชื่อroot@myhost
(ที่มักไม่มีอยู่) และ file.tar ไปยังเซิร์ฟเวอร์ปลายทาง คุณมักจะได้รับข้อความ:
root@myhost: No such file or directory during the copy.