Latest Entries

Tole so mi neki prnesl, mnda je telefon

Za klicat bo…

iPhone

takle se mamo… delamo !

Ucimo se ruby ! Vedno manj…

takle_se_mamo-2.jpg

koledar terminalsko

ena hitra, preden odbrzimo na piknik.

# cal
September 2007
S M Tu W Th F S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

poskusite tudi

# cal 2007

in

# cal 1 2007

404 ? table not found

Miza, ki jo natakarji kar predolgo niso našli…

404 argentinc

trda povezava ? hardlink !

Počitnice… pa malo lenobe, pa malo gužve, pa je nastala takšna luknja med objavami…

Je Vini, medtem ko sva reševala svet s hardlinki navrgel pobudo za današnji post.

Torej hardlink na unix datotečnih sistemih, veliko uporabljen, malo poznan, veliko manj kot njegov primitivni sorodnik symlink.

Nekako takole gre: na datotečnem sistemu ima vsaka datoteka svoj unikatni id, reče se mu “inode”.

Direktorijska struktura datotek je tabela, ki ima vnose (imena datotek), ki so kazalci na id-je datotek, torej inode. Ko se mi sprehajamo po tej strukturi datotek in zahtevamo datoteko, sistem preveri v tabeli kateri inode je pod datotečnim imenom, ga poišče po tej številki in servira.

Hardlink je možnost, da v direktorijski strukturi kažeta dve imeni datotek na isti id datoteke / inode.

V praksi:
# vpišemo vrstico "vsebina" v novo datoteko
:~/test simon$ echo vsebina >datoteka

# pregledamo vsebino datoteke
:~/test simon$ cat datoteka
vsebina

# pregledamo vsebino direktorija
:~/test simon$ ls -al
total 8
drwxr-xr-x 3 simon simon 102 Aug 20 23:53 .
drwxr-xr-x 44 simon simon 1496 Aug 20 23:52 ..
-rw-r--r-- 1 simon simon 8 Aug 20 23:53 datoteka

# naredimo hardlink datoteke "datoteka" v novo ime "hardlink"
:~/test simon$ ln datoteka hardlink

# pregledamo vsebino direktorija
:~/test simon$ ls -al
total 16
drwxr-xr-x 4 simon simon 136 Aug 20 23:53 .
drwxr-xr-x 44 simon simon 1496 Aug 20 23:52 ..
-rw-r--r-- 2 simon simon 8 Aug 20 23:53 datoteka
-rw-r--r-- 2 simon simon 8 Aug 20 23:53 hardlink

# pregledamo vsebino datoteke hardlink
:~/test simon$ cat hardlink
vsebina

# zapišemo vrtico "novavsebina" v datoteko hardlink
:~/test simon$ echo novavsebina >hardlink

# jasno se s tem spremeni vsebina druge
:~/test simon$ cat datoteka
novavsebina

# pa še način, da vidimo da datotečna imena kažeta na isti "id datoteke / inode" - prva kolona
:~/test simon$ ls -li
1082466 -rw-r--r-- 2 simon simon 12 Aug 21 00:01 datoteka
1082466 -rw-r--r-- 2 simon simon 12 Aug 21 00:01 hardlink

Zakonitosti hardlinkov:

  • hardlink-ate lahko samo datoteke,
  • hardlink do datoteke lahko postavite samo na isti datotečni sistem (na enak mountpoint), linkanje med diski torej ni mogoče,
  • vsebina datoteke bo iz diska izbrisana takrat, ko nanjo ne bo kazal več nobeden link. Torej ko zbrišete kateregakoli izmed dveh datotek, bo vsebina še vedno v drugi datoteki,
  • število hardlinkov datoteke lahko vidite v drugi koloni ukaza ls (bodite pozorni na primer zgoraj, ko je bila ena datoteka je bilo število hardlinkov 1, nato 2).

Uporabnost ? povsod kjer se enake datoteke pojavljajo v različnih direktorijih

  • pri sistemskih datotekah virtualnih okolij “jail na FreeBSD”, kjer ima vsak jail kopijo celotnega sistema,
  • varnostnih kopijah, pri čemer imamo lahko za vsak dan celotno direktorijsko strukturo strežnika, zares pa bo ena datoteka zasedla samo enkratno velikost.
  • blackbox programi, programi ki znajo opravljati već funkcij, glede na to kakšno ime smo jim dali. (primer /rescue na FreeBSD)
  • razno 🙂

Pa primitivni bratec symlink ?

Symlink pa pod datotečno ime zapiše pot do datoteke, na katero kaže, torej samo tekstovni opis kje najdemo datoteko.

Zakonitosti symlinka:

  • symlink-ate lahko direktorije in datoteke,
  • symlink lahko uporabljate med večimi diski / mount pointi,
  • symlink se ne ozira na to, če datoteka na katero kaze obstaja ali ne,
  • datoteka bo iz diska odstranjena, ko odstranimo original, torej datoteko na katero kažejo ostali symlinki.

