qrcp — перенос файлов между Linux и мобильными устройствами через QR
Кратко: qrcp — простой командный инструмент для передачи файлов по Wi‑Fi с помощью QR‑кода. Работает на любых дистрибутивах Linux и с iOS/Android — не требует установки приложений на телефон. В этой статье — установка, примеры команд, советы по безопасности и отладке, альтернативы и практический чек‑лист.

Что такое qrcp?
qrcp — это командная утилита для передачи файлов по локальной сети через Wi‑Fi. Она запускает минимальный HTTP‑сервер на вашей машине, генерирует QR‑код с URL и инструкциями и позволяет другому устройству открыть ссылку и скачать или загрузить файлы. Коротко: отправляете команду в терминале — на экране появляется QR‑код — сканируете его телефоном — моментальный обмен файлами.
Определение в одну строку: легковесный CLI‑инструмент для обмена файлами по Wi‑Fi с помощью QR‑кодов.
Зачем использовать qrcp?
- Не нужно устанавливать приложения на телефон. Достаточно камеры или любого сканера QR‑кодов.
- Работает между разными ОС (Linux ↔ Android/iOS). Нет проблем с совместимостью форматов приложений.
- Удобно для быстрой передачи одиночных файлов, папок и архивов прямо из терминала.
Как qrcp работает — краткая схема
- qrcp привязывает локальный HTTP‑сервер к сетевому интерфейсу и порту.
- Для отправки: утилита создает ссылку на ресурс и кодирует её в QR‑код. Получатель сканирует QR и скачивает.
- Для приёма: утилита генерирует ссылку, по которой отправитель выбирает файлы и загружает их на ваш компьютер.
Установка qrcp на Linux
- Перейдите на страницу релизов qrcp и скачайте последний архив TAR.GZ для вашей платформы.
Ссылка «Download: qrcp» обычно ведёт на GitHub Releases.
- В терминале перейдите в каталог загрузок и распакуйте архив:
tar -xf qrcp-*.tar.gz- Переместите бинарник в /usr/local/bin и сделайте исполняемым:
sudo mv qrcp /usr/local/bin
sudo chmod +x /usr/local/bin/qrcp- Проверьте установку:
qrcp versionЕсли команда выводит номер версии — всё готово. Если нет, проверьте путь и права на файл.
Быстрая отправка файлов (Linux → телефон)
- Подключитесь к одной Wi‑Fi сети с телефоном.
- В терминале выполните команду:
qrcp имя_файлаПример:
qrcp TextFile.txtПосле этого в терминале появится QR‑код.
- Откройте на телефоне камеру или любой сканер QR, наведите на код и откройте ссылку. Нажмите «Скачать» или «Save» в браузере телефона.
Советы:
- Чтобы отправить несколько файлов, перечислите их через пробел или используйте флаг –zip, чтобы qrcp сам запаковал файлы в архив.
qrcp file1.jpg file2.pdf
qrcp --zip file1.jpg file2.pdf- Чтобы отправить папку, укажите её имя. qrcp автоматом упакует содержимое в ZIP перед отправкой.
qrcp Documents- Если хотите, чтобы сервер qrcp оставался активным после первой загрузки (например, для множественных устройств), добавьте флаг –keep-alive:
qrcp --keep-alive файл_или_папкаПриём файлов (телефон → Linux)
- Убедитесь, что телефон и компьютер в одной сети.
- На компьютере выполните:
qrcp receiveЭто сгенерирует QR‑код, который нужно отсканировать телефоном.
- На телефоне откроется веб‑интерфейс qrcp. Нажмите Choose Files, выберите файлы или папку и нажмите Transfer.
По умолчанию файлы сохраняются на рабочий стол пользователя. Чтобы указать другую папку, запустите receive с параметром –output:
qrcp receive --output=/home/youruser/DownloadsЧастые флаги и «шпаргалка» команд
- qrcp <файл|папка> — отправить файл или папку.
- qrcp –zip <файлы> — упаковать и отправить ZIP.
- qrcp –keep-alive <файл|папка> — держать сервер живым.
- qrcp receive — подготовить приём файлов.
- qrcp receive –output=/путь — изменить папку для приёма.
- qrcp -p <порт> — указать порт.
- qrcp -i <интерфейс> — указать сетевой интерфейс (например, wlan0).
Пример: установить порт и принудительно использовать интерфейс wlan0:
qrcp -p 8080 -i wlan0 myfile.zipБезопасность и приватность
Important: qrcp по умолчанию запускает простой HTTP‑сервер без авторизации. Это удобно, но нужно учитывать риски в публичных сетях.
Рекомендации по безопасному использованию:
- Используйте qrcp только в доверенных локальных сетях (дом, офис).
- Не запускайте –keep-alive в общественных Wi‑Fi без дополнительной защиты.
- При необходимости привязать к HTTPS — изучите опции qrcp и инструкции на GitHub для настройки TLS/HTTPS или проксирования через локальный HTTPS‑реверс‑прокси.
- Убедитесь, что firewall позволяет соединение только с нужного интерфейса и порта.
Приватность: файлы передаются без дополнительного шифрования по HTTP. Если передаёте чувствительные данные, предпочитайте HTTPS‑режим или зашифрованные архивы (парольная ZIP‑архивация, GPG).
Отладка и типичные проблемы
Проблема: QR‑код открывается, но загрузка не начинается.
- Проверьте, что ваш компьютер и телефон в одной подсети. Иногда маршрутизатор создает «гостевую» сеть с изоляцией клиентов.
- Проверьте firewall: ufw/iptables могут блокировать порт, который использует qrcp.
- Убедитесь, что вы указали правильный сетевой интерфейс (флаг -i).
Проблема: телефон видит QR, но открывается неправильный IP (127.0.0.1 или локальный адрес).
- qrcp может привязываться не к нужному интерфейсу. Явно укажите интерфейс через -i.
- На системах с несколькими адаптерами (Ethernet + Wi‑Fi + VPN) убедитесь, что выбран Wi‑Fi интерфейс.
Проблема: файл не сохраняется в нужную папку при приёме.
- Проверьте флаг –output и права на папку.
Если зависает генерация QR‑кода — попробуйте явно указать порт и интерфейс, а затем посмотрите вывод команды для ошибок.
Таблица совместимости (общий обзор)
| Что | Работает? | Примечания |
|---|---|---|
| Linux (x86_64, ARM) | Да | Сборки доступны в релизах. |
| Android (через браузер/камера) | Да | Встроенный браузер/камера обычно открывают ссылку. |
| iOS (камера/Safari) | Да | iOS поддерживает сканирование QR в стандартной камере. |
| Публичные сети | Риск | В публичных сетях будьте осторожны — нет аутентификации. |
Альтернативы и когда qrcp не подходит
- Snapdrop / Sharedrop — веб‑аналог, не требует установки, подходит для быстрой передачи, но зависит от браузера и публичных сервисов.
- scp / rsync — безопасно и устойчиво, но требует SSH‑доступа и не подходит для простого обмена с телефоном без клиента.
- KDE Connect / GSConnect — богатые функции интеграции, но требуют установки приложений на обеих сторонах.
Когда qrcp не лучший выбор:
- Нужно зашифрованное, аутентифицированное соединение в ненадёжной сети.
- Передаёте очень большие объёмы данных и хотите возобновление передачи при разрыве (лучше rsync/SSH).
Роль‑ориентированные чек‑листы
Для разработчика:
- Установить qrcp и проверить qrcp version.
- Проверить доступность порта и интерфейса.
- Автоматизировать команду в скрипте для быстрого использования.
Для системного администратора:
- Настроить firewall для разрешения нужного порта только на внутреннем интерфейсе.
- Документировать процедуру передачи и место хранения файлов.
- При необходимости настроить HTTPS‑прокси.
Для рядового пользователя:
- Проверить, что телефон и компьютер в одной сети.
- Открыть терминал, выполнить qrcp имя_файла и отсканировать QR.
- Проверить папку загрузок на компьютере или на телефоне.
Критерии приёмки
- Сканирование QR‑кода на телефоне открывает веб‑страницу загрузки/приёма.
- Загруженный файл сохраняется в указанную папку на компьютере.
- При отправке файл на телефоне доступен для скачивания и целостен (проверка контрольной суммы по необходимости).
- Сервер qrcp корректно завершает работу после передачи, если –keep-alive не задан.
Мини‑методика (быстрый сценарий)
- Убедитесь в одном Wi‑Fi.
- На компьютере: qrcp myfile.pdf
- На телефоне: сканировать QR, открыть ссылку, нажать «Скачать».
- Проверить файл.
Частые вопросы
Нужен ли на телефоне специальный клиент?
Нет. Достаточно браузера или сканера QR.Работает ли qrcp через мобильный интернет?
Нет. Оба устройства должны быть в одной локальной сети или иметь прямую сетевую видимость.Можно ли настроить HTTPS?
Да, но для этого потребуются дополнительные шаги (см. README на GitHub). Простейший способ — проксировать через локальный HTTPS‑реверс.
Итог и рекомендации
qrcp — удобный и быстрый инструмент для тех, кто привык к терминалу и хочет простой, кроссплатформенный способ обмена файлами между Linux‑машинами и мобильными устройствами. Он особенно полезен для одноразовых передач и сценариев, когда установка мобильного приложения нежелательна.
Если вам нужна безопасность на уровне производства — продумайте HTTPS/SSH‑варианты или используйте шифрование до передачи. Для полноценной интеграции с рабочим процессом рассмотрите комбинацию qrcp для быстрых передач и rsync/SSH для регулярной синхронизации.
Краткое резюме ниже.
Краткое резюме:
- qrcp быстро настраивается и прост в использовании.
- Подходит для большинства задач обмена между Linux и телефонами.
- Следите за безопасностью в публичных сетях и используйте HTTPS при необходимости.
Короткое объявление (пример для команды): qrcp — новый CLI‑инструмент для быстрой передачи файлов между Linux и смартфонами по Wi‑Fi через QR‑код. Без установки приложений на телефон. Простая команда — и файлы уже на другом устройстве.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента