9月 162011
 

Mac OS X Server で OpenLdap 用いてユーザ管理をしているとき,何かの拍子でログインができなくなってしまうことがあれば,まずはログを確認みましょう.

/var/log/system.log を確認したとき

May 30 14:23:42 hostname com.apple.launchd[1] (org.openldap.slapd[190]): Exited with exit code: 1
May 30 14:23:42 hostname com.apple.launchd[1] (org.openldap.slapd): Throttling respawn: Will start in 10 seconds

/var/log/slapd.log を確認したとき

May 30 15:20:40 hostname slapd[932]: bdb(dc=hostname,dc=example,dc=com): PANIC: fatal region error detected; run recovery
May 30 15:20:40 hostname slapd[932]: bdb_db_open: Database cannot be opened, err -30978. Restore from backup!
May 30 15:20:40 hostname slapd[932]: bdb(dc=hostname,dc=example,dc=com): DB_ENV->lock_id_free interface requires an environment configured for the locking subsystem
May 30 15:20:40 hostname slapd[932]: bdb(dc=hostname,dc=example,dc=com): txn_checkpoint interface requires an environment configured for the transaction subsystem
May 30 15:20:40 hostname slapd[932]: bdb_db_close: txn_checkpoint failed: Invalid argument (22)
May 30 15:20:40 hostname slapd[932]: backend_startup_one: bi_db_open failed! (-30978)
May 30 15:20:40 hostname slapd[932]: bdb_db_close: alock_close failed
May 30 15:20:40 hostname slapd[932]: slapd stopped.
May 30 15:20:40 hostname slapd[932]: connections_destroy: nothing to destroy.

このようなエラーがたくさん出力されている場合,何らかの原因で slapd が起動できていないことを表します.

次に,

# /usr/libexec/slapd -Tt

を実行したとき

overlay_config(): warning, overlay "dynid" already in list
bdb(dc=hostname,dc=example,dc=com): PANIC: fatal region error detected; run recovery
bdb_db_open: Database cannot be opened, err -30978. Restore from backup!
bdb(dc=hostname,dc=example,dc=com): DB_ENV->lock_id_free interface requires an environment configured for the locking subsystem
backend_startup_one: bi_db_open failed! (-30978)
slap_startup failed (test would succeed using the -u switch)

このようなエラーが出た場合は,OpenLdap のデータベースが壊れています.
この場合は,DB のバックアップをとってから

# cp -R /var/db/openladp /var/db/openladp.backup

DB の修復を行いましょう.

# db_recover -h /var/db/openldap/openldap-data/

これで以下のような結果が出れば DB は修復されました.
slapd が起動するようになるはずです.

# /usr/libexec/slapd -Tt
overlay_config(): warning, overlay "dynid" already in list
config file testing succeeded

参考ページ:
Mac OS X 10.5 Server OpenLdapのDBが壊れた・・

9月 162011
 

主にシェルで作業をする際,screen コマンドを使っていらっしゃる方も多いと思います.

間違えて screen 内で screen を呼び出してしまうと,エスケープキーが衝突してしまい,内側または外側の screen をコントロールできなくなってしまうことがあります.

このようなときは,片方のエスケープキーを一時的に変更することで両方の screen をコントロールすることが可能になります.

例えば,デフォルトでエスケープキーを C-a にしている場合は,

C-a のあと,

:escape "^Zz"

と入力することで,エスケープキーを一時的に C-z に変更することができます.
これで,C-a と C-z を使い分けて内側と外側の screen を使い分けることが可能となります.

参考ページ:
pLog  二重にscreenして(・ω・)な人へ

9月 162011
 

Mac と Linux の話ばかりで面白く無いので…

Windows Vista, Windows 7 で Caps Lock を Control キーにバインドするためには,レジストリを変更することで対応できます.

Caps Lock キーを Control キーにしてしまう場合(Caps Lock キーを消してしまう)は以下の内容の control.reg ファイルを作って,実行しましょう.

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00

再起動すると Caps Lock キーが Control キーになっているはずです.

Caps Lock キーと Control キーを入れ替えてしまう場合は以下の内容の swap_control.reg ファイルを作って,実行しましょう.

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,1d,00,3a,00,3a,00,1d,00,00,00,00,00

再起動すると,Caps Lock キーと Control キーが入れ替わっているはずです.

元に戻す際は,regedit を用いて [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] 内の Scancode を消して再起動してください.

参考ページ:
Archive: Scan Code Mapper for Windows

9月 162011
 

/etc/make.conf

# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CHOST="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -mtune=generic -O3 -pipe"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j9"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="x86_64-pc-linux-gnu"
# These are the USE flags that were used in addition to what is provided by the
# profile used for building.
USE="-gnome -kde -cups -gtk -alsa -canna -dvd -cdr mmx sse sse2"

GENTOO_MIRRORS="ftp://ftp.iij.ad.jp/pub/linux/gentoo/"

SYNC="rsync://rsync.jp.gentoo.org/gentoo-portage"

CFLAGS の見直し
(gcc 4.2 から -march=native が導入された)
(USE の見直し)
全体的な見直しが必要かも!
おもに CFLAGS 調べんとあかん for i7 or Xeon

9月 162011
 

Mac でのデフォルトブラウザやメーラの変更方法を調べたついでに Ubuntu におけるデフォルトアプリケーションを変更する方法も書いておく.

Ubuntu では(Windows もそうだった気がする),一元的にデフォルトアプリケーションを管理・変更することができる.

以下の要領で既定のプログラムを確認・変更することができる.

  1. システム → 設定 → 既定のプログラム
  2. お望みのアプリケーションを選択する

これでリンクをクリックしたときに Evolution ではなく Thunderbird が起動するようにすればイライラすることもなくなるのではないでしょうか ;-P