-
Fodor Patrik authoredFodor Patrik authored
- 1. videó segédlet
- Mi is a Linux
- CLI, terminál, shell
- CLI
- Terminál
- Shell
- Pár ismertebb shell
- sh
- bash
- zsh
- fish
- Hogy is néz ki?
- Pár shelles fogalom
- Mi a parancs?
- Redirekció >
- Pipe |
- Shell execution
- Manual page man
- Egyéb hasznos shell cuccok
- Szövegszerkesztők
- Nano
- Egyebek
- Csomagkezelés
- Mi a csomag?
- Hogyan telepítsünk csomagokat?
- Különböző csomagkezelők
- Hogyan néz ki a Linux fájlrendszere?
- Könyvtárak
- root /
- home /home
- konfigurációs fájlok /etc
- /var
- /usr
- /lib
- Jogosultságkezelés
- Jogosultságok
- Speciális jogosultságok
- Különböző alanyok
1. videó segédlet
Mi is a Linux
CLI, terminál, shell
Ez a fejezet sok fogalmat tartalmaz, kérlek ne magold be ezeket. Csupán annyi a célja a fejezetnek, hogy akik nemigazán használtak CLI-t, azoknak bemutasson pár alapelemet.
A fő cél, hogy értsd, tudd használni; nem az, hogy tudd a definíciókat.
CLI
Command Line Interface, egy felhasználói felület, ami alapvetően szövegesen kommunikál a userrel. Szöveg be → szöveg ki. Ennél sokkal bővebben nem hiszem, hogy bárkinek is be kell mutatni, hogy mit jelent.
Terminál
Ez jeleníti meg a karaktereket és adja meg a programnak a beírt karaktereket. Régebben külön céleszközök voltak, ma már programok.
Miki: ide rizsa pls
Shell
Egy olyan CLI program, amibe parancsokat lehet bepötyögni és a shell a megfelelő programokat elindítva és összekapcsolva(erről később lesz szó) lefuttatja azt.
Miki: ide is
Pár ismertebb shell
sh
Bourne shell (a készítőjének neve után) vagy POSIX shell
Egy butább shell, ami megtalálható minden UNIX-szerű számítógépen. Jó régen, az eredeti UNIX-hoz hozták létre a Bourne shell-t, ami később bővítve, majd specifikálva lett a POSIX szabványban.
bash
Bourne-again shell, dupla szójáték.
A bash az alapértelmezett shell a Linux disztribúciók túlnyomó többségén. Később ezzel fogunk dolgozni. Kellően okos és többnyire elvárható, hogy ott legyen mindenhol, ahova beléptek. A hatalmas elterjedtsége (és nagy kompatibilitása) miatt esett erre a választás.
zsh
zsh vagy Z shell.
Gyakorlatilag a bash kibővítése, a legtöbb Linuxos disztrón csomagkezelővel telepíthető, emellett macOS-en alap shell. Minden bash parancs működik itt is, de nem minden zsh parancs működik bash-ben.
fish
fish, friendly interactive shell.
Különlegessége, hogy kifejezetten felhasználóbarátnak van tervezve, alapbeállításokkal is nagyon kényelmes használni. Azonban nem POSIX shell, vagyis a következőekben bemutatott parancsok nem feltétlenül működnek benne.
Innentől bash-ről lesz szó. Ha olyat olvasol, hogy "írjuk be a shellünkbe", akkor ott a "bashünkre" gondolunk.
Hogy is néz ki?
TL;DR: sokféleképpen. Például sok helyen így néz ki az alap beállításokkal:
[mike@thinkyboi ~]$ ls *.pdf
mozilla.pdf
[mike@thinkyboi ~]$ ls *.txt
asd.txt ize.txt metrics.txt pcr2.txt pcrtouse.txt pcr.txt
[mike@thinkyboi ~]$ ls *.txt | grep rt
pcrtouse.txt
[mike@thinkyboi ~]$
Ez mit is mutat?
-
[mike@thinkyboi ~]$
: a prompt- mutatja, hogy a
mike
user van belépve - a
thinkyboi
nevű számítógépre - éppen a
~
mappában vagyunk - sima user jogosultságokkal
$
- mutatja, hogy a
-
ls *.pdf
: egy parancs, ami minden .pdf végű fájlt kilistáz -
ls *.txt
: egy parancs, ami minden .txt végű fájlt kilistáz -
ls *.txt | grep rt
: egy parancs, ami minden .txt végű fájlt kilistáz, mely nevében megtalálható az "rt"
Ne ijedjünk meg az ismeretlen fogalmaktól, erről mind lesz szó bővebben.
Pár shelles fogalom
Mi a parancs?
>
Redirekció
|
Pipe Shell execution
man
Manual page Egyéb hasznos shell cuccok
Szövegszerkesztők
Nano
Egyebek
Csomagkezelés
Mi a csomag?
A különböző programokat nevezzük csomagoknak (package), melyek a bináris fájlon kívül különböző konfigurációs fájlokat és a program más programoktól való függőségeit is tartalmazza.
Hogyan telepítsünk csomagokat?
A programok telepíthetjük kézzel (8.2-es fejezet), de ez általában nehézkes művelet és nem valami hatékony, ezért csomagkezelőt (package maganer) szoktunk használni a csomagok telepítéséhez. A csomagkezelő egy egyszerű program, mellyel telepíthetünk, frissíthetünk, eltávolíthatunk és kereshetünk csomagokat.
Mi az apt nevű csomagkezelőt fogjuk használni a továbbiakban.
[patrik@patrik-laptop ~]$ sudo apt update
[patrik@patrik-laptop ~]$ sudo apt search cowsay
[patrik@patrik-laptop ~]$ sudo apt install cowsay
[patrik@patrik-laptop ~]$ sudo apt upgrade
[patrik@patrik-laptop ~]$ sudo apt remove cowsay
Az apt update
paranccsal frissíthetjük az apt adatbázisát, mely a
csomagok elérhetőségéről tárol adatokat.
Az apt search a_csomag_neve
paranccsal a csomagkezelő megkeresi a
hasonló nevű csomagokat és kilistázza azokat.
Az apt install a_csomag_neve
paranccsal a megadott csomagot telepíti a
csomagkezelő, ha azt megtalálja.
Az apt upgrade
paranccsal a telepített csomagokhoz elérhető frissítéseket
telepíti a csomagkezelő.
Az apt remove a_csomag_neve
paranccsal a megadott csomag távolítható el.
Különböző csomagkezelők
A különböző Linux disztribúciók különböző csomagkezelőket használnak, ilyenek például az alábbi táblázatban található csomagkezelők is. Néhány csomagkezelő disztribúcióhoz van kötve, azonban egyre jobban kezdenek elterjedni a disztribúcióktól független csomagkezelők is.
-
apt
Debian és Ubuntu alapú disztrókon -
dnf
Fedora -
pacman
Arch Linux -
flatpak
éssnap
disztrófüggetlen
parancs | apt | dnf | pacman | snap | flatpak |
---|---|---|---|---|---|
telepítés | install | install | -S | install | install |
adatbázis frissítése | update | check-update | -Sy | automatikus | a frissítéssel együtt ez is megtörténik (update) |
frissítés | upgrade | upgrade | -Syu | automatikus (ha kézzel akarod: refresh) | update |
törlés | remove | remove | -R | nincs ilyen | nincs ilyen |
törlés beállításokkal | purge | nincs ilyen | -Rn | remove | uninstall |
keresés | search | search | -Ss | find | search |
Hogyan néz ki a Linux fájlrendszere?
Könyvtárak
[patrik@patrik-laptop ~]$ tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib
├── lost+found
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/bin
├── srv
├── sys
├── tmp
├── usr
└── var
/
root
/home
home
/etc
konfigurációs fájlok
/var
/usr
/lib
Jogosultságkezelés
Jogosultságok
olvasás - r
írás - w
végrehajtás - x
Speciális jogosultságok
Különböző alanyok
tulajdonos - owner
csoport - group
minden felhasználó - all users