2012年05月17日

日食

遡ること3年前、
46年ぶりに皆既日食が見れると言う話で世間は盛り上がりました。

皆既日食の時は不吉な事が起きるとか、起きないとか、
システムが不具合起こすとか、起こさないとか、
サーバーが落ちるとか、落ちないとか、
蝋人形にしてやるとか、してやらないとか、
いろいろと噂になったものでした。


結果的にくもりだったので見れませんでしたが!


そんな中、5月21日に見れるという情報を街角で小耳にはさんでしまいました。

なので今年は見てみたい!見ておきたい!
そして、せっかく見るのであれば、かっこいい日食サングラスで見たい!

ということで、いろいろ探してみました。

まずこれ、
panda.JPG

かっこいいですね、かわいいですね。
これを付けた大人が早朝から上を見ていたら日本の未来も明るいと思います。


次にこれ、
img59366519.jpg

宇宙きました。
個人的に欲しいです、まわりの子供は日食そっちのけになると思います。


21日までになにかしら用意したいですが、果たして間に合うか・・・。


がんばろう!








img57838608.jpg

これやばいっす。
タグ:高橋@MC
posted by MCのひとたち at 17:52| Comment(0) | TrackBack(0) | 日記

2012年05月13日

PCのスペックアップ

…というわけで、いくつか会社のブログにあげようとしてた記事を
まとめてあげてみました
上げられそうなのをいくつか絞って

自分の方には上げてたんだけど、このブログ書き込むパスとか
忘れてて更新おくれたわけで

さて、
現在自分の家のマシンのスペックが厳しくなってきた。

sandaybridge i5 2500
4Gメモリ×2
7200rpm2T x 1
5000?rpm2T x 1
Radeon7200

これでなにがきびしいのかとか言われそうですが、

vm二台
winXP XPアプリゲーム用
fedora 64bit 動画変換用
ホスト
win7 録画用とゲーム用

動画変換なんてwinでやればいいだろって話もありますが
h264 aac 1280x720 をwinでやるとかなり遅い
そのために変換はやいしカスタムビルドでfaac簡単につかえる
fedoraから無理矢理マウントしてテレビ録画したのを変換してるわけ


しかしi5なので4コアなので
ホスト2コア
vm1コアづつ
とかするとかなりきつい

linuxのコア減らすと変換遅くなるし
ゲストのxpのコア減らすとアプリ動かないし
ホスト減らすと全体的に遅くなる

メモリに関しても然り
おなじ現象が発生

というわけで、
コアを増やす i7 2700k
メモリも増やす 16Gに

こんな構成、誰が使うんだ?
と思ってたけど、仮想化させまくるとこうなるのか
というのがよくわかった


というのも、この二週位前までは、録画用linuxサーバが一台いた
しかしこいつがハードディスククラッシャーになり、二台やられた
まあ理由は色々あるかもしれないけど、そろそろlinux調べながらやるのも
つらくなってきたので、あきらめて今みたいな構成になった

またデスクトップもゲーム用にグラボさしてるけど、
デスクトップがサーバにしかなりかねないようなとこにしか置けないので
ノートが理想。
ところがノートもモバイルceleronの10年弱前のモデルなので
ゲームは無理、centOS入れてる状態

もう少しいいのがほしいとこなのだ、けど
自分無駄にロースペックが好きなのもあるのか
あえて変えてない
というわけでゲームもデスクトップにしかいれられない

というわけでこんなスペックになった
石くるのがすこし楽しみ

…スマホから投稿したので素っ気ない文になってしまった
このスペックアップの結果はもう少しきれいに書きたい
タグ:柳下@mc
posted by MCのひとたち at 19:57| Comment(0) | TrackBack(0) | 日記

vmware 4.0.2 on fedora 16 (kernel 3.x)

XP のライセンスが余っているので、
自分の家のfedora 16 64bitの上のvmplayerに載っけてる。
本当はvmware serverとかに載せたかったけどそもそももう
メンテ切れらしくて、linuxにはのらない

playerをいれたときにだいぶ苦しんだので一応メモ

Fedora 16の kernelは 3.2.6 に上がってた。
VMPlayer 4.0.2を導入しようとしたところ、

