1月 292017
 

MacBook 2009 に OS X El Capitan をインストールして利用しているのですが、最近になって 10.11.6 のアップデートが出ているのを知ったのでロクにバックアップも取らずにバージョンアップしました。
ただ Time Machine は動かしていたので、最悪そこからバックアップできるので良いかぁ。と、いう漠然としたモノはありました。

Mac App Store からアップデートを実行。その後リブートしたことろで、なんとっ!! OS イメージが見つからない。などとなり、リカバリーモードで起動しました。orz

この時点でガクゼンとしているのですが、リカバリーモードのメニューに「Time Machine から復旧」というのがあったので 10.11.6 アップデートを適用する前の状態にしてなんとかモトの環境に戻ったのでありました。ふぅ。

ここまでが第一段階。

 
このあと、El Capitan を使い続けるも Mac App Store が「10.11.6 にアップデートしろー。」などとしつこく言ってくるので『しょーがねぇなぁ。もう一回トライしてみるかぁ。』と、いうことで再実行。

 
ここからが第二段階の始まり;-)。

二回目の 10.11.6 アップデートは無事にインストールできたようで『あれ?一回目の失敗はなんだったんだぁ?』などと思いつつ、再起動後に現れたログイン画面からログインし、フツーにアプリを起動するのですが SSL 通信を必要とするアカウントにおいては全てパスワード認証エラーが発生するようになりました。あれ?

ウェブで調べてみると OS X のバージョンアップのタイミングで SSL 証明書ファイルがぶっ壊れる可能性がある。というのを発見。

iCal の https:// な CalDav サーバに接続してカレンダーの管理を行うアカウントでは認証の問題で接続できなかったり、 メールアプリ の全てのアカウントがログインできなかったりと、確かにそんな感じの気配はする。
しょーがないのでキーチェンから SSL 証明書を何個か削除して再起動を数回繰り返したら今度はログイン後の全てのアプリの動作が緩慢になってしまった。

 
いよいよ第三段階に突入です;-)。

ログイン後、アプリを起動すると 2,3 分後に起動したり、メニューのウィンドを出そうとすると同じくらい待たされたり、アプリ終了時にも待たされる事態が発生し、全く使えない状態。

試しにリモートから ssh で El Capitan にログインするとサクサク動作し、ロードアベレージを確認するも特に問題は無いみたい。

どーしたモンかいのぉ・・。

などと悩みつつひらめいた。b(^^)。 片っ端から怪しそうなプロセスを kill してしまえ。と。
リモートから ssh した端末はサクサク動作するので sudo して kill -9 PID で原因を特定していきます。

まずは OneDrive ・ DropBox ・ google 系のアプリなど。次に iTunes や iCal ・ Safari などの Apple 系のアプリ本体とヘルパーアプリなど。それでも特に問題解決にはならなかったので、おやまぁ。などと思い ps -axwww などと打つと ATOK for Mac のプロセスが動作していることを発見。こいつを kill したけど、すぐに起動するので結局 /Library/Input\ Methods/ATOK29.app/ ディレクトリを強引に移動しました。

 $ sudo mv /Library/Input¥ Methods/ATOK29.app /Library/Input\ Methods/ATOK29.app_

 
そーなのです。僕は ATOK Passport で ATOK for Mac 2016 を利用している JustSystem の正規ユーザなのであります;-)。

上記のコマンド実行後に MacBook を再起動すると、おぉっ!! 緩慢な動作がキビキビ動くようになった!! これにて一見落着かぁ?などと思うわけであります。そう。サクサク動く状況では ATOK for Mac のプロセスは起動していない状態なのであります。

想定できる原因としては SSL が利用できない(SSL 証明書がぶっ壊れた)状態で ATOK for Mac を利用していると、 ATOK は何かしらの通信を SSL で行うが、その通信ができなくて問題が発生し、ウィンド上の全てのアプリケーションの動作が緩慢になってしまったのでしょうなぁ。恐るべしインプットメソッド。って感じがしないでもないですが。

 
このあと、インターネット上の情報を探しまくると El Capitan 10.11.6 統合アップデート というのがダウンロードできて、それを利用してもアップデートできる。ということを知ったのですが、ダウンロードを三回試して、三回ともチェックサムエラーが発生したのであきらめました。

 
と、いうことで第三段階の問題は ATOK が引き起こしていたとしても、結局のところ SSL 証明書の破損については何の問題解決にも至っていないワケでして・・。

しかし、今度は画面上のアプリはサクサク動くので iCal のカレンダーやアドレス帳のバックアップは取ることが可能な状態です。ふぅ。

あ。僕は iCloud はあまり使っていません。カレンダーやアドレス帳は iPhone とは同期するけど iCloud には上げていない。メールは imap-ssl を利用しているので実データは持っていない。

iTunes の楽曲と 写真アプリ で読み込んだ写真・動画は外付け HDD に保存しているので MacBook 本体には保存していない。
バックアップは必要最小限で済みます。

 
で、第四段階に突入かぁ?

