Oft lendi ég í því á Windows vélum að ég hef ekki hugmynd um hvernig á að gera einföldustu hluti. Venjulega er sagan sú að maður þarf að ná í einhver forrit *eitthvert* sem gera *um það bil* það sem maður vill gera. Til gamans ætla ég að taka fyrir nokkrar einfaldar aðgerðir sem eru í öllum Unix afbrigðum, og þ.a.l. Linux líka.
Þið sem eruð rétt að byrja hefðuð helst gaman af því að vita þetta, því það er nefnilega svo merkilegt að það er miklu einfaldara að gera flest í Linux, ef maður bara kann skipanirnar. Margir fá það á tilfinninguna að það hljóti að vera meira mál að gera flókna hluti, en svo er ekki. Ég ætla að taka nokkur dæmi. Ekkert vera að stressa ykkur á því ef þið skiljið ekki línurnar.
1. Að splæsa saman Wave-hljóð eða MPEG mynd.
Ég hef gert þetta á .wav og .mpg, en ég veit ekki með t.d. .mp3 og .avi, en það er ekkert víst að það klikki. Flestir munu segja ykkur strax að þetta virki ekki, en ekki hlusta á það, prófið sjálf. :)
# cat mynd-1.mpg mynd-2.mpg mynd-3.mpg > totalmynd.mpg
'cat' er stytting á ‘concatenate’ og er einmitt til að leggja saman allskonar drasl. Goggurinn í endanum segir ‘cat’ að beina úttakinu í ‘totalmynd.mpg’, þannig að fyrst tekur það öll bætin úr mynd-1.mpg, síðan mynd-2.mpg o.s.frv. Ef myndirnar eru númeraðar rétt, er meira að segja hægt að gera bara ‘cat mynd-*.mpg > totalmynd.mpg’! Að gera þetta á Windows þýðir að maður þarf að ná í eitthvað forrit á netinu sem gerir þetta að öllum líkindum illa eða ekki yfirhöfuð.
2. Að “mounta” diskamynd á borð við ISO skrá.
# mount -o loop -t iso9660 diskamynd.iso /mappa/sem/diskurinn/a/ad/verda
Svo einfalt er nú það. Þetta er semsagt alveg eins og að taka venjulegan disk, nema að maður notar ‘loop’ optioninn og skrá í staðinn fyrir drif (sem er skrá eins og allt annað í Unix).
3. Að fá handahófskennt merki í skrá eða hvaðeina, ég notaði þetta til að búa til vekjaraklukku… lét hana semsagt spila þetta ÓGEÐSLEGA hljóð í botni á morgnana. Ekki hafa hátt stillt þegar þið prófið.
# dd if=/dev/urandom of=rugl.wav bs=1024 count=512
Þetta segir henni að taka 1024 bæti í einu, 512 sinnum. Þ.e.a.s., þetta verður að nákvæmlega 512 kílóbæta wav skrá með hljóði sem er vel hugsanlega hið ógeðslegasta sem ég hef heyrt.
(Nei, það er ekki frumleg hugmynd að nota þetta í tónlist, don't even fucking think about it!)
4. Taka afrit af diski, búa til ISO mynd eða hvaðeina:
# dd if=/dev/cdrom of=skra.iso conv=noerror
Voila! :) Tekur öll byte sem hún finnur í /dev/cdrom (sem er geisladrifið, augljóslega) og hendir þeim í úttakið. “conv=noerror” segir henni að hætta ekki þó hún lendi í vandræðum með einhvern sector, þannig að það er líklegra að manni takist að afrita lítið skemmda diska.
Það er líka hægt að nota þetta til að taka öryggisafrit af öllum disknum, en þá er nú vissara að vera með annan disk, vegna þess að annars lendir hún í plássleysi. Þetta hefur reddað mér milljón sinnum þegar ég er með ónýta diska sem ég vil garfa í seinna. Þegar búið er að taka mynd af disknum, er hægt að nota þá mynd nákvæmlega eins og disk.
# dd if=/dev/hda1 of=afrit.img
Og þá eruði komin með skrána ‘afrit.img’ sem er nákvæmlega eins og fyrsta disksneiðin á disknum, bit-fyrir-bit. Þetta þýðir að alveg sama hvaða skráarkerfi er á disknum, alveg sama hvaða efni, færðu diskinn í heild sinni.
Og að lokum…
Það sem gerir Unix máttugt, er ekki hversu flókið það er, heldur hversu einfalt það er. Gallinn er hinsvegar að flestir eru vanir svo undarlegri hugmyndafræði frá Windows að það skilur enginn neitt í þessum aðferðum, þó þær séu trilljón sinnum rökréttari á allan hátt. A-drif, C-drif, hvaða bull er það? Leifar frá ævafornri uppsetningu sem verður að vera áfram bara til að halda í samhæfni. Unix var hannað almennilega frá grunni, Windows er bara skítmix ofan á skítmix ofan á skítmix plús 13 skrilljón trilljón dollara markaðsvæðing.
Ennfremur er *allt* í Unix skrá. Þið getið pípað hljóði beint í hljóðkortið ykkar með ‘cat vidbjodur.wav > /dev/dsp’ eða ‘dd if=vidbjodur.wav of=/dev/dsp’ (gerir nákvæmlega það sama).
Og vitiði hvað maður gerir til að athuga batteryið á vélinni minni? ‘cat /proc/acpi/battery/C139/state’ og voila! Þarna stendur allt sem standa þarf. Ég er semsagt sirka 2 mínútur að búa til gluggaforrit sem fylgist með rafhlöðunni minni.
Svo þið sjáið, að það er ekki það að Linux sé flókið, heldur er það magnið af einföldu hlutunum sem hræðir fólk. En þegar maður skilur grundvallarhugmyndina á bakvið Unix fræðin (sem hafa lifað í þrjá og hálfan áratug, mætti bæta við), þá er þetta allt svo sjálfsagt.
Mesti mátturinn er hinsvegar skipunin ‘man’. Hún stendur fyrir ‘manual’ og útskýrir allar grunnskipanir. ‘man dd’ segir nákvæmlega hvað ‘dd’ gerir, ‘man cat’ segir nákvæmlega hvað ‘cat’ gerir. Út frá því kemur hugtakið “RTFM”, sem stendur fyrir “Read The Fucking Manual”.
“Fear not the terminal, it only hurts for the first few times.”