コンテンツにスキップ

Charlie Root (オペレーティングシステム)

出典: フリー百科事典『ウィキペディア(Wikipedia)』

Charlie Rootは、BSD系オペレーティングシステム管理者ユーザ(→スーパーユーザー)の初期設定値である。

基本仕様

[編集]

Unix系オペレーティングシステム (OS) の管理者権限を持つユーザはrootである。これは、管理者ユーザがroot(最上層)ディレクトリをユーザディレクトリとするためである。 Unix系のログイン情報を記録するpasswdファイルの仕様として、ユーザID、パスワードの他にGECOS Fieldが存在する。本フィールド[1]は、歴史的にGECOSシステムを制御するための制御情報等を含むものであったが、以後、フルネームや電話番号等、人間が読む(fingerで取得する)情報を記入するために使われている。→GECOS。GECOS Fieldの仕様として、"&"(アンパサンド)はユーザIDを反映する。

実装

[編集]

BSD系OSの管理者ユーザは、初期状態でGECOS FieldはCharlie &であるため、'&'(アンパサンド)が管理者IDである"root"に置換され、自動的に管理者ユーザはCharlie Rootとなる。 FreeBSDおよびNetBSDの最古(各バージョン1.0)のコードは取得可能であり、CVS repositoryから内容を確認することができる。[2][3] [4] FreeBSD, NetBSDともに386BSDpatchkitからの派生物(OpenBSDはNetBSDからの派生)であるため、同一のファイルがインポートされている(以下に抜粋)。

root::0:10::0:0:Charlie &:/root:/bin/csh

dmr:*:10:31::0:0:Dennis Ritchie:/usr/guest/dmr:
ken:*:11:31::0:0:& Thompson:/usr/guest/ken:
bill::12:10::0:0:& Jolitz:/usr/bill:/bin/csh
lynne::14:10::0:0:& Jolitz:/usr/lynne:/bin/csh

管理者ユーザのGECOS Fieldは"Charlie &"であり、各UIDのGECOS Fieldにデニス・リッチーケン・トンプソンビル・ジョリッツリン・ジョリッツのユーザ名が、全て「名」・「姓」の形式で記入されていることが確認できる。つまり管理者ユーザのRoot苗字として扱われていることがわかる。

疑問

[編集]

いつから管理者は"Charlie Root" なのか

[編集]

386BSD Patchkit以前ということになるが、4.2BSDも同一である[5]

"Charlie Root" とは誰?

[編集]

米国メジャーリーグの野球投手Charlie Rootがいる。選手登録された1926年 から1941年の間に勝利数201勝を上げており、優秀な成績を残している。しかし、BSDが開発されている1990年代から見て約50年前に引退した選手である上、彼が在籍していたのはシカゴ・カブスであり、所在地は中西部イリノイ州のチームである。一方、BSDが開発されているカリフォルニア大学バークレー校の所在地は、西部カリフォルニア州であり、ビル・ジョリッツがよほどのカブス狂いであったとは考えにくい。

FreeBSDの/usr/bin/calendar/calendars/calendar.freebsd にはCharlie Rootという人物の誕生日(1993年6月19日)が記入されているが[6]、これはFreeBSDの名称が提案された日[7]であり、calendar.freebsd rev=1.36[8]ではFreeBSDプロジェクト開始日として登録されたものの名称を、rev=1.39で変更したものであるため、人物としてのCharlie Rootと直接の関係はない。

なぜ姓なのか?

[編集]

GECOS Fieldに&が記入された時点で、そこには姓・名を入れるルールがあったためにCharlieが追加されたもの思われるが、姓ではなく名でも良かったはずである。もっとも、前述のCharlie Rootをはじめ、Rootを姓に持つ人は存在するが、名に持つ人は少ないためかもしれない。米国国勢調査の結果(1990年度)では、[9]Root姓は1834位(参考:1位はSmith姓)であるが、Rootを名とする人はいない。

BSD系OSでは、一般ユーザが/bin/shを使う一方で、管理者ユーザは/bin/cshを使うよう初期設定されている。「cshを利用する人たち」という意味合いで、cshの1文字目CフォネティックコードであるCharlieを割り当てたという可能性がある。そこに冗談をからめて「Root一族」という扱いにしたものかもしれない。

まとめ

[編集]

なぜBSD系OSの管理者IDがCharlie Rootであるのかは、BSDの歴史上最大の謎の一つであり、未解決の問題となっている。調査の結果、野球選手Charlie Root説、フォネティックコード説の2つが有力であると考えられるが、いずれも決定的な証拠に欠けるため、正確な意味を把握するためには、今後の関係者の証言を待つ必要がある。

FreeBSD ProjectのSecurity Teamメンバーで、かつCommercial Gallery EditorであるRemko Lodderのコメント[10]によると、「知らないよ。Kirk(マーシャル・カーク・マキュージック)が知っているんじゃない?:-)」という回答であった。

脚注

[編集]

関連項目

[編集]