Thursday, March 29, 2012

CentOSでexportされたnfsファイルシステムをMac OS Xでマウントする方法

CentOSでexportしたnfsファイルシステムをMac OS Xでマウントしようとして、ちょっと苦労したので、メモ。どこかに書いておかないと忘れちゃうので ^^;


まず、CentOSでnfsをexportするには、/etc/exportsを編集して、nfsサービスをリスタートします。詳しくは、参考文献[1]の下のほう「18.6.2. Command Line Configuration」のあたりに書いてあります。


で、ここに書いた通りにして、Mac側でマウントしようとすると、"Operation not permitted"のエラーが出ます。先に理由を書いてしまうと、これはCentOS (にかぎらず最近のlinuxはどれもそうらしいのですが) "secure"なポートのみからの接続を受け付けるようになっているからだそうです。


解決策としては、Mac 側でマウントする際に resvport を指定するとよい。


$ sudo mount_nfs -o resvport server:/path directory

ただこの場合、参考文献[2]のように、Finderをつかってマウントすることができない。Finderを利用してマウントするためには、exportするほうで insecure オプションの指定をする。


$ cat /etc/exports
/path/to/directory 192.168.1.0/255.255.255.0(ro,insecure,all_squash)

/etc/exportsを変更したら、nfsさんにおしえてあげないとダメですよ。


$ /sbin/service nfs reload

これでOK!


参考文献

  1. 18.6. NFS Server Configuration
  2. Mac OS X: Finder を使って NFS エクスポートをマウントする
  3. わたしのtwitterの発言

Monday, February 27, 2012

さくらVPSのCentOSのyumにRPMforgeを追加する方法

どうも、CentOS初心者の岩田でございます。遅ればせながら、契約してずっとほっておいたさくらVPSを使い始めております。CentOSはyumっていうパッケージ管理ツールを使うらしいんだけど、これがもうぜんぜんパッケージがそろってない。がっかりです。とおもったら、ふつうはRPMforgeをリポジトリに追加して使うものらしい。最初から入れといてくれればいいのにー。ということで、私も追加してみました。


とりあえずCentOSのバージョンを確認します。


$ cat /etc/redhat-release 
CentOS release 5.7 (Final)

なるほど CentOS 5.7です。次にこちらを参照。

Installing RPMforge

あとはそこをみてその通りにすればいいのです。CentOS 5だったので、その欄を見て、まずは uname -i してアーキテクチャを確認し、対応するパッケージをダウンロードします。


$ uname -i
x86_64

x86_64なので、ダウンロードするのはこれ。

http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm


こんなかんじで。/tmp にでもダウンロードしておけばいいでしょう。


$ cd /tmp ; wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

つぎはGPG keyのインストール。


$ rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

さらにパッケージの検証。


$ rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm

OKがでたらパッケージのインストール。


$ rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm

これでできたはずー。


$ yum search tmux
Loaded plugins: fastestmirror, priorities
rpmforge                                                 | 1.1 kB     00:00     
rpmforge/primary                                         | 4.0 MB     00:06     
rpmforge                                                            11059/11059
================================ Matched: tmux =================================
tmux.x86_64 : Terminal multiplexer program

いえーい、できたー ^^; 単にtmux入れたかっただけなんすよねー。


参考文献

  1. Installing RPMforge, wiki.centos.org

Tuesday, September 06, 2011

Mac OS X Lion で Scala を使ってみる

先日参加した飲み会で、リスパーの方から「ScalaいいよScala」と強いご推薦をいただいたので、遅ればせながら私もScalaを使ってみることにしました。本も買ってきた! 買ってきた、っていうか、amazonですけど。


scalaの本買ってみた :-)

図1. Scalaの本も買いましたー


とりあえずScalaをインストールします。Scalaのサイトからもダウンロードできますが、ここはひとつみんなだいすきMacPortsで。ちなみに作業時の私の環境はMac OS X 10.7.1で MacPortsは2.0.1です。次のようにしてインストールします。


$ sudo port install scala29

簡単でいいよねー。インストールできたら早速使ってみたいんですが、その前に


$ sudo scala_select scala29

これをやっておくとscala-2.9じゃなくてscalaでscala29が使えます。scala_selectはscalaを入れると一緒に入るはず。まあ、自分でシンボリックリンクを張ってもいいと思います。


インストールできたので、バージョンの確認。


$ scala -version
Scala code runner version 2.9.0.1 -- Copyright 2002-2011, LAMP/EPFL
$ scalac -version
Scala compiler version 2.9.0.1 -- Copyright 2002-2011, LAMP/EPFL

では Scala coe runnerの方を起動。対話環境みたいになりますので、なんか入れてみます。


$ scala
Welcome to Scala version 2.9.0.1 (Java HotSpot(TM) 64-Bit Server VM,
Java 1.6.0_26).
Type in expressions to have them evaluated.
Type :help for more information.

scala> 1+2*3
res0: Int = 7

おー :-) ちなみにこの例題は参考文献[2]の最初の例です。もうひとつ、今度は関数を定義してみます。


scala> def square(x:Int):Int ={ x*x }
square: (x: Int)Int

scala> square(3)
res1: Int = 9

おー ^^; コンパイラの方も試してみます。


$ cat Square.scala 
object Square {
  def main(arg:Array[String]) = {
    var input = arg(0).toInt
    printf("%d!\n", square(input))
  }
  def square(x:Int):Int = { x*x }
}
$ scalac Square.scala
$ scala Square 6
36!

おお ^^; ということで、しばらく遊べそうです :-)


参考文献

  1. "The Scala Programming Language", http://www.scala-lang.org/
  2. Jeffrey D. Ullman, "Elements of ML Programming, ML97 Edition (2nd Edition)", Prentice Hall, 1997.

Thursday, June 02, 2011

ことえりで普通の文字を入力するkenicパッチのインストーラーをリリース

2011.9.5 追記: kenic パッチインストーラーは 10.6 Snow Leopard と 10.7 Lion に対応しています。


ご好評頂いております、ことえりで普通の文字を入力するための通称「kenicパッチ」ですが、インストールが少しめんどうなのが難点でした。このたび、インストーラーを作成しましたのでご紹介します。

ダウンロードはこちらからです。対応OSはMac OS X 10.5 および 10.6 です。

kenic patch installer 1.0

内容は以前のものと変わりません。ことえりの日本語入力モードにおいても、数字、アルファベット、一部の記号類が変なほうの文字「123abc%$」ではなく、まともな文字「123abc%$」で入力されるようになります。

インストールのしかたは簡単です。上記のリンクからdmgファイルをダウンロードして、開くとこうなります。

kenic patch pkg

図1. kenic patch インストーラーの pkg ファイル

さらにこれをダブルクリックして開くと、インストーラーが起動します。

kenic patch installer

図2. kenic patch インストーラー

あとは指示に従って進めていき、最後に再起動して終了です。おたのしみあれ。

参考文献

Friday, June 19, 2009

iPhoneを経由してパソコンからインターネットにつなぐ方法 (テザリング)

※当然ですがなにが起きても自己責任でお願いします。

iPhoneはもちろんWiFiがないところでも3Gの電波を使ってインターネットに接続することができますが、 これをモデムのようにしてパソコンからも使えたらいいなー、とおもいませんか?

Tethering by iPhone

図1. テザリング

こんな感じです。参考文献[1][2]の方法でできそうなのでメモしておきます。

  1. まずはじめにjp_softbank_iphonepacket_usims.mobileconfig.gzをダウンロードする。
  2. ダウンロードしたら解凍する。解凍後のファイル名が「jp_softbank_iphonepacket_usims.mobileconfig」であることを確認する。
  3. そのファイルをメールでiPhoneに送る。gmailでも何でもよい。
  4. メールを見ると、こんな感じになるので
    Tethering by iPhone
    添付ファイルをポチッとする。
  5. するとこんな画面になる。
    Tethering by iPhone
    「install」をポチッと押して、画面の指示に従う。
  6. インストールが終わると、「Settings」の「General」の「Network」に「Internet Tethering」というのができているので「On」にする。
    Tethering by iPhone
  7. この状態でUSBケーブルを使ってMacとiPhoneをつなぐと、新しいネットワークデバイスが検出されました、となって、System Preferencesのネットワークを開くように言われるので開くとこんな感じになってます。
    Tethering by iPhone
    ここでは「Ethernet Adaptor (en3)」というのがiPhoneのことですから、それを選んで「Using DHCP」になっていることを確かめて「Apply」でつながります!
  8. Bluetoothでつなぎたい場合は、あらかじめペアリングしておいてから、こんなかんじで
    Tethering by iPhone
  9. 成功するとこんな感じに!
    Tethering by iPhone

これを試して見ている皆さんはSoftbankから別料金を請求されやしないかと戦々恐々のようですが、どうなんでしょうねー?

でもこれで相当便利になること間違いなしですね。

参考文献

Thursday, January 29, 2009

iPhone用ファームウェア2.2.1リリース

iPhone用のファームウェア2.2.1がリリースされましたね。

2.2.1

図1. 2.2.1

どうも、主にバグ修正みたいですね。さっそくインストールしてみました!

iPhone 2.2.1

図2. About画面

どこがかわったか、といわれるとよくわかりません... ^^;

Wednesday, January 28, 2009

WordPressで保存された履歴を削除し、さらに履歴を保存する数を制限もしくは無効にする方法

WordPressから記事をExportして、さらにImportすることがあります。WordPressでは、Exportすると xmlのファイルになるのですが、これがサイズが大きいことがあります。中を見てみると、過去の版(履歴)も含まれています。 これは、exportしてimportしたときに、前のサイトでの編集の履歴までインポートできるので、便利な機能ではあるのですが、 記事を書いている最中にマメに「保存」「保存」とするとどんどん版がふえて、エクスポートファイルのサイズも どんどん大きくなってしまいます。そこで、サイズの削減のために過去の履歴を削除することを考えてみます。

削除は簡単で、mySQLのサーヴァーに接続して下のコマンドを実行します。

DELETE FROM wp_posts WHERE post_type="revision";

テーブル名「wp_posts」は該当するものにかえてください。「接頭辞_posts」の形式です。重要なデータの場合は、念のため 実行する前にテーブルをバックアップしたほうがいいでしょうね。

ちなみに、あるサイトでこれを実行したところ、18MBあったエクスポートファイルが3.4MBになりました。1/6!

そもそも、なんでこんなにたくさんリビジョンを保存するのであろうか。必要あるのかしら? と思われた向きには、 保存する履歴の数を指定する機能があります。ただしWordpress 2.6以降のみ? 調査はしていません。

その方法は wp-config.phpに次のような行を追加するだけ。

define('WP_POST_REVISIONS', 数);

「数」に数字をいれると、その数だけにリビジョンが制限されます。0やfalseにするとリビジョンを保存する機能が 無効になるようです。

いやー、こんな定数があるなんて知らなかった...WordPressにはまだまだおもしろい機能がたくさんありそうです。

参考文献

  1. How to delete existing WordPress post revisions stored/saved, My Digital Life, 2008
  2. Disable and turn off post revisions tracking in wordpress 2.6 or above, My Digital Life, 2008
  3. How to store every post revisions on each auto save in wordpress with limit on versions count, My Digital Life, 2008