Введение
Добро пожаловать в отдел системного администрирования TechCorp! В качестве нового младшего системного администратора ваша задача — освоить команду whereis. Этот мощный инструмент поможет вам находить исполняемые файлы, исходные коды и справочные страницы для различных команд в системе Linux. К концу этой лабораторной работы вы сможете эффективно ориентироваться в файловой системе и находить критически важные компоненты системы.
Основы работы с 'whereis'
Ваше первое задание в TechCorp — познакомиться с командой whereis. Она используется для определения местоположения исполняемых файлов (бинарников), исходных текстов и файлов документации (man-страниц) для конкретной команды.
Давайте начнем с использования whereis для поиска информации о команде ls:
whereis ls
Вы должны увидеть вывод, похожий на этот:
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
Этот результат содержит два важных элемента:
/usr/bin/ls: Это путь к исполняемому файлуls. Когда вы вводитеlsв терминале, запускается именно эта программа./usr/share/man/man1/ls.1.gz: Это путь к справочной странице (manual page) дляls. Справочные страницы содержат подробную информацию о том, как использовать команды.
Команда whereis ищет файлы в ограниченном наборе стандартных мест, включая каталоги с исполняемыми файлами, библиотеки и директории с документацией. Благодаря этому поиск выполняется гораздо быстрее, чем сканирование всей файловой системы.
Если вам интересно, что означают эти пути:
/usr/bin— стандартное место хранения пользовательских команд./usr/share/man— здесь обычно хранятся справочные страницы.man1указывает на то, что это раздел руководства для пользовательских команд (в отличие от системных вызовов или библиотечных функций).- Расширение
.gzозначает, что файл сжат для экономии места.
Поиск исполняемых файлов
Руководитель группы попросил вас найти исполняемый файл для команды grep. Опция -b команды whereis идеально подходит для этой задачи, так как она ограничивает поиск только бинарными файлами.
Попробуйте выполнить следующую команду:
whereis -b grep
Вы увидите примерно следующее:
grep: /usr/bin/grep
Этот вывод показывает точное расположение исполняемого файла grep. Бинарные файлы — это и есть те программы, которые запускаются при вводе команды. В данном случае, когда вы используете grep, вы фактически запускаете программу, расположенную в /usr/bin/grep.
Теперь давайте попробуем найти исполняемый файл для команды, которой может не быть в системе. Используйте whereis -b для поиска вымышленной команды nonexistent:
whereis -b nonexistent
Результат будет таким:
nonexistent:
Пустой результат после двоеточия означает, что исполняемый файл для nonexistent не найден. Это полезно, когда вы не уверены, установлена ли конкретная утилита в вашей системе.
Поиск справочных страниц
Ваша следующая задача — найти справочные страницы для команды ssh. Документация крайне важна для понимания принципов работы различных инструментов.
Используйте опцию -m с командой whereis, чтобы найти только файлы руководств:
whereis -m ssh
Вы получите вывод, похожий на этот:
ssh: /usr/share/man/man1/ssh.1.gz
Здесь указан путь к справочной странице ssh. Расширение .gz говорит о том, что файл заархивирован.
Обычно для чтения документации используется команда man. Но так как мы еще не разбирали её, давайте просто проверим физическое наличие файла:
ls /usr/share/man/man1/ssh.1.gz
Если файл существует, его имя отобразится в выводе. Это подтверждает, что документация действительно присутствует в системе.
Умение находить справочные страницы критически важно для системного администратора. Это позволяет быстро проверить наличие документации к инструменту, что неоценимо при настройке ПО или поиске причин неисправностей.
Комбинирование опций
По мере освоения whereis ваш руководитель дает вам более сложное задание: найти одновременно и исполняемый файл, и справочную страницу для python3 одной командой.
Для этого можно объединить опции -b и -m:
whereis -bm python3
Вывод может выглядеть так:
python3: /usr/bin/python3 /usr/lib/python3 /etc/python3 /usr/share/python3 /usr/share/man/man1/python3.1.gz
Этот результат дает исчерпывающую информацию:
/usr/bin/python3: Путь к исполняемому файлу Python 3./usr/lib/python3: Директория с библиотеками Python 3 (повторно используемый код)./etc/python3: Каталог с конфигурационными файлами./usr/share/python3: Директория с общими данными приложения./usr/share/man/man1/python3.1.gz: Путь к справочной странице.
Такой комплексный обзор особенно полезен при работе со сложным программным обеспечением, компоненты которого разбросаны по разным частям файловой системы.
Поиск исходных кодов
В качестве финального задания руководитель просит вас проверить, доступны ли в системе исходные коды оболочки bash. Исходные файлы полезны для изучения логики работы программы или для сборки её модифицированных версий.
Используйте опцию -s для поиска исходных кодов:
whereis -s bash
Вывод может оказаться пустым, так как исходные коды обычно не устанавливаются по умолчанию в большинстве дистрибутивов. Если же вы увидите путь, это будет местом расположения исходников bash.
Теперь давайте объединим все возможности, чтобы получить полную картину по команде bash:
whereis bash
Запуск команды без опций покажет всю доступную информацию:
bash: /usr/bin/bash /etc/bash.bashrc /usr/share/man/man1/bash.1.gz
Этот вывод демонстрирует:
/usr/bin/bash: Исполняемый файл оболочки./etc/bash.bashrc: Системный конфигурационный файл для bash./usr/share/man/man1/bash.1.gz: Справочная страница.
Знание расположения этих файлов необходимо для администрирования. Например, если вам нужно изменить настройки bash для всех пользователей сразу, вы теперь знаете, что искать их нужно в /etc/bash.bashrc.
Резюме
В ходе этой лабораторной работы вы научились использовать команду whereis для поиска исполняемых файлов, исходных кодов и справочных страниц в Linux. Вы освоили следующие навыки:
- Получение базовой информации о командах.
- Поиск исполняемых файлов с помощью опции
-b. - Поиск справочных страниц с помощью опции
-m. - Комбинирование опций для получения детальной информации.
- Поиск исходных кодов с помощью опции
-s.
Эти навыки станут фундаментом вашей работы в качестве системного администратора, позволяя быстро находить нужные файлы и понимать структуру системы Linux.
Дополнительные опции whereis, не рассмотренные в этой работе:
-u: Поиск «необычных» записей (файлов, которые не соответствуют стандартным шаблонам именования).-B: Изменение или ограничение путей, гдеwhereisищет исполняемые файлы.-M: Изменение или ограничение путей для поиска справочных страниц.-S: Изменение или ограничение путей для поиска исходных кодов.
Помните, что whereis — это лишь один из многих инструментов. Она отлично подходит для быстрого поиска стандартных компонентов, но для более глубокого сканирования всей файловой системы в будущем вам могут понадобиться команды find или locate.



