惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Forbes - Security
Forbes - Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
P
Palo Alto Networks Blog
Martin Fowler
Martin Fowler
T
Threatpost
D
Docker
S
Schneier on Security
M
MIT News - Artificial intelligence
G
Google Developers Blog
L
LINUX DO - 热门话题
J
Java Code Geeks
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
IT之家
IT之家
博客园 - Franky
C
Cyber Attacks, Cyber Crime and Cyber Security
K
Kaspersky official blog
Google DeepMind News
Google DeepMind News
N
News and Events Feed by Topic
V
Vulnerabilities – Threatpost
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
人人都是产品经理
人人都是产品经理
Spread Privacy
Spread Privacy
T
Tailwind CSS Blog
爱范儿
爱范儿
阮一峰的网络日志
阮一峰的网络日志
U
Unit 42
C
CERT Recently Published Vulnerability Notes
The GitHub Blog
The GitHub Blog
Simon Willison's Weblog
Simon Willison's Weblog
NISL@THU
NISL@THU
MongoDB | Blog
MongoDB | Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
H
Heimdal Security Blog
Recorded Future
Recorded Future
云风的 BLOG
云风的 BLOG
SecWiki News
SecWiki News
P
Privacy International News Feed
P
Proofpoint News Feed
O
OpenAI News
B
Blog
腾讯CDC
F
Full Disclosure
Apple Machine Learning Research
Apple Machine Learning Research
T
Tor Project blog
H
Hacker News: Front Page
Project Zero
Project Zero
Hugging Face - Blog
Hugging Face - Blog
C
Cisco Blogs
S
Security Affairs

博客园 - _海阔天空

七牛云如何设置视频外链 GitHub项目推荐--GStack:将Claude Code转变为按需召唤的专业团队 openclaw安装 谷歌开源命令行神器 Gemini CLI 给 Claude Code 加了个状态栏,效率真的不一样!! claude hooks钩子使用 Windows下 claude skills superpowers、planning-with-files安装 Claude Code需求分析 Apifox 发请求时如何自动获取Cookie 和 token answer问答平台安装流程 torch轮子下载 Claude Code GLM-4.7 Trae 使用Trae配置MySQL MCP智能体进行数据库 oh my zsh 安装参考 Windows 解决PowerShell使用wget/curl出现二义性错误 解决rm: cannot remove `.user.ini’: Operation not permitted错误 deepseek使用集合 浏览器扩展 Zotero Connector 使用Ollama本机部署Deepseek R1:14b
sudo: apt-get: command not found
_海阔天空 · 2024-04-28 · via 博客园 - _海阔天空

sudo: apt-get: command not found

https://blog.csdn.net/zhengzhaoyang122/article/details/136132952

问题
Linux Red Hat 执行sudo卸载nginx时,出现command not found错误

[root@iZuf65h6i43ltlzhqolumyZ local]# sudo apt-get remove nginx
sudo: apt-get: command not found
1
2
解决
【1】通过/etc/sudoers.d命令查看文件是否存在;

[root@iZuf65h6i43ltlzhqolumyZ local]# find /etc/sudoers.d
/etc/sudoers.d
1
2
如果返回No such file or directory,就说明你的系统没有安装sudo,下面是安装命令 :

[root@iZuf65h6i43ltlzhqolumyZ local]# yum install sudo
1
如果提示E: Unable to locate package sudo的错误,先执行下面的命令:

[root@iZuf65h6i43ltlzhqolumyZ local]# apt-get update
1
再执行sudo apt-get install即可。

【2】如果/etc/sudoers.d文件存在则说明已经安装了sudo,但没有配置环境。

当你使用sudo去执行一个程序时,处于安全的考虑,这个程序将在一个新的、最小化的环境中执行,也就是说,诸如PATH这样的环境变量,在sudo命令下已经被重置成默认状态了。所以当一个刚初始化的PATH变量中不包含你所要运行的程序所在的目录,用sudo去执行,你就会得到command not found的错误提示。

要想改变PATH在sudo会话中的初始值,使用以下命令打开/etc/sudoers文件,

[root@iZuf65h6i43ltlzhqolumyZ local]# vim /etc/sudoers
1
找到secure_path一行,当你执行sudo命令时,secure_path中包含的路径将被当做默认PATH变量使用。添加所需要的路径(如/usr/local)到secure_path下:

Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
1
如果提示文件只读,可以修改文件的状态后再修改:

[root@iZuf65h6i43ltlzhqolumyZ etc]# chmod u+w sudoers
1
如果还未解决
应该是环境变量导致的。使用env |grep PATH和sudo env |grep PATH查看两者变量是否一致。

[root@iZuf65h6i43ltlzhqolumyZ local]# sudo env | grep PATH
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local
[root@iZuf65h6i43ltlzhqolumyZ local]# env | grep PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/lib/nodejs/node-v18.12.1-linux-x64/bin
1
2
3
4
如果不一致,修改/etc/sudoers文件中的env_reset参数:在env_reset前加!号

Defaults    !env_reset
Defaults    env_keep =  "COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS"
Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults    env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
1
2
3
4
5
6
修改.bashrc文件

[root@iZuf65h6i43ltlzhqolumyZ local]# vim /root/.bashrc
1
在该文件加入以下配置:alias sudo='sudo env PATH=$PATH'

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
alias sudo='sudo env PATH=$PATH'
1
2
3
4
5
6
7
8
9
10
11
12
13
重新加载配置文件

source ~/.bashrc
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/zhengzhaoyang122/article/details/136132952