Reklama

Nowoczesne systemy operacyjne zapewniają łatwe metody konfigurowania nowych aplikacji. Należą do nich zautomatyzowane pakiety instalacyjne, a także polecenia, które instalują wiele bitów oprogramowania jednocześnie. Ale co się właściwie dzieje po uruchomieniu tego instalatora lub wydaniu tego polecenia?

Przyjrzyjmy się, jak oprogramowanie jest instalowane na trzech głównych platformach komputerowych: Windows, macOS i Linux.

Metody instalacji oprogramowania

Istnieje kilka różnych sposobów uruchamiania nowych aplikacji na komputerze. W kolejności rosnącej złożoności są to:

  • Kompilacja oprogramowania — Budowanie aplikacji z jej kodu źródłowego. Tylko dla najbardziej technicznych użytkowników.
  • Archiwa oprogramowania — Rozpakowywanie archiwów, takich jak pliki ZIP, i uruchamianie programu z dowolnego miejsca, w którym został rozpakowany. Może to wymagać dodatkowych poprawek.
  • Pakiety instalacyjne — Znalezienie pliku instalacyjnego i (dwukrotne) kliknięcie, aby rozpocząć instalację.
  • Menedżerowie oprogramowania/sklepy
    instagram viewer
    — Wybór aplikacji z ładnego interfejsu i kliknięcie dużego przycisku „Zainstaluj”. To magia!

W tym artykule przyjrzymy się pakietom instalacyjnym, ponieważ większość menedżerów oprogramowania / sklepów ostatecznie i tak zajmuje się tego typu pakietami za kulisami. W przypadku dzisiejszych głównych platform komputerowych — Windows, macOS i Linux — przyjrzymy się, co składa się na jeden z tych pakietów i co się dzieje po ich zainstalowaniu.

Microsoft Windows

Pakiety instalatora, które prawdopodobnie napotkasz dla systemu Windows, są dostępne w jednym z dwóch głównych smaków. Pliki wykonywalne (EXE) mogą skonfigurować Twój program, umieszczając pliki we właściwej lokalizacji i wykonując aktualizacje rejestru systemu Windows. Pakiety Instalatora Windows (MSI) uzupełniają to, zapewniając standardowe usługi, takie jak dezinstalacje.

Możesz sprawdzić zawartość plików EXE lub MSI przez otwieranie archiwum za pomocą 7-Zip 7Zip: darmowy program do rozpakowywania nietypowych formatów archiwów Czytaj więcej . Jeśli użyjesz go do obejrzenia własnego instalatora EXE 7-Zip, znajdziesz w nim kilka różnych plików:

Zawartość pakietu oprogramowania anatomii 7zip

Chociaż te pliki nie mają folderu zawierającego w instalatorze, programista wskaże każdy z nich w katalogu docelowym. Większość z nich kończy się w "domyślnej lokalizacji instalacji" - ta sama sugestia, którą zwykle widzisz dla folderu takiego jak "C: \ Program Files \ [nazwa programu]" lub "C: \ Program Files (x86) \ [Twoja nowa aplikacja ].”

Korzystając z zaawansowanego narzędzia, takiego jak InstallShield, do tworzenia pakietów instalacyjnych, twórcy aplikacji mogą dostosować instalację. Mogą na przykład określić, w których wersjach systemu Windows będzie instalowany, skonfigurować skróty do utworzenia w menu Start i/lub na Pulpicie lub zbierać informacje o użytkowniku, takie jak imię i nazwisko, adres, itp. Przykładowy projekt InstallShield na poniższym obrazie przedstawia ekran służący do ustawiania, czy należy tworzyć lub aktualizować klucze rejestru systemu Windows.

pakiet oprogramowania anatomii installshield rejestr

Dzięki InstallShield pliki aplikacji i inne dostosowania są pakowane w setup.exe plik. Otwarcie go za pomocą 7-Zip pokaże, że w środku znajduje się pakiet MSI, który po uruchomieniu wygląda jak instalacja, do której wszyscy jesteśmy przyzwyczajeni. Przyjrzyjmy się, co dzieje się podczas tego procesu.

pakiet oprogramowania anatomii installshield install

Proces instalacji systemu Windows

