数カ月前から、ファイルサーバのシステムディスクが
よくわかんないSMARTエラー吐いてたんですが
実害もなかったので放置していたわけです
で、先週になってどうも動作が怪しくなってきまして
(IOエラーでカーネルがハングしてるっぽい)
せっかくなのでリリース直後のfedora17を入れてみることにしました
--
64bit版のDVD.isoを焼いていざブートしてみると何かおかしい…
言語、キーボードレイアウトを選択したところで
ダイアログが文字化けして先に進めません
で、なんか違和感あるなと思ったら
いつものグラフィカルなインストーラじゃなくてテキストモードになってました
どうやらPCI接続のグラボCB-RAGEXL/8M/PCIたんの力不足の模様
PCI-Eスロット消費しないでいいから重宝してたんだけどなあ
仕方ないのでvnc繋いでインストールしました
--
インストール後、いつものようにNetworkManager切ったら
再起動後にNICが立ち上がってこない現象発生
OS起動後にservice network restartすると何事も無く起動するので
/etc/sysconfig/network-scripts/ifcfg-pxpx
は問題無いはずなんですが、一応設定をあれこれ弄ってみるも改善せず
仕方ないのでNetworkManagerを起動したまま運用しようとしたところ
今度はsmbやnmbが起動に失敗する始末
ログを見てみると前提のnetworkがコケてる…
数時間ハマって結局原因わからなかったので
もう諦めてfedora16に戻そうと思いはじめた頃、
最後にもう一度何気なくNetworkManagerを切ってみたら
今度はnetworkもsmbもnmbも何事もなかったかのように起動しました
なんなんだよもう!!
いろいろ試したので結局何がいけなかったのかわからず終いですが
もしかしたらNetworkManagerの設定はsystemctlで
networkの設定はservice/chkconfigと明確に使い分けないといけないのかもしれないです…
よく覚えてませんがごちゃ混ぜで使ってた気がします
--
ntpの設定しようと思ったらntpdが入っていませんでした
どうやらいつの間にか標準のntpサービスがchronyというのに変わった模様
一度設定してしまったらあとはほとんど弄ることもないですし、
設定ファイルも似たような感じなので割りとどうでもよかったです
--
仮想マシンセットアップ(というか引越し)しようとしたらlibvirtが止まってました
手動起動するとこんなエラーで起動できません
Failed to issue method call: Unit libvirt.service failed to load: No such file or directory. See system logs and 'systemctl status libvirt.service' for details.システムログとか書いてあるので/var/log/messagesを見ますが何も出てません
よく探してみたら/var/log/libvirt/libxl/libxl.logに出てました
libxl: error: libxl.c:56:libxl_ctx_init Is xenstore daemon running?
failed to stat /var/run/xenstored.pid: そのようなファイルやディレクトリはありませんうーん、xenstored…?
KVM/qemuな環境なんですがxenの何かが要るのかな?
さらによくわからないのが
libvirt起動してないのにvirshコマンドが使えちゃうし
ぶっちゃけ仮想マシン動いちゃってるんですよね
libvirtってvirshコマンド実行するのに必要な物だと思ってたんですが違うのかなあ
正直仮想化はよくわからない部分が多いので
何をどうしていいかサッパリです
とりあえず動いているからいいか……非常にキモチワルイけど
2012/06/14 追記libvirtdは、なんだかよくわからないうちに正常起動するようになってました…
その間、特にlibvirtd周りは弄ってなかったんだけどなあ
別件でsystemctl --system daemon-reloadしたくらいだけど
本体再起動も数回してるはずですし、うーん…
また実機をシャットダウンする際に、仮想マシンが強制終了されてしまっていたので
調べてみたらlibvirt-guestsが落ちてるせいで
仮想マシン側にシャットダウンシグナルが送られていないようでした
libvirt-guestsは一応systemd管理下にあるんですが
実体はrc.dのinitスクリプトなので、
普通に実行しただけだとすぐ処理が終わってしまって
サービスとしてactiveだと認識されないみたいです
[Unit]
Description=Suspend Active Libvirt Guests
After=syslog.target network.target
[Service]
EnvironmentFile=-/etc/sysconfig/libvirt-guests
# Hack just call traditional service until we factor
# out the code
ExecStart=/etc/init.d/libvirt-guests start
ExecStop=/etc/init.d/libvirt-guests stop
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
このようにRemainAfterExitを指定してあげると、
こうした常時listenしないようなスクリプトも
処理終了後も引き続きサービスとして動作させられるようになります
ここ数日systemd.*のman読みまくってようやく慣れてきた感じです…