Mainos

Nykyaikaiset käyttöjärjestelmät tarjoavat sinulle helppoja tapoja määrittää uusia sovelluksia. Näitä ovat automaattiset asennuspaketit sekä komennot, jotka asentavat useita ohjelmistobittejä kerralla. Mutta mitä itse asiassa tapahtuu, kun suoritat asennusohjelman tai annat komennon?

Katsotaanpa, kuinka ohjelmistot asennetaan kolmelle suurelle työpöytäympäristölle: Windows, macOS ja Linux.

Ohjelmiston asennusmenetelmät

Voit saada uudet sovellukset käynnissä tietokoneellasi muutamalla eri tavalla. Monimutkaisuuden lisääntyessä näitä ovat mm.

  • Ohjelmiston kokoelma — Rakenna sovellus sen lähdekoodista. Vain teknisimmille käyttäjille.
  • Ohjelmistoarkistot — arkiston, kuten ZIP-tiedostojen, purkaminen ja ohjelman suorittaminen sieltä, missä purit sen. Tämä saattaa vaatia lisäsäätöä.
  • Asennuspaketit — Etsi asennustiedosto ja aloita asennus (kaksois)napsauttamalla.
  • Ohjelmistopäälliköt/myymälät - Valitse sovellus mukavasta käyttöliittymästä ja napsauta suurta "Asenna" -painiketta. Se on taikaa!

Tässä artikkelissa tarkastelemme asennuspaketteja, koska useimmat ohjelmistopäälliköt/myymälät käsittelevät tämän tyyppisiä paketteja joka tapauksessa kulissien takana. Tämän päivän tärkeimmille työpöytäalustoille – Windowsille, macOS: lle ja Linuxille – tarkastellaan, mikä näistä paketeista koostuu ja mitä tapahtuu, kun asennat ne.

instagram viewer

Microsoft Windows

Asennuspaketteja, joihin todennäköisesti törmäät Windowsille, on kaksi päämakua. Suoritettavat tiedostot (EXE) voivat määrittää ohjelman asettamalla tiedostot oikeaan paikkaan ja suorittamalla Windowsin rekisteripäivitykset. Windows Installer -paketit (MSI) lisäävät tätä tarjoamalla standardoituja palveluita, kuten asennuksen poistoja.

Voit tarkistaa EXE- tai MSI-tiedostojen sisällön käyttämällä arkiston avaaminen 7-Zipillä 7Zip: Ilmainen ohjelma harvinaisten arkistomuotojen purkamiseen Lue lisää . Jos käytät sitä tarkastellaksesi 7-Zipin omaa EXE-asennusohjelmaa, löydät useita erilaisia ​​tiedostoja:

anatomian ohjelmistopaketti 7zip sisältö

Vaikka näillä tiedostoilla ei ole asennusohjelman sisällä olevaa kansiota, kehittäjä on osoittanut jokaisen kohdehakemistoon. Suurin osa niistä päätyy "oletusasennuspaikkaan" – sama ehdotus, jonka yleensä näet kansiolle, kuten "C:\Program Files\[ohjelman nimi]" tai "C:\Program Files (x86)\[uusi sovelluksesi" ].”

Kun käytät asennuspakettien luomiseen kehittynyttä työkalua, kuten InstallShieldia, sovelluskehittäjät voivat mukauttaa asennusta. He voivat esimerkiksi määrittää, mihin Windows-versioihin se asennetaan, ja määrittää pikakuvakkeita luodaan Käynnistä-valikossa ja/tai työpöydällä tai kerätä käyttäjätietoja, kuten nimi, osoite, jne. Alla olevan kuvan esimerkki InstallShield-projektista näyttää ruudun, jossa määritetään, luodaanko tai päivitetäänkö Windowsin rekisteriavaimet.

anatomian ohjelmistopaketti installshield-rekisteri

InstallShieldin avulla sovellustiedostot ja muut mukautukset pakataan a setup.exe tiedosto. Sen avaaminen 7-Zipillä osoittaa, että sisällä on MSI-paketti, joka ajettaessa näyttää samalta kuin asennuksesta, johon olemme tottuneet. Katsotaanpa, mitä tämän prosessin aikana tapahtuu.

anatomian ohjelmistopaketti installshield asennus

Windowsin asennusprosessi

