Команда Centos 7 ifconfig не найдена
Обновлено: 21.11.2024
Сегодня я настраивал новый облачный сервер, и мне нужно было использовать классическую команду ifconfig. Я не смог это сделать из-за этой ошибки:
Кажется, CentOS 7.x не поддерживает ifconfig, установленный по умолчанию в минимальном образе ISO, который я использовал.
Команда ifconfig больше не устанавливается по умолчанию в CentOS, поскольку она была заменена командой ip и помечена как устаревшая.
Как исправить ошибку ifconfig: команда не найдена?
Даже официально это не рекомендуется, но если вы выросли с помощью команды ifconfig, как я, здесь вы найдете руководство по ее установке в CentOS 7.x и последних версиях Ubuntu.
Установите ifconfig в CentOS 7.x
Сначала обо всем по порядку. Как я могу узнать, в какой пакет входит команда ifconfig?
С помощью команды yum contains вы можете легко узнать точное имя пакета, который предоставляет системную утилиту ifconfig.
Как видите, в CentOS Linux команду ifconfig можно найти внутри RPM-пакета net-tools, доступного в базовом репозитории CentOS по умолчанию. Используя yum, это можно легко установить за считанные секунды:
Это все, что нужно сделать, теперь вы можете использовать команду ifconfig.
Установите ifconfig в Ubuntu и других дистрибутивах на основе Debian
В последних версиях Ubuntu и других дистрибутивах на базе Debian эта команда также устарела. В том же случае, что и в CentOS, это можно легко исправить с помощью команды apt-get:
Заключение
Я показал простой и эффективный способ установки команды ifconfig в большинстве популярных дистрибутивов Linux.
Для этого не требуется специальных технических знаний, достаточно умения использовать yum или apt-get с вашего терминала.
Команда ifconfig: not found в наши дни является распространенной ошибкой для тех, кто привык к команде ifconfig.
Однако новой заменой команды является команда ip, поэтому, если вы еще не думали о том, чтобы начать ее использовать, вам следует.
Об авторе: Эстебан Борхес
Опытный старший системный администратор Linux и веб-технолог, увлеченный созданием инструментов, автоматизацией процессов, устранением проблем с сервером, устранением неполадок, защитой и оптимизацией веб-сайтов с высоким трафиком.
Управление сетью на ваших серверах может быть трудоемким, занимать много времени и включать широкий спектр конфигураций. К счастью, есть несколько инструментов, которые помогут с этими конфигурациями. В этой статье мы сосредоточимся на инструменте Ifconfig .
Что такое ifconfig?
Ifconfig — это сокращение от Interface Configuration. Это утилита командной строки Linux, используемая для отображения, настройки и управления вашими сетевыми интерфейсами. Полное описание справочной страницы утилиты выглядит следующим образом:
«Ifconfig используется для настройки резидентных сетевых интерфейсов ядра. Он используется во время загрузки для настройки интерфейсов по мере необходимости. После этого он обычно нужен только при отладке или настройке системы.
Если аргументы не указаны, ifconfig отображает состояние активных в данный момент интерфейсов. Если указан один аргумент интерфейса, он отображает состояние только данного интерфейса; если указан один флаг -a, он отображает состояние всех интерфейсов, даже тех, которые отключены. В противном случае он настраивает интерфейс».
Как указано на странице руководства, вы можете передавать различные аргументы (флаги) команде ifconfig для выполнения различных задач или отображения определенной информации.
Что наиболее полезно делать с ifconfig?
Ifconfig — это универсальная утилита, с помощью которой управление сетевыми интерфейсами становится относительно простой задачей. Ниже приведены несколько полезных команд ifconfig, которые вы можете использовать для управления сетью ваших серверов:
- Эта команда отобразит информацию конкретно для сетевого интерфейса eth0
- Эта команда назначает IP-адрес 123.123.123.123 интерфейсу eth0
- Эта команда настроит сетевую маску для интерфейса eth0
Что делать, если ifconfig отсутствует в CentOS?
Ifconfig был утилитой командной строки для управления сетью по умолчанию для всех версий CentOS до CentOS 6. С появлением CentOS 7 в качестве утилиты управления сетью по умолчанию была введена новая заменяющая утилита под названием IP. инструмент. Утилита командной строки IP работает аналогично ifconfig с несколькими небольшими отличиями.
Теперь вы можете спросить себя: "Что, если я не хочу использовать эту новую утилиту?". Это прекрасно. Хотя это больше не утилита по умолчанию, поставляемая с последним дистрибутивом CentOS, Ifconfig можно легко установить на CentOS 7.
Как установить ifconfig на CentOS?
Установка Ifconfig на CentOS 7 (или любые серверы CentOS, на которых отсутствует эта утилита) очень проста. Утилита ifconfig является частью более крупного пакета утилит под названием net-tools .Все, что вам нужно сделать, это установить пакет net-tools, после чего должен быть доступен ifconfig. Поскольку мы имеем в виду именно CentOS, для этой установки мы будем использовать диспетчер пакетов yum.
Просто для подтверждения давайте воспользуемся yum, чтобы увидеть, какой пакет «предоставляет» утилиту ifconfig. Мы можем сделать это, используя аргумент команды «yum whatprovides»:
Вывод этой команды должен выглядеть примерно так:
Загруженные плагины: fastmirror, priority, universal-hooks
Загрузка скоростей зеркала из кэшированного хост-файла
* EA4: 208.100.0.204
* cpanel-addons-production-feed: 208.100.0.204 < br />* cpanel-plugins: 208.100.0.204
5 пакетов исключены из-за защиты приоритета репозитория
net-tools-2.0-0.24.20131004git.el7.x86_64 : Основные сетевые инструменты
Repo: @system-base
Соответствует:
Имя файла: /usr/sbin/ifconfig
Итак, полное имя пакета и описание:
net-tools-2.0-0.24.20131004git.el7.x86_64 : Основные сетевые инструменты
Установка с помощью yum так же проста и может быть выполнена с помощью следующей команды:
После завершения установки yum вы можете подтвердить, что ifconfig теперь доступен, просто введя команду без аргументов для отображения информации о текущем сетевом интерфейсе:
Всё! Мы закончили. Как всегда, если у вас возникнут какие-либо вопросы относительно вашего сервера или службы LiquidWeb, не стесняйтесь звонить в нашу службу поддержки по телефону 1-800-580-4985, чтобы поговорить с одним из наших знающих представителей службы поддержки, войдите в свой справочный центр Liquidweb, чтобы отправить запрос. запрос в службу поддержки или откройте чат с нами!
Если вы заинтересованы в том, чтобы стать клиентом Liquid Web, или хотели бы узнать больше о наших услугах хостинга, вы можете посетить нашу страницу продуктов ниже, и если у вас есть дополнительные мысли, позвоните, чтобы поговорить с консультантом по хостингу сегодня! р>
Нормальный ли мой путь? Если нет, то как я могу это изменить?
Кроме того, у меня пока нет подключения к Интернету на виртуальной машине, возможно, это фактор.
@Ramesh Нет необходимости в sudo : /sbin/ifconfig достаточно, если вы хотите увидеть настройки. Вам нужно только sudo, если вы хотите изменить настройки (и тогда достаточно sudo ifconfig).
@SHW То, что автор инструмента ip решил, что ifconfig устарел, не означает, что остальной мир должен прекратить его использовать.
3 ответа 3
TL/DR: ifconfig теперь имеет ip a . Попробуйте ip -s -c -h a .
Ваш путь выглядит нормально, но не включает /sbin , что может быть задумано.
Возможно, вы искали команду /sbin/ifconfig .
Если этот файл не существует (попробуйте ls /sbin/ifconfig ), возможно, команда просто не установлена.
Это часть пакета net-tools , который не устанавливается по умолчанию, поскольку он устарел и заменен командой ip из пакета iproute2 .
Функция ifconfig без опций заменена на ip с указанием адреса объекта .
эквивалентно
и, поскольку аргумент object может быть сокращен, а команда по умолчанию показывает , также
Формат вывода несколько отличается:
Обратите внимание, что вывод более лаконичен: он не показывает количество пакетов, обработанных обычным или другим способом.
Для этого добавьте опцию -s ( -stats , -statistics ):
Но на самом деле вы хотите увидеть следующее:
Он показывает число с такими суффиксами, как 26,1 млн или 79,3 тысяч, и выделяет цветом некоторые релевантные термины и адреса.
Если вы считаете, что команда слишком длинная, используйте короткие параметры:
Это эквивалентно:
Устарело, потому что это ifconfig? Им не нравится имя? (да, я понимаю суть функциональности, но это не повод просто удалять команду) Почему они просто не сохраняют команду для совместимости со скриптами на серверах, например, создавая псевдоним? Linux начинает терять смысл. и еще хрень там делается с линуксом, как systemd может быть полезен в простом unix-подобном сервере? лучше перейти на freebsd, пока не поздно? Например, сегодня практически невозможно простым способом изменить ip некоторых дистрибутивов без перезагрузки в текстовом режиме!
(проверено) Минимальная установка CENTOS 7 по умолчанию не устанавливает сетевые инструменты.
(проверено) команда ifconfig станет доступна при установке пакета сетевых инструментов
-Как установить net-tools через yum для не очень знатоков Linux.
1) иметь привилегированную оболочку root или быть в списке sudo.
2b) Учетная запись пользователя в списке sudo
Если пакет установлен, он сообщит об этом и завершит работу yum. (Тогда это звучит как проблема пути). Если он не установлен, yum предложит пользователю продолжить после нескольких локальных/сетевых проверок пакетов. Установка займет (должна) немного времени. Теперь ifconfig установлен.
Если вы чувствуете себя предприимчивым. Эквивалент использования ifconfig при отображении информации об интерфейсе / адресе с использованием ip
Поскольку все остальные уже дали ответ на поиск ifconfig или доступных альтернатив, я дам несколько общих советов о том, как выйти из этой ситуации, потому что это не первый и не последний раз, когда вам нужно получить команду. /package/utility в своей системе (по сути я учу человека ловить рыбу :). Инструкции предназначены для RHEL/CentOS.
Сценарий 1. Если эта команда уже существует в другой системе:
-
который ifconfig rpm -qf /usr/sbin/ifconfig sudo yum install net-tools yum whatprovides ifconfig . Это сообщит вам имя пакета, содержащего команду, и, если он уже существует в вашей системе, путь к команде. Если пакет не существует, вам просто нужно запустить sudo yum install, чтобы установить его, и вы должны быть в пути.
Это общие инструкции по поиску и установке любого пакета. Я не буду вдаваться в подробности о репозиториях/других дистрибутивах и прочем, чтобы вы могли приступить к работе.
Пользователям Windows знакома команда ipconfig , используемая для получения информации о конфигурации сетевого интерфейса и ее изменения. В Linux есть аналогичный инструмент, который называется ifconfig (расшифровывается как настройка интерфейсов).
Обычно требуется войти в систему как пользователь root или использовать sudo, чтобы иметь возможность использовать ifconfig на компьютере с Linux.
Не только для получения информации, ifconfig также можно использовать для изменения/настройки сетевых интерфейсов. Эта программа является важной частью многих операционных систем, поскольку она используется в сценариях запуска системы.
В новых версиях Linux при попытке вызвать ifconfig из командной строки может появиться всплывающее сообщение об ошибке ifconfig: команда не найдена или -bash: ifconfig: команда не найдена. Эта статья поможет вам понять, почему возникает ошибка и что можно сделать, чтобы ее исправить.
Почему происходит команда ifconfig не найдена?
В основном ошибка означает, что в системе не найдена такая команда с именем "ifconfig". С 2009 года планировалось отказаться от сетевых инструментов, частью которых является конфигурация, из-за отсутствия обслуживания. Но из соображений совместимости до недавнего времени он оставался частью стандартных библиотек.
Начиная с Debian Stretch и Ubuntu 18.04 и его производных, таких как Kali Linux, elementaryOS, net-tools вместе с ifconfig были заменены на iproute2util em>, который по умолчанию использует команду ip. Вы также обнаружите, что ifconfig отсутствует по умолчанию в CentOS 7 и Fedora 18.
Как исправить команда ifconfig не найдена в Ubuntu/Debian
Откройте терминал и введите следующую команду, чтобы установить пакет net-tools и прилагаемый к нему ifconfig.
Переключатель -y означает, что apt автоматически примет любое всплывающее приглашение.
После завершения установки вы сможете использовать ifconfig в обычном режиме.
Как исправить команда ifconfig не найдена в CentOS
Подобно дистрибутиву Ubuntu/Debian, вам необходимо установить net-tools, введя в терминале приведенную ниже команду.
Если yum не может найти net-tools, возможно, включенные вами репозитории не содержат пакет net-tools. Вам необходимо включить все глобальные репозитории CentOS.
Даже при наличии в вашей системе net-tools, в некоторых случаях проблема все еще существует. Вам необходимо вручную проверить, включен ли путь для двоичного файла ifconfig в системную переменную PATH.
Сначала необходимо проверить, существует ли /sbin/ifconfig. Вы можете ввести путь непосредственно в окно терминала или использовать эту команду:
Как только вы увидите, что двоичный файл ifconfig существует!, введите эту команду в терминал, чтобы увидеть текущую переменную PATH
Затем проверьте вывод. Если в выводе нет /sbin, вам нужно вручную добавить путь к системной переменной PATH, используя следующую команду
Перезагрузите компьютер, после чего вы сможете нормально использовать ifconfig.
Читайте также: