bash: iwconfig: command not found | [debian]

Вопрос или проблема

Вопрос: Как использовать iwconfig в чисто установленной Debian?

Лог

root@debian:/home/[usr]# apt install --reinstall wireless-tools
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 114 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://deb.debian.org/debian buster/main amd64 wireless-tools amd64 30~pre9-13 [114 kB]
Fetched 114 kB in 0s (595 kB/s)
(Reading database ... 176551 files and directories currently installed.)
Preparing to unpack .../wireless-tools_30~pre9-13_amd64.deb ...
Unpacking wireless-tools (30~pre9-13) over (30~pre9-13) ...
Setting up wireless-tools (30~pre9-13) ...
Processing triggers for man-db (2.8.5-2) ...
root@debian:/home/[usr]# iwconfig
bash: iwconfig: command not found
root@debian:/home/[usr]#

Какую команду вы использовали, чтобы получить root? Вероятно, у вас нет /sbin в вашем пути.

Попробуйте /sbin/iwconfig

В Linux, когда вы пытаетесь выполнить команду, такую как iwconfig, система ищет исполняемый файл в каталогах, перечисленных в переменной окружения $PATH. Переменная PATH — это список каталогов, где оболочка ищет исполняемые файлы при вводе команды. Чтобы увидеть каталоги, включенные в вашу текущую переменную PATH, вы можете использовать команду echo $PATH.

Если команда, которую вы пытаетесь выполнить (например, iwconfig), находится в каталоге, не включенном в ваш $PATH, вы получите ошибку команда не найдена. В вашем случае iwconfig обычно находится в каталоге /sbin/, который обычно не включается в стандартный PATH для обычных пользователей.

Чтобы решить эту проблему, у вас есть два варианта:

  1. Добавить /sbin/ в вашу переменную PATH, чтобы оболочка могла находить исполняемые файлы в этом каталоге.
  2. Использовать полный путь к команде, запустив /sbin/iwconfig, что напрямую указывает оболочке, где найти исполняемый файл. Добавив /sbin/ в ваш PATH или указав полный путь, вы сможете успешно выполнить iwconfig.

Ответ или решение

Теория

При использовании команды iwconfig в свежей установке Debian возникает ошибка bash: iwconfig: command not found. Это может произойти из-за того, что команда iwconfig не находится в одной из директорий, перечисленных в переменной окружения PATH. Переменная PATH определяет, где оболочка будет искать исполняемые файлы, когда пользователь вводит команду. В случае с iwconfig, она часто располагается в директории /sbin/, которая может не быть частью пути по умолчанию для обычных пользователей.

Важно отметить, что директория /sbin/ обычно содержит системные утилиты, которые, как правило, требуют привилегий суперпользователя. Поэтому она может быть включена в PATH по умолчанию только для пользователей с правами администратора или "root".

Пример

Рассмотрим журнал установки пакета wireless-tools, где должно находиться исполнение команды iwconfig:

root@debian:/home/[usr]# apt install --reinstall wireless-tools
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 114 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://deb.debian.org/debian buster/main amd64 wireless-tools amd64 30~pre9-13 [114 kB]
Fetched 114 kB in 0s (595 kB/s)
(Reading database ... 176551 files and directories currently installed.)
Preparing to unpack .../wireless-tools_30~pre9-13_amd64.deb ...
Unpacking wireless-tools (30~pre9-13) over (30~pre9-13) ...
Setting up wireless-tools (30~pre9-13) ...
Processing triggers for man-db (2.8.5-2) ...
root@debian:/home/[usr]# iwconfig
bash: iwconfig: command not found

Несмотря на успешную установку пакета, при попытке выполнения команды iwconfig она не находится. Это предполагает, что либо команда на самом деле не установлена, либо точка пути к ней отсутствует в PATH.

Применение

1. Проверка и исправление PATH

Для проверки текущей переменной окружения PATH, можно использовать команду:

echo $PATH

Если в выводе отсутствует /sbin/, необходимо его добавить. Это можно сделать временно:

export PATH=$PATH:/sbin

Или постоянно добавив в файл ~/.bashrc следующую строку:

export PATH=$PATH:/sbin

После этого необходимо перезагрузить настройки оболочки:

source ~/.bashrc

2. Прямое выполнение iwconfig

Другим способом является использование полного пути к исполняемой команде:

/sbin/iwconfig

Это решение подразумевает использование полного пути для каждого вызова команды, что может быть неудобно, но устраняет необходимость модификации PATH.

3. Проверка прав пользователя

Убедитесь, что вы выполняете iwconfig от имени пользователя с достаточными привилегиями, скорее всего, "root". Если используете sudo:

sudo iwconfig

или, если используете полное название:

sudo /sbin/iwconfig

Заключение

Проблема command not found для команды iwconfig в свежей установке Debian может быть связана с отсутствием указания на директорию /sbin/ в переменной PATH. Добавление данной директории в $PATH или выполнение команды с полным путём решает эту проблему. Удостоверьтесь, что вы обладаете соответствующими привилегиями для выполнения команды, так как iwconfig часто используется для настройки параметров сети, которые требуют прав администратора.

Оцените материал
Добавить комментарий

Капча загружается...