Kaj uporabiti ? Seveda odvisno od primera, če želite samo malo organizirati datotečno strukturo in imeti ene stvari “pri roki”, bližje, potem symlink.

So pa stvari ki jih symlink ne zna, kot recimo če želite datoteko ki se nahaja v direktoriju do katerega uporabnik načeloma nima dostopa, deliti z njim, potem narediti hardlink v uporabniku viden prostor.

Ko želite, da se dodoteke obnašajo kot datoteke, ko jih želite sinhronizirat z rsyncom itd.

Z Vinijem sva namreč imela primer, pri katerem sva imela organizacijo datotečnih imen po nekem svojem ključu, ki pa, jasno, naročniku ni bil povšeči 🙂 Rešil je hardlinking, dve popolnoma drugačni ureditvi datotečnih imen, pod njima pa enake datoteke.

Toliko da prelomim ta molk,
kmalu več, noč,
s.

screen – virtualni terminal

Verjetno se vam je že zgodilo, da ja kakšen ukaz dlje časa trajal in niste imeli časa / možnosti, da imate za čas trajanja ukaza odprto terminalsko povezavo do strežnika.

Programček screen rešuje ta problem.

Zaženete screen z ukazom screen, potrdite z entrom disclaimer in znajdete se v ukazni lupini, ki se zdaj nahaja “znotraj” screena. Začenete ukaz ki ga želite in ko se izvaja, pritisnete tipke CTRL+A Z, torej stisnete CTRL, ko ga držite pritisnete še A, spustite obedve tipki in pritisnete Z.

dobili boste sporočilo v stilu:

[1]+ Stopped screen

in mirno se lahko odjavite iz sistema.

Ko se kasneje ponovno prijavite v sistem, napišite ukaz: screen -r in screen bo nadaljeval terminalsko sejo, v kateri ste prej zagnali ukaz. Videli boste tudi izpis programa za nazaj.

Še ena luštna… če se tudi prijatelj prijavi v isti sistem z enakim uporabnikom in ste vi v screen-u, lahko izvede screen -x, pri čemer se bo vključil v vašo sejo in gledal kaj počenjate, lahko tudi kaj napisal… Mogoče tudi primerno za kaj komu pokazati…

Če bo interes bom napisal o screenu še kaj več, je namreč tudi odlično orodje za vsakodnevno terminalsko delo, ker nam omogoča preko ene terminalske seje več odprtin lupin v stilu “tab”-ov.

s.

TušMobil – dobrodošel…

tusmobil

Pa je med nami, tretji slovenski mobilni operater, TušMobil.

Sliši se dobro 🙂

Več kmalu, slikica je čudna, telefon ne zna auto-focusa…

Bo danes ma.tija.cc nardil profi fotko s tapravo mašino.

S.

PowerBook, pasme G4, išče novega lastnika

Prišel je čas slovesa, dobro si služil…

Torej, *smrk*,

Prodam, PowerBook, G4, 1.5 GHz PowerPC, 768M RAM, CD-RW, 60G disk, bluetooth, AirPort Extreme… International razpored tipk, dodatna slovenska USB tipkovnica. Baterija je nova (stare so bile nevarne in jih je Apple vploklical nazaj), a je malo poskodovana, sem ga malo ruknil… malo 🙂

powerbook 1 powerbook 2
powerbook 3
powerbook 4

Cena: 700 €

kontakt @ simon@zekar.com

skriptna pomoč pri konfiguraciji Cisco opreme

Žal starejše verzije Ciscotovega IOS sistema ne poznajo “interface range” ukaza, ki omogoča da več portov konfigurirate naenkrat, zato si je potrebno pomagati drugače.

da bi vsak port konfigurirali ročno, je prezamudno, še posebaj, če imate switch z 48-imi porti.

Pomagate si lahko z enovrstičnico (bash), kot je recimo tale:

i=1; while [ $i -lt 49 ]; do echo "int fast0/$i"; echo "span portfast"; echo "switchport mode access" ; echo "switchport access vlan 934" ; let i+=1; done;

koda zgoraj bo za vsak port izpisala konfiguracijo, izpis lahko copy-paste-ate v cisco switch in marsikatera minuta vam bo prihranjena. Seveda si kodo preuredite za željeno število portov in seveda za željene ukaze.

Kakorkoli, gre samo za prikaz zanke – štetja v ukazni lupini, kar lahko s pridom uporabljate za veliko stvari.

Ponedeljek je dela prost dan ! 😉

ibm x3950 bučka

Spet ena iz družine bučk.

Spet IBM.

Novejši strežnik, IBM x3950.

ibm x3950 bucka

WTF ! se mi zdi da sem enako sliko videl IBM-ovih 286-kah, zdaj jih pa vidim na večjih strežnikih. Tile IBM fantje so malo rusty…

Aja, server seveda nima floppy-ja 🙂

Slikam ga pa raj ne, grd..



Copyright © 2004–2009. All rights reserved.

RSS Feed. This blog is proudly powered by Wordpress and uses Modern Clix, a theme by Rodrigo Galindez.