首页 > 其他分享 >sudo: apt-get: command not found

sudo: apt-get: command not found

时间:2024-04-28 11:33:05浏览次数:13  
标签:LC root sudo command usr env found local

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

标签:LC,root,sudo,command,usr,env,found,local
From: https://www.cnblogs.com/zkwarrior/p/18163375

相关文章

  • ubuntu server 24.4升级版本提示Command terminated with exit status1
    原来使用的是ubuntuserver23.10属于一个只有9个月的临时版现在发布24.04了直接升级一下吧。第一次大版本升级查看系统版本cat/etc/os-release 更新可用升级包并卸载不再使用的包sudoaptupdate&&sudoaptfull-upgrade-y&&sudoaptautoremove更新完......
  • RocketMQLog:WARN No appenders could be found for logger (io.netty.channel.nio.Ni
    springBoot集成rocketMq启动的时候报RocketMQLog:WARNNoappenderscouldbefoundforlogger(io.netty.channel.nio.NioEventLoop). RocketMQLog:WARNPleaseinitializetheloggersystemproperly. 原因是pom中的rocket的依赖版本太高了。<dependency><groupI......
  • node: /lib64/libm.so.6: version `GLIBC_2.27‘ not found问题解决方案
    问题centos7服务器使用nvm或n安装的16以后的高版本node,均会出现以下问题解决1.升级gcc与make#升级GCC(默认为4升级为8)yuminstall-ycentos-release-sclyuminstall-ydevtoolset-8-gcc*ln-s/opt/rh/devtoolset-8/root/bin/gcc/usr/bin/gccln-s/opt/rh/devtool......
  • 为什么要⽤ Foundry
    Foundry 为什么要⽤Foundry 快-加速开发 Solidity-减少上下⽂切换 功能丰富 ⾜够轻量 Foundry的组件 forge cast anvil 安装 https://getfoundry.sh/ curl-Lhttps://foundry.paradigm.xyz|bashfoundryup Cast-与链交互的⼯具箱RPC cast......
  • 利用SpringBoot的CommandLineRunner编写命令行jar程序
    1.项目pom<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.......
  • react报错export ‘Switch‘ (imported as ‘Switch‘) was not found in ‘react-rou
    报如下错,查react-router-dom版本。 因为:react-router-dom从V5升级到V6造成的(1)将Switch重命名为Routes(2)Route的新特性变更,component/render被element替代(3) 嵌套路由变得更简单 ......
  • composer update 依赖文件没有任何问题,依然报错it could not be found in any version
    一、报错案例composerupdate或者composerinstallcomposer.json依赖文件没有任何问题,依然报错itcouldnotbefoundinanyversion 二、解决主要就是切换镜像源:composerconfig-grepo.packagistcomposerhttps://packagist.org之后再执行composerinstall即可!......
  • python3下安装mysqlclient各种报错 raise OSError mysql_config not found
    linux下载地址:https://files.pythonhosted.org/packages/a5/e1/e5f2b231c05dc51d9d87fa5066f90d1405345c54b14b0b11a1c859020f21/mysqlclient-2.0.1.tar.gz#sha256=fb2f75aea14722390d2d8ddf384ad99da708c707a96656210a7be8af20a2c5e5在服务器执行pipinstallmysqlclient-2.0.......
  • pyhanlp报FileNotFoundError: [Errno 2] No such file or directory: '/usr/lib/jvm'
    问题描述这个报出在我的虚拟机里面没有找到jdk;那我们就下载一个jdk进去,然后配置好环境变量:安装教程网址:传送门问题解决下载好之后:直接运行的话,发现还是这个错误,因为他默认到了一个路径,我们只需要把路径更改到我们本地即可,将下面这行代码放到调用pyhanlp之前:importosos.e......
  • 为 mac 终端 sudo 命令启用 Touch ID
    mac终端每次使用sudo命令时都需要输入密码,非常麻烦。记录下如何为终端的sudo命令启用TouchID。详细步骤:进入系统存储PAM列表的目录:cd/etc/pam.d编辑sudo文件,需要使用sudo命令:sudovimsudo在第一行后添加如下配置:authsufficientpam_tid.so保存文件,这里需......