OpenSolaris OS 2008.05 ログイン時にスクリプトを走らせたい

PC に OpenSolaris OS 2008.05 (以下 OSOS) をインストールして使っているのですが、手元にあるキーボードは JIS 配列なので、Ctrl と CAPS を入れ替えたいなーと思いました。

学生時代は  tcsh を使っていたのですが、サンに入社して先輩から「管理者は sh か csh を使うんだ」と教わりました。まぁ学生時代も SunOS やら Solaris のホストを管理するとき、su の後は sh で作業するよう言われていたので、言わんとすることはわかり、filename completion がある csh を使うようにしていました。csh ではログイン時に .login が呼ばれて、シェル起動時に .cshrc が呼ばれるという感じ (どこまで厳密かは覚えてませんが) だったので、xmodmap でキー入れ替えを呼ぶのは .login で行っていました。

はて、bash が初期設定でのシェルな OSOS の場合はどこで xmodmap を呼べばよいのだろうと探してみました。ホームディレクトリの中を見てみるも、.dt 周りのファイルは見当たりません。.bashrc で設定したところ、端末エミュレータを起動すれば設定が有効になるのですが、たまに何かの拍子で設定が戻ったりします。ということは、きっとデスクトップ環境 GNOME でこのあたりを設定できるに違いないと考え、ちょっと探したところ Solaris 用 GNOME のマニュアルに

  • ユーザー単位の設定はセッションマネージャ
  • システム全体の設定は /usr/dt/config/Xsession.d 以下にスクリプトを置く

とありました。ユーザー単位ではスクリプトをアプリケーションとして登録してセッションマネージャで起動、という感じでしょうか。手元の OSOS を見たところ、

test1@os200805-1:/usr/dt# ls
appconfig  config
test1@os200805-1:/usr/dt# cd config
test1@os200805-1:/usr/dt/config# ls
Xinitrc.jds
test1@os200805-1:/usr/dt/config#

とかなり寂しい内容です。/usr/dt/bin 以下も追加パッケージで入手ということでしょうか。まだ使い始めたばかりでほとんど何もわかっていませんが。

もう少し探してみたところ、bash の場合は .bash_profile か .bash_login か .profile で設定可能とありました。あ、、、そういえば bash って Bourne Shell 系でしたっけ。ところで、man sh を見たところ ksh93 の man ページが表示されます。

test1@os200805-1:~$ ls -l /usr/bin/sh
lrwxrwxrwx 1 root root 13 2008-05-12 13:28 /usr/bin/sh -> ../../sbin/sh
test1@os200805-1:~$ ls -l /sbin/sh
lrwxrwxrwx 1 root root 20 2008-05-12 13:25 /sbin/sh -> ../usr/bin/i86/ksh93
test1@os200805-1:~$ ls -l /usr/bin/i86/ksh93
-r-xr-xr-x 2 root bin 8124 2008-04-27 10:43 /usr/bin/i86/ksh93

さて、.bash_profile に xmodmap ~/.xmodmaprc と書き、ホームディレクトリに

remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L

という .xmodmaprc ファイルを作ってログアウトしてログインしたところ、、、うーん、適用されていません。xmodmap を /usr/X11/bin/xmodmap としても変わらず、もしや .bash_profile が呼ばれていないのではと、echo aaa > /var/tmp/aaa と追加してみてログインし直しても /var/tmp/aaa はありません。ログイン時は .bash_profile などが呼ばれるとあちこちに書いてあるのですが、OSOS は動きが違うのでしょうか。.dtprofile を手で作成とかでしょうか。。

ひとまず、OpenSolaris.com の Forum で質問してみました。

http://forums.opensolaris.com/thread.jspa?messageID=721&#721

投稿されたコメント:

xorg.conf 編集した方がはやそうな気がします…。

Posted by thaniwa on 5月月 13日, 2008年 at 01:13 午後 JST #

情報ありがとうございます。OpenSolaris OS 2008.05 は独特の作法があるようで、簡単には xorg.conf の編集ができず、試したところ .profile か .xprofile でできました。

Posted by hiroa on 5月月 13日, 2008年 at 03:35 午後 JST #

xorgcfgが動かないようですね…。
rootユーザで init S, Xorg -configure で xorg.conf.new ができるので、それを使うという感じで対応できます。

Posted by thaniwa on 5月月 14日, 2008年 at 03:00 午前 JST #

コメント
  • HTML文法 不許可
About

user13138578

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
今日