日頃サーバにはTera Termで接続しているので、Numlockがオン・オフのどちらでも問題はない。
でも、時々サーバーを直接操作することがあって、その時はちょっと不便。
デスクトップなしの環境
ここで直球の答えを教えてくれていた。
ArchWiki / 起動時に Numlock を有効化
少し手順を改変して…
$ sudo systemctl edit getty@.service
### Editing /etc/systemd/system/getty@.service.d/override.conf
### Anything between here and the comment below will become the new contents of the file
[Service]
ExecStartPost=/bin/sh -c 'setleds +num < /dev/%I'
### Lines below this comment will be discarded
### /lib/systemd/system/getty@.service
# # SPDX-License-Identifier: LGPL-2.1-or-later
...
※赤文字部分を追加。
編集を終えて保存すると、以下のファイルができあがっている。
$ cat /etc/systemd/system/getty@.service.d/override.conf [Service] ExecStartPost=/bin/sh -c 'setleds +num < /dev/%I'
再起動したところHintが表示され、そこに書かれているようにNumlockがオンになっている。
Ubuntu 22.04.03 LTS hogehoge tty1 Hint: Num Lock on hogehoge login: _
デスクトップありの環境
Ubuntu 22.04.3 LTSのデスクトップ、GNOMEは42.9だった。
デフォルトは、Numlockの状態を覚えておく設定になっていた。
$ gsettings get org.gnome.desktop.peripherals.keyboard remember-numlock-state true
これがfalseだったら、trueに書き換えればOKかな。
ask ubuntu / how can I set num lock on as the boot default in Ubuntu 20.04
$ gsettings set org.gnome.desktop.peripherals.keyboard remember-numlock-state true
この設定はユーザー単位で覚えている模様。
以下の2つは別々にNumlockの状態を覚える。
- ログイン画面(gdm)
- ログイン後のデスクトップ(ログインしたユーザー)
今回、gdmの設定は変更できなかったが、デフォルトがtrueなので割り切り。
あまり使うことはないと思うけれど、tty3とかtty4とかに切り替えてコンソールで操作する場合には、デスクトップなしの節に書いたgetty@.serviceの設定が有効。
ログイン画面とデスクトップは、getty@.serviceの設定は効いているかもしれないけれど、最終的にはGnomeによって制御される。
その他
Gnomeのデフォルト設定変更(断念)
デフォルトの設定ってこれでできたよなーと、過去のメモを頼りに作ってみた。
デフォルトがNumlockの状態を覚えておいて再現する、なので別に問題はないけれど、変更の仕方を確かめようという話。
ディレクトリを作成。
$ sudo mkdir /etc/dconf/db/local.d
設定ファイルを作成。
/etc/dconf/db/local.d/01-numlock
[org/gnome/desktop/peripherals/keyboard] remember-numlock-state=false
更新。
$ sudo dconf update
再起動したけれども、効果がなかった。
gdmの設定変更(断念)
ログイン画面はgdmというユーザーで表示されているらしい。
じゃあ、gdmの設定ができないだろうか…と。
$ sudo -u gdm gsettings set org.gnome.desktop.peripherals.keyboard remember-numlock-state false $ sudo -u gdm gsettings get org.gnome.desktop.peripherals.keyboard remember-numlock-state true
エラーも何も出ないが、変更ができていない。
状況がよく分からないので、一回このユーザーになってみようと思った。
ask ubuntu / Settings not changing through gsettings command
$ sudo su --shell /bin/bash --login gdm $ pwd /var/lib/gdm3
最初はやっぱり何も表示されないままだったけれど、色々とガチャガチャやっているウチに、以下のエラーが出るようになった。
$ gsettings set org.gnome.desktop.peripherals.keyboard remember-numlock-state false (process:3603): dconf-WARNING **: 15:24:01.702: failed to commit changes to dconf: Cannot autolaunch D-Bus without X11 $DISPLAY
分からない世界に入って行ってしまった。
numlockx
numlockxというパッケージがあるようだった。
Ubuntu Community Wiki / NumLock
$ sudo apt install numlockx
最初、デスクトップなしの環境にインストールしてみたけれど、最後のxが示すとおり、X11で動くようだ。
デスクトップ版に入っているかというと、そうでもない。
$ numlockx Command 'numlockx' not found, but can be installed with: sudo apt install numlockx
Gnomeがちゃんと管理してくれているので、スクリプトとかでNumlockをオン・オフしたい場合にインストールすると良いのかなと。
さいごに
VMwareの場合、BIOS設定にNumlockを有効にする設定があるようだ。ただし、UEFIの場合にはその設定がない。
事情によりUEFIで起動するように設定しがちなので、何か方法はないものかと調べはじめたが、思ったよりも難航してしまった。
まだまだ分かっていないことがいっぱい。
コメントはこちらから お気軽にどうぞ ~ 投稿に関するご意見・感想・他