普通にGnome のデスクトップでアイコンクリックしたらすぐ消える。
しゃあないので、
# vmware-modconfig
を手動でやると、 gtkのエラーがでまくる。

リモートsshで vmware-modconfig 打ってみたら(無理だろうとおもったが)
なぜかうまくうごくっぽいので、
# vmware-modconfig --console --install-all
(↑リモートでvmxxx.tarをコンパイルできるとは知らなかったが)
でやってみたら、

CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
/tmp/vmware-root/modules/vmmon-only/linux/driver.c:40: fatal error: linux/smp_lock.h: No such file or directory
compilation terminated.

smp_lock.h というのは2.6.xxまでだったらしいので、
該当箇所をIFDEFでコメントアウトしてもうまくいかず。
(別のところでコンパイルエラー)

そういえば前もvmware 3.0くらいのときに悩んだとき
vmxxx.tarのパッチがあったなぁと思ってた所、

http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linux-kernel-3-2-and-3-3/

やっぱりパッチを作ってくれてた人がいた。

vmware802fixlinux320.tar.gz
このパッチをありがたくいただくことにした。

# patch-modules_3.2.0.sh

(中略)

Built vsock module
Starting vmware (via systemctl): Job failed. See system logs and 'systemctl status' for details.
[失敗]
Unable to start services

あれ?コンパイルまでは通るのに起動で失敗する。
もっかい /etc/init.d/vmware うっても同じ。

/var/log/messageを見ると、

Feb 19 21:29:59 shun vmware[14619]: Starting VMware services:
Feb 19 21:29:59 shun vmware[14619]: Virtual machine monitor[失敗]
Feb 19 21:29:59 shun vmware[14619]: Virtual machine communication interface[ OK ]
Feb 19 21:29:59 shun vmware[14619]: VM communication interface socket family[ OK ]
Feb 19 21:29:59 shun vmware[14619]: Blocking file system[ OK ]
Feb 19 21:29:59 shun vmware[14619]: Virtual ethernet[失敗]
Feb 19 21:29:59 shun vmware[14619]: VMware Authentication Daemon[ OK ]
Feb 19 21:29:59 shun systemd[1]: vmware.service: control process exited, code=exited status=1
Feb 19 21:29:59 shun systemd[1]: Unit vmware.service entered failed state.

virtual ethenet の起動で失敗してるらしい。
確かに、ifconfigで、vmnetXがでてこない。

途方にくれていたところ、

http://www.mail-archive.com/vine-users@linux.or.jp/msg00082.html

# LANG=C /etc/rc.d/init.d/vmware stop
# LANG=C /usr/bin/vmware-networks --stop
# LANG=C /etc/rc.d/init.d/vmware start
# LANG=C /usr/bin/vmware-networks --start

/usr/bin/vmware-networks というコマンドがあるらしい。
これを stop/start してみると、

Feb 19 21:30:28 shun vmnetBridge: Bridge process created.
Feb 19 21:30:28 shun vmnetBridge: RTM_NEWLINK: name:p9p1 index:2 flags:0x00011043
Feb 19 21:30:28 shun vmnetBridge: Adding interface p9p1 index:2
Feb 19 21:30:28 shun vmnetBridge: Started bridge p9p1 to virtual network 0.
Feb 19 21:30:28 shun vmnetBridge: RTM_NEWROUTE: index:2
Feb 19 21:30:29 shun avahi-daemon[916]: Joining mDNS multicast group on interface vmnet1.IPv4 with address 192.168.109.1.
Feb 19 21:30:29 shun avahi-daemon[916]: New relevant interface vmnet1.IPv4 for mDNS.
Feb 19 21:30:29 shun avahi-daemon[916]: Registering new address record for 192.168.109.1 on vmnet1.IPv4.
Feb 19 21:30:29 shun vmnet-dhcpd: Internet Software Consortium DHCP Server 2.0
Feb 19 21:30:29 shun vmnet-dhcpd: Copyright 1995, 1996, 1997, 1998, 1999 The Internet Software Consortium.
Feb 19 21:30:29 shun vmnet-dhcpd: All rights reserved.
Feb 19 21:30:29 shun vmnet-dhcpd:
Feb 19 21:30:29 shun vmnet-dhcpd: Please contribute if you find this software useful.
Feb 19 21:30:29 shun vmnet-dhcpd: For info, please visit http://www.isc.org/dhcp-contrib.html
Feb 19 21:30:29 shun vmnet-dhcpd:
Feb 19 21:30:29 shun NetworkManager[902]: /sys/devices/virtual/net/vmnet1: couldn't determine device driver; ignoring...
Feb 19 21:30:29 shun NetworkManager[902]: NetworkManager[902]: /sys/devices/virtual/net/vmnet1: couldn't determine device driver; ignoring...
Feb 19 21:30:30 shun vmnet-dhcpd: Configured subnet: 192.168.109.0
Feb 19 21:30:30 shun vmnet-dhcpd: Setting vmnet-dhcp IP address: 192.168.109.254
Feb 19 21:30:30 shun vmnet-dhcpd: Recving on VNet/vmnet1/192.168.109.0
Feb 19 21:30:30 shun vmnet-dhcpd: Sending on VNet/vmnet1/192.168.109.0
Feb 19 21:30:30 shun vmnet-natd: RTM_NEWLINK: name:p9p1 index:2 flags:0x00011043
Feb 19 21:30:30 shun vmnet-natd: RTM_NEWROUTE: index:2
Feb 19 21:30:30 shun vmnet-natd: RTM_NEWADDR: index:2, addr:192.168.116.13
Feb 19 21:30:30 shun kernel: [28463.749726] userif-15: sent link down event.
Feb 19 21:30:30 shun kernel: [28463.749733] userif-15: sent link up event.
Feb 19 21:30:30 shun avahi-daemon[916]: Joining mDNS multicast group on interface vmnet8.IPv4 with address 172.16.115.1.
Feb 19 21:30:30 shun avahi-daemon[916]: New relevant interface vmnet8.IPv4 for mDNS.
Feb 19 21:30:30 shun avahi-daemon[916]: Registering new address record for 172.16.115.1 on vmnet8.IPv4.
Feb 19 21:30:30 shun NetworkManager[902]: /sys/devices/virtual/net/vmnet8: couldn't determine device driver; ignoring...
Feb 19 21:30:30 shun NetworkManager[902]: NetworkManager[902]: /sys/devices/virtual/net/vmnet8: couldn't determine device driver; ignoring...


何か認識したっぽい。

[root@shun Downloads]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:36344 errors:0 dropped:0 overruns:0 frame:0
TX packets:36344 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:32838636 (31.3 MiB) TX bytes:32838636 (31.3 MiB)

p9p1 Link encap:Ethernet HWaddr 00:1F:E2:0F:51:50
inet addr:192.168.116.13 Bcast:192.168.116.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:476534 errors:0 dropped:0 overruns:0 frame:0
TX packets:560761 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:566643039 (540.3 MiB) TX bytes:478757396 (456.5 MiB)
Interrupt:43 Base address:0xe000

vmnet1 Link encap:Ethernet HWaddr 00:50:56:C0:00:01
inet addr:192.168.109.1 Bcast:192.168.109.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

vmnet8 Link encap:Ethernet HWaddr 00:50:56:C0:00:08
inet addr:172.16.115.1 Bcast:172.16.115.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)


おお、出た出た。
これでXP起動した。めでたしめでたし。

カーネルモジュールなので、カーネルアップデート掛かったときは
vmware-modconfig --console --install-all
で、カーネルモジュールを入れ替えたあと、
vmware-networks で、vmnet Xを手動で起動する。
もしくは/etc/init.d/vmware restart
でサービス再起動

という手順を踏む必要がありそう。

(ちなみに2.6.xx系までは r8168 の r8169 の誤認識という結構有名名問題があって
 LANドライバのパッチを当てるっていうのがあったっけ)

一応、備忘録で。
posted by MCのひとたち at 19:01| Comment(0) | TrackBack(0) | linux

[redmine 1.3.0]有用にカスタムかける

この前のプロジェクトでredmineを使ってたときに、進捗管理で使ったときにテンパりながらredmineいじったときのメモ

