VMwareToolsのインストール
別件でちょっと、VMware上にCentOSの4(最新だと4.5か)を作りました。で、その時のVMwareToolsのインストールメモ。というか。
まぁいいや。
参考リンク:
- http://wiki.centos.org/TipsAndTricks/YumAndRPM
- http://wiki.centos.org/HowTos/I_need_the_Kernel_Source
まず、yumで rpm-build というパッケージをインストールする必要があるようです。
$ rpm -qa | grep rpm ... rpm-build-4.3.3-22_nonptl ...
入ってましたので次に行きます。えっと、どうもRPMをビルドするのはどこかローカルでやりましょう、というらしいです。通常は /usr/src/redhat (TurboLinuxだったら/var/src/rpmだな。) の下に、{RPM|SRPM|SPECS|BUILD...}などのディレクトリがあって、そこでSRPMやらspecファイルやらソースやらRPMやらが配置されるのですが、どうも上のリンクを読むと推奨してないですね。
ですので、素直にドキュメントの指示に従います。今回はrootユーザーのホームの直下に、"rpmworks"というディレクトリを切ってその中に入れちゃいました。
# mkdir -p /root/rpmworks/{SRPMS,RPMS,SPECS,BUILD,SOURCES} # echo "%_topdir /root/rpmworks" >> .rpmmacros # echo "%packager root <root@localhost>" >> .rpmmacros # cat .rpmmacros %_topdir /root/rpmworks %packager root <root@localhost>
こんな感じですか。
で、今使っているカーネルのバージョンを確認しておきましょう。
# uname -a Linux yggdrasil00 2.6.9-55.0.9.ELsmp #1 SMP Thu Sep 27 18:27:41 EDT 2007 i686 i686 i386 GNU/Linux
2.6.9-55.0.9ですね。では、前掲のリンクの、下の方のURLを見てみると、CentOS4の場合はソースをここから取れますよ、というのがありました。「Current OS/SRPMS」と「Current Updates/SRPMS」の二つがメインにありますが、今回は既にup2dateでkernelをバージョンアップしていますので、対応するのはUpdatesの方にありました。
kernel-2.6.9-55.0.9.EL.src.rpm
これを適当にDLして、あとはドキュメントの指示通りにします。
rpm -Uvh kernel-2.6.9-55.0.9.EL.src.rpm cd /root/rpmworks/SPECS rpmbuild -bp --target i586 kernel-2.6.spec
ディレクトリやターゲットのアーキテクチャは若干修正しています。で、これをするとソースの展開およびパッチの適用までをこなしてくれます。
/root/rpmworks/BUILD/kernel-2.6.9/linux-2.6.9
この下に、kernelのソースが展開された形になります。
さて、ではVMwareToolsをインストールしてみます。VMwareのメニューから例によりVMware-Toolsのインストールを選び、cdromをマウントします。で、tar.gzの方をrootのホームディレクトリに展開。vmware-install.plを実行します。途中、vmware-config-tools.pl をついでに実行するか?聞かれてきますが、さくっとnoにしておきます。
で、終わったとに別途vmware-config-tools.plを起動します。
で、いつも(TurboLinux)だったらここで「kernelのincludeヘッダーはどこじゃ(#゚Д゚)ゴルァ!!」と怒られたりするわけですが・・・。何か、何事もなくさくっと終わってしまったようなんですけど。
何だったんだ、TurboLinuxでのあの混沌は。orz.
ええっと・・・はい。これでお仕舞いです。何だったんでしょう。まぁ、何事もないに越したことは無いのですが。
・・・ひょっとして、kernel-develさえ入っていればよかったのかしら?確かにこのパッケージは最初から入ってたのだけれど。
でもコンパイルした感じすらしない・・・最初から対応したモジュールが添付されてたのかな?
まぁよい。ごたごたを省けたのでいいや。で、例によりXが起動しなくなったけど、とっくにinittab書き換えてSysVのRunlevelを3にしてコンソールでブートするように調整していたので問題なし。っつーかXうぜぇ。どうせ開発用のサーバなんだから。
というわけで何事もなく終了。