我正在尝试执行 loadkeys 操作。对于普通用户,我收到权限被拒绝错误。
错误如下。
<tim@testps>~% loadkeys mykeys
Loading /usr/tim/mykeys
Keymap 0: Permission denied
Keymap 1: Permission denied
Keymap 2: Permission denied
KDSKBENT: Operation not permitted
loadkeys: could not deallocate keymap 3
答案1
您需要 root 权限才能使用loadkeys
。常见的做法是设置setuid 权限位在loadkeys
。设置该位将导致通过执行该loadkeys
文件生成的任何进程以该文件的所有者(通常是 root)身份运行。
为了增加安全性,您应该将loadkeys
的权限更改为750
,为其创建一个组,并将需要使用的任何用户添加loadkeys
到该组。
$ groupadd loadkeys # you can use any group name
$ chgrp loadkeys /bin/loadkeys
$ chmod 4750 /bin/loadkeys # setuid, group- and user-only read and execution
$ gpasswd -a user loadkeys # add user to the group