PrettyPrint

pondelok, 16. septembra 2013

Základy práce s SSH

SSH, alebo Secure Shell, je nástroj, ktorý umožňuje pripojiť sa na iný stroj a vykonávať na ňom príkazy. Pre používateľov Linuxu je SSH celkom bežné a umožňuje vzdialenú správu strojov, či prácu na nich. Nedávno sme SSH prístup zaviedli aj na Elbiahostingu a v tomto článku, vhodnom predovšetkým pre začiatočníkov, si predstavíme jeho možnosti.

Výhody a použitie

Vďaka možnosti spúšťať príkazy je SSH silným nástrojom. Priamo na strane servera umožňuje prácu so súbormi zahŕňajúcu manipuláciu s nimi, ich zálohovanie alebo obnovovanie, a to všetko ako keby sme mali stroj fyzicky pri sebe. Ďalej môžete napríklad priamo pristupovať k databáze a upravovať tabuľky. Tiež si pomocou neho môžete stiahnuť, rozbaliť a nastaviť CMS systém ako WordPress – to všetko na strane servera.

Ako sa pripojiť

Informácie potrebné pre pripojenie sa ku svojmu účtu na Elbiahostingu nájdete v ElbiaAdmine, v sekcii Pomoc - InfoCentrum - SSH.

Pokiaľ používate Windows, najznámejším nástrojom umožňujúcim pripojenie cez SSH je PuTTY. Po jeho spustení sa zobrazí grafické rozhranie, v ktorom je potrebné zadať názov stroja (host), na ktorý sa chcete pripojiť, a jeho SSH port. Po kliknutí na tlačidlo Open sa zobrazí terminál, v ktorom je potrebné zadať login a heslo.

Ak používate Linux alebo Mac OS, pripojenie je možné realizovať príkazom ssh, ktorý býva štandardnou súčasťou Linuxových distribúcií a Mac OS. Tento príkaz je potrebné spustiť v termináli/konzole. Parametre pripojenia sa špecifikujú pri spustení príkazu ako argumenty v nasledovnom tvare: ssh -p PORT LOGIN@HOST.

Nasledovné rozhranie, ktoré sa po prihlásení sprístupní, je v oboch prípadoch rovnaké. Po úvodnej správe systému sa na začiatku riadka zobrazí reťazec tvaru "SERVER:~$ ", nazývaný prompt. Prompt signalizuje, že systém na druhej strane je pripravený prijať príkaz od používateľa.

Tipy pre PuTTY

U PuTTY môžete odstrániť nutnosť opakovaného zadávania údajov vytvorením profilu – v rozhraní vyplníte všetky údaje a namiesto kliknutia na Open zvolíte do políčka "Saved Sessions" názov profilu, uložíte ho pomocou "Save" a následne stačí pri najbližšom pripojení pomocou "Load" zvoliť vybraný profil.

Pri práci s PuTTY sa môže stať, že slovensky vypisovaný text obsahuje pokazené znaky. Problémom je iné kódovanie textu a môžete ho opraviť nastavením v sekcii Window - Translation a z rolovacieho zoznamu vyberte UTF-8. Toto nastavenie môžete uplatniť natrvalo uložením do profilu podľa predchádzajúceho tipu.

Všeobecné informácie o shelli

V tejto časti si okrem samotných príkazov uvedieme a vysvetlíme niektoré potrebné všeobecné myšlienky práce v shelli.

Cesty k súborom

Veľmi častou operáciou je manipulácia so súbormi a pri nej samozrejme potrebujeme vedieť popísať, s ktorým súborom/adresárom zamýšľame pracovať. Táto špecifikácia, cesta k súboru, môže byť v podstate troch druhov:

  • priamy názov súboru: subor.txt, obrazky/
  • relatívna cesta: obrazky/2012/obalka.jpg, .., ., ../index.html
  • absolútna cesta: /home/LOGIN/public_html/index.html

Priamy názov súboru je vlastne špeciálnym prípadom relatívnej cesty, kedy sa odkazujeme na súbor v aktuálnom adresári. Relatívna cesta špecifikuje umiestnenie súboru vzhľadom na aktuálny adresár. Ako špeciálne prípady môžeme v ceste špecifikovať aktuálny adresár (.) alebo nadradený adresár (..). Posledný prípad je absolútna cesta, kedy špecifikujeme umiestnenie súboru začínajúc od koreňového adresára (/). Na záver spomeňme cestu ~, čo je to isté ako cesta k domovskému adresáru, teda /home/LOGIN/.

Dostupné príkazy

Vo všeobecnosti existuje pomerne veľké množstvo príkazov; z bezpečnostných dôvodov je však na Elbiahostingu dostupná obmedzená množina príkazov zahŕňajúca tie, ktoré môžete bežne potrebovať pri SSH prístupe na Elbiahosting. Podľa účelu ich môžeme rámcovo rozdeliť na niekoľko skupín uvedených v nasledovnom prehľade.

príkaz funkcia použitie
Základné príkazy
cdzmení aktuálny adresárcd obrazky
lsvypíše obsah adresára,
  • -a = vrátane skrytých súbrov
  • -l = podrobný výpis
ls -l
ls -a ../obrazky
catvypíše obsah súborucat .htaccess
lessumožňuje prezerať súbor, ukončuje sa klávesou qless .htaccess
mvpresúva súbory a adresáremv subor ..
cpkopíruje súbory a adresáre; u adresárov treba použiť prepínač -rcp -r img/ img_bak/
rmmaže súbory, prípadne adresáre,
  • -r = vrátane podadresárov a súborov
rm subor
rm -r adresar
mkdir/rmdirvytvára/maže adresármkdir test
rmdir test
exitukončí prihlásenie
echovypíše zadaný textecho abc def
echo "textovy vypis"
chmodmení prístupové právachmod o+r favicon.ico
Všeobecné príkazy na prácu so súbormi
tararchivačný nástroj s možnosťou kompresie; c vytvára archív, x ho rozbaľuje; z použije kompresiu gzip, j použije kompresiu bzip2tar cvjf archiv.tar.bz2 subor1 subor2
tar xvjf archiv.tar.bz2
bzip2/bunzip2práca s bz2 archívmibzip2 subor.txt
bunzip2 subor.txt.gz
gzip/gunzippráca s gz archívmigzip subor.txt
gunzip subor.txt.gz
zip/unzippráca so zip archívmizip vystup.zip subor1 subor2
unzip vystup.zip
grepfiltrovanie riadkov obsahujúcich výrazgrep Deny .htaccess
findvyhľadávanie súborovfind ~/data -name 'stat*.csv'
diffrozdiely medzi súbormi; -u = tzv. unifikovaný formátdiff -u verzia1 verzia2
md5sumurčovanie kontrolného súčtumd5sum wp.zip
mcdvojpanelový správca súborov
vimpokročilý editorvim subor.txt
Iné príkazy
mysqlinteraktívna práca s databázoumysql LOGIN_DB -u LOGIN_USER -p
mysqldumpzálohovanie databázymysqldump LOGIN_DB -u LOGIN_USER -p
wgetnástroj na sťahovanie z webuwget http://google.com -O index.htm
curlnástroj na sťahovanie z webucurl http://google.com -o index.htm
psvýpis bežiacich procesov

Bližšie informácie o vyššieuvedených príkazoch môžete získať zadaním man prikaz. Zobrazí sa nápoveda, v ktorej je možné pohybovať sa zvyčajnými navigačnými klávesami a zatvoriť ju klávesou q.

Užitočnou možnosťou je ešte prerušenie vykonávania príkazu, napríklad ak trvá príliš dlho – slúži na to klávesová skratka Ctrl-C.

Presmerovania

Presmerovania umožňujú významným spôsobom rozšíriť možnosti príkazov. Presmerovania menia to, odkiaľ príkaz prijíma vstup alebo kam zasiela svoj výstup. Medzi tri základné presmerovania patria:

  • presmerovanie vstupu: prikaz < vstupny_subor
    u príkazov vyžadujúcich vstup od užívateľa umožní namiesto toho načítať tento vstup zo súboru
  • presmerovanie výstupu: prikaz > vystupny_subor
    umožní uložiť výstup príkazu do súboru pre neskoršie použitie
  • zreťazenie príkazov: prikaz1 | príkaz2
  • vykoná príkaz prikaz1 a jeho výstup nasmeruje ako vstup do príkazu prikaz2, napríklad ls | grep abc vypíše zoznam súborov v aktuálnom adresári, ktoré obsahujú v názve abc

Záverom

Svet príkazového riadka je celkom rozsiahly. Okrem tu uvedených príkazov existuje veľké množstvo interných príkazov a možností shellu. Ich úplný prehľad nájdete v dokumentácii.

Žiadne komentáre:

Zverejnenie komentára