Незалежно від того, яку організацію обрали, деякі речі спростять, а деякі - складніше.
Організація файлів за типами, шляхи Unix (Into bin, man, lib/python, ...), робить його легше використовувати файли. Якщо ви хочете запустити команду, ви знаєте, де її знайти, незалежно від того, який пакет її надає. Якщо ви хочете шукати документацію, це все в одному місці. Якщо якась програма пропонує модуль виділення синтаксису Vim, функцію завершення zsh або прив'язки Python, відповідний файл буде знаходитись там, де vim / zsh / python може його знайти.
Unix також організовує файли за шаблонами використання. Заходять файли конфігурації, входять /etcфайли, які не змінюються у звичайній роботі /usr, а файли, що змінюються, автоматично заходять /var. Дані користувачів підпадають під /home. Це дуже корисно для управління конфігурацією (керуйте тим, що /etcдодається, та переліком встановлених пакетів). Також корисно визначити стратегії резервного копіювання: те, що є, /etcі що /homeє критично важливим, тоді як те, що є, /usrможна легко завантажити знову.
Основна вартість способу Unix полягає в тому, що установка програмного забезпечення розповсюджується в багатьох каталогах. Однак у сучасних системах Unix все одно є менеджери пакетів; управління файлами в багатьох каталогах - це далеко не найскладніша річ, яку вони роблять (відстеження залежностей дуже корисно і важче).
Порівнюйте це з Windows. Windows почався без управління пакетами, і кожен додаток десь створив свою власну директорію. Усі файли, як правило, знаходяться всередині цього каталогу: програми, статичні дані, дані користувачів ... За винятком випадків, коли бібліотеки, програми яких потрапляють у загальну системну директорію, не враховуючи конфліктів ("DLL hell"). З часом Windows стала багатокористувацькою, вимагаючи відокремлення каталогів користувачів від системних каталогів. Windows також створила центральне місце для файлів конфігурації (Unix /etc) та деяких системних даних (Unix)/var), реєстр. Це більше історичний артефакт багато в чому через відсутність управління пакетами та ранню історію як однокористувацької системи. У підходу Windows є багато обмежень: він не дозволяє програмним пакетам взаємодіяти легко. Наприклад, більшість встановлених програм не закінчується на шляху пошуку команд за замовчуванням, тому воно погано взаємодіє з будь-якою формою сценаріїв. Зазвичай інсталятори надають піктограму меню як окремий випадок - потрапляють у окремий системний каталог (à la Unix!).
Обмеженням підходу Unix є те, що він не дозволяє легко співіснувати декількох версій пакету, що особливо проблематично під час оновлення пакета. Способом отримати найкраще з обох світів було б розпакувати кожен пакунок у власному каталозі ( /optструктурі) та створити ліси символічних зв’язків із каталогів пакетів до /usrструктури. Це те, що робить програмне забезпечення, як Stow .
Підсумовуючи підсумок, підхід Unix полегшує використання файлів, управління файлами та дозволити взаємодії пакетів; для цього потрібне програмне забезпечення для управління пакетами, але це все одно бажано. Підхід Windows полегшує керування пакунками вручну, але повинен орієнтуватися на модель Unix, щоб отримати корисну функціональність.