Как найти бинарные файлы с помощью команды `whereis` в Linux

LinuxLinuxBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux/FileandDirectoryManagementGroup -.-> linux/find("File Searching") linux/FileandDirectoryManagementGroup -.-> linux/locate("File Locating") linux/FileandDirectoryManagementGroup -.-> linux/which("Command Locating") linux/FileandDirectoryManagementGroup -.-> linux/whereis("File/Command Finding") subgraph Lab Skills linux/find -.-> lab-409873{{"Как найти бинарные файлы с помощью команды `whereis` в Linux"}} linux/locate -.-> lab-409873{{"Как найти бинарные файлы с помощью команды `whereis` в Linux"}} linux/which -.-> lab-409873{{"Как найти бинарные файлы с помощью команды `whereis` в Linux"}} linux/whereis -.-> lab-409873{{"Как найти бинарные файлы с помощью команды `whereis` в Linux"}} end

Введение в бинарные файлы Linux

Операционные системы Linux используют различные бинарные файлы, которые представляют собой машинопонятные файлы, содержащие исполняемый код. Эти бинарные файлы необходимы для корректной работы системы и ее приложений. В этом разделе мы рассмотрим концепцию бинарных файлов Linux, их структуру и назначение в экосистеме Linux.

Что такое бинарные файлы Linux?

Бинарные файлы Linux, также называемые исполняемыми файлами, — это файлы, содержащие машинопонятные инструкции, которые могут быть непосредственно выполнены процессором компьютера. Эти файлы обычно создаются путем компиляции исходного кода, написанного на языках программирования, таких как C, C++ или Rust. resulting бинарный файл представляет собой компактное представление логики программы, оптимизированное для эффективного выполнения на целевой аппаратной платформе.

Структура и состав бинарных файлов Linux

Бинарные файлы Linux имеют определенную структуру, которая позволяет операционной системе правильно загрузить и выполнить программу. Наиболее распространенным форматом бинарных файлов в Linux является Executable and Linkable Format (ELF). Файлы ELF содержат различные разделы, в том числе:

  • Текстовый раздел: В этом разделе хранятся фактические машинные кодовые инструкции, которые могут быть выполнены процессором.
  • Данные раздел: Этот раздел содержит инициализированные данные программы, такие как глобальные переменные.
  • BSS раздел: В этом разделе хранятся неинициализированные данные программы, такие как глобальные переменные, которые по умолчанию устанавливаются в ноль.
  • Таблица символов: Этот раздел содержит информацию о различных символах (функциях, переменных и т.д.), используемых в программе.
  • Информация о перерасположении: Этот раздел предоставляет информацию о том, как код и данные программы должны быть скорректированы (перерасположены), когда программа загружается в память.

Практические применения бинарных файлов Linux

Бинарные файлы Linux необходимы для корректной работы операционной системы и ее приложений. Они используются в широком спектре сценариев, в том числе:

  • Системные утилиты: Многие из основных команд и инструментов, предоставляемых операционной системой Linux, такие как ls, cat, mkdir и chmod, реализованы в виде бинарных файлов.
  • Приложение программы: Пользовательское программное обеспечение, такое как веб-браузеры, текстовые редакторы и медиаплееры, обычно распространяется в виде бинарных файлов.
  • Модули ядра: Сам ядро Linux представляет собой бинарный файл, и дополнительные модули ядра могут быть загружены в виде бинарных файлов для расширения функциональности ядра.

Понимание структуры и назначения бинарных файлов Linux至关重要 для системных администраторов, разработчиков и любого, кто работает с операционной системой Linux. Изучением этих концепций пользователи могут лучше ориентироваться в файловой системе Linux, устранять проблемы и разрабатывать более надежные и эффективные приложения.

Поиск бинарных файлов с помощью команды whereis

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

Использование команды whereis

Команда whereis — это утилита системы Linux, которая ищет указанную программу в заранее определенном наборе директорий, включая директории бинарных файлов системы, директории с руководствами и директории с исходным кодом. Базовый синтаксис команды whereis выглядит так:

