[cygwin]WinXP+Poderosaでcygwin 1.7接続

Written by uechoco 1月 31
この記事を読む時間:143くらい

Poderosaは一時期人気を博したターミナルで、いまだに使っている人がちらほらいます。私もそんな一人。Poderosaの謎機能の1つで、cygwinターミナルになることができます。わたしは結構この機能が好きです。最近、いつもと違う環境にcygwinとPoderosaをインストールしたら、Porerosaからの接続ができなくなっていました。

「レジストリキー SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/ がみつかりません。」

ってエラーが出ます。おそらく、cygwinが昔このレジストリにインストールパスを保管していて、Poderosaはそれを読んでいたんでしょう。接続できないと困るので、絶対無糖: Windows 7 RC 64-bit で Poderosa をインストールしてみたを参考に、コマンドプロンプト

  1. >reg add "HKLM\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/" /v native /t REG_SZ /d C:\cygwin

と打って、使えるようにしました。

全く余談ですが、ターミナルって古参のものばかりですよね。何か新時代のターミナルってないんでしょうか?

(追記)コメントを頂きましたが、Poderosaをcygwin 1.7対応させたパッチと、パッチ済みバイナリを配布している方がいらっしゃいます。

[C言語]ゲッツ(gets)はダメ。fgetsが正しい。

Written by uechoco 1月 12
この記事を読む時間:58くらい

C言語にはいろいろな関数があるが、中にはセキュリティ上使用してはならないと指定されているものもある。

ファイル読み込みで使われるgets()関数もそうだ。仕様上バッファオーバーランが発生してしまうらしい。名前からして使ったらプログラムが滑って空気が寒くなりそうだw

scanf()も通常の使用だとバッファオーバーランが発生してしまうらしい。

スマートに解決するならばfgets()関数がいいらしい。

危ないから外してくれればいいのにとも思うけど、そちらは言語仕様なので関数がなくなることはないでしょう。コンパイラが警告してくれるとかがあるかもしれません。

というわけで、gets()は寒いからダメ。fgets()を使おうという話。

[Linux]CentOS 5.3/5.4のsudoコマンドが曲者。

Written by uechoco 1月 11
この記事を読む時間:18くらい

CentOS 5.3以降で、sudoコマンドのバージョンが新しくなり、sudoコマンド自体や、今まで使えていたsudoを含むスクリプトなどが使えなくなってしまうケースが出てきました。私も同様の現象にはまりました。私の場合は、スクリプト内で使用しているsudo付のコマンドでPATHが通らなくなってしまったという現象です。

今は以下のURLなどを参考に解決し、今まで通りの運用をしています。

記憶の片隅にでも覚えておいてもらえると役に立ったりするときがくるかもしれません。

[雑記]HDD 1.5TBが1万円切りました

Written by uechoco 1月 02
この記事を読む時間:54くらい

MacのTimeMachine用のHDDを、今使っている320GBのものから新調しようと思って、新しいのを買いに行きました。1GBあたりの値段がお手頃なのが、今は1.5TBのSATA HDDですね。なんと1.5TBで1万円を切っていました。びっくりです。一応WD15EARSを狙っていたのですが、売り切れていたので、旧モデルのWD15EADSを購入しました。まぁバックアップ用のHDDなので容量さえあればいいです。

少し前まではHitachi Deskstarシリーズをよく買っていたのですが、最近はWestern DigitalのEADS/EARSシリーズを買うようになりました。なんとなく後者のほうが安くて性能がいい感じがしています。

そういえば、昔NAS欲しいって思ってたけど、NAS市場は最近どうなんでしょう?