GNU Linux/Terminalas: Skirtumas tarp puslapio versijų

Jump to navigation Jump to search
31 pridėtas baitas ,  prieš 15 metų
nėra keitimo aprašymo
No edit summary
Jei jau turite Linux, kad ir ką kai kurie sakytų su terminalu (kartais vadinama: ''koncolė'') jums teks susidurti. Daug kam atrodo, kad terminalas tai pasenęs kompiuterių valdymo budas, labai nepatogus ir labai negerai "nes reikia daug rašyti". Iš tiesų problema ta, kad dauguma net ir patyrusių kompiuterių naudotojų dabar jau "mąsto langais". Šiame skyriuje as pasistengsiu parodyti kaip reikia "mąstyti terminale" ir tik išmokus tai terminalas taps paprastas, patogus, mielas ir greitas. Toks kokio neatstos jokios, net moderniausios ir įmantriausios grafinės aplinkos.
 
Ši knyga turėtų sudominti ne tik tuos "wannabe hax0r" kurie prisižiųrėjęprisižiūrėję filmų kaip dėdės geria kolą ir kašką ten isikibę rašo į žaliai juodą ekraną patys meginamėgina tai pakartoti, bet ir kiekvieną Linux/BSD mėgėją.
 
 
== Kaip ten patekti? ==
Taigi jūs parsisiuntėte kaškokiąkažkokią Linux distribuciją (jei dar ne tai pats metas tai padaryti) instaliavote ją ir tikriausiai atsidūrėte "Gnome" ar "KDE" aplinkoje ir to terminalo nei kvapo.
Dabar aš paaiškinsiu kaip į jį patekti.
 
Viršuje ko gero senai pamiršti funkcijos klavišai yra: F1, F2, F3 ir t.t.
Vienoje sistemoje paprastai yra 6 terminalai jiems iškirtiišskirti funcijosfunkcijos klavišai nuo F1 iki F6.
Grafinei aplinkai yra skirtas funkcijos klavišas F7. Norint išvengti atsitiktinio paspaudimo jūs primiausiaipirmiausiai turite laikyti nuspaudę alt+ctrl ir tik tada persijungti į reikiamą terminalą ar grafinę aplinką su funkcijos klavišu. Į kiekvieną terminalą primiausia reikia ušsiregistruotiprisiregistruoti su savo vartotojo vardu ir slaptažodžiu.
 
== Direktorijų medis ir kaip keliauti po jį ==
DOS sistemose yra diskai žymimi A:, B:, C: ir t.t., vėliau Windows sistemose sugalvotas "My Computer" siejantis visus šiuos diskus. DOS sistemose diskų nieksniekas nesieja. Unix tipo sistemos (kaip ir linux) tuo tarpu turi visai kitokį gerokai sudėtingesnį ir labiau organizuotą direktorijų medį. Pasistengsiu trumpai ir konkrečiai apibūdinti jį:
*/ - ''root'' direktorija. Nuo jos viskas prasideda.
*/boot - čia laikomas Linux branduolys ir Grub pradinio įkeliklioįkėliklio bylos.
*/etc - čia laikomos nustatymų bylos programoms. Paprastai tai paprasčiausios tekstinės bylos.
*/bin ir /usr/bin - čia laikomos visos programos
*/usr - čia laikomos dokomentacijosdokumentacijos, nesukompiliuoti kodai programų, ''man'' puslapiai ir kiti panašūs dalykai. /usr/X11 - laikoma grafinė aplinka.
*/usr/local - čia keliauja visos programos kurios instaliuojamos veliau nei pati sistema.
*/var - čia laikomos bylos kurios keičiasi kai sistema veikia. Iš idomesniųįdomesnių /var/log direktorijoje laikomi "logai". T.y. yrašaiįrašai apie visus svarbius sistemoje įvykusius dalykus.
*/lib - čia laikomos bendros "bibliotekos" programoms.
*/home - čia laikomi vartotojų asmeniniai duomenys. Tai vienintelė vieta kur jie gali ka nors įrašyti ar trinti. Tai likusi sitemasistema išlaikoma tvarkinga ir švari.
*/root - čia yra naudotojo ''root'' asmeniniai duomenys.
*/tmp - čia programos rašo savo laikinus duomenis.
*/dev - čia yra laikomi visi įrenginiai. Unix sistema visus įrenginius laiko tokiais pat dalykais kaip ir bylos. bet visgi įrenginiai atskiriami į savo direktoriją nuo kitų bylų.
*/proc - šitos direktorijos iš tikro niekur nėra. Tai tik branduolio sukurtas duomenų rinkinys. Kaip pavyzdžiaupavyzdžiui /proc/cpuinfo laikoma informacija apie CPU. ji gali būti peržiurėtaperžiūrėta su teksto redaktoriumi.
*/mnt - čia laikomus tuščios direktorijos ant kurių prijungiami diskai su ''mount'' komanda.
Labai gerai jei nepasitenkinate tuo ką aš parašiau ir norite patys pasižvalgyti.
== Pradinė informacija ==
Dauguma čia dabar pateiktų ~20 dažniau naudojamų komandų su trumpu paaiškinimu ką jos daro.
Bet terminalas tai nėra dešimciųdešimčių komandų mokinimąsismokymasis mintinai su laiku jūs jas sužinosite.
Dauguma komandų tai ne iš kaškurkažkur susapnuotas raidžių kratinys, o angliškas žodis ar jo santrumpa.
Kaip "copy" (kopijuoti) tai komanda "cp", "move" (perkelti) tai komanda "mv", "remove" (trinti) tai komanda "rm". ir "make directories" (kurti direktorijas) tai komanda "mkdir".
Pati svarmiausiasvarbiausia naujokui komanda yra "man". Nes ji pateikia paaiškinimus apie kitas komandas.
Naudojama taip: man ieškoma_komanda
Tiek daugiau nei pakanka pradžiai.
 
