Структура файловой системы Ubuntu
Прежде чем мы углубимся в технические детали вопроса, давайте начнем с получения базовых знаний о стандарте иерархии файловой системы, известном как FHS. Все дистрибутивы Linux получают свою структуру каталогов и содержимое из стандарта иерархии файловой системы. Мы кратко рассмотрим некоторые части, которые имеют решающее значение для понимания того, где находятся пакеты установки apt-get и почему.
FHS не считается авторитетом в области структуры и содержимого каталогов абсолютно для каждого дистрибутива Linux, но, как правило, это наиболее распространенный стандарт разметки файлов. Все каталоги и файлы в FHS отображаются под «/» - корневым каталогом. Давайте взглянем на некоторые часто используемые каталоги.
- Каталог / bin содержит основные двоичные файлы команд.
- Каталог / dev содержит файлы устройств.
- В каталоге / etc есть файлы конфигурации для конкретного хоста.
- Папка / home содержит личные настройки пользователя и сохраненные файлы.
Некоммерческая организация, известная как Linux Foundation, поддерживает стандарт иерархии файловой системы, и последнее обновление (версия 3.0) было сделано 3 июня 2015 года.
Теперь, когда мы получили лучшее понимание того, как устроена общая файловая система Linux и как она работает, мы готовы узнать, как apt-get использует эту самую структуру для установки пакетов и зависимостей.
Управление пакетами
Все операционные системы и дистрибутивы Linux поставляются с менеджером пакетов. Эти менеджеры пакетов отвечают за установку и удаление программного обеспечения с компьютера, а также за их обслуживание. Они дают пользователю больше контроля над тем, какие программы он хочет запускать в системе, и делают возможной их установку.
В Ubuntu (и Debian) dpkg - это менеджер пакетов, который использует большинство людей. Вы можете управлять пакетами с расширениями .deb через dpkg. Обсуждение этой утилиты имеет отношение к нашей теме, поскольку мы будем использовать ее для поиска пакетов установки apt-get. Aptitude - это более удобный способ использования dpkg, поскольку он предоставляет пользователям интерфейс. Давайте посмотрим, как dpkg работает в Ubuntu, его синтаксис и как вы можете использовать его, чтобы узнать, где apt-get устанавливает пакеты.
Общий синтаксис этой команды следующий.
$dpkg [действия]Другой распространенный метод использования:
$dpkg [параметры]имя файлаВы можете установить пакет в вашей системе Linux, выполнив следующую простую команду dpkg.
$dpkg -яимя пакетаМы поймем, как можно использовать dpkg и apt-get для установки пакетов, и узнаем, где они установлены, в следующих разделах.
Как работает apt-get?
К этому моменту мы все знаем, что apt-get можно использовать для установки, удаления и обновления пакетов Linux. Мы также узнали, что он служит интерфейсом для dpkg, собственной утилиты управления пакетами для Ubuntu и Debian. Но как это на самом деле работает? А что происходит с файлами, которые он устанавливает? Давайте разберемся!
Начнем с установки тестового пакета под названием ack. Для этого мы будем использовать apt-get, а позже мы проследим установленные им файлы до их конкретных мест.
Идите вперед и запустите новое окно терминала через меню «Действия» или нажмите Ctrl + Alt + T на клавиатуре. Следующий шаг - убедиться, что у вас добавлен репозиторий мультивселенной. Без этого вы не сможете установить ack. Очевидно, что вы можете использовать любой другой пакет по вашему выбору.
Итак, чтобы добавить репозиторий, выполните следующую команду в Терминале.
$судомультивселенная apt-add-repositoryКак только это будет решено, мы перейдем к установке пакета.
$судо apt-get installувы
(Обратите внимание, что вместо ack-grep был установлен ack. Вот почему мы будем изменять следующие выполняемые команды)
Установка будет завершена в течение нескольких секунд. Сделав это, мы исследуем пакет с помощью нашего диспетчера пакетов dpkg. Мы узнаем, где были установлены файлы пакета и как получить к ним доступ.
Вспомните общий синтаксис команды dpkg, который мы описали в предыдущих разделах. Здесь мы будем использовать вариант этой команды для вывода списка файлов в установленном пакете.
Чтобы вывести список содержимого пакета, мы используем оператор -L с командой dpkg. Выполните приведенную ниже команду, чтобы просмотреть файлы.
$dpkg -ГОувы
Как вы можете видеть на изображении, все установленные файлы диспетчера пакетов показаны вместе с их адресами на компьютере.
В дополнение к этому, некоторые файлы создаются или изменяются сценариями pre / postrm и pre / postinstall, включенными в установленный пакет. Вы можете просмотреть эти сценарии в следующем каталоге.
/куда/lib/dpkg/ИнформацияДополнительная информация
Теперь, когда мы рассмотрели основную часть учебника, мы добавим дополнительную информацию для тех, кому интересно узнать больше.
Скажем, например, вы хотите использовать dpkg для извлечения всех файлов пакета в текущем каталоге. Вы можете сделать это, выполнив следующую простую команду.
$dpkg -Иксимя пакетаВы также можете получить такие файлы, как preinst, postrm, postinst и другие, с помощью команды, приведенной ниже.
$dpkg -А такжеимя пакетаЭто также извлечет указанные файлы в текущий каталог.
Заключение
На этом мы завершаем данное руководство. Сегодня мы узнали несколько вещей об apt-get. Мы увидели Стандарт иерархии файловой системы, как работает менеджер пакетов Ubuntu и, наконец, как мы можем найти, куда apt-get устанавливает пакеты.