Asentaja suorittaa seuraavat vaiheet asettaakseen sovelluksesi käyttöön (tarkka järjestys voi vaihdella kehittäjän mukautusten mukaan):

  1. Asennusohjelma voi sisältää muita arkistoja, kuten edellä mainitun MSI: n tai formaatteja, kuten CAB. Ensimmäisenä vaiheena asentaja purkaa ne väliaikaiseen paikkaan.
  2. Seuraavaksi se tarkistaa, että kaikki määritetyt riippuvuudet ovat käytettävissä. Jos jotain puuttuu, se lataa sen, jos mahdollista, tai poistuu asennusohjelmasta virheellä, jos ei.
  3. Jos riippuvuuksia tarvitaan, ne asennetaan ensin käyttämällä mitä tahansa niiden mukana tulevaa asennusohjelmaa (onko .NET Frameworkin asennus koskaan keskeytynyt? Microsoft .NET Framework: miksi sitä tarvitaan ja kuinka se asennetaan WindowsiinSinun on joko asennettava tai päivitettävä se. Mutta tiedätkö mikä .NET Framework on? Näytämme, miksi tarvitset sitä ja miten saat uusimman version. Lue lisää ).
  4. Seuraavaksi asennusohjelma alkaa kopioida sovelluksen tiedostoja ja sijoittaa ne oikeaan paikkaan.
  5. Jos kehittäjä on määrittänyt pikakuvakkeita, asennusohjelma luo ja osoittaa ne todelliseen asennuspolkuun (muista, voit muuttaa tätä Kuinka luoda Windowsin työpöydän pikakuvakkeita helpostiÄlykkäät työpöydän pikakuvakkeet voivat säästää turhaa valikkojen ja kansioiden selaamista. Näytämme sinulle nopeita ja helppoja tapoja luoda niitä. Lue lisää kun asennusohjelma on käynnissä).
  6. Muutoksia Windowsin rekisteriin 3 työkalua Windowsin rekisterin valvontaan ja tutkimiseenWindowsin rekisteri on yksi huonoimmin ymmärretyistä Windows-käyttöjärjestelmän osista. Näytämme työkaluja, jotka voivat yksinkertaistaa rekisteriä ja auttaa tunnistamaan ongelmia. Lue lisää , jos sellainen on, teloitetaan.
  7. Lopuksi asentaja voi pyytää käyttäjää antamaan tietoja, kuten nimen tai Web-sivuston osoitteen.

Tämä prosessi saattaa tuntua monimutkaiselta verrattuna luettelon seuraavaan käyttöjärjestelmään. Katsotaanpa ohjelmiston asentamista macOS: ään.

Apple macOS

Windowsin asentajilla on paljon tekemistä konepellin alla. Mutta jos olet käyttänyt Macia, tiedät, että sovelluksen asentaminen on usein yhtä helppoa kuin sovelluksen kopion lataaminen, levykuvan (DMG) avaaminen ja seuraamalla joitain helppoja ohjeita Mac-ohjelmiston asentaminen ja poistaminen: 5 helppoa menetelmääVaihdoitko Maciin ja oletko perehtynyt perusasioihin? Mietitkö kuinka asentaa ohjelmisto komentoriviltä? Onko sinulla vanhoja Windows-sovelluksia, jotka sinun on yksinkertaisesti suoritettava Apple-tietokoneellasi? Lue lisää . Joskus lataus tarjoaa jopa "Vedä tänne!" kuvake.

Sukellaan APP-pakettiin sekä sen vastineeseen PKG-asennusohjelmaan.

macOS-pakettirakenne

APP-tiedosto pinnalla On itse asiassa yksinkertaisempi kuin Windows kahdesta syystä. Ensinnäkin se on tavallinen kansio. Ainoa ero on, että se päättyy ".APP"-liitteeseen. Jos lataat jonkin näistä Windowsissa, näet sen näkyvän aivan kuten kaikki muut tiedostokansiot Explorerissa. Toiseksi APP-tiedostot vaativat, että kaikki ohjelma vaatii, että se sisältää. Tämäntyyppisten asennusohjelmien kanssa ei tarvitse huolehtia riippuvuuksien puuttumisesta.

Näissä nipuissa on oltava kolme asiaa Sisältö-kansiossa: 1) Info.plist-tiedosto, joka sisältää sovelluksen metatiedot, kuten nimen, kielen, versionumeron jne.; 2) "MacOS"-hakemisto, joka sisältää pääsuoritettavan tiedoston; ja 3) "Resurssit"-hakemisto, joka sisältää sovelluksen tarvitsemat resurssit (esim. sovelluskuvake). On olemassa muita valinnaisia ​​kansioita, kuten "Frameworks" (toimintopaketit, jotka eivät liity sovellukseen). "Plug-Ins" (toiminnot sovellukselle, jota ei vaadita sen suorittamiseen) ja "SharedSupport" (vieraat tiedot, kuten mallit).

mac-sovelluskansiot

