Answers:
如果您不介意进行一些shell脚本编写,并且您已经找到了可以从将切换到Windows的终端运行的脚本,则可以创建包含该命令的脚本(以及可能reboot
跟随它的命令)。我们winreboot.sh
为了争论而称之为。然后将该脚本的所有者更改为root
,将其标记为可执行文件并将其放在有用的位置(例如/usr/local/bin/
)。如果你这样运行它:
sudo /usr/local/bin/winreboot.sh
它将询问您输入管理员密码,然后应该执行它的操作,然后脚本以root身份运行。但是,sudo
维护一个规则列表,允许用户运行使用的命令sudo
,以及是否需要密码。这个规则集存储在/etc/sudoers
- 不幸的是语法非常混乱,这就是为什么你不应该直接编辑文件,但应该使用
sudo visudo
相反,它会检查你的保存语法。请注意,这使用vim进行编辑,您可能希望在运行它之前阅读它 - 如果您不习惯它可能会非常混乱。(要退出它而不保存,按<ESC>
,键入:q!
后跟<ENTER>
键)如果你不能继续使用vim,用你喜欢的编辑器编辑sudoers的副本并检查语法visudo -f /path/to/sudoers-copy
。如果没问题,请将其复制回原件上。
回到这一点,您要添加到sudoers的规则是您希望admin
组中的用户能够以root身份运行您的脚本而无需密码。看起来像这样:
%admin localhost=(ALL) NOPASSWD: /usr/local/bin/winreboot.sh
将它添加为sudoers的最后一行。如果您现在尝试运行脚本sudo
(必须使用绝对路径),它将不会要求输入密码而只是运行它。将sudo命令包装在另一个shell脚本中,从桌面或任何地方链接到它,您的6岁应该可以随时切换到Windows。
希望有所帮助,如果有什么不清楚,请告诉我。