Разница между файлами .deb и .run


10

В чем разница между созданием файлов .deb и их установкой и просто запуском файла .run ?


1
Вы имеете в виду конкретные примеры?
СЛМ

Ответы:


8

.debфайлы - это пакеты для dpkg , низкоуровневого менеджера пакетов Debian (который вызывается изнутри APT и его родственниками). .debФайл представляет собой пакет для Debian или производным , таких как Ubuntu или Mint.

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

Вы можете посмотреть содержимое .debфайла с помощью dpkg -cи dpkg -I. Если у вас его нет dpkg, вы можете использовать его ar t foo.debдля составления списка частей .debфайла и ar x foo.deb control.tar.gzдля извлечения control.tar.gzчасти (и аналогично для других частей).

Red Hat (и его родственники, такие как CentOS и Fedora), SuSE и другие используют rpm , другой формат со схожими характеристиками. Есть другие в других системах Unix.

.runне является стандартным расширением. .runФайл предположительно то , что вы можете выполнить. Он может установить программу или сделать что-то совершенно другое.


8

В общем случае файл .deb похож на zip-файл, который содержит файлы вместе с короткими сценариями, которые могут запускаться после установки для добавления пользователей, групп и т. Д. В систему после установки.

Файл .run обычно представляет собой либо один двоичный исполняемый файл, либо сценарий оболочки, который содержит двоичный двоичный объект, который можно установить. Если это разновидность сценария оболочки, он часто будет содержать двоичный двоичный объект, который часто является синонимом рекурсивного zip-файла или tar-файла. Другими словами, он будет содержать структуру каталогов файлов.

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

Примером этого может быть загрузка Java JDK из Oracle. Это , как правило , один исполняемый файл , который при выполнении будет сбрасывать .deb или .rpm файлы на диск, а затем установить их the package management tools: dpkg, apt, yumили rpm.

пример

Вот пример того, как будет выглядеть загрузка / установка с одним из этих файлов .run. Расширение .bin, но это просто косметическое расширение не имеет никакого отношения, кроме как помочь пользователям различать файлы разных типов.

$ wget http://www.java.net/download/jdk7/archive/b125/binaries/jdk-7-ea-bin-b125-linux-x64-13_jan_2011.bin
$ ./jdk-7-ea-bin-b125-linux-x64-13_jan_2011.bin

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

Сделайте это таким образом, чтобы сделать дополнительные действия, помимо установки пакета. Например, у Oracle есть лицензионное соглашение, которое они хотят, чтобы вы приняли:

10.5 Настоящее Соглашение является полным соглашением сторон относительно его предмета. Он заменяет все предыдущие или одновременные устные или письменные сообщения, предложения, условия, заверения и гарантии и имеет преимущественную силу по сравнению с любыми противоречивыми или дополнительными условиями любой цитаты, приказа, подтверждения или другого сообщения между сторонами, касающимися его предмета, включая любые Лицензии на дополнительные коды, Дополнительные условия или другие лицензии, содержащиеся в Лицензионном программном обеспечении. Никакие изменения к настоящему Соглашению не будут иметь обязательной силы, кроме как в письменной форме и подписаны уполномоченным представителем каждой из сторон.

Согласны ли вы с вышеуказанными условиями лицензии? [да или нет]

С помощью вышеприведенного установщика вы можете видеть, что он содержит только двоичный набор каталогов файлов:

Extracting...
UnZipSFX 5.52 of 28 February 2005, by Info-ZIP (http://www.info-zip.org).
   creating: jdk1.7.0/
   creating: jdk1.7.0/lib/
  inflating: jdk1.7.0/lib/jexec      
   creating: jdk1.7.0/lib/visualvm/
   creating: jdk1.7.0/lib/visualvm/visualvm/
   creating: jdk1.7.0/lib/visualvm/visualvm/modules/
  inflating: jdk1.7.0/lib/visualvm/visualvm/modules/com-sun-tools-visualvm-attach.jar  
  inflating: jdk1.7.0/lib/visualvm/visualvm/modules/com-sun-tools-visualvm-host-views.jar  
   creating: jdk1.7.0/lib/visualvm/visualvm/modules/locale/
...

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

В производственных средах часто случается так, что вы не хотите использовать менеджер пакетов, а имеете больший контроль над развертыванием. Возможно, у вас есть несколько приложений, которые вы развертываете, и каждое из них требует своей версии JDK. Используя этот метод, вы можете сделать так, чтобы они все сосуществовали легче, чем, скажем, через менеджер пакетов.

$ pwd
/home/saml/jdk1.7.0
[saml@grinchy jdk1.7.0]$ ls -l
total 19308
drwxr-xr-x  2 saml saml     4096 Jan 13  2011 bin
-r--r--r--  1 saml saml     2487 Jan 13  2011 COPYRIGHT
drwxr-xr-x  5 saml saml     4096 Jan 13  2011 db
drwxr-xr-x 11 saml saml     4096 Jan 13  2011 demo
drwxr-xr-x  3 saml saml     4096 Jan 13  2011 include
drwxr-xr-x  6 saml saml     4096 Sep 29 10:57 jre
drwxr-xr-x  3 saml saml     4096 Sep 29 10:57 lib
-r--r--r--  1 saml saml     9005 Jan 13  2011 LICENSE
drwxr-xr-x  4 saml saml     4096 Jan 13  2011 man
-r--r--r--  1 saml saml    25379 Jan 13  2011 README.html
-r--r--r--  1 saml saml    20320 Jan 13  2011 README_ja.html
-r--r--r--  1 saml saml    15160 Jan 13  2011 README_zh_CN.html
-r--r--r--  1 saml saml     5348 Sep 29 10:58 register.html
-r--r--r--  1 saml saml     5645 Sep 29 10:58 register_ja.html
-r--r--r--  1 saml saml     4951 Sep 29 10:58 register_zh_CN.html
drwxr-xr-x  8 saml saml     4096 Jan 13  2011 sample
-rw-r--r--  1 saml saml 19631790 Jan 13  2011 src.zip

Ссылки

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.