Windows 7 マシンから Ubuntu マシンに xrdp セッションを開くと、US キーボード レイアウトが使用されます。ただし、Ubuntu マシンのデフォルトのキーボード レイアウトは異なるため、xrdp セッション中にそれを使用したいと思います。どうすればこれを修正できますか?
答え1
説明がほとんどないようですので、ここに投稿したいと思います。
必要な言語/キーボード入力を見つけるここ
たとえば、fr-be フランス語 (ベルギー) は 080C です。
次に、これらのコマンドを実行して、選択した入力のキーボード マッピングを生成します。
xrdp-genkeymap km-080C.ini
xrdpフォルダにコピーするには
sudo mv km-080C.ini /etc/xrdp
ファイルの権限を変更して、使用できるようにすることを忘れないでください。
sudo chown root:root /etc/xrdp/km-080C.ini
サービスを再起動すると動作するはずです
sudo service xrdp restart
答え2
私の場合、Xで正しいキーボードマップを設定するには次のコマンドを実行するだけで十分でした。
setxkbmap be
ここで「be」はあなたの土地コードに置き換えてください。現在の値は次のように確認できます。
setxkbmap -query
答え3
残念ながら、上記の回答のどれも私の問題を完全に解決しませんでした。
ディレクトリを調べたところ、ファイルに 0 プレフィックスが複数あるsudo ls /etc/xrdp/
ことがわかった.ini
ので、代わりに次の操作を実行して動作させる必要がありました。
sudo xrdp-genkeymap /etc/xrdp/km-00000424.ini
(スロベニア語レイアウト)
さらにファイルを編集しsudo vi /etc/xrdp/xrdp-keyboard.ini
、各セクションの後に次の行を追加します。
[default_rdp_layouts]
rdp_layout_si=0x00000424
; <rdp layout name> = <X11 keyboard layout value>
[default_layouts_map]
rdp_layout_si=si
[rdp_layouts_map_mac]
rdp_layout_si=si
それが誰かの役に立つことを願います。
答え4
残念ながら、iniファイルの操作はうまくいきませんでした。私が得ることができたのは、英語のレイアウトの追加だけでした。そのため、奇妙な名前の英語レイアウトが3つできました。これを始まり1行目の直後の、例/etc/xrdp/startwm.sh
:/etc/xrdp/reconnectwm.sh
( sleep 3; setxkbmap -model pc105 -layout us,ru -option grp:alt_shift_toggle )&
または、システム全体の設定ファイルから XRDP キーボード レイアウトを設定する場合は (/etc/default/keyboard
おそらくこれが望ましいでしょう)、代わりに次のように記述します。
. /etc/default/keyboard
( sleep 3; setxkbmap ${XKBMODEL:+-model "$XKBMODEL"} ${XKBLAYOUT:+-layout "$XKBLAYOUT"} ${XKBVARIANT:+-variant "$XKBVARIANT"} ${XKBOPTIONS:+-option "$XKBOPTIONS"} )&
ちなみに、システム全体のキーボード設定ファイル自体の設定は、/etc/default/keyboard
次の方法で行うことができます。
- 手作業で編集する
- 構成ユーティリティを使用する場合:
dpkg-reconfigure keyboard-configuration
- コマンドラインユーティリティを使用する場合:
localectl set-x11-keymap us,ru pc105 , grp:alt_shift_toggle