・チケットの返信先を、unclosed-recipientsではなく、起票者にする
<前提>管理→設定→メール通知タブで、有効なアドレスを記載する

[redmine_home]/app/models/mailer.rb
404 # Blind carbon copy recipients
405 if Setting.bcc_recipients?
406 bcc(notified_users)
407 # recipients [] 
408 # cc []
409 end
410 super
411 end
412

407,408行目をコメントアウト
プロジェクト関連者もあて先が記載されるようになるので、全員に返信とかやると便利。

・ガントチャートのソートを、日付順にする。
[redmine_home]/lib/redmine/helpers/gantt.rb
676 # TODO: top level issues should be sorted by start date
677 def gantt_issue_compare(x, y, issues)
678 # if x.root_id == y.root_id
679 if x.start_date == y.start_date
680 x.lft <=> y.lft
681 else
682 # x.root_id <=> y.root_id
683 x.start_date <=> y.start_date
684 end
685 end

・ガントチャートに日付を表示させる。
http://ameblo.jp/hihihihiroki/entry-10854457740.html
ここで紹介していただいてるものをパチらせていただいた
/app/views/gantts/show.html.erb


こんなことをわすれないように残しておこうと自分のブログにとりあえず残しておいたのがテンパってた証拠ですな
posted by MCのひとたち at 18:33| Comment(0) | TrackBack(0) | ソフトウエア

[Oracle 11g] vm上のfedora 16 に乗せてみる

vm上のfedora 16に64bit 11gを入れてみる。

VM上、64bitでも意外とホストマシンに影響は与えないみたい。
(まぁ、データもそんなに入ってないじゃなんともだけど。
 ホストはi5 2500/win7 64bit / 8Gメモリ、
 ゲストは fedora 16 64bit on VMWare 4.2 VM割り当て3G / 2コア。)

本来10gをいれようと思ったけど、x86のライブラリがあまりにも必要なので断念。
まぁ時代は11gなんですな。いい加減。
インストールも楽。足りないライブラリを逐次報告してくれるからね。

基本的には、RHELやCentosに入れるのと同じ。
(/etc/redhat-releaseを、RHELのものになりすましは必要だけど)
インストーラでは怒られるライブラリを入れる。
x86系のも求められるので、
# yum install glib-devel.i686
見たいな感じでインストールする。
ちなみに、linux.x64_11gR1_database_1013.zipを使用。

あー、でもそういえば一つつまったっけ。


INFO: make[1]: Entering directory `/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib'

INFO: gcc -o /u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/emagent -L/u01/oracle/app/oracle/product/11.1.0/db_1/lib/ -L/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/ -L/u01/oracle/app/oracle/product/11.1.0/db_1/lib/stubs/ `cat /u01/oracle/app/oracle/product/11.1.0/db_1/lib/sysliblist` -Wl,-rpath,/u01/oracle/app/oracle/product/11.1.0/db_1/lib -lm `cat /u01/oracle/app/oracle/product/11.1.0/db_1/lib/sysliblist` -ldl -lm -L/u01/oracle/app/oracle/product/11.1.0/db_1/lib -Wl,-export-dynamic /u
INFO: 01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/s0nmem.o -lclntsh -L/u01/oracle/app/oracle/product/11.1.0/db_1/lib -L/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/ -lnmemso -lcore11 -Wl,-rpath,/u01/oracle/app/oracle/product/11.1.0/db_1/lib/:/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/:/u01/oracle/app/oracle/product/11.1.0/db_1/jdk/jre/lib/amd64/server:/u01/oracle/app/oracle/product/11.1.0/db_1/jdk/jre/lib/amd64 -L/u01/oracle/app/oracle/product/11.1.0/db_1/jdk/jre/lib/amd64/server -L/u
INFO: 01/oracle/app/oracle/product/11.1.0/db_1/jdk/jre/lib/amd64 -z lazyload -ljava -ljvm -lverify -z nolazyload -Wl,-rpath,/u01/oracle/app/oracle/product/11.1.0/db_1/lib/:/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/:/u01/oracle/app/oracle/product/11.1.0/db_1/jdk/jre/lib/amd64/server:/u01/oracle/app/oracle/product/11.1.0/db_1/jdk/jre/lib/amd64 -Wl,--allow-shlib-undefined `cat /u01/oracle/app/oracle/product/11.1.0/db_1/lib/sysliblist` -ldl -lm -lpthread -lnsl -lm -ldl `cat /u01/oracle/app/oracle/prod
INFO: uct/11.1.0/db_1/lib/sysliblist` `cat /u01/oracle/app/oracle/product/11.1.0/db_1/lib/sysliblist` -ldl -lm -no_cpprt

INFO: gcc: error: unrecognized option '-no_cpprt'

INFO: make[1]: Leaving directory `/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib'

