如何在启动时为登录屏幕启用 numlock?

dar*_*ten 117 login-screen numlock

我试图在 Ubuntu 12.04 的登录屏幕上的初始启动时强制启用 numlock。到目前为止,我发现的唯一解决方案是在初始登录后才打开 numlock。

我希望在显示登录屏幕时以及在用户登录之前强制启用 numlock。有人可以提供帮助吗?

Eli*_*gan 73

在许多机器上,您可以Number Lock在 BIOS 设置(首次打开机器电源时访问)中设置是否在启动时打开。

否则,有多种方法可以Number Lock在软件中启用(或禁用),具体取决于您的特定需求。这里列出了最有用的方法。

如果您想Number Lock在 Ubuntu 启动时打开(不是在 GRUB 菜单上的那个之前,也不是在登录之后,而不仅仅是针对特定的虚拟控制台),然后安装numlockx并让初始化脚本/etc/init.d/rc.local使用它来启用Number Lock

sudo apt-get update
sudo apt-get -y install numlockx
sudo sed -i 's|^exit 0.*$|# Numlock enable\n[ -x /usr/bin/numlockx ] \&\& numlockx on\n\nexit 0|' /etc/init.d/rc.local
Run Code Online (Sandbox Code Playgroud)

来源:NumLock,由Ubuntu 文档 wiki贡献者提供,最后一行逐字记录(因为该来源允许)。

  • 这不再适用于 Xubuntu LTS 12.04。 (6认同)
  • -y 选项用于强制回答“是”,如果要安装它的 apt-get 问题。小心这一点:有时 - 我认为情况并非如此,至少在我的情况下 - 在某些情况下,apt-get 表示需要删除某些内容;在这种情况下,apt-get 会要求您确认该操作。但是,有时使用 apt 自动删除包会导致您的机器出现一些问题。例如,有时会要求您删除一些用于 GUI 的图形包。甚至有时它要求我删除 gnome-desktop 和一些 gpu 驱动程序......这真的会搞砸所以 (3认同)

小智 41

以下是对我有用的内容:

  1. 确保已安装 numlockx:

    sudo apt-get install numlockx
    
    Run Code Online (Sandbox Code Playgroud)
  2. 编辑文件 /etc/lightdm/lightdm.conf

    gksudo gedit /etc/lightdm/lightdm.conf
    
    Run Code Online (Sandbox Code Playgroud)
  3. 将以下行添加到文件中:

    greeter-setup-script=/usr/bin/numlockx on
    
    Run Code Online (Sandbox Code Playgroud)

  • 在 Ubuntu 13.10 上,此方法阻止在我的机器上显示登录屏幕。在 Ubuntu 徽标初始显示后,显示器只是显示没有信号(我尝试重新启动几次,但结果总是相同)。不知道还能做什么,我从实时 USB 启动系统并从 lightdm.conf 中删除了该行。之后系统再次加载就好了。 (6认同)
  • 虽然我知道这个技巧在过去的版本中对我有用,但它似乎不再适用于 14.04。将此行添加到 lightdm.conf 会中断登录过程,将我发送到低图形模式并阻止使用 Nvidia 驱动程序登录。删除此行解决了问题。 (4认同)

Rad*_*anu 24

14.04

是的,使用locate命令如下:

locate 50-unity-greeter.conf
Run Code Online (Sandbox Code Playgroud)

输出是:

/usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf
Run Code Online (Sandbox Code Playgroud)

所以,你需要编辑的文件就是上面的文件。

sudo apt-get install numlockx
gksu gedit /usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf
Run Code Online (Sandbox Code Playgroud)

在文件末尾添加这一行:

greeter-setup-script=/usr/bin/numlockx on
Run Code Online (Sandbox Code Playgroud)

  • 在 16.04 beta2 这将导致这个问题 http://askubuntu.com/questions/141606/how-to-fix-the-system-is-running-in-low-graphics-mode-error (2认同)

sar*_*lad 18

在登录屏幕上启用它

首先,通过在终端中键入以下内容,确保安装了 numlockx:

sudo apt-get install numlockx
Run Code Online (Sandbox Code Playgroud)

然后,编辑文件 /etc/lightdm/lightdm.conf

gksudo gedit /etc/lightdm/lightdm.conf
Run Code Online (Sandbox Code Playgroud)

将以下行添加到文件中:

greeter-setup-script=/usr/bin/numlockx on
Run Code Online (Sandbox Code Playgroud)

登录后默认启用数字锁定..

  1. 在 Dash 中搜索键盘布局并打开它
  2. 在右下角打开的窗口中有Options,单击它。
  3. 其他兼容性选项下,启用默认数字键

在此处输入图片说明


Mit*_*tch 6

我已经这样做了,它对我有用。首先,确保您添加了 Universe 存储库。

只需按键盘上的Ctrl+ Alt+T即可打开终端。当它打开时,运行以下命令。

sudo apt-get update
sudo apt-get install numlockx
Run Code Online (Sandbox Code Playgroud)

现在numlockx已安装,创建一个名为Defaultin的文件,/etc/X11/其中包含以下内容:

if [ -x /usr/bin/X11/numlockx ]; then
    /usr/bin/X11/numlockx on
fi

exit 0
Run Code Online (Sandbox Code Playgroud)

关闭Num Lock并重新启动。瞧!

  • 在 18.04 中不起作用 (2认同)

Fai*_*sal 5

Ubuntu 18.04

通过开放端子Ctrl+ Alt+T

运行命令

sudo -i
xhost +SI:localuser:gdm
su gdm -s /bin/bash
gsettings set org.gnome.settings-daemon.peripherals.keyboard numlock-state 'on'
gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true
Run Code Online (Sandbox Code Playgroud)

就是这样...

解决方案

在 Ubuntu 20.04 中

保持它

org.gnome.desktop.peripherals.keyboard remember-numlock-state true
Run Code Online (Sandbox Code Playgroud)

让它关闭

org.gnome.desktop.peripherals.keyboard numlock-state false
Run Code Online (Sandbox Code Playgroud)

您可以按照自己喜欢的方式进行配置。