linux

autojumpはaptで入る

autojumpはaptでいれるのが楽(終わり)ただし、/usr/share/autojump/autojump.zshをsourceすること。これだけでうまく行く。

システムのパーミッションを大幅に狂わせてしまった時

事故が起こるのは常に一瞬であり、一方平穏を取りもどすのはとても難しい 後輩が公開Subversionリポジトリを研究室のサーバに作っていたが、聞けば/root/SVNに作ったという。いやいや、/rootは700でしょうと俺は諭して議論の結果/var/svnとかが適切だけども…

HDDの物理障害から立ち直る

HDDがある日突然ファイルが読めなくなった。言われてみれば予兆はあった。Picasaでファイルを開くと奇妙に遅いとかである。しかし、USB接続していたのでS.M.A.R.T.も読んでなかったし、音もちゃんと聞いていなかった。なによりバックアップを取っていなかっ…

今日使ったワンライナー

PREFIX="_large.png"; DEST="paged"; TYPE="png"; for src in <2->$PREFIX; do i=${src%$PREFIX}; (( j=i+1 )); [[ $(( i % 2 )) == 0 && -e $j$PREFIX ]] && convert +append $src $j$PREFIX -resize 800x $DEST/$((i/2+1)).$TYPE || { [[ $((i % 2)) == 0 …

Emacs+migemoの導入

ここではUbuntu で C/Migemo、ついでに JD - 憩いの場【Linux/Ubuntu】のcmigemoを導入する。Ubuntuユーザーは先にリンク先のppa追加しといてね! インストール $ sudo aptitude install migemo cmigemo Emacsの設定 ;C/Migemo (setq migemo-command "cmigem…

rsync+ハードリンクでリモートにバックアップをとる

なんかそういうのが必要だと聞いたのでやってみた。 $ rsync dir host:/path/to/ $ ssh host cp -lr /path/to/{dir, dir_`date '+%Y-%m-%d'`} エラーハンドリングとかは適当にやって!

sched_setaffinityで特定のCPUにプロセスを固定する

タイトルの通り。 #define _GNU_SOURCE #include <sched.h> /* 略 */ int rank; /* プロセスのランク */ int proc; /* プロセス数 */ cpu_set_t mask; CPU_ZERO(&mask); CPU_SET(rank % proc, &mask); sched_setaffinity(0, sizeof(mask), &mask); D_GNU_SOURCEを忘れ</sched.h>…

CPUのソケットを特定する方法

僕らのおうちのPCはマルチコアCPUを1ソケットのみ搭載でそんなに厄介ではないが、マルチコア・マルチプロセッサのリッチな環境を使用するにはそのソケットの番号をしりたい。ついでに、HTをあまり信用していない俺からすれば、何番と何番がHTで別コアに見え…

torqueのバッチ投入スクリプト

うちのクラスタのよくあるスペック(4コアのXeon E5530が二つで計8コア)用にスクリプトを書いてみる。 for N in 1 2 4 8 16; do cat > temp <

OMakeでこけた

最近のpLaTeXはptexliveというディストリビューションに移行しているようなので、俺も新しいマシンにはこれを入れてみた。ここで問題になるのがjbibtexがpbibtexに名前が変更されているということである。機能は同じとはいえ、OMakeを使用している俺には早晩…

俺のubuntuの1つだけがちゃんとevinceで表示できていなかった問題が解決した

俺のUbuntuのうち、ほとんどは10.04 (lucid)の新規インストールなんだが、一つだけ8.04 (hardy)からずっとアップグレードしてきてる奴がいる。彼は最近evinceで日本語ゴシックのファイルが表示できていなかった。結構困ってたんだけど、 $ sudo vim /etc/fon…

プリンタドライバの依存

EPSONのドライバを入れたいのだが、libltdl3に依存していてインストールできない。ソースを落としてきて自分でパッケージするとうまくlibltdlの最新版に依存するようになってくれた。

psm後始末

clone時にスレッド(pthread)を起こす そのスレッドはpthreadのcond_waitで待っている フラグが立てば(ぬるぽ->ポインタとか)起きる 空いているか、調べる 空いているかを返す(どうやって?) 返すのも共有メモリ経由しかないよね。 cloneするときに管理用領域…

automakeがまったく分からん

なんかあるらしい autoscan autoconf automake だがどこからどこまでが誰の領域かまったく分からない。

sshdが非確定的に起動に失敗する

システム起動時に起動しないことがある update-rc.dしても駄目。2回に一回くらい成功する。 ログ読んでみた /var/log/auth.logを見ろ sshd[2281]: error: Bind to port 22 on <IP addr> failed: Cannot assign requested address. sshd[2281]: fatal: Cannot bind any</ip>…

cloneの引数

スレッド? -プロセス間で共有できるメモリの使い方を教えてください。- C言語・C++・C# | 教えて!gooで触れられているとおりcloneの引数にSIGCHLDを付け加えることで親がwaitしてやることができるようになる。これはman cloneにも載っていなくて俺はわざわ…

psmの実装方針

とりあえず実装方針を@xharakenに相談して次のことを決定した。 psm_mmapの管理領域について まずmmapされたアドレスの一覧が必要。 プロセスのメモリ空間に取る。これを共有すると死ねる。 ちなみに後で子供がmmapできるようにするときにこの情報の更新もさ…

Ubuntuインストールした

Ubuntuインストールした VAIOのPCG-X 505/PにUbuntuをインストールしました、別に普通ですが相当苦労しました。通常インストール手段は次のようなものがあります。 CD/DVD USBメモリ ネットワーク とはいえこのパソコンには光学ドライブがついていない、とい…

なんか役に立つもの

strace プログラム中で strace commandとかしてやれば、システムコールの呼び出しを拾ってくれる。 strace -f -F commandってしとかないとforkの子を拾ってくれない? コアダンプ ulimit -c unlimited commandでコアダンプがとれるので、gdbの--coreオプショ…