INFO: make[1]: *** [/u01/oracle/app/oracle/product/11.1.0/db_1/sysman/lib/emagent] Error 1
make: *** [emagent] Error 2


これでビルドが止まった。

-no_cpprtはどうやら 32bit 版のgccでしか使えないoptionらしい。
32bit版gccはいれているはずなのだが、、ライブラリ参照順もあるのかな。
途方にくれるのもしょうがないので、
{ORACLE_HOME}/db_1/sysman/lib/env_emagent.mk
の、
-no_cpprt オプションがついている部分をはずす。

これでmakeは通った。
インスタンスも作ってくれるので楽。

まぁ、、、そのかわりチューニングはやってないからちゃんとやらないとね。
(そもそも個人の趣味範囲でやったことなのでそんなにいくこともないだろうが)

//////////////

でもって、sqldevelperを、いろんなマシンに入れてみる。
文字コードはJapanese_Japan.JA16SJISにしている。

windows 7は問題無し。まぁそりゃそうだ。
しかしfedora上 で久しぶりに豆腐を見た。。

OTNのページを参考にして解決。
https://forums.oracle.com/forums/thread.jspa?threadID=2213880
とかを。

# cd {JAVA_HOME}/jre/lib/fonts/
# mkdir fallback ; cd fallback
# ln -s /usr/share/fonts/vlgothic/VL-Gothic-Regular.ttf VL-Gothic-Regular.ttf

みたいな感じで、jreのフォントを日本語フォントにリンクすればOK
(vlgothicじゃなくても、sazanamiとかでも問題ないと思う。)


蛇足:
fedora 15から(gnome 3になって)、ノートパソコンのフタ閉めの設定がなくなってしまった。
寝る前とかにノートのフタ閉めをすると、せっかくエンコしている最中にサスペンド入る。。
これはムカツク。
ただ、本当にサスペンドしようとすると今度は逆にサスペンドしてくれなかったり。。

なんとなく最近わかってきたことが。

・勢いよくフタ閉め
 →サスペンドしない。
・慎重にすこしづつ閉める
 →サスペンドする。

#何回かこれでうまくいってるんだけど、ほんとに大丈夫かなぁ。。


もいっちょ蛇足:

よく忘れる、linuxコンソール上でのヒストリを有効にする方法
(上下ボタンで前のSQLを出す)

readline と rlwrap を使えばできる。
たぶんreadline は入ってるだろうから、

#yum install rlwrap
$rlwrap sqlplus user/pass@sid

でヒストリ有効。快適。
タグ:fedora oracle 11g
posted by MCのひとたち at 17:58| Comment(0) | TrackBack(0) | linux

[linux]fedora 16 to 17 アップグレード

自分のブログからの転載
--------

先月末位にfedora 17のβがリリースされた。
もうそろそろ、fedora 17本リリースされるだろう。fedoraは過去2バージョンしか保証されない(リポジトリがなくなるかもしれない)ので、ベータ出たら一応アップグレードはしてる。
どうせ個人使用だし。

2012/5/13時点は、
#uname -r
3.3.4-4.fc17.x86_64
kernel は、たぶんfedora 16の最新版とメジャーバージョンは同じ、、はず。

非力なノートに入れてるF16が、最近無線LAN周りでエラー吐くようになった。
調べてみるとカーネルの問題みたいなので、ものは試しで入れることに。
うまくいけばサーバ用にも適用しようと。

