1.2 Lecke 1
Tanúsítvány: |
Linux Essentials |
---|---|
Verzió: |
1.6 |
Témakör: |
1 A Linux Közössége és Pályafutása a Nyílt Forráskódban |
Fejezet: |
1.2 Főbb Nyílt Forráskódú Alkalmazások |
Lecke: |
1/1 |
Bevezetés
Alkalmazás alatt olyan számítógépes programot értünk, amelynek célja nem a számítógép belső működésével van összeköttetésben, hanem a felhasználó által elvégzett feladatokkal. A Linux disztribúciói számos alkalmazást kínálnak különböző feladatok elvégzéséhez, például irodai alkalmazások, böngészők, médialejátszók, szerkesztők, stb. Egy adott feladathoz gyakran több alkalmazás vagy eszköz is elérhető. A felhasználó dönthet arról, hogy melyik alkalmazás felel meg leginkább az elvárásainak.
Szoftvercsomagok
Majdnem minden Linux disztribúcióban találhatóak előre feltelepített alkalmazáskészletek. Ezeken felül a disztribúciónak van egy csomagtárolója (repository), a csomagkezelőn keresztül telepíthető alkalmazások hatalmas gyűjteményével. Noha a különböző disztribúciók nagyjából ugyanazokat az alkalmazásokat ajánlják, több különböző csomagkezelő rendszer létezik a különböző disztribúciókhoz. Például a Debian, az Ubuntu és a Linux Mint a dpkg
, apt-get
és apt
eszközöket használja szoftvercsomagok telepítéséhez, ezeket általában DEB csomagoknak nevezzük. Az olyan disztribúciók, mint a Red Hat, a Fedora és a CentOS az rpm
, yum
és dnf
parancsokat használják amikkel RPM csomagokat telepíthetünk. Mivel minden disztribúciócsaládnál eltérő az alkalmazások csomagolása, nagyon fontos, hogy a csomagokat a disztribúciónak megfelelő repository-ból telepítsük. A végfelhasználónak általában nem kell ezen részletekkel foglalkoznia, hiszen az operációs rendszer csomagkezelője a megfelelő csomagokat választja ki a szükséges függőségekkel (dependency) és a jövőbeni frissítésekkel együtt. A függőségek olyan segédcsomagok, amelyekre a telepítendő programoknak szüksége van. Például ha egy mappa funkciókat biztosít a JPEG-képek kezelésére, amelyeket több program használ, ez a mappa a saját csomagjába kerül, amin az alkalmazások a mappa függőségét használják.
A dpkg
és rpm
parancsok az egyes csomagfájlokkal dolgoznak. A gyakorlatban, majdnem minden csomagkezelési feladat az apt-get
vagy az apt
paranccsal hajtódik végre a DEB csomagokat használó rendszereken, yum
vagy dnf
az RPM csomagokat használókon. Ezek a parancsok a csomagok katalógusával dolgoznak, letölthetnek új csomagokat és függőségeiket, valamint ellenőrizhetik, hogy a már telepített csomagokból rendelkezésre áll-e újabb verzió.
Csomagok telepítése
Tételezzük fel, hogy hallottunk már a figlet
nevű parancsról, ami felnagyított szöveget ír ki a terminálra és ki szeretnénk próbálni. Azonban a figlet
parancs kiadása után az alábbi üzenetet kapjuk:
$ figlet -bash: figlet: command not found
Ez valószínűleg azt jelenti, hogy a csomag nincs telepítve a rendszerre. Ha a disztribúció DEB csomagokat használ, akkor a repositorykban az apt-cache search csomagnév
vagy apt search csomagnév
paranccsal lehet keresni. Az apt-cache
parancs csomagok keresésére használható, valamint információkkal is szolgál az elérhető csomagokról. Az alábbi parancs a “figlet” kifejezés bármilyen feltűnését figyeli a csomagok nevében és leírásában:
$ apt-cache search figlet figlet - Make large character ASCII banners out of ordinary text
A keresés beazonosított egy figlet nevű csomagot, ami megfelel a hiányzó parancsnak. A csomagok telepítése és törlése különleges jogokat igényel, amelyekkel csak a rendszergazda rendelkezik: az a felhasználó, akinek a felhasználóneve root
. Asztali rendszereken átlagos felhasználók csomagokat telepíteni a telepítő/eltávolító parancsok elé beszúrt sudo
paranccsal tudnak. A jóváhagyáshoz szükség lesz a jelszó megadására. DEB csomagok esetén a telepítés az apt-get install csomagnév
vagy az apt install csomagnév
paranccsal hajtható végre:
$ sudo apt-get install figlet Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: figlet 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Ezen a ponton a csomag letöltésre és telepítésre kerül a rendszeren. Bármilyen függőség, amire a csomagnak szüksége van, szintén letöltésre és telepítésre kerül:
Need to get 184 kB of archives. After this operation, 741 kB of additional disk space will be used. Get:1 http://archive.raspbian.org/raspbian stretch/main armhf figlet armhf 2.2.5-2 [184 kB] Fetched 184 kB in 0s (213 kB/s) Selecting previously unselected package figlet. (Reading database ... 115701 files and directories currently installed.) Preparing to unpack .../figlet_2.2.5-2_armhf.deb ... Unpacking figlet (2.2.5-2) ... Setting up figlet (2.2.5-2) ... update-alternatives: using /usr/bin/figlet-figlet to provide /usr/bin/figlet (figlet) in auto mode Processing triggers for man-db (2.7.6.1-2) ...
A letöltés befejezése után minden fájl átmásolódik a szükséges helyére, minden további beállítás elvégződik, és a parancs elérhetővé válik:
$ figlet Awesome! _ _ / \__ _____ ___ ___ _ __ ___ ___| | / _ \ \ /\ / / _ \/ __|/ _ \| '_ ` _ \ / _ \ | / ___ \ V V / __/\__ \ (_) | | | | | | __/_| /_/ \_\_/\_/ \___||___/\___/|_| |_| |_|\___(_)
Az RPM csomagokra épülő disztribúciókban a keresést a yum search csomagnév
vagy a dnf search csomagnév
paranccsal hajthatjuk végre. Mondjuk, hogy egy egészen szokatlan módon szeretnénk megjeleníteni egy szöveget, amelyet egy rajzolt tehén mond ki, de nem vagyunk biztosak benne, hogy melyik csomaggal lehet ezt megvalósítani. A DEB csomagokhoz hasonlóan az RPM keresési parancsai is fogadnak el leíró kifejezéseket:
$ yum search speaking cow Last metadata expiration check: 1:30:49 ago on Tue 23 Apr 2019 11:02:33 PM -03. ==================== Name & Summary Matched: speaking, cow ==================== cowsay.noarch : Configurable speaking/thinking cow
Ha találtunk egy megfelelő csomagot a repository-ban, a yum install csomagnév
vagy dnf install csomagnév
paranccsal telepíthetjük is:
$ sudo yum install cowsay Last metadata expiration check: 2:41:02 ago on Tue 23 Apr 2019 11:02:33 PM -03. Dependencies resolved. ============================================================================== Package Arch Version Repository Size ============================================================================== Installing: cowsay noarch 3.04-10.fc28 fedora 46 k Transaction Summary ============================================================================== Install 1 Package Total download size: 46 k Installed size: 76 k Is this ok [y/N]: y
Ismét letöltjük és telepítjük a kívánt csomagot és az összes lehetséges függőséget:
Downloading Packages: cowsay-3.04-10.fc28.noarch.rpm 490 kB/s | 46 kB 00:00 ============================================================================== Total 53 kB/s | 46 kB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : cowsay-3.04-10.fc28.noarch 1/1 Running scriptlet: cowsay-3.04-10.fc28.noarch 1/1 Verifying : cowsay-3.04-10.fc28.noarch 1/1 Installed: cowsay.noarch 3.04-10.fc28 Complete!
A cowsay
parancs pontosan azt teszi, amire a neve utal:
$ cowsay "Brought to you by yum" _______________________ < Brought to you by yum > ----------------------- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Noha haszontalannak tűnnek, a figlet
és a cowsay
parancsok lehetőséget kínálnak arra, hogy felhívják a felhasználók figyelmét a fontos információkra.
Csomagok eltávolítása
Csomagok eltávolítására ugyanazokat a parancsokat használhatjuk, mint a telepítésükre. Minden parancs elfogadja a remove
kulcsszót egy már telepített parancs törlésére: apt-get remove csomagnév
vagy apt remove csomagnév
DEB csomagok esetén yum remove csomagnév
vagy dnf remove csomagnév
RPM csomagoknál. A sudo
parancs is szükséges a törlés végrehajtásához. Például így távolíthatjuk el az előzőekben telepített figlet csomagot egy DEB-alapú disztribúcióról:
$ sudo apt-get remove figlet Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: figlet 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. After this operation, 741 kB disk space will be freed. Do you want to continue? [Y/n] Y
A művelet megerősítése után a csomag törlésre kerül a rendszerről:
(Reading database ... 115775 files and directories currently installed.) Removing figlet (2.2.5-2) ... Processing triggers for man-db (2.7.6.1-2) ...
Az eljárás hasonló az RPM-alapú rendszereknél. Például az előzőleg telepített cowsay csomag eltávolítása egy RPM-alapú disztribúcióról:
$ sudo yum remove cowsay Dependencies resolved. ================================================================================== Package Arch Version Repository Size ================================================================================== Removing: cowsay noarch 3.04-10.fc28 @fedora 76 k Transaction Summary ================================================================================== Remove 1 Package Freed space: 76 k Is this ok [y/N]: y
Hasonlóan szükséges a megerősítés, majd a csomag törlésre kerül a rendszerről:
Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Erasing : cowsay-3.04-10.fc28.noarch 1/1 Running scriptlet: cowsay-3.04-10.fc28.noarch 1/1 Verifying : cowsay-3.04-10.fc28.noarch 1/1 Removed: cowsay.noarch 3.04-10.fc28 Complete!
Az eltávolított csomagok konfigurációs fájljai megmaradnak a rendszeren, ha a csomagot újratelepítjük, azok újra felhasználhatóak.
Irodai alkalmazások
Az irodai alkalmazásokat olyan fájlok szerkesztésére használjuk, mint a szövegfájlok, prezentációk, táblázatok, valamint olyan formátumok, amelyeket főleg irodai környezetben használunk. Ezeket az alkalmazásokat általában gyűjteményekbe rendezik, melyet irodai alkalmazáscsomagnak (office suit) nevezünk.
A Linuxban hosszú időn keresztül az OpenOffice.org volt a legnépszerűbb irodai alkalmazáscsomag. Az OpenOffice.org a Sun Microsystems által fejlesztett StarOffice nyílt forráskódú változata volt. Néhány évvel később a Sun-t felvásárolta az Oracle Corporation, amely átadta a projektet az Apache Alapítványnak és az OpenOffice.org új neve Apache OpenOffice lett. Időközben ezen forráskód alapján egy másik irodai alkalmazáscsomagot jelentetett meg a Document Foundation, a LibreOffice-t.
A két projektnek ugyanazok az alapvető funkciói és kompatibilisek a Microsoft Office fájlformátumaival. Azonban az előnyben részesített formátum az Open Document Format, egy teljes nyitott és ISO-szabványos fájlformátum. Az ODF fájlok használata biztosítja, hogy a dokumentumok átvihetők legyenek más gyártók operációs rendszereire és alkalmazásaiba, mint például a Microsoft Office. Az OpenOffice/LibreOffice fő alkalmazásai:
- Writer
-
Szövegszerkesztő
- Calc
-
Táblázatkezelő
- Impress
-
Prezentációkészítő
- Draw
-
Vektorgrafikus alkalmazás
- Math
-
Matematikai képletek
- Base
-
Adatbáziskezelő
A LibreOffice és az Apache OpenOffice is nyílt forráskódú, de a LibreOffice LGPLv3 licensz alatt, míg az Apache OpenOffice Apache License 2.0 alatt jelenik meg. Ez a licenszek közötti különbség azt jelenti, hogy a LibreOffice felhasználhatja az Apache OpenOffice fejlesztéseit, de ez fordítva már nem lehetséges. Ez és egy nagyon aktív fejlesztőközösség az oka annak, hogy a legtöbb disztribúció a LibreOffice-t használja alapértelmezett irodai programcsomagként.
Böngészők
A legtöbb felhasználó számára a számítógép fő célja az internethez való hozzáférés biztosítása. Napjainkban a weboldalak teljes funkcionalitású alkalmazásként működhetnek, azzal az előnnyel, hogy bárhonnan elérhetőek anélkül, hogy további szoftver telepítésére lenne szükség. Ez teszi a böngészőt az operációs rendszer legfontosabb alkalmazásává, legalábbis az átlagos felhasználó számára.
A webfejlesztés megismerésének egyik legjobb forrása az MDN Web Docs, amely elérhető a https://developer.mozilla.org/ címen. A Mozilla által karbantartott oldal rengeteg oktatást tartalmaz kezdőknek, valamint referenciaanyagokat a legmodernebb webes technológiákhoz.
Linux környezet alatt a legfőbb böngészők a Google Chrome és a Mozilla Firefox. A Chrome egy Google által üzemeltetett böngésző, de a Chromium nevű nyílt forráskódú böngészőn alapul, amely a disztribúció csomagkezelőjének segítségével telepíthető és teljesen kompatibilis a Chrome-mal. A Firefox a Mozilla nonprofit szervezet által fenntartott böngésző, melynek gyökerei a Netscape-ig nyúlnak vissza, ami az első népszerű böngészőként alkalmazta a nyílt forráskódú modellt. A Mozilla Alapítványnak nagy szerepe van a modern web alapjául szolgáló nyitott szabványok kidolgozásában.
A Mozilla egyéb alkalmazásokat is fejleszt, például a Thunderbird levelezőklienst. Nagyon sok felhasználó a webes felületet használja egy dedikált levelező alkalmazás helyett, de egy Thunderbirdhöz hasonló kliens egyéb hasznos tulajdonságokat kínál és jól integrálható az asztali alkalmazásokhoz.
Multimédia
A rendelkezésre álló webes alkalmazásokhoz képest az asztali alkalmazások továbbra is a legjobb megoldást kínálják multimédia tartalmak létrehozására. A multimédiához kapcsolódó tevékenységek, például a videók renderelése gyakran nagy rendszererőforrásokat igényel, amelyeket egy helyi asztali alkalmazás tud a legjobban menedzselni. Az alábbiakban felsoroljuk a Linux legnépszerűbb multimédiás alkalmazásait és azok felhasználási területeit.
- Blender
-
Egy 3D-szerkesztő animációk készítéséhez. Képes 3D nyomtatókhoz 3D objektumokat exportálni.
- GIMP
-
Egy teljesen felszerelt képszerkesztő, ami az Adobe Photoshop-hoz hasonlítható, de saját koncepciókkal és eszközökkel. A legtöbb képfájl, például JPEG, PNG, GIF, TIFF, stb. szerkeszthető és menthető vele.
- Inkscape
-
Vektorgrafikus szerkesztő, a Corel Draw-hoz vagy az Adobe Illustrator-höz hasonlítható. Az Inkscape alapértelmezett formátuma az SVG, ami egy nyílt szabvány vektorgrafikához. Az SVG fájlok bármelyik webböngészővel megnyithatók és a vektorgrafika természetének köszönhetően felhasználhatók a weboldalak flexibilis kialakításához.
- Audacity
-
Audio-szerkesztő. Felhasználható filterezésre, effektek alkalmazására és sokféle formátum közötti konvertálásra, például MP3, WAV, OGG, FLAC, stb.
- ImageMagick
-
Az ImageMagick egy parancssori eszköz a legtöbb képfájl szerkesztésére és konvertálásra. Használható még képfájlok készítésére PDF-dokumentumokból és vica versa.
Rengeteg alkalmazás létezik multimédia lejátszásához. A legnépszerűbb videólejátszó a VLC, de néhány felhasználó más alternatívákat támogat, például smplayer. Zenelejátszásra szintén sok lehetőség van, például az Audacious, a Banshee és az Amarok, ami képes helyi hangfájlgyűjtemények kezelésére is.
Szerverprogramok
Amikor egy böngésző betölt egy oldalt egy honlapról, valójában egy távoli számítógéphez csatlakozik és egy meghatározott információt kér le. Ebben az esetben a számtógép, amely a böngészőt futtatja a kliens, a távoli számítógép pedig a szerver.
A szerverszámítógépnek, amely lehet egy átlagos asztali számítógép, vagy speciális hardver is, minden általa szolgáltatott információ menedzseléséhez speciális programra van szüksége. A weboldalak kiszolgáláshoz a világ legtöbb szervere nyílt forráskódú szerverprogramokat használ. Ezt a bizonyos programot HTTP szervernek (Hyper Text Transfer Protocol) nevezzük, a legnépszerűbbek az Apache, a Nginx és a lighttpd.
Még az egyszerű weboldalak is sok kérést kapnak, amelyek lehetnek átlagos fájlok — statikus tartalom --, vagy különböző forrásból származó dinamikus tartalmak. Egy HTTP szerver szerepe, hogy összegyűjtse és visszaküldje a kért adatokat a böngészőnek, amely aztán elrendezi az adatokat úgy, ahogy az a megkapott HTML dokumentumban (Hyper Text Markup Language) és az egyéb kísérőfájlokban van meghatározva. Egy weboldal betöltése magában foglalja mind a szerveroldali, mind a kliensoldali műveleteket. Mindkét oldal egyedi szkripteket használhat a specifikus feladatok végrehajtására. A HTTP szerveroldalon nagyon gyakori a PHP nyelv használata. Kliensoldalon (a böngészőben) a JavaScript nyelvet használjuk.
A szerverprogramok mindenféle információ szolgáltatására képesek, nem ritka az sem, ha egy szerverprogram más szerverprogramok által szolgáltatott információkat kér. Ez a helyzet áll fenn akkor, amikor egy HTTP szerver információkat kér egy adatbázisszervertől.
Példának okáért, ha a kérés egy dinamikus oldal, a HTTP szerver általában lekérdezi az adatbázisból, összegyűjti a szükséges információt és visszaküldi a dinamikus tartalmat a kliensnek. Hasonló módon, amikor egy felhasználó regisztrál egy weboldalon, a HTTP szerver összegyűjti a kliens által küldött adatokat és eltárolja egy adatbázisban.
Az adatbázis egy strukturált információgyűjtemény. Egy adatbázisszerver a tartalmat formázva tárolja, lehetővé téve nagymennyiségű adat olvasását, írását és összekapcsolását. A nyílt forráskódú adatbázziszervereket nem csak az interneten, hanem számos alkalmazásban is használjuk. Még helyi alkalmazások is tudnak adatot tárolni egy helyi adatbázisszerverhez kapcsolódva. A legismertebb típusú adatbázisfajta a relációs adatbázis, ahol az adatok strukturáltan vannak tárolva, előre definiált táblákban. A legnépszerűbb nyílt forráskódú adatbázis a MariaDB (a MySQL-ből származik) és a PostgreSQL.
Adatmegosztás
Helyi hálózatokon, mint például az otthoni vagy irodai hálózat, nem csak az szükséges, hogy a számítógépek csatlakozni tudjanak az internethez, hanem az is, hogy a számítógépek képesek legyenek egymással kommunikálni. Néha a számítógép szerverként, néha pedig kliensként viselkedik. Ez akkor szükséges, ha valaki a hálózaton el szeretne érni egy másik számítógépen tárolt fájlt — például hozzáférni egy hordozható eszközről egy asztali számítógépen tárolt fájlhoz --, anélkül a gond nélkül, hogy fel kéne másolni egy USB meghajtóra vagy hasonlóra.
Linux gépek között gyakran használjuk az NFS-t (Network File System). Kizárólag Unix/Linux gépeket tartalmazó hálózatokban az NFS protokoll a szokásos módszer a fájlrendszerek megosztására. Az NFS segítségével a számítógép egy vagy több mappáját megoszthatja meghatározott számítógépekkel a hálózaton, amelyek így ezekben a mappákban írhatnak és olvashatnak fájlokat. Az NFS még arra is használható, hogy egy teljes operációs rendszer mappastruktúráját megossza a kliensekkel, amelyek így be is bootolhatnak onnan. Ezeket vékonykliensnek nevezzük és általában nagy hálózatokban használjuk őket, hogy ne kelljen minden egyes gépen külön-külön karbantartani az operációs rendszert.
Ha más típusú operációs rendszereket is hozzáadunk a hálózathoz, olyan adatmegosztási protokollt ajánlott hasznáni, amelyet mindegyik tud értelmezni. Ennek az igénynek a Samba felel meg. A Samba olyan protokollt valósít meg a hálózati fájlmegosztáshoz, amely eredetileg a Windows operációs rendszer számára készült, de ma már az összes főbb operációs rendszerrel kompatibilis. A Samba segítségével a számítógépek nem csak fájlokat oszthatnak meg a helyi hálózaton, hanem nyomtatókat is.
Néhány helyi hálózaton a munkaállomáson történő bejelentkezéskor a tartományvezérlőnek (domain controller) nevezett központi szerver biztosítja a hozzáférést, különféle helyi és távoli erőforrásokhoz. A tartományvezérlő egy Microsoft Active Directory által nyújtott szolgáltatás. A Linux munkaállomások a Samba vagy az SSSD nevű hitelesítési alrendszer segítségével társíthatók a tartományvezérlőhöz. A 4-es verziótól kezdve a Samba tartományvezérlőként is működhet heterogén hálózatokon.
Ha a cél egy felhőalapú számítástechnikai megoldás implementálása, amelynek különböző webalapú adatmegosztási módszereket kell biztosítania, két alternatívát kell figyelembevenni: ownCloud és Nextcloud. A két projekt nagyon hasonló, mivel a Nextcloud az ownCloud spin-offja, amely nyílt forráskódú projektek esetén egyáltalán nem szokatlan. Az ilyen spin-offokat általában fork-nak nevezik. Mindkét program ugyanazokat az alapvető szolgáltatásokat nyújtja: fájlmegosztás és szinkronizálás, megosztható munkaterület (workspace), névjegyek és levelezés, mindezt asztali, mobil és webes felületeken. A Nextcloud privát audio/videókonferenciát is biztosít, miközben az OwnCloud inkább a fájlmegosztásra és a harmadik féltől származó szoftverekkel való integrációra fókuszál. Sok szolgáltatás beépülő modulként érhető el, ezek később, szükség esetén aktiválhatóak.
Mind az ownCloudnak, mind a Nextcloudnak van fizetős verziója, extra funkciókkal és kiterjesztett támogatással. Ezeket a többi kereskedelmi megoldástól az különbözteti meg, hogy a Nextcloud vagy az ownCloud ingyenesen telepíthető privát szerverre, ezzel elkerülhetjük a szenzitív adatok ismeretlen szerveren való tárolását. Mivel minden szolgáltatás a HTTP kommunikációtól függ, és PHP-ban íródott, a telepítést egy korábban konfigurált webszerveren kell végrehajtani, mint például az Apache. Ha fontolóra vennénk az ownCloud vagy a Nextcloud telepítését, figyeljünk arra, hogy a HTTPS is engedélyezve legyen a felhő összes kapcsolatának titkosítása érdekében.
Hálózati adminisztráció
Számítógépek közötti kommunikáció csak akkor lehetséges, ha a hálózat megfelelően működik. A hálózati konfigurációt általában a routeren futó programok hajtják végre, amelyek a hálózat beállításáért és ellenőrzéséért felelnek. Ennek elérése érdekében két alapvető hálózati szolgáltatást használnak, a DHCP-t (Dynamic Host Configuration Protocol - Dinamikus Állomáskonfiguráló Protokoll) és a DNS-t (Domain Name System - Tartománynévrendszer).
A DHCP rendeli hozzá az IP-címet a hosthoz, ha hálózati kábelt csatlakoztatnak hozzá, vagy amikor az eszköz belép egy vezetéknélküli hálózatba. Amikor az internethez csatlakozik, az internetszolgáltató DHCP-szervere biztosít IP-címet az eszköznek. A DHCP-szerver helyi hálózatokban is hasznos, mert automatikusan biztosít IP-címeket az összes csatlakoztatott eszköz számára. Ha a DHCP nincs konfigurálva, vagy nem működik megfelelően, manuálisan kell konfigurálni minden hálózathoz csatlakoztatott eszköz IP-címét. Sem nagy, sem kis hálózatokon nem praktikus a manuális IP-cím konfiguráció, ezért található a legtöbb routerben előre konfirugált DHCP-szerver.
IP-cím szükséges ahhoz, hogy egy másik eszközzel kommunikálhassunk egy IP-hálózaton, de a www.lpi.org
domainnév sokkal könnyebben megjegyezhető, mint a 203.0.113.165
IP-cím. A domainnév önmagában nem elég a hálózati kommunikáció létrehozásához. A DNS-szerver IP-címét az internetszolgáltató DHCP-szervere biztosítja és ezt használja az összes csatlakoztatott rendszer a domainnevek IP-címre történő fordításához.
A DHCP és a DNS beállításai is módosíthatók a router által biztosított webes felületen. Például lehetséges az IP-kiosztást csak ismert eszközökre korlátozni vagy bizonyos eszközöknek fix IP-címet kiosztani. Lehetséges továbbá a szolgáltató által biztosított alapértelmezett DNS-szerver megváltoztatása. Néhány harmadik féltől származó DNS-szerver, például a Google vagy az OpenDNS által biztosított, időnként képes gyorsabb válaszidőt és extra szolgáltatásokat nyújtani.
Programozási Nyelvek
Minden számítógépes program (kliens- és szerverprogramok, asztali alkalmazások és maga az operációs rendszer is) egy vagy több programozási nyelv felhasználásával készült. A programok állhatnak egy fájlból, vagy fájlok százai által alkotott komplex rendszerből, ezeket az operációs rendszer kezelési utasításnak tekinti és a processzor és más eszközök értelmezik és hajtják őket végre.
Számos programozási nyelv létezik különböző célokra és a Linux rendszerek nagyon sokat támogatnak. Mivel a nyílt forráskódú szoftverek tartalmazzák a forráskódokat is, a Linux rendszerek tökéletes feltételeket kínálnak a fejlesztőknek a szoftver megértéséhez, módosításához vagy létrehozásához az igényeknek megfelelően.
Minden program szövegfájlként jön létre, amit forráskódnak nevezünk. Ez a forráskód többé-kevésbé emberbarát nyelven íródott, amely leírja, hogy mit is csinál a program. A processzor nem tudja közvetlenül végrehajtani ezt a kódot. Compileres nyelvek (fordítós) esetén a forráskódot bináris fájllá kell alakítani, amiket már végre tud hajtani a számítógép. A compiler (fordító) felelős a forráskódról futtatható formára történő átalakításért. Mivel a lefordított bináris fájl egyfajta processzorhoz készül el, a programot lehet, hogy újra le kell fordítani, hogy egy másik típusú számítógépen futhasson.
Interpreteres (értelmezős) nyelveken a programot nem kell előzőleg lefordítani, ehelyett az interpreter futás során olvassa és futtatja a forráskódot minden futás során. Ez megkönnyíti és gyorsabbá teszi a fejlesztést, de az interpreteres programok lassabbak, mint a compileres programok.
Íme néhány a legismertebb programozási nyelvek közül:
- JavaScript
-
A JavaScript egy főleg weboldalakon használt programozási nyelv. Eredetileg a JavaScript alkalmazások nagyon egyszerűek voltak, például formok validálásánál használták őket. Napjainkban a JavaScript magasszintű programozási nyelvnek tekinthető és nagyon összetett alkalmazások fejlesztésére használják, nem csak weben, hanem szervereken és mobileszközökön is.
- C
-
A C programozási nyelv szorosan kötődik az operációs rendszerekhez, főleg a Unixhoz, de szinte bármilyen eszközre, bármilyen program megírására használható. A C nagy előnye a rugalmasság és a sebesség. Ugyanaz a C forráskód képes különböző platformokon és operációs rendszereken futni, kis módosítással vagy akár anélkül. Ennek ellenére a program fordítás után csak az adott rendszeren fog futni.
- Java
-
A Java használatának fő előnye, hogy az ezen a nyelven írt programok hordozhatóak, ami azt jelenti, hogy ugyanaz a program különböző operációs rendszereken is futtatható. A név ellenére a Javanak és a JavaScriptnek semmi köze egymáshoz.
- Perl
-
A Perlt leggyakrabban szövegek feldolgozásához használják. Erős hangsúlyt fektet a reguláris kifejezésekre, ez teszi a Perlt a szövegek szűrésére és elemzésére alkalmas nyelvvé.
- Shell
-
A shell, különösen a Bash, nem csak egy programozási nyelv, hanem egy interaktív felület más programok futtatásához. A shell programok, úgynevezett shell szkriptek, automatizálhatják a komplex vagy ismétlődő feladatokat a paranccsorban.
- Python
-
A Python egy nagyon népszerű programozási nyelv tanulók és olyan szakemberek körében, akik nem kifejezetten számítástechnikával foglalkoznak. Miközben fejlett funkciói vannak, a Python jó módszer a programozás könnyebb megközelítésű megtanulására.
- PHP
-
A PHP egy szerveroldali szkriptnyelv, a legtöbbször webes tartalom generálására használják. A legtöbb online HTML fájl nem statikus fájl, hanem szerver által generált, dinamikus tartalom, különböző forrásokból, például adatbázisokból. A PHP programok — néha csak PHP oldalaknak vagy PHP szkripteknek nevezzük őket --, gyakran használatosak ilyen tartalom generálására. A LAMP kifejezés a Linux operációs rendszer, az Apache HTTP szerver, a MySQL (vagy MariaDB) adatbázis és PHP nyelv kombinációjából ered. A LAMP nagyon népszerű megoldásnak számít webszerverek futtatása esetén. A PHP-n túl az összes fent leírt programozási nyelv képes ilyen alkalmazások implementálására is.
A C és a Java compileres nyelvek. Annak érdekében, hogy a rendszer végrehajthassa, a C-ben írt forráskódot bináris gépi kódra konvertálják, míg a Java forráskódot bájtkódra konvertálják egy speciális szoftverkörnyezetben, a Java Virtuális Gépen (Java Virtual Machine). A JavaScript, a Perl, a Shell szkript, a Python és a PHP interpreteres nyelvek, amit szkriptnyelvnek is nevezünk.
Gyakorló Feladatok
-
Határozzuk meg, hogy a következő parancsok Debian csomagkezelő rendszerekhez vagy Red Hat csomagkezelő rendszerekhez tartoznak-e:
dpkg
rpm
apt-get
yum
dnf
-
Melyik parancs használható a Blender telepítésére Ubuntu esetén? A telepítés után hogyan kell futtatni a programot?
-
A LibreOffice családból melyik alkalmazás alkalmas táblázatok készítésére?
-
Melyik nyílt forráskódú böngésző a Google Chrome alapja?
-
Az SVG nyílt szabvány vektorgrafikákhoz. Melyik a legnépszerűbb alkalmazás SVG fájlok szerkesztésére Linux rendszerek esetén?
-
Melyik alkalmazás képes megnyitni és szerkeszteni az alábbi fájlformátumokat:
png
doc
xls
ppt
wav
-
Melyik szoftvercsomag teszi lehetővé a fájlmegosztást helyi Linux és Windows gépek között?
Gondolkodtató Feladatok
-
Tudjuk, hogy a konfigurációs fájlok akkor is megmaradnak, ha a társított csomagokat eltávolítjuk a rendszerről. Hogyan távolítható el automatikusan a cups nevű csomag és a konfigurációs fájljai DEB alapú rendszer esetén?
-
Tegyük fel, hogy sok TIFF képfájlunk van és szeretnénk őket JPEG formátumba konvertálni. Melyik szoftvercsomaggal lehet konvertálni közvetlenül a paranccsorban?
-
Melyik szoftvercsomagot kell telepíteni ahhoz, hogy megnyithassuk azokat a Microsoft Word dokumentumokat, amelyeket egy Windows felhasználó küldött?
-
A linuxquestions.org évente felmérést készít a legnépszerűbb Linux alkalmazásokról. Látogassuk meg a https://www.linuxquestions.org/questions/2018-linuxquestions-org-members-choice-awards-128/ webhelyet és nézzük meg, mely asztali alkalmazások a legnépszerűbbek a tapasztalt Linux felhasználók körében!
Összefoglalás
Ebben a leckében megtanultuk:
-
A fő LInux disztribúciókban használt csomagkezelő rendszereket
-
Azokat a nyílt forráskódú alkalmazásokat, amelyek szerkeszthetik a népszerű fájlformátumokat
-
A sok fontos helyi és internetes hálózat alapjául szolgáló szerverszolgáltatásokat
-
Gyakori programozási nyelveket és felhasználási területüket
Válaszok a Gyakorló Feladatokra
-
Határozzuk meg, hogy a következő parancsok Debian csomagkezelő rendszerekhez vagy Red Hat csomagkezelő rendszerekhez tartoznak-e:
dpkg
Debian csomagkezelő rendszer
rpm
Red Hat csomagkezelő rendszer
apt-get
Debian csomagkezelő rendszer
yum
Red Hat csomagkezelő rendszer
dnf
Red Hat csomagkezelő rendszer
-
Melyik parancs használható a Blender telepítésére Ubuntu esetén? A telepítés után hogyan kell futtatni a programot?
A parancs az
apt-get install blender
. A csomagnevet kisbetűsen kell megadni. A program közvetlenül a terminálból ablender
paranccsal futtatható vagy az alkalmazások menüpontból kiválasztva. -
A LibreOffice családból melyik alkalmazás alkalmas táblázatok készítésére?
A Calc
-
Melyik nyílt forráskódú böngésző a Google Chrome alapja?
A Chromium
-
Az SVG nyílt szabvány vektorgrafikákhoz. Melyik a legnépszerűbb alkalmazás SVG fájlok szerkesztésére Linux rendszerek esetén?
Az Inkscape
-
Melyik alkalmazás képes megnyitni és szerkeszteni az alábbi fájlformátumokat:
png
Gimp
doc
LibreOffice Writer
xls
LibreOffice Calc
ppt
LibreOffice Impress
wav
Audacity
-
Melyik szoftvercsomag teszi lehetővé a fájlmegosztást helyi Linux és Windows gépek között?
A Samba
Válaszok a Gondolkodtató Feladatokra
-
Tudjuk, hogy a konfigurációs fájlok akkor is megmaradnak, ha a társított csomagokat eltávolítjuk a rendszerről. Hogyan távolítható el automatikusan a cups nevű csomag és a konfigurációs fájljai DEB alapú rendszer esetén?
apt-get purge cups
-
Tegyük fel, hogy sok TIFF képfájlunk van és szeretnénk őket JPEG formátumba konvertálni. Melyik szoftvercsomaggal lehet konvertálni közvetlenül a paranccsorban?
ImageMagick
-
Melyik szoftvercsomagot kell telepíteni ahhoz, hogy megnyithassuk azokat a Microsoft Word dokumentumokat, amelyeket egy Windows felhasználó küldött?
A LibreOffice-t vagy az OpenOffice-t
-
A linuxquestions.org évente felmérést készít a legnépszerűbb Linux alkalmazásokról. Látogassuk meg a https://www.linuxquestions.org/questions/2018-linuxquestions-org-members-choice-awards-128/ webhelyet és ismerjük meg, mely asztali alkalmazások a legnépszerűbbek a tapasztalt Linux felhasználók körében!
Böngésző: Firefox. Levelezőkliens: Thunderbird. Médialejátszó: VLC. Pixelgrafikus program: GIMP.