プログラマのつれづれなるままにプログラマのつれづれなるままに音宮志久が思ったことなどをネタにします。プログラムネタ・数学ネタがメインです。Fedora14=>Fedora15のインストールは(新規でも)やっかいFedora14=>Fedora15のインストールは(新規でも)やっかいコメントを残すいつもの通り、Fedoraのバージョンが上がってから二週間前後たったので自鯖のアップグレードを行うことに決め、その作業をやっていたのですが・・・。いままでのFedoraの更新とは訳が違うほどやっかいでした。Fedora15を新規インストールする人でも変わった点がかなりあるので注意してインストールが必要です。ちなみに、その後の最新状態への更新でもいろいろと引っかかる項目があるのでそれも気にしながら・・。更新インストールそのものは今まで通りです。インストール用のISOイメージをダウンロードした後にDVDに焼いてアップグレードインストールを行うだけです。この作業は新規インストールでも同じはずですのでそれほど難しくないのですが・・・。デスクトップがMacっぽい?Fedora15ではデスクトップがGNOME3に更新されていますが、これが妙にMacを意識したとしか思えない画面です。設定画面が完璧にMacでした。ま、Fedora15をクライアントとして使うわけではないのであまり気にはしませんが。クライアントOSとして使う分にはMacを使うみたいな感じなのでその分にはいいのかもしれませんが・・・。ネットワークアダプタなどの名前付け規則が変更されているのといっても、私の環境でアップグレードしたときには変更されませんでしたが・・・。ネットワークアダプタの名前が今までの「eth0」などから、アダプタ固有の識別名+管理番号の形に変わっています。アダプタ名を直接指定して動かすようなdaemon(iptablesなど)ではこれを覚えておく必要があります。Daemon系の管理が変わっているので要注意これが今回のFedora14=>Fedora15における最大の問題点かも。daemon(というよりはサービス)の管理がFedora14まではSysVという形式で動いていたわけですが、これが今回新しくsystemdという形式を使うようにしたわけです。利点とかは調べればわかると思いますので省きますが、これによって旧のサービスは相変わらず/etc/rc.d/以下で管理されるわけですが、systemdに対応したサービスは/etc/systemd/以下と/lib/systemd/以下に管理ファイルが置かれることになります。追加すると、SysV系からの脱却のためにランレベルの管理もかなり変更されています。inittabが不要ファイルとなり、ランレベルの管理もちょっと特殊な管理になるように変更されています。Fedora15のインストール時点では起動時ランレベルは一応5(Graphic)となっていますが、これを3(Multi-User)に変更するにはこんな方法を使います。/etc/systemd/system/default.targetちなみに、このdefault.targetがないと・・・どうなるのでしょうか?実験したくないので間違えないようにしましょうね。動作中の切り替えであればinitコマンドが使用できますのでそれで変更可能です。ちなみに、ランレベル2~4はsystemd上では同じ設定ファイルを指すようになっています。サービスの起動および起動予約のやり方がまた面倒。これを行うにはsystemctlというコマンドを使います。いままで(SysV系)のhttpdの起動/状態確認/停止/起動時実行は以下のようにしてきました。offこれがsystemdでは以下のように記述します。httpd.serviceそれぞれのコマンドがすべてsystemctlコマンドに集結したような体制になっています。これからみてわかるとおり、systemdでのdaemon系の処理はsystemctlコマンドを通して行います。これがまだ移行段階のため、SysVのみで記述されたもの、systemdのみで記述されたもの、擬似的に両方に対応しているものが混在している状態です。systemdのみの場合はSysV形式の動作設定はできず、SysVのみの場合はsystemd形式の動作設定は基本的にはできません。httpdは最後の擬似的に両方に対応しているものなります。systemctlの起動時実行に関してはsystemctlがchkconfigを内部的に呼び出す仕様になっているため、その設定だけは共通で使えます。(止まらないこともありますが)面倒なのはサービス一覧を出したりするときですね。--listとやっても、systemd形式で記述されたdaemonは表示されないので両方確認しないとだめです。これ以降がんばって統一されていくんでしょうかね・・・。ちなみに、SysVでのサービス処理は内部的にはsystemctlの処理に置き換えられています。そのため表向きSysVが使える、ということですね。Panic最後にはまった現象がこれ。yumでFedora15のパッケージをすべて更新した後に起こった出来事。大量更新の後の再起動が私の流儀なのですが、再起動するとどうもマシンからの応答がない。Panic」の無情な文字が・・・。?という思いを秘めながらこのことについて調べてみたり、kernelのバージョンを戻してみたりして何とか復旧しましたが・・・。(原因は後で説明しますが)Fedora15でパッケージを使ってkernelを更新するとどうもこんな感じになるらしいです。–forceとするとかいろいろとありましたが。結局原因はkernelのパッケージにinitramfdがついていないために正しい起動シーケンスを行うことができなかったというものでした。何でついていないでしょ?という疑問はありますが、簡単な解決法は起動するためのkernelを過去バージョンに戻す、というものです。/mnt/sysimage/boot/grub/grub.confでインストールされたkernelを使う起動をコメントアウトでつぶして元のkernelを使うようにします。Fedora15の場合、初期カーネルに「rc1」の文字がついているのでわかりやすいと思います。それでkernelイメージを戻して起動できれば「とりあえず放置」か「kernelの再構築でinitramfdを作成できるようにする」かどちらかになるとおもいます。面倒なら前者でしばらくはどうにかできるはずです。initramfdを作成するときには先にも書いたとおりdracutコマンドを使うことで作成できます。再構築の手順を取らずにdracutで作成しようとすると、(私の場合)確かに起動するのですが、ネットワークアダプタが見つからないという致命的状態になったのでいろいろと大変でした・・・。今後kernelの更新時には(特に遠隔操作の場合)かなりの注意が必要だな~と思わせてくれる出来事でした。追記この段階でkernelをyum経由でupdateしましたが、問題なく更新できたことを確認しました。これがミスなのか何なのかがよくわかりませんが、この件は毎回確認しないとまずそうですね・・・。私の自鯖は動くようにはなったのでとりあえずよしとしておきます。インストール後の処理に本当に珍しく時間がかかりました。Fedora15での変更は大きかった、というわけですね。コメントをキャンセルメールアドレスが公開されることはありません。気になるプログラムネタや数学ネタがあったら書き込みたいのだが残業が長すぎて眠気が全くとれず体調があまりよくない。過労などでぶっ倒れるかもしれない。あと、さすがに独り身が寂しいのでなんとかしたいと考えてはいるのだが...。アクセスカウンタアクセス数:スポンサーリンクモバイルバージョンに。