Исправлено: команда sudo не найдена

Если вы опытный пользователь Linux, то, вероятно, обнаружите, что ошибка «sudo command not found» крайне сбивает с толку. Вы, скорее всего, привыкли помещать sudo перед любой командой, для которой вам нужен привилегированный доступ администратора. Это вдвойне верно, если вы являетесь пользователем Ubuntu или любой из ее производных, поскольку эти операционные системы по умолчанию хешируют учетную запись root, что требует от вас довольно часто использовать sudo.

Сама команда sudo по умолчанию не включена в некоторые дистрибутивы Linux, в которые часто входят те, которые предназначены для управления сетью и маршрутизаторами. Он также не входит во многие версии операционных систем BSD. К счастью, нетрудно войти в систему как root, а затем установить пакет индивидуально.

Метод 1: исправление ошибок команды sudo, не обнаруженной в GNU / Linux

Маловероятно, что вы используете дистрибутив Linux, который не поставляется с sudo, но если вы наберете что-то вроде sudo fdisk -l и нажмете Enter, только обнаружите, что вы получите ошибку, например sudo: command not found или ash: sudo: команда не найдена в зависимости от того, используете ли вы оболочку bash или Almquist, возможно, вы используете ту, у которой ее нет. В нашем примере мы настроили виртуальную машину и попытались использовать sudo rm для удаления файлов только для получения ошибки. Введите whereis sudo, чтобы узнать, установлен ли он где-нибудь. Если вы просто получили sudo: в ответ на эту команду, вероятно, он у вас не установлен.

Вам нужно будет войти в систему как пользователь root, чтобы исправить не найденную команду sudo, что сложно, потому что у вас изначально нет sudo в вашей системе. Удерживайте Ctrl, Alt и F1 или F2, чтобы переключиться на виртуальный терминал. Введите root, нажмите Enter, а затем введите пароль для исходного пользователя root. Вы получите символ # для командной строки.

Если у вас есть система, основанная на диспетчере пакетов apt, введите apt-get install sudo и нажмите Enter. Те, у кого есть системы yum RPM, основанные, возможно, на Fedora или Red Hat Linux, могут использовать команду yum install sudo package management. Согласитесь с подсказками и дождитесь установки. Это должно быть очень быстро, но для работы вам понадобится доступ к сети.

Теперь в командной строке введите visudo и нажмите Enter. Вы получите экран редактора nano или vi. Внизу файла должна быть строка с именем пользователя, за которым следует ALL = (ALL) ALL, имея в виду, что ваше имя пользователя более чем вероятно в нижнем регистре. Отсюда:

пользователь ВСЕ = (ВСЕ) ВСЕ

Если вы работаете с vi, нажмите Esc и введите: wq для выхода. Те, кто использует GNU nano, должны удерживать Ctrl и O, чтобы сохранить файл, а затем Ctrl и X для выхода. Введите в командной строке exit, и теперь вы можете использовать sudo как обычно. Чтобы решить эту проблему, потребуется всего несколько очень простых команд, но, к счастью, с включением sudo в большинство современных дистрибутивов это больше не проблема. * Пользователи BSD, как правило, сталкиваются с более серьезной проблемой.

Метод 2: исправление ошибок, которые команда sudo не обнаружила во FreeBSD и других системах

Хотя операционные системы BSD обычно поставляются с su, они редко, если вообще когда-либо, поставляются с реальной командой sudo. Убедитесь, что вы вышли из своей учетной записи и находитесь на экране входа в систему Unix. Введите root в качестве имени пользователя, затем нажмите Enter, затем пароль root и снова нажмите Enter.

В вашем приглашении будет октоторп, чтобы указать, что вы работаете как привилегированный пользователь. Чтобы добавить двоичный пакет для sudo, введите pkg_add -rv sudo и нажмите Enter. Согласитесь установить его, если будет предложено, и дождитесь установки. После установки введите visudo и нажмите Enter. Допустим, вы хотите разрешить пользователю по имени billy выполнять любую команду. Добавьте в конец файла следующую строку:

билли ВСЕ = (ВСЕ) ВСЕ

Конечно, вы захотите заменить billy своим фактическим именем пользователя. Если visudo действительно использовал vi, нажмите Esc и введите: wq, чтобы выйти из редактора. Вы можете выйти из системы, а затем использовать sudo как обычно.