Skip to content

Commit 06ed20a

Browse files
authored
Merge pull request #9 from sickcodes/readme-edits
Add instructions for Linux and PATH issue for systems without /usr/lo…
2 parents 1296e90 + 57b74d8 commit 06ed20a

File tree

1 file changed

+54
-6
lines changed

1 file changed

+54
-6
lines changed

README.md

+54-6
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ Installation
1010

1111
Copy usbfluxd binary to a location included in $PATH, for example
1212
/usr/local/sbin:
13-
```
13+
```zsh
1414
sudo cp usbfluxd /usr/local/sbin/
15+
export PATH=/usr/local/sbin:${PATH}
1516
```
1617

1718
Usage
@@ -21,7 +22,7 @@ Note: usbfluxd requires root permissions to run.
2122

2223
To start usbfluxd, run:
2324

24-
```
25+
```zsh
2526
sudo usbfluxd
2627
```
2728

@@ -32,16 +33,16 @@ and also with increased verbosity by adding -v to the command line. Multiple
3233
Please be aware that all usbmuxd-aware apps like Xcode or iTunes need to be
3334
restarted so they will talk to usbfluxd instead of the original usbmuxd.
3435

36+
To stop usbfluxd immediately, run:
3537

36-
To stop usbfluxd, run:
37-
38-
```
38+
```zsh
3939
sudo killall usbfluxd
4040
```
4141

4242
Also after stopping usbfluxd, remember to restart any app that relies on
4343
usbmuxd so it returns to the original state.
4444

45+
On Linux you may need to `sudo systemctl restart usbmuxd`.
4546

4647

4748
Build Requirements
@@ -65,8 +66,55 @@ Installation From Source
6566
========================
6667

6768
To compile run:
68-
```
69+
```zsh
70+
# brew install make autoheader automake autoconf libtool pkg-config gcc libimobiledevice
71+
72+
git clone https://github.com/corellium/usbfluxd.git
73+
cd usbfluxd
74+
6975
./autogen.sh
7076
make
7177
sudo make install
7278
```
79+
80+
Also available from the Arch User Repository for Linux hosts: [https://aur.archlinux.org/packages/usbfluxd/](https://aur.archlinux.org/packages/usbfluxd/)
81+
82+
83+
Linux Usage
84+
===========
85+
86+
Connecting your device over USB on Linux allows you to expose usbfluxd on port 5000 to another system on the same network.
87+
88+
Ensure `usbmuxd`, `socat` and `usbfluxd` are installed.
89+
90+
Start the `usbmuxd` daemon on Linux
91+
```bash
92+
sudo systemctl start usbmuxd
93+
```
94+
95+
Start `avahi-daemon` for small-scale mDNS
96+
```bash
97+
sudo avahi-daemon
98+
```
99+
100+
Start `usbfluxd` in the foreground
101+
```bash
102+
sudo usbfluxd -f -n
103+
```
104+
105+
Expose `/var/run/usbmuxd` on port `5000`
106+
```bash
107+
sudo socat tcp-listen:5000,fork unix-connect:/var/run/usbmuxd
108+
```
109+
110+
Choose any IP address from `ip addr` as the source.
111+
112+
### Connect to a host running usbfluxd
113+
114+
From the remote host (catch the remote usbfluxd and make it appear local).
115+
116+
```zsh
117+
# on the destination
118+
export PATH=/usr/local/sbin:${PATH}
119+
sudo usbfluxd -f -r 10.0.0.2:5000
120+
```

0 commit comments

Comments
 (0)