2014/11/17

Spotlight 復旧作業

Time Machineの調子が悪いと思ったら,Spotlight を疑うべし?かどうかは分からないけど,少なからず関係しているなという印象.Time Machineの復旧が先だったので,とりあえずそこまでは前回こぎつけた.次は Spotlight をなんとかしたい.

結構危ないことをやっていると思うので,USB メモリなどを挿して,その中に対して実験してからの方が無難です.

「索引作成にかかる時間を計算中」のまま,数日経っても進まないという状況.
恐らく,原因と思しきところは, /.Spotlight-V100/ が101GBもあること.これが何をするフォルダかは分からないが,一旦消して再構築できれば進む気がする.

ただ,Inforati の手順(Mac Spotlightの検索インデックスのデータベースを再作成する方法)に出てくる sudo mdutil -E device では,このディレクトリは消えてくれなかった.
(locak diskに対しては, mdutil -E / となる.USB等だと, mdutil -E /Volumes/xxx)
ただ,USB メモリで -E をすると,Spotlight の検索結果が一度消えて,また検索できるようになる(索引が再作成されるのだろう)ことが確認できた.で,試しに(*USBで!), /Volumes/xxx/.Spotlight-V100 を削除(/Volumes/xxx/Spotlight-V100へのrenameにしておいた)して, mdutil -E したところ, .Spotlight-V100 が再生成されて,検索も使えた.

上記手順をそのまま / に対して実行して,「索引作成にかかる時間を計算中」は無事脱出.「残り約6時間」となった.

これで,Time Machine と Spotlight が共存してくれるかどうか...
念のため(というか,基本的に不要なので),ファイルが多いディレクトリは Spotlight の対象外(環境設定からSpotlight→プライバシで指定)にした.

2014/11/12

Time Machineのバックアップが始まらない(Spotlightの罠)

Time Machineによるバックアップがしばらく作成されないという症状に出くわしました.そほれほどファイルがない Mac Book Air (10.8)は特段問題ないのですが,数十万ファイルの追加・更新がたまに発生するMac Pro (10.9)は数週間完全にバックアップされていない期間が続いていました.改めて手動でバックアップを指示しても,週末(48時間以上)経ってもバックアップが始まらない.

これはやばいということで,バックアップする外部ディスクを新しいものに変えました.とりあえず,ファイル数は多いものの初期のバックアップは成功.しばらく1時間毎のバックアップも作成されていましたが,ちょっとした解析で数十万ファイルを更新したらバックアップが始まらない症状が再発

諦めて新DISKを一度まっさらに(フォーマット)して,再度Time Machineを開始するも,,,30時間経っても「バックアップを準備中…」のまま...

再起動直後の1回目はちゃんとバックアップされることもあったけど,ダメな時もあるので根本の解決にはならず(というか,都度再起動は無理だし).

Appleサポートに参考になりそうな回答があった.

Spotlightをoffにする!?
確かに,この症状を発症すると,Spotlightで検索しても答えが返ってこなくなる.Time Machineにしても,Spotlight にしてもファイル探索なのでI/Oに負荷がかかっててしかたがないのかなぁ...と漠然と思ってたのですが,Spotlight を off にして解決した方もいる模様.

ちなみに,この時点では,コンソール.app で backupd で絞り込みをかけても何も出てこない(Airの方はそれなりに出てるけど,エラーはなさそう).

Spotlightの対象DISKから外す方法→「システム環境設定」→「Spotlight」→「プライバシー」(タブ)から,ファイル数が多いディレクトリを検索対象から除外した.

とすると,まずはSpotlightをなんとかした方が良いのか.
というわけで,Mac Spotlightの検索インデックスのデータベースを再作成する方法を参照すると,メニューバーでインデックス作成中の様子が見えるじゃないですか...Mac OS使うようになって何年経ってるんだ....と思うような基本的な無知.見ると,「索引作成にかかる時間を計算中」で明らかに固まってる.まずはこいつをなんとかせんにゃあかんね.

というわけで,先ほど Spotlight からの除外ディレクトリを指定したけど,上記ブログにあるように,一旦 DISK 全体を対象外にして,まっさらから作りなおしてもらう(ファイルが多いところは除外して)ことにする.実際,ほとんどが png 画像だったり機械的に生成したhtmlなので問題ない.
というか,Time Machineバックアップにしか使ってない外付け DISK まで Spotlight の対象になってたのか!外部 DISK 2つ(新旧 Time Machine)を対象外にして,local DISK も対象外にしたところで,メニューバーを見ると索引作成も動いていない.

そして,除外リストから local disk を外そうとしたら今度は「不明なエラーのため項目の追加または削除ができません」と...そろそろ終わりにしたいんだけど...再起動.環境設定の Spotlight から local disk を除外してちょっとお喋り(?)してる間に「索引作成にかかる時間を計算中」モードに突入.

さて,これでどうなるか...
(現状)
Time Machine → OFF (無用な負荷を減らすため)
  * ただし,1ヶ月程度前のバックアップは古い DISK に出来ている状態(USB接続はしてるけど,Time Machineとしては使っていない).
Spotlight → まっさらにして,索引作成

(追記)
NAVERまとめは色々可能性がまとめられててよさそう(未確認)

(20時間後)
Spotlight の索引作成が,「索引作成にかかる時間を計算中」のまま20時間が経過.Time Machine の方が重要なので,Spotlight の対象から local disk を外して(対象をなしにする)索引作成を止めて,Time Machine のトライに戻る.まずは,ファイルを除外しないでテスト.
Time Machine → ほぼ全てを対象に設定
Spotlight → 停止

結局,Time Machineも簡単には戻ってくれなかった.ので,
・バックアップ先をフォーマット(1ヶ月前のは別のDISKにあるので)
・ほとんどのディレクトリをバックアップ「対象外」に設定
・それでも始まらないので再起動

これで,なんとかTime Machineバックアップが「終了」するようになった.ので,対象外にしたものを1つ1つ戻して,全体(~/tmp/ は前から除外していた)をバックアップ対象にした.これで,Time Machineは復旧.

わかったこと:
・Spotlightとの関係が怪しい
・バックアップディスクを新調して,対象外を増やしたところからコツコツやればなんとかなる
(有益な解決策に見えないが...)

Spotlight はOFFのままなので,いずれやり直したい.少なくとも,/.Spotlight-V100が101GBあるという異常な状態であることは確認した.


2014/10/18

iPad2にiOS8が入らない(解決?)

iOS 8が出たっちゅうことでしたが,完全放置.兎に角今やって動かなくなった場合の対処する時間がないので.と思ってたけど,サブ機材になら入れても良いかなと思えるようになってきたのでトライ.

まずは,iPadモデルの特定方法で機種を特定(記憶力なし).最初に手に入れたやつは,iPad 2(iPad 2 (Wi-Fi):A1395)だったようである.ぎりぎりiPadの最低レベルで対象機種のようである.アップルのページはバージョン変わると書き換わってしまうので,別のリンクも記録.

実はこんな確認をする前から作業は始めてたんだけど,兎に角入らない.以下,状況.

・ソフトウェア・アップデートでフラグ立つ(現OS 7.1.1)
・既に8.0.2がダウンロード済となっていたので実行
・期待していたiCloud Driveの質問も何もなくホーム画面に戻る
・なんか変と思って確認すると,バージョンは変わらず(;_;)
・ソフトウェア・アップデートはフラグなしだけど,候補を探すと8.0.2が出てくる.が,ダウンロードまだしてないよと言われている
・ダウンロードしてアップグレードを選択
・ダウンロードのあと,同意して進むものの,長時間待たされた挙句振り出しに戻る←今3回目トライ中.

iOS 8をiPhone 4SやiPad 2に入れるとどれだけ遅くなるのか?という記事があるくらいだからアップデートそのものは出来ているのだろうが...5GBの空きか...16GBモデルなのでもしやないかもしれない...が,現在あぷで真っ最中で確認できず.

