Installing Mac OS X 10.5(a.k.a. Leopard)


随分と久しぶりの更新です。


Pre-orderしていたMac OS X 10.5が届きました。早速インストールしてみましたが、難儀しています。

今回のメジャーアップグレードではあまり深く考えずにアップデートインストールを選択しました。しかしながら、Mac OS X 10.5では多くの点において大幅に抜本的な改訂がなされているらしく、以前の環境を引き継いだ状況からクリーンな環境を構築するのは困難であると判断し、アーカイブインストールをし直しました。


アップデートインストールをした後に遭遇したはまりどころは以下になります。

  • configureが全く通らない。これは、アップデートインストールではXCode Toolsが自動的にアップデートされないためである。インストールDVDからXCode Toolsを明示的にインストールすれば解決する
  • Mac OS X 10.5がインストールする幾つかの設定ファイルが奇妙な名前でインストールされる。例えば、launchdに用いられるpostfixのプロパティリストは、以下のように格納される(残念ながら、以下の何れの設定が使用されるかは深く追っていない)。
+ System
  + Library
    + LaunchDaemons
      + org.postfix.master.plist                => Mac OS X 10.4.x使用時に用いていた設定(日付の変更なし)
      + org.postfix.master.plist.system_default => Mac OS X 10.5のアップデートインストーラによって格納された設定
  • システム寄りのユーザー名が奇妙。例えばapacheにて用いられるユーザー名は、psの出力を見るに、_wwwとなっている(クリーンインストール、もしくはアップデートインストールを経由せずにアーカイブインストールをした場合にどのようなユーザー名が用いられるかは不明。どなたか情報をお持ちの方がいらっしゃいましたら、コメントを頂けると幸いです)。プロパティリストを見るに、nameには配列が設定されており、_wwwおよびwwwが設定されている。

追記(2007/11/5)

クリーンインストールしても、システム寄りのユーザー名には_(アンダースコア)が付記されるようです。

_www.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dt
d">
<plist version="1.0">
<dict>
        <key>generateduid</key>
        <array>
                <string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
        </array>
        <key>gid</key>
        <array>
                <string>70</string>
        </array>
        <key>home</key>
        <array>
                <string>/Library/WebServer</string>
        </array>
        <key>name</key>
        <array>
                <string>_www</string>
                <string>www</string>
        </array>
        <key>passwd</key>
        <array>
                <string>*</string>
        </array>
        <key>realname</key>
        <array>
                <string>World Wide Web Server</string>
        </array>
        <key>shell</key>
        <array>
                <string>/usr/bin/false</string>
        </array>
        <key>uid</key>
        <array>
                <string>70</string>
        </array>
</dict>
</plist>
  • postfixがまともに起動しない。アップデートインストールが作成するpostfixの設定は、/etc/postfix/main.cf.system_defaultであるのに対し、launchdによって起動されるpostfixのプロセスがMac OS X 10.4.xから引き継がれた/etc/postfix/main.cfを参照しているのが要因(/var/log/system.logにて判断。このエントリの末尾に添付)。
main.cf(Mac OS X 10.4.xから引き継いだもの):
                           :
# The mail_owner parameter specifies the owner of the Postfix queue
mail_owner = postfix
                           :

main.cf.system_default(Mac OS X 10.5が作成したもの):
                           :
# The mail_owner parameter specifies the owner of the Postfix queue
mail_owner = _postfix
                           :

追記(2007/11/8)

postfixのmail_ownerおよび各種設定に関し、Ianさんが解決方法の一つを提示されていますので、是非参照されることをお勧めいたします*1


上述のような状況の中で、/var/log/system.logに以下の内容が書き込まれているのを見て、自力で調整するよりもアーカイブインストールをし直したほうが早いなと判断しました。

Oct 27 00:17:07 hostname postfix/master[338]: fatal: file /etc/postfix/main.cf: parameter mail_ow
ner: user postfix has same user ID as _postfix
Oct 27 00:17:08 hostname com.apple.launchd[1] (org.postfix.master[338]): Exited with exit code: 1
Oct 27 00:17:08 hostname com.apple.launchd[1] (org.postfix.master): Throttling respawn: Will star
t in 9 seconds


正直このエラーはちょっとないなと思います。

*1:I live in L.A. and write my blog in Japanese, and he seems to live in Japan and writes his blog in English. That makes me feel funny. Anyways, thanks for letting us know your thorough solution!