У Windows, особливо старіших версіях, для програм було прийнято зберігати файли конфігурації та непостійні дані у своєму C:\Program Filesкаталозі. Це випливає з того, як програми зазвичай встановлювались та працювали під однокористувацьким, немережевим доступом DOS без дозволу.
З точки зору безпеки, це погана ідея. Місця, де виконується виконуваний код, слід відокремлювати від змінних даних. Таким чином простіше застосувати відповідні дозволи на файли, щоб запобігти зміні встановлених бінарних файлів сторонніми користувачами. Аналогічно каталоги бібліотеки, які можуть оновлюватися окремо від основних виконуваних файлів, також повинні знаходитися в окремому каталозі.
З появою роздратування Vista та UAC ця традиція, нарешті, починає серйозно втрачати тягу.
UNIX та Linux, будучи багатокористувацькою системою набагато раніше, мали тенденцію відокремлювати виконавчі каталоги від інших каталогів набагато раніше, оскільки виникла потреба у запобіганні інших користувачів, крім root, змінювати встановлені бінарні файли. Це також чому, /usrі навіть /sbinіноді є окремими розділами - особливо адміністратор, який має особливу безпеку, зможе змонтувати ці розділи лише заново та перезавантажити їх для читання / запису, коли потрібно буде встановити / видалити.
Пакети зазвичай встановлюються у менеджера пакунків. Існують різні менеджери пакунків, такі як aptitude(Debian та похідні дистрибутиви), yum(Redhat та похідні дистрибутиви), pacman(забудьте, який дистриб'ютор це ...) та інші.
Менеджер пакунків дозволяє переглядати сховища, завантажувати, встановлювати, запитувати та видаляти програмне забезпечення, подібно до складного (та безкоштовного) "магазину додатків". Він бере на себе відповідальність за забезпечення догляду за залежностями та відстеження того, що зараз встановлено.
Зазвичай менеджер пакунків також дозволить проводити ті самі операції над пакетом, який ви завантажили вручну поза будь-якими сховищами. Інструменти також доступні, якщо ви хочете створити своє власне програмне забезпечення, яке ви створили або склали самостійно.
Оскільки сам пакет НЕ є виконуваним файлом, вам не доведеться запускати ненадійний виконуваний файл, який ви насправді не знаєте, що він робить. (Windows нарешті збирається з оновленнями, розповсюджуючи .msu'замість .exe', - але .msiвони були деякий час ...)
rpm, ви можетеrpm -q --whatprovidesзнайти ім'я пакета для певного файлу, а потімrpm -q -aдізнатися, які файли встановлено в пакеті.