Linux

非公開ソースのインタフェースの数を調べる

ソースが公開されていないライブラリ、オブジェクトファイル(*a,*o)の呼び出されているAPI数を調べる。 次のスクリプトを実行させると、dにAPIの一覧がのる。 #!/bin/bash #呼び出し側のソース: find ${caller_path} -name "*.[oa]" | xargs nm | xargs cat…

mkisofs

mkisofs -d -N -D -J -r -V 'volume name' -publisher adachi -o 'IMG file(*.iso)' 'directory'

linux input subsystem参考

パート1 http://www.linuxjournal.com/article/6396 パート2 http://www.linuxjournal.com/article/6429オートリピート関連(パート2のリスト12、13)のIOCTLsは、実装されてないこともある。

プロファイリングツール

OProfile gprof ARM Profiler http://www.arm.com/products/DevTools/RVP.html LST google-perftool(移植が大変)ARMクロスコンパイル用のパッチあり。 http://cell.fixstars.com/ps3linux/index.php/Google-perftools%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6CP…

fedora11:OpenOffice.org3は公式からダウンロードせずyumで

公式から、tgzをゲットしたが、インストールに失敗する。(表記上は成功とでるが。) README.txtなども不親切極まりないので、サクッとyumでいれてしまおう。もちろん最新版が手に入る。 # yum -y install openoffice.org-core openoffice.org-langpack-ja_JP

Ethernetの転送速度計測ツール

netperf,netpipe,spray(8)など。なんでこういうツールが必要か? ddやcpを使った転送は、転送の時間に加え、ディスクへの書き込み、キャッシュの先読み、ツールの実行速度などが影響し、精密ではない。 また、udp、tcpで転送速度が異なる。したがって、nfsだ…

.svnを消す

svn exportの他には、 rm -rf `find ./ -type d -name .svn ! -regex \.svn/. -print`

early_printk、printasciiとは

printk()は、printf()と基本的にはやってることが同じで、 call_console_drivers()という関数を内部で呼び、 シリアルコンソールドライバを通して、シリアルのメモリマップIOに、バイト列をwriteする。 カーネルのブート時には、init_IRQ()で、割り込みが有…

ntpd設定

/etc/ntpd.conf service ntpd start ntpq -p しばらくすると出力結果の先頭に*がつく。同期に時間が5分程度かかる。chkconfig ntpd on chkconfig --list

Linux起動時間・IOアクセスの測定

bootchart http://www.atmarkit.co.jp/flinux/rensai/linuxtips/812usebootchart.htmlhdparm -tで計測 http://www.stackasterisk.jp/tech/systemManagement/hd01_01.jsp

make:verbose

make時に、引数にV=1 export KBUILD_VERBOSE=1 とすると、verboseモードになり、詳細になる。

diffまとめ

http://d.hatena.ne.jp/kakurasan/20070624/p1

svn: MKCOL of 'xxx': 405 Method Not Allowed 対処

http://www.theotto.org/psludge/2005/08/19/weird-subversion-corner-case/既存フォルダを作成しようとした時に出るエラー。work フォルダを一旦削除することで解決。でもだいたい、作業コピーがガタガタなことになってるので、mvで一旦退避して、upして、d…

insmod: error inserting 'hoge.ko': -1 Invalid module format対処

modinfoで、hoge.koを見る。 vermagicをチェックする。 Makefileを見る。 カーネルバージョンとモジュールバージョンが一致するか確認する。 一致しなければ、バージョンチェックをゆるくするカーネルコンフィグレーションパラメータがあるので、それを探す。

複数ファイルの文字列置換

find . -type f ! -path '*/.svn/*' -print | xargs sed -i "s/置換前/置換後/g"

svnの指定したリビジョンとの差分

差分取得 svn diff --revision 166とすると、リビジョン166と作業コピーの比較svn diff --revision 166:165とすると、リビジョン166,165の比較 作業コピー変更の取り消し svn merge コマンドを使うと、反対向きの差分を指定して作業コピーの変更を「取り消す…

lvを使ってファイルの文字コード変換する

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/448cnvunicode.html より$ lv -Oej file.txt.utf8 > file.txt.euc-O 出力ファイルの形式指定 -ej euc-jpnkf -e file.txt.utf8 > file.eucと同じ

emacs 計算

(format "%x" (- #x4e01d0 29672) で、C^j "4d8de8"emacs上で簡単に計算ができる。(スクラッチで実行すること)ただし、ビット数に注意せよとのこと。

ext2ディスクイメージ作成

最近は大容量のUSB HDDが安い。だが、だいたいはFATである。 FAT32などでは、シンボリックリンクが作れないなどいろいろ不都合があるだろう。dd if=/dev/zero of="$dev_ram" bs="$fs_blocksize" count="$fs_blockcount" mkfs.ext2 -v -m0 -b "$fs_blocksize"…

コマンドライン上の16進数10進数変換

printf[adachi@adachi ~]$ printf %08x 2147486184634 1f40026b4babc[adachi@adachi ~]$ echo "ibase=16;obase=10;A"|bc A [adachi@adachi ~]$ echo "obase=10;ibase=16;A"|bc 10上のパターンでAとなっているのは、 ibaseを先に16進数として指定することによ…

メモリスワップ

Linuxのカーネル空間内はスワップ対象外

正規表現

次の正規表現は無効/^[a-Z][0-9]{7}$/正しくは、下記のようにする。/^([a-z]|[A-Z])[0-9]{7}$/man asciiをすればわかるように、aはZよりも、コードの値が大きい。

ptetex3のインストール

http://fedorakenken.at-ninja.jp/node36.html#SECTION06631000000000000000 http://www.nn.iij4u.or.jp/~tutimura/tex/ptetex.html#downloadを参照のこと。 いまのところ、rtexは、ptetex3を呼び出していると解釈している。

linux上での作業ログ

ミラクルリナックスに作業ログに関する概念的な説明 http://blog.miraclelinux.com/ctd/2006/08/post_a6c8.html

正規表現6文字の数字

validates_format_of :code, :with => /^[0-9]{6}$/

SVNブランチとトランクとタグ

trunk 機能追加を実装していく。リリースすると、1.0→2.0になる。 branches バグ修正用。1.0→1.0になる。 私は、動作する環境に応じてbranchesの配下に1.1,1.2,1.3などをつくり、 1.1:実機動作 1.2:socket対応だが、実機動作しない 1.3:socket対応せず、実機…

bashの入力作業の軽減について

bashクックブックの 18章入力作業の軽減による作業時間の短縮 にまとめてある。 というか、この本はこの章を知りたいがために買ったようなものだが。 だが、新しいことはなにも書いていなかった。 コマンド履歴のインクリメンタルサーチについてすら書いてな…

rpm、debファイルからの抽出

http://plamo.linet.gr.jp/index.php?FAQ%2F11deb ファイルは ar -t XXX.deb で中身のリストを、ar -x XXX.deb で中身を取り出すことが可能です。 取り出したファイルは tar.gz の形式になっているので、tar コマンドで展開することができます。

sshでプロキシをフォワード

~/.ssh/ex_config ProxyCommand connect-proxy -H <プロキシサーバのIPアドレス>:8080 %h %p ssh実行時 ssh -F ex_config <外部のホスト>

ssh+tarでファイルコピー

(cd path && tar cf - .) | ssh user@hostname "(cd path && tar xvfp -)" 暗号化したければ、送信側は tar の後、受信側は tar の前にいれてやればよい。 何のために ssh 使ってるかわからないけど。scp使ってください. sshログインの自動化(参考 http://ww…