З огляду на два вікна Linux в локальній мережі, який найпростіший спосіб передачі файлів між ними?
З огляду на два вікна Linux в локальній мережі, який найпростіший спосіб передачі файлів між ними?
Відповіді:
Я використовую scp
.
scp source desthost:/path/to/dest/.
скопіювати з локальної машини на віддалений апарат, або
scp srchost:/path/to/file/file .
скопіювати з віддаленої машини на локальну машину.
Якщо ім'я користувача на віддаленій машині не однакове,
scp user@srchost:/path/to/file/file .
scp
або rsync
для мене.
nfs можуть бути корисні.
Мережева файлова система (NFS) дозволяє клієнтському вузлу здійснювати прозорий доступ до файлів по мережі. Використовуючи NFS, клієнтський вузол працює над файлами, що знаходяться на різних серверах та архітектурах серверів, а також у різних операційних системах. Виклики доступу до файлів клієнта (наприклад, запити на читання) перетворюються на запити протоколу NFS та надсилаються до серверної системи по мережі.
Вам може знадобитися допомога вашого Unix Admin, щоб налаштувати його вперше, але це дуже корисно.
Для створення резервних копій я часто використовую 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
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,append
додасть дані доout.txt
.
Також ви можете використовувати програму Giver . За його допомогою ви можете передавати файли через локальну мережу за два кліки або за допомогою "перетягування" файлу одержувачу. Одержувачі (які також повинні працювати giver
) виявляються через Zeroconf, тому вам не потрібно знати навіть їх IP. Ось відео про те, як працює Giver .
Якщо у вас немає облікового запису (пароля) на приймаючому хості, ви можете використовувати woos (веб-пропозиція одного потоку):
файл-або-каталог woos ...