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の発言

さくら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

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.

歯の妖精とチョコレート

この季節になるといつも思い出すことがあります。みなさんは子供の頃、歯が抜けたときどのようにしていましたか? わたくしが幼少のころ、我が家では歯が抜けると枕の下に歯を置いて寝ていました。そして、朝起きると、なんと、妖精さんが歯を持ち去り、かわりにプレゼントを置いていってくれているのです!

お菓子が大好きだったわたしは、歯が抜けると毎回手紙を書きました。「ようせいさんへ おいしくておっきなチョコレートがほしいです」。そしてこの手紙といっしょに歯を枕の下に置くのです。妖精さんは日本語が読めるらしく、ちゃんとおいしくて、おっきなチョコレートを置いていってくれるのです。

すきなものはチョコレート、きらいなものは歯磨きと歯科という典型的な幼児のわたしは案の定、虫歯をたくさん作り、歯科に通わされていました。いまほど予防的な歯の手入れの重要性が認識されていなかったという時代背景もあります。

そして何本目かの歯が抜けた日の晩、同じように手紙を書いて床につきました。チョコレートを夢見ながら…

朝起きると、枕の下にはプレゼントと、いつもはない手紙が入っていました。手紙を開けると…そこにはこう書いてありました。

けんちゃんへ
いつもステキな歯をありがとう。今回もおいしいチョコレートがほしいんだね。
けんちゃんがチョコレートを好きなのは、妖精もよく知っていますよ。
でも、今回は、けんちゃんにチョコレートをあげることはできません。ごめんね。
妖精は、健康な歯がすきなんだ。虫歯になった歯はきらいです。
だから、今回は、チョコレートじゃなくて歯にいい食べ物をプレゼントします。
けんちゃんがいっしょうけんめいはみがきをしたら、またチョコレートをあげるね。

妖精より

プレゼントの包みを開けると、そこには…

surume

写真1. スルメ

それ以来、この季節にチョコレート売り場をみるたびに、スルメが食べたくなるのです。

Subversion

なんかよのなかすでにcvsじゃなくてsvnらしい。知らなんだ…詳しくはあす調べよう。