文档章节

Linux sudo找不到命令的解决办法

SoneWinstone
 SoneWinstone
发布于 2016/11/13 20:06
字数 814
阅读 71
收藏 0

解决办法

 

1.编辑/etc/sudoers文件,把Defaults  env_reset改成Defaults ! env_reset

 

2.编辑.bashrc,最后添加alias sudo='sudo env PATH=$PATH'

 

有些技术真的很麻烦,但却有很长的生命,虽然学习的时候会遇到很多问题,但是在这些上面花时间是值得的。

 

下面是我装 texlive 2012的时候遇到的一些问题。还有关于Linux环境变量的一些设置问题

 

 

我还要说有些东西真的很麻烦,但是却有很多人为它着迷。有些软件已经生长为一种系统。这个系统像有生命的生物一样在不断的生长。对于明白他的人,他是那样的善解人意,对于不理解他的人他像一架精巧的难以驾驽的的机器。我所知道的这些系统有, linux,tex,emacs,drupal等等

 

在linux mint 13上装最新版本的texlive 2012,就不能用 apt-get install,因为太新了还没有加到软件仓库里,只能用官网上面提供的安装包安装了,装完后,可以用 tlmgr -gui对 tex的各种宏包进行管理。

 

手动添加texlive的各种程序到 PATH 环境变量下,就可以在终端执行 tex xelatex等命令了,当然了程序还让你添加man目录和info目录到  MANPATH和INFOPATH下

 

只因我将texlive装在了 /usr/local/texlive这个默认的文件夹下,所以进行宏包管理的时候,前面就必须用加上"sudo"才能对那个文件夹进行写操作(当然了和也可以为这个目录添加写权限),但是当运行 sudo tlmgr -gui命令时却提示“找不到此命令”,这时大部分人都会一脸的迷惑,不对呀我已经将

bin/i386-linux这个路径添加到PATH环境变量里了呀。用echo $PATH输出可以看见呀,单独运行 tlmgr命令也是可以的呀。

 

不知道有多少人遇到这种 加上 sudo 找不命令的情况,怎么办呢,谢天谢天我们有google,百度不知道的google一定知道。

 

很多人就可以病急乱投医了,一会在 /etc/profile修改修改,一会在/etc/environment修改,~/.bashrc 修改了好多地方还是不行。网上也有些人是瞎指挥,帮倒忙。出现这种情况就是因为对linux了解不深的原因。不过网上总是有热心的高人的。

 

其实出现这种情况的原因,主要是因为当 sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置,当然这主要是因为系统安全的考虑,以防用户执行可引起灾难性的程序。

 

这个配置信息存储在了/etc/sudoers这个文件是,当指行sudo命令的时候系统寻找的是 secure_path下的目录,所有在 /etc/profile ~/.bashrc下对PATH做的配置都会被忽略。所以就出现加上 sudo xxx 找不到命令的情况,解决办法用很多种了,可以将要执行sudo的命令软链接到 secure_path的目录下,或者修改 secure_path变量。

本文转载自:http://blog.csdn.net/duguduchong/article/details/8804117

共有 人打赏支持
SoneWinstone
粉丝 1
博文 17
码字总数 3992
作品 0
兰州
如何恢复linux的环境变量ubuntu中root用户没有办法使用命令

问题分析及解决办法: 这主要是路径问题,先查看$PATH变量的设置。 echo $PATH 里面的格式是xxx:xxx:xxx:xxx 这应该没包含/usr/bin这个路径。 执行下面命令就可以将这个路径包含进去: expo...

天下杰论
2013/03/19
0
0
Ubuntu 14.04 LTS 安装Oracle 11GR2

Ubuntu 14.04 LTS 安装Oracle 11GR2 ,经过几天的研究以及参考网上的说明,终于安装成功了 1.将系统更新到最新: sudo apt-get update sudo apt-get dist-upgrade 2.如果使用的Ubuntu不是桌面...

xiaoxin
2014/06/13
0
1
ubuntu下ltib安装问题(解决)

ubuntu 下ltib 安装问题 OS: Ubuntu 12.04 ltib安装包:Freescale iMX6/L3.0.354.1.0130816_source.tar.gz 第一次执行./ltib 显示未安装的软件包 *** zlib 0 not installedzlib-devel 0 not......

mjrao
2015/01/15
0
0
make出错 g++命令未找到 解决措施

OS课程设计Nachos中make 出错 >>> Compiling main.cc <<< g++ -g -Wall -Wshadow -I../threads -I../machine -DTHREADS -DHOSTi386 -DHOSTLINUX -DCHANGED -c -o arch/unknown-i386-linux/o......

sdulmy
2013/10/25
0
0
在ubuntu中配置java环境变量遇到的一些问题

最近因为重装了系统,所以需要重新配置java环境变量,本来打算在/etc/environment中配置的,但是配置好以后重启发现登录不进图形界面了,ctrl+alt+F2~6都可以进入命令行,但是在命令行中尝试...

JoeyXie
2015/08/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android WebView制作简易浏览器

最终效果 先创建一个WebView控件,其他的就是通过线性布局在上方加入网址输入框和两个按钮 <WebView android:id="@+id/act_webview_wv" android:layout_width="ma...

lanyu96
1分钟前
0
0
解决MacOS升级系统Sierra到Mojave后git报错

错误信息 升级MacOS Sierra到Mac Mojave后执行git命令报错: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/......

阿dai
2分钟前
0
0
兄弟连区块链教程以太源码分析CMD深入分析(一)

cmd包分析 cmd下面总共有13个子包,除了util包之外,每个子包都有一个主函数,每个主函数的init方法中都定义了该主函数支持的命令,如 geth包下面的: func init() { // Initialize the...

兄弟连区块链入门教程
4分钟前
0
0
Titan Framework MongoDB深入理解1

在TitanFrameWork框架中,已经集成了MongoDB的各个功能,现在我们对框架内部的一些重要类进行分析与解读。 MongoDBConverter 在Titan框架中,比较重要的一个接口就是MongoDBConverter,它是作...

云季科技
9分钟前
0
0
SpringBoot集成Quartz

SpringBoot集成Quartz 什么是Quartz Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smalle......

Grittan
13分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部