Linux нет команды systemctl

Как исправить ошибку systemctl Command Not Found в Linux

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

Что такое команда systemctl

systemctl — это утилита командной строки в Linux, которая управляет системными службами. Это важный инструмент, который позволяет системным администраторам управлять службами и ресурсами системы. Команда systemctl позволяет пользователям запускать, завершать, включать, отключать и перезапускать службы в системе Linux.

Что вызывает ошибку «команда systemctl не найдена»

Ошибка «Команда systemctl не найдена» возникает, когда система обнаруживает, что systemctl отсутствует. Основной причиной ошибки systemctl является использование старой версии Linux. Старые версии Linux поддерживают только sysvinit вместо утилиты systemd.

Поскольку утилита systemd отсутствует в некоторых старых версиях Linux. Systemctl совместим с этой утилитой. Но если вы используете systemctl со старыми конфигурациями Linux, такими как sysvinit или выскочка произойдет ошибка, команда не найдена.

Вот список возможных причин, из-за которых это происходит:

  • Пакет systemctl не установлен
  • Неправильно задана переменная среды PATH.
  • Команда systemctl не является исполняемой
  • В системе не запущена система инициализации на основе systemd

Как исправить ошибку «Команда systemctl не найдена»

Если вы используете версию Linux, которая не использует systemd в качестве утилиты централизованного управления, то вот несколько быстрых исправлений этой ошибки.

  • Установите пакет systemctl
  • Проверьте переменную среды PATH
  • Сделать команду systemctl исполняемой
  • Проверьте систему инициализации
  • Замена systemctl на служебную команду

1: Установите пакет systemctl

Если пакет systemctl не установлен в системе, первым шагом будет его установка. Вы можете установить пакет systemctl с помощью менеджера пакетов Linux.

Установка пакета systemd может решить проблему, но не является гарантированным решением. Сначала необходимо проверить, соответствует ли системад пакет уже установлен в вашей системе.

Запустите следующую команду, чтобы проверить, systemctl пакеты установлены или нет:

судо дпкг -л | grep системад

Если пакеты уже установлены, появится следующий вывод, показывающий, что systemd уже установлен:

В случае, если пакеты не установлены, мы можем установить их, выполнив следующие шаги.

Например, чтобы установить его на Системы на основе Ubuntu и Debian, запустите указанные команды, чтобы установить пакет systemctl.

Читайте также:  Установка boost на linux

Запустите команду ниже, чтобы установить systemd:

судо подходящий установить системад

На Системы на базе Red Hat используйте команду:

судо ням установить системад

Если вы все еще сталкиваетесь с ошибкой, несмотря на то, что установили systemd, вы можете рассмотреть возможность его переустановки с помощью следующей команды.

судо подходящий установить —переустановить системад

Установив утилиту systemd, это должно решить проблему.

2. Проверьте переменную среды PATH.

Если переменная среды PATH установлена ​​неправильно, система может не найти команду systemctl. Вы можете проверить переменную среды PATH, выполнив следующую команду:

Вывод должен содержать путь к каталогу, в котором находится команда systemctl. Если его нет, вы можете добавить каталог в переменную окружения PATH с помощью следующей команды:

экспорт ПУТЬ = $ПУТЬ : / usr / мусорное ведро / systemctl

3: Сделайте команду systemctl исполняемой

Если команда systemctl не является исполняемой, сделайте ее исполняемой с помощью chmod. Используйте команду ниже, чтобы сделать команду systemctl исполняемой:

судо chmod +х / usr / мусорное ведро / systemctl

4: Проверьте систему инициализации

Одна из главных причин, почему systemctl команда не работает, если в вашей системе не используется система инициализации на основе systemd, вы можете столкнуться с «Команда systemctl не найдена» ошибка. Чтобы проверить, работает ли в вашей системе система инициализации на основе systemd, вы можете запустить следующую команду:

Если вывод «системад«В вашей системе работает система инициализации на основе systemd. Если вывод не «systemd», вам может потребоваться переключиться на систему инициализации на основе systemd, чтобы использовать команду systemctl.

5: Замена systemctl на сервисную команду

Простое решение для исправления «sudo: systemctl: команда не найдена” заключается в использовании сервисной команды вместо systemctl. Сервисную команду можно использовать для запуска Сценарий инициализации System V, который поддерживается более старыми версиями Linux.

Если вы не хотите устанавливать системад утилита, то это исправление является простым и эффективным решением. Используя команду service, вы можете легко управлять системными службами, не используя команду systemctl.

Обратите внимание, что сервисная команда может быть доступна не для всех служб, а для некоторых служб может потребоваться использование systemctl.

Следующий синтаксис будет сопровождаться служебной командой:

судо услуга [ наименование услуги ] [ действие ]

Вы также можете использовать другие команды с командой службы, такие как остановка, перезапуск, состояние и перезагрузка, в зависимости от того, что вы хотите сделать со службой.

Например, чтобы запустить ту же команду со службой ufw, используйте:

Чтобы определить и перечислить имена служб для управления использованием:

Это отобразит список всех запущенных в данный момент служб в вашей системе:

Заключение

Команда systemctl не найдена” является распространенной ошибкой в ​​Linux. Это может быть вызвано несколькими причинами, в том числе systemctl пакет не установлен, переменная окружения PATH установлена ​​неправильно, systemctl команда не является исполняемой, а в системе не работает система инициализации на основе systemd. Использование служебной команды вместо systemctl Команда, мы можем легко исправить эту ошибку для старых дистрибутивов Linux.

Источник

«Команда systemctl не найдена»: почему так происходит и что делать

Lorem ipsum dolor

Пользователи Linu x п ри работе с терминало м и ногда сталкиваются с таким сообщением: «команда «systemctl» не найдена» или на английском «systemctl: command not found». Решение этой проблемы есть , и оно будет описано чуть ниже. А пок а н емного подробнее остановимся на команде «systemctl» и выясним , для чего она используется и почему с ней возникает ошибка.

Кстати, такая проблема возникает не во всех дистрибутивах Linux, а лишь в тех, которые не поддерживают работу с командой «systemctl».

Что такое «systemctl»

  • запуск ;
  • остановку ;
  • изменение конфигурации ;
  • проверку статуса ;
  • автозагрузку ;
  • и др.
Читайте также:  Операционная система альт линукс спт

Решение проблемы «команда «systemctl» не найдена»

  1. Повреждение утилиты «systemd». Эта причина будет в том случае, если раньше вы уже работали с командой «systemctl» и все было хорошо , н о при очередном сеансе появилась ошибка «команда «systemctl» не найдена».
  2. Вы используете старую версию дистрибутива Linux. Это наиболее вероятная причина, если вы в первый раз решили использовать команду «systemctl» и получили в ответ ошибку. Не все дистрибутивы Линукс перешли на утилиту «systemd», многие до сих пор используют утилиту «SystemV init» или «Upstart». Если это так, тогда выполнение команды «systemctl» выдаст ошибку, так как ваше устройство с «более старыми утилитами» просто не поддерживает команду «systemctl».

Решаем «systemctl: команда не найдена»

Первый и самый верный способ — это не использовать команду «systemctl». Если у вас в Линуксе установлена «более старая» утилита для управления системой, тогда нужно заменить команду «systemctl» на команду «service». Команда «service» выполняет все то же самое в утилите «systemV init», что и команда «systemctl» в «systemd».

По сути, для каждой системной утилиты будет своя команда для управления. Проблема в том, что команды совместимы только со своими утилитами.

В нашем случае, чтобы запустить «ufw», сценарий в терминале мог бы выглядеть так:

mycomputer@ubuntu:~$ sudo service utw start

[sudo] пароль для mycomputer:

Второй способ решить проблему с командой «systemctl» — это установ ить или переустанов ить утилит у «systemd». Если вы уверены, что «systemd» была у вас установлена, тогда ее нужно переустановить. Если ее нет в операционной системе, тогда ее нужно инсталлировать.

Для начала необходимо проверить статус «systemd» в вашем устройстве. Для этого нужно воспользоваться следующей командой:

sudo dpkg -l | grep systemd

Если п осле запуска этой команды вы получите в терминале большое сообщение об утилите «systemd», значит , она установлена на устройстве и ее нужно будет переустановить. Если сообщение вы не получили, тогда нужно инсталлировать «systemd». Делается это при помощи следующих команд:

sudo apt-get update

sudo apt-get install systemd

Если утилита «systemd» все же установлена на компьютере, но ошибка «systemctl: команда не найдена» выскакивает, тогда нужна переустановка утилиты. Делается это при помощи команды:

sudo apt-get install — — reinstall systemd

Заключение

Проблема «systemctl: команда не найдена» не является критической, которую невозможно было бы исправить. Мы описали два верных способа, которые точно решат эту проблему. Если у вас «более старая» версия Линукс-дистрибутива, тогда просто замените «systemctl» на «service» , и проблема тут же решится. «Systemd» не имеет явных преимуществ перед «более старыми» альтернативными утилитами, поэтому ее установка или переустановка нужны только в том случае, если ранее она уже использовалась на устройстве.

Читайте также:  Xbox джойстик для linux

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Источник

How to Fix “Systemctl Command Not Found” Error

TechColleague

As a Linux user, you may have encountered the error “systemctl command not found” at some point. This error can be frustrating, as it prevents you from using the systemctl command, a crucial tool for managing system services in many modern Linux distributions.

This article will dive into the systemctl command, why you might see the “command not found” error, and how to fix it.

What is the systemctl command?

The systemctl command is a utility that allows you to control the state of system services on your Linux machine. It is part of the systemd system and service manager, a suite of tools that controls the initialization of the Linux operating system and manages system services.

Using the systemctl command, you can start, stop, restart, enable, or disable system services and view their current status. You can also use it to view log files and configure system services.

Here are a few examples of tasks you can perform with the systemctl command:

  • Start a service: systemctl start
  • Stop a service: systemctl stop
  • Restart a service: systemctl restart
  • Enable a service to start automatically at boot: systemctl enable
  • Disable a service from starting automatically at boot: systemctl disable
  • Check the status of a service: systemctl status

Why are you seeing the “command not found” error?

There are a few reasons you might be seeing the “systemctl command not found” error:

1. The systemctl command is not installed on your machine

One of the most common reasons for this error is that the systemctl command is not installed on your machine. This can happen if you are using a version of Linux that does not include the systemd suite of tools or if you have manually removed the systemctl command from your system.

To check if the systemctl command is installed on your machine, you can try running the which systemctl command. If the command is not found, you’ll see a message similar to “systemctl: command not found.”

2. The systemctl command is not in your PATH

Another reason you might be seeing the “systemctl command not found” error is that the systemctl command is not in your PATH. The PATH is an environment variable that specifies the directories in which the shell should search for command executables.

If the systemctl command is not in one of the directories listed in your PATH, you’ll get the “command not found” error when you try to run it.

To check if the systemctl command is in your PATH, you can try running the which systemctl command. If the command is found, it will print the full path to the systemctl executable. If it is not found, you’ll see a message similar to “systemctl: command not found.”

Источник

Оцените статью
Adblock
detector