summaryrefslogtreecommitdiffstats
path: root/README
blob: ff5894a7ec70d7d19a2ccc93dd29eadb1beb28d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
INSTALLATION
================================================================================

For:
	Apple iPhone/iPod Touch + iPod USB cable

You must have:
	libiphone 
	libfuse-dev (and the associated kernel modules)
	libglib2.0-dev
	make
	autoheader
	automake
	autoconf
	gcc

To compile run:
	./autogen.sh
	./configure
	make
	sudo make install  # (if you want to install it into your system directories)

On Ubuntu/Debian, you can do:
	sudo apt-get install build-essential automake autoconf \
          libfuse-dev libglib2.0-dev

(make sure that you have compiled libiphone first)


USAGE
================================================================================

Now comes the fun bit!

To mount:

	$ ifuse <mountpoint>

Note:
	If you mount your device as regular user, system migth complain that file
	/etc/fuse.conf is not readable. It means you do not belong to the 'fuse'
	group (see below).

To unmount you do:
	$ fusermount -u <mountpoint>


By default, iFuse (via the AFC protocol) gives access to the '/var/root/Media/'
chroot on the iPhone (containing music/pictures). This is the right and safe 
way to access the device. However, if the device has been jailbroken, a full
view of the iPhone's filesystem might be available using the following command
when mounting:

	$ ifuse --root <mountpoint>

Note that only PwnageTool and older jailbreak software installs the necessary
AFC2 service on the device to enable root filesystem usage. For instance 
blackra1n does not install it and thus does not enable root filesystem access!
Use with care as the AFC protocol was not made to access the root filesystem.

Addtional help can be shown using:

	$ ifuse --help

==== Setting up FUSE ====

Note that on some systems, you may have to load the 'fuse' kernel
module first and to ensure that you are a member of the 'fuse' group:

	sudo modprobe fuse
	sudo adduser $USER fuse

You can check your membership of the 'fuse' group with:

	id | grep fuse && echo yes! || echo not yet...

If you have just added yourself, you will need to logout and log back
in for the group change to become visible.

== Who/what/where? ==

wiki:
	http://matt.colyer.name/projects/iphone-linux/

code:
	git clone git://github.com/MattColyer/ifuse.git

tickets:
	http://libiphone.lighthouseapp.com/

mailing list:
	http://lists.mattcolyer.com/listinfo.cgi/iphone-linux-dev-mattcolyer.com

updated:
	2010-01-21