[JM:00605] Re: [POST:DP] sudo sudoers.5 (その二)

Back to archive index

長南洋一 cyoic****@maple*****
2012年 4月 15日 (日) 22:45:30 JST


長南です。

ご意見ありがとうございます。

一人で考えていると、自分の思い込みからなかなか抜けられないもの
ですから、別の見方を示してくださる他の方の御意見は、いつだって
歓迎です。

とりあえず、問題の原文と訳文 (変更後のもの) を出しておきます。

    rbtree    redblack tree internals
 
    rbtree    レッドブラック・ツリーの内部情報
 
小笠原さんのメールより [JM:00603]
> 
> 根拠薄弱ですみませんが、Linux の文脈で赤黒木というと、
> カーネルがタスク管理に使ってる奴なんじゃないかと。
> 説明としてはこれでしょうか。
> 
> http://news.mynavi.jp/articles/2008/07/10/lfjs/index.html
> 
> ので、これは:
> 
> 「赤黒木が内部で用いるもの」
> 
> なんじゃないかな、と。

最初に、internals を言葉の面から考えてみます。

たしかに、"an internal airport telephon" は「空港の内線電話」、つまり
「内部で使う電話」だそうですから、internals を「内部で用いるもの」と
考えることもできるのかもしれません。

しかし、internals という複数名詞は、研究社リーダーズ辞典によれば、

  n. [pl] <<事物の>>本質, 実質; [pl] 内臓, はらわた; 
     [euph.] 膣[子宮]検査

だそうです。

つまり、普通は、「内部にあるもの(全体)、内部そのもの、物の内部状態、
物に内在する本質」などを言うのではないでしょうか(「内幕」なんて訳も、
場合によっては可能かもしれません)。

# ただし、外線と内線のように、はっきり内外で対立するものがある場合は、
# the internals で「内線電話」を指す、といった使い方ができるかも
# しれません (本当にそういう使い方があるかどうか、知りませんけれど)。

次には文脈から考えてみます。sudoers.5 は「デバッグ・フラグ」セクション
の冒頭で、こう説明しています。

  Versions 1.8.4 and higher of the sudoers plugin supports a debugging
  framework that can help track down what the plugin is doing internally
  if there is a problem. 

わたしの訳も挙げておくと、

  バージョン 1.8.4 以上の sudoers プラグインは、デバッグのための枠組みに
  対応しており、問題が発生したときに、プラグインの内部で何が起きているか
  を突き止めるために、これを利用することができる。

ですから、"redblack tree internals" というのは、sudoers plugin が
redblack tree による探索をしている最中に、どういうことが起きているかの
情報、ということではないでしょうか。

最後に、sudo-1.8.4 を実際に動かして、どうなるか試してみます。
sudo-1.8.4 を make したディレクトリから、./sudo -s などを実行する
という安直なやり方ですから、あまり信用できないかもしれません。

/etc/sudo.conf にこう書いておきます。

  Debug sudo /var/log/sudo_debug rbtree @ debug

これで ./sudo -s を実行すると、/var/log/sudo_debug に次のような
メッセージが記録されました。長いのではじめの 10 行だけ引用します。
ほとんど全部、こんな感じです。

  Apr 15 17:12:58 sudo -> rbfind @ ./redblack.c:273
  Apr 15 17:12:58 sudo <- rbfind @ ./redblack.c:280 := (nil)
  Apr 15 17:12:58 sudo -> rbinsert @ ./redblack.c:181
  Apr 15 17:12:58 sudo <- rbinsert @ ./redblack.c:261 := (nil)
  Apr 15 17:12:58 sudo -> rbfind @ ./redblack.c:273
  Apr 15 17:12:58 sudo <- rbfind @ ./redblack.c:277 := 0x176bd60
  Apr 15 17:12:58 sudo -> rbcreate @ ./redblack.c:94
  Apr 15 17:12:58 sudo <- rbcreate @ ./redblack.c:115 := 0x176c4b0
  Apr 15 17:12:58 sudo -> rbfind @ ./redblack.c:273
  Apr 15 17:12:58 sudo <- rbfind @ ./redblack.c:280 := (nil)

redblack tree 関係の関数で何が起きているか、ということの情報
みたいですね。違うかもしれませんが。

とすると、"redblack tree internals" は、やっぱり「レッドブラック・
ツリーの内部情報」ぐらいでよいのではないでしょうか。「内部状態」
というのも考えましたけれど。

# この方法で、わたしが [JM:00581] に書いた、"sudo main function" や
# "utility functions" の function(s) が関数か機能かも、調べられる
# かもしれません。でも、そのことは、別のメールで。

-- 
長南洋一




linuxjm-discuss メーリングリストの案内
Back to archive index