いままでfedoraのアップグレードは何回かやってきてる
・f11→f12は、初体験でgnomeからやって(runlevel=5でやって)固まり結局いれなおし
・f12→f13は、サーバ側のccidのバグなのか何なのかでテレビ見れなくなってヒヤ汗
・f14→f15は、成功するもののアップグレードのgnome3に戸惑いまくり
・f15→f16は、kernel3で不安になって結局アップグレードではなく新規インスコ
と、さしてや難しくないアップグレードにはなんか恵まれない

今回
ノート 32bit
途中までうまくいったものの仕上げでrunlevel=2にするのを忘れてフリーズ。
中途半端でやったのでインスコ失敗。gnome3を捨てCentOS6に移行

デスクトップ 64bit
ノートの失敗を踏まえてこちらは成功。

----

f17は、アップグレードは難しい(単純にfedora-release / yum upgradeじゃできない)。
そもそものファイルシステム構成を変更してアップグレードの必要がある。
カーネルが2系→3系になった、fedora15 -> 16より多分インパクトあると思う。

基本的には
Upgrading Fedora using yum fedora 16 to 17
ここにすべては集約されてます。
(以下、例によって自己責任で)

前準備:
(筆者は、fedora 16 -> 17のアップグレード中に(rpm -Uhv fedora-release | yum upgrade の後にやって成功しました。以下手順の6. から開始して、失敗して1. に戻った。)やって、特に問題なくできました。が、多分前もってやった方がスジとしては正しいんだろうと思う。)

まずは、Fedora 16 -> Fedora 17 の欄を参考にして、まずはファイルシステムを移行する必要があります。
(この作業は慎重にやってください。たぶん、失敗したら起動しなくなると思います)

こここでの記載によると、fedora 15で導入された systemd という、/etc/init.d/xxx に変わる各サービスの起動方法の変更を本格採用するらしい。
例:sshdだったら
過去:/etc/init.d/sshd restart
今後:/bin/systed start sshd.service
/etc/systemd/system 以下にスクリプト(のショートカットがある)ので、これを参照するようになる。

それと関係して(と言ってるけどホント?)、ファイルシステムが大きく変わる。
具体的には以下のパスがこんな風になる。
/bin → /usr/bin
/sbin → /usr/sbin
/lib → /usr/lib
/lib64 → /usr/lib64

これをやらないと、fedora 17にはできません。

もちろん、ファイルを手動マージなんてしたら多分怖いので、参考のファイルシステム変更方法が書いてある。
dracut パッケージを使う
(これは今でも入ってて、カーネル起動時とかに使ってるはず。これのインスコの失敗で、過去アップグレードに失敗したことがある)

ちなみに以下をやると、fedora 16のままにはできない。
ファイルシステム変更したら即fedora 17にしないといけないので注意。


1. 次回起動時に、file systemの変更をしてくれるようにと依頼する。
# dracut -H --force --add convertfs

2. カーネル起動時のパラメータの修正
 /etc/grub2.cfg を修正する。

- remove “ro” (read only)
- append “rw” (read write) to let dracut mount your root filesystem writeable
- remove “rhgb” (Red Hat graphical boot) to disable the graphical bootsplash
- append “rd.info” to get a more verbose output from dracut
- append “rd.convertfs” to enable the /usr-move conversion script in dracut
- append “enforcing=0” to disable SELinux enforcement


とあるので、以下の"linux "で始まる文(要するにgrubメニューの一番上(もしくはカスタムカーネルにしてるならその行を探して))以下のように変更。

linux /boot/vmlinuz-3.X.X-XX.fc16.x86_64 root=UUID=6e966b10-b03a-4a9c-8df3-c35e2744b3ae ro rd.md=0 rd.lvm=0 rd.dm=0 quiet rhgb rd.luks=0 LANG=ja_JP.UTF-8 KEYTABLE=jp106

linux /boot/vmlinuz-3.3.4-4.fc17.x86_64 root=UUID=6e966b10-b03a-4a9c-8df3-c35e2744b3ae rorw rd.md=0 rd.lvm=0 rd.dm=0 rd.luks=0 LANG=ja_JP.UTF-8 KEYTABLE=jp106 rd.info rd.convertfs enforcing=0

要するに
・グラフィカルの起動をやめて
・カーネルの起動を読み書き可能にして
・dracutにパラメータを与えて
・selinuxを無効化する。
(グラフィカルの起動云々は別にしても、まぁ、一度失敗したら起動しなさそうな感じなので、十分な気を遣うこと)

3. 恐る恐る再起動
# reboot

起動時に、dracutがファイルシステムの移行をしてくれる。
/bin -> /usr/bin
に移行したりする旨が出てくる。
エラーがなく終了して、起動すればOK。
心配なら↓のコマンドを打って(カーネル起動メッセージ)、エラー出てなければOK。
# dmesg | grep dracut

(この先は慎重にやってください)
4. カーネルパラメータを戻す。
 →これをやらないと、次回起動時にまたdracutによりファイルシステム移行が走るので多分ぐちゃぐちゃになると思う。絶対やること。

2. でやったうちの、
- append “rd.info” to get a more verbose output from dracut
- append “rd.convertfs” to enable the /usr-move conversion script in dracut

これは消さないとダメ。他はどっちでもいいと思う。

linux /boot/vmlinuz-X.X.X-X.fc16.x86_64 root=UUID=6e966b10-b03a-4a9c-8df3-c35e2744b3ae rorw rd.md=0 rd.lvm=0 rd.dm=0 rd.luks=0 LANG=ja_JP.UTF-8 KEYTABLE=jp106 rd.info rd.convertfs enforcing=0

5. ファイルシステムの確認
/bin/
//sbin/
/lib
/lib64
とかがシンボリックリンクになってれば、無事成功。
ただし、fedora 17へのアップグレード(以下6. )をやらないで起動すると多分起動しない。

6. fedora 16 -> 17へのアップグレード
 ファイルシステム変更して、再起動する前にやることを強く推奨。
  1. から順にやってきた場合は、前もって、fedora-release-17xx.rpmはとってきておいた方がよいです。


6-1. 本体バージョンアップ
# rpm -Uhv fedora-release-17(取ってきたやつ).rpm
# rpm -Uhv fedora-release-rawhide(取ってきたやつ).rpm
 fedora-release-17
 fedora-release-rawhide
 は、技研とかから取ってきてください。

6-2. ランレベルの変更
普通は起動時にctrl + alt + F2 で変更できる
(みたいだけど、私はなんか無理だったので、/etc/inittabを参考にシンボリックリンクを変更した。)
※runlevel=5とかでやると今回は固まった。リモートsshか、ランレベル2でやることを強く推奨します。


6-3. ファイルアップグレード
コンソールから以下を打つ。
# yum update yum
# yum --releasever=17 disableplugin=presto --skip-broken distro-sync
だいたいβはリポジトリまとまってないので、--skip-broken をつける

※ファイルシステムを変更してない場合、
rpmlib(X-CheckUnifiedSystemdir)is needed by filesystem-3-2.fc17.x86_64
rpmlib(X-CheckUnifiedSystemdir) is needed by setup-2.8.48-1.fc17.noarch
と出ると思うので、この場合は1. からファイルシステムを変えて、再度実行すればできます。(私はその方法でうまくいきました。)

一応これで、fedora 16 -> 17(64bit)は成功。
# cat /etc/redhat-release
Fedora release 17 (Beefy Miracle)
# uname -r
3.3.4-4.fc17.x86_64
で、OK。

#起動画面は 花火が上がってる。和風な感じがしたのは私だけだろうか。

もちろんfedora 17がもうすぐリリースされるのでそれ待ってもいいかもしれません。
が、ファイルシステムの移行は必須です。
個人的には、大きなリスクを追ってまで、無理にすることもないような気はします。

fedoraは15くらいから(たぶんUbuntuも11.04くらいから(?))gnome3の採用 -> kernel3 の採用 -> /usr/以下のファイルシステムの移行、などあまりにも急進的なことやってるので、無理にアップグレードしないでCentOSに移行してしまうのも一つの手です

posted by MCのひとたち at 17:32| Comment(0) | TrackBack(0) | アーキテクト