Today アクセスカウンター Yesterday アクセスカウンター

ftpfs : Plan9 の ftp クライアント

一応 ftp で ThinkPad から Debian に入れるようになった.

やり方は,前回書いたシェルスクリプト

## ftp通信用モジュールのロード(FTPの通過および応答を許可)
/sbin/iptables -t filter -A FORWARD -i eth0 -p tcp --dport 21 -j ACCEPT
/sbin/iptables -t filter -A INPUT -i eth1 -p tcp --dport 21 -j ACCEPT
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp

とかかいて,テキトーな ftpd を Debina にインストールして起動するだけ.

今回は,なぜか

Starting ftp server: proftpd - IPv6 getaddrinfo 'localhost.localdomain' error: Name or service not known

とかエラーメッセージが出て,proftpd が使用できなかったので,vsftpd とかいうやつを使ってみた.(参考サイト : Redhat9.0 : vsftpdの設定 vsftpdを試してみる)

# apt-get install vsftpd

んで,デフォルトでは anonymous FTP サーバーとして動いているから,「530 This FTP server is anonymous only.」とか言われて蹴られてしまうので /etc/vsftpd.conf とかの

# Uncomment this to allow local users to log in.
# ローカルユーザがログインできるようにするなら yes にする
# local_enable=YES

のところのコメントアウトを外して,Debian のユーザがログインできるようにしておく (一応 hosts.allow とかも設定しておく.どうせ LAN 内限定だから, vsftpd : ALL : ALLOW とか超テキトーな設定だ).

あとは,/etc/init.d/vsftpd restart して,Plan9 から

term% ftpfs 192.168.0.1
220 (vsFTPd 2.0.5)
331 Please specify the password.
230 Login successful.
215 UNIX Type: L8
257 "/home/aloha"

とか,(とりあえず今のところは…) IP 直打ちで入る.

そうすると,/n/ftp 以下に,ホームディレクトリが「bind」される.


そしてこいつこそが Plan9 の真骨頂,every thing is file system です !

なんと,普通の FTP クライアントとは全く異なり,普通にマウントされたファイルシステムと同様にシェルが使えて, cd だの ls だの cat だの grep だのができる.ローカルとリモートの区別は全く付かない.素晴らしすぎる.

Plan9日記 2006-03-06 なんでもファイルサーバ

もしかして Debian でファイル作ると,即座に反映されたり,Plan9 でファイル作ったりもできるのかな ? と思ったけど,良く考えたら ftp の権限だからそんなことできるわけがない.

ということは,ということはだ.もし sshd かなんかを Debian で立ち上げておいて,Plan9 側からログインしたら,夢のような世界が広がるのではないだろうか (今は鍵の取得とかいろいろ面倒だからやらないけど,そのうち試してみよう.どうせ LAN 内限定だから,僕的には telnet で全然かまわないのだけど).

やばいよ分散 OS やばい.とにかくみんな,分散 OS のヤバさをもっと知るべきだと思います.

まぁ,確かに Plan9 は無いものの方が多い (ウェブブラウザすら無い) わけですが,逆に考えるんだ ! Linux や Windows にできることは,Plan9 ができる必要は無い.

とかく世の中,あれが無いこれが無いと否定面ばかり強調されがちですが,逆じゃないか ? とか,そんなことを思った秋の夜であります.

これはプログラミング言語とかでも同じなのかもしれない.Java や PHP (さらには COBOL/Fortran)にできることは,そいつらに任せておけば良い.RoR などのフレームワークが 「今の」 開発プロセスに適合するというのならば,バシバシ使って生産性を上げれば良い.民間にできることは民間に.そしてそいつらではできないこと,新しい時代を切り開くことこそが,新しい言語やパラダイムには求められているのである.

とかいっているような僕は,たぶん一生プロのプラグマティックプログラマーにはなれないなぁとか思った.

Linus の考え方は,技術論としては共感できるし,こういう姿勢は好きだけど,もし僕が運用している人だったらたまったもんではないなと.

ちょっと動かしてみたいだけなのに,バージョンごとに操作が変わったり互換性が無くなったりするから,マヌアルを読まないといけない.俺はいちいち説明書とか読む気にはなれない典型的日本人だし,常用するかしないかもわからないものに精通する暇もやる気もあんまり無いし,最悪,マニュアルすらあてにならない.

今回,いろんなところにはまって (いまだに,/etc/init.d/iptables が無い…) いろいろ心底うんざりした.

そういう意味では,全く変化しない,互換性完璧,というのも,価値としては重要なのではないかと.とかく変化や新しさが好まれる時代ですが.

だから僕は,中途半端に妥協と継ぎ剥ぎ的拡張を重ねてく言語が嫌いなんだな.C++/Java P 言語の一族とか.徹底した切捨てや割り切りがあって,もはや生きた化石みたいな言語,例えば C とか LISP みたいな言語が好きなのである (もちろん,研究は別よ).いろいろ矛盾しているけど.

# だから,たぶん僕は,いろんな体系や制限や拡張が乱立する型理論が絡む言語はあんまり好きじゃないんだよなぁ… 確かにいろいろ便利で役に立つかもしれないけど,型理論って,もはや理論のための理論になってしまっているというか… 当初の目的が失われている気がするよ. そもそも目的が無いのかもしれませんが.バグを数理的に撲滅する ? バグって何さ ? プログラムはいつも 100 % 正しい.バグは人間の心に存在する.結局は,プログラムのバグではなく,人間の心,仕様をデバッグしなければならない.そしてそれが本丸であり,仕様のデバッグの困難さに比べたら,プログラムの意味論的な不整合をハジくなんてのは枝葉に過ぎない.正しい仕様,正しい変換,正しいプログラム.この 3 つをシームレスに繋げる理論と枠組こそが重要だと思うのだけど… なんで世間はあさっての方向ばかり向いているのだろう.僕には理解できないよ (もちろん,王道は難しいからなんだけど.冒険なんてしないで,狭い世界で過去の成果をこねくり廻している方が楽だからね).とかいう話はどうでもいい.

(一つの記事に二つの相反する主張を入れる間違ったディベート管理人)

トラックバック


この記事にトラックバックする(FC2ブログユーザー)

Soft Typing

あろはさんがreferされていたお話。どこに書いたら良いのかわからないので、ちょっとこちらで。(soutaroさんの研究は自分の研究じゃないのでわかりませんが)「一般には」、まさに静的に型つけできる部分とできない部分の折り合いをつけるために、soft typing系列のような

コメント

Secret

いつもネタにマジレスですみません。ディベート大好きキャンペーン(?)に乗るということで。:-)

> 正しい仕様,正しい変換,正しいプログラム.この 3 つをシームレスに繋げる理論と枠組

一応、Coqやproof carrying codeなどでいうような型理論は、まさにそれを目指しているのではないかと思います(もちろん他にもありうると思いますが)。実際、定理証明器にせよ関数型言語にせよ、プログラムのミスというより、頭の中の仕様や方針の間違いが、型チェックによって見つかることも多い気がします。

> sumii 様

いえ,型チェックや関数プログラミングを否定しているわけでは全く無くて,型理論ってのは,ソースコードという狭い対象 (仕様記述とは言っても,関数型プログラムの延長線上というか) しか見てないんじゃないのかなぁ~ 程度の意味でした.

# 良く知らないへたれ学生の分際で,すいません,すいません.専門家にマジレスされると,ただただ頭を下げるしか (^^;

例えば Web アプリケーションならば,型理論が相手にするのは,ソースコードや型付きアセンブリコードが型という制約をちゃんと満たしているかとか,HTML がバリッドだとか,バイトコードが配列の境界を越えた不正なメモリアクセスとか悪さをしないとか,そういう範囲 (というと,また悪口に聞こえてしまいそうですが… 非常に有益で意味がある研究だと思っていますよ) に過ぎないんじゃないかな,と (それはそれで,非常に役に立ちますが).

僕が言っているのは,例えば Web アプリケーションという枠組み (処理系やツール,インフラなどパラダイムまるごと) 全体を相手にして,上から下まで全体を俯瞰して,より良い形をプロデュースするような研究ってのは,あんまり無いよね,とかいう.

「SQL インジェクションを静的にチェックするシステム」 とか 「SQL を言語に組み込んで,言語レベルでの解析が云々」 は確かに有益だけど,そうじゃなくて,それはそもそも仕様と言語とプログラムと DB が乖離しているとか,DB のシステムとかインタフェースの設計とか,何かが根本的に間違ってるんじゃないの ? とか.

僕自身,何か具体的な行動を起こしているわけでも無いので,非常に恐縮なのですが… (ホント,非専門家の論文もコードもろくに書いて無いへたれ学生の分際で偉そうなこと言ってすいません)

デザインというか.

http://d.hatena.ne.jp/hira_sosuke/20060801/1154418550

今の研究ってのは,レイヤいっこ増やして万々歳ってのがほとんどだよなぁ… という危機感というか.

http://d.hatena.ne.jp/hira_sosuke/20060911/1157992805

もちろん,sumii 先生の研究室のような超一流の研究室は,なんらかのアクションを起こしているのかもしれませんが,あくまでも世間一般の傾向としてと言うかなんというか (ゴミョゴミョ)

# 低学歴で見識が狭くてすいません.

んー …,これがちょっと近いかも.

http://d.hatena.ne.jp/flappphys/20060825#p2

プログラムや言語理論だけではなく,それが記述するべきシステム --- 仕様 --- の望ましい姿も考慮して,体系やフレームワークは組み立てる必要があると思うのですよ.

あと,ポール・グレアムやビョルン・ストローストラップ教授が良く言ってますが,「(特に静的型付けの分野の頭が良すぎる半数学屋な) 言語理論屋ってのは,自分の研究している言語機能や理論が当てはまる問題を後付けで探す」みたいな.

より綺麗な「過去の」問題解決の枠組みの整理とか解釈とか定式化ばかりしていて,現実の問題解決,さらには未来のシステムのあるべき姿の模索はやってないのでは ? という (もちろん,そういうのは論文になりにくいですし,ソフトサイエンスや複雑系研究にありがちなトンデモにもなりがちですが… 学者がやることでは無いのかもしれませんが).

そういうのに比べると,特に数学的な,カッコイイ記号で埋め尽くされた論文は,ちょっと扱う範囲が狭すぎるかなぁと.これまた私どもの分野の決まり文句ですが,「数式で静的に記述できるのは,現実のほんの一部に過ぎないのに,ハードサイエンスの学者はそれをわすれ,それが自分の世界の全てになってしまっている」,みたいな.

(単に,僕が AI とか,複雑系とかの方面に慣れ親しんでいるというだけの話かもしれませんが.ハードサイエンスとソフトサイエンスと複雑系やカオス,AI,自己組織化臨界のあたりのやわらかいゴチャゴチャした混沌系学問は断絶してますからね.双方がお互いを駄目だと言っている)

# あ,ちなみに,これは私個人の極々私的な意見であって,研究室でやっていることとは何の関係もないので.そこのところはよろしくお願いします.

>> ディベート大好きキャンペーン

ちなみに,僕はあまり頭が良く無いので,sumii 先生がお得意な Web 上でのディベートとかは,あんまーり好きじゃありません (笑)

# すぐにボロが出まくりで恥ずかしいので w

あれ (「ディベート管理人」とか) は単に,自分の意見なのに一つの記事内で 2 つの主張がされていて破綻しているという矛盾を (直すのも面倒なので) ギャグにしたというだけのことです w

# 文章の大原則は,一つの記事や論文の主張は,必ず一つ.

コメントありがとうございました.迷惑では全然無いので,これからも突っ込みやコメントや言及はバンバンしていただけるとありがたいです.ネタにマジレスも大歓迎です.

# ただし,あまり私を買いかぶられると困るというだけのことです (苦笑) 特に何も考えずに勢いだけで不用意な発言することも多いですし,そもそも sumii 先生のような方々よりも,はるかに知識や経験が浅いので.あまり弱いものイジメはしないでください w

いやいや、学歴とか経験とか先生とか、なんの関係もないので、もっと堂々としていただけると…(笑)。むしろ最近はそういうほうが弱者なので、こちらこそどうかお手柔らかにお願いします。:-)

> sumii-san

どもども,どもです.

こちらこそ,私は Shiro さんや yoriyuki さんほど優秀でも面白く (interesting) もないので恐縮ですが,何卒お手柔らかにお願いします :-)
プロフィール
  • Author:あろは (alohakun)
  • 京都のデバッガベンダーに勤めるアラサー会社員。

    本ブログの内容は,あくまでも個人的な感想や意見であり,会社の意見を代表するものでは一切ありません.

    連絡先 : alohakun ___at___ gmail.com
    mixi : http://mixi.jp/show_friend.pl?id=182927
    twitter : http://twitter.com/alohakun













    あわせて読みたい


    この日記のはてなブックマーク数


    スカウター : ホワット・ア・ワンダフル・ワールド


    Map
FC2カウンター
ブロとも申請フォーム

この人とブロともになる

最近のコメント
リンク
最近のトラックバック
人生の残り日数
日本人男性の平均寿命は 28700日.
RSSフィード
カテゴリー
  1. RSSリーダー