そして,,,3度目の正直.単にアップデートを繰り返したら出来た...なんだったんだ.一番たちの悪い解決方法...同じ状況にはまったら,根気よくということで...

2014/10/01

ロック(排他制御)

cronを使って一定の処理をさせたいとき,毎分に設定したいけどそうすると前の処理が終わっていなくて多重起動されてしまうという問題があります(問題ない場合もあると思いますが).これを制御するのにロックファイルを使っていたのですが,ロックディレクトリにしなきゃダメだと指摘され,修正しました.

if [ -r $lockfile ]; then
  exit 0
else
  touch $lockfile
fi
.... (script) ....
rm $lockfile

[ -r $lockfile ] && exit 0
touch $lockfile

としたくなるわけですが,まったく同時に2つ以上のスクリプトが起動された場合には両方共,ロックファイル($lockfile)が無いので処理が始まってしまいます.

これを避けるには,mkdir等の排他的なシステムコールを使うのだそうです.
mkdir $lockdir 2> /dev/null || exit $?
.... (script) ....
rmdir $lockdir

mkdir は既に $lockdir が存在していた場合はエラーになりますので処理を停止できます.たとえスクリプトが同時に起動されたとしても,mkdirで排他してくれるそうです.

ですが,スクリプトが強制終了された時にロックディレクトリが残ってしまうという問題があります.スクリプトの中で使っているコマンドが異常終了したような場合にはちゃんとロックディレクトリを後始末しましょう.

error() {
  echo $1
  rmdir $lockdir
  exit 1
}
などとしておいて,
./command || error "failed ./command"
のようなエラー制御を入れておけば良いはずです.面倒ですが.

が,それでも,スクリプトが強制終了(たとえば,rebootなどの操作)される可能性もあります.そうすると,もうお手上げでロックディレクトリが常に存在してしまうためスクリプトが動きません.これを回避するために,一定時間以上経過していたらロックディレクトリを消すというロジックもあるようですが,じゃぁ,一定時間はどれくらいだ?という問題が残ります.予期せぬ長時間処理になった場合,どうするかということになります.

が,眼から鱗な解決策が!
lockdir=/dev/shm/xxxx

RAMディスクにロックディレクトリを作成しておけば,rebootが行われた場合でもすっきりとロックファイルを消すことが出来ます.もちろん共有空間ですので,ファイル名のバッティングだけは要注意ですが.

ただし,終了した後のアプリケーションとしてのケアは別途必要ですので悪しからず.


2014/09/11

はぢめてのPython module (PIL)

とあるPythonスクリプトを貰ったら,PILモジュールってのが必要らしい.が,perlならcpanで入れるけど,pythonのモジュールの入れ方知らないぞと...いうわけで,メモ.

スクリプトを実行すると,
ImportError: No module named PIL
と言われる.

こちらのブログを参考にさせて頂いて,本家からダウンロード.OSにあったものをと書かれているが,windowsしかバイナリはなさそうなので,ソースを持ってきた.手元のOSは,Mac OS X 10.8.5 です.Mac Book Airなので,色々な噂に基いて Mavericks にはしてません.

% tar zxvf Imaging-1.1.7.tar.gz
% cd Imaging-1.1.7

BUILDMEを見ると,"for lazy programmers" のための手順として,
% python setup.py build_ext -i
% python selftest.py
となってるのでやっておく.詳しくはREADMEということなので見たところ,
% (sudo) python setup.py install
の前にやっておけということのようです.

FreeTypeが無いらしい
_imagingft.c:73:10: fatal error: 'freetype/fterrors.h' file not found
#include <freetype/fterrors.h>

MacPortsでは入っていたので /opt/local/include あたりを見逃しているのかと思ったら,/opt/local/include/freetype が無くて, /opt/local/include/freetype2 になってるのが原因だった.悩みどころだけど, _imagingft.c を修正した.

無事 selftest.py もパスしたので,ブログの手順にあるように,
% sudo python setup.py install
へ進む.

無事,動いた模様.




