Как переместить файлы между Ubuntu и iPhone
Я недавно получил iPhone 6s. Есть ли способ передачи файлов (музыка, фотографии, PDF или что-то еще на самом деле) между Ubuntu и телефоном? Это не должно включать синхронизацию через интернет-сервис, поскольку у меня может возникнуть необходимость передавать большие или личные файлы. Также я не хочу делать джейлбрейк устройства.
Есть несколько результатов при поиске этого в Google, но ни один не кажется очень актуальным.
5 ответов
Я не знаю, есть ли разница между версиями, но я могу просто получить доступ к файлам моего iPhone 5s через файловый менеджер, когда он подключен через USB (используя протокол AFC).
Я использую бета-версию iOS 9.2, я понятия не имею, работает ли она на 9.1 или более ранней версии. Я могу получить доступ к устройству с боковой панели Nautilus, если оно не отображается, попробуйте перейти по следующему адресу:
afc://<your iPhone's UDID>/
Кроме того, большинство музыкальных проигрывателей (по крайней мере Rythmbox, Banshee и Clementine) поддерживают синхронизацию музыки через AFC (Apple File Conduit).
РЕДАКТИРОВАТЬ: я только что узнал, что я могу легко синхронизировать свои фотографии, используя такие инструменты, как gThumb.
Apple постоянно нарушает доступ приложений Linux к iPhone. Начиная с 2019 года, лучший способ загрузки и скачивания файлов - использовать стороннее приложение на iOS. Судя по всему, загружаемый вами файл доступен только для этого третьего приложения.
Phone Drive - хорошее приложение для этого. Сначала запомните IP-адрес вашего iPhone, затем, когда PhoneDrive находится на переднем плане, ввод IP-адреса iPhone с ПК, подключенного к той же локальной сети, даст вам веб-сайт, на котором вы сможете загружать и скачивать файлы., Вы также можете использовать протокол FTP на том же IP-адресе iPhone. Phone Drive поддерживает воспроизведение множества видео и музыкальных форматов.
https://itunes.apple.com/us/app/phone-drive-file-storage-sync/id431033044
Теперь Sandisk создает USB-устройство, которое подключается непосредственно к iphone и может создавать резервные копии и перемещать изображения, музыку, элементы календаря и некоторые элементы файлов. Он не может делать заметки и некоторые другие предметы, но то, что он делает, он делает очень хорошо. Это особенно хорошо для нескольких больших видеофайлов. Просто скопируйте его на USB-накопитель, подключите его к чему угодно и переместите файлы.
БЕСПЛАТНЫЙ и лучший способ для меня - установить веб-сервер на вашем локальном компьютере и поделиться всем через браузер Safari на iPhone, это шаги YMMV
sudo apt install nginx php-fpm git
mkdir ~/iphoneFiles
sudo nano /etc/nginx/sites-available/default
Удалите там все и поставьте что-то вроде этого, не забудьте изменить <ВАШ-ПОЛЬЗОВАТЕЛЬ> и при необходимости изменить версию php php7.4-fpm.sock
server {
listen 80;
server_name localhost;
root /home/<YOUR-USER>/iphoneFiles/elFinder;
index elfinder.src.html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
}
Установка https://github.com/Studio-42/elFinder
cd ~/iphoneFiles
git clone https://github.com/Studio-42/elFinder.git
Настройка elFinder
mv elFinder/php/connector.minimal.php-dist connector.minimal.php
Установка (вероятно) правильных разрешений для папки загрузки
sudo usermod -a -G www-data $USER
sudo chown -R $USER:www-data elFinder/files/
sudo chmod a+rwx,o-rwx,ug+s elFinder/files/
ln -s ~/iphoneFiles/elFinder/files/ ~/Documents/iphoneFiles
Заставить nginx загружать новые установленные директивы
sudo service nginx reload
Теперь получите IP-адрес вашей локальной сети.
hostname -i | awk '{print $1}'
Войдите со своим iPhone на этот IP-адрес и начните загружать изображения или что угодно.
примечание: вам нужно будет изменить настройки elFinder, чтобы разрешить загрузку всех типов файлов
sed -i 's/.*uploadDeny.*/'uploadDeny' => array(''),/' elFinder/php/connector.minimal.php
sed -i 's/.*uploadDeny.*/'uploadAllow' => array('all'),/' elFinder/php/connector.minimal.php
Если вы все сделали правильно, ваши файлы должны находиться в:
~/Documents/iphoneFiles
Для достижения этой цели для моей подруги я подготовил локальный файл Nextcloud docker-compose.yml: https://github.com/jclaveau/nextcloud-localhost-docker-compose .
Просто клонируйте его, установите докер, запустите start.sh, после чего вы сможете получить к нему доступ с помощьюhttp://your.local.network.ip
.
В качестве учетных данных используйте:
- имя пользователя: зарегистрированный пользователь, запускающий start.sh
- пароль: такой же, как имя пользователя