LoginSignup
66
12

More than 3 years have passed since last update.

sudoの「大いなる力」の元ネタを探して

Last updated at Posted at 2019-12-03

「大いなる力には大いなる責任が伴うこと」の由来は?

君はsudoコマンドのlectureを見たことがあるか?

UNIX系OSという世界の中で、あらゆることが可能なrootユーザーのように振舞える魔法のことば、
sudo

これを唱えたとき、MPが足りない 権限が足りなかったりすると
以下のような警告が表示されます。

あなたはシステム管理者から通常の講習を受けたはずです。
これは通常、以下の3点に要約されます:

    #1) 他人のプライバシーを尊重すること。
    #2) タイプする前に考えること。
    #3) 大いなる力には大いなる責任が伴うこと。

[sudo] [貴方のユーザ名] のパスワード:

大いなる力...

1も2も、まぁ、わかります。
プライバシーは大事だし、
本当にsudoで実行して良いコマンドなのか、一呼吸おいて考えることが出来ます。

気になったのは、3です。(アメコミ好きなそこの貴方、気になりますよね)

「大いなる力には大いなる責任が伴うこと。」

そう、スパイダーマンにも出てくる言葉です。

英語だと、
「With great power comes great responsibility.」
リピートアフターミー。

初出は、Amazing Fantasy #15 (August 1962)のキャプションから、
ということなので、1962年からあるんですね。
※wikipedia調べ(以下、特に記載ない情報はwikipediaによります)
※ちなみに筆者は原作を知りません。ごめんなさい。

sudoとスパイダーマンどっちが早かった?

では、Linuxのsudoの警告とスパイダーマン、どっちが早いでしょうか?

sudoの歴史は、下記のsudoのプロジェクトサイトに記載があります。

https://www.sudo.ws/sudo/history.html
A Brief History of Sudo
Sudo was first conceived and implemented by Bob Coggeshall and Cliff Spencer around 1980 at the Department of Computer Science at SUNY/Buffalo.

ふむ、作られたのは1980年のようですね。

当初から「大いなる力には...」と実装していたわけではないと思いますが、

スパイダーマン(1962年) < sudo(1980年)

この時点で、スパイダーマンが元ネタだろう、という推測が成立しました。

sudoにこのセリフが導入されたタイミングや「本当にネタ元なのか?」を調べるならば、
おそらく上記のsudoプロジェクトのコミットログやメーリングリストの履歴を読み込むのがベストでしょう。

が、追っていると年越してしまいそうなので、やめておきます。
(筆者が検索した限りでは、特定できませんでした。ダンジョンに繰り出す勇者を待ちます)

スパイダーマンのこのセリフの由来は、少しネットの世界を検索してみると、
フランス語のノブレス・オブリージュ「高貴さは(義務を)強制する」や
聖書に原典を求める説もあるようです。

原典に当たることの大切さ

rootユーザーは、絶大な権限を持ちますので、
パスワードを入力させるというステップを設けることで、ユーザーに自覚を持たせ、
一時的にその権限を付与する、というsudoの設計思想には普遍性を感じられ、感服いたします。

今回、ひょんなことから、sudoのプロジェクトのWebサイトまでたどり着きました。
コマンドのヘルプにはいつもお世話になっておりますが、
各プロジェクトの原典となるサイトを訪れることは、なかなかやりません。

実際、筆者もsudoの設計思想を考えたことが無く、良い機会になりました。

この記事を読んでくださった皆様も、ぜひ普段お使いのコマンドやツールの作者の意図や意志、
その歴史を、原典まで遡って、追いかけてみてはいかがでしょうか。

66
12
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
66
12