== "Wildcards" ==
"Wildcards" tai simboliai kurie reiškia keletą kitų simbolių. Jie plačiai naudojami terminale ir be jų terminalas virstų tikra kankyne. o su jais su terminalu galima greit padaryti tai kas grafinėje aplinkoje būtų ilgas ir nuobodus darbas. Todėl net nesigilindami į jokias komandas imamiesimames jų.
 
Wildcards sąrašas:
*Bet koks skaičius bet kokių simbolių: *
*Bet koks vienas simbolis: ?
*Bet koks simbolis iš duotų: [duotisimboliaiduoti simboliai]
*Bet koks simbolis tik ne duotas: [!duoti simboliai]
 
*Trinti viską kas neprasideda mažąja raide: rm [!a-z]*
 
Beabėjo juos galima naudoti su betkokiomisbet kokiomis komandomis ne tik su ''rm''.
Kaip tai svarbu pademonstruosiu praktiniais pavyzžiaispavyzdžiais.
 
Tarkim reikia nueiti iš namų katalogo /home/vart į katalogą: /mnt/labai_ilgas_direktorijos_pavadinimas1.
Arba jei žinome, kad, kataloge be mūsų baisiojo labai_ilgas_direktorijos_pavadinimas1 daugiau nėra direktorijų prasidedančių su l galima dar trumpiau:
*cd /m*/l*/
O dabar gįžtamegyžtame atgal. Tikriausiai jau kaškąkažką kuriate, bet namų katalogą žymi: ~. TodelTodėl pakaks komandos:
*cd ~
 
 
== man komanda ==
Pangarinėsime kaip jau minėjau labai svarbią pradedantiesiamspradedantiesiems ''man'' komandą, ir su man komandos pagalba aiškinsimiesaiškinsimės ''cp'' komandos įpatumusypatumus. Taigi įvedame:
*man cp
Į ekraną išspauzdinamas ''cp'' komandos aprašymas. NoredamiNorėdami judėti aukštyn-žemyn naudojame rodykles, paspaudus ''q'' išeinama atgal į terminalą.
Aprašymo viršuje yra "NAME" skiltis. Joje trumpai apibūdinama komanda.
 
Toliau eina "SYNOPSIS" skiltis joje apibūdinama galima sintaksė. Tai painiausia dalis. Laimei neranėra itin svarbi, o iš dalies suprantama intuityviai. Pamėginsiu paaiškinti, ką mes matome prie ''cp'':
*[OPTION] - rodo kur rašomi nusatymainustatymai, paprastai iš kart po komandos
*[-T] - rodo nustatymą kuris ivedamasįvedamas net jo neparašius.
*Kiti žodiai naudojami objektams su kuriais dirbama pavadinti.
 
Sekanti svarbiausia "DESCRIPTION" skiltis. Joje aprašomi galimi nustatymai. Panagrinėsim kelis svabesniussvarbesnius komandos ''cp'' nustatymus:
*-i, --interactive Tai nustatymas nurodantis, kad jei kopijuojant randama jau esanti byla kuri buvo nurodyta kaip būsima kopija, tai tuomet turi būti išvedamas klausimas ar "užrašyti ant virsaus esamos bylos". Kaip matome yra du galimi nustatymo rašymo budai ilgas su dvien minusais ir žodžiu, ir trumpas su vienu minusu ir viena raide. Ilgas galbūt įsimintinesnis, bet trumpas neabėjotinai patogesnis.
*-R, -r, --recursive Tai nustatymas norodantis kopijuoti rekursyviai. Tai yra kopijuoti ir mūsų darbinėje direktorijoje esančias kitas direktorijas su viskuo kas jose yra.
Nustatymus vedant kelis iš karto nereik rašyti krūvos minusų galima -i ir -r sudėti į vieną: -ir.
Bebėjo visų galimų nustatymų nereikia ir vargu ar įmanoma įsiminti: juk betkadabet kada galime pasinaudoti ''man'' komanda ir vėl.
 
Toliau aprašoma "ATHOR", "REPORTING BUGS", "COPYRIGHT" iš kurių maža naudos.
Tai gali kartais būti labai naudinga. Takim jums meginant paleisti Skype nieko nesigavo ir išmetė pusės puslapio ilgio kaidą. Jūs pasiklausėte forume ką daryti, bet ten papraše, kaip ir reikėjo tikėtis, parašyti kokia tiksliai ta klaida. Gal ir pulsite ją nurašinėti, bet paprasčiau būtų:
*skype > klaida
Taip viskas ką išspauzdinsišspausdins skype bus įrašyta į klaida tekstinę bylą.
 
ImkimiesImkimės paprastesnio ir lengviau atkartojamo pavyzdžio. komanda ''date'' parašo esamą datą į ektranąekraną.
Bet jei įvesim:
*date > data_dabar
Jei mes ištrynimo nenorime tada rašome:
*date >> data_dabar
Tokiu atveju, jei jau yra byla data_dabar tai data bus prirašyta bylos pabaigoje. Jei bylos data_dabar nėra abi komandos duos identišką rezultatą. PrišPrieš megindamimėgindami tai isitikinkiteįsitikinkite, kad esate savo namų kataloge, jei ne primiaupirmiau įveskite:
*cd ~
 
Bet jei direktorijų labai daug jos netilps net į ekraną O jei dar pridesim:
*du | sort -nr | less
Įvyks tai kas ankčiau tik dar viskas bus nukreipiama į ''less'' ir tai mums leis peržiurėti patogiau viską, kaip ir bet kokią kitą tekstinę bylą su ''less''. ButentBūtent "nupaipinimas" į less padeda peržiurėtiperžiūrėti tai kas paprastai netilptų į ekraną ir dažnai būna labai naudinga. Tarkim iš esmės teisinga komanda:
*ls -l /etc
Duos mažai naudos. Bent aš pas save matau tik nuo "s" raidės viską, o viršutinė dalis liko "nukripta".
Todel:
*ls -l /etc | less
Jau naudingiau. Kaip visad iš less išeinama paspaudus "q". Jei nežinot, kad duoda -l prie ''ls'' pažiurėkitpažiūrėkit:
*man ls
 
== Leidimai ==
Unix tipo operacinės istemossistemos yra daugelio vartotojų operacinės sitemossistemos. Todėl tam, kad nekiltų painiava.
keikviena byla turi savo "šeimininką" ir teises ką su ja gali kas daryti. Bet kurioje direktorijoje surinkite:
*ls -l
O "drwxr-xr-x" išsišifruoja taip:
*d rodo kad tai direktorija, jei būtų - tai reikštų, kad tai byla
*rw- rodo, kad direktoriją jos šeiminikasšeimininkas gali perskaityti, perrašyti ir vygdytivykdyti (santrumpa nuo: read, write, execute).
*r-x rodo, kad šeimininko grupė gali direktoriją perskaityti ir vygdytivykdyti
*r-x pabaigoje, rodo, kad visi kiti gali direktoriją perskaityti ir vygdytivygkyti
Toks raidžių ir minusų kratinys gali būti pakeistas dvejatainiaisdvejetainiais skaičiais raidę imant kaip 1 ir minusą kaip 0. Taigi:
*rwxr-xr-x == 111 101 101
Ir dvejetainis skaičius gali būti pakeistas dešimtainiu.
*600 == rw-------
Be to nesunku įžvelgti tam tikrus sutapimus, pvz.: kaip mažėjantis skaičius ar skaitmuo mažina teises.
TiesakTiesa gal nelabai aišku kas tas "vygdymasvykdymas". Tai direktorijos "vygdymasvykdymas" daugiausia suprantamas kaip leidimas atlikti komandą:
*ls ta_direktorija
Bylos "vygdymasvykdymas" suprantamas, kaip leidimas paleisti ją kaip programą. Unix neturi galūnių ir nėra griežtai atskirta kur programa, o kur tarkim muzika. Su tuo galima susidurti parsisiuntus Linux skirtą žaidimą ir mėginant jį paleisti, o paleidžiama taip:
*./pavadinimas
Tai leidimas "vygdytivykdyti" bylą suprantamas daugiausia kaip leidimas atlikti tokią komandą.
 
Bylos/direktorijos savininką ''root'' naudotojas gali keisti taip:
*chown savinikassavininkas byla
Daugiau informacijos kaip visad:
*man chown
 
== Naudingos programos veikiančios koncolėje ==
Apie visas jas plačiau žiurėkitežiūrėkite:
*man pavadinimas
Kai kurias gali tekti įdiegti.
**wget http://puslapis.gg/byla
Ir kartu taip galingai kaip:
**echo 'wget url' | at 01:00 - pradėti parsisiūstiparsisiųsti kaškąkažką 01:00.
*links - interneto naršyklė
*ircii-pana - IRC programa, kaip kad mIRC.
Ir daug kitų.
 
==Karštieji klavišai (hotkejaihotkėjai)==
Gerus pagrindus jau turite, bet jei norite įvaldyti didžiausias koncolės galimybes tai turite visu pirma daugiau įgyti praktikos, o visų antra išmokti naudoti "hotkejushotkėjus". Hotkėjai neturi plačiai priimto lietuviško pavadinimo. Tai mygtukai ar jų kombinacijos padedančios žaibiškai atlikti įvairias funkcijas.
Vienas pagrindinių iš jų tai rodyklės. Su pirmyn-atgal paslenkame kursorių, su aukštyn-žemyn peržiūrime komandų istoriją. Tai labai naudinga jei norime pakartoti panašią komandą. Pavyzdžiui jau minėta nelabai techniška serija:
*cd ..
*ctrl+c
Ir komandos darbas bus nutrauktas.
*ctrl+k ir alt+d - ištrina viską kas dešnėjedešinėje
*ctrl+l - išvalo visą ekraną
*ctrl+r - po to vedant komandą ieško panašios jau vestos ir tai matoma ekrane. Kai norai ir tai kas matoma sutampa belieka spausti enter.
*ctrl+u - ištrinti viską kas kursoriaus kairėje
*ctrl+x keletą kartų - šokinėti su kursoriumi tarp esamos padėties ir pabaigos
*ctrl+z - pervesti jau įvygdytąįvykdytą komandą į "stop" rėžimą. ''fg'' grąžina iį normalų rėžimą. Kas atsitinka geriau matyti iš pavyzdžio:
**top
**ctrl+z
ir atidarinėjame menu.lst su nano, tai:
**nano me -> alt+/ -> enter -> viskas. Tai dar naudingiau kai bylų vardai ilgi.
TAB klavišas - toks pat užbaiginėjimas tik užbaigia komandas. Jei nepavyksta tai rezultatas nieko, arba visų galimų komandų sąrašas. Norint sąrašo geriau paspausti TAB du kartus. Jei sarašassąrašas ilgas paklaus ar tikrai norite jį žiurėti. Pamėginkite nieko neparašę paspandinėti TAB. Paskui parašykit vieną raidę ir paspandinėkitpaspaudinėkit.
*alt+c - keičia iš didžiųjų į mažąsias po kursoriaus esančias raides. Naudinga kai per klaidą "caps lock" buvo perjungtas į nenorimą rėžimą.
*alt+l - sumažina visas raides
Anoniminis naudotojas

Naršymo meniu