11月 292013
 

いやー。ちょっと前のエントリで「MacBook で色々な OS ブート。」というのを書いたのですが、そのときには MacBook の内蔵 HDD を SSD に換装すると USB メモリのインストーラが起動しない。なので今までの HDD にインストールした。と、書いたのですが・・。

新規に Mavericks をインストールしてちょっと試しに smartctl を実行してみたらエラー出まくりで・・。orz まさかの一日で OS を再ストールするするハメに・・。orz

結局、壊れた内蔵 HDD はそのままに、SSD を USB で接続し、 USB メモリのインストーラが起動したので USB 接続した SSD にインストールできたのでありました。その時の手順をちょっと書いておきます。

1). はじめに
MacBook の内蔵 HDD を SSD に換装して USB メモリからインストーラが起動しない状態。内蔵 HDD のままだと USB メモリのインストーラは起動している状態。

2). USB 接続の SSD
MacBook の内蔵 HDD はそのままに SSD を USB 接続します。その状態だと USB メモリのインストーラは無事に起動するのでインストール先を USB 接続の SSD にしてインストール開始。ふぅ。良かった。

3). インストール途中で中断し SSD 換装
Mavericks のインストーラはアップデート後に途中で一回リブートしてからもインストールするのですが、そのとき遅いので 10% 程度のところで強制的に電源断っ!! でもって内蔵 HDD を途中までインストールした SSD と換装します。

4). SSD からブートそして無事に起動
内蔵 HDD を SSD に換装したらすかさず電源 ON。一応 USB メモリのインストーラは付けたまま。で、内蔵 SSD から起動し Mavericks のインストールが継続される(この辺りの動作はちょっと感動的;-)のでそのままインストール。
インストール完了で再起動後は SSD から無事に Mavericks が起動するのでありました。
ふぅ。無事に SSD に換装できました;-)。

 
で、クリーンインストールした OS X Mavericks についてちょっと書きます。かぁなりアコギな OS だぁ。

o. iLife’11 の iPhoto は起動しない
これには驚きましたね。 OS X Mountain Lion のまでで起動していた iPhoto は Mavericks をクリーンインストールすると起動しなくなります。 App Store から新規に購入しろ。と、言われます。しょーがないので僕は買いましたよ・・。

OS X Mountain Lion からアップグレードインストールした人は継続して iLife’11 の iPhoto が利用できます。なので、古いバージョンをそのまま利用し続けたい人は Mavericks はクリーンインストールしないほうが良いでしょう。 GarageBand は無料だから良いんですけど、 iPhoto は 1,500yen ですからねぇ・・。まったくっ!! って感じ。

ちなみに、古い iLife’11 の iPhoto は open コマンドで /Applications/iPhoto.app/Contents/MacOS/iPhoto を開くと起動はするのですが、正しい動作するのかについてはわかりません。と、いうか、 open コマンドで実行すると iPhoto ライブラリとか指定できないし・・。orz

o. iWork も困った
iLife と一緒に iWork も新品の Mac を購入した人は無料になったとは言っても、古い iWork’09 などを持っている人は今度 Mac を買い直すまではそれを使い続けたい。と、思うのですが・・。

iWork の場合、例えば iWork’09 の Pages で作成した文書を iCloud に載せて「そーいえば iCloud 上で ウェブ版 iWork が無料で利用できたよなぁ。」とか思い試しに編集し、保存したあとに OS X 上の iWork’09 の Pages で編集しようとすると「あんたの Pages は古い。最新版にアップデートしろ。」とか言われて、これまた iWork も買い換えなければならない状態です。

と、いうことで Mavericks (とそれらに付属する新機能)を利用する場合には iLife も iWork も最新版が必須ということになります。いくら無料にしたとはいえ、それは新しい Apple 製品を買った人のみで、古い Mac を持っている人からはドンドンお金を吸い上げる状態ですね。もしくは新しい Mac を買え。と。・・。orz。

o. iTunes と iCal の同期の機能
Mavericks に付属の iTunes については以前に書きましたが、カレンダーの他にアドレス帳も同期しなくなったということが解りました。

Mavericks にすると、 Mac と iPhone の間ではカレンダーとアドレス帳が同期できなくなっています。どちらも iCloud 経由でしか同期できない状態です。クラウド上にカレンダーやアドレス帳を起きたくない人にとってはもう地獄のような状態になりました・・。orz。

あ。iCal は「この Mac 内」にカレンダーを持つ場合には iCloud コントロールパネルでカレンダーの同期を解除しておいたほうが良いです。以下、 iCal の動作です。

1). iCal に Mac 内のカレンダーとして新規作成
2). 保存(バックアップ)しておいた ics ファイルを Mac 内のカレンダーにインポート
3). インポートが完了した時点でドドドと iCloud 上にコピー
4). その後は Mac 内のカレンダーが削除される

と、いう恐ろしいとこになります。 iCloud 上のデータをすかさず消しましょう。

 
と、いうことで OS X Mavericks を新規にインストールした場合と、OS 自体を Mavericks にしたときのふざけた機能について、わかったところだけ書いてみました。アドレス帳の同期なんかはメール vcf ファイルを送って iPhone アプリがインポートしてくれるヤツとか多分あるだろうとは思うのですが、そーいうのを今後は探さないとダメですね。

それにしても非常に悲しい世の中になったものです・・。orz

11月 272013
 

僕は Nokia の Lumia 620 という WindowsPhone8 の携帯端末(スマートフォン)を持っているのですが、当初買った時はバックカバーが白のモノをチョイスしました。以前のエントリを見て頂けれはと思うんですけどもね。

白ってのは使い込んでいくと汚れていってだんだんと美しくなくなっていきました。あと、いつも良く押す右側真ん中ボタン(画面を点ける電源ボタンみたいな感じ)がカクンカクンという感覚になってきたので、どーすんべかなぁ。と悩んでいたのですが、サクっとバックカバーを交換することにしました。

Lumia 620 はバックカバーがプラスチックでディスプレーの裏側をくるんでいる感じなので取り外しが簡単で交換パーツもそこはかとなく出ているのでいるのであります。

今回購入したのはピンク;-)。値段は送料込みで 1,900yen でした。バックカバーが届いた状態ではこんな感じ。

IMG_6075_Lumia620_Change_1

Windows Phone8 というのは画面中にメインで利用している色を「設定」->「テーマ」で変えられます。WindowsPhone8 といえばテーマは黄色か青かなぁ。と思っていたのですが、バックカバーをピンクにしたのでテーマの色もピンクにしました。うひー;-)。

それにしてもカバーを変更しただけで、なんか新品の WindowsPhone8 が手に入ったような気分になってなかなか新鮮です;-)。カバー交換のついでに今までインストールしていたアプリを見なおして似たような機能で新しいアプリを探してそれを利用する。ってのも良いですね。

IMG_6078_Lumia620_Change_2

と、いうことで 3G 800MHz が入らず 2.1GHz 帯しか利用できない、国内では山奥や田舎に行くと全くと行って良いほど利用できない Lumia 620 ですが、ここから気分一新です;-)。

11月 242013
 

いやー。ThinkPad X100e がぶっ壊れて ThinkPad Edge e145 を購入して無事に Windows8.1 と FreeBSD/amd64 9.2-RELEASE が起動したので一段落ついていたのでありますが。

ThinkPad X100e が壊れて、そこで以前利用していた SSD を MacBook に取り込んで OS X Mavericks を高速にしようかなぁ。とか思い早速トライしてみました。

まずはその途中経過。ThinkPad X100e には Windows8.1 と FreeBSD/amd64 9.2-RELEASE がインストールされていたので、それをそのまま MacBook でブートしてみました;-)。

IMG_6085_Win_FreeBSD_OSX_1

いやー。FreeBSD が無事にブートしましたねぇ。途中、 /etc/fstab に NFS の行があったのでそこでタイムアウトしました。 PC/AT 互換機の場合なら Ctrl-C で抜けられるんだけど MacBook ではダメで、このまま延々とタイムアウトが続くのであります。

あ。 FreeBSD はここでおしまい;-)。次に Windows8.1 をブートしてみました。

IMG_6091_Win_FreeBSD_OSX_2

これはもーっ!! スルっと起動しました。スゲっ。って感じ;-)。色々やれば良いんだけど、まぁ、こっちもブートしたのでおしまい;-)。

さてさて。 ThinkPad X100e に入っていた SSD で Windows と FreeBSD のマルチブートですが、基本的には レガシー BIOS と MBR でインストールされているのですが、 MacBoook ってのは UEFI で動作しているとは言っても レガシー BIOS と MBR でちゃんとブートするんですね。あ。ブートは Windows 側の bcdedit で FreeBSD がブートするようにしています。

ただ、 OS X のマルチブートにしようとすると OS X は UEFI が必要になるので『マルチブートが大変』な状態になるんですね。素直に Windows と FreeBSD のみを利用する場合にはなんか行けそうな予感です。

 
てーか。やりたいことはこんなことではなく、余った SSD を MacBook に入れて OS X Mavericks をインストールする。ってのが目的なのですが・・。SSD を MacBook に接続すると、8GB の USB に用意した Mavericks が認識されません。

MacBook に入っている 2.5 インチの HDD を接続すると USB からブート可能なのですが、 SSD を接続すると USB インストーラを認識しません。あらら・・。orz

SSD は Intel の 330 Series 。結構メジャーな SSD なので MacBook が認識しないというのはちょっと考えられないんだけど、ダメでした・・。orz 今回利用した SSD は 120GB のヤツだったのですが、もしかしたら容量チェックが入っていて、120GB では容量が小さすぎて Mavericks のインストーラが起動しないんではないかい? などと思えてきました。が、 SSD はこの一個しか持ってないのでそれが本当のことなのか、確認はできていません・・。

 
しょーがないので default で MacBook についていた 230GB の HDD にインストールすることになったのでありました・・。

IMG_6095_Win_FreeBSD_OSX_3

HDD には無事にインストールできるんですよねぇ・・。

と、いうことで、僕みたいに SSD に変更してインストールしようとしたけどできなかった。と、いう方いましたら是非コメントをい頂ければと思います。

11月 182013
 

連チャンで ThinkPad e145 のネタですみません。 FreeBSD ネタはこれが最後です。無事に suspend/resume ができることを確認しました。

前回のエントリ「FreeBSD で suspend/resume するかの確認方法。
前々回のエントリ「ThinkPad Edge e145 で利用する FreeBSD。

上記二つのエントリで「あれ? suspend/resume が動かないなぁ。」とか思っていたのですが、色々見なおしたら無事に動作するようになりました。見なおした点は以下の通り。

・カスタムカーネル
・/boot/loader.conf
・/etc/sysctl.conf

カスタムカーネルと /boot/loader.conf はまぁ、ほぼ連動しているという気がするのですが、それ以外にも /etc/sysctl.conf を見直しました。これらの設定は 9.2-RELEASE が動作していた Thinkpad X100e から引き継いだ情報だったのですが、同じ設定内容では e145 は suspend/resume しない。と、いうことですね。

上記三つのファイルを以下の URL に置いておくのでもし良かったら参照してみてください。

カスタムカーネルコンフィグ
/etc/loader.conf
/etc/sysctl.conf

色々なファイルを消したり書いたり、色々なパラメータを追加したり削除したりを繰り返したのですが、上記の設定で安定して suspend/resume するようになりました。カーネルモジュールのロードではなく kenv などの設定のほうだと思っているんですけども。
実際に的確に原因を特定したわけではありませんが、僕的には hw.pci.enable_io_modes などが怪しいのかなぁ? とか思ったりもしたのですが、本当に特定はできていません。

 
resume から返って来た FreeBSD ですが、比較的簡単な問題点が二点。

・サスペンド時には X 上で動作していたマウスがレジューム後には動作しなくなります。/etc/rc.resume 内で /etc/rc.d/moused restart すれば良いでしょう。
・レジューム後に画面がやたらと明るくなってしまいます。 Fn+F7 で暗くしてあげてください。
・KDE4 を利用している人は「電源の管理」にサスペンドの情報が渡らなくなりました。 KDE4 側で自動休止とかできなくなったのがちょっと悲しいかな。

いじょ;-)。

と、いうことでこれで FreeBSD をバリバリ利用できる NotePC になりました。新製品で出たばかりの ThinkPad Edge e145 ですが、無線 LAN とか SD Card Reader とか動かない機器もありますが、まぁ、ヨシとしておきましょう。グラフィックスは vesa ですけど、驚くほど速く動作します;-)。

僕的には X100e に続いて中々使える NotePC。 になりそうです。

11月 172013
 

以前のエントリで「ThinkPad Edge e145 で利用する FreeBSD。」というエントリを書いたのですが、その中で動作するものとして suspend/resume と書いていますが、あれ? 当初は確かに suspend/resume していたのですが、どうも最近しなくなりました。 orz

どうして動作しなくなったのかについては現在確認中なのですが・・。

現在インストールしているバージョンは FreeBSD/amd64 9.2-RELEASE-p1 です。こいつはカスタマイズカーネルで起動しているのですが、他にも以下の要領で色々試してみました。

・カスタマイズカーネルでそ /boot/loader.conf でkldload した状態
・カスタマイズカーネルで kldload しない状態
・GENERIC カーネルで /boot/loader.conf でkldload した状態
・GENERIC カーネルで kldload しない状態

残念ながら全ての状態において resume しませんでした・・。orz。

おかしいなぁ。インストール直後は suspend/resume していたよなぁ。とか思い、 メモリスティク用イメージを作成してブートして確認してみました。
FreeBSD 上でメモリスティグを作成する場合は以下の手順になります。

# dd if=FreeBSD-9.2-RELEASE-amd64-memstick.img of=/dev/da0 bs=10240

 
作成した USB メモリで FreeBSD をブートして INSTALL モードではなくコマンドブロンプトを出したあとにすかさず /usr/sbin/acpiconf -s3 とか打つんですね。すると suspend してくれます。
蓋を閉じて開けるときちんと resume してくれるので、動作的には FreeBSD/amd64 9.2-RELEASE の GENERIC カーネルでは sysctl で特に mib を変更することなく ThinkPad Edge e145 は suspend/resume してくれることが確認できました。すると、実際の利用環境においてなにか悪さしたか p1 にしたことによって正しく suspend/resume できなくなってしまったのでしょうなぁ・・。

継続して調査する所存であります。

 
と、ここまで書いたのですが、うひひ。つまり FreeBSD がブートするメモリスティック持って電気屋さんに行って、はじから(それはつまりは自分が欲しいと思っている NotePC のことですが;-)リブートしてみれば suspend/resume の確認が取れて、第一目標の NotePC が supend/resume しなければ次の NotePC で確認。とか、そこはかとなく素晴らしい技が使えるのでは無いでしょうか:D:D:D。

くれぐれも先に店員さんにヒトコト声をかけてからブートしたほうが良いとは思いますが。

けど、それで FreeBSD をネーテブにインストールしたときに suspend/resume する NotePC の情報が増えるのでそれはそれで良いことなのではないかなぁ;-)。

11月 122013
 

いやー。前回のエントリでは Windows と FreeBSD がなんとかマルチブートできる環境が構築できた。というエントリでしたが、ここでは実際に freeBSD を利用してみた感想を書いてみたいと思います。

 
1. OS のチョイス
今回は UEFI+GPT に対応していない FreeBSD/amd64 9.2-RELEASE をチョイスしました。インストール方法は前回のエントリに書いているのでそっちを参照してください。

本当は FreeBSD/amd64 10.0-BETA3 でも良かったのですが、僕の環境で利用している FreeBSD はほぼ全てが /amd64 9.2-RELEASE なんですね。何が良いかと言われれば pkgng の恩恵をごっそりと受け継げることができる。と、いうことですね;-)。

まず先に pkgng のことをちょっと書いておきましょうかね;-)。

デスクトップ PC で稼働している FreeBSD を pkgng 化して packages をドドドと作成します。2,3 の設定は以下の通り。

・/usr/ports/ports-mgmt/pkg をインストール
インストール後は pkg2ng を実行しろ。というので実行します。まぁ、新規インストールな状態なのでサクっと終わりますが;-)。

・/etc/make.conf に以下の行を追加
ここいらの設定はあちこちに書いてありますね。

WITH_PKGNG=yes

 
・packages の作成
そもそも KDE4 などの統合デスクトップ環境をインストールすると 800 個近い packages がインストールされています。インストールされたこれらを package 化します。以下はそのスクリプトです。

#!/bin/sh
pkg info | grep $1 | awk '{print "pkg create -f tbz -n -g -o /usr/ports/packages/All " $1}' | sh -x

 
一行野郎ですが、これを例えば pkg-create.sh という名で保存し、実行時には ./pkg-create.sh kde などとオプションを指定すると kde と付いた pkg info で表示される全てが packages 化されて /usr/ports/packages/All/ に格納されます。
ただ、関連性のあるプログラムまでは packages 化してくれないのであとからチマチマこのコマンドを実行する必要があるかもです;-)。

 
・packages のインストール
新しくインストールした ThinkPad e145 上の FreeBSD は同じく pkgng 化したあとに NFS でマウントした /usr/ports/packages/All/ に cd して、そこで pkg add kde* などと打つとドドドとインストールしてくれます;-)。

ただ、この pkg add するためには設定ファイルを一個用意して置く必要があります。
/usr/local/etc/pkg.conf というファイルを一個用意してあげます。

# cd /usr/local/etc
# echo "packagesite: http://pkg.freebsd.org/${ABI}/latest" > pkg.config

 
/usr/local/etc/pkg.conf.sample と、いうファイルがありますが、とりあえず一行だけ書いたファイルを置いてあげると pkg add が動き出します。このファイルが無いと pkg add はスルっと終わってしまい packages をインストールしてくれません。
packages 自体はこのファイルに書いたホスト名など、リモートから取って来なくてカレントデイレクトリの packages を利用したいので、これで十分です;-)。

以上で新規にインストールした FreeBSD の環境が整いました。早いです;-)。

 
2. 動くデバイスと動かないデバイス
packages がドドド入ったので X を起動したり色々やる準備が整いました。で、まず、動かないもの(デバイス)を書きましょうか。

・Wi-Fi: Broadcom (多分 BCM943142HM)
・Bluetooth: Broadcom 製 USB 経由 で 4.0 対応
・SD Card Reader: Realtek 製

これらはダメですね。 FreeBSD 側にドライバが無いようです。あと、渋いところでいうと AMD の SUBus が認識しない。この辺りについては pciconf -lv を置いておきますのでそちらを参照して頂ければと思います。

続いて X ですが、 e145 の CPU というか APU は A4-5000 で Radeon HD 8330 な GPU ですが、以下の URL で確認すると・・。

https://wiki.freebsd.org/AMD_GPU
https://wiki.freebsd.org/Graphics

と、いうことで Radeon HD 8000 番台は “Not supported” だそうです。残念ながら VESA 決定ですね。最後に要らないとは思うけど、xorg.conf を付けておきます。
タッチパット・トラックポイント共に動作する設定が入っています。

 
動くもので気がついたのを書いてみます。

・suspend/resume する (あれ?しなくなった。ちょっち調査中)
・テンキーで画面の明るさ変更が可能
・音は出る
・USB カメラは webcamd+cuse4bsd+pwcview で動きます

くらいかな?

 
試してないものは以下の通りですが、これは多分 Xorg とか KDE4 の機能に引っ張られると思うなぁ。あとで確認してみよう。

・D-SUB 15pin/HDMI/LCD があるけど、三画面出力とか可能なのかな?
・バッテリーの持ち状況とかまだ確認してないです

あと、以前の「PRIMERGY MX130 S2 を FreeBSD で利用する。」というエントリで「hwpstate0: set freq failed, err 6」というメッセージが延々と出力される。と書いたことが有りましたが、この NotePC でもやはり表示されます。回避策は上記エントリに書いてあるのでそのパッチを適用しました。

 
実際に ThinkPad Edge e145 を FreeBSD で利用してみた体感的な感想をちょっと書きます。比較は ThinkPad X100e とですが、実測値とかなくてすみません。

・CPU は 2Core から 4Core になったので余裕を感じます。あと、 CPU の温度が低いですね。ファンが唸りを上げて回るというのはまだ体験していません。その点からするとたとえ遅くとも「良いんじゃね;-)。」と思えます。
・Xorg が VESA でしか利用できないのが痛いかなぁ。とか思ったのですが、最近の VESA は以前よりも進んでいますね。以前は 1024×768 を 1366×768 横方向に拡張して表示してくれていたのですが、今の VESA はちゃんと画面のサイズでで表示してくれます。 2D のみなら VESA でも我慢できるかなぁ。と、いう感じかな。

しかし、KDE4 の「デスクトップ効果」では xrandr を利用してウィンドの透明化とか全仮想デスクトップの表示とかが動きます。あれあれ? VESA でも今は十分に動いているよ。状態です。 ThinkPad X100e の頃の VESA とは随分と違い驚いています;-)。

 
とまぁ、こんな感じですが、これは続くかどうかわかりません;-)。

ThinkPad X100e の場合は枯れた技術を利用した新製品の NotePC でしたが、今回購入した e145 は最新鋭の NotePC になるので X100e の頃よりは色々と楽しめそうです;-)。

と、いうことで ThinkPad Edge e145 で FreeBSD/amd64 9.2-RELEASE をインストールして動作している状態の情報を提示します。

起動時の dmesg
pciconf -lv の結果
sysctl -a の結果
vesa だけど xorg.conf

皆さんも是非 FreeBSD を PC ネーテブで動かしてみてください;-)。

11月 092013
 

前回のエントリで「購入したー。FreeBSD 用の領域確保したー。」で、終わったのですが、ガマンできずに、ロクに下調べもせずに FreeBSD 用に確保した領域に FreeBSD/amd64 9.2-RELEASE をインストールしてみたのですが・・。

あたたた。 Windows8 がぶっ飛びました。 Windows と FreeBSD の両方がブートできなくなってしまいました・・。orz。
ThinkPad X100e に引き続き、またまたリカバリー領域のバックアップをしない状態で HDD 全初期化の運命です・・。orz。

 
この ThinkPad Edge e145 ってのは最新鋭の NotePC なんですね。その辺りのことをまるで意識していませんでした。 Windows8 がブートする NotePC なので起動は Windows7 世代の PC と同様の BIOS ではなく UEFI BIOS で、パーティション構成は GPT を利用しています。こんなの知らないよーみたいな・・f(^^;;。以下、 BIOS との格闘についてです。

 
1).USB デバイスからの OS の起動
まず、USB デバイスから OS をインストールするためにメモリとか CD/DVD から起動しようとするのですが、これがまた起動しません。orz。 BIOS の設定は二ヶ所。ここを変更してあげないと外部メディアからブートできません。

・USB UEFI BIOS Support を enable に
BIOS の Config メニューから USB を選択するとこのメニューがありますが、これが disable だと USB デバイスからブートしません。

・Secure Boot
これは UEFI BIOS の機能なのですね。 UEFI の場合はブート時のウィルス対策のためにできたメニューらしいですが、新規に OS をインストールする場合には disable にしないとダメです。

IMG_6038_e145_UEFI_1

あと、細かい点としては FreeBSD のインストールメディアを USB3.0 のポートに接続するとこれまたブートしません。OS インストール中は USB3.0 は disable にしておいたほうが良いかもです。

 
2). OS のインストールと起動
例えば Windows8 のみインストールする場合や FreeBSD を先にインストールした場合にはそれぞれがブートしてくれます。
Windows8 の場合は UEFI BIOS の Startup メニューから UEFI Only を選択すれば高速にブートする状態でインストールし、起動します。 FreeBSD の場合は Legacy Only にすればインストールできて起動もします。

しかしっ!! 一個がインストールできてもう一個の OS をインストールすると最初起動していた OS がブートしなくなり、結局二つの OS 共にインストールしたモノが起動しなくなりました。

試したのは以下の通り。インストールした OS の順番を意味し、その後どうなったか? を掲載しています。 FreeBSD は GPT パーティションを利用しました。

・Windows8 (起動) -> FreeBSD/amd64 9.2-R = 両方とも起動せず
・FreeBSD/amd64 9.2-R (起動) -> Windows8 = 両方とも起動せず
・Windows8.1 (起動) -> FreeBSD/amd64 9.2-R = 両方とも起動せず
・FreeBSD/amd64 9.2-R (起動) -> Windows8.1 = 両方とも起動せず
・Windows8.1 (起動) -> FreeBSD/amd64 10.0-BAETA3 = Windows8.1 は起動するが FreeBSD を起動する方法がわからない

一番最後のパターンは FreeBSD/amd64 10.0-BAETA3 が UEFI に対応したと小耳に挟んだのでトライしました。 UEFI BIOS は Both で UEFI/Legacy Boot Priority から UEFI First でインストールしました。
Windows8.1 から bcdedit を利用し Windows8.1 のブートマネージャからのブートを試みましがダメでした。

IMG_6037_e145_UEFI_2

この辺りの情報はまだあまりなくて、 OS 単体をインストールしたら起動したとか、仮想環境にインストールしたら起動したとかそんなんばっかりで、物理的な最新の PC にインストールしてマルチブートしたという情報がほとんど無いのが現状です。

本当にヒトバシラーだぁ・・。orz。

 
3). 何とか起動。ふぅ。
もぉヨワヨワです。UEFI BIOS の設定は以下にしました。

・Secure Boot: disable
・UEFI/Legacy Boot: Legacy Only

もう明らかに前世代の PC の BIOS じゃん。みたいな・・。ここに Windows7 をまずインストールしました。この環境でインストールする Windows7 はすごいですね。 MBR パーティションにインストールしているようです。

Windows7 インストール後に FreeBSD は /amd64 9.2-R をインストールした場合はインストール時に GPT パーティションでインストールしようとしているので Windows7 のパーティションが見えません。あららら。

と、いうことでインストールの手順は以下の通り。

1. FreeBSD/amd64 9.2-R を MBR パーティションでインストール
パーティション作成時に先頭の 230GB を NTFS として確保し、残りのディスクは MBR 形式で FreeBSD パーティションを確保します。 /dev/ada0s3a,b,c,d って感じですね;-)。これで FreeBSD のインストールは完了。

2. Windows7 のインストール
FreeBSD のインストール時に先頭 230GB を確保したのでここに Windows7 をインストールします。これはパーティションを新規割り当てするなど、フツーの手順通りで OK です;-)。

3. マルチブート
インストール後に再起動。まずは Windows7 が起動します。その後 bcdedit で FreeBSD が起動するように設定します。そして、その再起動後は Windows7 のブートマネージャから両方の OS がブートするようになるのでありました。ふぅ。

 
と、いうことで、なんとか無事に二つの OS が起動するようになりましたが UEFI BIOS の知識は十分に付けてからトライしたほうが良さそうですね。UEFI BIOS でハマった道を再確認。

・ USB デバイスからインストールメディアがブートしない
USB UEFI BIOS Support を enable にする。
Secure Boot を disable にする。

・UEFI+GPT 対応 OS
Windows8は レガシー BIOS と MBR に対応しているというんだけどそれではインストールできないみたい。 UEFI Only と GPT でしか扱えませんでした。
FreeBSD 10.0-BETA3 は UEFI Only でインストールできます。ただし、マルチブート時にどのようにしたら良いのかドキュメントが無い(少ない?)。
OS としてインストールしないのに Linux のブートローダを利用するのはイヤなので関連すドキュメント全く読んでません。
Windows8 や FreeBSD 9.2-R は単体でインストールして単体で利用する分には全く問題は無いと思います。

・Legacy BIOS+MBR でマルチブート
UEFI+GPT に対応したマルチブート環境化において、ブートローダ(ブートセレクタというのかな?)部分はどうしたら良いのか全くわからなかったので古い PC アーキテクチャで OS を利用る場合に良いかと思われます。

BIOS やパーティションレベルでの最新機能は必要なく、とりあえず「何はなくともマルチブート命」って人向けでしょうかね;-)。

 
今は Windows7 そっちのケで FreeBSD/amd64 9.2-RELEASE をいじっています。一応、 X まで起動して KDE4 が動き出しました。
Windows7 はここから Windows8.1 にバージョンアップできるのかなぁ? そーすると Legacy BIOS+MBR で一応動くことになると思うんだけど。

と、いうことで今回はここまでにします。二つの OS をマルチブートするための方法を書いてみました。FreeBSD 10 側でマルチブートのための機能とかあるのかなぁ? やっぱり OS は物理マシンにインストールしないとダメですねぇ;-)。

次回は FreeBSD について、動くデバイス・動かないデバイス・その他について書いてみたいと思います;-)。

11月 062013
 

以前利用していた ThinkPad X100e がちょうど三年でぶっ壊れてしまったので新たに NotePC を購入したのですが、どうしようか悩んだ挙句 Thinkpad Edge e145 にしました。
ウェブから申し込んだのが 10/09 で受注生産だったので納期が 2-4 週間とのことで、いやー。本当に 4 週間かかりましたな。 11/06 に配達され、手元に届きました。

新しいブツが手に入ったのでしばらくはこのネタ続くかもしれないです。今回はその第一回目と、いうことで;-)。

僕が購入したのは AMD の CPU である A4-5000 が載っている受注生産モデル。 e145 の代表的なスペックは以下になります。

・CPU クロック: 1.5GHz
・CPU コア数: 4Core
・GPU: Radeon HD 8330
・メモリ: 4GB
・HDD: 7mm 厚 500GB
・OS: Windows8
・NIC: RealTek GbE
・Wi-Fi: Broadcom (多分 BCM943142HM)
・Bluetooth: Broadcom 製 USB 経由 で 4.0 対応
・SD Reader: Realtek 製

ThinkPad X100e で利用していた SSD を入れようかと、届いたその日に裏蓋を開けたのですが、なんとっ!! default の HDD は 7mm のヤツで 9mm の SSD は入りませんでした。
その他のパーツで ThinkPad X100e から色々流用できるか試してみたリストは以下です。

・AC アダプタ: 使えました;-)
・Wi-Fi: Intel Centrino Advanced-N WiMAX 6250 BIOS ロックがかかっていて利用不可
・Bluetooth: あえて Broadcom 2.0 を利用する必要ナシ
・メモリ: 規格が違うのでアウト

着脱可能で流用できそうなパーツはこれくらいでしょうかねぇ。

あと、裏蓋開けてみて X100e と違うなぁ。と思ったのは SIM スロットとか無いので随分とさっぱりしている点かな。 HDD とメモリと MiniPCI の Wi-Fi にアクセスできるくらい。

初日は Windows8 のアップデートとかしてシューリョーって感じでした。
以前利用していた X100e のときは Windows7 をブートもせずに HDD の内容を全部ぶっ飛ばしてから FreeBSD と Windows7 をインストールしたのですが、今回はリカバリーメディアを作成するために一応 Windows8 をブートしました。

にしてもっ!! リカバリー領域をバックアップするプログラムが見つかりません。同梱されていた資料は薄っぺらい紙が三枚で、ユーザ・ガイドは PC の中でそれを見るとリカバリー方法が書かれているのですが、画面右の「検索」に “recovery” と入力して表示されたプログラムを実行しろ。とは書かれているのですが、そのプログラムが見当たらないんですね。

でもって Lenovo のサイトから Rescue and Recovery 4.51 対応全言語用フルインストールファイル (594MB) をダウンロードして試したのですが e145 の Windwos8 にはインストールできませんでした。あたた。

と、いうことで 今のところは SSD 化することもできずリカバリーメディアを作成することもできない状態なのでとりあえず 480GB ほどある Windows8 パーティションを縮小して FreeBSD 用の領域を 230GB ほど確保したところで一日目の作業は終了。となったのでありますf(^^;;。

 
さてさて。今回購入した Lenovo Thinkpad Edge e145 は勢いで”赤”を購入してみました。 Lenovo Thinkpad X100e と比較してみます。

IMG_6057_ThinkPad_e145_2

まず、大きさが目につきましたね。と、いうか X100e のほうが「あ。こんなに小さかったんだ。」と感じました(右側)が、それはつまりはバッテリーの部分が飛び出るか本体に内蔵されるかで、e145 のほうが奥に長い(左側)のはバッテリーのせいなのね。と、いうことが解ります。

筐体ですが、これが随分と違うんですね。 X100e のほうはプラスチックボディーなんですが、 e145 は一応鉄製というかブリキというかプラスチックでは無い素材というかを利用しています。

どっちが良いか?聞かれれば e145 のほうが好きかなぁ。赤だからかもしれませんけど;-)。

IMG_6054_ThinkPad_e145_1

と、いうことで第一回目はこれにて終了にします。 e145 の次のネタを書くのは Windows8 か、もしかしたら FreeBSD/amd64 9.2-RELEASE をインストールしたときになるかと思われます;-)。

11月 032013
 

OS X Mavericks にしてしばらく使っていたのですが、 iTunes は iOS デバイスとカレンダー同期してくれなくなったんですね。iTunes の[概要]タブから「スケジュール」の項目が消えています。
と、いうことは iCal のスケジュールの情報は iCloud 経由で同期しろ。ってことなんですね。いやー。Apple も google みたいなことしてくれますなぁX-(。

このブログにも以前に書いているのですが、スケジュールは google に預けたくないし、当然 Apple にも預けたくない。そーいう人にとって、今回の Mavericks の iTunes の仕様変更は改悪ですね。困った困った。

さて、ではどうするか? と言えば、僕は自分で CalDAV サーバを持っているのでそれを利用することにしました。

CalDAV サーバを Mavericks の iCal と iPhone4・iPhone5、あと Thunderbird の Lightning からアクセスして参照・更新すれば一応は OK な状態になりますね。

今までは家の中専用で利用していた CalDAV サーバを SSL 化してグローバルからでもアクセス可能な状態にします。そして、 iCal・iPhone4・iPhone5・Lightning から接続テストをしてみます。が、 iOS もかぁなりクセがありますね。けっこう orz 的な事態になったのであります・・。orz。

今回はこの辺りの顛末についてちょっと書いてみます。

1. CalDAV の SSL 化
CalDAV 自体のインストールと設定については以前のエントリに書いたのでそっちを参照してください。あ。一点だけ。
古いバージョンの davical-0.9.9.4 から davical-1.1.1 にバージョンアップするとデータベースの互換性がなくなるようで、サクっと portmaster とか走らせると痛い目に遭います。
iCal とか Lightning で ics 形式のバックアップを取ってから davical とか postgresql などを一旦消してバージョンアップして、1.1.1 で動く状態にしてからバックアップした ics ファイルをインポートすると今度はサクっと動くようになります。 postgresql にデータが残っている状態でバージョンアップして『それを潰さないように』などと思っているとダメっぽいです。

さて本題。 CalDAV サーバと言っても基本的には httpd を httpsd とするだけなので、あと、自分しか利用しないのでヲレヲレ証明書で行きます。 FreeBSD 的には以下のコマンドを打つだけで簡単に SSL 化できます。

# cd /etc/ssl
# openssl genrsa -out ./server.key 2048
# openssl req -new -x509 -days 3650 -key server.key -out server.crt
# openssl x509 -in server.crt -out server.der -outform DER
# cd /usr/local/etc/apache22/
# ln -s /etc/ssl/server.crt
# ln -s /etc/ssl/server.der
# ln -s /etc/ssl/server.key

 
server.crt を作成する場合に色々聞かれてきますので値を入力します。server.der はブラウザにインストールするといちいち「このサイトは怪しいぜぃ。」って聞かれなくなります。

このオペレーションだと apache22 の SSL 化の設定は非常にラクチンですね。 httpd-ssl.conf は以下の部分だけ直すと作業は終了です。

#   General setup for the virtual host
DocumentRoot "/usr/local/www/davical/htdocs"
ServerName ical.running-dog.net:443
ServerAdmin takachan@running-dog.net
ErrorLog "/var/log/httpd-ssl-error.log"
TransferLog "/var/log/httpd-ssl-access.log"

 
あとは apache22 を再起動して作業は無事完了。各クライアントからアクセスして動作確認します。基本的には以下の URL で ics ファイルが取得可能な状態となるはずです。

https://ical.running-dog.net/caldav.php/takachan/home/

ここ、重要ですからねー。覚えといてくださいよー;-)。

 
2. iCal の設定
iCal は OS X に付属のカレンダーアプリです。「環境設定」→[アカウント]から”+”で追加します。 SSL で追加しましょう;-)。
[サーバ設定]タブでは CalDAV サーバの FQDN と URL を書きます。サーバパスは “/caldav.php/takachan/” を指定します。 CalDAV のコントロールパネルで他にカレンダーを設定した時に /home/ の部分が任意のパスとして生成され iCal 上に表示されるようになります。

 
3. iOS デバイスの設定
僕は手元に iPhone5 があって、それは既に iOS7 にしているのですが、このカレンダーアプリはどえりゃーやっかいでした・・。 Maverickes の iTunes も iOS7 もひでーことだぁ。と、知ることになるんですけども。

iOS の場合はまず、設定アプリから「メール/連絡先/カレンダー」を選択し「アカウントを追加」→「その他」→「CalDAVアカウントの追加」を選択し情報を入力します。
「サーバ」は FQDN のみで OK。「詳細設定」で色々指定してあげます。 SSL を有効にしてから「アカウントURL」に上記の URL を指定します。以上で設定は完了。次にカレンダーアプリを開き、しばらくすると新しく登録した CalDAV のアカウントが見えるようになります。うふふ。これでカレンダーの同期が完了だぁ;-)。

が、しかし・・。落とし穴はここからでした・・。orz iOS のカレンダーアプリは default のカレンダーが”カレンダー”として自動的に登録されるんですね。上に書いた URL 覚えていますか? CalDAV の default のカレンダーのパスなんですけども。もう一度書きますね。

https://ical.running-dog.net/caldav.php/takachan/home/

しかし、iOS のカレンダーアプリはここを参照してくれなくて、勝手に EUI-64 でパスを生成してそこに”カレンダー”ってタイトル付けて、そこにしかアクセスできないんですね・・。URL 的にはこんな感じ。

https://ical.running-dog.net/caldav.php/takachan/DE1A314-92BE-4518-A56E-B7138819A30B/

僕的には iOS のカレンダーアプリも /caldav.php/takachan/home/ を参照して欲しいのだけどここは見てくれない。で、新規にカレンダーを作成しようとするとまたまたサーバ上に EUI-64 のパスを作ってそこにタイトルを勝手に付ける仕様になっています。

とりあえず iOS はここで一旦終わって、次に Lightning の話を先に書きます。

 
3. Thunderbird Lightning の設定
Lightning は昔から利用しているしここにも何回かエントリとして登場しました。

Lightning でカレンダーを利用する場合には default の URL である

https://ical.running-dog.net/caldav.php/takachan/home/

を記述すると無事にカレンダーが表示できるのですが、上の iOS デバイスのカレンダーアプリが”カレンダー”と認識している EUI-64 なパスにしかアクセスできないので、Lightning に指定したパスも変更してあげる必要があります。まぁ、http:// から https:// に変更する必要があるので、この際テマは一緒かー。みたいな気はするんですけどね。

 
ちなみに、Lightning の場合はパスを /caldav.php/takachan/ で指定するとその配下の全てのカレンダーを表示してくれます。
Mavericks の iCal のパスは無条件に /caldav.php/takachan/ になって、配下のカレンダー全てを表示してくれます。
iOS の場合は無条件で UEI-64 のパスを掘って”カレンダー”とラベルを付けてそこにしかアクセスできません。 iOS 上で新規にカレンダーを作成するとそれは閲覧・更新可能な状態となりますが、自分で作成したものしか見えずに他のアプリで作成したカレンダーは見えません。
そー考えると iOS のカレンダーアプリが一番ワガママですね。

 
と、いうことで iTunes が iOS デバイスと同期できなくなったというのが一番大きな問題点なので、そこを Apple に何とかしてもらわないとお話にならないですね。一応、「iTunesの意見/感想を送る」から『カレンダー同期復活してくれー。』とは送っておきましたけどね。

CalDAV 経由ではなく、もっとスマートに同期できる方法があったら教えて頂きたいものです。