У строгому сенсі двійковий файл - це той, який не кодується як людський текст, який читається. Більш розмовно, "бінарний" посилається на файл, який компілюється, виконуваним кодом, хоча сам файл може бути не виконуваним (мається на увазі не стільки дозволів, скільки здатності запускатись окремо; деякі файли бінарного коду, такі як бібліотеки, складено, але незалежно від дозволів вони не можуть бути виконані всі самостійно). Бінарний файл, який працює як окремий виконуваний файл, є "виконуваним файлом", хоча не всі виконувані файли є двійковими файлами (і це стосується дозволів: виконувані текстові файли, які викликають інтерпретатора через shebang, такі як #!/bin/sh
виконувані файли).
Що таке двійковий пакет?
Бінарний пакет у контексті Linux - це додаток, який містить (попередньо вбудовані) виконувані файли, на відміну від вихідного коду.
Зауважте, що це не означає, що пакетний файл сам по собі виконується. Файл пакунків - це архів (на зразок а .zip
), який містить інші файли, а "двійковий" файл пакету - це файл, який спеціально містить виконувані файли (хоча знову ж таки, виконувані файли не обов'язково є справді бінарними файлами, і насправді двійкові пакети можуть використовуватися для складені бібліотеки, які є двійковим кодом, але не виконуються). Однак пакет повинен бути розпакований, щоб мати доступ до цих файлів.
Зазвичай про це піклується система управління пакунками (наприклад, apt / dpkg), яка завантажує пакет і розпаковує та встановлює бінарні файли всередині вас.
Яка різниця між бінарним пакетом та дебютним пакетом?
Немає - .deb
пакунки є двійковими пакунками, хоча .deb
замість них є s, які містять джерело, вони зазвичай -src
додаються до їх імені.
Я запускаю прямий пакет, який знаходиться у форматі "xyz.linux.run" Що це за пакунок?
Це, як правило, саморозпаковуються двійкові пакети; вони працюють, вставляючи двійковий корисний вантаж у сценарій оболонки. "Саморозпаковування" означає, що вам не доведеться викликати іншу програму (наприклад, менеджер пакунків), щоб розпакувати та використовувати їх. Однак, оскільки вони не працюють з менеджером пакунків, вирішення їх залежностей може бути скоріше скачуванням, і тому деякі такі пакети використовують статично пов'язані виконувані файли (у них вбудовані всі необхідні бібліотеки), що витрачає трохи пам’яті при їх використанні .