なんか、SSL 証明書が壊れているとしても、他にも色々ガタが来ているだろうと思われるので『この際』でもあるし、遅ればせながら macOS Sierra に移行することにしました。

Mac App Store でダウンロードは完了していたのでそのまま実行。目指すのはクリーンインストールです。
クリーンインストールを行うためには、まず一回目に上書きアップデートする必要があります。多分、リカバリー領域に Sierra のインストールイメージを書き込む必要があるのでしょうなぁ。

上書きインストールで El Capitan で破損した SSL 証明書は無事に復旧したようです。が、目指すのは Sierra のクリーンインストールです。再起動して Command+R で起動し、 HDD の内容を一旦全部消しクリーンインストールで事なきを得たのでありました。

ふぅ。何とか復活しましたが、このタイミングで macOS Sierra にするとは思わなかった。 Apple の策略にまんまと引っかかったのかな?

 
最後にですが、クリーンインストール後の SIerra での復旧について少々書いておきます。

まず自分で、手動でバックアップして、復活させたのは $HOME の Desktop/ Downloads/ Mail/ Music/ Documents/ Movies/ Pictures/ のみです。あと /usr/local/epkg/ も復旧しています;-)。
そして保存した iCal のローカルカレンダーとアドレス帳データを戻しました。

メールのアカウントは一から設定し直しかぁ。ウンザリだなぁ。などと思っていたら、 iPhone と同期しているアカウントについてはクリーンインストールなのに自動的に復活していました。あと iCal の CalDav アカウントも復活していました。

更に驚くのが safari を起動したときなのですが、なんとっ!! ブラウザに記憶させていたサイトにアクセスするためのログイン ID やパスワードがちゃんと記憶されている。これは多分キーチェーンを iCloud で保存しているからなんでしょうなぁ。かなりラクチン。と、いうか助かりました;-)。

iCloud には相対的には保存していないのに、また iPhone のバックアップはローカルに保存しているのに復活しました。楽だったので助かった。と、言えばとの通りなのですが、元データはどこから取ってきたんだろう? ちょっと心配だ・・。

 
と、いうことで、今回のエントリーはほぼテキストのみな状態になってしまいましたが、 El Capitan 10.11.6 アップデートに失敗して、その後 macOS Sierra にバージョンアップした顛末をまとめてみました。

注意点としては

・正式アップデートで SSL 証明書ファイルがぶっ壊れる場合があるのかもしれない
・ATOK for Mac が原因でウィンド上のほぼ全てのアプリの動作が緩慢になる

の二点でしょうかねぇ。

10月 052016
 

OSX を利用しいて Mavericks の次のバージョンである El Capitan そして、最新 OS である Sierra に至っても WoL が動作しない。と、いうのはある意味 Mac 使いにとっては有名なお話です。ググるとドドドと WoL もしくは Wake Up On Lan が動作しない。 WoL マジックパケットをブロードキャストに投げても Mac が目覚めてくれない。と、いうのは今となっては常識?

悲しいことなのであります。

ウェブで検索すると、調べた人は本当に調べていて NIC のカーネルモジュールを交換したり、各種設定を色々調査したりしているんですが、解決策は見当たらずに Apple に対してバグレポートを送った。とか、見受けられるんですけども・・。

僕はまだインストールしていないのですが、海外のサイトでは macOS Sierra でもやはり WoL が動作しない。と、いう書き込みが見受けられます。もーダメダメじゃーん・・。 orz。 って感じがすごくします。

ただ、一点だけ、回避策を発見しました。今回はそれについて書いてみたいと思います。

 
まず、先に結論を書いてしまいますが、とある技・道具を利用すると WoL が動作するようになります。それは・・。

USB NIC を接続して USB NIC の MAC アドレスに対して WoL マジックパケットを送る。という方法です。

簡単に言うと、Mac 本体の NIC では WoL マジックパケットを投げても受け取ってくれなくて Mac は起き上がってくれないのですが、 USB NIC を接続して OS X に認識されたモノであれば、無事に WoL が動作してくれます。

 
と、いうこどて、今回試した USB NIC は全部で四つ。まずは写真から。

img_5247_elcapian_usb_nic

上から順に、製品名もしくは usbconfig の結果を掲載します。 usbconfig は FreeBSD のコマンドで、製品名・ベンダ名を表示してくれます。

1. PGENET10 Xircom Inc.
2. BUFFALO LUA2-TX LUA2-TX
3. vendor 0x0b95 (product 0x772a vendor 0x0b95)
4. USB Ethernet (product 0x7720 vendor 0x0b95)

1. と 2. は随分と古い USB NIC で、共に USB1.2 対応、 1. は 10MBase な NIC です。 2. は 100MBase-T ですが USB1.2 なので 12Mbps 程度しか出ません。これらは El Capitan では認識してくれませんでした。

