私はXubuntu 14.04.2ユーザーです。ロシア語と英語の2つのキーボードレイアウトがあります。時々ラップトップを閉じてから戻って仕事を続けようとすると、Xubuntuはユーザーのパスワード(英語の文字と数字で構成されるパスワード)の入力を求めます。
ただし、多くの場合、私のキーボードレイアウトはロシア語に設定されており、キーボードの切り替えは機能しません。
ラップトップを再起動して修正する必要があります。
どうすればいいですか?
私はあなたとまったく同じ問題を抱えており、これを行うことで回避できます:
gnome-screensaver
を取り除く:
Sudo apt-get purge gnome-screensaver
Xスクリーンセーバーをインストールします:
Sudo apt-get install xscreensaver xscreensaver-data xscreensaver-gl
システムがロックする前に英語に切り替えるのを忘れたときはいつでも、 Ctrl+Alt+F1 管理ユーザーとしてログインし、kill -9 xscreensaver
すると、再びログインできます!
(これは単なる回避策であり、実際の「解決策」ではありませんが、私にとってはうまく機能し、シャットダウンして再起動するよりも間違いなく優れています)
Ubuntu 16.04は別のインターフェース名を使用します:
dbus-monitor --session "type=signal,interface=com.canonical.Unity.Session" |
while read MSG; do
LOCK_STAT=`echo $MSG | egrep -o member='.*' | cut -d '=' -f 2`
if [[ "$LOCK_STAT" == "Locked" ]]; then
CURRENTL=$(setxkbmap -query | grep layout | awk '{print $2}')
echo "Locked with current layout ${CURRENTL}"
setxkbmap us
fi
if [[ "$LOCK_STAT" == "Unlocked" ]]; then
setxkbmap $CURRENTL
echo -n "Returning to"
setxkbmap -query | grep layout
fi
done
[編集]これは回避策かもしれませんが、現在は他のレイアウト切り替えキーバインディングをいじっています
[オリジナル]これは私にとってはうまくいきましたが、起動時に実行できず、バックグラウンドで実行し続けることができませんでした。
ロック信号を聞き、レイアウトをパスワードの1つに変更します。 (ugい回避策は機能するようですが)
dbus-monitor --session "type=signal,interface=org.gnome.ScreenSaver" |
while read MSG; do
LOCK_STAT=`echo $MSG | grep boolean | awk '{print $2}'`
if [[ "$LOCK_STAT" == "true" ]]; then
setxkbmap us
else
setxkbmap -option grp:switch,grp:alt_shift_toggle,grp_led:scroll us,il
fi
done