如何在Ubuntu 16.04上安装iPhone 6s?


31

我是Ubuntu的新手,也不知道如何安装iPhone。

我想下载iTunes,但是我看到USB无法正常工作,但是我只需要访问我所有的文件和APP,因为要将APP从PC传输到iPhone。


电话越狱了吗?
fakedad

不,不是,而是新鲜的
Rizio A.

据我所知,在任何操作系统上都无法通过USB正常挂载iPhone的文件系统。而且,我不知道任何适用于Ubuntu的应用程序(或与此相关的任何Linux发行版)都允许将应用程序同步到iOS设备。
fakedad

您可以尝试使用VirtualBox在虚拟机中运行Windows,并通过VM中的iTunes管理应用程序。
fakedad

我在某处读到可以安装GKSU NAUTILUS的地方可以正常工作...(老实说,不知道它是什么),但是却出现了一些错误...无法下载VirtualBox ...您是否有任何链接?
Rizio A.

Answers:


36

显然,我无法在Ubuntu上安装iPhone。您可以在yakkety上使用以下步骤执行此操作。请注意,您需要以加载应用到设备上,这种方式被越狱的设备,但这种方法将满足从设备获取媒体。

选项1:使用脚本

如果您想节省一些时间,可以在此处下载脚本来为您完成该过程的大部分工作。

下载后,您将需要更改权限,以便您可以执行脚本。假设你使用默认名称下载了它,iphone_setup.shcd的目录在其中您下载的文件,做

chmod u+x iphone_setup.sh

通过执行转换Windows行尾

ex -bsc '%!awk "{sub(/\r/,\"\")}1"' -cx iphone_setup.sh

然后使用root特权运行脚本

sudo ./iphone_setup.sh

这将为您完成手动设置的所有步骤1,以及步骤3步骤4。在脚本运行完成之后,您将需要执行手动设置的步骤2步骤5

选项2:手动执行

步骤1:安装工具

在插入iPhone之前,您需要安装几个程序才能挂载iPhone。

步骤1.1:使用apt-get安装几个重要工具

在终端中执行以下操作,以安装任何版本的iOS所需的一些软件包。

sudo apt-get install ideviceinstaller python-imobiledevice libimobiledevice-utils python-plist usbmuxd

如果要在iOS 9之前将iPhone与iOS版本连接,则可以跳过步骤1的其余子步骤,而只需执行以下操作:

sudo apt-get install libimobiledevice6 libplist3 ifuse

步骤1.2:安装用于构建的工具

使用apt-get下面的步骤来安装构建程序还需要一些程序

sudo apt-get install libtool autoconf automake

步骤1.3:安装libplist

首先,安装build所需的依赖项libplist。为此,请执行以下操作:

sudo apt-get install libxml2-dev python-dev

然后下载最新版本libplist从GitHub和zip文件的内容解压到某个目录。例如,如果您位于下载libplistzip文件的目录中,请执行do unzip libplist-master.zip

您现在应该在将libplistzip文件解压缩到的目录中有一个名为“ libplist-master”的目录。cd从终端进入该目录,然后运行

./autogen.sh

./autogen.sh脚本完成运行,运行

make

最后,运行

sudo make install

步骤1.4:安装libusbmuxd

此步骤类似于上一步,除了我们正在安装libusbmuxd而不是libplist

首先,下载最新版本libusbmuxd从GitHub。再次将内容提取到目录和cd目录中libusbmuxd-master。然后运行以下命令:

./autogen.sh

完成后,运行

make

其次是

sudo make install

步骤1.5:安装libimobiledevice

首先,通过执行以下操作安装构建依赖项:

sudo apt-get install libssl-dev

然后下载最新版本libimobiledevice从GitHub。如前两个步骤中所述提取;您应该在提取到的目录中找到一个名为的目录libimobiledevice-mastercd进入该目录,然后再次运行

./autogen.sh

完成后,运行

make

其次是

sudo make install

步骤1.6:安装更好的usbmuxd版本

首先,usbmuxd通过执行以下操作卸载旧版本

sudo apt-get remove usbmuxd

然后,通过执行以下步骤安装构建依赖项

sudo apt-get install libimobiledevice-dev libplist-dev libusb-dev libusb-1.0.0-dev libtool-bin libtool

然后,下载最新版本usbmuxd从GitHub。提取并cdusbmuxd-master目录。再次,运行

./autogen.sh

完成后,运行

make

其次是

sudo make install

步骤1.7:安装ifuse

这是您最后需要安装的东西!

首先安装,通过做构建依赖

sudo apt-get install libfuse-dev

下载最新版本ifuse从GitHub。将其解压缩到某个目录,再解压缩cd到该目录ifuse-master,再解压缩cd到该目录。

这次有一个额外的步骤来构建程序。做

./autogen.sh

和往常一样,但是然后

./configure

也一样 然后,继续正常

make

sudo make install

步骤2:运行usbmuxd并连接iPhone

这一步很简单。usbmuxd在终端中运行,然后插入iPhone。

现在,通过执行以下操作来检查设备是否被正确识别

dmesg | grep ipheth

如果没有任何显示,请尝试断开iPhone的连接,usbmuxd再次运行,然后重新插入。然后再次检查。

步骤3:为iPhone创建挂载点

您可以通过以下方式手动为iPhone创建挂载点:

sudo mkdir /media/iPhone

然后,您可能需要更改安装点的权限。做

sudo chmod 777 /media/iPhone

步骤4:编辑ifuse配置文件

/etc/fuse.conf如果要在没有root用户的情况下访问iPhone ,ifuse配置文件需要进行编辑。

使用您喜欢的编辑器编辑配置文件,例如gedit

sudo gedit /etc/fuse.conf

在文件中,确保以下两行位于以下行# Allow non-root users to specify the allow_other or allow_root mount options

op$
user_allow_other

保存文件并退出编辑器。

步骤5:配对iPhone

运行以下行以使用来配对您的iPhone idevicepair

idevicepair pair

步骤6:使用ifuse进行安装

运行以下行,将设备安装在先前指定的安装点:

ifuse /media/iPhone

注意:此时,如果您的手机越狱了,您可以挂载根文件系统,方法是执行以下行

ifuse /media/iPhone/ --root

现在应该可以/media/iPhone通过文件浏览器访问iPhone 。

要卸载时,请执行以下两行

fusermount -u /media/iPhone/
idevicepair unpair

这些步骤在dedoimedo的本教程中针对xenial进行了修改,然后进一步进行了修改以适合具有iOS 9+的设备。


1
[1461.760447] Ipheth 1-2:4.2 enp0s20u2c4i2:从eth0重命名stream13 @ stream13-HP-Stream-Notebook-PC-13:〜$ mkdir / media / iPhone mkdir:无法创建目录'/ media / iPhone':权限被拒绝I不知道该怎么做...
Rizio A.

1
@ RizioA.Sorry,应该是sudo mkdir /media/iPhone
fakedad '16

1
@ RizioA.Same withsudo chmod 777 /media/iPhone
fakedad '16

5
这不适用于iOS 10:“ GnuTLS错误:提取功能出错。无法连接到设备上的锁定服务。请重试。如果仍然失败,请尝试重新启动设备。”
zgoda

2
步骤#6不适用于我,但文件浏览器有效,非常感谢
Anand Rockzz

5

在iPhone 4S的16.04和18.04上测试;没有理由相信它将在6或更高版本上有所不同

[编辑:参见下文,该方法可一直使用到iPhone 7]。

相当简单的路线:

➊安装:

sudo apt install ideviceinstaller python-imobiledevice libimobiledevice-utils python-plist usbmuxd libimobiledevice6 libplist3 ifuse

您可能也需要这样做:sudo mkdir / var / lib / lockdown sudo chmod 777 / var / lib / lockdown

在终端中的to查看您的iPhone地址:

 lsusb -v 2> /dev/null | grep -e "Apple Inc" -A 2

您将看到以下内容:

iManufacturer 1苹果公司
iProduct 2 iPhone
iSerial 3 ca00d62380d42746b8ff8280 .... d1fd7b7119ca

➌打开鹦鹉螺

从上方输入iSerial:

afc://ca00d62380d4274....f8280a91ed1fd7b7119ca/

现在,您将看到文件。

➍作为点缀,您可以从App Store免费安装VLC Mobile,这当然会让您播放iTunes无法处理Flac Wavpack等的格式

您会在页面左侧[ iPhone上的iPhone]旁边[在iPhone上的文档中查看/放置音乐文件] 。在其他桌面环境中必须看起来相似]

===提示===

如果iphone VLC文件在您的PC上不可见;我发现这将他们带回来:

sudo usbmuxd --verbose -f    

这非常适合在18.04上访问iPhone 7 Plus的照片,并且比其他答案更简单。谢谢!
安倍·沃克

安倍(Thanx Abe)说它适用于7,因为我所有的都是4S ....对其他人还是很熟悉的,或者我是否愿意买一个最新的玩具:]尽管从2011年起4S仍然很棒,仍然不需要!
shantiq

现在在iPhone SE上对其进行了测试,并且也可以在此处进行
shantiq

3

似乎在iOS 10.2中,Apple再次破坏了它。修理:

  1. 从GitHub下载最新版本:libplistlibusbmuxdlibimobiledeviceifuseusbmuxd

  2. 将ZIP文件提取到您喜欢的文件夹中,进入每个目录并启动相应库的编译(如果您不知道如何操作,只需按照每个lib内自述文件中的说明进行操作,并记住其开发版本openssllibssl-dev在需要时调用)。请注意,最后一个命令“ sudo make install”应将已编译的库放入中/usr/local/lib

  3. 确保环境变量指向此新版本,而不是官方软件包中包含的旧版本:

    sudo LD_LIBRARY_PATH=/usr/local/lib usbmuxd    
    export LD_LIBRARY_PATH=/usr/local/lib
    
  4. 将您的iOS 10.2设备连接到计算机:

    idevicepair pair
    
  5. 选择“信任”警告“信任此计算机?” 在您的设备上:

    idevicepair pair
    
  6. 挂载iOS文件系统

    ifuse Mountpoint_Directory/
    

在装有iOS 10.2的Ubuntu 16.04和iPhone 7上测试


在我的现有Ubuntu 16.04系统上,该电话甚至没有在lsusb中显示。该库是否可以修复该问题,以便我可以在VirtualBox中使用iTunes?
格雷格·贝尔

几个月过去了,老实说我记不太清了,但是我认为我的iPhone甚至在应用新库之前就已在lsusb中被检测到,所以我不知道它们是否可以解决您正在谈论的问题。
bytepan '17

谢谢,这解决了我在Ubuntu 16.04上的问题,我终于可以访问我的照片了。一个小提示:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib在n的两个子步骤中使用此命令会更合适。3.这样,将保留当前的LD_LIBRARY_PATH(如果有)。再次感谢您的分享!
路易·加格农

当我尝试安装时,我会不断收到消息:~$ ifuse /media/iPhoneThere was an error accessing the mount point: Input/output error别人有这个问题吗,有解决方案吗?
Zangar

2

在/ usr / local / lib下构建了新版本的libplist,libusbmuxd,libimobiledevice,ifuse和usbmuxd之后,在调用连接iPhone的命令时必须使用这些版本(而不是使用旧的库版本,即默认情况下完成)。因此,我在bash-shell中执行了以下操作(请确保在执行每个操作之前先解锁(输入密码或使用指纹)iPhone):

sudo LD_LIBRARY_PATH=/usr/local/lib usbmuxd
export LD_LIBRARY_PATH=/usr/local/lib
idevicepair pair
ifuse /media/iPhone

(注释源自user639768,并作为问题发布,但此后已删除。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.