2005-01-01から1年間の記事一覧

Xのキーコードを調べる方法.

$ xev

X でキーマップを変更する.

XFree86 や xorg では,大抵ログイン時に xinitrc 経由で ~/.Xmodmap からキーマップの設定が読み込まれる.たとえば Escape と全角/半角を入れ替える場合には ~/.Xmodmap に次のように書く. keycode 49 = Escape keycode 9 = Zenkaku_Hankaku

コンソールのキーコードを調べる方法.

showkey を使う.showkey は,10秒間入力が無いと終了する.

キーマップの設定方法

debianでは,キーマップの設定は /etc/console/boottime.kmap.gz に保存されている.そして,起動時に # loadkeys /etc/console/boottime.kmap.gzが実行されることで設定が反映されるようになっている.jp106なキーボードの設定ファイルは/usr/share/keymaps…

英語で ChangeLog を書くときのテンプレート(?).

修正 変更系 Fixed A. Various fixes to A. Another fix for A. Changed A. Corrected A. Replaced A with B. Updated A. Improved A. Reimplemented A. 追加系 Added new support for A. Implement A. Disable A. 削除系 Removed useless A. Removed unused…

global を使ったソースコードからHTMLを生成する方法.

ソースコードからHTMLのドキュメントを生成する方法. $ cd path/to/sources $ htags$ cd HTML $ firefox index.html &

global ソースコードのタグ付けツール.

ソースコードにタグを付けるツール.インストール方法 $ apt-get install globalタグのファイル GTAGS,GRTAGS,GSYMS を生成する方法. $ cd path/to/sources $ gtags生成したタグは,emacsからも使える.基本的な ~/.emacs の設定は次のようになる. ;;; -- …

debian のパッケージのアップデート

gdb の snapshots 版を試してみたくなったので, deb なパッケージを作ってみることにした. $ apt-get source gdb $ wget ftp://sources.redhat.com/pub/gdb/snapshots/current/gdb-6.3.50.20050713.tar.bz2 $ cd gdb-6.3 $ uupdate -u ../gdb-6.3.50.20050…

Delta Debugging

http://japan.linux.com/desktop/05/07/12/0249222.shtml

Linux device driver 第3版

http://lwn.net/Kernel/LDD3/kernel 2.6 に対応した「Linux デバイス ドライバ」 の第3版の pdf

dyn-tick

http://japan.linux.com/kernel/05/07/09/1345253.shtml より dyn-tick(Linux用Dynamic Tick Timer)は、HZを動的に変化させるものである。dyn-tickを使用すると、負荷がある間はフルのHZでシステムは動作する。そしてアイドル時に可能であればTickをスキッ…

IEにFirefox風検索バーをくっつけるBookmarklet

http://la.ma.la/blog/20050705015635

makefile に於ける依存関係

Makeの依存関係を生成する方法には,色々選択肢がある.手っ取り早いのは depend: makedepend -Y -- $(CPPFLAGS) -- *.cc とMakefileに書いておいて, $ make dependとすることで Makefile自身に依存関係を自動で記入する方法.しかし,この方法には以下の二…

icc で stl を使うと,リンクで失敗する.

intel compiler 8.1 のバグ?で,環境変数 GXX_ROOT と GXX_INCLUDE を設定すれば回避できるらしい. $ export GXX_ROOT=/usr/lib/gcc-lib/i486-linux/3.3.5 $ export GXX_INCLUDE=/usr/include/c++/3.3と言う感じで,gcc-3.3あたりに付いてくるstlのディレ…

debian で intel compiler (icc)

intel コンパイラを debian で使う方法.intel compiler は rpmで配布されている.そこで, alien で rpm を deb に変換する. $ fakeroot alien intel-icc8-8.1-032.i386.rpm $ fakeroot alien intel-iidb8-8.1-049.i386.rpmこれで, intel-icc8_8.1-33_i38…

NFSサーバと tcpwrapper

NFSサーバでの tcpwrapper を利用したアクセス制限の設定方法.NFSは以下のサービスを組み合わせて実現される portmap rpc 関連のサービスとポート番号を管理するデーモン nfsd nfs server process mountd mount daemon lockd NFS lock manager (NLM) statd …