3. と 4. は FreeBSD では axe0 で認識され ue0 で動作します。これらは El Capitan でも認識され、 en3 とか en4 で認識されました。
ちなみに僕の持っている MacBook の場合 en0 は Giga NIC 、 en1 は Wi-Fi NIC です。

 
さてと。 MacBook に 3. もしくは 4. の NIC を USB で接続して、ifconfig -a で認識されことを確認し、そして MAC アドレスを更に確認して、あとは WoL マジックパケットを投げるだけです。あ。その前に SleepNow しますが。

と、いうことで無事に WoL が動作して MacBook は目覚めたのでありました・・。

ちゅーとこは、つまりはオンボード NIC に問題がある。と、いうことですね。 Sleep 中はオンボード NIC まで Sleep してしまっている。と、いう認識で良いのかな?
実は WindowsOS も 7 まではスリープ中でも NIC に電源供給されていたんだけど 8 以降では default では電源供給されなくなり WoL に対応しなくなっています。

それと似たような動作かな? 困ったモノです・・。

と、いうことで新しい Apple の PC OS 、それはつまりは El Capitan 以降になるんですけども、その場合には USB NIC を付けて、そこに WoL マジックパケットを投げれば大丈夫。と、いうことになるかと思われます。

 
あ。 USB NIC には IP アドレスが付加されている必要はありません。 ifconfig en3 up などで、アップしているだけで動作します。

ケーブルを一本余計にはわせる必要はありますが、今のところの回避策はこれしか考えられないですね。
ちなみに USB NIC は WoL マジックパケットを受信するだけに利用するので安いモノで十分です。高価なモノは必要ないです。僕は過去に確か、アキバで 500yen くらいで買ったものが 3. や 4. だったりします。

 
このエントリを読んだ Mac ユーザで、どうしても WoL したいという人は USB NIC で試してみてください。

決してカッコよくは無い解決策ではありますが・・。

3月 212016
 

この間「SoftBank SELECTION SE-5000HR を購入してみました。」というエントリを書きました。いよいよ不毛な、とりとめもない、お金がジャブジャブ消えていきそうなハイレゾ音楽に手を出し始めてしまったか? などと、思っているんですけども・・。

と、いうことで、その続編ですが、イヤホンに飽き足らずいよいよスピーカーを購入してしまいました・・。はあぁ・・。
購入したのは ONKYO GX-70HD II の白バージョンです。一応ハイレゾ対応のスピーカーのようですが、 DAC は搭載していません。

届いたのを開けたのはこんな感じ。

Hires_Sperker_1

一番右にあるのは今まで利用していた BOSE の MM-1 です。もう 14,5 年は使っているかと思われますが、ハイレゾ環境を手に入れるために交換です。

で、机の上の写真です。

Hires_Sperker_2

真ん中にあるのは 21.5 インチのフルハイビジョンディスプレー。MacBook は立てて、ディスプレーの裏にあります。右側の NotePC は ThinkPad E145 です。 FreeBSD と Windows10 のマルチブート環境。
左側は Diginnos DG-D08IWB 32GB で Windows10 が動作しています。付け加えて言うならば DG-D08IWB 32GB のサウンドチップはハイレゾに対応していません。

そーしてみると、今回購入したスピーカーの大きさが良く解ります。ちょっと大きすぎかなぁ・・。

 
さて。このスピーカーはハイレゾを聞くために購入しました。あ。あんまりお金をかけずにハイレゾ環境を手に入れるために四苦八苦しているんですけどもねf(^^;;。
あ。僕はまだ手元にハイレゾ用 USB DAC は持っていません。既存の環境で頑張ってみることにします。

まず、手元の MacBook は Model Identifier: MacBook6,1 です。ポリカネードのヤツです。ここに OS X ElCapitan がインストールされていますが、ハイレゾ音楽を再生するためには設定を変更します。

アプリケーション -> ユーティリティ のフォルダの中に「Audio MIDI 設定」というアプリがあるので、これを起動し、ハイレゾ設定をします。

Hires_Sperker_4

これで、iTunes で再生する音楽は良い音が出るのかなぁ? しかし、 flac は再生できないので何かしらアプリが必要になります。探してみると色々あるようで、まずは App Store で VOX というアプリをダウンロードしてきます。アプリは無料でアプリ内課金があるようですが、インターネットラジオ局をダウンロードするためにアプリ内課金があるようで flac を聴く場合にはそのまま利用可能です。

これで flac を再生する環境が整い、 OS X でもハイレゾが行けそうです。

 
続いて Windows マシンですが、ThinkPad E145 を利用します。デスクトップな PC も持っていて、それは PRIMERGY MX130 S2 なのですが、サウンドカードが付いてない (HDMI 経由で音を鳴らしている) ので今回は出番無しです。 DC -> wav -> flac 変換用に利用するのみです。

ThinkPad E145 は Windows10 がインストールされていますが、コントロールパネルから「サウンド」設定を呼び出して「ヘッドホン」を選択し [プロパティ] から [詳細] のタブで『2チャンネル、24ビット、19200Hz (スタジオの音源)』を選択してハイレゾ対応にします。
アプリはフツーにインストールされている WMP やストアアプリの Groove で再生可能です。 Windows10 は既にハイレゾ対応。と、いうことですね。

Hires_Sperker_3

これで OS X El Capitan も Windows10 もハイレゾ対応になりました。スピーカーもあるので早速再生することにします;-)。

