linux下自启动命令中需要sudo权限,解决方法

偶然间,采用tx2进行can的配置中,每次开机启动中都需要将canbus模块进行配置安装。但是在进行配置过程中出现一个问题,即需要sudo权限才能进行can驱动的挂载。按照csdn上教程,设置了启动,但是reboot后未挂载。经分析后是权限问题,导致挂载失败。

具体如何挂载可以参考他的文章:链接: link.

在第一步中进行更改,采用sudo进行can模块的挂载

#!/bin/sh
 
#命令
sudo modprobe can      
sudo modprobe can-raw   
sudo modprobe can-bcm
sudo modprobe can-gw  
sudo modprobe can_dev
sudo modprobe mttcan  
  
exit 0

挂载中含有sudo命令,则需要密码,那么,我们我们采用一些方法来绕过输入密码过程。
可以参考这篇文章的操作过程:链接: https://linux.cn/article-10641-1.html.
基于某些原因,假如你想允许一个用户运行特定命令而无需提供 sudo 密码,则你需要在 sudoers 文件中添加上这个命令。

假如我想让名为 nvidia 的用户去执行 modprobe 而无需提供 sudo 密码

首先我们需要得到 modprobe 命令的位置

which modprobe 

得到相应位置

在这里插入图片描述

使用下面的命令来编辑 sudoers 文件:

sudo visudo

将下面的命令添加到这个文件的最后:

nvidia ALL=NOPASSWD:/sbin/modprobe

其中 sk 是用户名。根据上面一行的内容,用户 sk 可以从任意终端执行 mkdir 命令而不必输入 sudo 密码。

你可以用逗号分隔的值来添加额外的命令(例如 chmod),正如下面展示的那样。

nvidia ALL=NOPASSWD:/sbin/modprobe,/bin/chmod
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值