2014/09/04

Macでtgif(未解決)

デスクトップもMac Proに変えて,Linux環境がメインじゃなくなってきた(VMWare上でDebianは動いてる)ので,色々揃えなきゃいけない.

というわけで,tgifを入れる.gnuplotでtgif出力して整形して完成というのが流れなので論文等用の作図では必須.

が,MacPortsからあっさりは入ってくれない.

% sudo port install tgif
すると,最期に,
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_graphics_tgif/tgif/main.log を見よと出てくる.
見ると,
/opt/local/lib/X11/config/Imake.tmpl:2144:10: fatal error: ' X11 .rules' file not found
というのがあって,一番あやしい.要するにX11が入ってないか不完全なんだな.
XQuartzを入れれば良さそうなので入れてみたが,同じところで止まる.

http://littlefinger.petitepeace.net/blog/266
によると,ソースからtgifを入れればなんとかなるらしいが,取り敢えずパス.

(うまく行ったら更新します)


2014/08/29

Projで座標変換

ある1点の緯度経度からUTMに変換する方法.

proj.4 に含まれている cs2cs で出来る

% echo "140.0 36.0" | cs2cs +init=EPSG:4326 +to +init=EPSG:32654 -f %.4f
409870.9506     3984410.7881 0.0000

入力データの座標系(測地系+投影図法)は,EPSG:4326でWGS84の緯度経度座標.
出力データの座標系は,EPSG:32654でWGS84のUTM 54N.

EPSGコードは,proj.4 パッケージの epsg ファイルで確認できる

% grep -B 1 32654 /opt/local/share/proj/epsg
# WGS 84 / UTM zone 54N
<32654> +proj=utm +zone=54 +datum=WGS84 +units=m +no_defs  <>

ちなみに,ここ(Google Maps)

参考:
http://ryuiki.agbi.tsukuba.ac.jp/~nishida/lecture/GIS/proj.html

余談:
Macの場合,Ports に入っているのでついでによく使うgdalも入れちゃうのが良い.

% port install gdal

で,projも依存関係で入る.

2014/08/15

ASTER高温領域検出システムのFacebook配信開始

産総研の(仮称)地図系データバンクのコンテンツとして開発したASTER高温領域検出システムの結果をFacebookページで配信しています.始めたのは2014年8月15日だったようですが,記録&宣伝.



撮影時刻(Time):03/06 04:26:43 撮影バンド13の輝度温度: BT=335.309[K]場所:(緯度(lat),経度(lon))=(12.284,93.862)   ...
ASTER 高温領域検出システムさんの投稿 2016年3月7日

2014/07/31

gnuplotのpm3dで色を変更する

pm3dで描画した図の色がどぎついと言われてしまったので変更を試みる.

set pm3d map
set isosamples 50
set size sq
unset key
set palette rgbformulae 36,0,-36
splot [-3:3] [-3:3] x*x+y*y-9

こんな感じで青から,黒,赤と正負の値を描けるようになります.
が,クセモノはこの rgbformulae の数字.

デフォルトのまま描画する(set palette しない)とこんな色.
gnuplot> show palette
        palette is COLOR
        rgb color mapping by rgbformulae are 7,5,15
        figure is POSITIVE
        all color formulae ARE NOT written into output postscript file
        allocating ALL remaining color positions for discrete palette terminals
        Color-Model: RGB
        gamma is 1.5

なので,色を反転させようかなと思って,
set palette rgbformulae 15,5,7
としても,全く思ったようにいかないというか,全然違う色になる.
と思ったら,同じ悩みなページ(どせいけいさんき。)を発見.なるほど,rgbformulaeの値をset palette defineの後に得ようというものみたいですが,このページでも指摘されている通り,set palette define だけで私には十分だった.

set pm3d map
set isosamples 50
set size sq
unset key
set palette define (0 "light-green", 1 "yellow", 2 "red")
splot [-3:3] [-3:3] x*x+y*y-9




2014/06/27

星空入門

