Ubuntuban a leggyakoribb telepítőfájlok (.deb kiterjesztésű fájlok) futtatása pofon egyszerű. A fájlkezelőben ha duplán rákattintasz egy ilyen típusú fájlra, megnyílik az Ubuntu szoftverközpont, majd ott a jelszavad megadása után telepítheted is a programot (más kérdés, hogy az így telepített program nem lesz automatikusan frissítve, neked kell figyelned az adott program honlapját, ha új verziót szeretnél telepíteni).
Ámde egyrészt sok Debian-, vagy akár Ubuntu alapú linux disztribúcióban nincs alapból telepítve az Ubuntu szoftverközponthoz hasonló program (tudom ajánlani persze a GDebi telepítését is), másrészt vannak olyan telepítőfájlok (pl. a shell script alapú telepítők), amik csak parancssorból futtathatók.
Ebben a bejegyzésben átnézzük a Debian és Ubuntu alapú linux disztribúciókban szereplő egyes telepítőfájlok parancssorban történő telepítésének módszerét.

ubuntu_ctr_alt_f1_install_htop.jpg

Parancssort Ubuntuban például a ctr + alt + t billentyűkombinációval lehet megnyitni. Ekkor a parancssor egy grafikus felületi ablakban nyílik meg. Más disztribúciókon ez a billentyűkombináció általában nem működik, de valamilyen tálca ikonról el lehet indítani a grafikus felületi ablakban megnyíló parancssort (általában terminálnak, vagy konzolnak hívják), de mivel akár egy disztribúció is használható különböző grafikus felületekkel is (pl. gnome, kde, unity, mate, cinnamon, phanteon, lxde, xfce, satöbbi), ezért itt most nem részletezem, hogy az egyes grafikus felületeken hol lehet megtalálni a terminál ikonját.
Létezik egy másik billentyűkombináció, a ctr + alt + f1, mely esetén a grafikus felülettől független, úgynevezett virtuális terminált nyílik meg a teljes képernyőn, aminek a használatához külön be kell jelentkezni. Erről a parancssoros munkamenetről alt + f7-tel lehet visszatérni grafikus felületre. Biztonsági okokból érdemes lehet kijelentkezni a parancssoros munkamenetből egy egyszerű exit paranccsal, ha már nincs rá szükség.
Egyébként egy korábbi cikkemben már említést tettem erről a billentyűkomninációról, ha a grafikus felületen befagy egy program, akkor a ctr + alt + f1 billentyűkombinációt és a htop programot szoktam használni az adott program leállítására, ami az esetek többségében beválik.
(Más linux disztribúciókon (pl. CentOS) előfordulhat, hogy a ctr + alt + f1 helyett más billentyűkombinációval lehet előhozni egy ilyen parancssoros munkamenetet).

Linuxon a programok telepítéséhez rendszergazda jogosultság szükséges. Számos disztribúcióban ha egy parancs elé írjuk, hogy sudo, akkor az a parancs rendszergazda jogosultsággal lesz futtatva. Ekkor a saját felhasználónk jelszavát kell megadnunk. Persze ez csak akkor működik, ha a felhasználónevünk szerepel a sudo csoportban (ezt a groups paranccsal tudjuk megnézni), de az otthoni gépünkön ez szinte biztos, hogy így van.
Ha olyasmi hibaüzenetet kapunk, hogy "not enough permissions", vagy "acces denied", akkor megoldás lehet, ha az adott parancs elé sudo-t írunk.
Ha nem akarunk minden parancs elé sudo-t írni, akkor futtassuk a sudo -s parancsot, így azt követően minden parancs rendszergazda jogosultsággal lesz végrehajtva, egészen addig, amíg amíg ki nem lépünk exit vagy logout paranccsal, vagy be nem zárjuk a parancssort.
Az is elképzelhető, hogy a fájl tulajdonosát, illetve a jogosultságokat is módosítanunk kell, ahhoz, hogy egy fájlt futtatni tudjunk. A fájl tulajdonosának módosítása:
chown felhasználónév:csoportnév elérési_út/fájlnév
Futtatási pedig jogot a következő paranncsal tudunk adni egy fájlnak:
chmod u+x elérési_út/fájlnév
Ha egy egész könyvtár tartalmát módosítani akarjuk, akkor pedig így használjuk ezen parancsokat:
chown -R felhasználónév/csoportnév elérési_út/könyvtárnév
chmod -R u+x elérési_út/könyvtárnév
Debianban sudo helyett su root parancs van, és ekkor nem a saját felhasználónevünk jelszavát kell megadni, hanem a root (rendszergazda) felhasználó jelszavát.)

.deb kiterjesztésű fájlok telepítése Ubuntu szoftverközpont, vagy GDebi nélkül

(Pl. mondjuk a Steam, vagy a Virtualbox telepítőfájljai).

Parancssorban lépjünk be abba a könyvtárba, ami tartalmazza a telepítendő .deb kiterjesztésű fájlt. Pl. cd ~/Downloads/ paranccsal.
A telepítéshez futtassunk egy ehhez hasonló parancsot:
sudo dpkg -i ./steam.deb
Majd a program függőségeinek telepítéséhez futtassuk a következő parancsot:
sudo apt-get install -f

Telepítés apt-vel

Debian alapú Linuxokon (pl. Debian, Ubuntu, Linux Mint, Elementary OS, Zorin OS) dpkg csomagkezelő van. Ennek a népszerű frontendje (egy olyan program, ami a dpkg-n alapul, de kényelmesebben használható) az apt. Az apt-vel sok programot telepíthetünk parancssorban, ami alapból nincs telepítve (disztribúciófüggő, hogy milyen programok vannak alapból telepítve). Ezek lehetnek akár grafikus felületen, vagy parancssorban futó programok (pl. Midnight Commander, htop, strings). Például a htop (parancssorban futó feladatkezelő) így telepíthető:

sudo apt-get install htop

Egyszerre akár több program is telepíthető: sudo apt-get install htop mc

Az apt-vel alapból telepíthető programok között apt-cache search kifejezés paranccsal lehet keresni. Például: apt-cache search emacs

Telepítés automatikus frissítéssel (PPA alapján)

Természetesen nem lehet minden programot telepíteni az apt-vel alapból. Vannak olyan programok, amiknek az elérhetőségét (PPA-ját) hozzá kell adni az apt adatbázisához, hogy telepíteni lehessen őket.

Nézzünk erre egy példát, mondjuk az OBS Studiot, amivel a képernyőről lehet videókat készíteni, illetve streamelni (14.04-es verziónál régebbi Ubuntuban nem telepíthető).
Ha megkeressük az OBS Studio honlapján a letöltés részleget, és azon belül is a linuxot, akkor pl. Ubuntu esetén könnyen megtalálhatjuk azokat a parancsokat, amiket csak le kell futtatni, és a program települ is. (Ctr + Shift + V billentyűkombinációval tudsz a parancssorba szöveget beilleszteni).

obs_ppa.png

A program telepítéséhez szükséges előbb telepíteni az ffmpeg-et is, a következő parancsokkal:

sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next
sudo apt-get update
sudo apt-get install ffmpeg

Ha esetleg nem vagy biztos abban, hogy már telepítve van-e, a dpkg -l paranccsal tudod kilistázni a már telepített programokat, és a dpkg -l | grep ffmpeg paranccsal pedig azokat a sorokat, amikben szerepel az ffmpeg kifejezés.

Az OBS Studiot tehát ezekkel a parancsokkal lehet telepíteni:

sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt-get update
sudo apt-get install obs-studio

Az első parancs hozzáadja a program elérhetőségét az apt adatbázisához, a második letölti az egyes programok újabb verzióit, a harmadik pedig telepíti az OBS Studiot.

Előfordulhat, hogy egy PPA más formátumban van megadva. Jó példa erre a CodeBlocks fejlesztői környezet, amiben pl. C és C++ nyelven írt programokat lehet fordítani/futtatni (erről részletesebben a másik blogomon írtam).

codeblocks_ppa.png

Ha megkeressük a CodeBlocks honlapján a letöltés részleget, azon belül pedig az Ubuntut, akkor ezt találhatjuk ott: https://launchpad.net/~damien-moore/+archive/ubuntu/codeblocks-stable

Ezt a címet természetesen internetes böngészőben is meg lehet tekinteni, de a parancssoros telepítéshez át kell alakítani olyan formába, amit az add-apt-repository parancs kezelni tud.

ppa:készítő_neve/program_neve, vagyis:

ppa:damien-moore/codeblocks-stable

Így az eddigiek alapján ki lehet találni a telepítéshez szükséges parancsokat is:

sudo add-apt-repository ppa:damien-moore/codeblocks-stable
sudo apt-get update
sudo apt-get install codeblocks

Egy programot törölni és a PPA-ját eltávolítani a következő parancsokkal lehet:

sudo apt-get remove codeblocks-stable
sudo add-apt-repository --remove ppa:damien-moore/codeblocks-stable

Parancssorban futtatható shell script alapú telepítőfájlok

Általában .sh.run, esetleg .bin kiterjesztésű fájlok, amiket szövegszerkesztővel megnyitva olvasható szöveget láthatsz. Ámde ezek akár 100 megás fájlok is lehetnek, így nagyon sokáig eltarthat, amíg a szövegszerkesztő megnyitja őket. Éppen ezért kifejezetten ellenjavallt az 1-2 megabájt feletti shell script fájlokat szövegeszerkesztővel megnyitni. Szerencsére létezik egy parancs, amivel gyorsan meg tudod nézni egy fájl első 10 sorát, vagy akár többet is.

Lépj be a fájlt tartalmazó könyvtárba. Ott pedig futtasd a következő parancsot: cat ./fájlnév | head
Ha pedig mondjuk a fájl első 20 sorát szeretnéd megjeleníteni: cat ./fájlnév | head -20

shell_script.png

bash_script.png

Egy shell script fájl első sorában általában valami ilyesmi szerepel: #!/bin/sh, esetleg #!/bin/bash

A TeamSpeak 3 telepítője jó példa erre. (A TeamSpeak 3 segítségével különböző szerverekre lehet csatlakozni, ahol különböző szobákban tudnak egymással mikrofonnal beszélgetni a tagok).

Nem biztos, hogy az Ubuntu szoftverközpontban, és ahhoz hasonló helyeken megtalálható, de a program honlapjáról le lehet tölteni a linuxos telepítőt.

teamspeak_download.png

(Mellékesen megjegyzem, hogy pl. Ubuntuban láttam olyan megoldást, hogy egy grafikus felületi fájlkezelőben ha duplán rákattintasz egy shell script fájlra akkor megnyílik egy ablak, ahol kiválaszthatod, hogy futtatni szeretnéd a fájlt (Run) vagy pedig egy kezdetleges szövegszerkesztővel megnyitni (Read). De egyrészt ezt a lehetőséget nem mindig kínálta fel a fájlkezelő (hanem sokszor automatikusan szövegszerkesztővel nyitotta meg a fájlt), másrészt ez esetben nem biztos, hogy könnyen megoldható a rendszergazda jogosultsággal történő futtatás, amire esetleg szükség lehet.)

Egy shell script fájl futtatását tehát parancssorban érdemes elvégezni a következő paranccsal: sh ./fájlnév (bash script esetén bash ./fájlnév), illetve "not enough permissions" (nincs elegendő jogosultságod) hibaüzenet esetén: sudo sh ./fájlnév
Utóbbi esetben esetleg az is segíthet, ha futtatási jogot adsz a fájlnak (ha már van rajta futtatási jog, akkor ez a parancs nem csinál semmit): sudo chmod u+x ./fájlnév

teamspeak_install.png

Ahogy az a képen is látható, a TeamSpeak 3 shell script telepítője figyelmeztet, hogy először megjeleníti a licensz szerződés szövegét, amiből q billentyűvel lehet kilépni, és a program csak ezt követően telepíthető.

A TeamSpeak 3 telepítője létrehoz egy alkönyvtárat (TeamSpeak3-Client-linux_amd64) abban a könyvtárban, ahol a telepítőfájlt elindítod. Az ebben a könyvtárban lévő ts3client_runscript.sh fájllal lehet a programot elindítani. A telepítőfájlhoz hasonlóan el lehet indítani parancsorból, de akár asztali parancsikont is lehet készíteni hozzá, amiben elég megadni a fájl elérési útját és a nevét. Nálam ez a következő volt az alábbi kép készítésekor: /home/chrs/Downloads/TeamSpeak3-Client-linux_amd64/ts3client_runscript.sh

teamspeak_shortcut.png

Parancssorban futtatható bináris alapú telepítőfájlok

Az ilyen típusú fájlok általában nem rendelkeznek kiterjesztéssel, de előfordulhat, hogy pl. .bin vagy .run a kiterjesztésük (ezek ugyebár a Windowban található .exe kiterjesztésű fájlok megfelelői). Tartalmuk kódolt, így ha megpróbálnál a cat ./fájlnév | head paranccsal egy ilyen fájlba belenézni, akkor a kódolt tartalomban csak néhány helyen találnál olvasható szöveget. Adott esetben hasznos lehet a strings paranccsal belenézni egy ilyen fájlba: strings ./fájlnév | head, ami az olvasható részeket gyűjti össze a bináris fájlokból.

binary.png

Az ilyen fájlok egész egyszerűen így indíthatók el parancssorból: ./fájlnév. Természetesen ha rendszergazda jogosultság szükséges a fájl futtatásához, akkor elé kell írni egy sudo-t. Bizonyos esetekben futtatási jogot kell adni a fájlnak a chmod u+x ./fájlnév paranccsal. Az ls -al ./fájlnév paranccsal lehet megnézni az adott fájlhoz tartozó jogosultságokat. Ha nincs közöttük x (csak r és w), akkor nincs futtatási jog.

Például az xampp telepítője így futtatható: sudo ./xampp-linux-x64-7.0.4-0-installer.run

binary_run.png

(Az xampp egyébként egy népszerű webszerver programcsomag, ami tartalmaz például Apache PHP script értelmezőt, MariaDB MyQSL adatbázis szervert, myPHPadmint és egyéb programokat. Pl. ha bemásoljuk a PHP scriptjeinket a /opt/lampp/htdocs/ könyvtárba, akkor futtathatjuk őket a böngészőknben pl. ily módon: http://localhost/pelda.php. Webfejlesztők szinte biztos, hogy találkoznak vele. Linuxon való használatához a honlapján egész jó leírást lehet találni).

Sajnos előfordulhat, hogy később majd más telepítőfájlt adnak ki egy-egy program fejlesztői. Például amikor ezt a cikket írtam, a TeamSpeak 3 telepítője shell script alapú volt, de lehet, hogy a jövőben a készítők áttérnek bináris alapúra, vagy esetleg .deb alapúra.
Éppen ezért nem biztos, hogy az itt felsorolt konkrét példák később is érvényesek lesznek, de talán ezek alapján ki lehet majd következtetni, hogy hogyan lehet telepíteni egyes programokat a parancssorból.

Kellemes időtöltést!

A bejegyzés trackback címe:

https://jateklinuxon.blog.hu/api/trackback/id/tr78597380

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.