ถ่ายโอนไฟล์อย่างง่าย


คำตอบ:


22

scpฉันใช้

scp source desthost:/path/to/dest/.

เพื่อคัดลอกจากเครื่องท้องถิ่นไปยังเครื่องระยะไกลหรือ

scp srchost:/path/to/file/file .

เพื่อคัดลอกจากเครื่องระยะไกลไปยังเครื่องท้องถิ่น

หากชื่อผู้ใช้ไม่เหมือนกันในเครื่องระยะไกล

scp user@srchost:/path/to/file/file .

3
ฉันจะเพิ่มคุณสามารถใช้ตัวเลือก -r กับ scp เพื่อคัดลอกไดเรกทอรีทั้งหมดซ้ำ -r แหล่ง desthost: / path / to / dest /
Steve Burdine

1
@Steve_ จุดดี นอกจากนี้ -C จะบีบอัดไฟล์ตามที่มีการถ่ายโอนซึ่งสามารถช่วยในการเชื่อมโยงช้า
KeithB

มันเป็นอย่างใดอย่างหนึ่งscpหรือrsyncสำหรับฉัน
Josh K

6

ฉันมักจะติดไดเรกทอรีผ่าน ssh ผ่าน FUSE และ sshfs

ติดตั้ง:

$ sshfs name@server:/path/to/dir /path/to/mount/point

ยกเลิกการเชื่อมต่อ:

$ fusermount -u /path/to/mount/point

5

ฉันใช้ netcat (ถ้าฉันไม่ต้องการความปลอดภัย)

nc -l -p 1234 < send_file   # 'server'
nc x.y.z.t 1234 > receive_file  # 'client'

2
ฉันชอบคอมโบนี้โดยเฉพาะ:tar -c files and folders/ |pv -cN in|lzop|pv -cN out|nc x.y.z.t 1234
jpc

5

nfs อาจมีประโยชน์

Network File System (NFS) อนุญาตให้โหนดไคลเอ็นต์ดำเนินการเข้าถึงไฟล์แบบโปร่งใสผ่านเครือข่าย โดยการใช้ NFS โหนดไคลเอ็นต์จะทำงานกับไฟล์ที่อยู่บนเซิร์ฟเวอร์และสถาปัตยกรรมเซิร์ฟเวอร์ที่หลากหลายและข้ามระบบปฏิบัติการที่หลากหลาย การเรียกการเข้าถึงไฟล์บนไคลเอนต์ (เช่นการร้องขอเพื่ออ่าน) จะถูกแปลงเป็นคำร้องขอโปรโตคอล NFS และส่งไปยังระบบเซิร์ฟเวอร์ผ่านเครือข่าย

คุณอาจต้องการความช่วยเหลือจากผู้ดูแลระบบ Unix ของคุณเพื่อตั้งค่าครั้งแรก แต่มีประโยชน์มาก


สำหรับการถ่ายโอนอย่างรวดเร็ว -n-dirty * nix-to- * ระวังไม่มีอะไรมาใกล้กับ NFS ผู้ดูแลระบบที่ดีสามารถเหวี่ยงทั้งสองกล่องและถ่ายโอนในเวลาน้อยกว่า 5 นาทีมันใกล้เคียงกับระบบอื่น ๆ และเป็นที่รู้จักและมีเสถียรภาพ +1 สำหรับบางสิ่งที่ไม่จำเป็นต้องแก้ไขบรรทัดคำสั่งทุกครั้งเพื่อถ่ายโอนบางสิ่ง
Avery Payne

2

สำหรับการถ่ายโอนไฟล์หนึ่งครั้งฉันมักจะใช้ SFTP หรือการแบ่งปันแซมบ้าที่มีอยู่

ในการซิงค์ฉันขอแนะนำให้คุณลองrsyncหรือ unison (สำหรับการซิงโครไนซ์แบบ 2 ทาง)

แก้ไข: scpจะดีกว่าsftpเนื่องจากจะใช้งานได้กับโฮสต์ที่เปิดใช้งาน SSH ทั้งหมด


2

