Oglas

Sodobni operacijski sistemi vam ponujajo enostavne metode za nastavitev novih aplikacij. Sem spadajo avtomatski namestitveni paketi in ukazi, ki namestijo več bitov programske opreme hkrati. Toda kaj se dejansko zgodi, ko zaženete ta namestitveni program ali izdate ta ukaz?

Oglejmo si, kako se programska oprema namesti na tri glavne namizne platforme: Windows, macOS in Linux.

Metode namestitve programske opreme

Obstaja nekaj različnih načinov, kako lahko nove aplikacije zaženete v računalniku. Glede na naraščajočo zapletenost ti vključujejo:

  • Kompilacija programske opreme — Gradnja aplikacije iz izvorne kode. Samo za najbolj tehnične uporabnike.
  • Arhivi programske opreme — Razpakiranje arhivov, kot so datoteke ZIP, in zagon programa od koder koli ste ga ekstrahirali. To bo morda zahtevalo nekaj dodatnih prilagoditev.
  • Namestitveni paketi — Poiščite namestitveno datoteko in (dvojni)kliknite za začetek namestitve.
  • Upravitelji programske opreme/trgovine — Izbira aplikacije iz prijetnega vmesnika in klik na velik gumb »Namesti«. To je čarovnija!
instagram viewer

V tem članku bomo preučili namestitvene pakete, saj se večina upraviteljev programske opreme/trgovine na koncu vseeno ukvarja s temi vrstami paketov v zakulisju. Za današnje glavne namizne platforme – Windows, macOS in Linux – bomo pogledali, kaj sestavlja enega od teh paketov in kaj se zgodi, ko jih namestite.

Microsoft Windows

Namestitveni paketi, na katere boste verjetno naleteli za Windows, so na voljo v enem od dveh glavnih okusov. Izvedljive datoteke (EXE) lahko nastavite vaš program tako, da naredite težko delo, da datoteke postavite na pravo mesto in izvedete posodobitve registra Windows. Paketi Windows Installer (MSI) k temu prispevajo z zagotavljanjem standardiziranih storitev, kot so odstranitve.

Vsebino EXE ali MSI-jev lahko pregledate z odpiranje arhiva s 7-Zip 7Zip: brezplačen program za razpakiranje neobičajnih arhivskih formatov Preberi več . Če ga uporabite za ogled lastnega namestitvenega programa EXE 7-Zip, boste znotraj njega našli številne različne datoteke:

Vsebina programskega paketa za anatomijo 7zip

Čeprav te datoteke v namestitvenem programu nimajo mape, ki vsebuje, bo razvijalec usmeril vsako na ciljni imenik. Večina jih konča na »privzeti lokaciji za namestitev« – isti predlog, ki ga običajno vidite za mapo, kot je »C:\Program Files\[ime programa]« ali »C:\Program Files (x86)\[vaša nova aplikacija ].«

Ko za ustvarjanje namestitvenih paketov uporabljate sofisticirano orodje, kot je InstallShield, lahko razvijalci aplikacij prilagodijo namestitev. Lahko na primer določijo, v katere različice operacijskega sistema Windows bo nameščen, nastavijo bližnjice ustvariti v meniju Start in/ali na namizju ali zbirati podatke o uporabniku, kot so ime, naslov, itd. Vzorčni projekt InstallShield na spodnji sliki prikazuje zaslon za nastavitev, ali je treba ustvariti ali posodobiti ključe registra Windows.

programski paket za anatomijo installshield register

Z InstallShield so datoteke aplikacij in druge prilagoditve zavite v a setup.exe mapa. Če ga odprete s 7-Zip, boste pokazali, da je v notranjosti paket MSI, ki je ob zagonu videti tako kot namestitev, ki smo jo vsi vajeni. Poglejmo, kaj se zgodi med tem postopkom.

programski paket za anatomijo installshield install

Postopek namestitve sistema Windows

