Як перенести файли між Android та Linux через USB?


26

Я хочу скопіювати деякі файли фільмів з Linux на мій телефон HTC One SV Android (не вкорінений).

У Windows мій телефон автоматично встановлює внутрішні та об'єми SD-карт, коли я підключаю її, що дозволяє мені передавати файли.

У Linux Mint 13 Mate я завжди отримую помилку, коли підключаю телефон за допомогою USB-кабелю, тоді монтування може зайняти кілька хвилин, а іноді виходить з ладу. Я думаю, що помилка була…

Помилка ініціалізації камери: -60: Не вдалося заблокувати пристрій

Як я можу змусити цю роботу?


Я б сказав, що проблема полягає в апаратному забезпеченні, а не з програмним забезпеченням, особливо не Linux або вашим дистрибутивом.
Bananguin

Мій старовинний телефон на базі Android 2.3 розглядається як USB-накопичувач. Яку версію Android ви використовуєте?
Ренан

Щоб побачити, що відбувається у вашому телефоні, ви можете спробувати ADB. ADB - це інструмент із SDK від Android. Ви можете бачити все у своєму телефоні. І подивіться LogError.
Ein5t3in

Я використовую android 4.1
lamwaiman1988

включення налагодження через USB запобіжить блокуванню пристрою під час підключення. Я виявив, що MTP завжди виходив з ладу, коли пристрій автоматично блокувався.
сирник

Відповіді:


17

ОНОВЛЕННЯ: Зараз існує кілька, кращих альтернатив Airdroid. Однак, здається, більшість дистрибутивів Linux зараз досить добре працює з MTP. Я знаю, що за моїм досвідом, монетний двір (заснований на Ubuntu) працює поза коробкою, як і Манджаро (заснований на арках). Якщо це не спрацьовує з коробки або вдома, то обов'язково знайдіть у менеджері пакунків рішення MTP.


Новіші версії Android монтують сховище як MTP-пристрій замість масового зберігання. Перевага для цього - одночасний доступ на пристрої Android та ПК. На жаль, хоча Windows підтримує це на самому чудово, рішення Linux зараз досить непогано.

Наразі найнадійніший (і все-таки трохи лускатий, але коли я підключився, то добре), що я знайшов, - це go-mtpfs. Ось посилання, яке допоможе вам налаштувати його. Вам потрібно встановити / зняти з командного рядка. У цьому потоці також є пусковий механізм єдності, якщо ви перебуваєте на єдності Ubuntu.

Найкращий варіант, окрім випадків, коли ви переносите багато даних, - це використовувати щось на зразок AirDroid. Це безкоштовний додаток у ігровому магазині для передачі в локальну мережу та надає веб-інтерфейс для використання з браузером вашого комп’ютера. Він навіть надає інтерфейс файлів перетягування файлів, а також навіть дозволяє отримати доступ до SMS-повідомлень, журналів викликів, встановлення додатків та багатьох інших речей.


Я встановив останню версію Linux Mint 15 Olivia, коли команда заявила, що вони доклали зусиль для підключення до Android. Я спробував USB-з'єднання, він працює просто чудово. Набагато краще, ніж Linux Mint 13. Тому я думаю, що це просто проблема Linux з передачею MTP, і продуктивність залежить від дистрибутивів.
lamwaiman1988

1
Для збільшення швидкості ви також можете використовувати, adb pullяк зазначено в цьому дописі: vxlabs.com/2014/11/06/…
Штефан ван дер

28
@ lamwaiman1988 Я не хотів би довіряти повітряній авіації. Дозволи до програми Airdroid: 1. Пристрої та історія додатків 2. Ідентифікація 3. Контакти / календар 4. Місцезнаходження 5. SMS 6. Телефон 7. Фотографії / Медіа / Файли 8. Камера / Мікрофон 9. Інформація про з'єднання Wi-Fi 10. Ідентифікатор пристрою та виклик Інформація .... Подивившись цей величезний список, я хотів дізнатися більше про компанію. "Піщана студія" є частиною "Tongbu Networks", яка працює в Китаї . Xiamen Tongbu Networks - подробиці: "Xiamen Tongbu Networks Ltd; C, кімната 3, №2, Wanghai Road, Software Park II, xia men shi, fu jian, 361000, Китай, +86.05922179187", +86.05922179187 ".
a20

Щодо вищезазначеного, цей огляд PcWorld був іронічним: "Цей додаток дозволяє повністю контролювати свій пристрій Android через веб-браузер комп'ютера".
a20

2
Зараз AirDroid стягує плату за "функцію" локальної передачі файлів.
сибінд

9

Ви можете спробувати скористатися безкоштовним (безкоштовним) менеджером файлів ES File Explorer на своєму телефоні Android.

Серед безлічі функціональних можливостей, він має FTP-сервер. Отже, якщо ви зможете встановити мережу телефону та комп'ютера, ви можете легко переносити файли обома способами зі свого комп'ютера. Я роблю це постійно з машин Ubuntu та Fedora (через Thunar).

Режим FTP-сервера в цій програмі називається "Віддалений менеджер", він знаходиться в розділі Інструменти.

Більшість сучасних файлових менеджерів приймуть такий синтаксис:

ftp://phone_ip_address:port

1
Тепер це під розділом Мережа.

3

В основному це має бути таким же простим, як і використання пам'яті. На жаль, це не так. Але, як і інші інтеграції, Linux наздожене.

Тим часом ви можете використовувати WiFi та sshd на Linux та sftp-клієнт на стороні смартфона.

Або використовувати Linux adb CLI для використання usb-передач.


2

mtpfs - файлова система FUSE для пристроїв протоколу передачі даних

apt-get install mtpfs

Зроблено. Працює як із Windows у Linux Mint / Ubuntu / тощо.


2
sudo apt-get install jmtpfson jessie
Erik255

це jmptpfsтакож на хрипі.
sjas

2

Я згоден, це не так просто, як це має бути. Наприклад, KDE має реалізацію MTP, але він може лише читати зображення, а не писати їх (принаймні, у моїй версії).

Я виявив, що це зробити набагато простіше через мережу. Існує кілька способів зробити це. Усуаріо згадав про ES Explorer Explorer.

Я користувався цим безкоштовним та відкритим вихідним кодом Android FTP-сервер і виявив це прямо. Ви вказуєте ім'я користувача та пароль, потім запускаєте FTP-сервер (дуже зрозуміло, чи працює сервер, і його легко включити / відключити).

Потім ви просто використовуєте будь-який FTP-клієнт (є багато графічних клієнтів, наприклад, я використовував Konqueror). Я зміг легко записати файли назад на телефон.

Єдині недоліки полягають у тому, що це, мабуть, трохи повільніше, ніж це було б з ефективним протоколом USB, і що FTP не захищений (усе в чіткому тексті). Потрібно зробити те ж саме, але з сервером Android SFTP; Я просто особисто його ще не знайшов.


2

Шукаючи купу рішень цієї проблеми, я знайшов Android File Transfer для Linux . Це найкраща реалізація MTP для Linux, вона просто працює.

Ви можете бачити, що ця проблема була заявлена ​​у Переліку основних проблем Linux на робочому столі .

Linux не має надійно працюючого швидкого швидкого нативної програми (безпосередньо монтується через ядро; FUSE не вирізає її) реалізація MTP. Для роботи з вашими пристроями MTP, як-от ... Android-телефони на базі Linux, вам краще використовувати ... Windows або MacOS X. Оновлення: російського програміста так роздратував libMTP, він написав власне повне додаток на основі Qt, яке розмовляє до ядра Linux безпосередньо за допомогою libusb. Зустріньте Android-File-Transfer-Linux.


1

Якщо припустити, що ви використовуєте USB-з'єднання, я виявив, що він працює, але вам потрібно робити це у визначеному порядку:

  • Не підключайте телефон до початку.
  • У телефоні зайдіть у Налаштування -> Бездротові та мережеві -> Утиліти USB та натисніть "Підключити магазин до ПК". Телефон скаже "Підключіть USB-кабель для масового зберігання".
  • Тепер підключіть USB-кабель до телефону. Він повинен показувати значок "зеленого андроїда" та повідомлення, пов'язане з USB.

(Я думаю, що в моєму телефоні є старіша версія Android, сподіваємось, це працює в загальному випадку).


Еш прав, дякую за пораду !, він чудово працює. Щоб перенести mp3-файли, вам потрібно натиснути (на мобільному пристрої) там, де написано підключитися до usb; коли ви це зробите, відкриється ритмічне поле або інша програма. Потім просто перетягніть свої файли з поля ритму до місця, де в поле ритму написано DEVICE. Файли будуть у вашому мобільному телефоні в папці під назвою Музика. Ви можете бачити всі файли папок на робочому столі, натискаючи піктограму вашого пристрою.
user66631

1
На жаль, новіші версії Android не підтримують режим масового зберігання. Лише mtp (або ptp в деяких випадках). Linux не підтримує mtp дуже добре.
Едвард Фолк

@Edward: так, ти маєш рацію. Після того, як я "модернізувався" з Galaxy S2 до S3, режим масового зберігання більше не був доступний. Як каже Дрейк у прийнятій відповіді, я виявив, що MTP є більш м'яким, ніж масове зберігання, тому це трохи прикро, але як тільки ви змусите його працювати, я гадаю. Я використовую gMTP як клієнт GUI, який працює нормально, але він досить повільний.
Еш

1

Мені вдалося скористатися rsync, щоб отримати свої файли з телефону HTC. Команди були:

$ mkdir HTC_Dump
$ cd HTC_Dump
$ rsync -av /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C010%5D/ ./

Результат:

надіслано 12 947 448 344 байтів, отримано 38 549 байт, 9 738 588,64 байт / сек, загальний розмір - 12 944,119 635, швидкість - 1,00

Я знайшов місцезнаходження телефонних файлів, заглянувши в свій /runкаталог.

Це було на Xubuntu 17.10, Artful Aardvark, Android був на HTC під управлінням Android версії 7.0.


не потрібно rsync ,,, команди копіювання достатньо cp -r /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C010%5D/ ~/Destination/Folder. Я кажу це в контексті створення єдиної копії, поза курсом, якщо потрібно оновити свій ПК з останніми зробленими фотографіями, тоді rsync - це шлях.
Exadra37

1

Я роблю це через мережу FTP, створену ES File Explorer.

Перш за все, зробіть свій пристрій як переносну точку доступу в налаштуваннях → Зв'язування та переносна точка доступу → встановіть прапорець «Переносна точка доступу до Wi-Fi», а потім підключіть свій ПК до пристрою за допомогою WiFi.

Це робить ваше з'єднання швидшим, ніж з'єднання через центральну мережу WLAN. Потім виконайте наступні дії:

  1. Відкрийте Провідник файлів ES
  2. Перейдіть до Мережі → Диспетчер дистанційного керування
  3. Натисніть кнопку "Увімкнути"
  4. У Linux (я використовую Ubuntu) відкрийте його файловий менеджер
  5. Натисніть "Підключитися до сервера" у лівій частині диспетчера файлів
  6. Введіть адресу свого пристрою, яка з’явилася в ES File Explorer

