повторения большого объёма работы.
Принцип управления пакетами в Linux Mint и операционных системах GNU/Linux в целом
было сформировано в течение определённого времени. Ему отдают предпочтение, потому
что он открывает возможности к избежанию всех указанных выше проблем. Мы уже с начала
1990-х используем метод автоматической и безопасной установки нашего программного
обеспечения.
Программное обеспечение, как вы понимаете, сначала пишет разработчик. Это — начальное
звено производственной цепи, известная как «upstream» (верхушка потока). Вы - конечный
пользователь дистрибутива Linux - расположены на другом конце этой цепи под названием
«downstream» ( внизу потока). Если же Вы администратор, то Ваши пользователи находятся в
ещё дальнем звене низины потока. Как только разработчики будут довольны написанной
программой (или обновлением для программы), они публикуют её исходный код, а также
сообщают в своей документации, каким библиотекам данных или другим программам они
предоставили преимущество при написании программы. Каждый раз они совершают одну и
ту же процедуру, потому что её стандартизировано и проверено временем.
Заметьте, что, за некоторыми исключениями (обычно это либо производители оборудования,
выпускают драйверы для Linux, например, nVidia или ATI, или некоторые крупные компании,
как, например, Adobe, которым мы можем доверять), разработчики публикуют действительно
исходный код программы, то есть перечень указаний этой программы в удобном для чтения
виде. Это приводит к определенным последствиям, но самым важным является то, что они
добровольно выкладывают свою программу для всеобщего обозрения каждому, у кого есть
доступ к глобальной сети. Сложно заложить шпионский код в программу, если вы позволяете
каждому видеть то, что написали!
Далее программа попадает к разработчикам пакетов, которые являются либо добровольцами,
либо оплачиваемыми работниками одного из дистрибутивов Linux. Это их задача —
компилировать исходный код программы, протестировать его на работоспособность в
дистрибутиве, решить все проблемы, которые при этом возникают, и в конце концов
упаковать компилированную (то есть в машинных кодах) программу в необходимый формат.
Этот пакет содержит выполняемую программу (ы), конфигурационные файлы и инструкции,
необходимые программе управления пакетами, для успешной установки. Заметьте: пакет
обычно не содержит статических библиотек, ибо в этом нет необходимости. Библиотеки
предоставляют другие пакеты, известные как раздельные библиотеки - библиотеки данных,
предназначенных для совместного использования различными программами. Ваша
программа управления пакетами будет знать, что определённый пакет требует
предварительной установки другого пакета (например, разделяемой библиотеки). Как вы
помните, библиотеки данных и другие пакеты, необходимые для работы программы, было
объявлено ранее выше, и эту информацию вложено в пакет. Инструкции настолько
29
подробные, что даже конкретные версии других пакетов, можно проверить по
совместимости. Напоследок готовый пакет загружают на специальный файловый сервер,
который называют хранилищем программного обеспечения (репозиторий).
Именно отсюда, с одного места, вы можете загрузить и установить необходимое
программное обеспечение. Вы будете знать, что оно вполне безопасное, потому что имеет
подписанный сертификат, который будет проверено вашим менеджером пакетов. Также вы
будете уверены, что безопасным является любой устанавливаемый пакет, потому что
непосредственно каждый из них подписан ключом GPG, который также подлежит проверке
менеджером пакетов. Ваш менеджер пакетов даже проверит контрольную сумму MD5 для
каждого пакета так же, как вы уже это делали с ISO-образом LiveDVD, чтобы убедиться, что
во время загрузки не произошло ошибки.
Обратите внимание на то, что все это он делает самостоятельно. Вы в это время просто
сидите в кресле и общаетесь в чате #linuxmint на XChat. Менеджер пакетов загрузит
выбранные вами пакеты и в дальнейшем будет строго придерживаться инструкций пакетов
(компьютеры скрупулёзны в соблюдении инструкций), чтобы безупречно установить ваше
программное обеспечение вместе с его зависимостями в надлежащем порядке. Для ошибки
человека здесь нет места: если пакет работал на компьютере разработчика, значит он будет
работать и на вашем, ибо менеджер пакетов точно выполнял ту же процедуру.
Когда наступит время для проверки обновлений программного обеспечения, ваш менеджер
пакетов автоматически сравнит версию установленного программного обеспечения с той, что
достижима в репозитории, и сделает все необходимое, чтобы Ваша система работала
надёжно. Например, если в репозиторий поступила версия 2.4 BestSoft, а у вас установлена
версия 2.3, менеджер пакетов сравнит номера версий и предложит установить последнюю,