สำหรับการสำรองข้อมูลฉันมักจะใช้ rsync หากฉันต้องการสำรองข้อมูลลงในเครื่องระยะไกลฉันจะใส่สายใน / etc / fstab เพื่อให้เครื่องระยะไกลติดตั้งโดย NFS หรือ CFIS (Samba)

192.168.0.101:/ /mnt/backup nfs rsize=8192,wsize=8192,timeo=14,intr 0 0

มีบรรทัดใน crontab ของฉันโดยใช้ rsync

rsync -av /home/user/sourcedir/ /mnt/backup/destinationdir > /home/user/backup.log

1

netcat นั้นง่าย แต่ไม่ทุกรุ่นปิดการเชื่อมต่ออย่างน่าเชื่อถือ

นี่คือหัวข้อเกี่ยวกับการใช้socat: socat การถ่ายโอนไฟล์ที่เชื่อถือได้ผ่าน TCP

หากต้องการสรุป:

ข้อเสนอ :

เซิร์ฟเวอร์กำลังส่งไฟล์:

server$ socat -u FILE:test.dat TCP-LISTEN:9876,reuseaddr
client$ socat -u TCP:127.0.0.1:9876 OPEN:out.dat,creat

เซิร์ฟเวอร์ที่รับไฟล์:

server$ socat -u TCP-LISTEN:9876,reuseaddr OPEN:out.txt,creat && cat out.txt
client$ socat -u FILE:test.txt TCP:127.0.0.1:9876

การปรับปรุงที่เสนอ :

  • OPEN:out.txt,creat,truncจะลบไบต์ทั้งหมดout.txtก่อนที่จะเขียนลงไป ตัวเลือกนี้เลียนแบบสิ่งที่คุณคาดหวังcpและอาจเป็นสิ่งที่คุณต้องการ
  • OPEN:out.txt,creat,exclจะปฏิเสธที่จะเขียนout.txtถ้ามันมีอยู่แล้ว ใช้ตัวเลือกนี้เพื่อความปลอดภัยเป็นพิเศษ
  • OPEN:out.txt,creat,appendout.txtจะผนวกข้อมูลไปยัง

1

Giver เป็นแอปพลิเคชันเดสก์ท็อปการแชร์ไฟล์อย่างง่าย คนอื่นที่ใช้ Giver บนเครือข่ายของคุณจะถูกค้นพบโดยอัตโนมัติและคุณสามารถส่งไฟล์ไปยังพวกเขาได้โดยเพียงแค่ลากไฟล์ไปยังภาพถ่ายหรือไอคอนที่แสดงใน Giver

ใน Ubuntu:

sudo apt-get install giver

0

นอกจากนี้คุณสามารถใช้โปรแกรมผู้ให้ ใช้มันคุณสามารถถ่ายโอนไฟล์ผ่าน LAN ด้วย 2 คลิกหรือโดยไฟล์ "drag'n'dropping" ไปยังผู้รับ ผู้รับ (ซึ่งต้องทำงานด้วยgiver) ถูกค้นพบผ่าน Zeroconf ดังนั้นคุณไม่จำเป็นต้องรู้แม้แต่ IP ของพวกเขา นี่คือวิดีโอเกี่ยวกับวิธีการทำงานของคนที่มอบให้


2
ในฐานะที่เป็นคนที่เคยทำงานกับ Giver ในอดีตฉันสามารถพูดได้ว่ามันเป็นแอพพลิเคชั่นที่เรียบร้อย แต่มันก็ไม่มีการเปลี่ยนแปลงใด ๆ เลยและมีข้อบกพร่องมากมายโดยเฉพาะอย่างยิ่งเมื่อต้องถ่ายโอนไฟล์ขนาดใหญ่ อย่าคาดหวังอะไรมากมาย
Sandy

@ แซนดี้ใช่ฉันตระหนักถึงข้อบกพร่อง ในกรณีของฉันไฟล์ 1.4G ถูกถ่ายโอนสำเร็จ อย่างไรก็ตามการใช้ Giver ยังคงดูง่ายกว่า NFS / rsync / nc / อะไรก็ตาม
Andrei Dziahel

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.