Instalator wykona następujące kroki, aby skonfigurować aplikację do użycia (dokładna kolejność może się różnić w zależności od dostosowań programisty):

  1. Instalator może zawierać inne archiwa, takie jak wspomniany wcześniej MSI lub formaty, takie jak CAB. W pierwszym kroku instalator wypakuje je do tymczasowej lokalizacji.
  2. Następnie sprawdzi, czy wszystkie ustawione zależności są dostępne. Jeśli czegoś brakuje, pobierze go, jeśli to możliwe, lub wyjdzie z instalatora z błędem, jeśli nie.
  3. Jeśli wymagane są jakiekolwiek zależności, zostaną one najpierw zainstalowane przy użyciu dowolnego instalatora, z którym są dostarczane (kiedykolwiek przerwano instalację .NET Framework? Microsoft .NET Framework: dlaczego jest potrzebny i jak go zainstalować w systemie WindowsMusisz go zainstalować lub zaktualizować. Ale czy wiesz, czym jest .NET Framework? Pokażemy Ci, dlaczego go potrzebujesz i jak możesz uzyskać najnowszą wersję. Czytaj więcej ).
  4. Następnie instalator rozpocznie kopiowanie plików aplikacji i umieszczanie ich we właściwej lokalizacji.
  5. Jeśli programista skonfigurował jakieś skróty, instalator utworzy je i wskaże rzeczywistą ścieżkę instalacji (pamiętaj, możesz to zmienić Jak w prosty sposób tworzyć skróty na pulpicie systemu WindowsSkróty na pulpicie inteligentnym mogą oszczędzić Ci bezmyślnego przeglądania menu i folderów. Pokażemy Ci szybkie i łatwe sposoby ich tworzenia. Czytaj więcej po uruchomieniu instalatora).
  6. Zmiany w rejestrze systemu Windows 3 narzędzia do monitorowania i badania rejestru systemu WindowsRejestr Windows jest jedną z najsłabiej poznanych części systemu operacyjnego Windows. Pokazujemy narzędzia, które mogą uprościć rejestr i pomóc w identyfikacji problemów. Czytaj więcej , jeśli istnieje, zostanie wykonany.
  7. Na koniec instalator może poprosić użytkownika o wprowadzenie informacji, takich jak nazwa lub adres strony internetowej.

Ten proces może wydawać się skomplikowany w porównaniu z kolejnym systemem operacyjnym na liście. Rzućmy okiem na instalowanie oprogramowania na macOS.

Apple macOS

Instalatorzy Windowsa dużo się dzieje pod maską. Ale jeśli korzystasz z komputera Mac, wiesz, że instalowanie aplikacji jest często tak proste, jak pobranie kopii aplikacji, otwarcie obrazu dysku (DMG) i po kilku prostych podpowiedziach Jak zainstalować i usunąć oprogramowanie Mac: 5 łatwych metodPrzeszedłeś na Maca i opanowałeś podstawy? Zastanawiasz się, jak zainstalować oprogramowanie z wiersza poleceń? Masz stare aplikacje Windows, które po prostu musisz uruchomić na swoim komputerze Apple? Czytaj więcej . Czasami pobieranie zapewnia nawet opcję „Przeciągnij tutaj!” Ikona.

Zanurzmy się w pakiet APP, a także jego odpowiednik instalatora PKG.

Struktura pakietu macOS

Plik APP na powierzchni jest w rzeczywistości prostsze niż Windows z dwóch głównych powodów. Po pierwsze, jest to standardowy folder. Jedyna różnica polega na tym, że kończy się sufiksem „.APP”. Jeśli pobierzesz jeden z nich w systemie Windows, zobaczysz, że wyświetla się tak, jak każdy inny folder plików w Eksploratorze. Po drugie, pliki APP wymagają dołączenia absolutnie wszystkiego, czego wymaga program. Nie martw się o brakujące zależności w tego typu instalatorach.

Pakiety te muszą zawierać trzy elementy w folderze o nazwie „Zawartość”: 1) plik „Info.plist”, który zawiera metadane aplikacji, takie jak nazwa, język, numer wersji itp.; 2) katalog „MacOS” zawierający główny plik wykonywalny; oraz 3) katalog „Resources”, w którym znajdują się zasoby potrzebne do działania aplikacji (np. ikona aplikacji). Istnieją inne opcjonalne foldery, takie jak „Frameworks” (pakiety funkcji, które nie są specyficzne dla aplikacji), „Plug-Ins” (funkcjonalność aplikacji, która nie jest wymagana do jej uruchomienia) i „SharedSupport” (dane dodatkowe, takie jak szablony).

foldery aplikacji na mac

