Как передавать файлы с компьютера на смартфон и обратно при помощи Qrcp и QR-кода

Автор оригинала: Shashank Sharma
  • Перевод

Для того, чтобы передать файлы с ноутбука или ПК на мобильное устройство или в обратном направлении, можно воспользоваться большим количеством разных способов и инструментов. Наиболее простой и распространенный — USB кабель. Но что если нужного провода нет, а передать файл жизненно важно? В этом случае можно использовать передачу при помощи QR-кода без всяких проводов. Для этого потребуется Qrcp.

Версии Qrcp есть для Linux, Windows и macOS. Работает все это благодаря привязке веб-сервера к IP-адресу машины со случайным номером порта. Затем система генерирует уникальный QR-код, который предоставляет устройству-получателю всю необходимую для передачи файлов информацию. Веб-сервер прекращает работу сразу после завершения передачи данных.

Как установить Qrcp


Как и говорилось выше, версии Qrcp доступны для Windows, Mac и Linux систем, включая Raspberry Pi. В этой статье рассказывается о связке Linux и Qrcp. Система создает пакеты deb и rpm для 32- и 64-битных машин, включая поддержку архитектуры ARM, если вам потребуется установить Qrcp на Raspberry Pi. Установить все это несложно и с использованием исходного tarball.

Загружаем последнюю версию системы для вашей машины. На момент написания это версия 0.8.4. Извлекаем загруженный файл в новую папку, которая называется qrcp, в папке Downloads.


Открываем командную строку и идем в новосозданную директорию.

$ cd ~/Downloads/qrcp

Перемещаем извлеченные файлы в /usr/local/bin, что дает возможность запускать команду из любого места. Если у вас Windows, то загружаем все в папку Windows, что предоставляет ту же возможность.

$ sudo mv qrcp /usr/local/bin/

Передача файлов на мобильные устройства


Возможностей конфигурации по умолчанию должно хватить для большинства пользователей. Как только вы укажете файл, который хотите передать, qrcp создаст уникальный URL-адрес, с которого этот файл можно загрузить. Кроме того, в процессе передачи генерируется QR-код, позволяющий передать данные об адресе устройству-получателю.

В примере ниже в качестве сканера QR-кода используется Google Lens, но, конечно, можно использовать и любой другой сканер, включая встроенные.

В командной строке указываем директорию, которая содержит передаваемый файл. В примере это PDF на рабочем столе, который планируется передать на смартфон.

$ cd ~/Desktop

Применяем qrcp для передачи файла.

$ qrcp Technical-Specs.pdf


На мобильном устройстве открываем сканер QR-кода и, соответственно, сканируем код.


Нажимаем на появившийся адрес, и файл моментально начинает передаваться.

Передача нескольких файлов


Аналогичным образом Qrcp можно использовать для передачи любого количества файлов. Они будут передаваться одним .zip архивом. Правда, прописывать файлы в командной строке придется вручную.

$ qrcp filename1 filename2 filename3


Передача файлов с мобильного устройства на компьютер

Аналогичным образом файлы можно передавать и с компьютера или ноутбука на смартфон.

Открываем командную строку на ПК и вводим команду

qrcp receive

Она позволяет получить файл.

Используя мобильное устройство, сканируем QR-код и нажимаем на полученный адрес.


Открывшаяся веб-страничка предложит указать файлы, которые нужно передать.

Выбираем файлы, нажав на соответствующую кнопку.


По умолчанию система загрузит файлы в текущую директорию. Но, если такой вариант не подходит, указываем другую папку.

qrcp receive --output=/path/to/directory

Настройка qrcp



Хотя дефолтной конфигурации qrcp должно хватить для большинства пользователей, можно выполнить и «тонкую» настройку: запустить команду qrcp config, чтобы установить кастомные значения. Система задаст ряд вопросов: уточнит используемый по умолчанию сетевой интерфейс, порт по умолчанию, каталог по умолчанию для полученных файлов, спросит, использовать ли HTTPS для передачи, и т.д. Процесс простой и понятный. По завершении настройки конфигурация записывается в файл config.json в каталоге ~ / .config / qrcp (Linux).

Selectel
IT-инфраструктура для бизнеса