( ftp://...:...).

Тепер ви можете ставитися до свого пристрою, як до диска на вашому ПК.


1

Sdcard зазвичай є файловою системою exfat, яка за замовчуванням не розпізнається Ubuntu за замовчуванням - я не знаю, чи так це в інших дистрибутивах. Щоб мій Ubuntu 16.04 LTS міг записувати в файлову систему exfat, я зробив:

sudo apt-get install exfat-fuse exfat-utils

Тепер я можу просто підключити свій Android-телефон на робочому столі Ubuntu з USB та копіювати файли на свою sdcard (64 Гб).


0

Спробуйте цю команду та перезапустіть, це працювало для мене.

sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9

Це міра рішення?
Джефф Шаллер

Це те, що працювало для мене, буквально запустив команду, було запропоновано перезапустити і, як тільки я знову ввійшов у систему, я міг читати / записувати файли на своєму пристрої Android, використовуючи дельфін-менеджер файлів. Мені більше нічого не потрібно було робити або змінювати редагування файлів.
Robby Lebotha

Я запускаю Xubuntu з KDE Plasma 5 на моєму Asus ux303
Robby Lebotha

Ви повинні додати цю інформацію до тексту вашої відповіді, який є неповним і заплутаним без неї
nealmcb

0

Я виявив, що він працює лише для USB, якщо використовую кабель, що постачається разом із цим пристроєм або подібним пристроєм. USB-кабель з мого неіснуючого планшета Samsung відмінно працює із заміною Android Onix. Єдине, що працює для мого телефону - це кабель, який постачається разом із ним. Інші USB-кабелі для зарядки / передачі не працюють або не працюють повністю: наприклад, не копіюють файли .mp3. Поняття не маю, чому це. Але кабелі, що не входять у пристрій, часто не відображаються як вкладення USB-пристроїв.

Мені не довелося змінювати програмне забезпечення або використовувати спеціальне програмне забезпечення. Просто працює.


0

У Linux Mint 19.1 передачу великої кількості фотографій легко здійснити шляхом активації параметрів розробника та входу в Android-телефон "Налаштування", "Параметри розробника", "Конфігурація USB". Потім виберіть PTP (протокол передачі зображень) замість MTP. Тепер фотографії передаватимуться з блискавичною швидкістю лише за допомогою файлового провідника.


0

Багато хороших відповідей, я просто хочу все спростити:

sudo apt install mtp-tools

Тепер підключіть телефон Android через USB, кабель має значення, тому якщо один не працює, спробуйте інший.

mtp-detect

Зроблено. Відкрийте свою файлову програму або термінал і перенесіть подалі!


0

Щойно у мене з’явився телефон Google Pixel 3, і мені потрібно перемістити зображення / відео з нього на мій Linux Mint 18.2. Ось як я це зробив:

  1. На своєму телефоні я встановив Провідник файлів Cx
  2. Я відкрив додаток і перейшов на вкладку "Мережа"
  3. Я натискаю кнопку "Доступ з ПК"
  4. Я залишив за замовчуванням прапорець ("Випадковий номер порту" встановлено, "Показати приховані файли" не встановлено) та натиснув "Почати службу"
  5. Провідник файлів Cx відображав FTP-адресу
  6. На своєму ноутбуці Linux я відкрив менеджер файлів і натиснув на опцію "Файл -> Підключитися до сервера ..."
  7. У діалоговому вікні "Підключення до сервера" я ввів URL FTP з кроку (5) у текстовому полі "Сервер" і натиснув "Підключити"
  8. Тепер я можу бачити файли свого телефону у своєму менеджері файлів ноутбука
  9. Фотографії та відео, які я хочу перенести, знаходяться під пристроєм / DCIM / Камерою (а не у папках пристрою / Фільми чи пристрої / Картинки, як ви могли подумати).

0

Я біжу монетним двором 19.2. Мій телефон - піксель 1-го покоління, на якому працює Android 10. Після гугулінгу для вирішення та спроби MTP-варіантів, запропонованих багатьма, без успіху, я виявив, що якщо перейти в Налаштування -> Підключити пристрої -> USB та змінити "ВИКОРИСТИТИ USB ДЛЯ Передача файлів / Android Auto ", Nemo монтує сховище телефону та надає доступ до файлів пристроїв. На моєму телефоні було встановлено "Без передачі даних". Тепер я перевірив налаштування USB спочатку, можливо, рішення MTP спрацювали. Як зауваження, жодне із запропонованих рішень щодо StackExchange, HowToForge або OMG! згадано спочатку перевірити настройки USB на телефоні. Я прочитав кілька публікацій про те, що MTP на монетному дворі "працює поза коробкою". Але знову ж таки, жодної згадки про перевірку налаштувань телефонів. Сподіваюся, це допомагає.


Ряд коментарів пропонують встановити mtp-інструменти. Не кажучи, що це не потрібно. Я вважаю, що перший крок - переконатися, що налаштування USB встановлені для передачі файлів перед встановленням додаткових пакетів. У моєму випадку я встановив libmtp9 (потрібний в 19.04 LTS) та mtp-інструменти. Я просто отримав Unable to open raw device 0повідомлення про помилку. Видалено mtp-інструменти, увімкнено налаштування USB та браузер файлів віоли, що з'явився на пристрої зберігання Pixel, як і будь-який інший диск.
хакеркат

0

Вам нічого не потрібно встановлювати.

просто виконайте наступне:

  1. підключіть свій USB-кабель (?) між пристроєм Linux та смарт-телефоном. (USB-кабель (?): Ви завжди використовуєте під час зарядки свого смартфона.)

  2. Тоді ваш телефон запитає, чи дозволяєте ви доступ до даних пристроїв. Якщо ви вибрали Дозволити, то для доступу буде встановлено з'єднання MTP.

  3. Ви можете передавати файли між вашою машиною Linux і вашим adndroid.

Це все.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.