OpenVZ (CentOS5 udev まとめ)

OpenVZ上のCentOS5の毎回アップデートでudev関係でハマル件ですが、たぶん解決できたのでまとめ
<発生原因>
CentOS5.0リリース直後のcontribで公開されてたテンプレートイメージはudev関係の対応がしてないのでudevをアップデートするとコンソールにログインできなくなったり不具合が発生する。
<対処1 失敗>
/devの中身をバックアップしておいてudevアップデート後/dev/を差し替えてみた。
udevを起動しないようにしておいた。
OpenVZ(CentOS5)
<対処2 失敗>
CentOS5.2のアップデートの際にvzctl enter xxx でログインできなくなったので、udevからtty0とptmxを作成しないようにしてみた
OpenVZ (CentOS5 udev つづき)
<状況>
CentOS5.3にアップデートしたところrpmが使えなくなってしまった。

#yum update
Loaded plugins: fastestmirror
エラー: dbpath が設定されていません
エラー: /%{_dbpath} にある Package データベースをオープンできません。
Traceback (most recent call last):
File "/usr/bin/yum", line 29, in ?
yummain.user_main(sys.argv[1:], exit_code=True)
File "/usr/share/yum-cli/yummain.py", line 229, in user_main
errcode = main(args)
File "/usr/share/yum-cli/yummain.py", line 84, in main
base.getOptionsConfig(args)
File "/usr/share/yum-cli/cli.py", line 184, in getOptionsConfig
enabled_plugins=self.optparser._splitArg(opts.enableplugins))
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 191, in _getConfig
self._conf = config.readMainConfig(startupconf)
File "/usr/lib/python2.4/site-packages/yum/config.py", line 754, in readMainConfig
yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
File "/usr/lib/python2.4/site-packages/yum/config.py", line 824, in _getsysver
idx = ts.dbMatch('provides', distroverpkg)
TypeError: rpmdb open failed

<原因>
以前作らなくしたptmxがないとCentOS5.3の際にあがるrpm-4.4.2.3-9.el5が動かない模様。
<検証>
最近のリリースされているCentOS5.2のテンプレートだと問題ない。違いを調べると「/etc/udev/devices」なんてフォルダがあり、udev起動時にこの中身は/devにコピーされるらしい。
http://download.openvz.org/template/precreated/
<対処>
んじゃ、/etc/udev/devicesをもってこればいいべ!ってことで、最近のリリースされているテンプレートから「/etc/udev/devices」をtarでかためて動かないVEにもってきてVE再起動で復旧(^◇^)ノ イエィ(笑)
<考察>
ネットでしらべてもハマっている人が見つからず、初期のリリース(contrib)のものをつかってたからかもしらん。今のテンプレートだと問題なくアップデートできるし。
おしまい。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA