UNIXの最近のブログ記事



 UNIXじゃねーて。

 何を勘違い*1していたか書くのすら恥ずかしい・・・(__)


 いや、てっきりLinuxから派生したモンだとばっかり思ってたから、ずーっとカーネルはどうやったら起動出来るのかな、と。何遍設定見直してもライブラリしかbuildできねーじゃねーかよぉ(T_T) と・・・bootメッセージは、シェルプロンプトはいつになったら見られるんだよ~と。考えてみりゃshellはカーネルじゃないじゃん【馬鹿】


 つーことで、これでようやく本題に入れるわ・・・(-_-;)




*1:思い込みとも言う。



rubyはやっぱり [UNIX] [tDiary]

| | |



 ダメでした(__)


 root権限が無いのでmakeは使えないとの事。さらにruby対応予定も無しだと(-_-) サーバー変えようかとも思ったのだが、5月に1年契約したばっかりだし・・・ まぁその時は納得して契約したんだから仕方がないんだが、来年はまた別のところだな。


 しゃーないから勉強と練習のつもりで自宅のMacにでも入れるか。寂しいけど・・・(T_T)



rubyが・・・ [UNIX] [tDiary]

| | |



 カテゴリーに困ったのだが、とりあえずレンタルサーバーはFreeBSDなのでここで(^^;


 いっそ自分トコのサイトもtDiaryベースででっち上げてしまえば、デザイン的にここと揃えられそうでいいなぁと思い、設置を試みる。

 とは言えrubyが使えないという事が既に判明していたりするので*1、386用の*2バイナリが無いかなぁと探してみたのだが、結局見つからず。

 仕方がないのでmakeしたヤツをアップロードしてみるか、とconfigureからmakeを試みるも、これMacだし・・・【爆】*3


 最後の手段としてソースをサーバーにアップしてサーバー上でコンパイルするという、


他の人には迷惑千万【爆】

な手段も試してみたの*4だが、makeのパーミッションが無いという、既に先手を打たれていたようでこれもダメ。


 仕方がないんで問い合わせのメールをホスティング元に出しました(T_T)


 多分「ダメです」の一言なんだろうけど・・・(__)


 そうか、職場のマシンで・・・(。_゜☆\(ーー;)




*1:ダメ元でやってみたが、案の定・・・(__)


*2:さらにはFreeBSD用の。


*3:もしかしたらクロスでいけるかとも思ったのだが、考えてみればクロスの環境が無い訳で・・・【汗】


*4:心の中では何度もごめんなさい、ごめんなさい・・・





 実はこれをやろうとしてはまったのだ【爆】


 で、途中になっていたので、やっぱりやってみる事にする。


 参考


  http://osksn2.hep.sci.osaka-u.ac.jp/~naga/miscellaneous/winssha-1.html


  http://sakura.ducub.com/cgi/a-column/data/soft/1014123354.html


 必要項目のインストール


  Cygwinのsetup.exeを起動して、以下の項目をインストールする。


        • cygrunsrv[Admin]

        • openssh[Net]





 環境変数の修正。


  c:?/cygwinにインストールしてるものとして話は続く。あと、Windowsの管理者権限なんかがないとマズイかもしれない。


  マイコンピュータを右クリックしてプロパティを表示。


  詳細タブをクリック。


  環境変数ボタンをクリック。


  システム環境変数のPathを選択し、編集ボタンをクリック。変数値に'c:?cygwin?bin?'を追加。

  システム環境変数の新規ボタンをクリック。変数名に'CYGWIN'、変数値に'binmode ntsec ntea tty'*1を入力。


 sshdの起動準備。


  cygwinを起動して、



$ ssh-host-config -y



  なにやら必要なファイルを自動的に作ったあと、環境変数'CYGWIN'の入力を求めてくるが、デフォルトの'ntsec'のままで良いのでそのままreturn。


  'Host configuration finished. Have fun!'と表示されたら終了。


 パーミッションの変更。


  /etc以下のsshd関連ファイルのパーミッションを変更。cgywin上で、



$ chown system.system /etc/ssh_host*_key


$ chmod 600 /etc/ssh_host*_key



 Windowsへのサービス登録を行なう。


  マイコンピュータを右クリックして管理ダイアログを表示。


  「サービスとアプリケーション→サービス」を選択。


  右のリストに'CYGWIN sshd'があるはずなので、それを選択してサービスの開始ボタンをクリック。


 この状態でcygwinから、



$ ssh localhost



 でログイン出来ればオッケー・・・ なんだけど、ログインした途端に接続を切られてしまう(?_?)


 いろいろ調べてみたのだが、行き着いたところは、


  http://www.cygwin.com/ml/cygwin-announce/2004-08/msg00031.html


 で、この中に、



Thanks to an early bug report on the cygwin mailing list, I found that


you *must* add the -r option when starting the sshd daemon, if you want


to use privilege separation. Either that, or disable privilege separation


in /etc/sshd_config by setting


UsePrivilegeSeparation no



とあった(-_-;) 要は"バグってるから、privilege separation(特権分離機能)使うなら-rオプションつけてsshdを起動してね。それじゃなかったらこの機能は使わないよーに。"ということ。特に使うつもりもないので【笑】


 /etc/sshd_configのUsePrivilegeSeparationをno

にして*2sshdを再起動。



$ net stop "CYGWIN sshd"


$ net start "CYGWIN sshd"



 再度、



$ ssh localhost



 今度は無事ログインに成功(-o-;)




*1:これでいいのかどうか、ちょっと怪しい【爆】


*2:ssh-host-configの時、'Should privilege separation be used? (yes/no)'で'no'としておけば、この苦労は不要らしい。





 日本語の情報がなかったので書いておこう・・・


 情報源は、


  http://www.spinics.net/lists/ecos/msg22363.html


  http://bugs.ecos.sourceware.org/show_bug.cgi?id=1000095

 Windowsでの作業環境があまりにも整備されていないので*1、せっかくCygwinが入ってるんだからsshd動かしてMacから作業しようと思ったのが事の始まり。


 googleさんに教えてもらいながらCygwinに追加インストールした後、念のためと思って再起動したらeCosのConfiguration Toolが起動しなくなってしまったのだ(@_@;)

 正確には、Configuration Toolを起動すると、Output Windowに"This package does not have any valid version subdirectories."というメッセージが大量に*2出力され、そのまま終了してしまう、という現象。Configuration Toolは愚か、Cygwinを再インストールしても回復しないと言う謎な状態(?_?)


 こんな時頼りになるのはやっぱりgoogleさん(^^;

 結論から言うと、/bin/cygwin1.dllの最新版(1.5.10-3)*3ではパスの扱いに不具合があるらしい。先のページの内容を引用すると、



With cygwin 1.5.9-1 under Windows XP SP1:


$ tclsh


% glob C:/tmp/.


C:/tmp/./


%


With cygwin release 1.5.10-3 under Windows XP SP1:


$ tclsh


% glob C:/tmp/.


C:/tmp/ <========= ./ has disappeared !


%



 つまりは、以前のバージョン(ここでは1.5.9-1)では"C:/tmp/./"というパスが返ってくるところが、1.5.10-3では"C:/tmp/"となってしまう、という事。

 そもそもちゃんと使えてたパッケージなんだし、それがいきなり全部おかしくなるとは考えにくい*4。それなのにエラーになる。チェックするにはパスを手繰るはず。


これは怪し~~~【笑】

 で、他の人が使ってるCygwinからこのDLLをもらい*5入れ替えてみると、無事起動(-_-)

 Cygwinはネットワークインストールだったのだが、なんかの拍子にこのDLLも新しいのになってしまった*6のだろう。しかも原因がこれじゃ、何度インストールし直してもダメなわけだわ。


 これで問題は無事解決・・・ ではなくて入れ替えたDLL。これはこれで結構古かったりするので、他との整合がちゃんと取れてるんだろうか? などと思ってたら案の定、build時にいきなりエラーダイアログ【爆】 やっぱりダメだったのね~(T_T) DLLの不具合を解消するpatchも公開されてたのだが、


パッチ当ててコンパイルし直しかぁ。面倒だな~~

 なんて思いながらeCosのメーリングリストを見てみたら、タイムリーな事に今日届いたメールに同じ事で悩んでる人がいたりして(^^;*7 で、その回答も既に届いてて、



You can find an updated version at


http://www.ecoscentric.com/devzone/configtool.shtml



おぉ!これじゃぁ!!


と早速新しいバージョンのConfiguration Toolをダウンロードして入れ替えてみたら、1.5.10-3のDLLでもあっさり動作(^o^) いや、良かった良かった。




*1:だって普段使わないし、使い勝手のいいツール無いし(T_T) VNCでMacから操作してるのだが、キー配列変わったりもしてさらに使い辛い(__)


*2:恐らく個々のパッケージのチェックをしてるのだろうからその分。


*3:プロパティでは1.5.10-cr-0x5e6


*4:可能性が0ではないけど。


*5:自分の環境では既に前のバージョンに戻す手立てが無くなってしまっているので(T_T)


*6:新しくするようにしてセットしてしまったんだろうが・・・(--;)


*7:いやぁ世界って狭いわ。あと3人くらいは同じ事で悩んでいた人がいるはず【笑】



カテゴリアーカイブ

月別アーカイブ

  • このサイトで使用されているリソースの著作権は、すべて作成者・撮影者が保有しています。無断での2次利用はご遠慮下さい。