あ。今回購入した GX-70HD II は二系統の入力があるので、一個は OS X 、 もう一個は Windows10 で。

今回試聴に利用するコンテンツ楽曲は mora のサイトで以下の楽曲が無料でダウンロードできます。

  • you (mora ver.) macaroom
  • エンドロール 赤イ瞳
  • まちびとの唄 inspire:tion
  • VOICES Xperia
  • me. ジャミーメロー

音質的にはどれもビットレート 4000kbps オーバー、サンプリング周波数 96kHz、量子化ビット 24bit の楽曲です。

これで全部そろったかな? ハイレゾ対応 USB DAC はないけど、 PC のサウンドチップ及びドライバ任せにします。

 
さてと。実際にハイレゾ楽曲を聴いてみた感想ですが、比較対象は同じくハイレゾ対応の、イヤホンですが SoftBank SELECTION SE-5000HR と、してみたいと思います。

僕の個人的な感想ですが、ハイレゾ楽曲はドンシャリな味付けのイヤホンやスピーカーには向いていないと思っています。ドンドンとベース・バスドラの音が来ると高音部分がかき消されてしまう雰囲気が感じられるので。

そして、今回のスピーカーですが、イヤホンの SELECTION SE-5000HR と比べるとドンドンと低音部分も十分に響いてくれます。まぁ、比較がイヤホンとなのでそう感じる部分もあるかとは思いますが。

BOSE の MM-1 とは比較しません。どっちが良い音だ? と聞かれた場合、聴こうとしている音楽がハイレゾ楽曲なので MM-1 にはちょっと荷が重いかな? と思っているので。

GX-70HD II にはトーン調整つまみが高音用と低音用の二つあります。これで調整して自分好みの音にするのが良いと思います。

以前の僕であれば低音ツマミは二時くらい(短い針)、高音は11時くらいを指すように調整していたと思いますが、ハイレゾ楽曲を聴くようになって低音部分は必要なくなりつつあり、高音ツマミは一時の辺り、低音つまみは10時の辺りを指すようにして自分の好きな音になったかなぁ。と思います。

GX-70HD II 自体は default でも随分と低音が響くのだなぁ。などと思ったのが素直な感想です。が、他の人のレビューを見ると『低音が足りん。』と、いう人はいるようですね。聴いた楽曲はハイレゾかな? 44.1kHz・16bit な楽曲かな?

あと、ハイレゾは音の広がりがあるなぁ。などと、僕は思っている(もしかしたら、そーいう曲を好んでハイレゾ化しているのかな?とも思えますが)ので、チャンネル数(ボーカル・ギター・ベース・ドラム・パーカッション・ピアノ・その他諸々多チャンネルで個別に録音している楽曲)が多くて左右から様々な音が出るのが良いなぁ。と、思っているのですが、このスピーカーは一応忠実に再現してくれているようです。

 
と、いうことでそろそろシメに持っていきますが、PC に接続するスピーカーとしてはサイズが大きすぎます。まぁ、今回はなんとかなりましたが、一点気になります。

音はハイレゾを聞くためには、僕は良いと思います。お前の耳で高音まで拾えるのか? と言われれば、多分無理だとは思うのですが、聴いた感じ雰囲気ではハイレゾっぽい音がしていて、音の広がりがあるので今回はこれで満足。と、いう風に思っています。

 
あ。今回は NTT-X で購入し、11,000yen ちょっとで手に入れることができました。それは嬉しい点です;-)。

次回のハイレゾネタはもう一歩踏み込んでみましょう;-)。

 
2016/03/31 加筆
このスピーカーですが、装備についてちょっと書いておきます。まず、電源についてですが、本体に AC 部分を内蔵しているのか、メガネケーブルのみなので、電源周りがすっきりするのが嬉しいです。

あと、右の本体裏側にオン/オフスイッチがあるのがありがたい。普段利用しないときとか、ケーブルを接続しようとすると大きな音でノイズが入るのですが、その場合にはオフにすることができます。

以上二点は嬉しい配慮だと思いました。

 

2月 132016
 

ふぅ。久しぶりのエントリじゃないかな? 最近はネタがなかったので・・f(^^;;。

さて。僕は Mac OS X を利用していますが、 EL Capitan は直ちにインストールしました。そして、ついこの間クリーンインストールしまして、今はユーユージテキな OS X 生活を送っているんですが。

そんなこんなで Yosemite から El Capitan にバージョンアップしたら /usr/ は書き込み禁止になっていて、パッケージシステムである epkg は /usr/epkg/ にあったのですが、サクっと消されてしまいました。
幸いにしてバックアップを取っといたのでそこから復旧させ /usr/local/epkg/ に設置しましたが、色々動かないので直して、利用していました。

あ。僕は OS X のパッケージシステムとしてはもう随分長いこと琉球大学の EPKG を利用していました。以下が参考 URL です。

http://ie.u-ryukyu.ac.jp/darwin2/
http://www.boarderz.com/darwin/

しかし、開発をやめてしまったようですね。

まぁ、今まで /usr/epkg/ にインストールしていたのにいきなり、/usr/ が書き込み不可になり、サクっと消されてしまったから悲しい・・。

僕自身何個かのパッケージを作っていたので、それをそのまま延長線上で利用したいので、せっかくだから epkg を El Capitan 対応にしてみました。

以下の URL からダウンロード可能です。

http://icmpv6.org/EPKG/epkg-el-capitan-20160212.tgz

ダウンロードしたものは /usr/local/ に tar で展開してください。

# ftp -a http://icmpv6.org/EPKG/epkg-el-capitan-20160212.tgz
# tar xvzfp epkg-el-capitan-20160212.tgz -C /usr/local/
# cd /usr/local/epkg/BIN/
# cp -pr ./epkg /usr/local/bin/

 

動作は今までの epkg と一緒です。

変更点は以下の通り

  • /usr/local/ 配下で動作するように改修しました。
  • 今まで琉球大学に取りに行っていたファイルを icmpv6.org に取りに行くように変更しました。
  • アップロードコマンドは動作しません。
  • ユニバーサルアプリはやめて、アーキテクチャは全て x86_64 に統一しました。
  • ただし ub-root を使っているので、ユニバーサルアプリなんだけど x86_64 アーキテクチャしか無いモノもあります。それは未来への拡張性のために残しているのですが、お許しください。

ファイルを取りに行くのは http://icmpv6.org/EPKG/ です。この下に色々フアイルがあるので見てください。

今ところ、自分で必要なものしかパッケージは作っていません。以下はそのリストです。

comms/jerm: 8096,1
devel/autoconf: 2.69,1
devel/automake: 1.15,1
devel/gc: 7.4.2,1
devel/gettext: 0.19.6,1
devel/libatomic_ops: 7.4.0
devel/pkgconf: 0.9.12,1
editors/emacs: 24.5
games/sl: 5.01,1
japanese/lv: 4.51,1
japanese/nkf: 2.1.3,1
mail/compface: 1.5.2,1
mail/mew: 6.7,1
net/w3m: 0.5.3,1
net/wget: 1.16.3,1
security/stunnel: 5.29,1
sysutils/smartmontools: 6.4,1

 
epkg の使い方については epkg をオプション無しで実行してください。また、 tar 玉の中に RERADME.epkg を置いといたので多少の使い方は解るかと思います。

 
そもそも、どうして epkg を使うようになったのか?と、いうと、雰囲気的には FreeBSD の ports 的だったので楽ちんかなぁ。などと思っていたんですけどもね。

で、他の人が作ったパッケージの中に自分が利用したいものが無いことがあったので何個か追加してきました。

そのときに OS X ではどのようにフリーソフトウェアをコンパイルしたら良いのか解って、すごい勉強になりました。 epkg の SEPKG を展開すると Makefile などが出てくるのですが、それを見て、どうやって Xcode などのコンパイルオプションを付加したら良いのか、ユニバーサルバイナリはどうやって作ったら良いのかなど、色々と勉強になりました。

バイナリパッケージを利用する。と、いうよりは、本当に FreeBSD の ports みたいに『自分でコンパイルしてインストールする』ために利用していました。

各パッケージの更新は基本的に FreeBSD の ports に準じたいと思います。 FreeBSD の ports-CURRENT が新しくなったら epkg のパッケージも更新します。security/stunnel なんかは良い例で、そんな感じで追随しているので一応最新バージョンが提供できています。

devel/pkgconf も FreeBSD の ports に合わせたので取ってくるソフトウェアも epkg の本家のものとは違っています。

 
パッケージシステムを利用していて何が良いかと言われれば、自分でソースからコンパイルしてインストールしたものを削除する場合に綺麗に削除できないのですが、パッケージシステムの場合はサクっと削除できる点が良いですね。 epkg del nkf とか実行すれば、サクっと削除されます;-)。

 
何人くらいダウンロードして利用してくれるのか、分かりませんが、自分一人で利用するのもなんだな。などと思ったので公開した次第です。どうぞご利用ください。

また、他に必要なパッケージがありましたら作ってみますのでご要望などありましたらコメントして頂くなりメールなりをお願いします。
僕の OS X の環境には Xorg は入ってないので X11 系のパッケージは作れませんけどね;-)。

2月 272015
 

