質問編集履歴
2
解決まとめ
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,6 +5,30 @@
|
|
5
5
|
|
6
6
|
http://iphonedevwiki.net/index.php/SSH_Over_USB
|
7
7
|
|
8
|
+
###結論
|
9
|
+
解決策1
|
10
|
+
対象プロセスについての設定ファイルがあればそれを編集する
|
11
|
+
自分の場合は以下のように目的プロセスの.plistを編集し、再起動を行った
|
12
|
+
~/Library/LaunchAgents/com.usbmux.iproxy.plist
|
13
|
+
にて記述した
|
14
|
+
|
15
|
+
<key>RunAtLoad</key>
|
16
|
+
<false/>
|
17
|
+
<key>KeepAlive</key>
|
18
|
+
<false/>
|
19
|
+
|
20
|
+
解決策2
|
21
|
+
対象のプロセスが親プロセスから起動されている場合
|
22
|
+
親プロセスをkill
|
23
|
+
|
24
|
+
手順1.目的のプロセスID(PID)と親プロセスのID(PPID)を確認する
|
25
|
+
$ ps axj |grep "プロセス名などで検索結果を絞る"
|
26
|
+
手順2.親プロセスをkill
|
27
|
+
$sudo kill -9 先ほど確認したPPID
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
8
32
|
###補足1
|
9
33
|
0. 1
|
10
34
|
|
@@ -65,7 +89,23 @@
|
|
65
89
|
実行引数から引数を受け取り、ソケットを確立しwhile(1)で無限ループさせていましたが
|
66
90
|
その中でコマンドを受け取り停止させるような記述はなかったのでiproxyに命令してプロセスを終了させることはできないと思います
|
67
91
|
|
92
|
+
###課題解決後の補足
|
93
|
+
0. 1
|
94
|
+
今回のプロセス.plistは(または共通して?)はOSのブート時に一度だけ読みこまれるようだ
|
68
95
|
|
96
|
+
そもそも、誰が読み込み、利用しているのか
|
97
|
+
それを調べるために以下のコマンドが役に立つかもしれない
|
98
|
+
*'com.usbmux.iproxy.plist'はプロセスの設定ファイルなので自分が対象としているプロセスのものと置き換える
|
99
|
+
```ここに言語を入力
|
100
|
+
$find / 2> /dev/null -type f | xargs -n 10 grep 2> /dev/null -n 'com.usbmux.iproxy.plist' --color
|
101
|
+
```
|
102
|
+
|
103
|
+
'com.usbmux.iproxy.plist'を利用して対象プロセスを起動しているファイルが見つかるかもしれない
|
104
|
+
|
105
|
+
ブート時に自動的に読み込んでいるアプリケーションはシステム環境設定から
|
106
|
+
確認や操作を行うことができるが
|
107
|
+
アプリではない自動的に読み込まれるファイルはどこで確認すればいいのやら。。
|
108
|
+
|
69
109
|
###発生している問題・エラーメッセージ
|
70
110
|
killしたプロセスがすぐにぺつのPIDで再開される
|
71
111
|
|
1
指摘事項を試行
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,6 +5,67 @@
|
|
5
5
|
|
6
6
|
http://iphonedevwiki.net/index.php/SSH_Over_USB
|
7
7
|
|
8
|
+
###補足1
|
9
|
+
0. 1
|
10
|
+
|
11
|
+
```ここに言語を入力
|
12
|
+
$ ps axj |grep 2222
|
13
|
+
USER PID PPID PGID SESS JOBC STAT TT TIME COMMAND
|
14
|
+
name 2539 1 2539 0 1 S ?? 0:00.00 /usr/local/bin/iproxy 2222 22
|
15
|
+
|
16
|
+
```
|
17
|
+
|
18
|
+
PID = PGID =2539 (iproxy)
|
19
|
+
PPID = 1 (root)
|
20
|
+
|
21
|
+
親プロセスはない(?)ようです
|
22
|
+
0. 2
|
23
|
+
```ここに言語を入力
|
24
|
+
$ syslog -B|grep iproxy
|
25
|
+
|
26
|
+
```
|
27
|
+
syslogコマンドやコンソールでiproxyについて調べましが
|
28
|
+
自らが行なったkillコマンドしか表示されませんでした
|
29
|
+
|
30
|
+
0. 3
|
31
|
+
|
32
|
+
~/Library/LaunchAgents/com.usbmux.iproxy.plist
|
33
|
+
にて記述した
|
34
|
+
<key>RunAtLoad</key>
|
35
|
+
<true/>
|
36
|
+
<key>KeepAlive</key>
|
37
|
+
<true/>
|
38
|
+
についてですが同様にpsコマンドで調べたところそのようなプロセスは存在しませんでした
|
39
|
+
|
40
|
+
iproxyコマンドがあるフォルダ/usr/local/bin/でも調べて見ましたが
|
41
|
+
そのようなコマンドは存在しませんでした
|
42
|
+
|
43
|
+
0. 4
|
44
|
+
|
45
|
+
当たり前ですが、/usr/local/bin/iproxyをゴミ箱に送り
|
46
|
+
killコマンドを実行すればプロセスは再開されることはありません
|
47
|
+
しかし、ゴミ箱からiproxyを戻すと数秒後にはプロセスが再開されています
|
48
|
+
|
49
|
+
0. 5
|
50
|
+
|
51
|
+
どのファイルから使用されているかを追うことを試みましたが..よくわかりませんでした
|
52
|
+
|
53
|
+
|
54
|
+
```ここに言語を
|
55
|
+
|
56
|
+
$ lsof /usr/local/bin/iproxy
|
57
|
+
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
|
58
|
+
iproxy 2944 name txt REG 1,4 19076 3809280 /usr/local/bin/../Cellar/usbmuxd/1.0.10_1/bin/iproxy
|
59
|
+
```
|
60
|
+
|
61
|
+
0. 6
|
62
|
+
|
63
|
+
username/usbmuxd-1.0.8/tools/iproxy.c
|
64
|
+
の中身を確認しましたが
|
65
|
+
実行引数から引数を受け取り、ソケットを確立しwhile(1)で無限ループさせていましたが
|
66
|
+
その中でコマンドを受け取り停止させるような記述はなかったのでiproxyに命令してプロセスを終了させることはできないと思います
|
67
|
+
|
68
|
+
|
8
69
|
###発生している問題・エラーメッセージ
|
9
70
|
killしたプロセスがすぐにぺつのPIDで再開される
|
10
71
|
|
@@ -13,7 +74,7 @@
|
|
13
74
|
```
|
14
75
|
$ brew install opam
|
15
76
|
$ opam install usbmux
|
16
|
-
#usbmuxから得た
|
77
|
+
#usbmuxから得たiproxyを使用しポート2222を確保
|
17
78
|
$ iproxy 2222 22
|
18
79
|
```
|
19
80
|
port2222を解放したい
|