パッチ当て

最近Solaris10ばっかです。。。


以前のSolarisなら、推奨パッチクラスターをダウンロードして、シングルユーザモードで適用という流れだったのですが、Solaris9の中盤あたりからパッチクラスターがダウンロードできなくなって、smpatchかSun Update Managerで管理するようになりました。

で、折角なのでパッチの適用方法をさらっとまとめておこうと。



まず、アカウントを作成します。

Solaris10をインストールしてGUIでログインするとユーザー登録の画面が表示されるので、そこで登録するか、CLIで操作する場合はSMCに接続してアカウントを作成します。
しばらく待っているとメールが来ます。


SMCでアカウントを作成した場合は、Solarisにユーザ情報を登録します。
# cd /tmp
# cp /usr/lib/breg/data/RegistrationProfile.properties .
# vi RegistrationProfile.properties
触るのは以下。
userName=ユーザ名を入力する
password=パスワードを入力する
subscriptionKey=サービスプランの契約がある場合はその情報を、無い場合は空白のままで
インターネットに接続するのにプロキシを経由する場合は以下も入力
proxyHostName=プロキシのホスト名かIPアドレス
proxyPort=プロキシのポート番号
proxyUserName=プロキシのユーザ名
proxyPassword=プロキシのパスワード
そして登録します。
# sconadm register -a -r RegistrationProfile.properties

これで準備OK。パッチを当てれるようになった訳ですが、
GUIが使える場合は[起動]-[アプリケーション]-[ユーティリティ]-[Update Manager]を起動するとGUIでパッチが当てられます。CLIの場合はsmpatchを使います。

# smpatch update
でダウンロードからパッチの適用までやってくれる訳ですが、シングルユーザモードじゃないと適用できないパッチ等もあるし、パッチの依存関係による適用順序の話もあるので全自動ではないです。
シングルユーザモードじゃないと適用できないパッチに関しては、再起動時に適用されるので
# init 6
で、適用されます。
適用順序の話は複数回smpatchを実行することで、適用されます。

が、何回繰り返しても適用されないパッチもあります。
その場合は手動で当てる事になります。