今更感のあるネタで恐縮してしまいますが・・。まぁ、懲りずに読んでやってくださいf(^^;;。

今回のやりたいことは以下です。きっと、僕以外の誰もが、デジカメで撮った写真に GPS 情報を書き込みたい。と、思っているに違いありません。多分・・。

  • デジカメで撮った写真を iPhone6 に取り込む。
  • Windows8.1 タブレットを持っているのでそれで見られると嬉しいなあ。
  • デジカメで撮った写真には GPS ポイントが付いてないのでどうしよう・・。

これらの問題を、母艦である PC もしくは Mac 無しで完結してみよう。と、いうのが今回のエントリの趣旨でしょうかねぇ。
基本的にはデジカメで撮った写真にも GPS (Exif) 情報を付加したい。と、いうのが事の発端では有りますが。

では順番に見ていくことにしましょう;-)。

 
1). デジカメからの取り込み
僕が持っているデジカメはちょっと古いですが、比較的高性能な Canon s90 です。ここに Toshiba の FlashAir の 8GB の SD カードを利用しています。

こんな感じですね。

IMG_0973_camandGPS_1

でもって FlashAir Wi-Fi 経由で iPhone に取り込んでいます。 iPhone6 には FlashAir 用のアプリがあるのでそれを利用し Wi-Fi 経由で iPhone6 に取り込むことができます。

IMG_0974_camandGPS_2

ふむ。 iPhone6 に取り込むことができました。
ここではその方法に付いて詳しくは書きませんが FlashAir を利用すると比較的容易に取り込むことができます。

 
2). Windows8.1 タブレットで見る
Windows8.1 なタブレットは ドスパラの DG-D08IWB 32GB を持っています。ここに Apple 謹製の iCloud をインストールし Apple ID でログインしてから写真を同期するとフォトストリームが降ってきます。

すると iPhone6 側ではフォトストリームをオンにしておく必要がありますね。

あと、 iPhone6 の写真を iCloud のフォトストリームにアップロードするためには Wi-Fi 環境が必要になるので、公衆無線 LAN などに接続してからでないとアップロードできない。と、いう点には注意が必要です。

Windows8.1 なタブレットに iCloud フォトが降ってくればあとは(iPhone6 よりは大画面の) Windows8.1 タブレットで確認すれば良いと思います。

あう。あちこちで騒がれているようですが Windows 版 iCloud では時々フォトストリームの同期が止まる。と、いう事象が発生しているようです。そーいう僕も何回か体験していますがX-(。

一旦 iCloud を削除して再度インストールするとか、一旦ログアウトしてから再度ログインすると同期が復活するようです。詳しくは google などで調べてみてください。

 
3). デジカメの写真に GPS ポイント(Exif 情報)を書き込む
これも実は色々な手段があるんですよねぇ。

例えば iPhone6 上で GPS ロガーアプリを起動しておいて、テクテク歩き回りつつデジカメで写真を取り、自宅に帰って母艦で iPhone6 で記録したロガーとデジカメで撮った写真をとあるアプリに食わせて、そのアプリでは日付と時間でマッチさせて自動的に GPS ポイントを写真に書き込む。

なんてのがあります。しかし、これ、実際にやってみましたが、全然長続きしません。 2,3 回やってあきらめてしまいました。いちいちやってらんねー。みたいな・・。

僕的には FlashAir で取り込んだ時にその場所の GPS ポイントを Exif として書き込んでくれる機能があっても良いのになぁ。などととも思えるんですが。

東芝さん とか、他の Wi-Fi SD カードメーカの方、この案是非とも採用して欲しいものです;-)。

 
と、いうことで、ではどうすんべな? とか思い悩んだのですが iPhone アプリには写真に GPS ポイントを書き込んでくれるヤツ(アプリ)が何個かあるようなので色々試してみました。

で、僕が中々良い。と、感じたのは GeotagMyPic というアプリです。

IMG_0975_camandGPS_3

カメラロールにある写真を選択し、地図を表示させてピンを移動して確定し、そして写真に書き込む。という動作です。

作業は非常に簡単で、旅先での暇な時間帯、例えば、電車や(運転中ではない)車の中とか、温泉から出て相方が出てくるのを待っている時間とか、宿の晩ごはんの時間になるまでの空いた時間とか、あぁ上げればキリが無いですが。に、デジカメで撮った写真を FlashAir で取り込んで GeotagMyPic で GPS ポイントを書き込んでいく。と、いう感じになるでしょうか。

旅の現場なのでほんの一時間前に撮った写真はここだ。などと、一応覚えていますしね。なので後から GPS ポイントを書き込んでもそんなに苦痛ではないように感じました。

しかし、このアプリは 100yen のアプリ内課金があります。 100yen 出すと以下の機能が有効になります。

  • 複数の写真に同一の GPS ポイントを付けることができるようになります。デジカメの場合、一か所で何枚も写真とることがあるのでこの機能があると楽ちんです。
  • 読み込んだ写真のサイズと GPS ポイントを書き込んだ写真のサイズ同じになる。逆に言うと 100yen 払ってない状態だと、デジカメから取り込んだ写真サイズが 1Mbyte だとすると GPS 情報を書き込んで保存した写真は 400kByte くらいになってしまうんですね。
    画素数は変わらないんだけど。なので何かしらのデータが間引きされているんだと思うです。