Sitä vastoin PKG-muoto on yhdistelmä Windows-tyyppistä asennusohjelma Unixin kaltaisella rakenteella 3 UNIXin kaltaista käyttöjärjestelmää, jotka eivät ole LinuxiaÄskettäin ihmiset ovat alkaneet sekoittaa "UNIXin" ja "Linuxin". Linuxiin vaikutti UNIX, mutta UNIX-järjestelmillä ei ole mitään yhteyttä Linuxiin. Tässä on joitain tärkeitä UNIX-pohjaisia ​​järjestelmiä, joista kannattaa tietää. Lue lisää . 7-Zip-sovellus avaa myös PKG-tiedoston, joka on pakattu xar muoto. Sisällä on yksi tai useampi Hyötykuorma tiedostot, joka on myös arkisto. Pura sen sisältö käyttämällä seuraavaa komentoketjua (cpio on arkistomuoto sekä ohjelma niiden käsittelyyn) Mac- tai Linux-päätteessä:

kissan hyötykuorma | gunzip -dc | cpio -i

Kun olet valmis, näet tutun Unix-tyyppisen hakemistopuun.

Alla olevassa esimerkissä olen käyttänyt asiakirjamuunninta, Pandoc. Se sisältää binäärisisään /usr/local/bin ja jotain dokumentaatiota /usr/local/share/man. Miten nämä asiat oikeasti asettuvat paikalleen? Tarkastellaan, kuinka kukin näistä itse asiassa asentuu Maciin.

mac pkg rakenne

Olen käyttänyt 7-Zipin Windows-versiota havainnollistamaan tätä pelkän komentorivin Linux-version sijaan.

macOS APP -asennusprosessi

Kun pudotat kyseisen APP-tiedoston Sovellukset-kansioosi, se ei oikeastaan ​​muutu juurikaan. Muista, että kaikki ohjelman suorittamiseen tarvittava on itsenäinen. Ainoa ero tavalliseen vetämällä ja pudottamalla on se, että "Info.plist"-tiedosto rekisteröidään järjestelmään.

mac-sovelluksen kopio

Tämä määrittää asioita, kuten mitä suoritettavaa tiedostoa kutsutaan, kun käynnistät sovelluksen, mikä kuvake näytetään, sen tukemat tiedostotyypit ja paljon muuta. Mutta muuten sovelluksesi (kuten alla näkyvä APP-paketti Atom Editorille) on nyt valmis käytettäväksi.

mac-sovellus asennettuna

macOS PKG: n asennusprosessi

PKG-tiedoston avaaminen toisaalta käynnistää "velhotyyppisen" asennusohjelman. Yksinkertaisille ohjelmille tämä on tyypillisesti a komponenttien asentaja, joka yleensä käy läpi seuraavat vaiheet:

  1. Suorita esiasennus käsikirjoitus.
  2. Pura "Payload" -sisältö koneeseen.
  3. Suorita asennuksen jälkeen käsikirjoitus.
mac pkg asennus

Kehittäjät voivat sitten yhdistää useita komponentteja yhdeksi tuotearkisto Asentaa. Tämä lisää vaihtoehtoja, kuten EULA: n näyttämisen käyttäjän hyväksyttäväksi, tietojen keräämisen käyttäjältä ja asennettavien komponenttien valitsemisen. Sillä välin Apple Installer huolehtii kaikista tarvittavien komponenttien asennuksen yksityiskohdista yksitellen taustalla.

Unix-pohjaisista asentajista puhuttaessa siirrymme kahteen johtavaan Linux-pakettimuotoon seuraavassa osiossa.

Ubuntu ja Fedora Linux

Ah, DEB vs. RPM Ohjelmiston asentaminen Linuxiin: Pakettimuodot selitettyOlet vaihtanut Linuxiin ja haluat asentaa ohjelmistoja. Mutta pakettien hallinnoijat vaihtelevat jakelustasi riippuen. Mitä sovelluksia voit ladata ja asentaa? Kaikki on lyhenteissä. Lue lisää . Yksi suurista liekkisodista, jota ovat parhaimmillaan vain kaltaiset vi vastaan emacs tai KDE vs. GNOME. Nämä muodot ovat kuitenkin enemmän samankaltaisia ​​kuin erilaisia. Katsotaanpa.

Linux-paketin tiedostorakenne

Jos haluat tarkastella DEB-tiedoston sisäosia, voit kokeilla GUI-arkiston hallintaa. Muussa tapauksessa käytä ar komento. Terminaaliin syötettiin seuraava komento Yli 40 eniten käytettyä Linux-päätekomentoaOlitpa vasta aloittamassa tai olet vain utelias Linux-päätteestä, tässä on yleisimmät komennot, jotka kuljettavat sinut läpi koko Linux-käyttösi. Lue lisää purkaa Debian-paketin sisällön:

ar -x-pakettisi nimi.deb

Tästä tulee kolme tiedostoa:

  • control.tar.gz — Tämä puolestaan ​​sisältää yhden ensisijaisen tiedoston, Ohjaus, joka sisältää metatietoja paketista, kuten sen virallisen nimen, version ja riippuvuudet. Se voi sisältää myös muita tiedostoja, kuten asennuksen aikana suoritettavia komentosarjoja tai oletusasetustiedostoja.
  • data.tar.gz — Itse sovelluksen muodostavat tiedostot ovat tässä TAR.GZ-arkistossa. Kaikki, mukaan lukien binaarit, dokumentaatio ja oletusasetukset, ovat täällä. Esimerkkipaketissa kde-service-menu-encfs_0.5.2_all.deb se sisältää tiedostoja ja hakemistoja alla olevan kuvan mukaisesti.
  • debian-binary — Tämä on tiedosto, joka määrittää, mitä versiota Debian-pakettimuodosta tiedosto käyttää. Nykyaikaisissa jakeluissa tämä sisältää vain "2.0" yhdellä rivillä.
deb-pääohjain

Fedorassa voit käyttää rpm2cpio ja cpio komennot RPM-paketin purkamiseksi ja niiden tiedostojen selaamiseksi:

rpm2cpio-pakettisi nimi.rpm | cpio -idvm

Paketille kde-cli-tools-5.9.4-2.fc26.x86_64.rpm näet DEB-paketin kaltaisen tiedostopuun. Mutta se ei tarjoa metatietoja, ainakaan sisään the binääri paketti. Sinun on ladattava binaariversiotasi vastaava lähde-RPM (.SRC.RPM) ja käytä sitten samaa yllä olevaa komentoa kyseiselle tiedostolle. Siihen sisältyy SPEC-tiedosto, joka sisältää monia samoja kohteita kuin Ohjaus tiedosto Debian-paketissa.

Nyt kun olemme ymmärtäneet Linux-pakettien rakenteen, katsotaanpa tutkia, mitä tapahtuu, kun asennat ne Ohjelmiston asentaminen Linuxiin: Pakettimuodot selitettyOlet vaihtanut Linuxiin ja haluat asentaa ohjelmistoja. Mutta pakettien hallinnoijat vaihtelevat jakelustasi riippuen. Mitä sovelluksia voit ladata ja asentaa? Kaikki on lyhenteissä. Lue lisää .

Linux-paketin asennus

Kun asennat kumman tahansa muodon paketteja käyttöliittymästä riippumatta, tapahtuu samanlainen vaihe:

  1. Pakettijärjestelmä tutkii paketin sisällön selvittääkseen, puuttuuko riippuvuuksia. Työkalusta riippuen se joko varoittaa sinua tai asettaa ne lataamaan ne.
  2. Jos paketit sisältävät esiasennettavia komentosarjoja tai komentoja, ne suoritetaan seuraavaksi.
  3. Sitten pakettijärjestelmä purkaa paketin tiedostot.
  4. Kun tiedostot ovat paikoillaan, asennuksen jälkeiset komentosarjat suoritetaan.
  5. Lopuksi paketti rekisteröidään sisäiseen tietokantaan sen metatietojen avulla, jotta se voidaan poistaa myöhemmin.

Ohjelmiston asennuksen tietäminen on hyvä asia

Koska käyttöjärjestelmien ja niissä käytettävien ohjelmistojen kehittäjät tekevät hyvää työtä helpottaakseen ohjelmistojen asennusta, sinun ei todellakaan tarvitse kiinnittää huomiota yksityiskohtiin. Mutta kun tiedät kulissien takana tapahtuvista tapahtumista, saat mielenrauhaa järjestelmääsi asennetun järjestelmän suhteen sekä auttaa vianetsinnässä.

Kuinka monta yllä olevista ohjelmiston asennustavoista olet tehnyt? Pidätkö enemmän DEB: stä vai RPM: stä? Vai edustavatko Macin APP-paketit helppokäyttöisyyden huippua? Onko koskaan tapahtunut painajaista asennusta? Kerro meille alla olevissa kommenteissa!

Aaron on ollut kyynärpäähän teknologiassa yritysanalyytikona ja projektipäällikkönä viidentoista vuoden ajan, ja hän on ollut uskollinen Ubuntu-käyttäjä melkein yhtä kauan (Breezy Badgerista lähtien). Hänen kiinnostuksen kohteitaan ovat avoin lähdekoodi, pienyrityssovellukset, Linuxin ja Androidin integrointi sekä laskenta pelkkä teksti -tilassa.