W przeciwieństwie do tego, format PKG jest kombinacją podobnego do Windows instalator o strukturze uniksowej 3 systemy operacyjne typu UNIX, które nie są LinuksemOstatnio ludzie zaczęli mylić „UNIX” z „Linuksem”. Linux był pod wpływem UNIX, ale systemy UNIX nie mają związku z Linuksem. Oto kilka ważnych systemów opartych na UNIX, o których warto wiedzieć. Czytaj więcej . Aplikacja 7-Zip otworzy również plik PKG, który jest skompresowany w Xar format. Wewnątrz jest jeden lub więcej Ładunek plików, które są jednocześnie archiwum. Aby wyodrębnić jego zawartość, użyj następującego łańcucha poleceń (cpio to format archiwum, a także program do manipulowania nimi) w terminalu Mac lub Linux:

kot Ładunek | gunzip -dc | cpio-i

Gdy skończysz, zobaczysz znajome drzewo katalogów podobne do Uniksa.

W poniższym przykładzie użyłem konwertera dokumentów, Pandoc. Zawiera binarne in /usr/local/bin i trochę dokumentacji w /usr/local/share/man. W jaki sposób te rzeczy faktycznie się układają? Przyjrzymy się, jak każdy z nich faktycznie instaluje się na komputerze Mac.

mac pkg struktura

Do zilustrowania tego użyłem wersji 7-Zip dla systemu Windows, a nie wersji Linuksa dostępnej tylko w wierszu poleceń.

Proces instalacji aplikacji macOS

Kiedy upuszczasz ten plik APP do folderu Aplikacje, tak naprawdę nie zmienia się to aż tak bardzo. Pamiętaj, że wszystko, co jest potrzebne do uruchomienia programu, jest samowystarczalne. Jedyna różnica w stosunku do standardowego przeciągania i upuszczania polega na tym, że plik „Info.plist” zostaje zarejestrowany w systemie.

kopia aplikacji na mac

Spowoduje to skonfigurowanie takich rzeczy, jak plik wykonywalny wywoływany po uruchomieniu aplikacji, wyświetlana ikona, obsługiwane typy plików i inne. Ale w przeciwnym razie Twoja aplikacja (taka jak pakiet APP dla edytora Atom pokazany poniżej) jest teraz gotowa do użycia.

zainstalowana aplikacja na mac

Proces instalacji pakietu MacOS PKG

Z drugiej strony otwarcie pliku PKG uruchamia instalator „w stylu kreatora”. W przypadku prostych programów jest to zazwyczaj instalator komponentów, który zazwyczaj wykonuje następujące kroki:

  1. Uruchom preinstalować scenariusz.
  2. Rozpakuj zawartość „Ładunku” do maszyny.
  3. Uruchom poinstalacyjny scenariusz.
instalacja pakietu mac

Deweloperzy mogą następnie połączyć wiele komponentów w jeden archiwum produktów zainstalować. Dodaje to opcje, takie jak wyświetlanie umowy EULA do zaakceptowania przez użytkownika, zbieranie informacji od użytkownika i wybieranie składników do zainstalowania. Tymczasem Apple Installer dba o wszystkie szczegóły instalacji niezbędnych komponentów jeden po drugim w tle.

Mówiąc o instalatorach opartych na systemie Unix, w następnej sekcji przejdziemy do dwóch wiodących formatów pakietów dla systemu Linux.

Ubuntu i Fedora Linux

Ach, DEB a RPM Jak zainstalować oprogramowanie w systemie Linux: Objaśnienie formatów pakietówPrzeszedłeś na Linuksa i chcesz zainstalować jakieś oprogramowanie. Ale menedżery pakietów różnią się w zależności od twojej dystrybucji. Jakie aplikacje możesz pobrać i zainstalować? To wszystko w akronimach. Czytaj więcej . Jedna z wielkich wojen płomieni, pokonana tylko przez takich jak vi przeciw emacs lub KDE kontra GNOME. Jednak te formaty są bardziej podobne niż różne. Spójrzmy.

Struktura pliku pakietu Linux

Aby zajrzeć do wnętrza pliku DEB, możesz wypróbować menedżera archiwów GUI. W przeciwnym razie użyj Ar Komenda. Następujące polecenie wprowadzone w terminalu 40+ najczęściej używanych poleceń terminalowych systemu LinuxNiezależnie od tego, czy dopiero zaczynasz, czy po prostu interesujesz się terminalem Linux, oto najpopularniejsze polecenia, które poprowadzą Cię przez cały czas spędzony w systemie Linux. Czytaj więcej wyodrębni zawartość pakietu Debiana:

ar -x nazwa-twojego-pakietu.deb

Wyjdą z tego trzy pliki:

  • control.tar.gz — Ten z kolei zawiera jeden plik podstawowy, Kontrola, który zawiera metadane dotyczące pakietu, takie jak jego oficjalna nazwa, wersja i zależności. Może również zawierać inne pliki, takie jak skrypty uruchamiane podczas procesu instalacji lub domyślne pliki konfiguracyjne.
  • data.tar.gz — Pliki składające się na samą aplikację znajdują się w tym archiwum TAR.GZ. Wszystko, łącznie z plikami binarnymi, dokumentacją i domyślnymi konfiguracjami, jest tutaj. W przykładowym pakiecie kde-service-menu-encfs_0.5.2_all.deb zawiera pliki i katalogi, jak pokazano na poniższym obrazku.
  • debian-binary — Jest to plik, który definiuje wersję formatu pakietu Debiana używaną przez plik. W nowoczesnych dystrybucjach będzie to po prostu „2.0” w jednym wierszu.
deb główna kontrola

W Fedorze możesz użyć rpm2cpio oraz cpio polecenia do wyodrębnienia pakietu RPM i przeglądania jego plików:

rpm2cpio nazwa-twojego-pakietu.rpm | cpio -idvm

W przypadku pakietu kde-cli-tools-5.9.4-2.fc26.x86_64.rpm zobaczysz drzewo plików podobne do pakietu DEB. Ale nie dostarcza metadanych, przynajmniej nie w ten dwójkowy pakiet. Musisz pobrać źródłowy RPM (.SRC.RPM) odpowiadający twojej wersji binarnej, a następnie użyć tego samego polecenia powyżej w tym pliku. W tym będzie plik SPEC, który zawiera wiele takich samych elementów jak Kontrola plik w pakiecie Debiana.

Teraz, gdy już rozumiemy strukturę pakietów Linux, zajmijmy się sprawdź, co się stanie, gdy je zainstalujesz Jak zainstalować oprogramowanie w systemie Linux: Objaśnienie formatów pakietówPrzeszedłeś na Linuksa i chcesz zainstalować jakieś oprogramowanie. Ale menedżery pakietów różnią się w zależności od twojej dystrybucji. Jakie aplikacje możesz pobrać i zainstalować? To wszystko w akronimach. Czytaj więcej .

Instalacja pakietu Linux

Podczas instalowania pakietów w dowolnym formacie, niezależnie od interfejsu użytkownika, ma miejsce podobny zestaw kroków:

  1. System pakietów sprawdza zawartość pakietu, aby określić, czy brakuje zależności. W zależności od narzędzia albo ostrzeże Cię, albo ustawi na ich pobieranie.
  2. Jeśli pakiety zawierają skrypty lub polecenia preinstalacyjne, są uruchamiane w następnej kolejności.
  3. Następnie system pakietów faktycznie wyodrębnia pliki pakietu.
  4. Po umieszczeniu plików uruchamiane są skrypty poinstalacyjne.
  5. Na koniec pakiet jest rejestrowany w wewnętrznej bazie danych przy użyciu swoich metadanych, dzięki czemu można go później odinstalować.

Wiedza o tym, jak instalowane jest oprogramowanie, to dobra rzecz

Ponieważ twórcy systemów operacyjnych i działającego na nich oprogramowania wykonują świetną robotę, ułatwiając instalację oprogramowania, tak naprawdę nie musisz zwracać uwagi na szczegóły. Ale posiadanie pewnej wiedzy na temat tego, co dzieje się za kulisami, zapewni ci spokój ducha co do tego, co jest instalowane w twoim systemie, a także pomoże w rozwiązywaniu problemów.

Ile z powyższych metod instalacji oprogramowania wykonałeś? Wolisz DEB czy RPM? A może pakiety APP dla komputerów Mac reprezentują szczyt łatwości użytkowania? Czy kiedykolwiek zdarzyła się instalacja koszmaru? Daj nam znać w komentarzach poniżej!

Aaron przez piętnaście lat zajmował się technologią jako analityk biznesowy i kierownik projektów, a prawie tak samo długo (od Breezy Badger) jest lojalnym użytkownikiem Ubuntu. Jego zainteresowania obejmują open source, aplikacje dla małych firm, integrację systemów Linux i Android oraz przetwarzanie w trybie zwykłego tekstu.