Bash команда Sudo, не найденная

Некоторые версии grep (например, на невстроенном Linux или BSD или  Mac OS X), имеют a -r опция сделать рекурсивный поиск. На OpenBSD использовать -R (и существует нет --exclude как в примере ниже). Это покрывает простые комбинации find с grep.

Если Ваша реализация не имеет -R флаг, или если Вы хотите более необычные критерии соответствия файла, можно использовать -exec основной из find заставить его выполниться grep. Некоторые более старые find реализации не поддерживают -exec+; в этих системах используйте a ; вместо + (это будет звонить grep однажды на файл, таким образом, это будет медленнее, но иначе результатом будет то же). Отметьте /dev/null обманите для порождения grep показать имя файла, даже если это, оказывается, называют на единственном файле (GNU grep и FreeBSD/NetBSD/OSX grep имеют a -H опция достигнуть того же эффекта).

find . -type f -name '*.o' -prune -o -exec grep 'needle' /dev/null {} +
grep -r --exclude='*.o' 'needle' .

35
17.04.2019, 01:09
5 ответов

Это смотрит из http://www.turnkeylinux.org/redmine как Redmine, в отличие от Ubuntu, не использует sudo по умолчанию. В каком имени пользователя Вы используете для SSH? Если это root, затем Вы не должны использовать sudo, как все Вы делаете, когда SSHed в к системе Redmine сделан как root. Если это - что-то еще, как admin, затем Вы могли попытаться использовать su команда для получения a root оболочка, в который к командам выполнения как root.

20
27.01.2020, 19:36
  • 1
    Что сделать, когда сценарий имеет команды sudo. Происходит со мной с mkusb. Лучше для установки sudo для будущего удобства. –  Love Grover 21.01.2017, 14:59

Возможно, это не установлено? Откройте свой диспетчер пакетов и установите sudo пакет.

40
27.01.2020, 19:36
  • 1
    Это не было установлено!Спасибо. Я довольно плохо знаком с Linux и просто предположил, что это было на всех установках. Мне просто нужны sudo пакет или sudo-ldap также? –   29.10.2011, 20:14
  • 2
    Вам не нужен sudo-ldap пакет. Sudo хорошо работает на моем компьютере, и у меня нет sudo-ldap установленным. –  Azendale 29.10.2011, 20:20

попытайтесь использовать полный путь

/usr/bin/sudo

если та работа команды затем включает/usr/bin/в Ваш огибающий путь переменной в ~/.bashrc

echo "export PATH="$PATH:/usr/bin"" >> ~/.bashrc

надо надеяться, работы..

5
27.01.2020, 19:36
  • 1
    Это очень вряд ли будет проблемой; /usr/bin почти наверняка будет в Вашем пути по умолчанию. Проблема, как обозначено другими ответами и комментариями, состоит в том что sudo команда не была установлена вообще. –  Keith Thompson 30.10.2011, 01:25

El error ocurre porque el binario al que intenta llamar desde la línea de comando es solo parte de la variable PATH del usuario actual, pero no es parte de la PATH del usuario raíz.

Puede verificar esto localizando la ruta del binario al que intenta acceder. En mi caso, estaba tratando de llamar a "bettercap -ng". Así que corrí,

$ which bettercap-ng

output: /home/user/work/bin/bettercap

Verifiqué si esta ubicación es parte de la RUTA de mi usuario raíz.

$ sudo env | grep ^PATH

salida:PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

Entonces, Sudo no puede encontrar el binario que estoy tratando de llamar desde la línea de comandos. Por lo tanto, devuelve el comando de error no encontrado.

Puede indicar a sudo que use la RUTA del usuario actual cuando llame a un binario como el que se muestra a continuación.

$ sudo -E env "PATH=$PATH" [command] [arguments]

De hecho, uno puede convertirlo en un alias:

$ alias mysudo='sudo -E env "PATH=$PATH"'

También es posible nombrar el propio alias sudo, reemplazando el sudo original.

Consulte este video para obtener una solución paso a paso

4
27.01.2020, 19:36

Сначала войдите в свою учетную запись root. Тогда

$ apt-get install sudo

Добавьте существующего пользователя в группуsudo

$ sudo adduser <user> sudo

Затем вы должны войти в систему как <user>, и команда sudoдолжна быть там.

9
27.01.2020, 19:36

Теги

Похожие вопросы