入力モードをEmacsライクにするには?また、タブを直に入力したいときは?
入力モード設定には、setコマンド。直入力には、Ctrl+Vを使う。
コマンドラインの入力モード切替え方法。
# set -o vi
で、viモード
# set -o emacs
で、emacsモード。
コマンドラインで、タブなどを直接入力したい場合。
# [Ctrl+V][TAB]
で、入力される。
2007年11月27日火曜日
2007年11月25日日曜日
Cool Tools for UltraSPARC T1, T2
T1, T2向けの便利なソフト(開発者向け)が、配布されている。
http://www.opensparc.net/cool-tools.html
定番のGCC(gcc/g++)も、もちろんある。
locklint がおもしろそう。
プロジェクトに参加したいという向きは、おそらくこちら:
http://cooltools.sunsource.net/
これらのツールをダウンロードするには、下記で、Sun Developper Networkのアカウントを取得する必要があるようだ。
http://www.sunsource.net/servlets/Join
T1自体のチップデザインのソースコードも公開されている。Verilog HDLで記述されているらしい。
フリーのVerilogシミュレータ:Icarus などで、うごかせるのでないだろうか?
http://www.opensparc.net/cool-tools.html
定番のGCC(gcc/g++)も、もちろんある。
locklint がおもしろそう。
http://cooltools.sunsource.net/
これらのツールをダウンロードするには、下記で、Sun Developper Networkのアカウントを取得する必要があるようだ。
http://www.sunsource.net/servlets/Join
T1自体のチップデザインのソースコードも公開されている。Verilog HDLで記述されているらしい。
フリーのVerilogシミュレータ:Icarus などで、うごかせるのでないだろうか?
2007年11月19日月曜日
Investigate between PID and Descriptor.
素性が悪く、ある程度の規模のシステムである場合、アプリケーション・プログラム個別の振る舞いを調べるために、下記のようなことを調べたくなることがある:
前者を調べるには、fuser(1)コマンドが利用できる。
一方、後者をlsof(1)コマンドを利用する。
これらのコマンドでは、/procファイルシステムなどカーネルに近いデータにアクセスするため、rootで実行する必要がある。
fuserは、Linux, Solarisともにデフォルトで利用できる。
lsofは、すくなくともSolarisにデフォルトで用意されてはいないようだ。ソースコードは、ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
から入手できる[1]。移植性がよく考慮されたソースコードは、コンパイルが非常に楽だ。
[1] http://docs.sun.com/source/819-3789-10/methodology_security_toolkit.html#50597890_marker-829146
- あるファイルやソケットを使用しているプロセスは、どいつ(ら)なのか?
- あるプロセスが使用している、ファイルやソケットはどいつ(ら)なのか?
前者を調べるには、fuser(1)コマンドが利用できる。
一方、後者をlsof(1)コマンドを利用する。
これらのコマンドでは、/procファイルシステムなどカーネルに近いデータにアクセスするため、rootで実行する必要がある。
fuserは、Linux, Solarisともにデフォルトで利用できる。
lsofは、すくなくともSolarisにデフォルトで用意されてはいないようだ。ソースコードは、ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
から入手できる[1]。移植性がよく考慮されたソースコードは、コンパイルが非常に楽だ。
[1] http://docs.sun.com/source/819-3789-10/methodology_security_toolkit.html#50597890_marker-829146
2007年11月18日日曜日
Some Regular Expressions on sed, and perl.
最近試してみる機会があったワン・ライナー。文中の2種類の語を入れ替えるには?いわゆるテキスト中での「置換」sedとperlで試してみた。
なお、下記実験では、アンダースコア(_)2つを入れ換え処理におけるメタなキャラクタとして使用している; つまり処理前の文には、この文字列が含まれないことが前提だ。
まずは基本としてsedから。
TEXT="おもしろきこともなきよをおもしろく"; echo ${TEXT} \
| sed -e 's@おもしろき@__おもしろく@g; s@\([^_][^_]\)おもしろく@\1__おもしろき@g; s@__@@g';
⇒おもしろくこともなきよをおもしろき
perlでは?
TEXT="おもしろきこともなきよをおもしろく"; echo ${TEXT} \
| perl -pe 's@おもしろき@__おもしろく@g; s@\([^_][^_]\)おもしろく@\1__おもしろき@g; s@__@@g';
⇒おもしろくこともなきよをおもしろく
う~んちょっとへんだ。
グループ演算子のクォーテーションを取ってみる:
TEXT="おもしろきこともなきよをおもしろく"; echo ${TEXT} \
| perl -pe 's@おもしろき@__おもしろく@g; s@([^_][^_])おもしろく@\1__おもしろき@g; s@_
_@@g';
⇒おもしろくこともなきよをおもしろき
よし。所望の結果が得られた。
言語ごとの正規表現とふるまいについては、『詳説 正規表現』で丹念に論じられている。良い本だ。
なお、下記実験では、アンダースコア(_)2つを入れ換え処理におけるメタなキャラクタとして使用している; つまり処理前の文には、この文字列が含まれないことが前提だ。
まずは基本としてsedから。
TEXT="おもしろきこともなきよをおもしろく"; echo ${TEXT} \
| sed -e 's@おもしろき@__おもしろく@g; s@\([^_][^_]\)おもしろく@\1__おもしろき@g; s@__@@g';
⇒おもしろくこともなきよをおもしろき
perlでは?
TEXT="おもしろきこともなきよをおもしろく"; echo ${TEXT} \
| perl -pe 's@おもしろき@__おもしろく@g; s@\([^_][^_]\)おもしろく@\1__おもしろき@g; s@__@@g';
⇒おもしろくこともなきよをおもしろく
う~んちょっとへんだ。
グループ演算子のクォーテーションを取ってみる:
TEXT="おもしろきこともなきよをおもしろく"; echo ${TEXT} \
| perl -pe 's@おもしろき@__おもしろく@g; s@([^_][^_])おもしろく@\1__おもしろき@g; s@_
_@@g';
⇒おもしろくこともなきよをおもしろき
よし。所望の結果が得られた。
言語ごとの正規表現とふるまいについては、『詳説 正規表現』で丹念に論じられている。良い本だ。
2007年11月15日木曜日
SNMP, Daemon, Solaris 10
2014-05-26追記: Blogger への移行検討を期に用字、リンクを修正した。
今日ちょろちょろ調べていたのだが、かなり手間取ってしまった。
Solaris 10 は、それまでの UNIX 系 OS のサービス管理手法から、かなり変更されているようだ。
/etc/init.d/
配下の起動・停止スクリプトは、どういう扱いなんだろう。。。
ともあれ SNMP 全般に関して、[1] を参考にした。
どうやら、既存の
snmpd
の設定ファイル: /etc/snmp/conf/snmpd.conf
は、使用されない様だ—- かわりに、
/etc/sma/snmp/snmpd.conf
を使用する (snmpd(1))。Solaris 10 から導入された Service Management Facilities (SMF) の一員となっているらしい。
また snmpd には
snmpdx
という親玉がおり、この親玉のサブエージェントとして、snmpd は起動する (snmpdx(1M))。
設定後に snmpdx を下記コマンドにて再起動し[2]p.161、PC から
TWSNMP
[3] で MIB ブラウズしてみると。。表示されないorz。もっとも、コレはまだ使いこなせていないからだが。。。# /etc/init.d/init.sma restart
netsnmp
コマンド群では、ローカルからでもリモートからでも、追加設定した MIB 情報を読み取ることができた。netsnmp
コマンド群は、ディレクトリ: /usr/sfw/{sbin,bin}
配下に配置されている。References:
- [1] パソコンおやじ, “MRTGによるサーバ監視”, http://www.aconus.com/~oyaji/mrtg/snmp_linux.htm, 2005.
- [2] Sun Microsystems (現Oracle), “kill -HUP によって必ずしもエージェントが snmpd.conf 構成ファイルを再度読み取るとは限らない (4988483)”, 『Solaris 10 ご使用にあたって』, http://docs.oracle.com/cd/E19253-01/819-0305/fhkpa/index.html, Part No: 819-0305-15, 2005.
以前は、819-0305.pdf として配布されていたもの。 - [3] Twise Labo, Inc., 「TWSNMPマネージャ公式ページ」, http://www.twise.co.jp/, 2009-2012.
以下の書籍は、検定対策の本だが、Solaris10全般の機能について広く浅く知るのに役に立つ: