「127.0.1.1:+xxxxx」を指すシンボリックリンクでは、プラス記号は何のためですか?


52

私のLinuxファイルシステムでは、シンボリックリンクがを指し127.0.1.1:+xxxxxます。

プラス記号が必要な理由 マイナスもありますか?どうして127.0.1.1:xxxxx


このシンボリックリンクは/ procの下にありますか?
ジョシュア

4
@Joshua:おそらく〜/ .mozilla /または同様のものの下。Firefox / Thunderbird、およびiirc Steamは、このようなシンボリックリンクをロックに使用します。
-grawity

2
xxxxxは数字ですか、文字xxxxxですか?
Mawg

2
おそらく無関係ですが、情報のためだけです。一部のIRCクライアントでは、リモートサーバーがSSL / TLSを使用することを示すために、ポートが存在する前にプラス記号が付けられていました。
eKKiM

回答:


93

ファイルを指し示していないシンボリックリンクには、一般的な意味はまったくありません。この場合、可能性があり、プロセスID、またはその上に話され、いくつかの特別なプロトコル、または他の識別子とポートです。それはすべて、どのプログラムがそれを作成したかに依存します。

これらのリンクを作成するソフトウェアは、1)シンボリックリンクのターゲットが存在しないか、まったくナンセンスでさえあるという事実を単に利用します。2)シンボリックリンクの作成は、少なくとも3つの個別のシステムコールを必要とする通常のファイルの作成とは異なり、単一のsyscallの完全にアトミックな操作です(ターゲットを読み取ります)。

したがって、他のメカニズムが信頼できない場合でも、シンボリックリンクの作成はロック(プログラムの単一インスタンスを保証する)の方法として悪用される可能性があります。プログラムは、実際のファイルに実際に解決するためにシンボリックリンクを必要としません。リンクの作成が成功するか、すでに存在するために失敗するかだけを考慮します。


5
「*少なくとも3つの個別のシステムコールを必要とする通常のファイルの作成とは異なります。*」-明確にできますか?あなたが意味するかfopenfwritefclose
ニックハートリー

11
@NicHartley:システムコールはopen(またはcreat古いソフトウェアの場合があります)、、writeおよびcloseであり、stdioが提供するf *バージョンではありません。しかし、はい、あなたは、少なくとも実行する必要があるopenwriteファイルを作成し、そこに意味のある何かを置くために。これで、コードを「作成してみて、成功した場合、何らかの情報を入力し、そうでなければ、そこから情報を読み取ろう」とする場合、2番目のプロセスはread、最初のプロセスがチャンスを得る前に試すことができwriteます。symlinkそれを避けます。成功してリンクを作成するか、失敗して確実readlinkに情報を入手してください。
Guntram Blohmは、Monicaを

「... 方法として悪用される可能性があります...」この悪用は、「使用されること意図されていない方法で使用される」または「使用されるべきはない方法で使用される」のですか?
帽子の男

22

私の知る限り、「+」はIPの後ろの数字(「xxxxx」)が「プロセスID」を指すことを意味します(通常[IP-address]:[portnumber]という表記を使用するポートではありません)。

特定のアプリケーションで使用されている場合、この「表記法」(「公式」のドキュメントを知らないので「表記法」と呼ぶかどうかはわかりません)が他の何かを参照している可能性があります。シンボリックリンクだけでなく可能性。私が知っている唯一のケース(そしてあまり広すぎない検索で見つけることができる)は、「+ XXXX」は常にプロセスIDを参照していました。


1
確認しました。私の場合、本当にそうです。
myMethod

1
リンクできるこの形式のドキュメントはどこかにありますか?
デビッドZ

1
よくわかりませんが、実際に体験したことを覚えています。
アルビン

2
/procまたはのような特別なディレクトリにあるシンボリックリンクについて話しているようです/dev。このシンボリックリンクの用途を説明できますか?
バーマー

4
この表記法を見たのはこれが初めてなので、これが一般的な表記法であると言うのを聞いて驚いた。プロセスIDを意味するのはどこで見ましたか?
バーマー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.