如何在系统启动时自动执行指定sudo命令且无需用户交互
如何在系统启动时自动执行指定sudo命令且无需用户交互
嗨,我来帮你搞定这个问题!你需要让这三个内核模块在开机时自动加载,而且完全不需要手动输入sudo密码对吧?毕竟这些模块管着你笔记本的扬声器、触控板和键盘驱动,必须自动生效才行。下面给你两种简单靠谱的方法:
方法一:用内核模块加载配置文件(推荐)
这是Linux系统里专门用来配置开机自动加载内核模块的方式,最直接也最省心:
- 打开终端,用sudo创建并编辑一个新的配置文件:
sudo nano /etc/modules-load.d/apple-drivers.conf - 在打开的文件里,每行写一个模块名称,就像这样:
apple_bce apple_ib_tb apple_ib_als - 按下
Ctrl+O保存,再按Ctrl+X退出编辑器就行。
下次重启系统的时候,这三个模块就会自动被加载了,全程不需要你手动操作,系统会以root权限处理这个配置,完全没密码输入的麻烦。
方法二:用Systemd服务实现
如果你更习惯用Systemd来管理开机任务,也可以这么做:
- 创建一个Systemd服务文件:
sudo nano /etc/systemd/system/apple-drivers.service - 把下面的内容粘贴进去:
[Unit] Description=自动加载苹果笔记本驱动模块 After=multi-user.target [Service] Type=oneshot ExecStart=/sbin/modprobe apple_bce ExecStart=/sbin/modprobe apple_ib_tb ExecStart=/sbin/modprobe apple_ib_als RemainAfterExit=yes [Install] WantedBy=multi-user.target - 保存退出后,启用这个服务让它开机自动运行:
sudo systemctl enable apple-drivers.service
这样设置后,每次开机系统都会自动执行这三个modprobe命令,同样不需要输入密码,完全后台完成。
备注:内容来源于stack exchange,提问作者Cyrus
相关产品推荐
相关产品推荐