GeotagMyPic はデジカメから取り込んだ生データはそのままに GPS ポイントを書き込んだ写真は別途保存してくれます。上書きはされません。なので母艦の iPhoto などに iPhone6 の写真を取り込んだときには枚数がドドドと増えることになりますが、まぁ、それはそれで良いことかもしれないですね;-)。

そして、このアプリの良い点は広告が無いのと、日本語化されているところでしょうか;-)。

 
と、いうことで今回掲載した環境を川治温泉に行った時にフィールドテストしてきました。

温泉一泊旅行に行くとそれなりにぽっかりとあく時間ができることがあるので、時間を持て余しそうなタイミングで、上記のような運用方法を実施する点については特に不便などを感じませんでした。

これでデジカメに GPS 書き込み機能がついてなくてもなんとかやっていけるかなぁ。今度は海外に行った時に試してみたいモノですが、その機会があるのか、ビミョーですf(^^;;。

6月 192014
 

GNOME 方面の人にはまるで興味が無いとは思うのですが、 KDE というか Qt を利用している人にとっては、ご存知な方もいるのではないかなぁ?

世の中には超軽量ブラウザというのが存在しています。 rekonq も konqueror に比べると軽量かなぁ。arora も軽量ですね。 rekonq よりも軽量なのが QtWeb というブラウザです。 arora と同じくらい軽量かなぁ。

以下が QtWeb のサイトですね。

http://qtweb.net/

ここを見ると Windows・OS X・Linux と世界の三大ウィンドを制覇しているんですけどもね;-)。で、それぞれバイナリがあるのですが、ソースコードもあるので、それを FreeBSD に持ってきてコンパイルすると FreeBSD 上でも動作するんですけども。

キャプチャはこんな感じです。

Qtweb_1

で、せっかくなので今回は QtWeb の ports を作ってみました。 arora が ports になっているのに QtWeb が ports になってないのは悲しいことですし;-)。
以下の URL にあるのでもしも「僕も私もちょっと FreeBSD 上で QtWeb を使ってみようかなぁ。」などと思った人は試してみてください。

http://icmpv6.org/Prog/FreeBSD_ports/ports-qtweb-20140619.tgz

あ。コミットするつもりはありません。あくまでノラ ports ということで;-)。

QtWeb の ports の仕様やインストール方法などをちょっと書いてみます。

o. QtWeb をコンパイルするには Qt 4.8.6 のソースコードが必要
FreeBSD の ports 的には qt4-* で色々インストールされているのですが、 QtWeb は Qt ライブラリを static link するので FreeBSD の ports 的な Qt ライブラリは必要としません。
GNOME や xfce4 な人も Qt や KDE のコンポーネントをインストールすることなく Qt コテコテなブラウザを楽しむことがてできます。

しかし、裏を返すと Qt ライブラリ部分もコンパイルするのでコンパイル時間が随分と長いです。orz

僕が作成した ports では /usr/ports/distfiles/KDE/ に Qt 4.8.6 のソースがあればそれを利用し、なければとある日本のサイトからダウンロードしてきます。詳細は files/patch-qt-src.sh を見てください。

o. ports がインストールするもの
QtWeb のサイトからバイナリをダウンロードすると、本当に QtWeb 本体のみしかパッケージングされてないのですが、僕の作った ports では QtWeb バイナリの他に icon として QtWeb.png と QtWeb.desktop をインストールするようにしています。インストール直後から KDE のインターネットメニューに表示されるようにしました。

o. QtWeb の起動
ports からインストールすると /usr/local/bin/QtWeb ができるのでそれを実行するのですが、実行後にできるディレクトリが美しくないです。以下の三つのディレクトリができます。

・$HOME/.QtWeb Internet Browser/
・QtWebCache/
・QtWebSettings/

一番上の .QtWeb Internet Browser/ は $HOME にできるので良いのですが、 QtWebCache/ と QtWebSettings/ はどこにできるかわかりません。実行したときにいるカレントディレクトリにできたりとか、ヘタするとあちこちに QtWebCache/ と QtWebSettings/ ができてしまうような感じです。orz
なお、メニューから QtWeb の設定を変更するとその内容は QtWebSettings/ に保存されます。

が、しかし、それにしてもこの二つのファイルはどこにできるのか解らない・・。orz
ソースコードを書き換えてやろうかと思ったほどですが・・。
なのでしょうがない。起動用にスクリプトを一個書きました。

#!/bin/sh

cd $HOME/.QtWeb\ Internet\ Browser
QtWeb > /dev/null 2>&1
#/usr/local/bin/QtWeb > /dev/null 2>&1
#cd  $HOME

 
$HOME/.QtWeb Internet Browser/ 配下に QtWebCache/ と QtWebSettings/ が作成されるようにするためのスクリプトです。
不便やのぉ・・。って感じなのですが、ソースコード的には browserapplication.cpp の数カ所を直せばちゃんとコントロールできるんじゃね? って感じはします。

 
こんな感じの QtWeb というブラウザなのですが、もしよければ皆さんもコンパイルして使ってみてください;-)。

 
あ。最後にですが、 Qt-Webkit は x-sjis と x-euc-jp には対応してないので文字化けします。 rekonq も konqueror も Qt-WebKit を利用しているのでやはり x-* な文字コードは表示できません。最近は少なくなってきましたが、今では僕が知っている有名ドコロは VECTOR が x-sjis を利用しているので表示できません。

この件については以前 KDE 方面で(その昔は) Nokia の Qt のコードを書いている人に聞いたことがあるのですが、非対応だそうです。するっていと同じ KHTML から派生の Apple-WebKit は独自に x-* な文字コードに対応した。と、いうことなのでしょうなぁ。

 
PC に色々ブラウザが入っていると楽しいですよ;-)。 是非、試してみてください。;-)

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月 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月 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 経由ではなく、もっとスマートに同期できる方法があったら教えて頂きたいものです。

10月 172013
 

タイトルの通りですねf(^^;;。何故か知りませんが、いつの間にか iPhone5 と iTunes 経由の iCal でカレンダーの同期ができなくなってました。症状としては以下の通りです。

o. iPhone5 のカレンダーに登録した情報が Mac との同期で iCal に情報が書き込まれない。
o. iCal のカレンダー情報は iPhone5 に無事に書き込まれる。
o. iTunes との楽曲や iPhoto との写真などの情報は正しく同期できている。

と、いうことで iCal -> iPhone5 方向のカレンダーのイベント情報は同期できるのに iPhone5 -> iCal 方向のイベント同期がいつの間にか出来なくなっていた。と、いう状態です。これは結構痛い状態でせっかく iPhone5 に登録したカレンダーの情報が iCal に読み込まれない・・。

しょーがないので以前このブログにも登場した PocketLife Calendar アプリを利用し iPhone からカレンダーのイベントを抜き出してメールで送って ICS ファイルを Mac の iCal にインポートする。と、いうほぼ無謀とおも思われる作業を延々とやっていんですけども、いい加減イヤになって来て調べた。と、いう感じです。

なお、余談ですが、僕は PocketLife Calendar の利用頻度が随分と高いので、作者さんへの敬意を表して結局このアプリは 250yen (だったかな?) で購入してしまいました;-)。

で、やはり、そのような現象に陥る人というのはいるようで、Apple のサポートページに解決方法がありました。以下の URL です。

http://support.apple.com/kb/TS1627?viewlocale=ja_JP

OS X Mountain Lion では perl のスクリプトを実行すれば良いみたいですね。そのスクリプトは内部で use SyncServices とかちょっと怪しげな perl モジュールを利用しているようですが;-)。 perl が解る人はなんとなくこのスクリプトを眺めてみるのも面白いかもしれません。『data.version ってファイルを消すのかー。』みたいな;-)。

resetsync.pl というスクリプトを実行するときに list とかオプションを付けると同期するモノを表示してくれるようです。

 
さて。僕の場合ですが、ちょっと強引とも思える以下の手順で問題を解決しました;-)。

$ cd ~/Library/"Application Support"/SyncServices/
$ \rm -r Local.*
$ cd Local
$ mv conflicts _conflicts_
$

 

上記オペレーションは良い子はマネしない方が良いかもしれません;-)。また、上記オペレーションをしたことによって同期のためのデータが消えたり動作が怪しくなっても僕は責任を持ちませんのであらかじめご了承ください。

まず ~/Library/Application Support/SyncServices/ 内の古い(と思われる) Local.* ディレクトリを削除します。
そのあとで既存の Local ディレクトリ内にある conflicts というディレクトリを一時的に名前を変更しました。

あとは iPhone5 を USB で接続して OS X と同期してみる。って感じでしょうか。 2,3 回試してみたら新たに conflicts ディレクトリが作られました。そして iPhone5 で打ち込んだデータは OS X の iCal に読み込まれるようになったのでひとまず復活した。と、言っても良いのではないでしょうか。

/SyncServices/ 自体のディレクトリを mv するとどういう状態になるか確認してみるのも良いですね。状態が変化してけっこう焦ったりしますが、 mv しただけなのでもとに戻すこともできますしね。と、いうことでこのディレクトリは iPhone と Mac を同期する上で重要な役割を果たしている。と、いうことがそこはかとなく解って来ます;-)。

今まで、 iTunes 経由の写真や楽曲などの同期は問題なく出来ていたのですが、あるタイミングからカレンダーの情報だけ iPhone5 -> iCal 方向に同期できなくなっていたのですが、これで復活しました。

けど、良い子はくれぐれもマネはしないでくださいね;-)。上記の Apple サポートの URL を熟読してください。