Linux 127Высокая

Решение ошибки 'kubectl command not found' на Linux

Статья объясняет причины ошибки 'kubectl: command not found' и предлагает пошаговые инструкции по установке kubectl и настройке переменной PATH для различных дистрибутивов Linux.

Обновлено 14 февраля 2026 г.
10-15 мин
Средняя
FixPedia Team
Применимо к:Ubuntu 20.04+CentOS 7+Debian 10+Fedora 35+

Что означает ошибка 'kubectl: command not found'

Ошибка 'kubectl: command not found' (или 'bash: kubectl: command not found') возникает в терминале Linux, когда система не может найти исполняемый файл команды kubectl в директориях, перечисленных в переменной окружения PATH. Это означает, что либо kubectl не установлен на вашей системе, либо он установлен, но его путь не добавлен в PATH, либо путь указан некорректно.

Ошибка обычно сопровождается кодом выхода 127 (в bash), что указывает на то, что команда не найдена.

Причины возникновения

  1. Kubectl не установлен. Вы пытаетесь использовать kubectl без предварительной установки клиента Kubernetes.
  2. Kubectl установлен, но не в PATH. Возможно, вы установили kubectl в кастомную директорию (например, ~/bin или /opt/kubectl), но эта директория не включена в переменную PATH.
  3. Неправильный путь в PATH. В PATH указан неверный путь к исполняемому файлу kubectl, например, из-за опечатки или изменения расположения файла.
  4. Проблемы с оболочкой. Используется оболочка, которая не загружает конфигурационные файлы (например, ~/.bashrc), где добавлен kubectl в PATH.
  5. Повреждение установки. Kubectl установлен, но исполняемый файл отсутствует или поврежден.

Способы решения

Способ 1: Установка kubectl

Если kubectl не установлен, необходимо его установить. Существует несколько способов установки в зависимости от дистрибутива Linux.

Для Ubuntu/Debian:

# Обновление индекса пакетов
sudo apt-get update

# Установка kubectl
sudo apt-get install kubectl

Для CentOS/RHEL:

# Установка kubectl через yum
sudo yum install kubectl

Для Fedora:

# Установка kubectl через dnf
sudo dnf install kubectl

Альтернативная установка через официальный репозиторий Kubernetes:

Вы можете установить kubectl напрямую с сайта Kubernetes, что гарантирует последнюю версию:

# Скачивание последней стабильной версии (пример для amd64)
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

# Добавление прав на выполнение
chmod +x kubectl

# Перемещение в директорию в PATH (например, /usr/local/bin)
sudo mv kubectl /usr/local/bin/

# Проверка установки
kubectl version --client

Способ 2: Настройка переменной PATH

Если kubectl уже установлен, но команда не найдена, возможно, путь к исполняемому файлу не добавлен в PATH.

  1. Найдите расположение kubectl:
    # Поиск в стандартных директориях
    sudo find / -name kubectl 2>/dev/null
    # Или если знаете примерный путь
    ls /usr/local/bin/kubectl
    
  2. Проверьте текущий PATH:
    echo $PATH
    

    Убедитесь, что директория, содержащая kubectl (например, /usr/local/bin), присутствует в выводе.
  3. Если директории нет в PATH, добавьте её: Откройте файл ~/.bashrc (для bash) или ~/.zshrc (для zsh) в текстовом редакторе и добавьте строку:
    export PATH=$PATH:/путь/к/директории
    

    Например, если kubectl находится в /usr/local/bin (что обычно так), и этой директории нет в PATH, добавьте:
    export PATH=$PATH:/usr/local/bin
    
  4. Примените изменения:
    source ~/.bashrc   # для bash
    # или
    source ~/.zshrc    # для zsh
    

    Или просто перезапустите терминал.
  5. Проверьте, что kubectl теперь доступен:
    which kubectl
    kubectl version --client
    

Способ 3: Создание символьной ссылки

Если kubectl установлен в нестандартную директорию, и вы не хотите менять PATH, можно создать символьную ссылку в директории, которая уже в PATH (например, /usr/local/bin):

# Предположим, kubectl находится в /opt/kubectl/bin/kubectl
sudo ln -s /opt/kubectl/bin/kubectl /usr/local/bin/kubectl

# Проверка
kubectl version --client

Профилактика

  • Устанавливайте kubectl через официальные репозитории или менеджеры пакетов, чтобы автоматически добавлять его в PATH.
  • Проверяйте PATH после установки командой echo $PATH, убедитесь, что директория с kubectl включена.
  • Используйте стандартные пути для установки бинарных файлов, такие как /usr/local/bin или /usr/bin, которые обычно уже в PATH.
  • Если устанавливаете вручную, всегда добавляйте путь в PATH в конфигурационном файле оболочки (например, ~/.bashrc).

Часто задаваемые вопросы

Почему возникает ошибка 'kubectl: command not found'?
Как проверить, установлен ли kubectl?
Что делать, если kubectl установлен, но команда не найдена?
Как добавить kubectl в PATH?

Полезное

Проверка наличия kubectl
Установка kubectl
Настройка PATH
Добавление в PATH
Проверка работы