Namestitveni program bo naredil naslednje korake, da bo vašo aplikacijo nastavil za uporabo (natančen vrstni red se lahko razlikuje glede na prilagoditve razvijalca):

  1. Namestitveni program lahko vsebuje druge arhive, kot je prej omenjeni MSI ali formate, kot je CAB. Kot prvi korak jih bo namestitveni program izvlekel na začasno lokacijo.
  2. Nato bo preveril, ali so na voljo vse nastavljene odvisnosti. Če kaj manjka, ga bo prenesel, če je mogoče, ali pa zapustil namestitveni program z napako, če ne.
  3. Če so potrebne kakršne koli odvisnosti, bodo najprej nameščene s katerim koli namestitvenim programom, ki ga dobite (ste kdaj prekinili namestitev za .NET Framework? Microsoft .NET Framework: zakaj ga potrebujete in kako ga namestiti v WindowsMorate ga namestiti ali posodobiti. Toda ali veste, kaj je .NET Framework? Pokažemo vam, zakaj ga potrebujete in kako lahko dobite najnovejšo različico. Preberi več ).
  4. Nato bo namestitveni program začel kopirati datoteke aplikacije in jih postavljati na pravo mesto.
  5. Če je razvijalec konfiguriral katere koli bližnjice, jih bo namestitveni program ustvaril in jih usmeril na dejansko pot namestitve (ne pozabite, to lahko spremeniš Kako na enostaven način ustvariti bližnjice na namizju WindowsPametne bližnjice na namizju vam lahko prihranijo nepremišljeno prebiranje menijev in map. Pokažemo vam hitre in enostavne načine za njihovo ustvarjanje. Preberi več ko se zažene namestitveni program).
  6. Spremembe v registru Windows 3 Orodja za spremljanje in pregled registra WindowsRegister Windows je eden najbolj slabo razumljenih delov operacijskega sistema Windows. Pokažemo vam orodja, ki lahko poenostavijo register in vam pomagajo prepoznati težave. Preberi več , če bo, bo izvedeno.
  7. Nazadnje lahko namestitveni program uporabnika pozove, da vnese podatke, kot je ime ali naslov spletnega mesta.

Ta postopek se morda zdi zapleten v primerjavi z naslednjim operacijskim sistemom na seznamu. Oglejmo si namestitev programske opreme v macOS.

Apple macOS

Namestitveni programi Windows se marsikaj dogajajo pod pokrovom. Če pa ste uporabljali Mac, veste, da je namestitev aplikacije pogosto tako enostavna kot prenos kopije aplikacije, odpiranje slike diska (DMG) in po nekaj preprostih navodilih Kako namestiti in odstraniti programsko opremo Mac: 5 preprostih metodSte prešli na Mac in se spoprijeli z osnovami? Se sprašujete, kako namestiti programsko opremo iz ukazne vrstice? Imate stare aplikacije za Windows, ki jih preprosto morate zagnati v računalniku Apple? Preberi več . Včasih vam prenos celo ponudi možnost »Povlecite sem!« ikona.

Poglobimo se v sveženj APP in njegov dvojnik namestitveni program PKG.

Struktura paketa macOS

Datoteka APP na površini je pravzaprav enostavnejši kot Windows iz dveh glavnih razlogov. Prvič, to je standardna mapa. Edina razlika je v tem, da se konča s pripono ".APP". Če prenesete eno od teh v Windows, boste videli, da je prikazana tako kot katera koli druga mapa datotek v Raziskovalcu. Drugič, datoteke APP zahtevajo, da je vključeno popolnoma vse, kar program zahteva. Pri teh vrstah namestitvenih programov vam ni treba skrbeti zaradi manjkajočih odvisnosti.

Ti svežnji morajo vsebovati tri stvari v mapi z imenom »Vsebina«: 1) datoteko »Info.plist«, ki vsebuje metapodatke aplikacije, kot so ime, jezik, številka različice itd.; 2) imenik »MacOS«, ki vsebuje glavno izvedljivo datoteko; in 3) imenik »Viri«, ki vsebuje sredstva, ki jih aplikacija potrebuje za delovanje (npr. ikona aplikacije). Obstajajo še druge izbirne mape, kot so »Okviri« (skupine funkcionalnosti, ki niso specifične za aplikacijo), »Plug-Ins« (funkcionalnost aplikacije, ki ni potrebna za njeno izvajanje) in »SharedSupport« (tuji podatki, kot je predloge).

mape aplikacij mac

V nasprotju s tem je format PKG kombinacija Windows-podobnega namestitveni program s strukturo, podobno Unixu 3 Unixu podobni operacijski sistemi, ki niso LinuxV zadnjem času so ljudje začeli zamenjevati "UNIX" z "Linuxom". Na Linux je vplival UNIX, vendar sistemi UNIX nimajo nobene zveze z Linuxom. Tukaj je nekaj pomembnih sistemov, ki temeljijo na UNIX-u, o katerih je vredno vedeti. Preberi več . Aplikacija 7-Zip bo odprla tudi datoteko PKG, ki je stisnjena v xar formatu. Znotraj je ena ali več Tovor datoteke, ki je hkrati tudi arhiv. Za ekstrakcijo njegove vsebine uporabite naslednjo verigo ukazov (cpio je arhivski format kot tudi program za manipulacijo z njimi) v Mac ali Linux terminalu:

mačka Nosilnost | gunzip -dc | cpio -i

Ko končate, boste videli znano drevo imenikov, podobno Unixu.

V spodnjem primeru sem uporabil pretvornik dokumentov, Pandoc. Vključuje binarno v /usr/local/bin in nekaj dokumentacije v /usr/local/share/man. Kako se te stvari dejansko postavijo na svoje mesto? Ogledali si bomo, kako se vsak od teh dejansko namesti na vaš Mac.

struktura mac pkg

Za ponazoritev tega sem uporabil različico 7-Zip za Windows in ne samo različico Linuxa v ukazni vrstici.

Postopek namestitve aplikacije macOS

Ko to datoteko APP spustite v mapo z aplikacijami, se v resnici ne spremeni toliko. Ne pozabite, da je vse, kar je potrebno za izvajanje programa, samostojno. Edina razlika od standardnega povleci in spusti je, da se datoteka »Info.plist« registrira v sistemu.

kopija aplikacije mac

To bo konfiguriralo stvari, na primer, katera izvedljiva datoteka se pokliče, ko zaženete aplikacijo, katera ikona je prikazana, vrste datotek, ki jih podpira, in drugo. Sicer pa je vaša aplikacija (kot je paket APP za Atom Editor, prikazan spodaj) zdaj pripravljena za uporabo.

nameščena aplikacija mac

Postopek namestitve macOS PKG

Po drugi strani pa odpiranje datoteke PKG zažene namestitveni program v slogu čarovnika. Za preproste programe je to običajno a namestitveni program komponent, ki običajno poteka skozi naslednje korake:

  1. Zaženite vnaprej namestite skripta.
  2. Vsebino »Payload« razpakirajte v napravo.
  3. Zaženite po namestitvi skripta.
namestitev mac pkg

Razvijalci lahko nato združijo več komponent v eno arhiv izdelkov namestite. To doda možnosti, kot so prikaz EULA, ki ga uporabnik sprejme, zbiranje informacij od uporabnika in izbira komponent za namestitev. Medtem Apple Installer poskrbi za vse podrobnosti namestitve potrebnih komponent enega za drugim v ozadju.

Ko že govorimo o namestitvenih programih, ki temeljijo na Unixu, bomo v naslednjem razdelku prešli na dva vodilna formata paketov Linux.

Ubuntu in Fedora Linux

Ah, DEB proti RPM Kako namestiti programsko opremo na Linux: razloženi formati paketovPrešli ste na Linux in želite namestiti nekaj programske opreme. Toda upravitelji paketov se razlikujejo glede na vaš distro. Katere aplikacije lahko torej prenesete in namestite? Vse je v akronimih. Preberi več . Ena od velikih plamenskih vojn, ki so jo premagali le podobni vi proti emacs ali KDE v primerjavi z GNOME. Vendar so si ti formati bolj podobni kot različni. Oglejmo si.

Struktura datotek paketa Linux

Če si želite ogledati notranjost datoteke DEB, lahko poskusite z upraviteljem arhivov GUI. V nasprotnem primeru uporabite ar ukaz. Naslednji ukaz je vnesen v terminal 40+ najpogosteje uporabljenih terminalskih ukazov LinuxNe glede na to, ali ste šele začeli ali ste preprosto radovedni glede terminala Linux, so tukaj najpogostejši ukazi, ki vas bodo popeljali skozi ves čas v Linuxu. Preberi več bo izvlekel vsebino paketa Debian:

ar -x ime-vašega-paketa.deb

Iz tega bodo nastale tri datoteke:

  • control.tar.gz — Ta pa vsebuje eno primarno datoteko, Nadzor, ki vsebuje metapodatke o paketu, kot so njegovo uradno ime, različica in odvisnosti. Lahko vsebuje tudi druge datoteke, kot so skripti, ki se izvajajo med postopkom namestitve, ali privzete konfiguracijske datoteke.
  • data.tar.gz — Datoteke, ki sestavljajo samo aplikacijo, so v tem arhivu TAR.GZ. Tukaj je vse, vključno z binarnimi datotekami, dokumentacijo in privzetimi konfiguracijami. V primeru paketa kde-service-menu-encfs_0.5.2_all.deb vsebuje datoteke in imenike, kot je prikazano na spodnji sliki.
  • debian-binary — To je datoteka, ki določa, katero različico formata paketa Debian uporablja datoteka. Za sodobne distribucije bo ta vseboval samo »2.0« v eni vrstici.
deb glavni nadzor

V Fedori lahko uporabite rpm2cpio in cpio ukazi za ekstrahiranje paketa RPM in brskanje po njihovih datotekah:

rpm2cpio ime-vašega-paketa.rpm | cpio -idvm

Za paket kde-cli-tools-5.9.4-2.fc26.x86_64.rpm boste videli drevo datotek, podobno paketu DEB. Vendar ne zagotavlja metapodatkov, vsaj ne v the binarno paket. Prenesti boste morali izvorni RPM (.SRC.RPM), ki ustreza vaši binarni različici, nato uporabite isti ukaz zgoraj za to datoteko. Vključena bo datoteka SPEC, ki vsebuje veliko istih elementov kot Nadzor datoteko v paketu Debian.

Zdaj, ko razumemo strukturo paketov Linux, poglejmo raziščite, kaj se zgodi, ko jih dejansko namestite Kako namestiti programsko opremo na Linux: razloženi formati paketovPrešli ste na Linux in želite namestiti nekaj programske opreme. Toda upravitelji paketov se razlikujejo glede na vaš distro. Katere aplikacije lahko torej prenesete in namestite? Vse je v akronimih. Preberi več .

Namestitev paketa Linux

Ko namestite pakete katerega koli formata, ne glede na sprednji del, se zgodi podoben niz korakov:

  1. Paketni sistem preuči vsebino paketa, da ugotovi, ali manjkajo odvisnosti. Odvisno od orodja vas bo opozorilo ali nastavilo na prenos.
  2. Če paketi vsebujejo prednamestitvene skripte ali ukaze, se zaženejo naslednjič.
  3. Nato sistem paketov dejansko ekstrahira datoteke paketa.
  4. Ko so datoteke na mestu, se skripti po namestitvi zaženejo.
  5. Končno je paket registriran v interni bazi podatkov z uporabo metapodatkov, tako da ga je mogoče pozneje odstraniti.

Dobro je vedeti, kako je programska oprema nameščena

Ker razvijalci operacijskih sistemov in programske opreme, ki se izvaja na njih, odlično olajšajo namestitev programske opreme, vam v resnici ni treba biti pozorni na podrobnosti. Toda če boste vedeli, da se to dogaja v zakulisju, boste imeli nekaj miru glede tega, kaj je nameščeno v vašem sistemu, in vam bo pomagalo pri odpravljanju težav.

Koliko zgornjih načinov namestitve programske opreme ste izvedli? Ali imate raje DEB ali RPM? Ali pa paketi APP za Mac predstavljajo vrhunec enostavne uporabe? Se vam je kdaj zgodila nočna mora? Sporočite nam v spodnjih komentarjih!

Aaron je kot poslovni analitik in vodja projektov že petnajst let poglobljeno v tehnologijo in je že skoraj toliko časa (od Breezy Badgerja) zvest uporabnik Ubuntuja. Njegovi interesi vključujejo odprtokodne aplikacije, aplikacije za mala podjetja, integracijo Linuxa in Androida ter računalništvo v načinu z navadnim besedilom.