Linux sa od systému Windows z hľadiska spúšťania súborov líši tým, že v prvom systéme sa spustiteľné súbory definujú ako programové súbory nie podľa prípony, ale podľa špeciálneho príznaku spustiteľnosti. Každý súbor má teda tri režimy spustiteľnosti: čítanie, vykonávanie a zápis. Práve tieto režimy určujú, čo môže systém s konkrétnym súborom robiť. Keď používateľ sťahuje rôzne inštalačné programy z internetu alebo vytvára skript, sú mu štandardne priradené tieto režimy: čítanie a zápis. Stručne povedané, používateľ nebude môcť s takýmto programom nič robiť, pretože s ním treba urobiť niečo iné.
Najskôr by sme sa však mali zaoberať takouto otázkou: Čo je to spustiteľnosť a čo znamená vo všeobecnosti? Začnime programom, ktorý je súborom inštrukcií vykonávaných procesorom nad súborom údajov s cieľom získať požadovaný výsledok. Pre procesor nie je rozdiel medzi inštrukciami a údajmi.
Prvé aj druhé sa skladajú z číslic - bajtov. To znamená, že určitá kombinácia číslic bude pre procesor znamenať potrebu vykonať určitú činnosť. Pre procesor nie je zásadný rozdiel, ktorý proces má vykonať - údaje operačného systému alebo textový súbor. Vykoná sa tak prvý, ako aj druhý proces, s tým rozdielom, že v prípade textového súboru potreba inštrukcií vlastne odpadá.
Príznaky vykonateľnosti boli vymyslené na to, aby systém pochopil, ktoré inštrukcie sa majú vykonať a ktoré nie. V skutočnosti sa obsah v závislosti od nastavenej triedy spustiteľnosti nijako nemení - rozdiel sa obmedzuje len na niekoľko riadkov. Pri skriptoch všetko funguje rovnako, len príkazy nevykonáva procesor, ale interpret, napríklad pri skriptoch bash samotný shell bash. Bežné programy majú tiež svoj vlastný zavádzač - je to ld-linux.so.2.
Systém Linux má špeciálny nástroj, ktorý umožňuje spravovať príznaky, ktorý sa nazýva chmod
. Ak chcete tento nástroj zavolať, musíte vyvolať syntax:
$ chmod category action flag file_address
A tu je potrebné vziať do úvahy nasledujúce:
Príznak - jeden z dostupných príznakov -
r
(read),w
(write),x
(execute).Kategória - možno nastaviť pre tri kategórie: vlastník súboru, skupina údajov a všetci ostatní používatelia. V príkaze sú označené písmenami
u
(user (používateľ)),g
(group (skupina)), resp.o
(other (ostatné)).Akcia - môže byť + (plus), čo by znamenalo nastavenie príznaku, alebo - (mínus) odstránenie príznaku.
Ak teda chcete, aby sa skript v systéme Linux dal spustiť, musí ho vykonať používateľ:
$ chmod u+x file_address
Často to už stačí na to, aby bol spustiteľný, ale ak je potrebné, aby boli ostatní používatelia oprávnení tieto súbory spúšťať, je potrebné pridať ďalšie:
$ chmod ugo+x file_address
Ak ich chcete vidieť v termináli, stačí použiť nástroj ls:
$ ls -l file_directory
Príznaky sú zahrnuté pre všetky kategórie. Prvé rwx
sú príznaky vlastníka, druhé sú príznaky skupiny a tretie sú pre všetkých ostatných. Ak nie je nastavený, na jeho mieste sa objaví pomlčka.
Zrušenie nastavenia príznaku spustiteľnosti je veľmi jednoduché. Používa sa rovnaký príkaz, len so znamienkom mínus:
$ chmod u-x file_address
Ďalej sa venujme otázke nastavenia spravovateľnosti v grafickom používateľskom rozhraní.
Pre začiatočníkov bude tento návod jednoduchší. Ako príklad si zoberme správcu GNOME, Nautilus. Kliknutím pravým tlačidlom myši na náš objekt programu alebo skriptu otvorte kontextovú ponuku a potom vyberte položku vlastnosti:
Prejdite na kartu oprávnení a začiarknite možnosť "Povoliť spustenie súboru ako programu":
Teraz ho systém spustí priamo zo správcu. To je celý návod. Teraz už nebudete mať žiadne problémy so spúšťaním programu alebo skriptu z internetu.