emacs で,クラスの定義から,実装の雛形を作成する作戦.(その1)

とりあえず M-x replace-regex で何とかする. class Hoge { int set(float *val); }から int Hoge::set(float *val);を作るには, M-x replace-regex で \( *\)\([ A-Za-z_:]+\) +\([A-Za-z_:][A-Za-z0-9:_]*\) *(を \2 Hoge::\3(改行は C-q C-j で入力する…

emacs で mini buffer にて 改行を入力する方法.

mini buffer で改行を入力するには C-q C-j とする.

vi で置換

カーソル行中のSRCをDSTに置換 :s/SRC/DST/gファイル中のSRCをDSTに置換。 まず、SRCがある行を/SRCで検索して、見つかった行に対してs/SRC/DST/gで置換を実行する。 :/SRC/s/SRC/DST/g :/SRC/s//DST/gファイル全体に対して置換をする場合は先頭に"g"をつけ…

頻繁にログインに失敗したユーザをログイン不可にする方法.

Enterprise Networking Planet - News, trends and advice for network managers and adminsよりredhat系なら /etc/pam.d/system-auth に以下を追加 auth required pam_tally.so onerr=fail no_magic_root account required pam_tally.so onerr=fail deny=3 …

ログインに失敗した場合の待ち時間を無しにする方法.

Enterprise Networking Planet - News, trends and advice for network managers and adminsよりredhat系なら /etc/pam.d/system-auth に以下を追加 auth required /lib/security/$ISA/pam_unix.so nodelay ちなみに $ISA は The $ISA token is a PAM builti…

テキストアートで,ビットフィールドを説明

ソースコードのコメントでビットフィールドを説明する為のテキストアートのテンプレート.結構作るのに時間が掛ったので記念に貼っておく.パケットのヘッダの各ビットの説明とか, ドライバが叩くポートとかレジスタの説明を書くときに便利. 4 0 |-+-+-+-|…

VMware Workstation の設定

ノートPCなど speed step によりホスト側CPUのクロックが頻繁に変わる場合 C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini host.cpukHz = 1000000 host.noTSC = TRUE ptsc.noTSC = TRUEvmxent を使う場合。 …

povray で ポリゴン を描画

mesh2 が便利. mesh2 { vertex_vectors { N, <X1, Y1, Z1>, : <Xn, Yn, Zn>, } face_indices { M, <a, b, c>, : <d, e, f>, } }頂点の配列を用意し, 各面はその頂点のindexで指定する. 点法線も指定できるが,省略した場合は自動的に面法線を使って描画するみたい.</d,></a,></xn,></x1,>

expect

telnet とか ftp とかパスワードの入力が必要なコマンドをシェルスクリプトから実行する方法.こういう用途には,expect が便利.たとえば passwd コマンドをシェルスクリプトから実行する場合は,こんな感じ function setpasswd() { USER=$1 PASS=$2 expect…

brutessh (ssh への辞書攻撃)対策.

最近ssh への辞書攻撃(brutessh)が流行っている.そこで,linux の iptables のモジュールで 対策を取る方法について色々検討してきた.その結果, ipt_recent モジュールが一番良い方法であるという結論に達した.ipt_recent モジュールとは, カーネル空間…

debian で man pthread_create などを見るには.

debian は,デフォルトでは開発者向けのmanをインストールしない模様. $ apt-cache search manpagesと検索して必要そうなパッケージを検索. apt-get install した.ちなみに,大体以下のmanを入れておけば事足りるみたい. manpages-ja-dev - Japanese ver…

ある時間帯に改善されたファイルの一覧を得る

過去 1時間以内にステータスが更新されたファイルの一覧を得る. $ find / -ctime -1 過去 1時間以上2時間以内にステータスが更新されたファイルの一覧を得る. $ find / -ctime +1 -a -ctime -2

ファイルの属性を変更する.

chmod だけじゃなくて, chattr ってのもある.詳細は man を見ること.

プロセスが使用中のファイルの一覧を得る.

$ lsof