whereis [опции] [имя_файла]

Вот некоторые общие опции для команды whereis:

  • -b: Ищет только бинарные файлы.
  • -m: Ищет только руководства.
  • -s: Ищет только исходные файлы.

Поиск бинарных файлов с помощью whereis

Рассмотрим, как использовать команду whereis для поиска бинарных файлов на системе Ubuntu 22.04. Например, чтобы найти расположение команды ls, вы можете выполнить:

$ whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

Вывод показывает, что бинарный файл ls находится в директории /usr/bin/ls, а соответствующее руководство находится в /usr/share/man/man1/ls.1.gz.

Вы также можете использовать команду whereis для поиска других системных утилит, таких как git или python3:

$ whereis git
git: /usr/bin/git /usr/share/git /usr/share/man/man1/git.1.gz
$ whereis python3
python3: /usr/bin/python3 /usr/lib/python3.10 /usr/share/man/man1/python3.1.gz

Команда whereis — ценный инструмент для быстрого поиска бинарных файлов на вашей системе Linux, который может быть особенно полезен при устранении проблем или при попытке понять структуру файловой системы.

Исследование структуры и назначения директорий бинарных файлов Linux

Файловая система Linux организована в иерархическую структуру, где различные директории служат определенным целям. Понимание структуры и назначения этих директорий, особенно тех, которые связаны с бинарными файлами,至关重要 для системных администраторов и разработчиков, работающих с Linux.

Основные директории бинарных файлов в Linux

В файловой системе Linux следующие директории обычно используются для хранения бинарных файлов:

  1. /bin: В этой директории находятся важные бинарные файлы уровня пользователя, такие как ls, cat и mkdir. Это базовые команды, которые пользователи могут выполнять напрямую.

  2. /sbin: В этой директории находятся бинарные файлы уровня системы, такие как init, ifconfig и route. Они обычно используются для системных административных задач и часто выполняются пользователем root или с повышенными привилегиями.

  3. /usr/bin: В этой директории находятся дополнительные бинарные файлы уровня пользователя, включая те, которые устанавливаются системой или пакетами от третьих сторон.

  4. /usr/sbin: В этой директории находятся дополнительные бинарные файлы уровня системы, которые часто используются для более сложных системных административных задач.

Понимание назначения директорий бинарных файлов

Разделение бинарных файлов по этим директориям служит нескольким важным целям:

  1. Безопасность: Разделяя бинарные файлы уровня системы от бинарных файлов уровня пользователя, файловая система Linux помогает поддерживать более высокий уровень безопасности. Пользователи обычно ограничены в прямом доступе к или изменении бинарных файлов уровня системы, что снижает риск непреднамеренных изменений или вредоносных действий.

  2. Доступность: Директории /bin и /usr/bin включены в стандартную переменную окружения PATH, что делает更容易 для пользователей доступа и выполнения общих команд без указания полного пути.

  3. Организация: Структура директорий помогает поддерживать файловую систему организованной и легко управляемой, где каждая директория служит определенной цели, связанной с хранением и выполнением бинарных файлов.

  4. Гибкость: Разделение бинарных файлов по разным директориям позволяет более тонкой настройке прав доступа, владения и доступа к этим файлам, обеспечивая лучшее управление системой и настройку.

Понимание структуры и назначения этих директорий бинарных файлов необходимо для эффективной навигации и управления файловой системой Linux, а также для разработки и развертывания приложений, которые无缝 интегрируются с базовой системой.

Резюме

В этом руководстве мы углубились в мир бинарных файлов Linux, изучая их структуру, состав и практические приложения. Мы также узнали, как использовать команду whereis для поиска бинарных файлов на вашей системе Linux. Понимание бинарных файлов и их управления является важной частью администрирования системы Linux, так как эти исполняемые файлы являются основой операционной системы и ее приложений. Освоив эти концепции, вы будете лучше подготовлены к навигации и устранению неполадок в вашей среде Linux.