30+ často kladených otázek a odpovědí na rozhovory s Linuxem [2023]

Ačkoli operační systém Linux započal svou cestu v roce 1991 jako zájmový projekt Linuse Torvaldse, vypracoval se do pozice dominantní síly v oblasti pohánění superpočítačů, webových serverů, inteligentních telefonů a mnoha dalších technologií.

Linux si získal popularitu díky své stabilitě, bezpečnosti a efektivnímu hospodaření se zdroji. V průběhu let se užívání Linuxu a poptávka po něm neustále zvyšují a zdá se, že tento trend bude pokračovat i v budoucnu.

Podle údajů Statista z roku 2021, 47 % profesionálních vývojářů používá Linux. Ve stejném roce 9. výroční zpráva o pracovních pozicích s otevřeným zdrojovým kódem ukázala, že vývoj a správa Linuxu jsou druhou nejvíce žádanou dovedností při náboru manažerů a vývojářů.

Znalosti Linuxu jsou nezbytné v oblastech jako je vývoj softwaru, správa systémů, DevOps, správa sítí, bezpečnostní inženýrství, datová věda a mnoho dalších. Pokud vás tedy některá z těchto oblastí zajímá, je velmi pravděpodobné, že během pohovoru budete dotazováni na vaše zkušenosti s Linuxem.

Abychom vám pomohli se připravit, sestavili jsme přehled některých klíčových otázek, které se pravděpodobně objeví na pohovoru ohledně Linuxu, spolu s jejich odpověďmi.

Co je to Linux?

Odpověď: Linux je svobodný a open-source operační systém, jehož autorem je Linus Torvalds v roce 1991. Byl zveřejněn pod licencí GNU General Public License (GPL).

Proč používat Linux?

Odpověď: Existuje několik výhod spojených s používáním operačního systému Linux. Především, Linux se vyznačuje vysokou úrovní bezpečnosti a je prakticky imunní vůči útokům škodlivého softwaru.

Linux je rovněž mimořádně stabilní, spolehlivý a jen zřídkakdy dochází k jeho selhání, což je důvod, proč mnoho serverů využívá právě Linux. Další výhodou je jeho nenáročnost – vyžaduje méně operační paměti (RAM) a celkové paměti, což umožňuje jeho použití i na starších počítačích.

Navíc, Linux je zdarma, s otevřeným zdrojovým kódem, pravidelně aktualizovaný a vysoce přizpůsobitelný. Uživatelé si tak mohou vyladit jakýkoli aspekt operačního systému dle svých potřeb. Existují i různé distribuce optimalizované pro specifické účely, jako jsou hackeři, programátoři nebo i běžní uživatelé.

Jaké jsou základní součásti operačního systému Linux?

Odpověď: Operační systém Linux se skládá ze tří hlavních komponent.

  • Jádro: Je to základní část operačního systému Linux. Představuje nejnižší vrstvu v operačním systému a přímo komunikuje s hardwarem počítače. Jádro spravuje hardwarové zdroje, jako jsou procesor, paměť a úložiště, a poskytuje služby ostatním částem operačního systému a programům spouštěným v počítači.
  • Shell: Toto je rozhraní příkazového řádku, které uživatelům umožňuje komunikovat s operačním systémem a spouštět programy. Funguje jako prostředník mezi uživateli a jádrem, interpretuje příkazy uživatelů a provádí je.
  • Aplikace: Tyto programy běží nad operačním systémem a poskytují specifické funkce, například prohlížení webu, zpracování textu nebo přehrávání hudby.

Tyto tři prvky – jádro, shell a aplikace – společně tvoří operační systém Linux.

Proč je Linux považován za bezpečnější?

Odpověď: Klíčovým faktorem, který přispívá k bezpečnosti Linuxu, je jeho open-source charakter. Mnoho vývojářů pravidelně kontroluje zdrojový kód, a když je objevena chyba nebo zranitelnost, je na to upozorněno v linuxovém fóru a problém je vyřešen během několika dnů.

Navíc, způsob, jakým Linux spravuje práva a oprávnění, zajišťuje, že přístup s právy roota není ve výchozím nastavení udělen běžným uživatelům.

Toto omezuje rozsah škod, které může způsobit případný virus. Nižší podíl uživatelů mezi běžnou populací také přispívá k bezpečnosti, protože hackeři preferují cílit na operační systémy s větší uživatelskou základnou.

Co je to linuxové jádro?

Odpověď: Jedná se o nejnižší vrstvu operačního systému Linux a jeho klíčovou součást. Jádro se nachází mezi hardwarem a ostatními částmi operačního systému Linux. Jádro komunikuje s hardwarem počítače a spravuje hardwarové zdroje, jako je paměť, procesor a úložiště.

Stará se také o to, aby různé úkoly a procesy měly k dispozici potřebné zdroje pro hladký a efektivní chod.

Jaký je rozdíl mezi Linuxem a Unixem?

Odpověď: Linux je bezplatný operační systém s otevřeným zdrojovým kódem, který vytvořil Linus Torvalds, zatímco Unix je přenositelný, proprietární, multitaskingový operační systém pro více uživatelů vyvinutý společností AT&T. Unix není open-source, na rozdíl od Linuxu.

Co je GUI?

Odpověď: Grafické uživatelské rozhraní (GUI) je forma uživatelského rozhraní operačního systému, která uživatelům umožňuje s ním pracovat prostřednictvím grafických prvků, jako jsou okna, ikony, nabídky, ukazatele a posuvníky (WIMPS).

S grafickými prvky se na dotykových obrazovkách manipuluje pomocí ukazovacích zařízení, jako je myš, stylus, trackball nebo prst.

Co je CLI?

Odpověď: Rozhraní příkazového řádku (CLI) je textové uživatelské rozhraní, které uživatelům umožňuje komunikovat s počítačovým systémem zadáváním příkazů jako textových řetězců do terminálu.

Počítačový systém reaguje na tyto příkazy jejich provedením nebo zobrazením požadovaných informací.

Vysvětlete Linux Shell.

Odpověď: Linuxový shell je program, který interpretuje a provádí příkazy zadané prostřednictvím rozhraní příkazového řádku. Umožňuje uživatelům komunikovat s operačním systémem a ovládat tak svůj počítač.

Shell přijímá příkazy ve formátu čitelném pro člověka, interpretuje je do podoby srozumitelné pro jádro a poté je předává jádru k provedení.

Typy shellů v Linuxu.

Odpověď: V Linuxu existuje několik typů shellů, každý optimalizovaný pro specifické použití. Mezi různé typy shellů v Linuxu patří:

  • Bourne Shell, označovaný jako sh
  • Bourne Again Shell, označovaný jako Bash
  • C Shell, označovaný jako csh
  • KornShell, označovaný jako ksh
  • Z Shell, označovaný jako zsh
  • Friendly Interactive Shell, označovaný jako fish
  • Debian Almquist Shell, označovaný jako dash
  • TENEX C Shell, označovaný jako tcsh

Uvedeny jsou některé z nejběžnějších linuxových shellů.

Co je to skript Shell?

Odpověď: Jedná se o textový soubor obsahující posloupnost příkazů, které má linuxový shell provést v pořadí, v jakém jsou uvedeny.

Shell skripty obsahují příkazy, které by jinak musely být zadávány do rozhraní příkazového řádku jeden po druhém. Shell skripty jsou užitečné pro automatizaci opakujících se úloh nebo pro spouštění dávkových operací.

Vysvětlete oprávnění souborů v Linuxu.

Odpověď: V Linuxu existují tři základní typy oprávnění k souborům:

  • Číst (r): Toto oprávnění umožňuje uživateli otevřít a číst obsah souboru nebo zobrazit obsah adresáře. Uživatel však nemůže soubor ani obsah adresáře měnit.
  • Zápis (w): Oprávnění k zápisu do souboru umožňuje uživateli upravovat jeho obsah. Oprávnění k zápisu do adresáře umožňuje uživateli přidávat, odstraňovat a přejmenovávat soubory v adresáři.
  • Spustit (x): Umožňuje uživateli spustit soubor jako program. V Linuxu uživatel nemůže spustit program, pokud nemá oprávnění ke spuštění.

Tyto tři typy tvoří základní oprávnění k souborům v operačním systému Linux.

Jak udělit oprávnění v Linuxu?

Odpověď: Pro udělování oprávnění v Linuxu se používá příkaz chmod, což je zkratka pro ‚change mode‘. Příkaz chmod se používá ke změně oprávnění souborů nebo adresářů.

Oprávnění lze udělit různým skupinám uživatelů: skupině (g), uživateli (u), ostatním (o) a všem uživatelům (a). Oprávnění pro tyto uživatele lze udělit přidáním (+) nebo odebráním (-) práv pro čtení (r), zápis (w) a spouštění (x).

Syntaxe pro změnu oprávnění je následující:

chmod permissions file/directory-name

Jak zjistit, kde je soubor uložen v Linuxu?

Odpověď: Chcete-li zjistit, kde je soubor uložen v Linuxu, nejprve spusťte příkaz:

find <fileName>

pro vyhledání souboru v dostupných adresářích. Pokud je nalezen soubor se zadaným názvem souboru (fileName), můžete použít následující příkaz:

realpath <fileName>

pro zjištění absolutní cesty k místu, kde je soubor uložen.

Jak odstranit adresář v Linuxu?

Odpověď: Chcete-li odstranit adresář v Linuxu, můžete použít příkaz rmdir. Tento příkaz znamená „remove directory“ a používá se k odstranění prázdných adresářů.

Například, chcete-li odstranit prázdný adresář s názvem test, provedete:

rmdir test

Chcete-li odstranit neprázdný adresář, spusťte příkaz rm spolu s jeho parametrem -r:

rm -r sample

Co je swapovací prostor?

Odpověď: Jedná se o vyhrazenou oblast na pevném disku, obvykle ve formě oddílu, kterou používá operační systém Linux, když je operační paměť (RAM) plná.

Pokud je zapotřebí více paměti a RAM je plná, neaktivní nebo jen zřídka používané stránky jsou přesunuty z RAM do odkládacího prostoru, čímž se uvolní místo pro další procesy v RAM.

Co je LILO?

Odpověď: Linux Loader (LILO) je zavaděč pro operační systém Linux. Zavaděč je program, který po zapnutí počítače načte operační systém do paměti a spustí jej.

Po spuštění počítače LILO vyhledá linuxové jádro a další potřebné programy a nahraje je do paměti. Jakmile je to hotovo, linuxové jádro se spustí.

Co je přesměrování?

Odpověď: Přesměrování mění zdroj standardního vstupu, kterým je obvykle klávesnice, a cíle standardního výstupu a standardní chyby, což je obvykle obrazovka.

Například, pomocí přesměrování lze vstup získat ze souboru a výstup i informace o chybách lze uložit do souboru.

Co je seskupení příkazů?

Odpověď: Jedná se o způsob, jak provádět více příkazů současně jako jeden celek. Seskupení umožňuje provádět více příkazů jako jeden blok.

Seskupování často používá funkce, jako je přesměrování a propojení, pro vytváření složitějších skriptů a automatizaci úloh.

Co je bezstavový linuxový server?

Odpověď: Tento typ serveru neukládá žádné informace o stavu ani data lokálně. Veškeré ukládání dat se odehrává na straně klienta a server nevede záznamy o datech, která poskytuje.

Co je to Network Bonding?

Odpověď: Jedná se o techniku, která kombinuje více síťových rozhraní do jednoho logického rozhraní. Zvyšuje se tak šířka pásma sítě, propustnost i záložní konektivita a zlepšuje se výkon sítě.

Co je příkaz grep?

Odpověď: Příkaz Global regular expression print (Grep) je nástroj příkazového řádku, který se používá k vyhledávání vzorů v souborech. Zobrazuje všechny řádky souboru, které obsahují hledaný vzor. Hledaný vzor je obvykle regulární výraz, často řetězec znaků.

Co jsou démoni?

Odpověď: Démoni jsou obslužné programy, které běží na pozadí bez zásahu uživatele. Démoni provádějí úkoly, jako je monitorování periferií a provádění údržby systému. Démoni zajišťují hladký chod operačního systému.

Co jsou symbolické odkazy?

Odpověď: Symbolický odkaz, nazývaný také symlink nebo měkký odkaz, je typ souboru v operačním systému Linux, který odkazuje na jiný soubor nebo adresář. Je to ekvivalent zástupce v operačním systému Windows.

Symbolické odkazy zlepšují přístup k souborům, které by jinak byly obtížně nebo nepohodlně dostupné.

Co jsou environmentální proměnné?

Odpověď: Jsou to dynamické proměnné definované v shellu a používají se k ukládání informací, které programy potřebují pro svůj běh, nebo ke konfiguraci svého chování tak, aby vyhovovalo potřebám uživatele.

Příklady některých proměnných prostředí zahrnují LANG, která uchovává výchozí jazyk v systému, TEMP, která udává adresář používaný pro dočasné soubory, a HOME, která mimo jiné ukazuje domovský adresář aktuálního uživatele.

Rozlišujte mezi příkazy Bash a DOS pro prohlížení obsahu souborů.

Odpověď: Příkazy, které lze použít v bash shellu k zobrazení obsahu souboru, zahrnují:

  • cat – vypíše obsah souboru na obrazovku
  • nl – podobně jako cat, ale před zobrazený obsah přidává čísla řádků
  • less – čte obsah souboru po stránkách (obrazovkách)
  • head – zobrazí na obrazovce prvních 10 řádků souboru
  • tail – zobrazí na obrazovce posledních 10 řádků souboru

V prostředí DOS lze k zobrazení obsahu souboru použít následující příkazy:

  • type – zobrazí obsah souboru beze změn
  • more – zobrazí obsah souboru po obrazovkách

Bash shell a DOS používají různé příkazy pro zobrazení obsahu souborů.

Jmenujte některé distribuce Linuxu.

Odpověď: Linuxové distribuce jsou verze Linuxu postavené na linuxovém jádru, které jsou zabaleny a distribuovány uživatelům.

Mezi oblíbené distribuce Linuxu patří Ubuntu, Fedora, Debian, CentOS, Arch Linux, Red Hat Enterprise Linux a Mint Linux.

Jaké jsou různé stavy procesů v Linuxu?

Odpověď: Mezi hlavní stavy procesu v Linuxu patří:

  • Běží – proces je právě vykonáván procesorem
  • Spí – proces čeká na zdroje, které jsou momentálně nedostupné
  • Zastaveno – proces byl zastaven procesorem nebo signálem
  • Zombie – proces byl ukončen, ale jeho nadřazený proces dosud neuvolnil jeho zdroje

Toto jsou hlavní stavy procesů v Linuxu.

Jaká jsou různá volání systému pro správu procesů v Linuxu?

Odpověď: Mezi různá volání systému pro správu procesů patří:

  • fork() – používá se k vytvoření nového procesu
  • kill() – používá se k odeslání signálu k ukončení běžícího procesu
  • wait() – pozastaví provádění volajícího procesu, dokud neskončí podřízený proces
  • exec() – nahraje program do aktuálního procesu a spustí jej
  • exit() – ukončí provádění programu

Výše uvedená jsou hlavní volání systému pro správu procesů v Linuxu.

Jak zjistit stav procesu?

Odpověď: Stav procesu můžete zjistit spuštěním příkazu ‚ps‘, který zobrazí aktuální stav všech aktivních procesů v systému Linux.

Chcete-li zobrazit další podrobnosti o konkrétním procesu, proveďte následující:

ps -p <processID>

Jak zastavit běžící proces v Linuxu?

Odpověď: Běžící proces v Linuxu můžete zastavit provedením:

kill <processID>

pro ukončení běžícího procesu podle jeho ID. Můžete také zastavit běžící proces podle jeho názvu provedením:

killall <processName>

Jak rozlišování malých a velkých písmen ovlivňuje příkazy?

Odpověď: V operačním systému Linux příkazy rozlišují malá a velká písmena, což znamená, že shell považuje příkazy napsané s různými písmeny za odlišné.

Například příkaz ‚rmdir‘ není stejný jako ‚RMDIR‘. V operačním systému Linux jsou příkazy příkazového řádku obvykle psány malými písmeny.

Jaký příkaz se používá ke kontrole, kolik paměti Linux využívá?

Odpověď: Po provedení příkazu free se zobrazí informace o využití a volném místě v systému. K zobrazení různých typů informací lze s tímto příkazem použít různé parametry.

Co je příkaz ls?

Odpověď: Je to příkaz pro zobrazení obsahu adresáře.

Co je příkaz ps?

Odpověď: Příkaz ps zobrazuje informace o aktuálně aktivních procesech.

Co je příkaz netstat?

Odpověď: Jedná se o příkaz sloužící ke zobrazení informací týkajících se síťových připojení v systému. Zobrazuje informace o aktuálně aktivních síťových spojeních.

Co je příkaz cp?

Odpověď: Jedná se o příkaz sloužící ke kopírování souborů a adresářů.

Co je mkdir?

Odpověď: Je to příkaz sloužící k vytváření adresářů v Linuxu.

Co je příkaz cat?

Odpověď: Jedná se o příkaz sloužící k zobrazení obsahu souboru, vytváření nových souborů, přesměrování výstupu jiných příkazů, zřetězení více souborů a zobrazení výstupu na obrazovce.

Závěrečná slova

Tento článek s otázkami a odpověďmi k pohovoru o Linuxu by vám měl pomoci při přípravě na váš nadcházející pohovor.

Hodně štěstí! 👍