Hirdetés

Új hozzászólás Aktív témák

  • Frawly

    veterán

    válasz ArthurShelby #51866 üzenetére

    A telepített csomagokat a dpkg -l paranccsal nézd meg terminálból, ha a Synaptic nem indul. Bár én a helyedben a Synapticot indítanám el terminálból (sudo synaptic) úgy el tudod olvasni a hibaüzenetet, hogy miért nem indul el.

    Probálom most a következőkben dedómódban, sarkítottan, leegyszerűsítve leírni a legalapabb dolgokat, amikre kíváncsi voltál. A programokat a /lib (és ha 64 bites rendszered van, akkor /lib64) mappába teszi a rendszer. Néha települnek programok a /opt-ba is, igaz ezek általában külső forrásból települnek. Végül pedig függetlenül attól, hogy hová települ, az /usr/bin helyre szimbolikus linkek jönnek létre az alkalmazásokhoz, de csak a binárisaikhoz. A szimbolikus link olyasmi, mint Windows alatt a .lnk fájlok, de azért nem egészen, mivel ez úgy mutatja, mintha az eredeti fájlok lennének ott. Ezek a binárisokra mutató szimbolikus linkek az /usr/bin elérési úton találhatók, de e helyre mutat a /bin szimbolikus link is, ezek ahhoz kellenek, hogy az alkalmazásnév puszta futtatásával elinduljon az alklamazás, és ne kelljen /elérési/út/alkalmazás formában indítani. A binárisok olyanok, mint Windows alatt az .exe fájlok, de Linux alatt nincsenek kiterjesztések (vagyis vannak, de csak videó, zene, stb. fájloknál, és ott sem számítanak, csak a filenév részei, a felhasználó tájékoztatására szolgálnak mindössze). Szóval egy linuxos binárisnak nincs kiterjesztése általában (fájlnév áll egymagában, nem végződik pont akármicsodára), néha viszont .so-ra végződik (igaz ilyenkor meg tipikusan nem ezt indítjuk el, nem önmagában fut, ez kicsit a .dll-ekre hasonlít inkább, az so a shared object rövidítése). Ugyanez igaz a scriptekre (tipikusan a Bash-hoz készült scriptek, kb. olyanok, mint a Batch .bat fájlai Windows alatt), általában itt sincs kiterjesztés, néha azonban mégis van: .sh vagy ilyesmi, de ilyenkor is csak a fájlnév része, a felhasználót tájékoztatja a kiterjesztés. Persze Windows-ról jövő friss userek mindjárt itt nem szokták érteni, hogy ha nincs kiterjesztés, akkor a rendszer honnan tudja, hogy egy adott fájlt megadva mit csináljon vele, futassa, vagy egy másik célalkalmazással nyissa meg. A válasz egyszerű, a grafikus környezetek meg a kétpaneles fájlkezelők azért mégis csak figyelembe veszik a név részeként a kiterjesztést, és pl. az .mkv vagy .flac fájlokat automatikusan megnyitják azzal, amit beállítasz nekik, másrészt meg ha terminálban vagy konzolban (ezek a windowsos parancssor megfelelői) beírod az alkalmazás nevét, vagy fájlkezelőben rákattintasz a nevére, akkor meg elindul alkalmazásként, feltéve, hogy be van állítva rajta +x attribútum/flag, azaz van jogod futtatni.

    Ha az adott szofvernek vannak olyanjai, akkor néha ikonok (Linux alatt nem működnek az .ico fájlok, helyette .png, .svg, stb. szokott lenni), asztali linkek (na, ez olyan, mint Windowson az .lnk fájlok, csak itt általában .desktop fájlok vannak), egyéb sallang települ a /usr/share mappába is. Az alkalmazások config fájlai pedig a ~/.config/ és ~/ (e hullámjel a /home/felhasználónév/-nek felel meg, azt rövidíti) mappákban szokott lenni, azaz a home-ban. Szóval ez nem Windows, hogy az egész alkalmazás benne van egyetlen mappában, hanem Linuxon a rendszer szétszórja a fájlokat funkciók szerint. Biztos kérdezed, hogy ez a szétszortírozás mihez kell, csak bonyolítja a dolgokat. Egyrészt kell ahhoz, amit már írtam, hogy a programokat puszta alkalmazásnév alapján lehessen futtatni, meg kell ahhoz is, hogy ablakkezelők/asztali környezetek (grafikus felületek), illetve ezek Start Menühöz hasonló indítómenüjei rátaláljanak a telepített alkalmazásokra egy szabványosított felületen, és tudják kezelni az összeset, anélkül hogy állandóan meg kelljen neked mondani, hogy új program van telepítve (erről a csomagkezelő is gondoskodik post install scripttel), meg hol található.

    Ennek ellenére jól írták, nem kell neked tudni, hogy mi hová települ. A csomagkezelő (dpkg, illetve ezek text alapú frontedjei, apt, apt-get, grafikus frontend a Synaptic) belső tárolókból tölt le alapból (tehát nem himi-humi oldalakról kell neked letölteni a franc tudja milyen szeretetcsomaggal fertőzőtt .exe-s és .msi-s telepítőt), onnan is általában a rendszerre elérhető legfrissebb, ellenőrzött, hitelesített, biztonságos verziót, és telepíti a programokat a megfelelő helyre. A tároló egy szerver, amin össze vannak gyűjtve az alkalmazások kifejezetten a te rendszeredhez, kicsit olyan, mint egy mirror szerver, de általában repositorynak vagy csak lezseren repónak csúfolják. A csomagkezelő és a tároló frissítésként is működik, ha új verziót talál következő frissítéskor a csomagkezelő a tárolókban, akkor leszedi és telepíti automatikusan. Az egész az alkalmazásboltokra hasonlít, mint az Android Play Store-ja, vagy az iOS appstore-ja, azok is ezen az elven működnek. Okostelefonon sem kell emiatt tudnod, hogy egy adott alkalmazás hová települ, hol vannak a fájlai. A csomagkezelő egy komplex alkalmazás, egyszerre download manager, updater, adatbáziskezelő-nyilvántartó meg minden egyben, mindent intéz helyetted egy lépésben.

    Ha egy progit nem találsz a belső tárolókban, akkor általában létezik hozzá külső tároló (főleg Ubuntuhoz), azt kell hozzáadni a Synaptichez vagy a sudo add-apt-repository paranccsal (ugyanazt csinálja mind a kettő), innen fogva megint ugyanaz, csomagkezelővel kiválasztod, és települ, frissül, mintha a belső tárolón lenne. Ugyanez uninstallálásnál, csak kiválasztod a csomagkezelőben az alkalmazást, és eltávolítást nyomsz, a csomagkezelő meg leszedi, általában sallangot sem hagy fent, ha mégis, akkor vannak erre kapcsolók, amik mindenestől szedik le a csomagot, még config fájlokat sem hagynak hátra. Azért vedd észre, hogy a külső tároló már nem olyan biztonságos, mint a belső, emiatt lehet, hogy galibát okozhat, ha innen telepítesz valamit.

    Aztán, ha sem a belső tárolókban nincs meg az általad keresett alkalmazás, sem a neten nem találsz hozzá külső tárolót, akkor jön az, amit neked, kezdőnek nem javaslok: tárolón kívüli bináris letöltése, ezek általában .tar.gz, azaz Tar Gizi, vagy tar.bz2, tar.xz, vagy hasonló fájlok, ezeket neked kell kézzel letölteni, kibontani valahová (az mindegy hová, csak legyen jogod az adott mappát írni, listázni). Ha szerencséd van, nincs újabb függősége az alkalmazásnak, így is lehet telepíteni, de ilyenkor nincs garancia, hogy nem gányolt szoftvert töltöttél le. Esetleg lehet ugyanezt eljátszani másfajta linuxok tárolóiban lévő csomagokkal (pl. rpm-csomagokkal), ezeket is ki lehet bontani mappába (vagy átkonvertálni Ubuntu-kompatibilis .deb vagy .dpkg csomagokká), de a függőségek itt is közbeszólhatnak.

    Amikor már sehogy sem találod meg az adott alkalmazást lefordított binárisokkal, akkor van egy olyan lehetőség, hogy ha rendelkezésre áll, akkor forráskódból fordítsd le, általában ezt az adott alkalmazás forráskódjához csomagolt readme vagy hasonló fájl írja, hogy a configure, make, make install parancsok közül melyiket hogy kell futtassad. Ezt sem ajánlom, hogy eleinte használd, ismerkedj azokkal a szoftverekkel, amelyek a belső tárolókban vannak, az esetek 99,99%-ban mindenhez van benne rendes alternatíva, szokjad azokat.

    Az egész merőben más koncepció, mint a Windows, ahol .exe és .msi fájlok, meg Next-Next-Location-Finish típusú telepítés van, meg C: meghajtó meg Program Files és Registry. Pl. itt nincs Windows Update, mert a rendszerkomponensek is sima alkalmazások, azok is a csomagkezelőn keresztül frissülnek, mint minden. Nincs Registry sem, mert az alkalmazások komponensei és configfájlai szét vannak szórva a megfelelő helyekre. Nincsenek vírusok sem, vagyis vannak, de azok csak úgy tudnak települni Linuxra, ha valahonnan külső, megbízhatatlan forrásból töltesz le valamit, és rendszergazdaként telepíted (és a rendszer sincs frissítve), vagy a netről mindenféle mágikus (rossz indulatú, nem ellenőrzött) parancsokat futtatsz le rendszergazdai jogokkal (sudo), tehát mindenképpen aktív, közreműködő hülyeség kell a felhasznál részéről, tényezők együtthatása, mert amúgy Linux alatt nincs olyan, hogy böngészgetsz, egyszer csak automatikusan beszopsz valamit az egyik szenny/gány oldalról, aztán elárasztanak a popupok meg mindenféle ocsmányságok villognak bele az arcodba, aztán következő bootoláskor is lehet mindenféle áldást élvezni, meg botnet részeként tevékenykedni, meg cryptolockolt fájlokért bitcoinokat csengetni lefelé. Emiatt sajnos a Norton Security 2017 Megahyper Csakmostneked Ultra Professional Edition x64-et sem telepítheted fel rá, hiába olyan szép a doboza, meg vetted akciósan 17 ezerért vagy mennyiért. Erre szokták mondani, hogy a Windows olyan problémákra kínál megoldást, amelyeket maga kreált. Mivel nincs registry, ezért a Linux később sem lassul be, mint a Windows, hogy újra kelljen telepíteni minden x hónapban (bár mondjuk aki ért hozzá, nem telepítget észnélkül minden szart, annak a Windows sem lassul be annyira, hosszú évekig lehet újratelepítés nélkül használni), és nem kell registry cleanereket és mindenféle rendszerpucolókat, karbantartókat, defragot, apja kaszá't futtatni rendszeresen, meg rendszeresen rugdosni, hogy normálisan menjen. Linuxnál végképp igaz, hogy csak akkor van újratelepítés, ha vasat cserélsz alatta (néha még ekkor sem) vagy valamit te elcseszel benne, vagy disztribúciót frissítesz/főverziót váltasz és nem akarsz szívni (rolling release típusú Linux disztróknál még ez sincs, ezeknek a támogatása sem jár le soha).

    A végére még kitérek a driverekre. Ez sem úgy megy, mint Windows alatt, hogy neked kell leszedni (jó, nagyon-nagyon ritkán kell hozzá a csomagkezelőből csamagot telepíteni), hanem alapból mindent kezel a kernel, amit meg nem (tipikusan videókártya zárt drivere) vagy hálókártya, nyomtató, scanner, azt neked kell leszedned, de ilyenkor is csomagkezelőből kell telepítened. Emiatt a driverek is mindig frissülnek a rendszerrel automatikusan.

    Tömörített fájlokat grafikus archívumkezelőben (keresd a csomagkezelőben, bár az Ubuntu automatikusan tartalmaz ilyet feltelepítve), terminálban/konzolban parancsokkal (ez viszont nem felhasználóbarát), vagy paneles fájlkezelőkkel (vagy az Intézőre hasonlítanak vagy a Total Commanderre) tudod kibontani.

    A szakiknak: kihagytam valami fontosat? Most így más alapvető nem jut eszembe. Mindegy, így is regénnyire nyúlt el, de ezek a kérdések rendszeresen előjönnek.

    [ Szerkesztve ]

Új hozzászólás Aktív témák