息子の担任だった先生に請われて,天体の授業がある4年生向けに講演というほどのものでもないお話をしてきました.タイトルは「星空入門」.ほとんど望遠鏡の実物も見たことがない子が多いので,竹園☆星の会の面々にもご協力頂いて反射と屈折望遠鏡,双眼鏡の実物も見せながらのお話にしてみました.
例年,4学年委員さん主催で観望会を実施しているので,私の話を入門として,授業,観望会と一連の流れば出来ると良いなという感じで考えてみました.



私の主義として,一方的な話をしてもつまらないので後半は質疑です.一応スライドは用意してますが,誰か一人が口火を切れば止まらなくなってくれます.

質問リスト(そのうち回答もここに書く?):
Q.なんで地球は太陽の周りを回ってるの?
 (何故落ちないのか?という質問だった.遠心力)
Q.日食は,なんで「食」べるなの?
 (面白い質問.とりあえず,ラーフとケートゥのお話にした.)
Q.オーロラは何故光るの?オーロラはどれくらい寒いところで見られるの?
Q.一番遠い星までの距離
Q.星の数
Q.他に惑星はあるの?
 (元質問は,銀河系には太陽系以外にもあるんですか?)
Q.月と太陽の大きさ比
Q.日食の時の木の影はどうしてできたの?
 (金環日食の時の木陰のピンホールのことだった)


2014/05/22

gnuplotでpm3dを使って2次元のデータも描画する

Gnuplot を使って等高線を書く時は set contour で出来た.最近のGnuplotでは密度グラフが書けるようになったということで,その時のメモ

set view 0,0
3次元グラフを真上から見る

set pm3d explicit map
explicit は,2次元のラインデータなども同時に描画するため
mapは,Y軸メモリを右ではなく左に持ってくるため

unset ztics
しないと,view 0,0 の時にZ軸のラベルが縮退してしまってなんだか分からなくなる.

set cbrange [min:max]
カラーバーのスケールを決める.xrange などと同様に指定がなければ適当にやってくれる.複数のグラフを書くときは設定する方が吉.

splot 'data' notitle w pm3d, 'world_10m_3d.txt' lt -1 notitle w l

world_10m_3d.txt は,Gnuplot's Tips で紹介されていた世界地図描画用のデータを3次元バージョンに変換したもの.と言っても,splotで読めるようになれば良いだけなので,x y に対して, z を某かの固定値で追加してあげれば良い.
* 書いてて判明したけど,2次元データをそのまま using で3次元に見立てて上げれば良いだけみたい.
'world_10m.txt' using 1:2:0 lt -1 notitle w l
でも描画された(何故こうなるのかは不明)


2014/05/20

rmd160が無いと言われて先に進まないMacPortsインストール

新MacOSに,MacPortsを入れて,色々入れようとしたのだが,,,幾つものパッケージが rmd160 ファイルがダウンロード出来ないとごねて,全く先に進めなくなってしまった.時間(?)が解決してくれる場合もあったように思うけど,実際問題としては数が多すぎて,インストールが先に進まないフラストレーション最高潮.

あれこれ試したり,検索してみたりしてもなかなか答えにたどり着けなかったのだが,やっぱり最後は(←最初から読めよ) man port .チェックサムを使わないとかなんとかその手のものが無いかしらと思っていたら, '-s' が,ソースから限定でインストールとなってる.下記を見る限り,バイナリを持ってきてそうだったので試したところ,すんなり通過\(^o^)/

% sudo port install bzip2
--->  Fetching archive for bzip2
--->  Attempting to fetch bzip2-1.0.6_0.darwin_13.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/bzip2
--->  Attempting to fetch bzip2-1.0.6_0.darwin_13.x86_64.tbz2.rmd160 from http://jog.id.packages.macports.org/macports/packages/bzip2
Error: org.macports.archivefetch for port bzip2 returned: Failed to fetch signature for archive: The requested URL returned error: 404 Not Found
Please see the log file for port bzip2 for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/main.log
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port bzip2 failed

もちろん,buildするので時間がかかるようになってしまいますが,そんなのはどうでもいい.時間が解決してくれる.

% sudo port -s install bzip2

検索ワード
Failed to fetch signature for archive
The requested URL returned error: 404 Not Found

2014/05/07

Emacs mew again II

もう,もっぱらメールの読み書きはGMailのWeb interfaceばっかりになってきたんだけど,いくつか気に入らないところがあるのでmewの環境を再び整えることにした.

Mew 6.6 のソースをダウンロード

まぁ,普通にbuild & install しようかと思ったんだけど,
% /usr/bin/emacs --version | head -1
GNU Emacs 22.1.1

で,emacsが古い!24.x系が推奨されてるので,MacPorts でインストール
% sudo port install emacs
% /opt/local/bin/emacs --version
GNU Emacs 24.3.1

configureオプションでprefixと上で入れたemacs 24.3 を指定する.
% ./configure --prefix=/opt/local --with-emacs=/opt/local/bin/emacs

あとは,00readmeの通り進める.

注意1)
screen を常用しているので,screen emacs として起動していました.もちろん,
% which emacs
emacs: aliased to /opt/local/bin/emacs
はしてあったんだけど,screen の中では /usr/bin/emacs が呼ばれてた!(恐らくPATH順)これにしばらく気が付かなくて,M-x mewしても,cannot load mewが出てきて悩まされた.

早速GMail IMAP ( imap.gmail.com ) に繋いで見ようと思ったが,繋がらない.ミニバッファには,
Creating an SSL/TLS connection...FAILED (cert verify failure)
と表示される.落ち着いて,,,ということで,デバッグモードに入ってログを見てみると,
Starting certificate verification: depth=2, subject=/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
CERT: Verification error: unable to get local issuer certificate
Certificate check failed: depth=2, subject=/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
SSL alert (write): fatal: unknown CA
で,CA
となっていた.色々ググって見ると,stunnel が libwrap を使うようになっていて失敗している場合があるらしいが,状況は改善せず.

素直にエラーメッセージを考慮して, ~/.cets/ に関係ありそうなGeoTrustの証明書を入れてみたけど,改善せず.が,Mewのレポジトリにcerts-*.tar.gz とかがある.もしやと思って,全部 ~/.certs/ にぶちこんだところ,成功!

まぁ,基本は GMail web interface を使っちゃいますが,何かの時にはさくっとMewに切り替えると.


2014/04/26

install Ubuntu

Windows XPのサポート終了と同時に,唯一残っていたDELL Note PCをUbuntuにした.

USBメモリ作成→bootableとして認識されず.しれっとHDDからXPが起動してしまう.内部HDDからの起動をなしにしてUSBだけにしたところ,bootableじゃないよというメッセージ.

DVDを.cdrに一旦変換してからディスクユーティリティで書き込みで成功!

びっくりは,インストーラーを起動したつもりが,すでにUbuntuが起動していること.デスクトップにあるinstallアプリ(?)を起動すると内部HDDに入れてくれる.

完成.


2014/04/15

ICカード運賃

4月1日から消費税率アップに伴い,電車の運賃が1円単位になる(ICカード利用時)ということで,調べてみた.

主に旅費精算する時のためなんだけど,いちいち改札口で料金を覚えるのも面倒だからnavitimeで検索して料金を調べてた.しかし!ICカード利用時の料金が出ない!いずれ対応してくれそうな気もするが,とにかく今は無い.

ので,個別にアタック

【JR】
えきねっとも,普通に検索すると,「参考料金(恐らく切符の場合)」が表示されるだけで,ICカード利用時の料金は出てこない(券種によって料金は異なるので注意となっている).が,完全に独立したインタフェースでIC運賃検索が出来るようになっていた.なぜ分離されているのか...まぁ,統合が面倒だったからだろうけど...
なお,IC料金に対して切符料金は四捨五入されているので,切符の方が安い場合(つか,半分)がある.

【TX(つくばエクスプレス)】
駅・駅ナカ情報検索から各駅の一覧が得られるので自宅駅のを見るのが簡単かな.
ICカード運賃の切り上げなので,ICカード利用の方がお得.だけど,回数券は切符運賃ベースなので注意.それでもお得だけど.

【都営地下鉄】
散々調べてたけど新料金適用は6月1日からだった!!!
普通に検索してもIC運賃は表示されない.対応表があるけど,
都営地下鉄はIC運賃の切り上げなので,ICカード利用の方がお得になっている.ただし,上記の対応表は,値上げ前の現行運賃と新IC運賃を比較しているので注意.2表を統合すると,下記のような感じ.大人料金のみ.

キロ程      旧   新   IC
 1〜 4km 170→180←174
 5〜 9km 210→220←216
10〜15km 260→270←267
16〜21km 310→320←319
22〜27km 360→370←370
28〜46km 410→430←422

ってことは,検索して新料金が分かったところで,上記の表からICカード料金に換算すればいいのかな.

【東京メトロ】
運賃・乗り換え案内から運賃を検索すると,ICカードの場合と切符の場合の両方の料金が表示される.



2014/04/03

MacPorts運用

MacPorts って入れるのはいいけど,ちゃんとメンテナンスをこれまでしてこなかったので痛い目に何度か会った...というわけで,メンテナンスをこまめにしようと思うと,cronにしかけたいな.そんな流れ.

$ sudo port selfupdate

$ sudo port upgrade outdated

でも結局この2行をスクリプトにしてcronにしかけるだけだった...もうちょっと考えたいけど.

(参考)Beginning OS X Lion/運用編 ←綺麗にまとまっていてわかりやすかった

2014/03/28

wgetでPOSTする

機会的に特定のURLにアクセスして何かするときはwgetかcurlを使いますが,滅多に使わないので忘れてしまうwgetでのPOSTのやり方メモ.

wget --post-file="inputfile" -O outputfile URL

ちなみに,GETの場合はURLをそのまま書いてあげるだけですが,シェルが展開してしまうので,URLはクォーテーションで囲む必要があるようです.
wget "http://example.org/cgi-bin/foo.cgi?key=value"

2014/03/23

筑波山梅まつり2014

つくばに来た頃は偕楽園と交互に毎年梅を見に行っていたような気がするんだけど,かなり久しぶりに筑波山梅まつりに行ってきました!今年は初詣(といっても,1月13日...)の時にも梅林まで足を運んでいたのでせっかくだから近い構図で撮ってみた.

1月13日撮影

 3月23日撮影

1月13日撮影

 3月23日撮影

何度か見に来たけどもしかしたら今年が一番の当たりだったかもしれない.他の写真はこちら(←Facebookの公開アルバムなのでFacebookのアカウントが必要でした).

2014/01/10

タイルサービス雑感

タイルサービスは似てるのが乱立してしまっていて以下の 3つある.
  • WMTS (Web Map Tile Service, OGC)
  • TMS (Tile Map Service, OSGeo)
  • WMS-C (Web Mapping Service - Cached, OSGeo)

で,そのタイルサービスを構築したいのだが,WMSもやりたいので手を抜きたい.というわけで,WMSを裏でオンデマンドで呼んでタイルサービスをやる.にあたってのソフトウェア比較.

  1. MapProxy
    • WMTS, TMS, WMS-C 全部に対応している
    • WMTS を使うか TMS を使うか選択する
      • 両方のサービスを提供するならサーバを2種類用意する必要がある
    • GeoWebCache より動作が軽い
    • WMS としても使える
    • (タイルを切り貼りして拡大縮小して返すこともできる)
  2. GeoWebCache
    • WMTS, TMS, WMS-C 全部に対応している
    • WMS としても使える
  3. TileCahce
    • 少し古い

MapProxyとWMTSを使うことにした.
タイルは EPSG:4326(緯度経度) と EPSG:900913(メルカトル図法, Google)
の両方を用意することにした.

GSJのサービス構築の時の検討内容でした.ここのWMSが基本的には全てWMTSで提供されています.