Утилита быстрого копирования файлов по сети.
netop позволяет скопировать большие объемы информации между двумя заранее не подготовленными узлами (компьютерами, смартфонами и т.п.) по сети. Не требует специальной настройки. Для работы необходима только возможность установить одно TCP подключение.
Не требователен к ресурсам. Не имеет внешних зависимостей. Может быть легко портирован на любую ОС, где есть стандартная библиотека си и bsd-сокеты (сборка и работа проверена на OS X, OpenBSD, Windows, Android).
Не является заменой scp, rsync, tar-стриму и другим, менее кросс-платформенным, но более серьёзным решениям.
В полном соответствии с принципами suckless.
Целостность передаваемой информации проверяется по кодам возврата ОС и простой контрольной сумме. Передача атрибутов файлов/каталогов не ведётся и на целевой системе отдаётся на усмотрение ОС (и это фича - принятые файлы легко и непринуждённо становятся собственностью принимающей стороны).
Допустим, нам нужно скопировать развал фотографий с одной Windows-машины на другую.
Для этого, на машине, на которую копируем фотографии:
netop.exe 1313 receive
А на машине, с которой копируем фотографии:
netop.exe 192.168.0.1:1313 send “Photoz Folder”
Ясное дело, путь к программе, каталогам, адреса машин и порты надо бы подправить под вашу ситуацию.
Направление установки соединения не обязательно совпадает с направлением передачи файлов.
В качестве аргументов для передачи может выступать множество файлов и каталогов, все они будут переданы за один сеанс связи.
Слушающее соединение на серверной стороне закрывается сразу после получения входящего подключения. Следующий сеанс передачи с этого же порта можно и нужно начинать с нового запуска.
Если в качестве аргумента для передачи указан абсолютный путь, то на целевой ОС файл/каталог будет создан по абсолютному пути.
Принимающая сторона фактически выполяет команды передающей стороны с минимумом проверок. Злодейская передающая сторона может вам накомандовать какой-нибудь жути. Не принимайте файлы от тех, кому вы не доверяете.
Передача файлов между платформами (с OS X на Windows, например). В теории должна работать. Но на самом деле никто не проверял. Может возникнуть засада с кодировками или ещё что.
ОС | Ссылка |
---|---|
Source | Bazaar |
Сборка из исходников производится с помощью make. Внутри Makefile перечислены все возможные варианты.
Смотрим main.c, там всё должно быть относительно понятно.
Дата | Изменения |
---|---|
28.09.2023 | Поднаделано тут и там |
27.06.2022 | Первая полностью законченная версия |