文享日志

deepin用sudo,su遇到的问题

Linux

发表于2018年01月13日15:00:24

更新于2018年02月06日09:48:03

0条评论 195次阅读

一、在用npm安装的时候提示权限不足

原因:当前用户没有写权限

解决方法:sudo npm ....

sudo的所有者是root用户,root用户拥有系统的所有权限。一般用户运行一个没有权限的命令时,可以使用sudo临时提权,使自己拥有执行这条命令的权限



二、使用sudo命令时显示找不到命令

原因:sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置。

解决方法

为sudo命令定义环境变量。

方法一:

      用文本编辑器打开/etc/sudoers文件,找到"secure_path"一行,当你执行sudo 命令时,"secure_path"中包含的路径将被当做默认PATH变量使用。

      添加所需要的路径(如 /usr/local/bin)到"secure_path"下。
Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

方法二:

      执行sudo visudo命令

      将Defaults env_reset改成Defaults !env_reset取消掉对PATH变量的重置,然后在.bashrc中最后添加alias sudo='sudo env PATH=$PATH',这样sudo执行命令时所搜寻的路径就是系统的PATH变量中的路径,如想添加其他变量也是类似。最后注意source ~/.bashrc使配置生效


三、执行su命令,输入密码显示‘鉴定故障’

原因:我们安装的时候并没有配置root用户的密码。

解决方法:

      sudo passwd root    为root用户添加密码

不想为root用户设置密码,可以直接运行sudo su切换到root用户。



参考:

1、Linux教程分享:如何为sudo命令定义PATH环境变量

2、Linux初始root密码设置

3、sudo找不到命令:修改sudo的PATH路径

👍 0  👎 0
共有0条评论

发表新评论

提交

广告展示

腾讯云推广 阿里云推广