一、在linux的普通用户下,要使用root权限的命令需要使用sudo

  1. [dev@dev1 client_api]# sudo git pull origin develop
  2. sudo: git: command not found

但是发现git命令找不到

二、使用whereis找git的绝对路径

  1. [dev@dev1 client_api]$ whereis git
  2. git: /usr/local/git

再次尝试

  1. [dev@dev1 client_api]$ sudo /usr/local/git pull origin develop
  2. sudo: /usr/local/git: command not found

还是不对的 换成which试试

  1. [dev@dev1 client_api]$ which git
  2. /usr/local/git/bin/git

这次找到的位置是截然不同的
再次尝试

  1. [dev@dev1 client_api]$ sudo /usr/local/git/bin/git pull origin develop
  2. From IP地址:client_api
  3. * branch develop -> FETCH_HEAD
  4. Updating 81608e5..815cbbb
  5. error: Your local changes to the following files would be overwritten by merge:
  6. app/Models/OrderMaster.php
  7. app/Services/OrderService.php
  8. config/params.php
  9. Please, commit your changes or stash them before you can merge.
  10. Aborting

很明显成功了

三、寻找原因

因为sudo默认的配置文件下只是指定三个命令位置,如下

  1. Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin

所以采用软连接的方式

  1. ln -s /usr/local/git/bin/git /usr/bin/git

这次再尝试直接使用命令

  1. [dev@dev1 client_api]$ sudo git pull origin develop
  2. remote: Counting objects: 34, done.
  3. remote: Compressing objects: 100% (21/21), done.
  4. remote: Total 21 (delta 13), reused 0 (delta 0)
  5. Unpacking objects: 100% (21/21), done.
  6. From IP地址:018_client_api
  7. * branch develop -> FETCH_HEAD
  8. 815cbbb..a93dc24 develop -> origin/develop
  9. Updating 81608e5..a93dc24
  10. error: Your local changes to the following files would be overwritten by merge:
  11. app/Models/OrderMaster.php
  12. app/Services/OrderService.php
  13. config/params.php
  14. routes/api.php
  15. Please, commit your changes or stash them before you can merge.
  16. Aborting

好了 完美

如何解决普通用户使用sudo找不到命令的更多相关文章

  1. [转]sudo找不到命令:修改sudo的PATH路径

    sudo有时候会出现找不到命令,而明明PATH路径下包含该命令,让人疑惑.其实出现这种情况的原因,主要是因为当 sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置,当然这主要是因 ...

  2. Linux sudo 找不到命令

    普通用户执行需要root权限的命令,提示"找不到命令",但是root用户执行该命令不报错,可能是由于该命令未处在sudo搜索的路径. 本文以sudo easy_install 为例 ...

  3. sudo 找不到命令 go

    错误描述 环境 CentOS7.1 x64 golang 1.9.3 golang目录:/home/moonlightwatch/go/ 环境变量配置: # /etc/profile export G ...

  4. [Deepin 15] sudo source /etc/profile 提示找不到 source 命令(切换到 root 用户:sudo su)

    在 Deepin/Ubuntu 系统 中,因为修改了下 配置文件,然后执行 source 命令重新加载配置文件,结果: sudo source /etc/profile 提示找不到 source 命令 ...

  5. Linux记录-普通用户下执行sudo xxx 找不到命令解决方案

    chmod 777 /etc/sudoers vim /etc/sudoers 1.可以使用 secure_path 指令修改 sudoers 中默认的 PATH为你想要的路径.这个指令指定当用户执行 ...

  6. 普通用户开通sudo权限:xxx is not in the sudoers file.This incident will be reported.的解决方法

    1.切换到root用户下,怎么切换就不用说了吧,不会的自己百度去. 2.添加sudo文件的写权限,命令是: chmod u+w /etc/sudoers 3.编辑sudoers文件 vi /etc/s ...

  7. RedHat Linux下普通用户无法使用sudo命令的解决方法

    Ref:http://blog.sina.com.cn/s/blog_4aa35ca101012qb6.html 装完linux系统,发现普通用户无法使用sudo 命令, 提示:User1(普通用户) ...

  8. sudo pm2 提示 找不到命令

    一共有 3 台 staging 环境服务器,5 台生产环境服务器,centos7系统.前阵子刚给所有研发配置了自己的账号,今天有小伙伴说,在其中两台服务器上 sudo pm2 list 提示: sud ...

  9. Linux给用户添加sudo权限

    一.linux给用户添加sudo权限: 有时候,linux下面运行sudo命令,会提示类似: xxxis not in the sudoers file.  This incident will be ...

随机推荐

  1. html 中怎么设置div的位置

    利用CSS的position属性对元素定位,以下是position 属性规定元素的定位类型. absolute 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位.元素的位置通过 ...

  2. StringUtils类常用方法介绍

    StringUtils方法包的位置:org.apache.commons.lang.StringUtils StringUtils 方法的操作对象是 java.lang.String 类型的对象,是 ...

  3. 分割流 SequenceInputStream (转)

    import java.io.*;import java.util.*; class SplitFile{ public static void main(String[] args) throws ...

  4. 阿里巴巴分布式服务框架 Dubbo

    1.Dubbo是阿里巴巴内部的SOA服务化治理方案的核心框架,每天为2000+ 个服务提供3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点.Dubbo自2011年开源 ...

  5. HttpClient 学习整理

    HttpClient 是我最近想研究的东西,以前想过的一些应用没能有很好的实现,发现这个开源项目之后就有点眉目了,令人头痛的cookie问题还是有办法解决滴.在网上整理了一些东西,写得很好,寄放在这里 ...

  6. go语言基础之init函数的介绍

    1.init函数的介绍 示例: 文件夹目录如下: 源代码: vi main.go   //程序入口 package main //必须 import ( "calc" " ...

  7. 《Linux总线、设备与驱动》USB设备发现机制

    说明:本分析基于mstar801平台Linux2.6.35.11内核,其他内核版本仅供参考. 一.程序在内核中的位置 1.usb host做为pci总线下的一个设备存在(嵌入式系统中有可能也会直接挂在 ...

  8. 校验IPv4和IPv6地址和URL地址

    1.校验IPV4地址: function validateIp(obj) { var ip=$(obj).val(); var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;// ...

  9. JS操作JSON常用方法

    一.JSON字符串的替换 工作经常遇到这样的字符串,如下: 需要经过替换后,才能从字符串转化成JSON对象.这里我们需要用JS实现replaceAll的功能, 将所有的 ' \\" ' 替换 ...

  10. eclipse 使用Maven deploy命令部署构建到Nexus上 【二】

    http://blog.csdn.net/jun55xiu/article/details/43051627