Комментарии 45

    0

    У меня накрылся разъем USB, только заряжает, данные не идут. В одной сетке передаю через FTP

      0

      Странно накрылся. Зарядка хоть барахлит? Значит не разъем.

        0

        Зарядка барахлит, но есть положение где работает. А данные совсем не работают

          0
          Посмотри на али платку под свой аппарат, если с паяльником туго. Разъем может выскочить из платы и не до положения будет)) Вчера разобрал самсунг a70, оказывается часть с USB 600 рублей стоит и меняется очень просто. Может и с твоим будет так же легко.
            +1
            Очень часто на эти платки с usb жалуются. Точно не помню, на что. Себе брал про запас: на платке с али значительно меньше компонентов
          0

          У меня накрылся так же - не работает передача по usb, хотя usb-otg работает. Плюс быстрая зарядка не включается. Разъем вместе с нижней платой меняли безуспешно. Где то что там в SoC сгорело.

        0
        Для домашнего компьютера, имхо, это избыточно. У меня для обмена файлами между ПК/ноутбуками/планшетами/смартфонами есть общая папка, роль которой играет воткнутая в роутер флешка
          +1
          В деле передачи файлов важно чтоб файл оказался понятно где и до него было удобно добираться. Одна знакомая любит бросать мне что-нибудь (обычно ссылки и мелкие файлы) в WhatsApp с пометкой «это себе» ).
            +6

            Расскажите ей о telegram с его избранным (отправить себе).

              0

              В Viber тоже есть. Можно скрывать отмеченные заметки. Файлы что то около месяца хранятся, обычно этого хватает.

                0
                Но при этом файлы передаются со скоростью интернета, а не локальной сети. Если роутер и флешка не слишком древние, то через них можно передавать на гораздо бОльшей скорости, чем через мессенджер.
                +1
                Предложите знакомой создать в вазапе группу «Себе» из себя и Вас, потом удалить Вас из этой группы. И пусть использует эту группу для отправки себе чего-угодно.
                  0
                  в WhatsApp можно отправить сообщение себе
                  0

                  РРаньше для этого использовал https://file.pizza, сейчас перешёл на IPFS

                    0

                    Для этих целей я использую инструмент Flow в браузере Опера. Очень удобно, и нет необходимости изобретать велосипед.

                      0
                      Со смартфона на компьютер (или на другой смартфон) это есть в «Total Commander»: выбрать файлы, потом кнопка «копировать» и выбрать «VIA WIFI» (появляется QR-код и обычный человеко-читаемый адрес, по нему открывается страница со списком файлов, чтобы скачать по одному или сразу zip-архивом, сжатым или нет).
                        0
                        Ничего не нашел. Может это какой плагин к тоталу?
                          0
                          Да, плагин «WiFi/WLAN Plugin for Totalcmd» от автора самого коммандера.
                      0
                      Не пойму — этой штуке нужен работающий сторонний веб-сервер, или оно само им умеет работать? Потому что всё, чего я смог добиться — это сканирования кода, после этого программа возвращается в консоль и ничего не скачивается.
                        0
                        Гм, оказывается, не все йогурты QR-ридеры одинаково полезны…
                        Пробовал этим сканером — play.google.com/store/apps/details?id=com.google.zxing.client.android — а он не работает.
                        С Google Lens получилось.
                          0
                          Можно указать сторонний. Но есть и встроенный.
                          0

                          В busybox есть ftpd демон, а qr может хром сгенерировать.

                            +1

                            Для этой цели пользуюсь KDE Connect, очень удобный инструмент. Поддерживает синхронизацию буфера обмена и пересылку урлов прямо из браузера — это из того, что часто бывает надо.

                              0

                              К сожалению нельзя директории пересылать. Музыку приходится по старинке через кабель заливать.


                              Вообще, это, конечно, позор, что в Андроиде нет встроенного механизма для прямой передачи файлов ПЭКА<=>Телефон. Могли бы добавить что-то всроенное, а для ПЭКА сделать клиент на базе Хрома.

                                +1
                                Как это нет???
                                image
                                  0
                                  А где в списке РС?
                                    0
                                    По вайфаю можно передавать куда угодно, приложение есть под все популярные ОС.
                                  0
                                  я с/на адроид заливаю через ADB который внезапно может через wifi, а если использовать tar то можно и папки перекидывать как по ssh
                                    0

                                    Если кому интересно, то остановился на свободной программе Ftp Server, пока она мне видится почти идеальной:


                                    https://github.com/ppareit/swiftp


                                    1. Довольно легко настраивается;
                                    2. Автоматически может подключаться в известных сетях;
                                    3. Легко настраивается доступ на запись сд-карты;
                                    4. Автоопределяется на пэка через Bonjour (по крайней мере в Гноме, не знаю как в винде), т.е. не надо каждый раз вводить адрес, если он поменялся;
                                    5. Свободное и бесплатное (в Play Store есть платная версия, у которой такая же функциональность такая же, как и у Fdroid-версии, на случай если кто-то хочет поддержать автора).

                                    Cons:


                                    1. Шифрованный ftp не умеет (но мне особо и не надо);
                                    2. Скорость 2-3Мб/с на мелких файлах, около 5-6Мб/с на больших (полагаю это особенность моей сд-карты);
                                  +2

                                  Есть woof, он значительно проще. Такого размера статью про него просто не получится.

                                    0
                                    < комментарий, в котором я рассказываю что пользуюсь каким-то другим инструментом >
                                      0
                                      В telegram есть saved messages для быстрой пересылки не очень секретных файлов. И iCloud
                                        0

                                        Господи, насколько гениальными были разработчики Blackberry OS10...

                                        Например, эту "проблему" они решили тупо добавлением samba-сервера в свою операционку.

                                        И сколько похожих продуманных за пользователя вещей там было - пересчитать невозможно.

                                          +2

                                          Ну файл всё равно идёт по ip и сетям, это неинтересно) Сделали бы утилиту для передачи с компа на телефон и обратно путём съёмки камерой быстро мелькающих qr-кодов. Или путём многочастотной передачи через звук. Небыстро, но эффективно и хаково)

                                            +4

                                            путём съёмки камерой быстро мелькающих qr-кодов

                                            По КДПВ я сначала подумал что так будет, но на деле все оказалось банальнее.

                                              +1
                                              Два с половиной года назад здесь, на нашем Хабре, уже была статья о передаче файлов при помощи быстроизменяющихся QR-кодов: habr.com/ru/post/430688
                                              0

                                              Какая-то вариация IR порта получается, когда надо телефон держать в одном положении долго, иначе прервётся передача.

                                              0

                                              Раз уж все своими способами делиться начали. В доверенной сети для меня самый простой способ python[3] -m http.server — открывает веб-сервер, который раздает всё содержимое рабочей папки.

                                                0
                                                Если есть интернет, то можно накатить KDE Connect или GS Connect (если для gtk), так же легко и просто.
                                                  +1

                                                  ES Explorer в два клика (буквально) позволяет включить ftp доступ на мобильное устройство. И подключаться можно как wi-fi по сети организованной самим устройством, так и просто в одной wi-fi сети. Это приложение, которое во вторую очередь после клиента 4pda устанавливается на любое свежее устройство, с которым я имею дело.

                                                    0

                                                    Не знаю чем в этом случае ftp не угодил. Хотя лично я использую на андроиде AirDroid, который позволяет с компа управлять данными на смартфоне. А так как смартфон надо обмениваться данными с различными компами, то удобнее сервер держать именно в смарте

                                                      +2
                                                      Где-то в паралельной вселенной уже много лет сущесвует AirDrop.
                                                        0

                                                        у меня на хаевее по дефолту стоит wifi direct, но ставить закрытый софт на десктоп я не горю желанием.

                                                        –1
                                                        Вдруг кому пригодится.
                                                        MyPhoneExplorer
                                                        По кабелю и WiFi. Не только файлы, но и открывает доступ к телефонным звонкам, сообщениям, органайзеру, помогает синхронизировать данные между несколькими гаджетами, а также создавать резервные копии данных и прочее.
                                                          0

                                                          Я использую 7Zipper на телефоне в режиме ftp-сервера (чтобы закинуть что-то, хоть Far'ом), или http-сервера, чтобы пошариться по фоточкам...

                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                          Самое читаемое