
Ubuntu日本語フォーラム

ログインしていません。
初めまして。 shirakawa と申します。
ubuntu 9.04 以前では,グラフィカルログインした時には ~/.xsession の内容が反映されていたのですが、
ubuntu 9.10 では、グラフィカルログインの画面などが大幅に変更され多々ためか ~/.xsession の内容が上手く反映されてくれません。
どのような手順を踏めば ubuntu 9.10 においても ~/.xsession の内容を反映させることができるか教えて頂けないでしょうか。
よろしくお願いします。
現在は、 /etc/init/gdm.conf を削除させて無理やりテキストログインにして ~/.xsession の内容を反映させているのですができればグラフィカルログインにしたいと考えてます。
オフライン
/etc/X11/Xsessionや/etc/X11/Xsession.d/*をちらっとみた感じではgdmから正常に起動した場合は、ユーザ定義のセッションファイルを見にいかないようです。どうしても、そうせざるを得ない事情があるのであれば、/etc/X11/Xsessionを編集して読みにいくように変えることもできるかと思いますが、システムのファイルを変更するのはあまりおすすめできません。
もしよろしければ、手段では無く、最終的に実現したい目的を投稿してみて下さい。なにかよい代替手段のアドバイスがつくかも知れません。
オフライン
hmatsues様
ご返答ありがとうございます。
gdm から正常起動した場合には、簡単に ~/.xsession の内容を反映させる方法がなさそうな事が分かって勉強になりました。また、/etc/X11/Xsession の内容を変更するスキルはないのでここから ~/.xsession を反映させることはとても難しそうです。
最終的に実現したい目的としましては、
- デフォルトのインプットメソッドを UIM に変更する。
- 日本語配列のキーボードー(Thinkpad X60s) を使っているのですがそれを英字配列に変更する。
- ctrl+alt+backspace を有功する
これらのことができればと思ってます。
今まではこれらの内容を ~/.xsession で
setxkbmap -model us -layout us setxkbmap -option terminate:ctrl_a export XMODIFIERS='@im=uim' export GTK_IM_MODULE=uim export QT_IM_MODULE=uim export XIM_PROGRAM=/usr/bin/uim-xim uim-xim & uim-toolbar-gtk-systray &
としておりました。
これらの内容をグラフィカルログインで反映させる方法のよいアドバイスがありましたら投稿よろしくお願いします。
オフライン
偉い人ではないので様付けはご勘弁下さい。
私自身はまだ試していないのでなんですが、以下を試してみていただけますでしょうか。
- デフォルトのインプットメソッドを UIM に変更する。
->言語サポートからUIMが選択できないでしょうか。
- 日本語配列のキーボードー(Thinkpad X60s) を使っているのですがそれを英字配列に変更する。
->キーボード設定のレイアウトの項目で設定できないでしょうか。
- ctrl+alt+backspace を有功する
->/etc/X11/xorg.confに下記を追記して再起動してみて下さい。
Section "ServerFlags"
Option "DontZap" "False"
EndSectionもうちょっとだけよく読んでみると、~/.xsessionは読み込まれないようですが、~/.xsessionrcは読み込まれるようです。もしかしたらファイル名を変更した方が早いかも知れません。
オフライン
すいません。書き忘れました。
もうちょっとだけよく読んでみると、
は、
/etc/X11/Xsession.d/40x11-common_xsessionrc
の中身のことです。
オフライン
hmatsue による投稿:
- ctrl+alt+backspace を有功する
->/etc/X11/xorg.confに下記を追記して再起動してみて下さい。コード:
Section "ServerFlags" Option "DontZap" "False" EndSection
横から失礼します。
9.10ではDontZapの設定はxorg.confから行うのではなくなったようです。
参考: https://wiki.ubuntu.com/X/Config/DontZap
あ、上のリンク先のページを見るかぎり、~/.xinitrcはロードされそうな感じですね。
ご参考までに。
オフライン
> toshioさん
ご教示多謝です。
XのオプションからDontZapが無くなっていたのですね。気づいていませんでした。
/etc/gdmあたりから追っていくと、
~/.xprofile
~/.profile
~/.Xmodmap
~/.Xkbmap
なんかも参照されるようです。
~/.xinitrcを明示的に読みにいく指定は無いような。。
Xが自動的に読みにいくのだったかしら。
オフライン
hmatsue さん、toshio さん
ご返答ありがとうございます。
~/.profile に ~/.xsession の内容を記述してみたところ反映された内容と反映されない内容がありました。
インプットメソッドについては思い通りに変更(UIMに変更)する事ができましたが、
キーボード回りについては上手く反映することができませんでした。
日本語配列のままで、ctrl+alt+backspace(setxkbmap -option terminate:ctrl_a) も有効になりませんでした。
また、~/.xsession, ~/.xsessionrc, ~/.xinitrc のいずれも反映されませんでした。
gdm が起動している状態から思い通りの設定にすることはすごく難しいようです。
すなおに、テキストログインから startx で X を起動させた方が良さそうです。
余談になりますが、以前
~/.xsession の内容を /etc/gdm/Xsession に無理やりコピーすると ~/.xsession の内容で X が起動しました。
おそらくこれを行うと他のユーザにも影響されるので好ましくないですよね。
オフライン
自己解決できました。
最終的には、 /etc/gdm/Xsession の内容を変更する形となるのですが、
/etc/gdm/Xsession 内にある
command="$@" と言う記述を
command="custom" に変更することにより ~/.xsession に読みにいくようです。
よくよく見れば、 /etc/gdm/Xsession 内に
# This is SORT OF LIKE an X session, but not quite. You get a command as the # first argument (it could be multiple words, so run it with "eval"). As a # special case, the command can be: # default - Run the appropriate Xclients startup (see the code below) # custom - Run ~/.xsession and if that's not available run 'default'
と command変数を custom に変えれば ~/.xsession を実行するといった内容が示唆されいました。
ただ、 ctrl+ALT+Backspace を有効にする ''setxkbmap -option terminate:ctrl_a'' は反映されませんでした。
この内容に気づけたのも皆様のおかげです本当にありがとうございました。
オフライン
> shirakawaさん
その状態では引き数に応じて挙動を変えるはずだった部分が正常に機能しなくなるので、あまりよい方法では無いように思います。
.xsessionrcに書いておけば実行はされるはずなので、うまくいかないところがあれば、個別に原因を探っていくしかありません。
例えばXを止めるキーシーケンスを有効にするには、
setxkbmap -option terminate:ctrl_alt_bksp
だったりしないでしょうか。
オフライン
shirakawaさん、Ubuntuがバージョンアップしてアップデート使用とするなら
まず、そのバージョンのリリースノートを第一に読むように心がけましょう。
どこがどのように変わったのかアウトラインをつかんでおくと質問されているような
問題は事前準備段階でご自分で解決できるようになると思います。
頑張ってください。
KarmicKoala/ReleaseNotes/ja : XorgのCtrl-Alt-Backspaceは標準で無効化されています
https://wiki.ubuntu.com/KarmicKoala/ReleaseNotes/ja
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
hmatsue さん、のんきさん アドバイスありがとうございます。
やはり、システムに関わる部分の変更はもっと慎重にすべきでした。
試行錯誤してみたところ、/etc/gdm/Xsession を改変せずに設定を反映することができました。
~/.xprofile に記述していくことにより成功しました。
~/.xsessionrc ですが、私の環境ではまったく反映されませんでした(環境により異なるのでしょうか)。
当初の目的の以下の3つですが、
- デフォルトのインプットメソッドを UIM に変更する。
- 日本語配列のキーボード(Thinkpad X60s) を使っているのですがそれを英字配列に変更する。
- ctrl+alt+backspace を有効する
UIM にする設定は以下の記述により問題なく反映されました。
export XMODIFIERS='@im=uim'
export GTK_IM_MODULE=uim
export QT_IM_MODULE=uim
export XIM_PROGRAM=/usr/bin/uim-xim
uim-xim &
uim-toolbar-gtk-systray &
キーボード配列を英字配列にすることに関しては、
xmodmap -pke > ~/.Xmodmap
と目的の配列を ~/.Xmodmap に記憶させて ~./xprofile に
xmodmap $HOME/.Xmodmap
と記述することで解決できました。ただし、起動時のキーボードオプションの選択を USA にする必要がありました。
ctrl+alt+backspace を有効する。
これに関しては、有効にすることができませんでした。
Xを止めるキーシーケンスは、ご指摘の通り
setxkbmap -option terminate:ctrl_alt_bksp
でしたが、このコマンドを ~/.xprofile に記述しても ctrl + alt + backspace は有効になりませんでした。
また、「システム->設定->キーボード->''レイアウト''タブ->レイアウト->Key sequence to kill the X server」
を有効にしても X を落とすことができませんでした。
X(Gnome) が起動した後で
setxkbmap -option terminate:ctrl_alt_bksp
とするとctrl + alt + backspace は有効になりますが、キーボードの設定が元に戻ってしまいました。
X を落とすことはできませんでがほかの機能は思い通りにすることができました。
X を落とすことについてはあきらめることにします(正規の方法で落とせば良いだけのことですので)。
皆さん、いろいろとありがとうございました。
オフライン
> shirakawaさん
まず最初に、いろいろと推測で書き込んでしまったことをお詫びいたします。
確認してみたところ、~/.xsessionrcは実行されませんでした。その理由が下記にありました。
https://bugs.launchpad.net/ubuntu/+source/gdm/+bug/465349
てっきり変数の内容が前のシェルから引き継がれているものだとばかり思っていましたが。。
多分、そのうち直ると思います。
とりあえず、.xprofileでなんとかなったようなので、さしあたって問題は無いかと思いますが、為念。
Xを落とすキーについては、toshioさん、のんきさんが情報を貼って下さっています。
また、その主旨をkiyoshiさんが#12で和訳して下さっているので、必要であれば、そちらで設定して下さい。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
> shirakawaさん
> kiyoshiさん
すいません。私が見落としていただけで、すでに試されていたのですね。。
オフライン
hmatsue さん
いえいえ、いろいろと教えてくださりありがたいと思ってます。
~/.xsessionrc が実行されない理由も教えて下さりありがとうございます。
X を落とす方法はまた、いろいろと試してみます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
「システム->設定->キーボード->''レイアウト''タブ->レイアウト->Key sequence to kill the X server」を有効にして、再起動してみて、ctrl + alt + backspace を試してみても X が落ちることはありませんでした。
Xmodmap でキー配列を変更した事が原因かもしれません・・・(確証はありませんが)。
kiyoshi さんのオフトピを読む限り
ctrl + alt + backspace は封印した方が良さそうですね。
無理に有効にする必要のない機能ですし、ctrl + alt + backspace を有効にする事は止めておきます。
オフライン