Как работают Менеджеры по установке программного обеспечения и пакетов?

Оглавление:

Как работают Менеджеры по установке программного обеспечения и пакетов?
Как работают Менеджеры по установке программного обеспечения и пакетов?

Видео: Как работают Менеджеры по установке программного обеспечения и пакетов?

Видео: Как работают Менеджеры по установке программного обеспечения и пакетов?
Видео: СТОИЦИЗМ | Как извлечь выгоду из хаоса? | Антихрупкость - YouTube 2024, Май
Anonim

Хотя вы можете скомпилировать и установить все самостоятельно в Linux, менеджеры пакетов разработали для вас всю работу. Использование диспетчера пакетов упрощает установку и обновление программного обеспечения, чем в Windows.

Linux против Windows

Существует широкий спектр дистрибутивов Linux и широкий спектр менеджеров пакетов. Linux построен из программного обеспечения с открытым исходным кодом, что означает, что каждый дистрибутив Linux компилирует свое собственное программное обеспечение с желаемыми версиями библиотеки и вариантами компиляции. Компилирует приложения Linux, как правило, не запускается в каждом дистрибутиве - даже если бы они могли, установка была бы затруднена конкурирующими форматами пакетов. Если вы найдете сайт приложения Linux, вы, вероятно, увидите множество ссылок для загрузки для разных форматов пакетов и Linux дистрибутивы - при условии, что веб-сайт приложения содержит предварительно скомпилированные версии. Приложение может сказать вам загрузить исходный код и скомпилировать его самостоятельно.

Image
Image

Репозитории программного обеспечения

Пользователи Linux обычно не загружают и не устанавливают приложения с веб-сайтов приложений, как это делают пользователи Windows. Вместо этого в каждом дистрибутиве Linux размещаются собственные репозитории программ. Эти репозитории содержат пакеты программ, специально скомпилированные для каждого дистрибутива и версии Linux. Например, если вы используете Ubuntu 12.04, используемые вами репозитории содержат пакеты, специально скомпилированные для Ubuntu 12.04. Пользователь Fedora использует репозиторий, полный пакетов, специально собранных для их версии Fedora.

Image
Image

Менеджеры пакетов

Подумайте о менеджере пакетов, таком как магазин мобильных приложений, за исключением того, что они были вокруг задолго до магазинов приложений. Сообщите диспетчеру пакета установить программное обеспечение, и он автоматически загрузит соответствующий пакет из своих настроенных репозиториев программного обеспечения, установит его и настроит на него - все без необходимости нажимать на мастера или вызывать файлы.exe на веб-сайтах. Когда обновление выпущено, ваш менеджер пакетов уведомляет и загружает соответствующее обновление. В отличие от Windows, где каждое приложение должно иметь собственный модуль обновления для получения автоматических обновлений, менеджер пакетов обрабатывает обновления для всего установленного программного обеспечения - при условии, что они были установлены из репозиториев программного обеспечения.

Image
Image

Что такое пакет?

В отличие от Windows, где приложения входят в файлы установки.exe, которые могут делать все, что им нравится в системе, Linux использует специальные форматы пакетов. Существует множество типов пакетов - в первую очередь DEB на Debian и Ubuntu и RPM на Fedora, Red Hat и других. Эти пакеты представляют собой архивы, содержащие список файлов. Менеджер пакетов открывает архив и устанавливает файлы в папку, указанную в пакете. Менеджер пакетов остается в курсе того, какие файлы принадлежат к каким пакетам. Когда вы удаляете пакет, менеджер пакетов точно знает, какие файлы в системе принадлежат ему. Windows не знает, какие файлы принадлежат установленному приложению - это позволяет установщикам приложений самостоятельно управлять установкой и деинсталляцией.

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

Image
Image

Установка программного обеспечения на Linux

Чтобы установить программное обеспечение в Linux, откройте менеджер пакетов, найдите программное обеспечение и сообщите диспетчеру пакета об установке. Ваш менеджер пакетов сделает все остальное. В дистрибутивах Linux часто предоставляется множество интерфейсов менеджеру пакетов. Например, в Ubuntu программный центр Ubuntu, диспетчер обновлений, приложение Synaptic и команда apt-get используют apt-get и dpkg для загрузки и установки пакетов DEB. Вы можете использовать любую полезную утилиту - они просто предоставляют разные интерфейсы. Обычно вы найдете простой графический менеджер пакетов в меню вашего дистрибутива Linux.

Image
Image

Задержки обновления

Одна вещь, которую новые пользователи Linux часто замечают с менеджерами пакетов и репозиториями, - это задержка до того, как новые версии программного обеспечения достигнут своих систем. Например, когда выпущена новая версия Mozilla Firefox, пользователи Windows и Mac получат ее от Mozilla. В Linux ваш дистрибутив Linux должен упаковать новую версию и вытолкнуть ее как обновление. Если вы откроете окно настроек Firefox в Linux, вы заметите, что Firefox не имеет возможности автоматически обновлять себя (при условии, что вы используете версию Firefox из репозиториев вашего дистрибутива Linux).

Image
Image

Вы также можете загрузить и установить приложение самостоятельно - например, загрузить Firefox непосредственно из Mozilla - но это может потребовать компиляции и установки программного обеспечения из источника и удаляет преимущества менеджеров пакетов, таких как автоматические, централизованные обновления для системы безопасности.

Хотя новые версии Firefox являются приоритетными, поскольку они содержат обновления безопасности, другие приложения могут быть доставлены не так быстро. Например, большая новая версия офисного пакета LibreOffice не может быть выпущена в качестве обновления для текущей версии вашего дистрибутива Linux.Чтобы избежать потенциальной нестабильности и дать время для тестирования, эта версия может быть недоступна до следующей крупной версии дистрибутива Linux, например Ubuntu 12.10, когда она станет стандартной версией в репозиториях программного обеспечения дистрибутива.

Чтобы исправить эту проблему, некоторые дистрибутивы Linux, такие как Arch Linux, предлагают «циклические периоды выпуска», где новые версии программного обеспечения попадают в основные хранилища программного обеспечения. Это может вызвать проблемы - в то время как вам могут потребоваться новые версии настольных приложений, вам, вероятно, не нужны новые версии низкоуровневых системных утилит, которые потенциально могут привести к нестабильности.

Ubuntu предлагает репозиторий backports для доставки более старых версий значительных пакетов в более старые дистрибутивы, хотя не все новые версии входят в репозиторий backports.

Другие репозитории

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

Например, Ubuntu предлагает широкий спектр персональных архивов пакетов (PPA), которые содержат программное обеспечение, составленное отдельными лицами и командами. Ubuntu не ручается за стабильность или безопасность пакетов в этих хранилищах, но вы можете добавлять PPA от доверенных лиц, чтобы загружать пакеты, еще не находящиеся в репозитории Ubuntu, или загружать более новые версии существующих пакетов.

Некоторые сторонние приложения также используют свои собственные репозитории программного обеспечения. Например, когда вы устанавливаете Google Chrome на Ubuntu, он добавляет свой собственный аппетитный репозиторий в вашу систему. Это гарантирует, что вы получите обновления в Google Chrome через Ubuntu Update Manager и стандартные инструменты для установки программного обеспечения.

Рекомендуемые: