Am arok FS. Ink s cape. > s tr.28

Wielkość: px
Rozpocząć pokaz od strony:

Download "Am arok FS. Ink s cape. > s tr.28"

Transkrypt

1 Am arok FS Am arok FS je s tap ik acją roz s z e rz ającą m oż iw ości Am arok 'a. Tw orz y ona pe łnoe k ranow y inte rfe js do te go odtw arz acz a, k tóry z aw ie ra je go pods taw ow e funk cje. > s tr.8 Ink s cape s tr. 5 W s z ys cy w św ie cie w o ne go oprogram ow ania z ajm ujący s ię i inte re s ujący grafik ą z nają s ław ne go GIM P-a. Iw s z ys cy te ż z ape w ne s łys z e io program ie naz yw ającym s ię Ink s cape, a e o i e te n pie rw s z y je s tna e życie doce niany (uw aża s ię go z a otw arty odpow ie dnik profe s jona ne go Ph otos h opa), to Ink s cape nie z as łuże nie troch ę poz os taje w cie niu. > s tr.28

2 W s tępniak W se jm ie - jak zw yk e - w ojna. Sytuacja zm ie nia się z dnia na dzie ń. A u nas prze ciw nie... jak zw yk e dużo k onk re tów i cie k aw ych inform acji. W b ie żącym num e rze znajdzie m y opis dystryb ucji SUSE Linux Ente rprise De sk top 10 sp1, a dok ładnie inform acje o zm ianach, jak ie w niósł Se rvice Pack 1. O pis sam e go SLED10 m ożna zna e źć w num e rze trze cim Dragonia M agazine. Standardow o, w num e rze m ożna prze czytać tak że se rię artyk ułów dotyczących program ow ania oraz długo ocze k iw aną, drugą część artyk ułu dotyczące go Jab b e ra. Prze czytam y rów nie ż o b ardzo dob rym program ie do grafik i w e k torow e j Ink scape a w załączonych do te go num e ru p ik ach znajdzie m y instruk cję ob sługi w spom niane jap ik acji. I je szcze k i k a słów o Dragonii 'od k uch ni'. Pub ik uje m y coraz w ięce j te k stów, pod tym w zg ęde m cały czas się rozw ijam y. A e, nigdy nie je st tak dob rze, ab y nie m ogło b yć e pie j. W zw iązk u z tym, zapraszam y w szystk ich, k tórym św iat w o ne go oprogram ow ania nie je st ob cy, do w spółtw orze nia nasze go czasopism a. Firm a Am azis.ne t z Poznania, prze dstaw icie M andrivy na Po sk ę, w yposażył nas w parę k ont Z im b ry. W tym m ie jscu ch cie iśm y podzięk ow ać za w sparcie nas tym oprogram ow anie m. Z im b ra, to prze de w szystk im św ie tny program pocztow y dostępny prze z prze g ądark ę (w yk orzystujący te ch no ogę Ajax), a e zaw ie ra dodatk ow o funk cje k a e ndarza i prze ch ow yw ania dok um e ntów e e k tronicznych. Je że i k toś ch ce spraw dzić Z im b rę, to zapraszam y do k orzystania z te stow e go k onta w K ub ie M andrivy (m andrivac ub.p ). R e dak tor Nacze ny Piotr Krak ow iak d ragon W s z ys tk ie m ate riały s ą objęte praw e m autors k im (na z as adach ice ncji Cre ative Com m ons ). Nie ponos im y odpow ie dz ia ności z a tre ść ogłos z e ń. Naz w y firm, naz w y h and ow e i z nak i tow arow e, je ś i z os tały użyte w pub ik acji, to je dynie w ce ach inform acyjnych i s ą w łas nością pos z cz e gó nych podm iotów. S PIS T R E Ś C I NEW S SYSTEM 5 - SLED 10 s p1 SO FTW ARE 8 - Am arok FS 9 - Audio 14 - Konfiguracja M P aye r-a 16 - Gram ps 19 - Kopia z apas ow a 21 - Jabbe r cz Ink s cape 30 - Se rw e r w w w cz Baz a pod k ontro ą cz.3 PRO GRAM OW ANIE 37 - Program ow anie w s ys te m ie GNU/Linux cz C+ + k as a ggs tre am 54 - QT4 cz Java cz Bas h W YW IAD 68 - W yw iad z Pau iną Budz oń RO Z RYW K A 71 - O o ite LITERATURA 72 - Z roz um ie ć DB SUSE Linux Piotr Krak ow iak (dragon) - re dak tor nacz e ny, z ałożycie, k oordynacja, s k ład, Tom as z Cz unk o (tom cas h ) - re dak tor, ne w s y Macie k Ma inow s k i (borim ir),karokoz ioł (Axio) - re dak torz y, organiz acja k onk urs ów, opie k a nad forum, ne w s y Piotr Sz e w cz uk, Rafał Dom e rack i (RD) - re dak torz y, opie k a nad h os tingie m, opie k a nad w w w Katarz yna Myre k (O ivia), Pau ina Budz oń, Tom as z Łucz ak (T u), - re dak torz y Mich ał Rz e pk a - re dak tor, opie k a nad w w w Krz ys z tofbis k up - re dak tor, opie k a nad w w w W s półpracujący: Prz e m e k Ka ick i, Tom as z Be dnars k i, Rafał Topo nick i w w w : h ttp://w w w.dragonia.p forum : h ttp://forum.dragonia.p e -m ai : dragonia.m agaz gm ai.com LayoutDragonia M agaz ine prz ygotow ałm 4c. 2

3 NE W S DYSTRYBUCJE W tym m ie siącu pojaw iło się całk ie m dużo w ydań te stow ych now ych w e rsji znanych dystryb ucji: Now e w e rs je M andrivy W sie rpniu w ydano dw ie now e w e rsje syste m ów M andriva: po sk ą Xtre m e II i b e ta 1 M andriva o nazw ie k odow e j Cassini. W now e j odsłonie Xtre m e w idać w ie e zm ian w porów naniu z je j poprze dniczk ą. Jak m ów ią tw órcy: w w ydaniu tym zna azło się w ie e cie k aw oste k : now e Ce ntrum Ste row ania M andriva Linux, całk ie m now e narzędzie Ce ntrum R ozryw k i, now e w e rsje program ów do pob ie rania p ik ów z sie ci P2P i w sparcie d a m ode m ów Ne ostrady. Dodano tak że now ąw e rsjęją- dra (2.6.22) oraz KDE z num e rk ie m Cassini (nazw ana na cze ść francusk ie go astronom a) to pie rw sza odsłona nadch odzące j M andrivy , k tóra zapow iada się b ardzo cie k aw ie. Poza w ie om a popraw k am i i u e psze niam i, znajdzie m y w nie j GNO M E 2.20, KDE 3.5.7, KDE 4 z pu pite m se m antycznym NEPO M UK i XFCE 4.4.1, a to w szystk o tak że z najnow szym k e rne em. W ch w i i pisania te go te k stu, de w e ope rzy M andrivy p anują w ciągu dw óch tygodni w ydać w e rsję b e ta 2. M ie jm y nadzie ję, że im się uda! Now a, te s tow a Fe dora Na początk u sie rpnia w ydana została pie rw sza, te stow a w e rsja now e j Fe dory 8. Now ością m a b yć now y w yg ąd GNO M E i najnow sze KDE 4. Jak zape w niają de w e ope rzy: popraw ie niu u e gnie tak że ob sługa Xe na, QEM U, KVM. W szystk ie inform acje są oczyw iście dostępne na stronie fe dora.p. R odzina Ub u ntu s ię rozras ta Udostępniono czw arte w ydanie a ph a now e go Ub untu 7.10 (Gutsy Gib b on). Now ością je st Gnom e z num e rk ie m , O pe no ffice.org 2.3 insta ow any dom yś nie i w yszuk iw ark a p ik ów Track e r. W e rsja fina na m a b yć w ydana 18. paździe rnik a. W now ym Kub untu (Ub untu z KDE) pojaw iło się KDE 4 Be ta 1, a w Xub untu (Ub untu z Xfce ) dodano program Eb ox i zm ie niono w yg ąd. ope nsuse 10.3 Be ta 1 przys pie s za Na początk u sie rpnia pojaw iły się Live CD z now ą w e rsją b e ta 1 ope nsuse 10.3.Dostępne są one ze środow isk am i KDE ub GNO M E. Podob no uruch am ia się praw ie o połow ę szyb cie j, niż je j poprze dniczk i. W e rsja je st je dnak ciąg e b ardzo te stow a (stąd Live CD), a e de w e ope rzy zach ęcają do te stów i zgłaszania prob e m ów. ope nsuse.org 3

4 NE W S ŚRO DOW ISK A GRAFICZ NE K D E 4.0 Be ta 1 O d 2. sie rpnia m ożna zob aczyć now ą w e rsję b e ta 1 KDE 4.0. Z apow iadają się dość pow ażne zm iany, w ięc w szystk ich zainte re sow anych zapraszam y do te stów! Dodano w nie jnow ą, tak że je szcze te stow ą w e rsje Koffice oraz zinte grow ano k i k a podstaw ow ych ap ik acji. W tym m om e ncie dostępne są już pak ie ty d a w ięk szości dystryb ucji. k de.org Gnom e s k ończyło 10 at 15- go sie rpnia oficja nie ogłoszono pow stanie proje k tu GNU Ne tw ork O b je ct M ode Environm e nt, jak o k onk ure ncyjne go środow isk a graficzne go d a po- w stałe go już w cze śnie j KDE. Na stronach m ai.gnom e.org ciąg e dostępny je st e - m aiw ysłany prze z M igue a de Icazaw, k tórym inform ow ał o pow staniu proje k tu. W tym m om e ncie najnow sza w e rsja te go środow isk a m a num e re k 2.20 i cie szy się całk ie m dużym zainte re sow anie m. gnom e.org ge n, O 3Space s. W szystk ie inform acje na te m at ak cji są dostępne na stronie w ik i.jak i inux.org/e duk acja. W s ie ci z na az ła i pouk ładała Pau ina Budz oń SPO ŁECZ NO ŚĆ W io O w s zk o e - Linu x d a s zk ół W o ne i O tw arte O program ow anie (W io O ) w szk o e Linux d a szk ół to proje k t pow stały w cze rw cu rok u, z inicjatyw y Fundacji W io O oraz porta u jak i inux.org. Je go głów nym założe nie m je st zainte re sow anie W io O szk ół, uczniów, stude ntów i nauczycie i. O statnio do proje k tu w łączył się Am azis.ne t (M andriva Po and), k tóry m a zape w nić oprogram ow anie M andriva, Z im b ra, Axi- 4

5 S Y S TE M SLEDz ik w pus z ce cz y i o SLED 10 SP1 O k re ś e nie s e rvice pack praw dopodobnie nie w z budz a s ym patii u w ięk s z ości cz yte nik ów Dragonii. Co w ięce j, m oże s ię naw e t k ojarz yć z ty k o poz ornym u e ps z e nie m. Nas uw a s ię w ięc pytanie : Cz y nadaw arto inte re s ow ać s ię SUSE Linux Ente rpris e De s k top 10? touch padów, ponie w aż dostęp do ostatnio otw arte go dok um e ntu czy u ub ione go k ata ogu znacznie się sk rócił. (Porów nanie w yg ądu je stna rysunk u nr 1) PIO TR PACH O LAK Na pie rw szy rzutok a w ydaje się, że nic się nie zm ie niło insta ator nadate n sam, GNO M E po uruch om ie niu w yg ąda tak sam o, w zasob nik u syste m ow ym nadaw idać ik onę ze n- update r'a... Je dnak to ty ko złudze nie k ik nięcie w m e nu Kom pute r już je rozw ie w a. M e nu, k tóre je st je dnym z sym b o i SLED'a, zostało odśw ie żone. R ozw ijana ista, pozw a ająca prze łączać pom iędzy u ub ionym i ap ik acjam i, dok um e ntam i czy m ie jscam i, została zam ie niona na trzy poziom e przycisk i odpow iadające pozycjom z isty. Z m iana pow inna prze de w szystk im ucie szyć fanów Rys 1 - Stare vs now e m e nu Inną zauw aża ną zm ianą je st uak tua nie nie O pe no ffice.org do w e rsji 2.1. Nie ste ty, czas uruch am iania się ap ik acji nadanie zach w yca, je dnak łatw o to zm ie nić są m inim um dw a nie w yk uczające się rozw iązania. Pie rw sze z nich, to w łącze nie ik ony szyb k ie go uruch am iania na pask u zadań, a drugie po e ga na w yłącze niu zw yk e nie przydatne j javy. W szystk o to m ożna ustaw ić w opcjach O O.org (Narzędzia - > O pcje...), odpow ie dnio w O pe no ffice.org - > Pam ięć i RYS 2 Cube 5

6 S Y S TE M O pe no ffice.org - > Java. Po tych zm ianach O O.org uruch am ia się praw ie natych m iast po dw uk rotnym k ik nięciu na dok um e nt. nych aw arii podczas zw ie dzania syste m u. Z de cydow anie najsłab szą stroną ŚLEDzik a są m u tim e dia. Nie w ynik a to je dnak z zanie db ania tw órk o z praw a ob ow iązujące go w Stanach Je dnym z e pszych ch w ytów SLED'a b yły XGL ców, ty e syste m odtw orzy oggi (k ode k i oraz com piz (R ys. 2). Dziś, prak tycznie k ażda dystry- Z je dnoczonych. O i b ucja m oże poch w a ić się sw oim ze staw e m fa ują- dźw ięk u Vorb is oraz ob razy Th e roa), to już z DivX cych ok ie ne k, prze z co te pozycje straciły na czy W M A sob ie nie poradził. Co dziw ne, m iałte ż proe m y z nie sk om pre sow anym vide o i audio w k onte znacze niu. Nie pow oduje to je dnak, że nie w arto się b isty m ożna b yłob y dopisać nim i zainte re sow ać po k ik nięciu na Efe k ty pu pi- ne rze m k v i ogm. Do te j e po insta acji w syste m ie są dw ie ap itu w Ce ntrum Ste row ania pojaw ia się ok no, w k tó- je szcze m p3, a ne otw orzyć te form aty R e ap aye r i Banrym m ożna w łączyć/w yłączyć XGL oraz k acje zdo sk onfigurow ać com piza w podstaw ow ym stopniu. Bardzie j zaaw ansow aną k onfiguracje nie ste ty trze b a prze prow adzić gconf- e ditor'e m. Sam com piz (w e rsja 0.4.0, czy i stab i na) oraz XGL działał b e z żad- RYS 3 - bans h e e sh e e, a w łaściw ie H e ix Bansh e e. Prob em pozostałych form atów m ożna rozw iązać dodając re pozytorium Pack m ani prze znaczone d a SUSE 10.1, a e e pie j je st ręcznie prze b udow ać pak ie ty src.rpm ściągnięte ze strony Pack m ana. Poruszając spraw ę pak ie tów, nie m ożna pom inąć spraw y zarządzania nim i w SLED 10 SP1 je st za nie odpow ie dzia ne Z M D, co pe w nie pow oduje uprze dze nia u użytk ow nik ów ope nsuse. Proce s zm d.e xe je żył w łosy nie je dne m u adm inistratorow i w e rsji ope n, a topnie jące zasob y syste m ow e dzięk i nie m u stały się nie złą podstaw ą do strasze nia św ie żych w Linuk sie. Tutaj coś tak ie go nie m a m ie jsca YaST prze w yższa w ygodą używ ania naw e t sm arta. RYS 5 K aw ałe k oo.org z m c w te rm ina u na s tandardz ie RYS 4 - z e n-update r 6

7 S Y S TE M Dość cie k aw y je st rug, czy i k onso ow y k ie nt Z M D. Działa znacznie szyb cie j niż sm art czy yum oraz zape w nia pe łną k ontro e nad de m one m Z M D. W e rsja Ente rprise, tak jak norm a ne SUSE, a późnie j ope nsuse, za icza się do je dne j z ładnie jszych dystryb ucji Linuk sa. Nie ste ty, w ystępują pe w ne zgrzyty ze staw ik on i czcionk a w O pe no ffice.org, k o ory pa e ty Te rm ina a GNO M E oraz w yg ąd czcione k (a e ty k o na m onitorze LCD). O i e łatw o zm ie nić ik ony na Tango oraz czcionk ę na syste m ow ą w O O.org (Narzędzia - > O pcje - > W idok ), to z pa e tą je st troch ę trudnie j. Ustaw ianie ręczne je st dość żm udne... Na szczęście, k toś już o tym pom yś ał rozw iązanie m ożna zna e źć na b ogu Da.Ki iii. W ystarczy w ydać po e ce nie : gconftoo-2 --set /apps/gnome-termina/profies/defaut/paette --type string '#2E2E :#CCCC :#4E4E9A9A0606: #C4C4A0A00000:# A4A4:# B7B:# k i ope nsuse - com m unity.org iii (prze tłum aczoną w e rsję te go artyk ułu m ożna zna e źć porta.suse.p iv). I. h ttp://pack m an. ink s 2 inu x.org/ II. h ttp://h orode ck i.ne t/20 0 6/11/0 7/tangofiDość sporą w adą są w e rsje oprogram ow ania, Xorg k acja_ te rm ina a/ 6.9.0, GNO M E , k e rne x, KDE czy III. h ttp://ope ns u s e -com m u nity.org/su b pigaim 1.5 dziś nie zach w ycają. Le k k ie pocie sze nie da- xe H inting je inform acja o b ack portow aniu now ości czy u e p- IV. h ttp://porta.s u s e.p /insze ń ze św ie ższych w e rsji np. ste row nik a do k art de x.ph p/20 0 7/0 5/27/ adnie js ze -czcionk i-nainte a z Xorg 7.1.0, a e to nie to sam o co now e opro- m onitorach - cd/ gram ow anie. M nie jsze ap ik acje, tak ie jak np. ife - V. h ttp://re pos.ope ns u s e.org/h om e :/ob i_ g / re a, łatw o m ożna zak tua izow ać używ ając pak ie tów dostępnych w ze w nętrznych re pozytoriach SUSE Nie ste ty, na ope nsuse Bui d Se rvice m ożna ze św ie cą szuk ać dużych re pozytoriów d a SLED 10. Nie m a te ż oficja nych pak ie tów k adu, praw dopodob nie ze w zg ędu na b rak dostępu osob y pak ie tujące j do dystryb ucji. R ozw iązać to m ożna używ ając nie oficja nych pak ie tów v, dostępne są tam rów nie ż w e rsje d a SUSE 10.0, 10.1, ope nsuse 10.2 i 10.3 (inna spraw a, że one o w ie e e pie j się inte grują z SLED/SUSE/ope nsuse, niż te oficja ne ) A9A:#D3D3D7D7CFCF:# :#E FEF :#8A8AE2E23434:#FCFCE9E94F4F:#72729F9FCFCF:#ADAD7F7FA8A8:#3434 E2E2E2E2:#EEEEEEEEECEC' W now szych w e rsjach GNO M E pa e ta Tango je st dostępna na iście pre de finiow anych ze staw ów k o orów. Prob e m nie zb yt ładnych czcione k na pane ach LCD najłatw ie jrozw iązać stosując się do porad na w i- Se rvice Pack 1 nie w prow adza żadnych re w o ucyjnych zm ian, je st to racze j k o e jne u e psze nie i tak już dob re go produk tu. W sze k ie zna e zione nie dogodności m ożna usunąć dzięk i inform acjom zdob ytym za pom ocą w yszuk iw ark i goog e. I ość b łędów w sam ym syste m ie je st znik om a, co na pe w no m a w pływ na stab i nośćsyste m u a je ston prak tycznie b e zaw aryjny. 7

8 S O FTW A R E Am arok FS Am arok FS je s t ap ik acją roz s z e rz ającą m oż iw ości Am arok 'a. Tw orz y ona pe łnoe k ranow y inte rfe js do te go odtw arz acz a, k tóry z aw ie ra je go pods taw ow e funk cje. K ARO LKO Z IO Ł Am arok je st ch yb a naj e pszym program e m do odtw arzania m uzyk i, z jak im się spotk ałe m. O czyw iście, do te j w ie ce popu arne j ap ik acji pow stały różne dodatk i. W śród nich zna azłe m pe w ie n rodzyne k Am arok FS. Ap ik acja ta je st pe łnoe k ranow ym fronte nd'e m d a Am arok a, czy i inacze j m ów iąc prze nosi ste row anie Am arok ie m do w łasne go inte rfe jsu pe łnoe k ranow e go. W łaściw ie w szystk o, co potrafi opisyw any prze ze m nie program, w idać na załączonym zrzucie e k ranu. Am arok FS w yśw ie t a inform acje o utw orze (tytuł, autora, nazw ę i rok w ydania a b um u), postęp odtw arzania utw oru, przycisk i ste rujące (odtw arzaj, stop, pauza, następny i poprze dni utw ór) oraz ok ładk ę płyty, je że i je st dostępna. Na do e e k ranu zaś trzy k o e jne piose nk i, k tóre b ędą ode grane. O gó nie, inte rfe js je st dość m iły w użytk ow aniu. Cze go natom iast Am arok FS nie potra- Puryści podczas słuch ania m uzyk i w yłączają naw e t m onitor. fi?brak je st w ięk szości funk cji Am arok a, np. nie m a zaaw ansow anych opcji zarządzania p ay istą (w Am arok FS zarządzanie p ay istą sprow adza się w zasadzie ty k o do sk ak ania do przodu i w ste cz). Szk oda tak że, że nie m a inte gracji Am arok FS z sam ym Am arok ie m Am arok FS po prostu w łącza się z m e nu, gdy Am arok już działa. Być m oże w przyszłych w e rsjach ob u ap ik acji ich tw órcy pom yś ą o dodaniu do inte rfe jsu Am arok a, jak ie goś m ałe go przycisk u, prze noszące go ap ik ację w tryb pe łnow ym iarow y. A e to ok aże się za jak iś czas. Strona program u to [1]. Tw órcy program u um oż iw i i użytk ow nik om tw orze nie w łasnych te m atów Am arok FS (gdyb y k om uś nie odpow iadał dom yś ny - czarny). Ab y stw orzyć w łasny te m at, w arto zapoznać się z p ik ie m [2] i m ie ć troch ę w yob raźni artystyczne j. Z apraszam do te stow ania ap ik acji. [1]h ttp://w w w.k de apps.org/cote nt/s h ow.ph p?conte nt=52641 [2]/us r/s h are /doc/am arok FS/th e m e -h ow to.txt Kie dy w arto używ ać Am arok FS?Gdy m am y dość ik one k na pu picie i znudził się nam już inte rfe js Am arok a. A tak że w te dy, gdy ch ce m y po prostu w spok oju posłuch ać m uzyk i. Tak, jak og ądanie fi m ów w tryb ie pe łnoe k ranow ym je st przyje m nie jsze, niż w zm ak sym a izow anym ok ie nk u, tak te ż je st ze słuch anie m m uzyk i. 8

9 S O FTW A R E Audio Słuch anie m uz yk i pros to z płyt audio je s t nie z w yk e nie w ygodne - napęd m am y z ajęty, a płyty trz e ba co ch w i ę prz e k ładać. Najw yżs z y w ięc cz as, aby z grać nas z ą k o e k cja na dys k do p ik ów.m p3,.ogg, ub.f ack. 10,6M B1. Czym je st PCM?Dźw ięk docie ra do głośnik ów w form ie ana ogow e j, co oznacza, że sygnałe ek - je st na płycie, k ie dy się zaczynają i k ończą, w ydaje m y w ięc po e ce nia cdstatus ub cdparanoia - vsq. Ar- tryczny m ożna prze dstaw ić jak o w yk re s funk cji (np. sinusoidy). PCM to m e toda pre ze ntow ania sygnału ana ogow e go w cyfrow e j postaci. W naszym w ypadk u razy na se k undę, w rów nych odstępach czasu, pob ie rana je st w artość ch w i ow a sygnału, k tóra je st de finiow ana za pom ocą 16 b itów d a k ażde go k a- gum e nt - - cddb program u cdstatus pozw o i na rozpoznanie płyty i ściągnięcie z inte rne tow e j b azy tytułu płyty oraz poszcze gó nych utw orów - je st to szcze gó nie użyte czne, je że i nie ch ce m y k orzystać z żadnych narzędzi oprócz ripe ra i k ode ra. Po e ce nie cdstatus - - cddb - - rip zripuje całą płytę, zapisując nału. Im w ięk sze prób k ow anie, tym m nie jsze znie k ształce nia sygnału. Podstaw ow ą je dnostk ą zapisu na płycie je st ram k a, sk ładająca się z 33 b ajtów danych z k tórych ty k o w 24 zapisane są dane audio. R am k i grupow ane są w se k tory, k ażdy z nich zaw ie ra 2352 b ajty, a w czasie 1s odczytanych zostaje 75 se k torów. utw ory w form acie.w av w b ie żącym k ata ogu (tw orząc odpow ie dnie podk ata ogi w yk onaw ca/płyta). Podob nie działa cdparanoia - B, z tym, że p ik i b ędą m iały nazw ę track XX.w av. R ipow anie k onk re tnych utw orów te ż nie przysparza prob e m ów : cdstatus - rip - - start A - - stop B - - re adch unk 50, gdzie A to nurafał TO PO LNICK I m e r pie rw sze go ripow ane go utw oru a B ostatnie go. Dom yś nie cdstatus czytaw danym czasie je dną ram Płyty CD tota nie zdom inow ały dystryb ucję m uzyk i, k ę i je że i odczyt zak ończy się suk ce se m, prze ch odzi b ędąc podstaw ow ym m e dium je j rozpow sze ch nia- Proce s k opiow anie i k om pre sji utw orów zaw artych i zgrania do następne j. Tak ie rozw iązanie je st je dnak pow o nia. Użytk ow nicy Linuk sa, k tórzy dotych czas używ a- na płycie rozpoczynam y do ripow ania, czy a, i e ram e k m a b yć i W indow s, są przyzw yczaje ni do te go, iż po m ate riału zaw arte go na płycie na dysk tw ardy nasze - ne ; param e tr re adch unk ok re ś go k om put e ra ł ącznie z podzie e nie m go na ut w ory. odczyt yw anych rów nocze śnie (pow inna b yć to iczb a w łoże niu k rążk a do napędu zob aczą na nim p ik i.cda.prób a zam ontow ania płyty audio k ończy się je d- O m ów im y dw a narzędzia cdparanoia i cdstatus. nie w ięk sza niż 75). W przypadk u porysow ane j płyty ik i.raw ub - częście j m ożna sk orzystać z param e tru - - re trie s k tóry de finak b łęde m. Dzie je się tak d ate go, że na płycie nie Efe k te m działania ripe rów są p ik i są nie - niuje i e razy program m a sprób ow ać odczytać dane istnie je syste m p ik ów, a już na pe w no nie m a p i- spotyk ane - w ave. W ob u przypadk ach p sk om pre sow ane, w j ak ości CD, cze go e fe k t e m j e st (dom yś nie 3). Je ś i i to nie pom oże m ożna sprób ok ów płyta audio to porostu ciąg danych. CDDA poe i unie m oż iw ia prze ch o- w ać ob niżyć prędk ość cdrom u za pom ocą h dparm. w stała na prze łom ie at 70 i 80 jak o ow oc w spó ne j ich duża ob jętość. To z k o e k cji w tych form atach. P ik W yb rane utw ory m ożna ripow ać rów nie ż za pom ocą pracy firm Sony i Ph i ips, a je j standard zostałspisa- w yw anie nasze j k o ny w tzw. Cze rw one j k siędze. De finiuje ona sposób.w av, w odróżnie niu od.raw, zaw ie ra inform ację o częście j spotyk ane go narzędzia - cdparanoia. W ydaości k anałów, prze z co ich używ a- nie po e ce nia cdparanoia - B spow oduje, że zapisu na k rążk u dźw ięk ste re o; prób k ow anie prób k ow aniu oraz i i44,1k H z, 16 b itów PCM - oznacza to, że 1s nagrania nie je st znacznie b ardzie j w ygodne. W k ładam y k rą- utw ory od 1 do 5 zostaną zapisane w osob nych p m y na początk u i e piose ne k k ach (co gw arantuje param e tr - B). Dw a m yś nik i są zajm uje *16*2 = 1411KB, zaś 1 m inuta ok. że k do napędu, ok re ś 9

10 S O FTW A R E w ym agane. Je że i inte re suje nas je dynie część trze cie jpiose nk i, użyjm y k onstruk cji 3[35], k tóra spow oduje zgranie utw oru od 35s do k ońca je go trw ania, natom iast - B 2[1:10.30 ]- 5[40 ] sk opiuje 2 utw ór począw szy od 1m 10 s i 30 se k tora do 40 s piąte go utw oru um ie szczając w ynik i w osob nych p ik ach. W ięce j szcze gółów m oże m y zna e źć w m anua u. Następnym k rok ie m po sk opiow aniu m ate riału je st je go k om pre sja - stratna do form atów m p3 b ądź ogg- vorb is, ub b e zstratna do form atu f ack. Z ab ie g te n m a na ce u re duk cje ob jętości zajm ow ane j prze z p ik i.w av, w przypadk u k ode k ów stratnych re duk cja ta osiągana je st rów nie ż poprze z zm nie jsze nie jak ości nagrania. Kom pre sja b e zstratna, ze w zg ędu na rzadk ość je j stosow ania, nie b ędzie dok ładnie om aw iana. M P3 - am e m p3 to zde cydow anie najpopu arnie jszy form atzapisu p ik ów m uzycznych. Dzięk i w ysok ie j k om pre sji, osiągane jb e z znaczne jstraty na jak ości nagrania, zysk ałsze rok ie zastosow anie w - nie ste ty rów nie ż nie e ga nym rozpow sze ch nianiu m uzyk i za pośre dnictw e m inte rne tu. Lam e je st uw ażany za naj e pszy e ncode r form atu m p3, zarów no ze w zg ędu na w ysok ą jak ość tw orzonych p ik ów jak i ze w zg ędu na szyb k ość działania oraz b ogactw o ofe row anych opcji. Z adanie m program u je st stratna k om pre sja (czy i tak a, przy k tóre jspada jak ośćnagrania) form atu.w avdo.m p3.strata w ynik a ze stosow ania prze z form at m p3 m ode u psych oak ustyczne go. O k azuje się b ow ie m, że czułość udzk ie go uch a je st zm ie nna: m a e je przy b ardzo w ysok ich i b ardzo nisk ich częstot iw ościach ; głośny dźw ięk zagłusza cich y o tak ie j sam e j w ysok ości i w ystępujący rów nocze śnie, ch w i ę późnie j ub, o dziw o, ch w i ę w cze śnie j.badania nad m ode e m m ają za zadanie e im inację z nagrania dźw ięk ów, k tóre i tak nie b yłyb y słysza ne d a prze ciętne go słuch acza, pow odując re duk cje i ości inform acji potrze b nych do zak odow ania utw oru. Czynnik ie m de cydującym o jak ości p ik u m p3, oprócz jak ości m ode u psych oak ustyczne go, je stw yb rany b itrate (prze pustow ość).je stto w artość de finiująca i e danych (w KB) zostaje zużytych na zak odow anie 1s nagrania. Form at m p3 ob sługuje trzy rodzaje b itrate CBR (constantb itrate ) stały b i- trate, VBR (variab e b it rate ) zm ie nny b itrate oraz ABR. Gdy używ am y CBR, k ażda se k unda nagrania zajm uje ty e sam o m ie jsca nie za e żnie od te go czy zaw ie ra ciszę, czy nagranie ork ie stry sym foniczne j. Tak ie rozw iązanie b yło k ie dyś sze rok o stosow ane ; ob e cnie, ze w zg ędu na prze w idyw a ność ob jętości nagrania, znajduje zastosow anie je dynie przy k om pre sji fi m ów. W przypadk u VBR de finiuje m y pożądaną jak ość nagrania, a k ode r sam w yb ie ra b itrate odpow ie dni d a dane j ch w i i, e fe k te m cze go je st znacznie e psza jak ość nagrania. W arto nauczyć się podstaw y ob sługi am e, gdyż z je go opcji b ędzie m y zm usze niu k orzystać rów nie ż w narzędziach graficznych. am e - b 128 p ik 1.w av p ik 1.m p3 spow oduje k onw e rsje p ik u.w av do p ik u m p3 CBR z b itrate 128k b ps (k i ob itów na se k ). Bitrate na poziom e 32 ub 64 je st w sk azany do k om pre sji m ow y, do k om pre sji m uzyk i odtw arzane j na niższe j k asy odtw arzaczach np. na prze nośnych odtw arzaczach m p3 w yposażonych w m ałe douszne słuch aw k i. P ik zak odow any z użycie m b itrate 19 2 k b ps je st d a w ięk szości słuch aczy ide ntyczny z oryginałe m. W w ięk szości przypadk ów zde cydow anie e pszym rozw iązanie m je st użycie VBR, osiągam y to za pom ocą param e tru - v. Użycie - Vn, gdzie 0 <n<9, de finiuje jak ość (0 - najw yższa, 4- dom yś na) nagrania w standardzie VBR poprze z zm ianę zak re sów b itrate. Innym sposob e m je stużycie - b i - B, k tóre pozw a ają de finiow ać najm nie jszy2 i najw ięk szy b itrate. Jak ość nagrania m oże m y popraw ić rów nie ż dzięk i 10

11 S O FTW A R E dzie sięciostopniow e j sk a i param e tru q (0 - najw yższa, 5- dom yś na). Popraw ia on w ynik i uzysk iw ane za pom ocą ana izy psych oak ustyczne j. Argum e nt - h je st rów noznaczny z q 2, natom iast - f z q 7 (używ any, je że i za e ży nam na czasie ). Autorzy am e odradzają je dnak k orzystanie z q 0 oraz q 1 gdyż czas k om pre sji w zrasta ok oło dw uk rotnie, a ob jętość p ik u o ok 10 % i nie m a gw arancji e psze j niż w w ypadk u - h jak ości. W art zauw aże nia je st param e tr - - noath, k tóry pow oduje nie zapisyw anie dźw ięk ów, k tórych natęże nie je st poniże j progu słysza ności. W ażnym ustaw ie nie m k ażde j e m pe trójk i je st używ any tryb ste re o, w yb ie rany za pośre dnictw e m param e tru - m : m m onofoniczny dob ry d a utw orów nisk o prze pustow ych oraz udzk ie jm ow y s ste re o dom yś ny w przypadk ach innych niż - j d duach anne s - całk ow ite ste re o k ażdy k anał k odow any je st zupe łnie nie za e żnie, w b re w pozorom w pływ a to ne gatyw nie na jak ość nagrania przy stałe j je go ob jętości j joint ste re o te ch nik a zapisu ste re o w yk orzystująca podob ie ństw a na ob u k anałach. Używ ana w utw orach o niższe j jak ości (dom yś nie d a VBR - V> 4 ub b itrate <160 k b ps) Jak a je st różnica m iędzy - s a - d?z ałóżm y, że m am y p ik 256k b ps. Je że i b ędzie on w tryb ie ste re o, rozk ład prze pływ ności na k anały m oże b yć nie rów nom ie rny np. e w y 19 2 praw y 64k b ps, w za e żności od te go, jak sk om pi ow any je st dźw ięk na danym k ana e. W przypadk u duach anne k ażdy k anałb ędzie m iałzare ze rw ow ane 128k b ps, naw e t w te dy, gdy b ędzie m i czał. O gg-vorb is ogge nc Sam a nazw a ogg nie odnosi się do k ode k a dźw ięk u, jak się pow sze ch nie uw aża, e cz do k onte ne ra m u tim e dia ne go, czy i form atu, k tóry sk upia w sob ie dźw ięk, ob raz oraz napisy. Vorb is to natom iast - a te rnatyw ny w ob e c m p3 - stratny k ode k dźw ięk u, k tóry m oże w ch odzić w sk ład tak ie go k onte ne ra. Form at te n został stw orzony prze z fundacje Xiph.org i je st w o ny od pate ntów, co odróżnia go od m p3 i czyni szcze gó nie popu arnym w św ie cie O pe n Source (np. m ate riały na W ik ipe dii). O b ok Vorb is istnie ją rów nie ż b e zstratne k ode k i dźw ięk u z rodziny ogg Spe e dx nisk o prze pływ ow y zaproje k tow any do m ow y, oraz F ack. Kode k Vorb is zape w nia w yższą od m p3 jak ość nagrań, szcze gó nie tych o nisk ie j prze pływ ności 64 k b ps- 128k b ps. Je go odtw arzanie w ym aga je dnak w ięk sze j m ocy ob icze niow e j, a w ięc w ięk sze go zużycia prądu w odtw arzaczach m p3, co sk utk uje sk róce nie m czasu ich pracy. Jak już zostało pow ie dziane, form at m p3 w ce u re duk cji ob jętości p ik u w ycina tony w ysok ie, ogg- vorb is nie rob i te go w tak dużym stopniu, co prze dstaw iają w yk re sy ana izy w idm tych k ode k ów (natęże nie od częstot iw ości)3 11

12 S O FTW A R E Ab y zak odow ać p ik.w av w form acie ogg- vorb is, m ożna sk orzystać z program u ogge nc w ch odzące go w sk ład pak ie tu vorb is- too s. Kom e nda to ogge nc - b 19 2 p ik.w av - o piose nk a.ogg. M im o, że Vorb is je st k ode k ie m VBR, użycie param e tru - b pozw a a zde finiow ać b itrate w ok o icach k tóre go odb ędzie się k odow anie. A te rnatyw nie, za pom ocą - q n, m oże m y sk orzystać ze sk a i jak ościow e j, gdzie n znajduje się w prze dzia e od - 1 do 10 (dom yś nie 3) i ok re ś a b itrate 4 np k b ps, 4-128k b ps, k b ps. Użycie opcji - m i - M ok re ś a odpow ie dnio - m inim a ny i m ak sym a ny b itrate użyty podczas k om pre sji. Z arów no w przypadk u m p3 jak i ogg istnie je m oż iw ość zam ie szczania inform acji opisujących utw ór tak ich jak autor, tytuł, a b um, itd. Po potrze b ną w ie dzę odsyłam do m anua a. W yk onyw anie w szystk ich czynności sam odzie nie je st nie w ygodne i czasoch łonne, d ate go stw orzono różne go rodzaju program y autom atyzujące pracę w k ładam y płytę do napędu i otrzym uje m y gotow e p ik i m p3 ub ogg. Prze dstaw ię w yb rane narzędzia d a k onso i, GTK oraz Qt. W s zys tk o s am odzie nie : W szystk ie program y, k tórych potrze b uje m y, już tak napraw dę m am y;te raz w ystarczy ty k o je połączyć. $ cdstatus - - cddb - - rip - - inne opcje $ cd w yk onaw ca/a b um $ for p ik in *.w av;do ogge nc - opcje $p ik ;done $ rm *.w av R ów nie dob rze m ożna użyć am e z tym, że ab y pozb yć się członu.w av z nazw y p ik u, na e ży użyć am e - opcje $p ik ${p ik %.w av.m p3 ab cde Rew e acyjny rippe r! Tak napraw dę je st to sk rypt, k tóry je dnak m im o sw oje jprostoty dostarcza w szystk ie go co potrze b ne. R ozpak ow uje m y źródła z program e m, spe łniam y za e żności insta uje m y cd- discid (odpow ie dzia ny za ide ntyfik ację płyt), w ydaje m y po e ce nie m ak e insta i e dytuje m y p ik k onfiguracyjny /e tc/ab cde.conf, k tóry je st pe łe n k om e ntarzy znacznie ułatw iających je go zrozum ie nie. Edycja p ik u m a se ns w te dy, gdy w szystk ie zgryw ane utw ory m ają b yć zapisane z użycie m te go sam e go k ode k a, inne go niż dom yś ny, z tak im i sam ym opcjam i. O dh aszow uje m y następujący inie : O GGO PTS='nasze opcje ogge nc' ACTIO NS='cddb,re ad,e ncode,m ove,c e an' CDR O M ='nasz napęd cdrom ' O UTPUTTYPE=ogg LO W DISK=n dzięk i te m u k om pre sja b ędzie odb yw ała się rów nocze śnie z ripow anie m k o e jnych utw orów EJECTCD=y W pis ACTIO NS m oże m y zm ie niać w za e żności od upodob ań. Ja usunąłe m w pis tag, gdyż nie potrze b uję tagów. ab cde w arto uruch am iać z param e tre m - V,odpow ie dzia nym za w yśw ie t anie w ięk sze j iczb y inform acji o prze b ie gu k opiow ania i k om pre sji. Ab y program zajął się prze tw arzanie m ty k o w yb ranych utw orów, na e ży podać ich num e ry jak o param e try po e ce nia. Dozw o one je st stosow anie zak re sów np. 1-3 je st tym sam ym co Z ach ęcam do prze czytania p ik u k onfiguracyjne go oraz m an ab cde. rippe rx Je de n z naj e pszych i najdłuże j rozw ijanych rippe rów. Ponie w aż oparty je st na GTK, je go w yg ąd m oże odstraszać, je dnak dosk ona e spe łnia sw oje zadania i je st przy tym w ysoce k onfigurow a ny; ob sługuje b azę CDDB. Je go użytk ow anie je stna ty e int 12

13 S O FTW A R E uicyjne, że nie m a se nsu się dłuże jprzy nim zatrzym yw ać. rów. W yb ie ram y Start ripping- > Fi e type O gg ( ub m p3 am e ), k onfiguruje m y k ode r i w yb ie ram y start. s ou nd-ju ice r, Grip Pie rw szy to program z k tórym nie w ątp iw ie spotyk ają się użytk ow nicy Ub untu. Program spraw iający, że w szystk o idzie e k k o, łatw o i przyje m nie, b e z zb ędne j inge re ncji w zasady działania. M oże to i dob rze, b o prze cie ż sze rok ie gre m ium użytk ow nik ów nie m a Je że i ch odzi o ap ik acje d a KDE, sk orzystać m oże m y rów nie ż z am arok a czy naw e t k onq ue rora, nie sposób je dnak om ów ić w szystk ich ap ik acji. och oty na czytanie ste rty m anua i i tak ich jak te n artyk ułów. M nie osob iście program rozczarow ałw m om e ncie, gdy ch ciałe m zm ie nić je go zaaw ansow ane ustaw ie nia po prostu się zaw ie sił. Z upe łnie inacze j m atów m p3, ogg oraz f ack. Na razie nasza w idza pow inna nam w ystarczyć, pozostaje w ięc ty k o dodać przygotow ane prze z sie b ie utw ory do p ay isty. Ciężk o uznać te m at za w ycze rpany, m oże w k rótcę pok uszę się o b ardzie j szcze gółow e om ów ie nie for- w yg ąda spraw a z program e m Grip. Je st to zde cydow anie najb ardzie j rozb udow any i zaaw ansow any z om aw ianych rippe rów. M nogość je go opcji, pe łna po onizacja, i intuicyjne m e nu pow odują, że program u używ a się z przyje m nością.podziałna zak ładk i pow oduje, że łatw o prze sk ak uje m y z opcji cdparanoia do tych zw iązanych z k om pre sją. Po e cam k ażde m u, k to czuje nie dosytzw iązany z sound- juice re m. ub k ogo k łuje w oczy inte rfe js rippe rx. k 3b Co praw da dom yś nie program służy do nagryw ania płyt, je dnak je go tw órcy postanow i i dodać m oż iw ość ripow ania płytaudio i DVD.Z aczynam y od k onfiguracji CDDB Se ttings- > Configure k 3b - > CDDB- > R e m ote - > Enab e re m ote CDDB q ue rie s i dodaje m y (je ś i nie m a) se rw e r h ttp fre e db.org port:80, zatw ie rdzam y zm iany, a następnie w yb ie ram y Too s- > R ip audio CD. K3b pow inno pob rać w yk onaw cę, oraz nazw y poszcze gó nych utw o- 13

14 S O FTW A R E Konfiguracja M P aye r'a d a pocz ątk ujących Prz e g ądając różne fora inte rne tow e, m ożna cz ęs to z auw ażyć pytania pocz ątk ujących użytk ow nik ów, dotycz ące k onfiguracji je dne go z najpopu arnie js z ych odtw arz acz y fi m ów M P aye r'a. A to napis y nie m ają po s k ich z nak ów, a to fi m s ię z acina. W ninie js z ym artyk u e, pos taram s ię prz yb iżyć k i k a w ażnie js z ych opcji k onfiguracyjnych te j ap ik acji. K ARO LKO Z IO Ł Ch ociaż część opcji k onfiguracyjnych m p aye ra m ożna ustaw ić w je go graficzne j nak ładce gm p aye rze, ja osob iście pre fe ruję ustaw ianie najw ażnie jszych opcji w p ik u config. Szcze gó nie d ate go, iż z p ik u te go k orzystają tak że różne inne nak ładk i na m p aye ra, np. KP aye r czy KM P aye r. Na e ży zauw ażyć, że używ ając Gm p aye ra, opcje ustaw iane poprze z inte rfe js graficzny m ają prze w agę nad opcjam i w p ik u k onfiguracyjnym. Gdzie szuk ać p ik u config?z azw yczaj znajduje się on w ~ /.m p aye r/config. Przyk ładow y p ik config m oże w yg ądać tak : vo=xv ao=asa osdeve=3 subcp=cp1250 subfont-autoscae=3 subfont-text-scae=3 subfont-outine=1.5 vf=pp,expand=0:-70:0:0 stop-xscreensaver=true Na e ży zauw ażyć, że w ięk szość fab rycznych ustaw ie ń m p aye ra je st dob ra i ty k o nie k tóre w ym agają dopasow ania do naszych potrze b. Ja w sw oim p ik u k onfiguracyjnym ustaw iałe m głów nie opcje zw iązane z w yśw ie t anie m napisów. Tak w ięc po k o e i: vo O k re ś a w yjście w ide o. Do w yb oru m am y k i ka (xv, x11, g, g 2 i inne ), a e najb ardzie j standardow ym, i ch yb a naj e pie jdziałającym je stxv.na p atform ie AIGLX+ Be ry /Com piz dob rą w ydajność uzysk uje się podob no za pom ocą w yjścia g 2, aczk o w ie k w ie m z dośw iadcze nia, że nie radzi ono sob ie dob rze z param e tre m vf=pp,e xpand, co m nie oczyw i- ście nie zadow a a. ao O k re ś a w yjście audio. Do w yb oru m am y znów k i k a m oż iw ości (oss, a sa, sd, arts, e sd, jack ub inne ), ja używ am a sy. Je że i używ am y zaw sze ty ko środow isk a KDE, to m oże m y zaryzyk ow ać de m ona ar ts, aczk o w ie k ja osob iście k ie dyś m iałe m z nim k łopoty, w ięc używ am najb ardzie j k asyczne j m e tody - a sy. osd e ve O k re ś a, co z O SD (O n Scre e n Disp ay czy i w w o nym tłum acze niu to co je st w idoczne na e k ranie ) b ędzie w yśw ie t ane. M oż iw e ustaw ie nia to 0,1,2 ub 3. W artość 3 pok azuje nam w szystk o, co ch cie ib yśm y zob aczyć (napisy + w artości czasow e i proce ntow e odtw arzanie ), w ięc ją ustaw iam y. sub cp O k re ś a stronę k odow ą napisów. Na e ży tą opcję ustaw ić popraw nie, b o inacze j grozi nam pojaw ie nie się k rzaczk ów (w ynik ających z ustaw ie nia b łędne go k odow ania) w trak cie og ądania fi m u. Ponie w aż w ięk szość napisów do fi m ów w naszym re gionie je st (nie ste ty) zapisana przy użyciu w indow sow e go k odow ania CP1250, w ięc tak ą w artość na e żałob y ustaw ić. 14

15 S O FTW A R E w artości param e tru to true (w yłącza w ygaszacz) i fa sub font- autosca e O k re ś a sposób sk a ow ania napi- se (nic nie rob i). m ożna uzysk ać w yśw ie t anie fi m u na pow ie rzch ni sów w zg ęde m e k ranu (m oż iw e w artości to 0, 1, 2, pu pitu (nie ste ty k ażde ok no potrafi w te dy zasłonić Na spe cj a ną uw agę zasł uguj e inia 3). Sk a ow anie napisów je st potrze b ne, b o fi m y m afi m ). ik u k onfiguracyjją różne rozdzie czości i rozm iar czcionk i, k tóry vf=pp,e xpand=0 :- 70 :0 :0 w p ania fi mu spraw dza się dob rze przy je dne j rozdzie czości, przy nym. Dodaje ona pod ob szare m w yśw ie t Na k onie c, prze dstaw ię k i k a podstaw ow ych czarny pase k o w ysok ości 70 pik se i, na k t órym są inne j m oże prow adzić do ok ropnych e fe k tów w izua sk rótów k aw iaturow ych, przydatnych w ob słudze w yśw ie t ane napisy. Przydaj e się t o przy og ądaniu nych. Ustaw ie nie w artości jak o 0 w yłącza autosk a om P aye ra. m ów.je że i dodatk ow y pase k nam prze w anie, a e to nie je st naj e psze rozw iązanie. nie k tórych fi inię w p ik u Spacja Pauza/O dtw arzajz pow rote m Dom yś nym i ch yb a naj e pszym rozw iązanie m je st szk adza, to m ożna zak om e ntow ać tą config (w yst arczy na począt k u inii post aw ić znak #). ustaw ie nie param e tru 3, czy i sk a ow anie proporcjoesc Z ak ończ odtw arzanie na ne do prze k ątne jfi m u. Ente r O dtw arzajod początk u Je że i natom iastza e ży nam na w yb aje row a- q Z ak ończ program ądaniu fi m ów za pom ocą m p aye ra (b o na f Prze jdź do tryb u pe łnoe k ranow e go sub font- te xt- sca e O k re ś a w ie k ość napisów jak o nym og przyk ł ad ch ce m y zrob ić w raże nie na k o e dze /k o e żan- Strzałk a w proce nt w ie k ości e k ranu. M oż iw e są w artości od 0 e w o/w praw o Prze suń odtw arzanie o ce ), t o proponuj ę dw a t rick i zw iązane z uruch om ie do Naj e pszym rozw iązanie m je stw yb ranie w ar10 s do tyłu/do przodu aye ra z odpow ie dnim i param e tram i z inii Strzałk o do dołu/do góry Prze suń odtw arzanie o 1 tości param e tru z prze działu 3-6 (ja w sw oim p ik u nie m m p k onfiguracyjnym m am 3). O dradzam ustaw ianie k om e nd. m in do tyłu/do przodu Z a pom ocą k om e ndy w ięk szych w artości, ch yb a, że k toś ub i m ie ć cały Page Dow n/page Up Prze suń odtw arzanie o 10 e k ran prze słonięty napisam i. mpayer -vo aa nazwa_fimu sub font- out ine Z a pom ocą te go param e tru m ożna ok re ś ić w ie k ość cie m ne j ob w ódk i w ok ół napisów. Napisy naj e pie j czyta się z m ałą ob w ódk ą są w te dy czyte nie jsze. W przyk ładzie, param e tr je st ustaw iony na 1.5, e cz m oż iw e w artości to 0-8 (0 to b rak ob w ódk i, zaś 8 to b ardzo grub a ob w ódk a). stop- xscre e nsave r M P aye r m oże de ak tyw ow ać w ygaszacz e k ranu podczas og ądania fi m u. M oż iw e fi m zostanie w yśw ie t ony jak o ASCI- Art, to znaczy, że ob raz fi m u zostanie prze dstaw iony za pom ocą znak ów asci o różnych odcie niach szarości. Pow yższa k om e nda zadziała, gdy M P aye r b ył k om pi ow any z b ib iote czk ą aa ib. Natom iastza pom ocą k om e ndy m in do tyłu/do przodu o O k re ś a stan w idoczności O SD. Dom yś nie, O SD je st ak tyw ne. Ko e jne naciśnięcia k aw isza 'o' pow odują: w yśw ie t e nie ak tua ne go czasu og ądania fi m u, w yśw ie t e nie ak tua ne go czasu oraz czasu całk ow ite go trw ania fi m u, w yłącze nie O SD oraz je go pow tórne w łącze nie. z/x Prze suw a napisy do tyłu/przodu, je dnorazow o o 0.1 s (uw aga! O SD m usi b yć w łączone ) mpayer -rootwin nazwa_fimu 15

16 S O FTW A R E Gram ps poz najs w oją rodz inę W ięk s z ość dz ie ci w pe w nym m om e n- PAULINA BUDZ O Ń cie s z k oły pods taw ow e j dos taje z adanie : s tw órz drz e w o ge ne a ogicz ne Gram ps to w ie opatform ow y program (działa na syss w oje j rodz iny. W m oim prz ypadk u w ią- te m ach tak ich jak Linux, W indow s, M ac O S X, BSD i So aris), k tóry pozw a a na stw orze nie drze w a ge ne z ało s ię to z w ie om a te e fonam i do aogiczne go dodaw anie osób, zw iązk ów m iędzy nidz iadk ów i ciote k, bo naw e t rodz ice nie m i, różnych inform acji na ich te m at, zdjęć, itp. Po do k ońca pam ięta i, k to s ię jak naz y- stw orze niu tak ie go drze w a, m ożna na przyk ład w ał, k ie dy s ię urodz ił i e w e ntua nie sk orzystać z je dne go z szab onów program u i w ye k sportow ać je do p ik ów h tm. W m om e ncie pisania te z m arł. Spraw ę utrudniał fak t, że je de n z go artyk ułu, je go najnow sza w e rsja je st oznaczona dz iadk ów m iał s ie dm ioro rodz e ńs tw a, a num e rk ie m (i to z nie jb ędę k orzystać). W szystdrugi te ż nie w ie e m nie j. A z na e z ie nie k ie inform acje na te m at proje k tu są dostępne na je z djęć, k tóre m ożna by nak e ić na tak ie go stronie dom ow e j [1]. Dostępne je st tam rów nie ż Live CD b azujące na Ub untu 7.0 4, k tóre zaw ie ra drz e w o (naucz ycie k a z aw s z e z a to da- Gram ps i inne oprogram ow anie, w spom agające tw ow ała w yżs z ą oce nę) było je s z cz e trud- rze nie ge ne aogii. nie js z e. Z robie nie uniw e rs a ne go drz e w a, z k tóre go m ogłyby k orz ys tać k o- Na pie rw szy rzut ok a, program m oże w ydaw ać się m ało intuicyjny, je dnak po zapoznaniu się z je go e jne pok o e nia, byłoby prz ydatne. Poz a opcjam i, doch odzi się do w niosk u, że je st stw orzony tym, ja nigdy nie pam iętam, jak k tóra dość se nsow nie. Poza tym, posk ie tłum acze nie je st ciotk a s ię naz yw a. Na s z cz ęście, praw ie k om petne i b ardzo dob re j jak ości, co znacznie ułatw ia użytk ow anie. Do w ad program u m ożna GRAM PS m oże coś na to poradz ić. za iczyćty k o fak t, że w spisie osób pan Kow a sk i i pani Kow a sk a b ędą pok azyw ani jak o osob ne rodziny program nie ob sługuje odm iany nazw isk. Na szczęście je st to - w gruncie rze czy - ty k o prob e m e ste tyczny. Na potrze b y te go te k stu, sk orzystam z Gram ps i stw orzę całk ow icie fik cyjną rodzinę Kow a sk ich. Po uruch om ie niu program u trze b a stw orzyć now ą rodzinę ub otw orzyć p ik już istnie jące j. W yb ie ram Now y, znajduję odpow ie dnie m ie jsce na p ik i nazyw am go k ow a scy.grdb. Dostaję w te n sposób now ą, pustą rodzinę. Po e cam w łączyć (w m e nu W idok ) pase k b oczny i narzędziow y. Dzięk i te m u, po e w e jstronie dostępne są zak ładk i: O sob y - to spis osób, k tóre doda iśm y do nasze jrodziny. Dom yś nie, b ędą oni pogrupow ani ze w zg ędu na nazw isk o. Z w iązk i w yśw ie t a inform acje na te m at osob y w yb rane j w m e nu osob y oraz je j zw iązk ów z innym i członk am i rodziny (m ałże ństw o, rodze ństw o, itp). R odziny to spis w szystk ich rodzin pojaw ią się tu po dodaniu zw iązk u m iędzy 2 osob am i. R odow ód w yśw ie t ak asyczne drze w o ge ne a ogiczne. Z darze nia to spis w szystk ich w ydarze ń dodanych do osób urodziny, ch rze st, ś ub, śm ie rć, itp. 16

17 S O FTW A R E Źródła to ista w szystk ich źróde ł inform acji dodanych do osób (np. ciocia Józia ub k sięgi k oście ne ). M ie jsca to spis w szystk ich m ie jsc, k tóre doda iśm y do w ydarze ń zw iązanych z daną rodziną (np. m ie jsce urodze nia, ś ub u, itp.). M e dia to ista p ik ów (zdjęć, fi m ów ), k tóre przypisa iśm y osob om z nasze jrodziny. M agazyn to grupa naszych źróde łinform acji, np.b ib iote k a, strona inte rne tow a. Sk oro m am y już naszą rodzinę, trze b a zacząć od dodania do nie j osób. Ja zaczynam od pana Kow a sk ie go. Będąc w zak ładce O sob y, w yb ie ram Dodaj. W tym ok nie m ogę poza podstaw ow ym i inform acjam i o panu Kow a sk im dodaw ać tak że b ardzie j w ym yś ne rze czy, jak je go nazw isk a (po urodze niu, O k no dodaw ania pana Kow a s k ie go ś ub ie - tu b ardzie j k ob ie ty), adre sy zam ie szk ania (w raz z datam i), dodatk ow e inform acje, zdjęcia, strony w inte rne cie, itp. W w yśw ie t onym ok nie w pisuję inform acje na te m at m oje go now e go członk a rodziny, a następnie w zak ładce W ydarze nia k ik am w sym b op usa i dodaję k i k a w ydarze ń z je go życia. W program ie Gram ps sym b op usa pozw a a dodaw aćnow e osob y/w ydarze nia/m ie jsca/itd., a sym b ok artk i z dłonią pok azuje istę tych już w pisanych. O k no dodaw ania w ydarz e nia urodz iny Kow a s k ie go Po dołącze niu pana Kow a sk ie go, w tak i sam sposób w prow adzam inform acje o je go żonie Annie Jab łońsk ie j. Dodaję ją raze m z je j panie ńsk im nazw isk ie m późnie j przy tw orze niu drze w a ge ne a ogiczne go e pie j w idać, gdzie je st k ażda rodzina. Następnie, zaznaczam panią Jab łońsk ą w zak ładce O sob y i prze ch odzę do Z w iązk i. Tam w yb ie ram M ałżone k i w w yśw ie t onym ok nie, ob ok napisu O jcie c k ik am na sym b ok artk i z ręk ą i w yb ie ram pana Kow a sk ie go. W inform acjach o ich zw iązk u zaznaczam M ałże ństw o, a w ok nie na sa- 17

18 S O FTW A R E Graf drz e w o ge ne a ogicz ne rodz iny Kow a s k ich m ym do e w pisuję k o e jne osob y, k tóre b ędą autom atycznie przypisane jak o ich dzie ci. K ik am O K, a Gram ps w raca do ok na zw iązk ów i w yśw ie t a inform acje na te m at rodziny pani Jab łońsk ie j. O to stw orzyłam pie rw szą rodzinę! Te raz w ystarczy ty k o w te n sposób dodaw ać k o e jne rodziny rodziców rodziców i dzie ci dzie ci. Po dołącze niu w ie u osób i zw iązk ów m iędzy nim i, m ożna w program ie utw orzyć stronę inte rne tow ą ub k i k a różnych rodzajów raportów, statystyk i grafów na te m atrodziny. Ja stw orzyłam Graf pok re w ie ństw a. W yb rałam jak o osob ę Jana Kow a sk ie go (b ył najw ygodnie jszym punk te m odnie sie nia) i z m e nu R aporty - R aporty graficzne w yb rałam Graf pok re w ie ństw a. Jak o form at w yjścia zaznaczyłam O b raz PNG, w opcjach dok um e ntu w yb rałam rozm iar A0 (ponie - w aż m oja rodzina je st dość iczna, a ch ciałam, że b y w szystk o b yło dob rze w idoczne ) i ułoże nie Pionow e. W opcjach raportu w yb rałam całą b azę danych, dołącz daty urodzin, m ałże ństw a i zgonu oraz M ie jsce /przyczyna gdy b rak daty. W O pcjach program u Graph Viz zm ie niłam ty k o czcionk ę na True type. Późnie j już ty k o O K i m am już całe drze w o m oje j rodziny. M am w praw dzie prob e m z po sk im i znak am i, a e nie ste ty je stto prob e m sam e go program u i ob sługi k odow ania. Je dne go m ożna b yć pe w nym - po stw orze niu tak ie j b azy danych rodziny, żadne ge ne a ogiczne zadanie w podstaw ów ce nie b ędzie już prob em em! Link i: [1]w w w.gram ps- proje ct.org

19 S O FTW A R E Dobra k opia z apas ow a- os tatnia de s k a ratunk u K ATARZ YNA M YREK M ondo R e s cu e h ttp://m ondore scue. inje ction.org/ftp Z a e żności program u: afio b uffe r cdre cord m indi- b usyb o m indi ib ne w t.so Insta uje m y je po e ce niam i: np. rpm - i <nzw a rpm > ub (w e rsja uniw e rsa na) # tar - zxvf nazw a.tgz #./configure ;m ak e ;m ak e insta Ab y m óc sk orzystać z m oż iw ości, jak ie przynosi program, m usim y posiadać przynajm nie j 64M B pam ięci R AM, co najm nie j 80 0 M B w o ne go m ie jsca na dysk u oraz k e rne w w e rsji now sze j niż Przydadzą się te ż nagryw ark a CD ub DVD,a bo drugi dysk tw ardy. proce s w k i k u prostych k rok ach. O pe racja rob ie nia k opii zapasow e j m oże trw ać naw e t do k i k u godzin w za e żności od szyb k ości k om pute ra, rodzaju k om pre sji i m ie jsca na dysk u. Ab y przyw rócić dane, na e ży w yk onać (jak o root) po e ce nie m ondore store. Program po w sk azaniu źródła, z k tóre go m a k orzystać, nie m a autom atycznie w szystk o w yk ona za nas (je st dostępne k i k a tryb ów przyw racania: inte rak tyw ny, nuk e, e k spe rt - różniących się i oścą dostępnych ustaw ie ń). D rak b ack u p Je st to darm ow y program, opub ik ow any na ice ncji GPL v2. Dzięk i nie m u, m ożna zrob ić k opię całe go syste m u ope racyjne go i nagrać ją na płytę CD, DVD, taśm ę, inną partycje ub inny dysk tw ardy, a późnie j - w razie aw arii, szyb k o przyw rócić zniszczone dane. Sam a ope racja b ack upu je st b ardzo prosta. W ystarczy w pisać w k onso i - jak o root M ondo w spie ra w e rsje Linuk sa i386, x86_ 64, ia64 i m ondoarch ive. Ab y poznać w ięce j szcze gółów, Fre e BSD (i386). Na oficja ne j stronie dostępne są zapraszam do zapoznania się z m an m ondoarch ive. paczk i d a w ie u dystryb ucji. M ożna je pob rać z Da e j program poprow adzi użytk ow nik a prze z 19

20 S O FTW A R E Druid/ nak ładk a graficzna na tar arch ive r, znajdująca się w syste m ie M andriva. Dzięk i nie j m ożna szyb k o k opiow ać p ik i i zrob ić z nich arch iw um. Przy starszych k opiach trze b a pam iętać o zm ianach w syste m ie (np. /e tc/rc.d/rc. oca ). D AR - D is k Arch ive Ko e jny program, rob iący pe łne ub ty k o częściow e k opie syste m u na płyty CD, DVD ub inne m nie j popu arne nośnik i, używ ając przy tym k om pre sji. Czasam i je st te ż w yk orzystyw any do podziału dużych arch iw ów na m nie jsze części. Dzięk i nie m u, m ożna szyb k o sk opiow ać ub odzysk ać dane za pom ocą k onso i czy te ż GUI. Ke e p Prosty i przyjazny d a użytk ow nik a program znajdujący się w distrach z rodziny *b untu. Ab y go zainsta ow ać, na e ży w e jść w Ap ik acje > Dodaj/Usuń oraz w po e szuk aj w pisać Back up. W szystk ie za e żności zostaną autom atycznie spe łnione, a program zainsta ow any. Ke e p całk ow icie autom atyzuje proce s rob ie nia k opii zapasow ych. Je dyne, co m usim y ustaw ić, to co w łaściw ie ch ce m y arch iw izow ać, gdzie oraz co i e czasu. M ożna te ż ustaw ić usuw anie k opii po podane j iczb ie dni, oszczędzając w te n sposób m ie jsce na dysk u. Podsum ow ując, program ów do rob ie nia k opii zapasow ych je st b ardzo dużo, z opisanym i pow yże j pracuje m i się naj e pie j. Je dnak naj e pszym rozw iązanie m je st spraw dze nie k i k unastu innych ap ik acji i w yszuk anie te j naj e pie j, pasujące j do naszych potrze b. 20

21 S O FTW A R E Po pros tu Jabbe r Cz ęść 2 be z pie cz e ńs tw o Jabbe rd2 to oprogram ow anie s ie ciow e, św iadcz ące us ługę nie ty k o w s ie ciach ok a nych, a e prz e de w s z ys tk im w s ie ci pub icz ne j, jak ą je s t Inte rne t. Sys te m ope racyjny, pod k tóre go k ontro ą pracuje us ługa, m ogą u e c tak nie pożądane mu w pływ ow i z łoś iw e go oprogram ow ania, jak i dz iałaniom is tot bardz ie jśw iadom ych. Użytk ow nik k om unik atora pow inie n m ie ć pocz ucie be z pie cz e ńs tw a i św iadom ość anonim ow ości je go roz m ów. RAFAŁ DO M ERACK I Nie w o no nam prze jść ob ojętnie w ob e c k w e stii b e zpie cze ństw a, d ate go po e cam e k turę drugie j części se rii artyk ułów pośw ięconych IM. Se rw e r czy i s przęt Je ś i m ów im y o b e zpie cze ństw ie, to w k ażdym przypadk u pow inno się w spom nie ć ch ociaż k i k a słów na te m at och rony fizyczne j m aszyny, k tóra pok ornie słuch a naszych rozk azów i cie rp iw ie - z upore m m aniak a - w yk onuje zadania z e cane prze z oprogram ow anie na nie j zainsta ow ane. W łaśnie z m yś ą o tym oprogram ow aniu w yłączam y m oż iw ość inicjacji syste m u z nośnik ów ze w nętrznych, zak ładam y h asło na BIO S oraz b ok uje m y m oż iw ość uruch om ie nia syste m u ope racyjne go w tryb ie um oż iw iającym łatw y dostęp do danych zaw artych na dysk u. W m iarę m oż iw ości m oże m y pozb yć się zb ędne go sprzętu, tak ie go jak napęd dysk ie te k czy CD- R O M. Pow inniśm y zastanow ić się rów nie ż nad tym, czy nasz sprzętdaje się łatw o w yłączyć za pom ocą w łącznik a zasi ania. M oż iw e, że uznam y, iż dane zaw arte w syste m ie są tak istotne, że cała m aszyna zasługuje na odizo ow anie je j od fizyczne go k ontak tu z osob am i postronnym i. M oże w aga usługi, jak ą je st jab b e r, nie je st w ie k a, a e od ciągłości je j działania m oże za e że ć k w e stia k ontak tu pom iędzy w ażnym i osob am i w k orporacji. Z e w zg ędu na to rozpatruje m y m oż iw ość podłącze nia nadm iarow e go zasi acza, jak rów nie ż zagw arantow ania ciągłe go dopływ u prądu za pom ocą UPS'a. Je ś i m am y pe w ność, że nik t nie pow ołany nie dotk nie se rw e ra, a k rótk a aw aria prądu nie spow oduje natych m iastow e go w yłącze nia m aszyny, m oże m y prze jść do k o e jne go e tapu prac. Sys te m ope racyjny Pod pojęcie m popraw ne j insta acji syste m u k ryją się tak ie czynności, jak odpow ie dni podział dysk u na partycje, czy dob ór ty k o tych pak ie tów, k tóre są nie zb ędne. Nasz syste m to S ack w are Linux, a praca z nim nie pozw a a na utratę św iadom ości te go, co rob im y. S ack w ym aga od nas w ie dzy na te m at insta ow ane go oprogram ow ania i nie pow ie nam, że do popraw ne go działania insta ow ane go oprogram ow ania nie zb ędna b ędzie insta acja k o e jnych 3 pak ie tów. Praw dopodob nie spędzim y długie 21

22 S O FTW A R E godziny zanim ok re ś im y w łaściw y ze staw pak ie tów. Postaram się, w ięc pom óc w dob orze odpow ie dnie go ich ze staw u. Na począte k insta uję syste m, zaznaczając do insta acji ty k o k ate gorię A czy i Base Linux syste m. W ok nie Se e ct Prom pting M ode w yb ie ram opcję m e nu. Po zainsta ow aniu, syste m zajm uje na dysk u 149 M, co stanow i b ardzo m inim a ną insta ację. W k ata ogu /var/ og/pack age s znajdują się p ik i te k stow e o nazw ach odpow iadających zainsta ow anym w syste m ie pak ie tom. Ich tre ścią je stopis pak ie tu oraz ista p ik ów z k tórych się sk łada. Tak zainsta ow any syste m nadaw ym aga odinsta ow ania k i k u pak ie tów. Z ob aczm y co m oże m y usunąć: cups i486-4 isapnptoo s i386-1 oad in- 1.6c- i386-1 m inicom i486-2 m k initrd i486-3 pcm cia- cs i486-3 pcm ciauti s i486-2 sys inux i486-1 Usuw am y je k om e ndą: root@jabber:~# removepkg nazwa_pakietu(1) nazwa_pakietu(2) nazwa_pakietu(n) M ożna je szcze zastanow ić się nad usunięcie m nie potrze b nych narzędzi do ob sługi nie używ anych syste m ów p ik ów : e 2fsprogs i486-2 jfsuti s i486-1 re ise rfsprogs i486-1 um sdos- progs i386-1 xfsprogs _ 1- i486-1 Przy usuw aniu tych pak ie tów pow inniśm y zach ow ać ostrożność. M usim y w yb rać ty k o te, k tóre na 10 0 % nie b ędą nam potrze b ne. Na przyk ład, je ś i używ am y e xt2fs ub e xt3fs m oże m y odinsta ow ać w szystk ie pak ie ty poza e 2fsprogs. Nie w o no nam rów nie ż popaść w paranoję. Je ś i nie je ste śm y pe w ni, czy pak ie t pow inie n b yć usunięty czy nie, e pie j ab yśm y pozostaw i i go w syste m ie. W tak zainsta ow anym syste m ie b rak uje jak ie jk o w ie k zda ne j m e tody pob rania p ik u. Je ś i zak ładam y, że adm inistracja b ędzie odb yw ała się w form ie pracy zda ne j, pow inniśm y zainsta ow ać O pe nssh. M ontuje m y nośnik insta acyjny w /m e dia/cdrom, w ch odzim y do k ata ogu s ack w are /n i insta uje m y pak ie t ope nssh p1- i486-1.tgz a następnie uruch am iam y sk rypt rc.ssh d z param e tre m startw k ata ogu /e tc/rc.d. Je ś i SSH to rów nie ż dostęp do sie ci. Potrze b uje m y pak ie tu tcpip i z grupy n a w ięc znów pak ie t znajdzie m y w k ata ogu s ack w are /n. W yk onuje m y po e ce nie ne tconfig w ce u k onfiguracji inte rfe jsu sie ciow e go, a następnie uruch am iam y sk rypt /e tc/rc.d/rc.ine t1 z param e tre m start. W k o e jnych k rok ach m oże w ystąpić prob e m z inicjacją b azy M ysql, d ate go w arto w yk onać re start, ab y w szystk ie param e try sie ci syste m ustaw iłsam. Po pob raniu pak ie tu z oprogram ow anie m Jab b e rd2 za pom ocą po e ce nia scp m usim y je szcze zainsta ow ać pak ie ty: g ib c i486-6 z grupy, ib idn i486-1.tgz z grupy, m ysq a- i486-1 z grupy ap, pe r i486-3 z grupy d. Przystępuje m y do insta acji, k onfiguracji i uruch om ie nia se rw e ra jab b e rd zgodnie z opise m zam ie szczonym w num e rze 8 Dragonia M agazine. Po tych zab ie gach, dysponuje m y b ardzo ek k im syste m e m ope racyjnym zajm ującym ok oło 30 0 M B pow ie rzch ni dysk ow e j. W syste m ie uruch om ione są następujące usługi: ssh d, crond, gpm, m ysq d, jab b e rd Całe uruch om ione oprogram ow anie zajm uje nie całe 64M pam ięci R AM. Udało się w ięc uzysk ać całk ie m przyzw oity w ynik. M am y uruch om ione nie zb ędne usługi i zainsta ow ane nie zb ędne oprogram ow anie. O statni sz if m oże stanow ić ustaw ie nie tw arde go h asła użytk ow nik a root i założe nie k onta zw yk łe go użytk ow nik a z m ocnym postanow ie nie m używ ania go zam iastk onta adm inistratora. Te raz k o- 22

23 S O FTW A R E e j na postaw ie nie zapory pom iędzy św iate m ze w nętrznym a syste m e m. m ianie k o e jnych proce sów usługi nie m a se nsu. O dpow iada za prze k azyw anie pak ie tów pom iędzy Fire w a Po uruch om ie niu se rw e ra Jab b e rd w syste m ie uruch om ione zostały k o e jne proce sy. Proponuję przyjrze ć się im za pom ocą po e ce nia: root@jabber:~# ps axf grep jabber 1116 pts/0 R 0:00 per -w -x pozostałym i proce sam i. Z arządza w łączanie m i w yłącze nie m proce sów w sie ci. - re so ve r to proce s, k tóry um oż iw ia rozw iązyw anie nazw dom e now ych innych se rw e rów. Uruch am iany je stna rze cz proce su s2s. - sm został stw orzony, b y służyć k ie ntom sie ci. /usr/bin/jabberd 1117 pts/0 S 0:00 \_ /usr/bin/router -c /etc/jabberd/router.xm 1118 pts/0 S 0:00 \_ /usr/bin/resover -c /etc/jabberd/resover.xm 1119 pts/0 S 0:00 \_ /usr/bin/sm -c /etc/jabberd/sm.xm 1120 pts/0 S 0:00 \_ /usr/bin/s2s -c /etc/jabberd/s2s.xm 1121 pts/0 S 0:00 \_ /usr/bin/c2s -c /etc/jabberd/c2s.xm W idzim y, że pie rw szy z nich to w rappe r pe r ow y. Sk rypt te n uruch am ia i ob sługuje całą re sztę proce sów uruch am ianych na potrze b y usługi. W idać to w yraźnie, gdyż od nie go odgałęziają się k o e jne proce sy.je go k od źródłow y m oże m y pode jrze će dytując sk rypt. Pozostałych 5 proce sów to następujące b inaria: - route r, k tóry je st uruch am iany jak o drugi. O d te go proce su w szystk o się zaczyna. Be z nie go uruch a- Je st to m e nadże r se sji, k tóre go ce e m je st św iadcze nie usługi k om unik acyjne j. O pow iada za dostarczanie k ie ntom roste rów (zaw artość ok na z k ontak tam i), ś e dzi status dostępności k ie nta, zarządza rów nie ż prze k azyw anie m w iadom ości. Kom unik uje się z route re m. - s2s zape w nia k om unik ację m iędzyse rw e row ą pom iędzy naszym se rw e re m i se rw e ram i uruch om ionym i w św ie cie. - c2s przyjm uje połącze nia od k ie ntów, dostarcza m e ch anizm y aute ntyfik acji i re je stracji, k om unik uje się z m e nadże re m se sji. Przyjrzyjm y się te raz w yk azow i połącze ń oraz portom, jak ie zostają otw arte w syste m ie za spraw ą uruch om ionych proce sów. Pom oże nam w tym po e ce nie ne tstat: root@jabber:~# netstat -patune W yszuk uje m y nasze proce sy i w idzim y następujące połącze nia: Active Internet connections (servers and estabished) Proto Recv-Q Send-Q Loca Address Foreign Address StaUser Inode PID/Program name tcp : :* LISTEN /router tcp : :* LISTEN /c2s tcp : :* LISTEN /s2s tcp : :5347 ESTABLISHED /c2s te tcp : :5347 ESTABLISHED /sm tcp : :5347 ESTABLISHED /s2s tcp : :5347 ESTABLISHED /re- 23

24 S O FTW A R E sover tcp pse udo sie ci o ( ). - dw a pozostałe (sm, re so ve r) to proce sy uruch a- w iązują połącze nie z route re m (stan ESTABLISH ED) uter tcp m iane ty k o na inte rfe jsie o i tak jak w przypadk u c2s i s2s, dostają num e r od syste m u ope racyjne go. Te dw a proce sy w idać ty k o i w yłącznie od strony inte rfe jsu o. - w szystk ie 4 proce sy uruch am iane na inte rfe jsie o, za pom ocą portów otrzym anych od syste m u na- W idzim y zate m, że c2s, s2s, re so ve r i sm w spółpracują z route re m. Pie rw sze dw a m ają dodatk ow e ob ow iązk i i rob ią coś d a re szty św iata, a dw a to w yb rańcy, pracujący ty k o d a route ra. Z ak ładając, że nie dopuścim y do pe ne tracji syste m u ope racyjne go, m oże m y uznać usługi słuch ające na : :32796 ESTABLISHED /ro : :32797 ESTABLISHED /router tcp : :32794 ESTABLISHED /router tcp : :32795 ESTABLISHED /router Postaram się pom óc w inte rpre tacji.r ysune k ob razuje ze staw połącze ń sie ciow ych oprogram ow ania. W yciągam y w niosk i: - route r je st pane m w szystk ich proce sów, czuw ającym na w szystk ich inte rfe jsach na je dnym porcie R aze m z c2s (5222) oraz s2s (5269 ) są gotow e do przyjęcia połącze nia od h ostów o dow o nym num e rze IP oraz dow o nym porcie (stan LISTEN). Są w idoczne z ze w nątrz syste m u. W szystk ie trzy num e ry portów to w artości dom yś nie przyjęte prze z program istów. - ponadto, c2s i s2s dostają num e r portu od syste m u ope racyjne go. W idać je od strony inte rfe jsu 24

25 S O FTW A R E inte rfe jsie o za ch ronione. Są one na ty e b e zpie czne na i e pozw o iła w ie dza i dośw iadcze nie program isty. R oute r, c2s i s2s w ystają na ze w nątrz syste m u i tutajpow inniśm y sk upić sw oją uw agę. Z a pom ocą program u nm ap rzucim y ok ie m na w yg ąd nasze go syste m u z punk tu w idze nia cie k aw sk ie go ob se rw atora. root@jabber:~# nmap -stv -p /tcp open ssh OpenSSH 4.4 (protoco 1.99) 5222/tcp open jabber Jabber instant messaging server (Protoco 1.0) 5269/tcp open jabber Jabber instant messaging server (Protoco 1.0) 5347/tcp open jabber Jabber instant messaging server (Protoco 1.0) To, co zob aczy iśm y, przypom ina nam, że czas zm ie nić dom yś ny portssh. Ja pozostaw ię b e z zm ian, natom iast czyte nik ow i po e cam zajrze ć do p ik u /e tc/ssh /ssh d_ conf. R e szta inii potw ie rdza w niosk i z ana izy proce sów se rw e ra Jab b e rd. Postarajm y się osłonić je fire w a e m 1 (rc.fire w a ). Ab y uruch om ić fire w a, m usim y zainsta ow ać pak ie t iptab e s i486-2.tgz. Usta iłe m dom yś ną po ityk ę na zab raniającą w sze k ich połącze ń.dopuściłe m połącze nia z usługam i jab b e rd w ch odzące do inte rfe jsu e th 0 oraz ze zw o iłe m na pe łny ruch w ych odzący prze z e th 0. Usta iłe m pe łny ruch w ch odzący i w ych odzący w ob ręb ie inte rfe j- su o. Tak i fire w a w ym aga dopracow ania i ciągłe j ak tua izacji.z azw yczajpotrze b uje m y dodatk ow o k ontak tu re so ve ra DNS ze sk onfigurow anym i w /e tc/re so v.conf adre sam i se rw e rów DNS. Czase m rów nie ż w ym agane je st otw arcie portu um oż iw iające go k ontak t k ie nta DH CP z se rw e re m DH CP działającym w sie ci. W przyszłości dojdzie k o e jny port o num e rze 5223, do połącze ń szyfrow anych i w te dy potrze b ne b ędą zm iany w k onfiguracji zapory.sam o zab ok ow anie ruch u w ch odzące go m oże ok azać się nie w ystarczające, w tak ie j sytuacji trze b a dodać stosow ne re guły. Je ś i nie zam ie rzam y dać se rw e row i m oż iw ości k ontak tu z innym i se rw e ram i sie ci jab b e r, m oże m y zab ok ow ać port 5269 na e żący do proce su s2s. O czyw iście m a to sk ute k w idoczny d a użytk ow nik ów se rw e ra. Kontak t z rozm ów cam i z innych se rw e rów b ędzie nie m oż iw y. Baza danych Ab y zaprow adzić porząde k w b azie usuw am y b azę te stow ą: mysq> drop database test; W arto rów nie ż pom yś e ć o k opiach b e zpie cze ństw a b azy jab b e rd2, w k tóre j znajdują się k onta i dane użytk ow nik ów nasze go se rw e ra: root@jabber:~# mysqdump -u root -p jabberd2 > jabberd2.sq w b ie żącym k ata ogu pow inniśm y odna e źć p ik te k stow y jab b rd2.sq a w nim odw zorow anie nasze j b azy. Tak i p ik w arto dodać do b ack upu p ik ów k onfiguracyjnych jab b e rd2. Najistotnie jszą k w e stią w k onfiguracji b azy danych i oprogram ow ania jab b e rd2 je st usta e nie innych niż dom yś ne h ase łsłużących do k ontak tu proce sów jab b e rd2 z b azą. mysq> GRANT seect,insert,deete,update ON jabberd2.* to jabberd2@ocahost IDENTIFIED by 'nowe_haso'; oraz spraw dzam y, czy nie m a innych, nie potrze b nych k ontużytk ow nik ów : mysq> use mysq; mysq> seect host,user,password from user; Je ś i są, usuw am y je. Kie dy m am y już usta one now e h asło użytk ow nik a jab b e rd2, przystępuje m y do zm iany k onfiguracji se rw e ra jab b e rd2. Szuk am y se k cji <m ysq > w p ik ach c2s.xm, sm.xm i w znacznik ach <pass> </pass> w staw iam y now e h asło. Po w yk onaniu k onfiguracji re startuje m y se rw e r. H as ła k om u nik acji m iędzy proce s ow e j <aci> (ACL) Proce sy oprogram ow ania jab b e rd2 k om unik ują się rów nie ż za pom ocą danych autoryzacyjnych. Dane te zaw arte są w p ik u /e tc/jab b e rd/route ruse rs.xm. O czyw iście to route r usta a te dane. P ik route r- use rs.xm je st tab icą użytk ow nik ów i h ase ł, a k ażdy proce s podpinający się pod route r m usi podać je de n z w ym ie nionych w nim k om p e tów <nam e >, 25

26 S O FTW A R E <se cre t>. W p ik u route r.xm w se k cji <aci> usta one są inform acje ACL w znacznik ach <ac >. To one nie zb ędnym oprogram ow anie m i na k onie c prze nie ść p ik se rve r.pe m na w łaściw ą m aszynę.je ś i zde - de finiują je dnoznacznie do jak ich ope racji m a praw o proce s ogujący się na praw ach jak ie goś użytk ow nik a. W dom yś ne j k onfiguracji, użytk ow nik jab b e rd m a praw o do w yk onyw ania w szystk ich ope racji (<actype ='a '> ). D ate go w arto zm ie nić je go h asło na inne, ab y napisane prze z złoś iw ych użytk ow ni- cyduje m y się w yk onać je na se rw e rze, potrze b ny b ędzie pak ie t ope nss d- i486-1.tgz z grupy n. Podana proce dura została w yk onana na se rw e rze jab b e r. root@jabber:~# openss req -new -x509 -newkey rsa:1024 -days keyout k ów oprogram ow anie służące do atak ów nie m ogło w łatw y sposób za ogow ać się do w spółpracy z naszym route re m. W p ik u route r- use rs.xm podaje m y h asło now e _ h as o2 d a użytk ow nik a jab b e rd, a następnie m usim y poinform ow ać inne zainte re sow ane praw am i użytk ow nik a jab b e rd proce sy, że h asło zostało zm ie nione. W p ik ach k onfiguracyjnych sm.xm, re so ve r.xm, s2s.xm, c2s.xm w se k cji <route r> zm ie niam y h asło na now e. SSL Z anim se rw e r pozw o i nam naw iązać połącze nie, w ym aga popraw ne jautoryzacji.dane autoryzacyjne w ędrują prze z sie ć w postaci otw arte go te k stu, k tóry da się odczytać. Ab y zapob ie c ujaw nie niu tre ści tych danych, na e ży zaszyfrow aćproce s uw ie rzyte niania.z ak ładam, że czyte nik zna zasady potw ie rdzania tożsam ości za pom ocą pary k uczy: pryw atne go i pub iczne go. Poniże jpodaję se k w e ncję k om e nd, k tóre m usim y w yk onać, ab y otrzym aćw łaściw y ce rtyfik at.po e cam w yk onać je na k om pute rze, k tóry dysponuje privkey.pem -out server.pem Enter PEM pass phrase: jakaś fraza Verifying - Enter PEM pass phrase: jakaś fraza Country Name (2 etter code) [AU]:PL State or Province Name (fu name) [Some-State]:Województwo Locaity Name (eg, city) []:Miasto Organization Name (eg, company) [Internet Widgits Pty Ltd]:Dragonia Organizationa Unit Name (eg, section) []:Dragonia Common Name (eg, YOUR name) []:dragonia.p Emai Address []:admin@dragonia.p pote m usuw am y frazę z k ucza pryw atne go, ab y se rw e r podczas startu nie pytało nią: root@jabber:~# /etc/jabberd# openss rsa -in privkey.pem -out privkey.pem Enter pass phrase for privkey.pem: jakaś fraza writing RSA key i zam ie szczam y k ucz pryw atny w ce rtyfik acie : root@jabber:~# /etc/jabberd# cat privkey.pem >> server.pem usuw am y k ucz pryw atny: root@jabber:~# /etc/jabberd# rm privkey.pem pote m nadaje m y stosow ne praw a: root@jabber:~# /etc/jabberd# chown root:jabber server.pem root@jabber:~# /etc/jabberd# chmod 640 server.pem Konfiguracja Jab b e rd2 zb ie ga się do w ye dytow ania p ik u c2s.xm i usunięciu w se k cji < oca > znak u k om e ntarza ze znacznik ów : <pemfie>/etc/jabberd/server.pem</pemfie> <ss-port>5223</ss-port> Na e ży je szcze odb ok ow ać port 5223 w fire w a u, o i e już nie je stodb ok ow any. Konfigurację k ie ntów pozostaw iam czyte nik ow i. Dodam ty k o, że podczas te stów k ie nt Pidgin m iał prob e m z połącze nie m się z se rw e re m uruch om ionym z k onfiguracją SSL. Ch ciałb ym w spom nie ć rów nie ż, że istnie je m oż iw ość szyfrow ania danych autoryzacyjnych, w ym ie nianych prze z proce sy se rw e ra jab e b rd2 z route re m. M ożna do te go ce u użyć te go sam e go ce rtyfik atu. PGP Z aszyfrow a iśm y h asło, a e tre ść rozm ow y nadapędzi prze z sie ć w postaci czyte ne go d a człow ie k a te k - 26

27 S O FTW A R E stu. Ab y te m u zapob ie c, k ażdy użytk ow nik pow inie n zainte re sow ać się GnuPG. W yge ne row anie k ucza <e nab e />. Ta opcja, jak i i b ok ow anie k om unik acji m iędzy se r- pryw atne go i pub iczne go nie je st rze czą sk om p ik ow aną w środow isk u KDE (k gpg). Istnie je w ie e opisów o tym, jak przygotow ać te k ucze za pom ocą k om e nd w ie rsza po e ce ń. Przypom nę ty k o, że k ucz pryw atny zatrzym uje m y d a sie b ie i ch ronim y go tak dob rze jak ty k o um ie m y. K ucze m pub icznym w y- w e row e j, m ogą m ie ć znacze nie przy b udow aniu k om unik atora k orporacyjne go. B ok adę S2S re a izuje m y nie ty k o poprze z b ok adę portu, a e rów nie ż - a m oże prze de w szystk im - poprze z zm ianę param e tru <ip> w se k cji < oca > p ik u s2s.xm z na M oże to b yć rów nie ż num e r IP m ie niam y się z użytk ow nik am i sie ci jab b e r, z k tórym i m am y k ontak t. Adm inistratorom po e cam zastanow ić się nad um ie szczanie m k uczy pub icznych użytk ow nik ów na stronach intrane tow e j sie ci w e b. INNE Dostęp do k onta użytk ow nik a jab b e r pow inie n b yć zab ok ow any poprze z w staw ie nie! w odpow ie dnim po u p ik u /e tc/sh adow : jab b e r:!:1360 2:0 : :7::: W arto rów nie ż zastanow ić się nad nadanie m inne j nazw y użytk ow nik ow i, na k tóre go praw ach uruch am iam y oprogram ow anie.tak i użytk ow nik zaw sze b ędzie m usiał m ie ć dostęp do pow łok i uruch om ie niow e ji z tą m yś ą m usim y się pogodzić. Pam iętajm y, ab y sk om pi ow ać oprogram ow anie b e z ob sługi tryb u de b ug. Z aw sze m oże m y zajrze ć sob ie do ogów. Je ś i nie ch ce m y daw ać sw ob ody re je stracji k o e jnych k ont w se rw e rze jab b e ra za pom ocą k ie ntów, to m oże m y ją zab ok ow ać w p ik u c2s.xm w se k cji <re giste r> poprze z w staw ie nie k om e ntarza na opcję inne go inte rfe jsu sie ciow e go. Je ś i danych w b azie zaczyna przyb yw ać, to m oże w arto b yłob y sk onfigurow ać re p ik ację, nie ty k o ze w zg ędu na b ack up a e rów nie ż w ce u sk róce nia czasu ponow ne go uruch om ie nia usługi. CÓŻ W IĘ CEJ? O b e zpie cze ństw ie k ażde j usługi i k ażde go syste m u m ożna b y dużo pisać. Nie da się w ycze rpać te m atu, naw e t w przypadk u tak proste j usługi, jak ą je st jab b e r. Po e cam e k spe rym e nty i czytanie dok um e ntacji aż do b ó u.w k rytycznych w ypadk ach na e ży rozpatryw ać tune e SSH oraz sie ci VPN. Ty k o czy rze czyw iście potrze b a nam aż tak ie go zab e zpie cze nia w przypadk u te jusługi? Jak zw yk e, życzę m iłe jzab aw y. Link i: 1.h ttp://dragonia.rdne t.w aw.p /re pos / Jabbe r 27

28 S O FTW A R E Ink s cape Tow arz ys z GIM P-a? W s z ys cy w św ie cie w o ne go oprogram ow ania z ajm ujący s ię i inte re s ujący grafik ą z nają s ław ne go GIM P-a. I w s z ys cy te ż z ape w ne s łys z e i o program ie naz yw ającym s ię Ink s cape, a e o i e te n pie rw s z y je s tna e życie doce niany (uw aża s ię go z a otw arty odpow ie dnik profe s jona ne go Ph otos h opa), to Ink s cape nie z as łuże nie troch ę poz os taje w cie niu. i ustracji k re sk ow ych czy w ręcz k re sk ow ych rysunk ów te ch nicznych. W w ięk szości przypadk ów je st tak, ponie w aż użytk ow nicy nie są św iadom i siły (a b o naw e tistnie nia) now ocze snych e dytorów w e k torow ych, prze znaczonych spe cja nie do podob nych zadań. Tak im e dytore m staje się pow o i Ink scape. Piszę: staje się, b o program pow stałstosunk ow o nie daw no i je stda e jrozw ijany. Ink scape to e dytor grafik i w e k torow e jo otw artym k odzie źródłow ym, podob ny do Adob e I ustrator, Core DR AW, Fre e h and czy Xara X. Pow stał na b azie inne go program u Sodipodi stw orzone go prze z Estończyk a o sym patycznie - b o znajom o d a po sk ie go uch a b rzm iącym nazw isk u - Laurisa Kap ińsk ie JAN W ALK IEW ICZ go, oraz k ie row aną prze z nie go grupę. Pod k onie c rok u czte re jw spółautorzy Sodipodi: Bryce H ara napraw dę w arto się nim zainte re sow ać. D acze go? rington, M e ntalguy, Natan H ursti Te d Gou d stw oo tóż ak tua nie te go (znak om ite go) e dytora b itm ap, rzy i odgałęzie nie k odu program u Ink scape. Z a jak im je st GIM P, często używ a się do popu arnych głów ny ce postaw iono sob ie stw orze nie, w otw arzadań, do k tórych nie je stw ca e naj e pie jprzygotow atym i uk ie runk ow anym na w spółdziałanie użytk ow niny, tak ich jak tw orze nie uk ładów graficznych d a puk ów proce sie rozw ojow ym, narzędzia rysunk ow e go b ik acji druk ow anych i na strony W W W, gode ł, w pe łni zgodne go z otw artym, opartym na XM L- u, Logo program u Ink s cape standarde m SVG i m ające go now y, spraw ny, b ardzie j przyjazny d a użytk ow nik a oraz innow acyjny inte rfe js. W rozw oju Ink scape położono nacisk na otw arty dostęp proje k tantów do b azy k odu, jak rów nie ż stosow anie i w spie ranie ze w nętrznych b ib iote k 28

29 S O FTW A R E now sze w e rsje zape w niają już dużą porcję m oż iw ości podstaw ow e j e dycji grafik i w e k torow e j. Z ainte re sow ani program e m znajdą dołączony do ninie jsze j e dycji Dragonii poradnik, dostarczający Użytk ow nicy inform ują o pom yś nych zastosow aniach Ink scape w w ie u b ardzo różnych proje k tach (grafik a sie ciow a, prace te ch niczne, ik ony, rysunk i artystyczne, godła, m apy).np.tysiące ob razów na W ik ipe dii są tw orzone za pom ocą Ink scape, tak jak i w ięk szość zaw artości ope n- c ipart (k iparty do sw o- pie rw sze j,nie zb ędne jpom ocy w użytk ow aniu Ink scape, w raz z garścią b iższych inform acji o ap ik acji, a tak że poradam i, jak uzysk ać k onk re tne e fe k ty. Tym czase m proszę się przyjrze ć dw óm zrzutom e k ranu prac stw orzonych w Ink scape. W ie e w sk azuje na to, że oto pojaw ił się w e k torow y partne r słynne go ra- b odne go użytk u). strow e go GIM P- a... i to partne r godny! Lam borgh ini Ga ardo utw orz ony na baz ie fotografii prz e z M ich ae a Gros be rga i standardów. Podstaw ow e staw iane ce e to: stab i ność, w ydajność i m oż iw ości tw orze nia grafik i w e k torow e j na ak tua nym poziom ie rozw oju te j dzie dziny. W ciągu paru m ie sięcy, proje k t zaow ocow ał k i k om a w e rsjam i, de m onstrując k o e jne istotne, now e w łaściw ości oraz udosk ona e nia b azy k odu i szyb k o dow iódł, że je st godnym uw agi proje k te m O pe n Source. Proje k tanci syste m atycznie rozw ijają program, m nie j w ięce j co półrok u w ydając now e je go w e rsje. Ak tua nie dostępna je st stab i na w e rsja Si ną stroną ap ik acji je st ob sługa sk rótów k aw iszow ych. Je st ich napraw dę m nóstw o i zde cydow anie ułatw iają pracę. Ch ociaż Ink scape nie m a w szystk ich w łaściw ości czołow ych e dytorów w e k torow ych, naj- To nie je s tz djęcie! W e k torow y rys une k Luciano Loure nco w yk onany w Ink s cape

30 S O FTW A R E Z aaw ans ow ana k onfiguracja s e rw e ra W W W cz ęść II W je de nas tym num e rz e Dragonii roz pocz ąłe m opis yw anie p ik u k onfiguracyjne go s e rw e ra apach e, była to I cz ęść te go artyk ułu. W bie żącym num e rz e, om ów ię k o e jny fragm e nt m oż iw ości us taw ie ń s e rw e ra. K RZ YSZ TO F BISKUP Se k cja II, b o o nie j b ędzie m ow a w artyk u e, zaw ie ra ustaw ie nia odpow ie dzia ne za re ak cje se rw e ra na żądania, k tóre nie są ob sługiw ane prze z Virtua H ost. ### Section 2: 'Main' server configuration User apache Group apache Użytk ow nik (USER ) i grupa (GR O UP), na k tórych m a pracow ać se rw e r. D a b e zpie cze ństw a, pow inny one m ie ć jak najniższe upraw nie nia. ServerAdmin root@ocahost Adre s pocztow y adm inistratora se rw e ra, na jak i pow inny b yć k ie row ane uw agi dotyczące je go pracy. ServerName Nazw a se rw e ra W W W. Będzie to adre s i port, k tóry se rw e r b ędzie w ysyłał do k ie ntów podczas połącze nia. M oże sz podać tutaj sw oją dom e nę. W pisany adre s m usi b yć k onie cznie zare je strow aną w se rw e rach DNS dom e ną, w prze ciw nym w ypadk u nie b ędzie działałpopraw nie. Je ś i nie posiadasz żadne j dom e ny, w pisz sw ój adre s IP i na je go k ońcu dopisz nr. portu, dom yś ny num e r portu m a w artość 80. Timeout 300 Czas w se k undach do tim e out. KeepAive On O pcja um oż iw ia w ięce jniż je dno połącze nie z je dne go k om pute ra, je ś i nasz se rw e r m a m ałe m oż iw ości, ustaw m y w artość na off, dzięk i cze m u zm nie jszym y ruch ge ne row any na nim. MaxKeepAiveRequests 100 Dzięk i te m u ustaw ie niu, m oże m y ok re ś ić m ak sym a na i ość połącze ń z je dne go k om pute ra. KeepAiveTimeout 5 O pcja usta a i ość se k und podczas k tórych se rw e r b ędzie cze k ał na następne zapytanie od k ie nta na tym sam ym połącze niu. UseCanonicaName Off O pcja ta daje m oż iw ość ok re ś e nia b udow y adre su. W łącze nie te j opcji ze zw a a se rw e row i na k orzystanie z nazw k anonicznych, k tóre se rw e r b ędzie sam tw orzyłna b azie adre su dom e now e go i portu. ServerTokens OS Ninie jsza dyre k tyw a k onfiguruje to, co je st zw racane jak o nagłów e k se rw e ra H TTP: Fu O S M inor M inim a M ajor Prod. ServerSignature On O pcja um oż iw ia dodania opcjona nych inform acji o se rw e rze, np. je go w e rsję. 30

31 S O FTW A R E HostnameLookups Off O pcja ok re ś ająca sposób re je stracji k ie ntów : w w w.apach e.org (on) ub (off) DocumentRoot /var/www/htm Po e ce nie ustaw ia głów ny k ata og se rw e ra, w k tórym b ędą się znajdow ały pub ik ow ane p ik i. <Directory /var/www/htm> Ustawienia dostępu do kataogu głównego. Options -Indexes FoowSymLinks MutiView O pcje inde k sow ania k ata ogów : "None ", "A ", "Inde xe s", "Inc ude s", "Fo ow Sym Link s", "Exe ccgi" ub "M u tivie w s" AowOverride None Tu m oże m y ok re ś ić, co se rw e r zrob i z opcjam i z p ik u.h tacce ss: "A ", "O ptions", "Fi e Info", "Auth Config"i "Lim it" Order aow,deny Aow from a O k re ś am y, k to m a dostęp do se rw e ra </Directory> <IfModue mod_incude.c> <IfModue mod_dir.c> DirectoryIndex index.shtm </IfModue> </IfModue> <IfModue mod_dir.c> DirectoryIndex index.htm index.htm.var index.cgi index.p index.htm Defaut.htm defaut.htm index.xm </IfModue> Ustaw ie nia d a m odułów. O pcja um oż iw ia ok re ś e nie ście żk i do dzie nnik a b łędów, do k tóre go se rw e r b ędzie w ysyłałinform acje. LogLeve warn Dyre k tyw a ustaw ia stopie ń dok ładności, czy i jak ie inform acje m ają b yć zapisyw ane do p ik u b łędów. M oż iw e opcje to: de b ug, info, notice, w arn, e rror, crit, a e rt, e m e rg. Je ś i ch ce sz otrzym yw ać ty ko ostrze że nia, zostaw 'w arn'. AccessFieName.htaccess LogFormat "%h % %u %t \"%r\" %>s %b \"%{Refereri\" \"%{User-Agenti\"" O pcja, um oż iw iająca ok re ś e nie nazw y ok a ne go p i- combined k u k onfiguracyjne go, k tóry w prze ciw ie ństw ie do p i- LogFormat "%h % %u %t \"%r\" %>s %b" k u h ttpd.conf - czytane go ty k o raz przy starcie - common je st czytany przy k ażdym odw ołaniu się do w itryny. LogFormat "%{Refereri -> %U" referer P ik.h tacce ss m oże zaw ie rać dyre k tyw y zam ie szcza- LogFormat "%{User-agenti" agent ne w p ik u.h ttpd.conf (a e ty k o nie k tóre, o czym de - LogFormat "%v %h % %u %t \"%r\" %>s cyduje opcja A ow O ve rride ). %b \"%{Refereri\" \"%{User-Agenti\" VLOG=%{VLOGe" vhost DefautType text/pain O pcje zapisu ogów. Dyre k tyw a ok re ś ająca dom yś ny 'm im e ' se rw e ra. <IfModue mod_mime_magic.c> MIMEMagicFie conf/magic </IfModue> Z m iana 'm im e ' w za e żności od zaw artości p ik u. CustomLog ogs/access_og common Dyre k tyw a ustaw ia ok a izację p ik u ogów w e jść d a w szystk ich, je ś i w w irtua nym h oście nie ustaw isz osob ne go p ik u ogow ania, ogi b ędą zapisyw ane w łaśnie do te go p ik u. ErrorLog ogs/error_og CustomLog ogs/access_og combined 31

32 S O FTW A R E O pcja ok re ś a położe nie p ik u ze w szystk im i ogam i w form acie : czas dostępu, sk ąd, prze g ądark a. ScriptAias /cgi-bin/ "/var/www/cgibin/" ScriptAias /protected-cgi-bin/ "/var/www/protected-cgi-bin/" A iasy do sk ryptów CGI. <IfModue mod_autoindex.c> IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTabe AddIconByEncoding (CMP,/icons/compressed.png) x-compress x-gzip AddIconByType (TXT,/icons/text.png) text/* AddIconByType (IMG,/icons/image2.png) image/* AddIconByType (SND,/icons/sound2.png) audio/* AddIconByType (VID,/icons/movie.png) video/* AddIcon /icons/binary.png.bin.exe AddIcon /icons/binhex.png.hqx AddIcon /icons/tar.png.tar AddIcon /icons/word2.png.wr.wr.gz.vrm.vrm.iv AddIcon /icons/compressed.png.z.z.tgz.gz.zip AddIcon /icons/a.png.ps.ai.eps AddIcon /icons/ayout.png.htm.shtm.htm.pdf AddIcon /icons/text.png.txt AddIcon /icons/c.png.c AddIcon /icons/p.png.p.py AddIcon /icons/f.png.for AddIcon /icons/dvi.png.dvi AddIcon /icons/uuencoded.png.uu AddIcon /icons/script.png.conf.sh.shar.csh.ksh.tc AddIcon /icons/tex.png.tex AddIcon /icons/bomb.png core AddIcon /icons/back.png.. AddIcon /icons/hand.right.png README AddIcon /icons/foder.png ^^DIRECTORY^^ AddIcon /icons/bank.png ^^BLANKICON^^ DefautIcon /icons/unknown.png #AddDescription "GZIP compressed document".gz #AddDescription "tar archive".tar #AddDescription "GZIP compressed tar archive".tgz O pisy p ik ów ReadmeName README.htm HeaderName HEADER.htm Nazw a p ik u R EADM E i H EADER (p ik R EADM E w yśw ie t any je st na do e inde k su, a H EADER na górze, jak o nagłów e k.) IndexIgnore.??* *~ *# HEADER* README* RCS CVS *,v *,t Nazw y ignorow anie prze z inde x. </IfModue> Konfiguracja m odułu 'autoinde x'. AddLanguage ca.ca AddLanguage cs.cz.cs AddLanguage da.dk AddLanguage de.de AddLanguage e.e AddLanguage en.en AddLanguage eo.eo AddLanguage es.es AddLanguage et.et AddLanguage fr.fr AddLanguage he.he AddLanguage hr.hr AddLanguage it.it AddLanguage ja.ja AddLanguage ko.ko AddLanguage tz.tz AddLanguage n.n AddLanguage nn.nn AddLanguage no.no AddLanguage p.po Języki - UWAGA! Poski oznaczamy przez ".po" a nie ".p" - rozszerze- 32

33 S O FTW A R E nie Pera AddLanguage pt.pt AddLanguage pt-br.pt-br AddLanguage ru.ru AddLanguage sv.sv AddLanguage zh-cn.zh-cn AddLanguage zh-tw.zh-tw Prioryte tjęzyk ów. <IfModue mod_negotiation.c> LanguagePriority en ca cs da de e eo es et fr he hr it ja ko tz n nn no p pt pt-br ru sv zhcn zh-tw </IfModue> ErrorDocument 400 /error/http_bad_request.htm.var ErrorDocument 401 /error/http_unauthorized.htm.var ErrorDocument 403 /error/http_forbidden.htm.var ErrorDocument 404 /error/http_not_found.htm.var ErrorDocument 405 /error/http_method_not_allowed.htm.var ErrorDocument 408 /error/http_request_time_out.htm.var ErrorDocument 410 /error/http_gone.htm.var ErrorDocument 411 /error/http_length_required.htm.var ErrorDocument 412 /error/http_precondition_failed.htm.var ErrorDocument 413 /error/http_request_entity_too_large.htm.var ErrorDocument 414 /error/http_request_uri_too_large.htm.var ErrorDocument 415 /error/http_unsupported_media_type.htm.var ErrorDocument 500 /error/http_internal_server_error.htm.var ErrorDocument 501 /error/http_not_implemented.htm.var ErrorDocument 502 /error/http_bad_gateway.htm.var ErrorDocument 503 /error/http_service_unavailable.htm.var ErrorDocument 506 /error/http_variant_also_varies.htm.var Strony b łędów. M oże sz tutaj zde finiow ać ście żk i do stron, k tóre b ędą w yśw ie t ane k ie dy w ystąpi b łąd o danym num e rze. <IfModue mod_setenvif.c> BrowserMatch "Mozia/2" nokeepaive BrowserMatch "MSIE 4\.0b2;" nokeepaive downgrade-1.0 force-response1.0 BrowserMatch "ReaPayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 BrowserMatch "Microsoft Data Access Internet Pubishing Provider" redirect-carefuy BrowserMatch "MS FrontPage" redirect-carefuy BrowserMatch "^WebDrive" redirectcarefuy BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefuy BrowserMatch "^gnome-vfs" redirect-carefuy BrowserMatch "^XML Spy" redirectcarefuy BrowserMatch "^Dreamweaver-WebDAVSCM1" redirect-carefuy </IfModue> Konfiguracja d a m odułu 'm od_ se re nvif'. Dzięk i nie m u m oże sz m odyfik ow ać odpow ie dzi H TTP. To b y b yło na ty e. W k o e jne j części prze dstaw ię opis se k cji odpow ie dzia ne j za k onfiguracje h ostów w irtua nych. 33

34 S O FTW A R E Baz a po k ontro ą k ons o i, cz ęść III W poprz e dnim num e rz e opis yw ałe m, w jak i s pos ób m odyfik ow ać tabe e i z m ie niać ich s truk turę. W te j cz ęści opis z ę, w jak i s pos ób dodaw ać i us uw ać w pis y w tabe ach. W s z ys tk ie ope racje będz ie m y w yk onyw ać na tabe i K ATALO G_ STRO N, k tórą s tw orz y iśm y w cz ęści II artyk ułu. K RZ YSZ TO F BISKUP Ab y dodać w ie rsz do tab e i KATALO G_ STR O N, k orzystam y z po e ce nia INSER T. O to przyk ład: g ąda następująco: seect * from kataog_stron; Po e ce nie to je st b ardzie j rozb udow ane, m y je dnak na razie b ędzie m y z nie go k orzystać w te j najprostsze jform ie.sze rsze je go zastosow anie poznam y w k o e jne j części artyk ułu. W ynik ie m użycia zapytania SELECT je st w yśw ie t e nie tab e i w sk azane j po słow ie FR O M. Jak w idzim y (R ys. 1), w nasze j tab e i znajduje się je de n re k ord (w ie rsz) - te n, k tóry prze d m om e nte m doda iśm y. Na pe w no zw róci iście uw agę na ostatni argum e nt, jak i je stprze k azany w naw iasie, tj. NULL. na prze z M ysql(po e to m a ustaw ianą opcję AUTO _ INCR EM ENT), nie m usim y te m u po u nadaw ać żadne j w artości podczas w staw iania. Sk ładnia język a w ym aga je dnak, b y jak aś w artość b yła um ie szczona, d ate go pisze m y NULL, co znaczy pusty, nie ok re ś any. Czase m ch ce m y dodać re k ord, a e nie znam y w artości w szystk ich pó, w te dy m oże m y sam odzie nie ok re ś ić k o um ny, jak im ch ce m y przypisać w artości. O to przyk ład: insert into kataog_stron(adres, tytu) vaues ( Dragonia Magazine ); insert into kataog_stron vaues ( Tytu Str1, Autor Str1, Sowa kuczowe str1, Opis str1, , y, NULL); Jak w idzim y, po słow ach INSER T INTO um ie szczam y nazw ę tab e i, a następnie słow o VALUES, po k tórym w naw iasie w ym ie niam y w szystk ie w artości d a k o e jnych k o um n. Ab y zob aczyć zaw artość tab e i, w yk orzystam y po e ce nie SELECT, k tóre go postać w y- Rys.2 Rys.1 Ponie w aż w artośćpo a id je stautom atycznie nadaw a- Jak w idzim y na przyk ładzie (R ys. 2.), gdy dodaje m y do tab e i nie pe łny re k ord, po a nie ok re ś one ozna- 34

35 S O FTW A R E czane są jak o puste (NULL) ub przyb ie rają dom yś - str4, , y, NULL); ną w artość (je ś i tak ow a została ok re ś ona podczas iśm y re k ordy do tatw orze nia tab e i). W naszym przypadk u w artość po- W naszych przyk ładach dodaw a i odw ołując się do nie jużyw ając sam e jty k o je jna a PUBLIC przyjęła w artość dom yś ną y. Dodajm y b e zw y (R ys. 3.). je szcze k i k a innych re k ordów do nasze j tab e i, ab y M og iśm y w yk onyw ać tak ie po e ce nia, gdyż nasza tam óc późnie jdok onyw ać na nich różnych ope racji. be a KATALO G_ STR O N znajdow ała się w b azie, k tórą w cze śnie j w sk aza iśm y jak o b azę dom yś ną. insert into kataog_stron vaues Gdyb yśm y nie w sk aza i dom yś ne j b azy ub gdyb y( Tytu Str2, Autor Rys.4 śm y ch cie i dodać re k ordy do tab e i w inne jb azie dastr2, Sowa kuczowe str2, Opis nych, m usie ib yśm y posłużyć się innym form ate m Z ob aczm y, jak a je st zaw artość tab e str2, , y, NULL); i KATALO zapisu po e ce nia, k tóre go sk ładnia prze dstaw ia sie G_ STR O N. W tym ce u użyje m y ponow nie po e ce nast ępuj ąco: insert into kataog_stron vaues nia SELECT; ( Tytu Str3, Autor insert into nazwa_bazy.nazwa_tabei va- seect * from kataog_stron; Str3, Sowa kuczowe str3, Opis ues (wartość1, wartość2,...); str3, , y, NULL); insert into kataog_stron vaues ( Tytu Str4, Autor Str4, Sowa kuczowe str4, Opis Jak w idzim y, nazw a tab e i została poprze dzona nazw ą b azy, od k tóre j została oddzie ona k ropk ą, w ięc k o e jny re k ord m oże m y dodać używ ając po e ce nia Tym raze m (R ys. 5.), w ynik ie m po e ce nia je st sze ść w ie rszy, uporządk ow anych w e dług rosnące j w artości po a id. insert into inkownia.kataog_stron vaues ( Tytu Str5, Autor Str5, Sowa kuczowe str5, Opis str5, , y, NULL); Jak w idać (R ys. 4.), po e ce nia zostały popraw nie w yk onane. Rys.5 Rys.3 35

36 S O FTW A R E deete from kataog_stron where id>2; Jak w idać (R ys. 7.), zostały usunięte 3 w ie rsze, a pozostały ty k o 2 pie rw sze, gdzie id nie spe łniało w arunk u usunięcia. Rys.6 W arune k, jak i um ie szczam y po słow ie W H ER E, m oże b yć znacznie b ardzie j sk om p ik ow any, a e om ów im y go w k o e jne jczęści k ursu. Ko e jną um ie jętnością, jak ą pow inniśm y nab yć, je st usuw anie w ie rszy z tab e i. Po e ce nie służące do te go ce u to DELETE. Używ am y go, ok re ś ając je dnocze śnie, jak i re k ord( w ie rsz) ch ce m y usunąć. O to przyk ład: deete from kataog_stron where id=8; Po e ce nie to usunie w ie rsz, w k tórym w artość id je st rów na 8. Spraw dźm y, jak i je st je go w ynik w ydając po e ce nie : seect * from kataog_stron; Jak w idać (R ys. 6.), zaw artość nasze j tab e i je st pom nie jszona o ostatni w ie rsz. Usuńm y je szcze w ie rsze, d a k tórych id m a w ięk szą w artość od 2. Rys.7 36

37 PR O G R A M O W A NIE Program ow anie w środow is k u s ys te m u GNU/Linux cz ęść 6 W tym num e rz e Dragonii z ajm ie m y s ię dw om a z agadnie niam i. Po pie rw s z e, poz nam y funk cje um oż iw iające z w ie ok rotnione w e jście /w yjście, a po drugie s k ończ ym y w re s z cie z ope racjam i w e jścia/w yjścia, s ys te m e m p ik ów i z ajm ie m y s ię proce s am i. M ACIEJ M ALINO W SK I char od_usera[1024]; //dasza treść programu whie( warunek ) { //dasza treść programu read(fd_serwer, od_serwera, 1024); read(stdin_fileno, od_usera, 1024); //dasza treść programu Czasam i zdarza się (i to naw e t b ardzo często), że nasz program m usi czytać dane napływ ające do nie go poprze z w ięce j niż je de n de sk ryptor p ik u. Sztandarow ym przyk łade m są program y sie ciow e, k tóre z je dne j strony m uszą się porozum ie w ać np. z se rw e re m, a z drugie j m uszą w czytyw ać dane poch odzące od użytk ow nik a. M og ib yśm y sprób ow ać prob em te n rozw iązać w następujący sposób : //... char od_serwera[1024]; //... Je dnak gdy dane od se rw e ra nie nade jdą to program zab ok uje się w yw ołując pie rw szą z funk cji re ad i użytk ow nik b ędzie m iałw raże nie, że program się zaw ie sił. Z drugie jstrony je dnak, gdy użytk ow nik ode jdzie od k om pute ra i prze stanie w prow adzać dane, to program zab ok uje się na drugie j funk cji re ad i z k o e i se rw e r b ędzie prze k onany o zaw ie sze niu progra- m u. Prob e m te n rozw iązać m oże m y na w ie e sposob ów, stosując różne rodzaje w e jścia/w yjścia: nie b ok ow ane (czy i ustaw ie nie d a k ażde go z dw óch de sk ryptorów fd_ se rw e r i STDIN_ FILENO f agi O _ NO NBLO CK przy pom ocy funk cji fcnt ), asynch roniczne (w yk orzystując inte rfe js funk cji aio_ XXX), ste row ane sygnałam i (ponow nie w tym ce u na e ży w yk orzystać funk cje fcnt ), ub pre ze ntow ane dzisiaj zw ie ok rotnione w e jście /w yjście. Z w ie ok rotnione IO um oż iw ia spraw dze nie - b e z w yw oływ ania funk cji re ad ub w rite - na k tórych z zadane go zb ioru de sk ryptorów m ożna w yw ołać ope racje w e /w y b e z ob aw o zab ok ow anie program u. #inc ude <sys/se e ct.h > int se e ct(int nfds, fd_ se t *re adfds, fd_ se t *w rite fds, fd_ se t*e xce ptfds, structtim e va*tim e out); void FD_ Z ER O (fd_ se t*se t); void FD_ SET(intfd, fd_ se t*se t); void FD_ CLR (intfd, fd_ se t*se t); intfd_ ISSET(intfd, fd_ se t*se t); structtim e va{ 37

38 PR O G R A M O W A NIE ong tv_ se c;/* se k undy */ ong tv_ use c;/* m ik rose k undy */ ; fd_set odczyt; Tw orzym y zb iór de sk ryptorów, z k tórych ch ce m y czytać. struct timeva tv; tv.tv_sec = 1; tv.tv_usec = 0; Ch ce m y, b y w yw ołanie funk cji se e ctb yło nie b ok ujące i b y po m ak sym a nie 1 se k undzie - naw e t w ów czas gdy żade n z de sk ryptorów nie je st gotów rów. Pie rw szy dotyczy tych, z k tórych ch ce m y czytać, drugi do k tórych ch ce m y pisać, a trze ci dotyczy pow róciła. FD_ZERO(&odczyt); spe cja nych w ydarze ń. O statnim z e e m e ntów je st FD_SET(STDIN_FILENO, &odczyt); struk tura typu tim e va, opisująca i e czasu funk cja Ut w orzony w cze śnie j zb iór m usim y najpie rw zainim a cze k ać. Je ś i zam iast nie j prze k aże m y NULL, to funk cja cze k aćb ędzie, dopók i dostęp do je dne go z de - cjow ać w yw ołanie m FD_ Z ER O, po czym dodaje m y sk ryptorów b ędzie m oż iw y; je ś i prze k aże m y do do nie go de sk ryptor odnoszący się do standardow e nie jfunk cje z w artościam i rów nym i 0, to se e ctod ra- go w e jścia. seect(stdin + 1, &odczyt, zu pow róci - naw e t w ów czas, gdy żade n z de sk ryptorów nie je st gotow y, dzięk i cze m u nie b ędzie NULL, NULL, &tv); e ctprze k azując je jodpow ie dm oż iw ości zab ok ow ania program u. Funk cja se e ct W yw ołuje m y funk cjęse m oże ocze k iw ać ok re ś oną prze z struk turę tim e va nie dane. Nie inte re suje nas spraw dzanie pozostadługość czasu. Funk cja zw raca - 1 w przypadk u b łę- łych ze staw ów de sk ryptorów, w ięc prze k azuje m y du, 0 gdy żade n z de sk ryptorów nie je st je szcze goto- NULL. if(fd_isset(stdin_fileno, &odw y, oraz w artość w ięk szą od 0 - oznaczającą iczb ę gotow ych de sk ryptorów.przyk ład zastosow ania funk - czyt)) { cji se e ct znajduje się w artyk u e Konie c k ursu C+ + read(stdin_fileno, od_use- k asa ggstre am. W ażne je st, b y odpow ie dnio przygotow ać zb iory de sk ryptorów prze d prze k azanie m ra, 1024); Przy pom ocy w yw ołania FD_ ISSET m oże m y spraw do funk cji se e ct: dzić, czy po pow rocie z funk cji se e ct dany de sk ryptor je st ustaw iony, co je st rów noznaczne z je go //... Pie rw szą z funk cji je st se e ct. Je j pie rw szym argum e nte m je st w artość o je de n w ięk sza od najw ięk sze go de sk ryptora p ik u, k tóry m a te stow ać. Następnie przyjm uje w sk aźnik i do trze ch zb iorów de sk rypto- gotow ością do w e jścia/w yjścia, k tóre na pe w no nie zak ończy się zab ok ow anie m program u. //... #inc ude <sys/po.h > int po (struct po fd *ufds, unsigne d int nfds, int tim e _ out); structpo fd { intfd; sh orte ve nts; sh ortre ve nts; ; M oż iw e w artości po a e ve nts i re ve nts: PO LLIN - m ożna odczytać zw yk łe dane i pozapasm ow e, PO LLR DNO R M m ożna odczytać zw yk łe dane, PO LLR DBAND m ożna odczytać dane pozapasm ow e, PO LLPR I m ożna odczytać dane w ysok oprioryte tow e, PO LLO UT m ożna zapisać zw yk łe dane, PO LLW R NO R M m ożna zapisać zw yk łe dane (rów now ażne PO LLO UT), PO LLW R BAND m ożna zapisać dane pozapasm ow e, W artości zw racane (ty k o re ve nts): PO LLER R - b łąd, 38

39 PR O G R A M O W A NIE PO LLH UP - zaw ie sze nie, PO LLNVAL nie praw idłow y de sk ryptor p ik u, k tóre go je dnak nie m oże m y odczytać. if(pfd.revents & POLLRDNORM) { Po to druga z funk cji zw ie ok rotnione go w e /w y. read(stdin_fileno, od_usefunk cja, ta m oim zdanie m, m a prostszy i nie co o- ra, 1024); gicznie jszy inte rfe js niż se e ct. Po pie rw sze, przyjm u je ona tab ice sk ładającą się ze struk tur typu po fd, //... k tóre opisują jak a ope racja w e /w y inte re suje nas w przypadk u dane go de sk ryptora. Jak o sk ładow ą fd Na tym zak ończym y trw ający praw ie 6 części cyk arustaw iam y de sk ryptor. W sk ładow e j e ve nt zapisuje - tyk ułów zw iązanych z syste m e m p ik ów i ope racjam i m y inte re sujące nas żądania. W po u re ve nts funk - IO i zajm ie m y się je dną z przyje m nie jszych spraw cja po zw raca inform acje o m oż iw ych m ianow icie proce sam i. Proce s to po prostu uruch onie b ok ow anych ope racjach z danym de sk ryptore m. m iony w pam ięci program.gdy uruch am iam y np.nadrugim argum e nte m je st i ość e e m e ntów po fd w szą u ub ioną pow łok ę, ch oćb y zsh, to po je j prze k azyw ane j do nie j tab icy, a trze cim czas, jak i uruch om ie niu działa ona w naszym k om pute rze i m óm a funk cja odcze k ać. Je ś i ustaw im y tę w artość na w im y o nie jw ów czas, że je st proce se m. 0, to funk cja pow raca od razu; je ś i przypisze m y je j w artość w ięk szą od 0 to b ędzie ocze k iw ać tak ą w ła- Po pie rw sze, m usim y sob ie opow ie dzie ć o pe w nych śnie iczb ę m i ise k und. Je ś i natom iast przypisze m y param e trach opisujących proce s.każdy proce s w sysje j w artość INFTIM to funk cja b ędzie ocze k iw ać na te m ie m a sw ój unik atow y num e r, k tóry go je dnoodb ok ow anie je dne go z de sk ryptorów, co m oże za- znacznie ide ntyfik uje. Num e r proce su m ożna b ok ow ać nasz program. Pow yższy przyk ład z funk - odczytać przy pom ocy funk cji ge tpid. Proce s m a rów cją se e ct m ożna zapisać używ ając funk cji po w nie ż sw oje go rodzica, czy i proce s, k tóry go utw onastępujący sposób. rzył. W przypadk u proce sów, k tórych rodzic //... struct pofd pfd; pfd.fd = STDIN_FILENO; pfd.events = POLLRDNORM; po(&pfd, 1, 5000); zak ończył sw oje działanie, rodzice m staje się proce s num e r 1. Z proce se m w iążą się rów nie ż ide ntyfik atory rze czyw isty użytk ow nik a (funk cja ge tuid), rze czyw isty grupy (funk cja ge tgid), e fe k tyw ny użytk ow nik a (ge te uid), e fe k tyw ny grupy (ge te gid) oraz zach ow any ide ntyfik ator użytk ow nik a i grupy, #inc ude <sys/type s.h > #inc ude <unistd.h > pid_ tge tpid(void); pid_ tge tppid(void); uid_ tge tuid(void); uid_ tge te uid(void); gid_ tge tgid(void); gid_ tge te gid(void); Funk cje te zw racają po prostu odpow ie dnie num e ry. // // Pik identyfikatory.c // #incude <sys/types.h> #incude <unistd.h> #incude <stdib.h> #incude <stdio.h> int main() { printf( "Numer procesu: %d\n" "Numer rodzica: %d\n" "Rzeczywisty identyfikator użytkownika: %d\n" "Rzeczywisty identyfikator grupy: %d\n" 39

40 PR O G R A M O W A NIE "Efektywny identyfikator użytkownika: %d\n" "Efektywny identyfikator grupy: %d\n", getpid(), getppid(), getuid(), getgid(), geteuid(), getegid()); exit(exit_success); Przykładowy wynik programu: Numer procesu: 3950 Numer rodzica: 3895 Rzeczywisty identyfikator użytkownika: 500 Rzeczywisty identyfikator grupy: 500 Efektywny identyfikator użytkownika: 500 Efektywny identyfikator grupy: 500 Je ś i program uruch om im y je st z pow łok i np. b ash, to num e re m nasze go rodzica je st num e r proce su pow łok i.num e ry użytk ow nik ów i grup to num e ry odpow iadające użytk ow nik ow i uruch am iające m u program - zapisane w p ik u /e tc/passw d. Są to podstaw ow e param e try proce su, zaś w przyszłych num e rach pow ie m y sob ie, jak m ożna je zm ie niać. #inc ude <sys/type s.h > #inc ude <unistd.h > pid_ tfork (void); Funk cja fork je st je dynym sposob e m na utw orze nie now e go proce su. Funk cja ta nie przyjm uje żadnych argum e ntów i zw raca do proce su potom k a - utw orzone go prze z rodzica - 0, a do rodzica zw raca num e r tomny: %d, jego rodzic to %d\n", getpid(), getppid()); proces = "potomek"; ese { //(3) printf("działa proces rodzic: %d\n", getpid()); proces = "rodzic"; proce su potom ne go. W przypadk u b łędu zw raca - 1. printf("proces %s kończy Funk cja ta w yw oływ ana je st raz i pow raca dw a razy. Po je jw yw ołaniu następuje sk opiow anie pam ięci pro- się\n", proces); //(4) ce su m acie rzyste go i pow staje drugi proce s ide ntyczexit(exit_success); ny z m acie rzystym, czy i je go potom e k. #incude #incude #incude #incude <unistd.h> <sys/types.h> <stdio.h> <stdib.h> int main() { pid_t pid; char *proces; if((pid = fork()) == -1) { //(1) perror("fork"); exit(exit_failure); ese if(pid == 0) { //(2) printf("działa proces po- W ynik działania program u (num e ry proce sów m ogą się różnić): Działa proces potomny: 3689, jego rodzic to 3688 Proces potomek kończy się Działa proces rodzic: 3688 Proces rodzic kończy się (1)W yw ołuje m y funk cję fork. (2)Funk cja raz pow raca w tym m ie jscu i proce s potom ny w yśw ie t a num e r sw óji sw oje go rodzica. (3)W tym m ie jscu funk cja po raz k o e jny pow raca i proce s rodzic w yśw ie t a sw ójnum e r. (4)Dow ód na to, że m am y dw a zupe łnie odręb ne 40

41 PR O G R A M O W A NIE proce sy: k ażdy z nich po opuszcze niu sw oje go b ok u instruk cji prze ch odzi do te j inii program u i pojaw iają się na w yjściu dw a w ynik i. #inc ude <sys/type s.h > #inc ude <sys/w ait.h > pid_ tw ait(int*status); pid_ tw aitpid(pid_ tpid, int*status, intoptions); Proce s m acie rzysty m oże ocze k iw ać na zak ończe nie sw oich potom k ów i odb ie rać inform acje o stanie i przyczynach ich zak ończe nia. Służą do te go dw ie funk cje w aiti dająca o w ie e w ięk sze m oż iw ości w aitpid. O pcje funk cji w aitpid: W NO H ANG funk cja pow raca od razu, naw e t, je ś i żade n z potom k ów się nie zak ończył, W UNTR ACED ś e dze nie proce sów zatrzym anych ; M ak ra um oż iw iające spraw dzanie w artości status: W IFEXITED(status) zw raca w artość różną od ze ra, gdy potom e k norm a nie zak ończyłpracę W EXITSTATUS(status) - je ś i potom e k norm a nie zak ończył pracę, to m ak ro zw raca w artość pow rotu W IFSIGNALED(status) zw raca w artość nie ze row ą, gdy potom e k zak ończył działanie na sk ute k nie ob służone go sygnału W TER M SIG(status) zw raca num e r sygnału, k tóry zak ończył działanie potom k a W CO R EDUM P(status) zw raca w artośćnie ze row ą, gdy potom e k zrzucił pam ięć W IFSTO PPED(status) zw raca w artość nie ze row ą, gdy potom e k został zatrzym any W STO PSIG(status) zw raca num e r proce su, k tóry zatrzym ałpotom k a Funk cja w ait je st prostsza, a e m a pe w ie n spory m inus m oże zab ok ow ać program, je ś i żade n z potom k ów nie zak ończył sw oje go działania. Funk cja zw raca num e r proce su, k tóry się zak ończył ub - 1, i w zm ie nne jtypu int- do k tóre jto w sk aźnik prze k azuje się w argum e ncie funk cji - zapisuje inform acje, k tóre m ożna ana izow ać przy pom ocy pow yższych m ak r te stujących. W aitpid je st pod tym w zg ęde m e pszą funk cją. M a tak ie sam e w artości pow rotu, a e dodatk ow o m ożna do nie j prze k azać num e r proce su, na k tóry cze k am y m oż iw e w artości to: w artość w ięk sza od 0 cze k am y na proce s o podanym num e rze, w artość rów na 0 cze k am y na proce s z nasze jgrupy proce sów, w artość rów na - 1 cze k am y na dow o ny proce s potom ny, w artość m nie jsza niż - 1 cze k am y na proce s z grupy proce sów o num e rze rów nym w artości b e zw zg ędne j podane j iczb y. Dodatk ow o w przypadk u w aitpid m oże m y podać rów nie ż opcje W NO H UNG i W UNTR ACED. #incude #incude #incude #incude #incude #incude #incude <sys/types.h> <sys/wait.h> <unistd.h> <stdib.h> <stdio.h> <signa.h> <wait.h> #define SYG 1 #define NORM 2 #define STOP 3 void potomek(int jak); void status(pid_t pid, int stat); int main() { pid_t pid; int stat; 41

42 PR O G R A M O W A NIE potomek(syg); potomek(norm); potomek(stop); //(1) fputc('\n', stdout); whie((pid = waitpid(-1, &stat, WUNTRACED))!= -1) //(2) { status(pid, stat); fputs("nie ma więcej potomków\n", stdout); exit(exit_success); czy go sygnał\n", stdout); raise(sigterm); break; case NORM: //(5) fputs("zakończy się normanie\n", stdout); exit(12); break; case STOP: //(6) fputs("zostanie zatrzymany\n", stdout); raise(sigstop); exit(exit_success); break; ; ese void potomek(int jak) //(3) { pid_t pid; if( (pid = fork()) == -1) { exit(exit_failure); ese if(pid == 0) { printf("\tdziała potomek %d, ", getpid()); switch(jak) { case SYG: //(4) fputs("zakoń- return; void status(pid_t pid, int stat) //(7) { if(wifexited(stat)) { printf("\tproces %d zakończył się normanie z wartością %d\n", pid, WEXITSTATUS(stat)); ese if(wifsignaled(stat)) { printf("\tproces %d zakończył się po nieprzechwyceniu sygnału numer %d i %s\n", pid, WTERMSIG(stat), (WCOREDUMP(stat))?"zrzucił pamięć":"nie zrzucił pamięci"); ese if(wifstopped(stat)) { printf("\tproces %d został zatrzymany przez sygnał numer %d\n", pid, WSTOPSIG(stat)); ki(pid, SIGCONT); //(8) Przyk ładow y w ynik działania program u: Działa potomek 5885, zakończy go sygnał Działa potomek 5886, zakończy się normanie Działa potomek 5887, zostanie zatrzymany Proces 5885 zakończył się po nieprzechwyceniu sygnału numer 15 i nie zrzucił pamięci Proces 5886 zakończył się normanie z wartością 12 Proces 5887 został zatrzymany przez sygnał numer 19 42

43 PR O G R A M O W A NIE Proces 5887 zakończył się normanie z wartością 0 Nie ma więcej potomków (1)W program ie pojaw ia się dodatk ow y p ik nagłów k ow y signa.h, nie pozna iśm y je szcze sygnałów, a e je st on k onie czny, b y zapre ze ntow ać w szystk ie m oż iw e sposob y zak ończe nia proce su. W yw ołuje m y trzyk rotnie funk cję potom e k tw orzącą proce sy potom ne i jak o argum e nt prze k azuje m y sposób, w jak i się m a zak ończyć now y proce s. (2)W yw ołuje m y w pęt i funk cje w aitpid do m om e ntu, gdy nie prze k aże b łędu oznaczające go, że nasz proce s nie m a w ięce jpotom k ów. Przy pom ocy funk cji status spraw dzam y, w jak i sposób k ończą się nasze proce sy potom ne. (3)De finicja funk cji potom e k ;w za e żności od prze k azane j w artości w ym usza zak ończe nie proce su potom ne go na trzy różne sposob y: norm a nie, poprze z nie ob służony sygnałi zatrzym anie. (4)Z ak ończe nie na sk ute k nie ob służe nia otrzym ane go sygnału w yw ołam y w te n sposób, że do nasze go w łasne go proce su przy pom ocy funk cji raise w yś e m y sygnał SIGTER M oznaczający zak ończe nie proce su. (5)Z ak ończe nie norm a ne odb yw a się prze z w yw ołanie funk cji e xit. Żądam y, b y prze k azano na ze w nątrz w artość 12. (6)Proce s zatrzym am y w ysyłając do sam e go sie b ie przy pom ocy funk cji raise sygnałsigsto P. (7)De finicja funk cji status. Prze k azaną do nie j zm ie nną stat te stuje m y przy pom ocy sze re gu w cze śnie j poznanych m ak r i w yśw ie t am y odpow ie dnie inform acje. (8)Proce s zatrzym any nie oznacza proce su zak ończone go. Proce s zatrzym uje się i m oże zostać ponow nie uruch om iony poprze z ode b ranie sygnału SIGCO NT. By zape w nić, że proce s zatrzym any nie pozostanie w syste m ie i nie b ędzie zajm ow ał zb ędnych zasob ów, w ysyłam y do nie go przy pom ocy funk cji k i sygnał k ontynuacji. Funk cja k i przyjm uje num e r proce su, do k tóre go m a w ysłać sygnał i rodzaj w ysyłane go sygnału. Po w ysłaniu SIGCO NT proce s ponow nie zaczyna działać; doch odzi do inii e xit(exit_ SUCCESS) i k ończy się norm a nie z w artością 0. O b razuje to przyk ładow y w ynik działania program u, w k tórym proce s 5887 najpie rw został zatrzym any, a późnie j zak ończył się norm a nie. Be z inii k i (pid, SIGCO NT) proce s nie zak ończył b y się i funk cja w aitpid zab ok ow ała b y się i je dnocze śnie nasz program - ocze k ując na zak ończe nie potom k a. ich zak ończe nie i nie ode b ra i przy pom ocy funk cji w ait ub w aitpid inform acji o statusie zak ończone go proce su. Syste m po zak ończe niu proce su zach ow uje te inform acje i proce s zostaje oznaczone jak o zom b ie, zajm ując zasob y syste m ow e. By ustrze c się prze d pojaw iającym i się zom b ie w naszym syste m ie, m usim y w yw oływ ać funk cje rodziny w ait, ub posłużyć się innym zab ie gie m, k tóry poznam y, gdy zacznie m y om aw iać sygnały. Z proce sam i potom nym i i m acie rzystym i w iążą się je szcze dw a cie k aw e zagadnie nia proce sy osie rocone i proce sy zom b ie. Proce s osie rocony to tak i proce s, k tóre go rodzic zak ończył się prze d zak ończe nie m potom k a. Proce s osie rocony zostaje zaadoptow any prze z proce s init o num e rze 1. Proce sy zom b ie to proce sy, k tórych rodzice nie cze k a i na 43

44 PR O G R A M O W A NIE Konie c k urs u C+ + - k as a ggs tre am M ACIEJ M ALINO W SK I W poprze dnim num e rze Dragonii k rótk o opisałe m b ib iote k ę ib gadu, k tóra służy do w ym iany danych z k om unik atoram i Gadu Gadu. Bib iote k a je st stosunk ow o prosta, a e m oże b yć odrob inę nie w ygodna. Używ ając je j m usim y pam iętać o pe w nych szcze gółach, tak ich jak odpow ie dnie użycie funk cji se e ct ub po, zape w niających zw ie ok rotnione w e jście /w yjście (te funk cje opisane są w artyk u e Program ow anie w środow isk u syste m u GNU/Linux część 6 znajdującym się w tym num e rze Dragonii). O prócz te go, w program ie dane połącze nie re pre ze ntow ane je st prze z sze re g nie pow iązanych ze sob ą struk tur. D a osób przyzw yczajonych do język ów ob ie k tow ych m oże b yć to nie w ygodne. Je dnocze śnie im p e m e ntacja oparta na ANSI C zm nie jsza czyte ność program u. W dzisie jszym num e rze zapre ze ntuje k asę ggstre am, k tóra opak ow uje b ib iote k ę ib gadu i dostarcza w ygodnie jsze go inte rfe jsu. K asa ggstre am została napisana prze ze m nie na potrze b y k ursu C+ +, jak o przyk ład nie co b ardzie j sk om p ik o- #incude <iostream> o ISO C+ +. K asa nie je st w o na od b łędów, nie udo- #incude <sstream> stępnia w szystk ich m oż iw ości ib gadu i co najw aż- #incude "ibgadu.h" nie jsze - b rak w nie j im p e m e ntacji ob sługi b łędów. #incude <sys/seect.h> Um oż iw ia je dnak w ygodne w yk onyw anie podstaw o- using namespace std; w ych czynności. Je j działanie podob ne je st troch ę //(1) do b ib iote k i iostre am, dob rze znane jz C+ + ze w zg ę- enum _status { niedostepny du na prze ładow ane ope ratory > > służące do odb ie ragg_status_not_avail, nia oraz << w ysyłania w iadom ości. niedostepny_z_opisem K asa je st b ardzo prosta i zapisana je st w dw óch p i- GG_STATUS_NOT_AVAIL_DESCR, dostepny k ach (ggstre am.h i ggstre am.cpp). Pie rw szy zaw ie ra de k aracje, a drugi de finicje sk ładow ych k asy oraz GG_STATUS_AVAIL, dostepny_z_opisem dw óch funk cji odpow ie dzia nych za połącze nie. GG_STATUS_AVAIL_DESCR, zajety // GG_STATUS_BUSY, // Pik ggstream.h zajety_z_opisem // GG_STATUS_BUSY_DESCR, #incude <string> niewidoczny #incude <stdib.h> GG_STATUS_INVISIBLE, #incude <queue> niewidoczny_z_opisem #incude <utiity> GG_STATUS_INVISIBLE_DESCR, #incude <pthread.h> w ane go proje k tu, k tóry b ędzie uw ie ńcze nie m k ursu = = = = = = = = 44

45 PR O G R A M O W A NIE zabokowany GG_STATUS_BLOCKED ; = string tresc; ; int ie_odebrano(); cass ggstream { cass ggstream; void *_poaczenie(void *); cass wiadomosc { //(2) pubic: wiadomosc(uin_t _uin = 0, const string &_tresc = "" ) : uin(_uin), tresc(_tresc) { operator const char*() { stringstream ios; ios << uin <<": " << tresc; string wiad; wiad = ios.str(); return wiad.c_str(); ~wiadomosc() { uin_t uin; //(3) pubic: ggstream(uin_t _uin, const string &_password, _status _stat = dostepny, const string &_stat_desc = ""); ~ggstream(); ggstream& poacz(); ggstream& wyoguj(); ggstream& zmien_status(_status stat, const string &stat_desc = ""); operator boo(); friend void *_poaczenie(void *); private: //(4) boo poaczony; boo rozacz; uin_t uin; string password; ggstream& dodaj(uin_t kontakt); ggstream& wysij(uin_t odbiorca, const string &tresc); ggstream& odbierz(uin_t &odbiorca, string &tresc); ggstream& operator<<(const wiadomosc &wiad); ggstream& operator>>(wiadomosc &wiad); _status stat; string stat_desc; boo wys; queue<wiadomosc> wysyane; boo odb; queue<wiadomosc> odbierane; int nkontakty; uin_t *kontakty; 45

46 PR O G R A M O W A NIE pthread_t pthread; r_ gg : tre ść w iadom ości odb ie rane k o e jk a prze ch ow ująca ode b rane prze z k ie nta w iadom ości, a e je szcze nie odczyta- gg_ogin_params ogin_params_s; gg_session *session_p; (3) De finicja w łaściw e j k asy ggstre am. Na początk u de finicji znajdują się de k aracje funk cji sk ładow ych, k tóre opisze m y dok ładnie om aw iając p ik ggstre am.cpp. ne. ; (1) Na początk u tw orzym y typ w y icze niow y _ status, dzięk i k tóre m u m oże m y angie sk im długim nazw om przypisać po sk ie, prostsze do zapam iętania, odpow ie dnik i. Nazw ę typu zaczynam y od podk re ś e nia, ponie w aż nie b ędzie on b e zpośre dnio używ any prze z użytk ow nik a nasze j b ib iote k i, a w ięc nie m usi on zdaw ać sob ie spraw y z je go istnie nia, na e ży się w jak iś sposób zab e zpie czyć prze d k onf ik te m nazw. W staw ie nie podk re ś e nia je st najprostszą z m e tod, ponie w aż nie za e ca się ostate cznym użytk ow nik om tw orze nia w łasnych typów ub ob ie k tów zaczynają- (4) Na uw agę zasługują sk ładow e ob ie k ty, do k tó- rych zw yk ły użytk ow nik nasze jb ib iote k i nie m a b e zpośre dnie go dostępu. Prze ch ow ują one różne inform acje o stanie połącze nia, istę w iadom ości ode b ranych, itp. po aczony rów ny je st true, gdy k ie nt połączony je st z se rw e re m GG, a fa se w prze ciw nym razie. roz acz gdy je st rów ny true, oznacza to, że na e ży rozłączyć się z se rw e re m ;na początk u przypicych się od te go znak u. M usim y zdaw ać sob ie spra- syw ana je st m u w artość fa se, oznaczająca nie rozłąw ę z te go, że rozw iązanie m e pszym b yło b y użycie czanie się z se rw e re m. tutajprze strze ni nazw. uin zaw ie ra num e r nasze go k ie nta. passw ord zaw ie ra h asło, z jak im się oguje (2) W iadom osc to k asa pom ocnicza głów ne j k asy m y do se rw e ra. ggstre am. Jak sam a nazw a w sk azuje, odpow ie dzia stat zaw ie ra w artość statusu. na je st ona za im p e m e ntacje pojęcia w iadom ości. stat_ de sc zaw ie ra ustaw iony prze z nas Sk łada się ona z tre ści i z num e ru osob y do k tóre j ją opis. ch ce m y w ysłać, ub od k tóre j ją ode b ra iśm y. Cie k aw ys je st to tak zw any m ute k s (poniże jw yw e je st prze ładow anie ope ratora const ch ar* dzięk i jaśnim y sob ie, co to je st). k tóre m u typ w iadom osc m ożna prze k azać do k ażde j w ysy ane k o e jk a zaw ie rająca inform acje funk cji, k tóra przyjm uje standardow y c- string. W ia- o w iadom ościach do w ysłania. dom ośćw ów czas prze tw arzana je stdo napisu num e odb k o e jny m ute k st. nk ontak ty iczb a zapisanych k ontak tów. k ontak ty w sk aźnik do tab icy prze ch ow ujące j istę k ontak tów. pth re ad zaw ie ra inform acje o tw orzonym prze z program w ątk u. ogin_ param s_ s zaw ie ra inform acje służące do za ogow ania się do sie ci. se ssion_ p w sk aźnik do struk tury gg_ se ssion. W pow yższym te k ście pojaw iło się pojęcie m ute k su. Pojęcie to w iąże się z w ątk am i, k tóre w yk orzystam y w naszym program ie. W yjaśnim y sob ie na początk u czym je st w ąte k. Połącze nie z se rw e re m je st inte rak cyjne, a w ięc w dow o nym m om e ncie m oże dotrze ć do nas w iadom ość, jak ie ś zdarze nie, k tóre na e ży w odpow ie dni sposób ob służyć. Użytk ow nik te go nie rob i, w ięc odpow ie dzia ność za to spada na b ib iote k ę. M usi ona porozum ie w ać się z se rw e re m ciąg e b e z w zg ędu na działania użytk ow nik a, ch yb a, że te n zażyczy sob ie ze rw ania połącze nia. M oże m y zaim p em e ntow ać tak ie działanie tw orząc w ątk i w naszym program ie. Dzięk i nim potrze b uje m y je dne go ty ko program u, k tóry m oże w yk onyw ać je dnocze śnie dw ie ub w ięce j czynności (nie je st tak zupe łnie, a e spraw ia to tak ie w raże nie ). Z je dne j strony nasz program je st w stanie ciąg e w ym ie niać inform acje z 46

47 PR O G R A M O W A NIE se rw e re m GG, a z drugie j m oże inte rak cyjne oddziaływ ać z użytk ow nik ie m. W róćm y w ięc do te go czym je st m ute k s. M ute k s to rodzajzm ie nne j, k tóra w program ach w yk orzystujących w ątk i zab e zpie cza nas prze d zniszcze nie m danych i utratą ich spójności. Ponie w aż je de n program m oże w yk onyw ać dw ie czynności na raz, d ate go m oż iw e je st, że ob ie ope racje w yk ona na je dne j zm ie nne j, co m oże w yw ołać utratę : uin(_uin), password(_password), stat(_stat), stat_desc(_stat_desc) { rozacz = fase; poaczony = fase; wys = fase; odb = fase; kontakty = NULL; nkontakty = 0; spójności danych i w ostate czności naw e t zam k nięcie program u. W program ie w yk orzystującym w ątk i na e ży zna e źć te zm ie nne, k tóre używ ane są prze z memset(&ogin_params_s, 0, sizew ięce j niż je de n w ąte k program u i zab e zpie czyć je of(gg_ogin_params)); m ute k se m. Nasz m ute k s działa w te n sposób, że je ś i zm ie nna w ysje st rów na true, to znaczy, że je de n z ogin_params_s.async = 1; w ątk ów pracuje na k o e jce w iadom ości w ysy ane i drugi m usi pocze k ać, aż pie rw szy zak ończy ope racje ogin_params_s.uin = uin; i przypisze m ute k sow i w artość fa se - oznaczająca zak ończe nie pracy na zm ie nne j. W rze czyw istości m uogin_params_s.password = new te k s pow inie n b yć spe cja nym type m danych, a e by nie w prow adzać zb yt w ie u now ości do nasze j b ib io- char[password.size()]; te k i w yk orzystam y zw yk ły typ b oo, k tóry pow inie n { nam w zupe łności w ystarczyć. int i; for(i = 0 ; i < paso pisze po k o e i w szystk ie funk cje w yk orzystyw ane sword.size() ; i++) prze z naszą k asę. Ponie w aż p ik ggstre am.cpp je st ogin_params_s.passtosunk ow o długi, b ędę opisyw ać je po k o e i. sword[i] = password.at(i); ggstream::ggstream(uin_t _uin, const string &_password, _status _stat, const string &_stat_desc) ogin_params_s.password[i] = '\0'; ogin_params_s.status = stat; ogin_params_s.status_descr = new char[stat_desc.size()]; for(int i = 0 ; i < stat_desc.size() ; i++) ogin_params_s.status_descr[i] = stat_desc.at(i); Je st to k onstruk tor nasze j k asy. W idzim y, że d a ustanow ie nia połącze nia w ystarczy w zasadzie podać je dynie nasz num e r GG i odpow ie dnie h asło, re szta opcji je st ustaw iana w ów czas na dom yś ne w artości. M oże m y, je ś i ch ce m y, podać status, z jak im oguje m y się do sie ci. M oż iw e w artości to: nie doste pny, nie doste pny_ z_ opise m, doste pny, doste pny_ z_ opise m, zaje ty, zaje ty_ z_ opise m, nie w idoczny, nie w idoczny_ z_ opise m, zab ok ow any; Ich nazw y m ów ią sam e za sie b ie. O statnim argum e nte m je st opis. By b ył on w idoczny prze z innych 47

48 PR O G R A M O W A NIE użytk ow nik ów sie ci GG, m usim y w yb rać je de n ze statusów z opise m np. ggstream kient( , tajne_hasło, niewidoczny_z_opisem, Jestem schowany ); Spow oduje to, że po połącze niu b ędzie m y nie w idoczni i że zostanie ustaw iony opis Je ste m nie w idoczny. W k onstruk torze inicjuje m y sk ładow e k asy i inicjuje m y struk tury odpow ie dzia ne za połącze nie z sie cią. ggstream::~ggstream() { rozacz = true; whie(poaczony); if(ogin_params_s.password) deete [] ogin_params_s.password; if(ogin_params_s.status_descr) deete [] ogin_params_s.status_descr; czy się zasięg je dne go z e gze m p arzy typu ggstre am. Je go zadanie m je st rozłącze nie się z sie cią i zw o nie - Ta funk cja po prostu rozłącza nasze go k ie nta. nie zaa ok ow ane jw k onstruk torze pam ięci na potrze b y h asła i opisu. ggstream& ggstream::dodaj(uin_t kontakt) { ggstream& ggstream::poacz() { pthread_create(&pthread, NULL, _poaczenie, this); whie(!poaczony); return *this; Je st to funk cja, k tórą w yk onuje m y b y połączyć się z sie cią. Funk cja ta przy pom ocy w yw ołania pth re ad_ cre at tw orzy now y w ąte k. O d te go m om e ntu funk cja _ po acze nie b ędzie w yk onyw ać się rów no eg e z głów nym prze b ie gie m program u. ggstream& ggstream::wyoguj() { rozacz = true; Je stto de struk tor, k tóry m oże m y w yw ołać jaw nie, a b o zostanie uruch om iony autom atycznie gdy sk oń- kontakty = (uin_t *)reaoc(kontakty, (nkontakty + 1) * sizeof(uin_t)); kontakty[nkontakty++] = kontakt; return *this; K ie nt pow inie n m ie ć istę k ontak tów. Je ś i zostanie ona w ysłana po za ogow aniu pom yś nym do se rw e ra, to w ów czas osob y z te j isty zostaną poinform ow ane o zm ianie nasze go statusu. ggstream& ggstream::wysij(uin_t odbiorca, const string &tresc) { whie(wys) { wys = true; whie(poaczony); return *this; wysyane.push(wiadomosc(odbiorca, tresc)); 48

49 PR O G R A M O W A NIE wys = fase; tresc = odbierane.front().tresc; k asy iostre am. return *this; odbierane.pop(); ggstream& ggstream::zmien_status(_status _stat, const string &_stat_desc) { stat = _stat; stat_desc = _stat_desc; if((_stat == niedostepny) Funk cja dodaje now ą w iadom ość na k onie c k o e jk i w iadom ości do w ysłania. int ggstream::ie_odebrano() { return odbierane.size(); odb = fase; return *this; Ta funk cja odb ie ra w iadom ość z k o e jk i ode b ranych w iadom ości. Num e r k ie nta, od k tóre go ode b ra iśm y dane, zapisuje w prze k azanym do nie jargum e ncie odb iorca, a tre ść w tre sc. ggstream& ggstream::operator<<(const wiadomosc &wiad) Dzięk i te j funk cji w ie m y, i e w iadom ości dotarło do { nas. Je ś i w artość zw racana prze z tę funk cję je st return wysij(wiad.uin, w ięk sza niż 0, to m oże m y w yk onać poniższą funk - wiad.tresc); cję, b y je ode b rać. (_stat == dostepny) (_stat == zajety) (_stat == niewidoczny) (_stat == zabokowany)) gg_change_status(session_p, _stat); ese gg_change_status_descr(session_p, _stat, _stat_desc.c_str()); return *this; ggstream& ggstream::odbierz(uin_t &odbiorca, string &tresc) { whie(odb) { odb = true; odbiorca = odbierane.front().uin; ggstream& ggstream::operator>>(wiadomosc &wiad) { return odbierz(wiad.uin, wiad.tresc); Pow yże jznajdują się dw a prze ciążone ope ratory, k tóre w yk orzystując funk cje w ys ij i odb ie rz um oż iw iają w ysyłanie i odb ie ranie w iadom ości podob nie do w czytyw ania i w ypisyw ania inform acji przy pom ocy Funk cja ta zm ie nia status nasze go k ie nta. W yk orzystuje do te go poznane w e w cze śnie jszym num e rze funk cje z b ib iote k i ib gadu. Now y status odb ie ra jak o argum e nt _ stat, a e w e ntua ny opis jak o _ stat_ de sc. ggstream::operator boo() { return poaczony; 49

50 PR O G R A M O W A NIE Ko e jny prze ładow any ope rator, k tóry um oż iw ia spraw dzanie, czy nasz k ie nt je st połączony z se rw e - Nie je st to funk cja sk ładow a k asy ggstre am. W yk orzystyw ana je st ona prze z funk cję _ po acze nie do re m. Dzięk i nie m u m oż iw e je st następujące w yw ołanie tre ści program u: ok re sow e go w ysyłania pingu do se rw e ra w ce u podtrzym ania połącze nia. if(gg) { cout << kient połączony z serwerem\n ; ese { cout << kient rozłączony z serwerem\n ; void pinguj(struct gg_session * session_p) { static time_t nastepny = 0; if( (nastepny <= time(null)) && (session_p->state == GG_STATE_CONNECTED)) { gg_ping(session_p); nastepny = time(null) + Funk cja _ po acze nie je st se rce m nasze j b ib iote k i i to ona odpow ie dzia na je st za ob sługę połącze nia. Je stona osob nym w ątk ie m nasze go program u i działa ciąg e, ob sługując k om unik acje z se rw e re m.pow yższe funk cje w ysyłające i odb ie rające w iadom ości w zasadzie je dynie dodaw ały odpow ie dnie ob ie k ty na k onie c k o e je k ub odczytyw ały je z ich początk ów. W iadom ości nie u e gały w ów czas w łaściw e m u w ysłaniu ub ode b raniu.z a ich w ysyłanie i odb iór odpow ie dzia na je st poniższa funk cja, k tóra zab e zpie cza odpow ie dnie zm ie nne w łączając m ute k sy i w ów czas w ysyła ub odb ie ra dane. Ponie w aż funk cja ta je stdosyć sk om p ik ow ana, zostanie opisana fragm e ntam i. void* _poaczenie(void *_ggs) { boo disconnect = fase; ggstream *ggs = reinterpret_cast<ggstream*>(_ggs); whie(!ggs->rozacz) { 30; R ozpoczyna się pęt a, k tórą trw a dopók i zm ie nna roz- acz m a w artość fa se. Gdy k ie nt zażąda rozłącze nia i ustaw i je j w artość na true, pęt a się zak ończy i nastąpi odłącze nie od se rw e ra. if( (ggs->session_p = gg_ogin( & (ggs->ogin_params_s) )) == NULL) ggs->rozacz = true; Uruch am iam y funk cję z b ib iote k i ib gadu, k tóra ustanow i połącze nie w przypadk u b łędu sygna izow ane go poprze z zw róce nie w artości NULL prze z funk cje rozłączam y nasze go k ie nta k ończąc proce durę ogow ania. timeva tv; tv.tv_sec = 0; tv.tv_usec = 0; fd_set rd, wr, ex; gg_event *event_p; for(;;) { if(disconnect) break; FD_ZERO(&rd); FD_ZERO(&wr); FD_ZERO(&ex); 50

51 PR O G R A M O W A NIE ggs->poaczony = true; if(ggs->session_p>check & GG_CHECK_READ) FD_SET(ggs>session_p->fd, &rd); if(ggs->session_p>check & GG_CHECK_WRITE) FD_SET(ggs>session_p->fd, &wr); if(ggs->session_p>check & GG_CHECK_NONE) FD_SET(ggs>session_p->fd, &ex); ggs->poaczony = fase; if( ggs->nkontakty > 0 ) ggs->rozacz = true; gg_notify(ggs->session_p, ggs>kontakty, ggs->nkontakty); return NULL; break; break; W przypadk u popraw ne go ze staw ie nia połącze nia, przypisuje m y zm ie nne j po aczony w artość true i je ś i w cze śnie j dodano jak ie ś k ontak ty do isty k ontak tów to w ysyłam y ją do se rw e ra. pinguj(ggs->session_p); case GG_EVENT_DISCONNECT: if( seect(ggs->session_p->fd + 1, &rd, &wr, &ex, &tv) > 0) { if( (event_p = gg_watch_fd(ggs->session_p))!= NULL) { break; se GG_EVENT_CONN_FAILED: ca- se GG_EVENT_CONN_SUCCESS: whie(ggs->odb) Ustaw iam y m ute k s, zab e zpie czając się prze d zniszcze nie m danych. disconnect = true; ggs->odb = true; ca- switch(event_p->type) { O db iór otrzym ane jw iadom ości. Cze k am y na zw o nie nie m ute k su. { ggs->poaczony = fase; O b sługa sytuacji rozłącze nia. Spraw dzam y czy m oże m y czytać z de sk ryptora. case GG_EVENT_MSG: O b sługa b łędu połącze nia. Dodaje m y now ą w iadom ość na k onie c k o e jk i ode b ranych w iadom ości. ggs->odbierane.push(wiadomosc(event_p->event.msg.sender, rein- 51

52 PR O G R A M O W A NIE terpret_cast<const char*>(event_p>event.msg.message))); ggs->odb = fase; whie(ggs->wysyane.size() > 0) { gg_send_message(ggs->session_p, 0, ggs->wysyane.front().uin, reinterpret_cast<const unsigned char *>(ggs->wysyane.front().tresc.c_str())); break; Je st to cała b ib iote k a ggstre am. W szystk ie użyte w nie j funk cje poch odzące z b ib iote k i ib gadu zostały w yjaśnione w poprze dnim num e rze Dragonii. Nade szła pora na przyk łady de m onstrujące działanie nasze jb ib iote k i. ggs->wysyane.pop(); gg_event_free(event_p); ggs->wys = fase; if(ggs->session_p>state == GG_STATE_CONNECTED) { if(ggs->wysya- // // Pik gg.cpp // #incude "ggstream.h" #incude <iostream> using namespace std; int main(int argc, char **argv) ne.size() > 0) { { Je ś i je ste śm y połącze ni z se rw e re m i w k o e jce do w ysłania znajdują się jak ie ś w iadom ości, to je w ysyłam y. whie(ggs->wys) { ggs- Gdy głów na pęt a k ończy się, a w ięc zażądano rozłącze nia się z se rw e re m, w yk onuje m y popraw ną se k w e ncje rozłącze nia. gg_change_status(ggs->session_p, niedostepny); gg_ogoff(ggs->session_p); gg_free_session(ggs->session_p); uin_t kto = _numer_rozmowcy_; ggstream gg(_nasz_numer_, "_nasze_haso_"); gg.dodaj(kto); gg.poacz(); ggs->poaczony = fase; gg.wysij(kto, "raz"); gg << wiadomosc(kto, "dwa"); return NULL; gg.wyoguj(); >wys = true; 52

53 PR O G R A M O W A NIE { char buff[2000]; int n; uin_t kto = atoi(argv[3]); Program k om pi uje m y w yw ołanie m : # g++ ggstream.cpp gg.cpp -o ggstream -pthread -gadu Dodanie opcji - pth re ad - gadu je st k onie czne, gdyż program w yk orzystuje funk cje z b ib iote k i ib gadu i w ątk i. ggstream gg(atoi(argv[1]), argv[2]); gg.poacz(); Je st to w zasadzie najprostszy z m oż iw ych k ie ntów whie( (n = read(stdin_fileno, GG, w yk orzystujących naszą b ib iote k ę. Je go zada- buff, 1999)) > 0) nie m je st połączyć się z se rw e re m i w ysłać do roz{ m ów cy dw ie w iadom ości o tre ści raz i dw a. buff[n] = '\0'; Kom pi ując program, m usim y zastąpić odpow ie dniwiadomosc wiad(kto, buff); m i w artościam i _ num e r_ rozm ow cy_, _ nasz_ num e gg << wiad; r_ i _ nasze _ h as o_. W yś e do rozm ów cy trzy w iadom ości. By zak ończyć program w cisk am y se k w e ncję CTR L+ D. M oże m y rów nie ż postąpić inacze j i do program u stdout w ysłać jak iś p ik np. # cat stdout.cpp./stdout _moj_numer moje_haso rozmowca_ W yś e tre ść k odu źródłow e go program u do nasze go rozm ów cy. Je st to ostatnia z części k ursu o C+ +. M am nadzie ję, że w ie u osob om udało m i się przyb iżyć C+ + i zach ęcić do pisania w łasnych program ów. Używ anie te j b ib iote k i je st napraw dę proste. Nie je ste śm y ogranicze ni w żade n sposób i ością ob ie k tów ggstre am, a w ięc i i ością k ont na jak ie je dnocze śnie się oguje m y. // // Pik stdout.cpp // #incude "ggstream.h" #incude <unistd.h> int main(int argc, char *argv[]) Program te n jak o pie rw szy argum e nt przyjm uje sw ój num e r GG, drugim argum e nte m je st h asło i trze cim nasz rozm ów ca. Program k opiuje w szystk ie dane przych odzące na je go standardow e w e jście i w ysyła je do rozm ów cy np. #./stdout _moj_numer rozmowca_ czesc to ja naprostszy kient gg:-) _moje_haso_ 53

54 PR O G R A M O W A NIE Qt4 cz ęść 2 W tym m ie s iącu prz e ds taw ię nie co bardz ie j roz budow any proje k t. Pok ażę, jak w z bogaca s ię program o now e e e m e nty, tak ie jak guz ik i, po a w yboru i po a te k s tow e. Dodatk ow o, z apre z e ntuję jak tw orz yć w łas ne obie k ty w oparciu o is tnie jące k as y Qt4. łe m na dw ie części, k tóre zostały oddzie one ze sob ą inią: D ragonia2 Z e w zg ędu na to, że je st to je de n z pie rw szych program ów, jak ie opisuję na łam ach Dragonii, b ędzie na razie zaw ie rał ty k o najczęście j używ ane k asy. Je st to program nastaw iony b ardzie j na pre ze ntację m oż iw ości k as, niż funk cjona ny, a e d a osób k tóre ch cą zacząć pracow ać b ędzie to dob ra ok azja, b y dow ie dzie ć się, jak zacząć. Jak o b azę ok na w yk orzysta- M ARCIN K IERNO Z EK O gó ny s ch e m at Program b ędzie się sk ładałz dw óch części. Pie rw sza to ob sługa guzik ów i póe dycji, z k o e i druga to po a w yb oru oraz ob sługa k om unik atów. Każde z nich je st re pre ze ntow ane prze z odpow ie dnie k asy b ib iote k i Qt4. I tak - guzik i za pom ocą QPush Button, po a e dycji - QLine Edit, po a w yb oru - QR adiobutton, a k om unik aty - QM e ssage Box. Dodatk ow o, d a osób już nie co b ardzie j znających się na program ow aniu utw orzyłe m now ą k asę do ob sługi przycisk ów - DPush Button. W zb ogaciłe m ją o dodatk ow e e e m e nty, k tóre nie znajdow ały się w k asie standardow e j. frame1 = new QFrame(this); frame1->setframeshape(qframe::hline); //nadanie kształtu da QFrame frame1->setgeometry(5,40,390,10); // właściwości inii frame1->setobjectname("frame1"); I część Część pie rw sza sk łada się z dw óch przycisk ów (push Button1, dpush Button2) oraz po a te k stow e go ( ine Edit1). Ce e m te go uk ładu je st zapre ze ntow anie m oż iw ości w yk orzystania tych ob ie k tów do pob ie rania inform acji od użytk ow nik a (np. do ob sługi form u arzy). Przycisk push Button1 został połączony w raz z ine Editdzięk i następującym instruk cjom : connect(pushbutton1, SIGNAL(cicked()), this, SLOT(ZmienTekst())); connect(ineedit1, SIGNAL(returnPressed()), pushbutton1, SLOT(cick())); łe m Qm ainw indow, ch oć nic b y się nie stało, je ś i użyłb ym QW idge t. R óżnica m iędzy nim i nie je st dość znaczna. QM ainw indow posiada uproszczony inte rfe js do ob sługi głów ne go ok na (w ięce j na te n te m atznajdzie się w następnym num e rze ). Jak już w cze śnie j w spom niałe m, program podzie i- W te n sposób, po k ik nięciu przycisk u push Button1 ub w ciśnięciu k aw isza Ente r, w po u te k stow ym w yw ołuje się m e toda Z m ie nte k st: void Dragonia2::ZmienTekst(){ dpushbutton2->settekst(ineedit1->text()); 54

55 PR O G R A M O W A NIE M e toda ta w yw ołuje inną m e todę k asy DPush Button, k tóra e m ituje sygnałte xtch ange d().sk utk ie m te go je st zm iana sk rótu k aw iszow e go (A t + pie rw sza ite ra te k stu) oraz w yczyszcze nie po a te k stow e go. D Pu s h Bu tton Ab y pok azać potęgę otw artości k odu źródłow e go Qt4, pom yś ałe m, że pok ażę, jak tw orzyć w łasne ob ie k ty z zupe łnie innym i m oż iw ościam i niż te ofe row ane prze z Tro te ch, podob nie rob ią program iści KDE.Po dośćk rótk im nam yś e uznałe m, że w yk orzystam do te go QPush Button. K asa ta je st pozb aw iona ob sługi sygnału, k tóry b y inform ow ał, że został zm ie niony te k stw e w nątrz przycisk u. Nic trudne go. Jak o że k asa DPush Button dzie dziczy po Qpush Button, m a dostęp do je jw szystk ich sk ładow ych. Dodatk ow o utw orzyłe m now ą m e todę se tte k st: void DPushButton::setTekst( const QString &text){ this->settext(text); emit(textchanged()); Po je j w yw ołaniu zostaje w ye m itow any sygnał, k tóry je st prze ch w ytyw any w tym program ie prze z funk cję zm ie nionyte k st. W te n prosty sposób, k asa QPush Button stała się b ardzie j funk cjona na, a m oż iw ości rozsze rzania te j funk cjona ności ogranicza ty k o nasza w yob raźnia. QMessageBox::information(this, "QMes- sagebox", "information"); QMessageBox::warning(this, "QMessageII część Box", "warning"); Ta część pok azuje, w jak i sposób m ożna inform ow ać QMessageBox::critica(this, "QMessageużytk ow nik a o tym, co się dzie je w program ie. Służy Box", "critica"); Do te go m.in. QM e ssage Box. K asa ta zaw ie ra goto- QMessageBox::question(this, "QMessagew e m e tody statyczne : Box", "question"); inform ation QMessageBox::about(this, "QMessagew arning Box", "about"); critica Każdy z k om unik atów m a sw ój odpow ie dnik w ob ie k cie QR adiobutton. W za e żności od te go, k tóry z nich został zaznaczony, pojaw ia się inny k om unik at: void Dragonia2::PokazOkno(){ if(radiobutton1->ischecked()) QMessageBox::information(this, "QMessageBox", "information"); ese if(radiobutton2->ischecked()) QMessageBox::warning(this, "QMessageBox", "warning"); ese if(radiobutton3->ischecked()) q ue stion QMessageBox::critiab out ca(this, "QMessageBox", "critica"); Każdą z nich w yw ołuje się w te n sam sposób. O statese ni z param e trów to inform acja, k tóra m a się pojaw ić if(radiobutton4->ischecked()) w ok nie k om unik atu: QMessageBox::qu- 55

56 PR O G R A M O W A NIE estion(this, "QMessageBox", "question"); ese if(radiobutton5->ischecked()) QMessageBox::about(this, "QMessageBox", "about"); ese QMessageBox::information(this, "QMessageBox", "Wybierz ro- dzaj okna"); Tw orze nie radiobuttonów w yg ąda podob nie do tw orze nia guzik ów : radiobutton1 = new QRadioButton("information", this); radiobutton1->setgeometry(5,55,100,25); radiobutton1->setobjectname("radiobutton1"); Z ak ończe nie M am nadzie ję, że program przyb iżył W am zasady ob sługi k as w Qt4. Z a m ie siąc k o e jny k urs z w yk orzystanie m k o e jnych k as. 56

57 PR O G R A M O W A NIE Java cz ęść 9 Dz iś prz e ds taw ię k o e jną cz ęść program ow ania w Javie, opie rając s ię na bib iote ce Sw ing. Utw orz ym y ap ik ację, k tóra będz ie z apis yw ać oraz odcz ytyw ać dane z p ik ów te k s tow ych. Z ak ładam, że prz e cz ytałe ś poprz e dnie cz ęści k urs u. PRZ EM EK K ALICK I Utw órz te raz now y proje k t, czy i k asę, k tóra b ędzie uruch am iać nasz program oraz dodatk ow ą k asę typu jfram e np. o nazw ie Form atk a. Z acznijm y od um ie szcze nia na nasze j form atce jlab e i w piszm y w je go atryb ut te xt Z apis oraz odczyt z p ik u te k stow e go. Następnie na form atk ę nanie śm y z pa e ty Sw ing Containe rs e e m e nto nazw ie Scro Pane, um ie szczając go na nasze j Form atce pod jlab e e m 1. Te raz znów sięgnijm y do te j sam e j pa e ty i prze ciągnijm y ze Sw ing Contro s Te xt Are a, a e w tak i sposób, ab y Te xtare a opuścić na Scro Pane. Już w yjaśniam : Te xtare a to - jak łatw o dom yś ić po e, w k tórym pow inno to w yg ądać następująco: m oże b yć w pisyw any te k st. To, że nasze Te xtare a b ędzie zw iązane ze Scro Pane 'e m daje nam tę w łaściw ość, ze je ś i w Te xtare a b ędzie w pisyw ane dużo te k stu, to po b ok ach Te xtare a pojaw ią się suw ak i do prze suw ania zaw artości ok na te k stow e go. Scro Pane posiada dw ie w łasności, k tóre re gu ują pojaw ianie się pask ów do prze suw ania: h orizonta Scro BarPo icy oraz ve rtica Scro BarPo icy. W naszym przyk ładzie ustaw im y je na AS_ NEEDED, czy i pask i prze w ijania pojaw ią autom atycznie, gdy w pisany te k st b ędzie w yk raczał poza w idzia ną część Te xtare a. Tak w ięc góra nasze j Form atk i w yg ąda te raz następująco: Po e Te xtare a b ędzie m y używ ać do w prow adzania i w yprow adzania te k stu. Te raz na e ży je szcze spraw dzić, czy dotych czas w prow adzone e e m e nty na nasze j Form atce e żą w odpow ie dnie j h ie rarch ii, Tak ie położe nie jte xtare a1 pod jscro Pane 1 w sk azuje w łaśnie, że Te xtare a na e ży do Scro Pane 'a. Prze jdźm y da e j: nasza ap ik acja b ędzie pre ze ntow ać ście żk ę do p ik u te k stow e go w Te xtfie dzie, dodajm y w ięc go do form atk i. Dodajm y tak że pięć jbuttonów, zm ie ńm y ich w łaściw ości te xt i nie ch Form atk a w yg ąda następująco: O to, jak ie ak cje b ędą podpięte pod poszcze gó ne przycisk i: - Exit to oczyw iście w yjście z ap ik acji, czy i zam k nięcie program u. W ob słudze zdarze nia Action um ie śćm y k od zam yk ający ap ik acji - Sys- 57

58 PR O G R A M O W A NIE te m.e xit(0 );. - W yb or p ik u - tu um ie ścim y k od, k tóry w yśw ie t i nam ok no dia ogow e pozw a ające na w yb ór p ik u. O dczyt b ędzie pow odow ało w czytanie danych zapisanych w w yb ranym p ik u i w staw ie nie ich do nasze go Te xtare a. Z apis b ędzie pow odow ało zapis te k stu zaw arte go w Te xtare a w w yb ranym p ik u. W staw z ze w nątrz om ów ię na sam ym k ońcu. Z acznijm y od W yb oru p ik u. Będzie m y ch cie i, ab y w yb ór p ik u m iał postać e e ganck ie go ok na dia ogow e go.w Javie i b ib iote ce Sw ing je stto m oż iw e i m oże m ie ć następującą postać: Z a pom ocą te go ok na, m oże m y w sk azać inte re sujący nas p ik. Ab y to b yło m oż iw e, m usim y w ob słudze zdarze nia Action dopisać następujący k od: JFieChooser oknowyboru = new JFieChooser(); int zwroconawartosc = oknowyboru.showopendiaog(this); if(zwroconawartosc == JFieChooser.APPROVE_OPTION) { System.out.printn("Wybraes pik: " + oknowyboru.getseectedfie().getabsoutepath()); String sciezka=oknowyboru.getseectedfie().getabsoutepath(); this.jtextfied1.settext(sciezka); Kod te n de finiuje w naszym proje k cie now e ok no typu jfi e Ch oose r, o nazw ie ok now yb oru. To, co zostanie w yb rane w ok now yb oru je st zw racane do zm ie nne j zw roconaw artosc. Jak o zw roconaw artosc ch ce m y m ie ć ście żk ę dostępu do w yb rane go prze z nas w ok nie dia ogow ym p ik u. Uzysk uje m y to poprze z m e todę ge tse e cte dfi e (zw raca nam sam ą nazw ę w yb rane go p ik u) oraz dodatk ow ą m e todę pob ie rającą ab so utną ście żk ę ge tab so ute Path. W yb raną ście żk ę w pisuje m y w nasze po e jte xtfie d1. Z w róćm y uw agę, że typ jfi e Ch oose r je st początk ow o trak tow any jak o nie znany, a e sam Ne tb e ans pom aga nam w rozw iązaniu te go prob e m u, podob nie, jak opisyw ałe m to w e w cze śnie jszych częściach k ur- su: Te raz, b ędzie m y ch cie i odczytać dane zapisane w w yb ranym prze z nas p ik u - w ięc oprogram uje m y przycisk O dczyt w nasze j Form atce. W ob słudze zdarze nia Action w yb rane go przycisk u w piszm y następujący k od, czytający dane z p ik u te k stow e go: String tresc=""; String sciezka=this.jtextfied1.gettext(); try{ String inia; BufferedReader br = new BufferedReader(new FieReader(sciezka)); whie ((inia = br.readline())!= nu) { tresc=tresc+inia+"\n"; br.cose(); catch(exception e){ System.out.printn("Bad odczytu:"+e.getlocaizedmessage()); 58

59 PR O G R A M O W A NIE this.jtextarea1.settext(tresc); Z m ie nna 'scie zk a' m a zaw ie raćście żk ę do p ik u, z k tóre go b ędzie m y czytać. Jak pam iętam y, k orzystając z ok na dia ogow e go w ype łni iśm y go odpow ie dnim i danym i. W b ok u try...catch ob jęte są instruk cje, k tóre czytają zaw artość p ik u te k stow e go do zm ie nne j tre sc, inia po inii. Na k ońcu zam yk any je st strum ie ń do czytania b r. W razie w ystąpie nia jak ich k o w ie k prob e m ów przy czytaniu i pow staw aniu w yjątk u, je go ob sługa je stuw zg ędniona w b ok u program u po catch : w naszym przypadk u na k onso ę w ypisze m y opis b łędu, k tóry w ystąpił. Na k onie c tre ść zapisze m y w jte xtare a. Z rob im y te raz odw rotną ope rację, czy i to, co je st zapisane w jte xtare a1 na stałe, w pisze m y do p ik u te k stow e go, w yb rane go w cze śnie j ok ne m dia ogow ym. Uzupe łnijm y ob sługę zdarze nia Action przycisk u Z apisz : String tekst=this.jtextarea1.gettext(); String sciezka=this.jtextfied1.gettext(); try{ BufferedWriter out = new BufferedWriter(new FieWriter(sciezka)); out.write(tekst); out.cose(); catch(exception e){ System.out.printn("Bad zapisu:"+e.getlocaizedmessage()); Pob ie ram y te k st z jte xtare a oraz ście żk ę do p ik u z jte xtfie d. Tw orzym y ob ie k ty Buffe re dw rite r oraz Fi e W rite r, służące do zapisu danych do p ik u te k stow e go, zapisuje m y dane, a na k onie c zam yk am y strum ie ń do te go użyty. Tak sam o jak w przypadk u odczytu, w yk orzysta iśm y instruk cje try...catch. Pozw a a ona na stw orze nie ob sługi m ogące go w ystąpić w yjątk u. W yjątk ie m w tym przypadk u m oże b yć dow o ny prob e m dotyczący zapisu danych na dysk u na przyk ład nie praw idłow a ście żk a do p ik u (nie istnie jący podk ata og w ście żce ), czy prozaiczny b rak w o ne go m ie jsca do zapisu na w yb ranym nośnik u. O pis b łędu b ędzie w yśw ie t ony na k onso ępoprze z instruk cje Syste m.out.print n. No dob rze, m am y pok rótce om ów ione zasady zapisu i odczytu danych z p ik u te k stow e go. Na k onie c prze dstaw ię pe w ną dość w ażną w łaściw ość progra- m ow ania w Javie. W yob raźm y sob ie, ze ogik ę ap ik acji m am y oddzie oną od nasze j w arstw y pre ze ntacji, czy i a gorytm y są oprogram ow ane poza naszym i jfram e 'am i. Z ze w nętrznych k as nie m oże m y uzysk ać dostępu do e e m e ntów inte rfe jsu zde finiow anych na Form atce, ponie w aż posiadają atryb ut pryw atny. Nie m oże m y w sposób b e zpośre dni podstaw ić w artości na Form atce jte xtfie d. M usim y do te go w yk orzystać dw a m e ch anizm y: - prze k azać do ze w nętrzne go ob ie k tu w sk azania na nasz ob ie k t Form atk ę, - utw orzyć m e todę za pom ocą k tóre j w yk onam y nie zb ędna ak cje. Z acznijm y od drugie j części - utw órzm y m e todę o dostępie pub icznym w k asie Form atk a, w staw iającą argum e nt (typu String) w yw ołania m e tody do Te xtare a. M oże w yg ądać ona następująco: pubic void wstaw(string tekst){ this.jtextarea1.settext(tekst); Dzięk i te m u, ze w nętrzny ob ie k t b ędzie m ógł w staw ić jak iś te k st do Te xtare a, znajdujące go się na Form atce. 59

60 PR O G R A M O W A NIE Utw órzm y k asę Z e w ne trzna, k tóra pozw o i na pok azanie zasady re fe re ncji. Nie ch ta k asa b ędzie m iała na(this); następującą zaw artość: package czesc9; import czesc9.formatka; pubic cass Zewnetrzna { pubic Zewnetrzna(Formatka framka) { framka.wstaw("abcde"); W idzicie już, o co ch odzi?w m om e ncie, gdy z ze w nętrzne j k asy ch ce m y m ie ć dostęp do pub icznych m e tod nasze go ak tua nie używ ane go ob ie k tu, w arto je st prze k azać do te go ze w nętrzne go ob ie k tu w sk azanie na sie b ie sam e go. Do te go w łaśnie służy słów ko k uczow e th is. Z a pom ocą th is, do k onstruk tora m e tody Z e w ne trzna prze k azuje m y w sk azanie na ob ie k t, z k tóre go pow oływ any je stdrugi ob ie k t. Dzięk i te m u, drugi ob ie k t ze w nętrzne j k asy Z e w ne trzna m a dostęp do pub icznych m e tod Form atk a i m oże w yk onać pub iczna m e todę 'w staw ' k asy Form atk a. Być m oże d a te go przyk ładu zastosow anie re fe re ncji do ob ie k tu w yg ąda na troch ę sztuczne, a e zape w niam o przydatności te go typu rozw iązania. R e fe re ncje do ob ie k tów są często używ ane w Javie. W arto osw oić się z nim i, pow rócę do nich w k o e jnych częściach k ursu. To w szystk o w te jczęści, zapraszam na k o e jną w następnym num e rze Dragonii. Cała k asa je st b ardzo prosta, jak już w ie cie sk łada się z ok re ś e nia nazw y pak ie tu, do k tóre go na e ży, im portu zm ie nne jtypu Form atk a oraz k onstruk tora k asy Z e w ne trzna. Jak w idzim y, jak o argum e nt d a k onstruk tora je st podana zm ie nna fram k a typu Form atk a.w cie e k onstruk tora m am y odw ołanie do m e tody, k tórą napisa iśm y w cie e k asy Form atk a i k tóra dostała atryb ut pub ic. Dzięk i te m u atryb utow i, m am y dostęp do te j m e tody z ze w nętrzne j k asy. Jak o ob sługę m e tody Action przycisk u z napise m W staw z ze w natrz w piszm y k od: Zewnetrzna zewnetrzna=new Zewnetrz- 60

61 PR O G R A M O W A NIE Bas h - program ow anie Linux oraz inne s ys te m y w yw odz ące s ię z Unik s a z aw dz ięcz ają s w oje ogrom ne m oż iw ości prz e de w s z ys tk im k ons o i. M oże ona ods tras z ać pocz ątk ujących użytk ow nik ów, je dnak nauk a je j obs ługi na pe w no prz ynie s ie w ie e k orz yści. Głów ną z nich je s t m oż iw ość pis ania s k ryptów, k tóre z z ałoże nia m ają ułatw ić i z autom atyz ow ać pracę. RAFAŁ TO PO LNICK I szą pow łok ą, k tóra zdob yła sze rok ie uznanie b yła pow łok a Bourne, istnie jąca pod nazw a sh. Inną w ażną pow łok ą, k tóra nadam a w ie u zagorzałych zw o e nnik ów, je st pow łok a C, czy i csh. Je j sk ładnia przypom ina sk ładnię język a C. W arto je szcze w ym ie nić Korn Sh e. Bash (Bourne Again Sh e ) to podstaw ow a pow łok a syste m u GNU (w ystępuje rów nie ż w M acach ) łącząca w sob ie naj e psze rozw iązania w szystk ich prze ze m nie w ym ie nionych. Je dyne, co je stpotrze b ne do pisania sk ryptów, to w łaśnie pow łok a b ash oraz dow o ny e dytor te k stu (np. vi, m ce dit ub nano). Ty e słow e m w stępu, prze ch odzim y do działania. Nie pisaną tradycją je st, iż pie rw szy napisany prze z nas w now o poznanym język u program w yśw ie t a pow itanie - H e o w or d! Nie w idzę se nsu zryw ania z tym zw yczaje m. Sw oim u ub ionym e dytore m tw orzym y p ik h e o.sh i w pisuje m y w nim : #!/bin/bash W arto b y zacząć od w yjaśnie nia czym je st b ash. Je st echo "Heo Word! #wyprowadzenie tekto je dna z w ie u pow łok syste m u Unix. Sam a pow ło- stu na ekran e ży p ik ow i h e o.sh nadać praw a do k a je st natom iast inte rfe jse m syste m u; do je j zadań następnie, na na e ży k om unik acja pom iędzy użytk ow nik ie m i syste - w yk onania (czasam i nie je st to k onie czne ) i uruch om e m, k tóra odb yw a się w tryb ie te k stow ym. Pie rw - m ić: $ chmod +x heo.sh Cyk m oich artyk ułów pub ik ow anych na łam ach Dragonii m a za zadanie przyb iżyć sztuk ę ich pisania. Z autopsji w ie m b ow ie m, że ciężk o je st zna e źć jak ie ś m ate riały na te n te m at w język u po sk im, a je dyny k urs, jak i istnie je, je stracze jnie k om p e tny. $./heo.sh Na e k ranie ujrzym y napis H e o W or d! Nib y b ana ny sk rypt, a je dnak w ym aga k i k u ob jaśnie ń. W pie rw sze j inii inform uje m y o ak tua nie używ ane j pow łoce, w jak ie j m a się uruch om ić sk rypt tę inię w w ięk szości przypadk ów m ożna pom inąć, je dnak dob rą prak tyk ą je st je j zam ie szczanie. Następnym po e ce nie m je st e ch o, k tóre w yśw ie t a prze k azane do nie go argum e nty, a e po prze tw orze niu ich prze z pow łok ę b ędzie m y się je szcze tym zajm ow ać. Cudzysłów w drugie j inii je st - w tym w ypadk u, opcjona ny. Po e ce nie e ch o, podob nie jak np. cd, je st w b udow ane w pow łok ę, co znaczy, że nie znajdzie m y program u e ch o na dysk u tw ardym. W drugie j inii znajduje się k om e ntarz, poprze dzony znak ie m # - je st to część sk ryptu, k tóra je st pom ijana prze z pow łok ę podczas je go w yk onyw ania. W da sze jczęści k ursu często b ędą pojaw iać się przyk łady k odu zaczynające się od $. Je st to standardow y znak zach ęty (za w yjątk ie m roota, gdy te n znak to #), a w ięc w ystarczy w pisać w ystępujące po nim po e ce nia (b e z znak u zach ęty) do k onso i b e z k onie czności zapisyw ania sk ryptów w p ik u. Następnym zagadnie nie m, k tóre ch ciałb ym om ów ić, 61

62 PR O G R A M O W A NIE są zm ie nne. Przyjęło się, że nazw y zm ie nnych środow isk ow ych, czy i tych, z k tórych k orzysta pow łok a ub zade k arow ać zm ie nną poprze z: decare -x wodz=mieszko oraz w szystk ie uruch am iane w nie j sk rypty i ap ik acje, pisane są dużym i ite ram i (Bash, tak jak cały Linux/BSD/Unix rozróżnia w ie k ość ite r). Listę oraz w artości w szystk ich zm ie nnych b ędących w użyciu m oże m y zob aczyć za pom ocą po e ce nia de c are. W yśw ie t e nie w artości zm ie nne j, re a izuje m y tak, jak po- Param e tr - x nadaje zm ie nne j a ch arak te r g ob a ny. O pcje de c are z jak ich b ędzie m y k orzystać to: prze dnio - za pom ocą po e ce nia e ch o. $ echo "Wersja basha to: ${BASH_VERSION w odpow ie dzi zob aczym y (w e rsja m oże b yć oczyw iście inna): Wersja basha to: (2)-reease Do zm ie nne jbash _ VER SIO N pow łok a zapisała sw oją w e rsję. Nazw ę zm ie nne j na e ży um ie ścić w k am rach i poprze dzić znak ie m do ara. Z nak te n inform uje pow łok ę, że m a podać w artość, a nie nazw ę zm ie nne j. Gdyb yśm y go nie zam ie ści i, BASH _ VER IO N został b y potrak tow any jak zw yk ły ciąg znak ów i ujrze ib yśm y W e rsja b ash a to: {BASH VER IO N. K am ry { nie są w ym agane, je że i b e zpośre dnio za zm ie nną nie b ędzie m y w yśw ie t ać ite ry, cyfry ani _. Kod e ch o $PW Da zw róci pustą inię, zam iast ite ry a poprze dzone jb ie żącą ście żk ą, ponie w aż pow łok a potrak tuje PW Da jak o nazw ę zm ie nne j, k tóra nie istnie je. Najczęście j używ ane zm ie nne pow łok i to: Z rozum iałym je stw ięc sk rypt: #!/bin/bash echo "Witaj $USER! Aktuanie znajdujesz się w kataogu $PWD W prze ciw ie ństw ie do k onw e ncjona nych język ów program ow ania, zm ie nnych prze d użycie m nie trze b a de finiow ać zostanie to w yk onane autom atycznie po przypisaniu w artości. Z m ie nne w b ash u dom yś nie prze ch ow ują ciąg znak ów, d ate go w w ięk szości przypadk ów nie trze b a ok re ś ać typu zm ie nne j. $ wodz=mieszko $ b=$wodz $ echo $b Mieszko Utw orzy iśm y zm ie nną w odz o w artości M ie szk o. Uw aga! Bash je st b ardzo re stryk cyjny, je że i ch odzi o sk ładnię, tak w ięc prze d jak i po znak ie m = nie m oże b yć spacji. Następnie, zm ie nne j b nada iśm y tak a sam ą w artość, jak zm ie nne j w odz, czy i M ie szk o gdyb yśm y napisa i b =w odz, zm ie nna b m iała b y w artość w odz. Z m ie nna utw orzona w sk rypcie w te n sposób m a ch arak te r ok a ny, co znaczy, że nie b ędzie w idoczna d a innych program ów działających w syste m ie. Ab y zm ie nna stała się g ob a na (w idzia na np. prze z inne sk rypty) w ystarczy w ydać po e ce nie : e xportzm ie nna W artością zm ie nne j m oże b yć rów nie ż w ynik po e ce nia. Z m ie nne j w ynik m oże m y przypisać w artość b ędącą w ynik ie m po e ce nia s: wynik=`s` #znak ` znajduje się przeważnie na kawiaturze tam, gdzie tyda(~) ub wynik=$(s) Z e w zg ędu na je j e pszą czyte ność, w da sze j części k ursu b ędę używ ał drugie j k onstruk cji. Podob nie, jak inne język i, b ash rów nie ż posiada słow a zastrze żone, czy i tak ie, k tórych nie w o no używ ać nadając nazw y np. zm ie nnym czy tab icom. Lista słów zastrze żonych oraz ich znacze nie je st dołączona w p ik u zastrze zone.txt. Z m ie nne m ożna rów nie ż usuw ać, je dnak rob i się to b ardzo rzadk o. Służy do te go po ece nie : unset zmienna. Istnie ją je szcze spe cja ne zm ie nne param e try pozycyjne. Prze ch ow ują one param e try (opcje ) z jak im i został w yw ołany sk rypt. Nazw am i tych zm ie nnych 62

63 PR O G R A M O W A NIE są k o e jne iczb y natura ne począw szy od 1. Ab y w yprow adzić w artość tych param e trów, na e ży ich na- nak m iędzy nim i b ardzo istotna różnica. Z apis $@ to sk rócona w e rsja zapisu $1 $2 $3... $n, zw ę poprze dzić znak ie m $. Istnie je dodatk ow a zm ie nna 0, k tóre j w artością je st nazw a sk ryptu. Istnie ją dw ie zm ie nne spe cja ne, zaw ie rające w artości w szystk ich param e trów pozycyjnych, są to * Naj e pie j uczyć się na przyk ładach, tak w ięc napiszm y prosty sk ryptk raje.sh : gdzie n to i ość param e trów. W idzim y w ięc, że w artości zm ie nnych oddzie one są od sie b ie poje dynczą spacją. W zm ie nne j * param e try te oddzie one są od sie b ie pie rw szym znak ie m zm ie nne j środow isk ow e j IFS. Je że i b ędzie ona m iała w artość,, to param e try b ędą od sie b ie oddzie one prze cink ie m. Prób a w y- #!/bin/bash echo "Uruchomiony skrypt to: $0 echo "Pierwszy podany kraj to: $1 echo "Trzeci podany kraj to: $3 echo "Wszystkie podane kraje to: $@ echo "Wszystkie podane kraje to: $* echo "Łącznie podano $# kraje Następnie uruch am iam y sk rypt w następujący sposób :./k raje.sh USA R osja Po sk a UK. O to, co uzysk am y w odpow ie dzi: echo "Uruchomiony skrypt to: kraje.sh echo "Pierwszy podany kraj to: USA echo "Trzeci podany kraj to: Poska echo "Wszystkie podane kraje to: USA Rosja Poska UK echo "Wszystkie podane kraje to: USA Rosja Poska UK echo "Łącznie podano 4 kraje Z m ie nna # prze ch ow uje iczb ę param e trów, z jak im i został uruch om iony sk rypt. W ydaw ać b y się m ogło, że zm ie nne * prze ch ow ują tak ą sam ą w artość istę w szystk ich param e trów za w yjątk ie m 0. Je st je d- prow adze nia dzie siąte go argum e ntu za pom ocą e ch o $10 nie przynie sie ocze k iw ane go sk utk u.do w yprow adzania w artości argum e ntów w ie ocyfrow ych na e ży używ ać pe łne j sk ładni, tak w ięc suk ce se m sk ończy się dopie ro e ch o ${10. Inne zm ie nne spe cja ne, z jak ich b ędzie m y k orzystać, to: $$, czy i PID ak tua ne go proce su nasze go sk ryptu - oraz $?czy i k od w yjścia zw rócony prze z ostatni zak ończony proce s. Każdy program k ończąc sw e działanie zw raca do pow łok i tzw. k od w yjścia. Gdy je go w artość w ynosi 0, oznacza to, że proce s praw dopodob nie w yk onał sw oje zadanie popraw nie. Je że i w artość je st inna, to znaczy, że zak ończył się b łęde m *. Spraw dźm y: $ cat /etc/fstab > /dev/nu #wyświetenie istniejącego piku oraz przekierowanie wyjścia do /dev/nu tak, aby nie zaśmiecał ekranu $ echo $? 0 $ s jas_i_magosia 2> /dev/nu #zakładamy, że taki pik nie istnieje. Znaczenie 2> zostanie omówione później. $ echo $? 2 Program s zak ończyłsię b łęde m, ponie w aż nie zna azł p ik u jas_ i_ m a gosia, tak w ięc je go k od w yjścia je st różny od 0. Kod w yjścia w przypadk u sk ryptów w ynik a z k odu w yjścia ostatnie go po e ce nia w tym sk rypcie. Czasam i, np. z pow odu b łędu, b ędzie m y m usie i prze rw ać działanie sk ryptu, zw racając do pow łok i odpow ie dni k od w yjścia. Służy do te go po e ce nie e xit n, gdzie n to k od jak i m a zostać zw rócony do pow łok i. W yraże nia w ie oznaczne - []{ W spom niane w yże j naw iasy k am row e m ają rów nie ż inne zastosow anie. Pow sze ch nie znane są sym b o e w ie oznaczne naw iasy k w adratow e [ ]. Są one szcze gó nie użyte czne podczas w yszuk iw ania i istow ania p ik ów. D a przyk ładu, w yob raźm y sob ie k ata og zaw ie rający następujące p ik i: f1.c f1.o f2.c f2.o g1.c a1.c te st.sh. W ydaje m y po e ce nie : s f[12].c i w yśw ie t one zostaną p ik i k tórych nazw a rozpoczyna się ite rą f, późnie j b e zpośre dnio następuje cyfra 1 ub 2, a następnie.c, czy i f1.c f2.c. Kom e nda: s f[12].[co] w yśw ie t i dodatk ow o f1.o, f2.o. Podob nie, s [fg][12].[co] w yśw ie t i nazw y w szystk ich p ik ów prócz te st.sh i a1.c. M ożna stosow ać rów nie ż zak re sy, np. [a- z], [A- Z ], [0-9 ] oznacza, że naw ias zostanie zastąpiony k o e jno w szystk im i ite ram i z zak re su 63

64 PR O G R A M O W A NIE a do z, w ie c s [a- g][12].[co] w yśw ie t i w szystk ie p ik i prócz te st.sh.na pom ocą! m oże m y ne gow ać w aru- zdanie m A a m a k ota. Je ś i zam iast > użyje m y > >, inijk a A a m a k ota zostanie dopisana do k ońca p ik u, potrze b ne k om unik aty i dane. ne k, tak w ięc [! 0-7] oznacza to sam o co [89 ]. Naw iasów k am row ych używ am y w podob nym ce u, z tą różnicą, że za ich pom ocą zostaną w yb rane w szystk ie k om b inacje (k onstruk cja [] ogranicza się w yłącznie do istnie jących p ik ów, w ięc s [fg][12].[co] nie zak ończy się b łęde m, m im o, że nie co uch roni nas prze d je go zapisanie m. Z a pom ocą < m oże m y prze k ie row ać w e jście, czy i zm usić pow łok ę, że b y zam iast z k aw iatury zacze rpnęła dane w e jściow e z p ik u. Cie k aw e prze k ie row anie zostało użyte te ż w przyk ładzie s jas_ i_ m a gosia 2> /de v/nu. Co praw da, tak a te m atyk a nie w iąże się Nie zw yk e przydatnym prze k ie row anie m je st użycie w yjścia je dne go po e ce nia, jak o w e jścia drugie go. Dok onuje m y te go za pom ocą znak u (ang. pipe ). Je że i ch ce m y spraw dzić, i e p ik ów i k ata ogów (b e z uk rytych ) znajduje się w b ie żącym k ata ogu (b e z w ch odze nia w podk ata ogi), m oże m y użyć: s w c - istnie je p ik g1.o ani g2.[co]). Argum e nty na e ży oddzie ać od sie b ie prze cink am i. Spraw dźm y, jak to działa: e ch o a{1,2,3b w yśw ie t i a1b a2b a3b. W ypisanie w szystk ich w ięk szych od 65 dw ucyfrow ych iczb natura nych podzie nych prze z 5 ogranicza się do e ch o {7,8,9 {0,5. W idać w ięc, że k om b inację w yb ie rane są na zasadzie k ażdy z k ażdym. Jak o cie k aw ostk ę m ożna zaznaczyć, iż sk ładnia w ym aga, że b y w e w nątrz {znajdow ałsię przynajm nie jje de n prze cine k e ch o a{b c zw róci a{b c, a nie ab c. b e zpośre dnio z nauk ą b ash a, je dnak w ie dzie ć o tym nie zaszk odzi. Każdy działający program posiada trzy drogi k om unik acji ze św iate m.standardow e w e jście stdin (ang. standard input), z k tóre go pob ie rane są dane dom yś nie k aw iatura, standardow e w yjście stdout (ang. standard output), czy i m ie jsce gdzie zw racany je st w ynik działania dom yś nie e k ran, standardow e w yjście b łędów stde rr (ang. standard e rror) - dom yś nie te ż e k ran, k tóre służy program ow i do zw racania b łędów. Każdy z tych strum ie ni posiada num e r, odpow ie dnio 0,1,2. Je że i znak prze k ie row ania poprze dzim y tym num e re m, m oże m y ste row ać danym strum ie nie m, e ch o te st 1> p ik.txt prze k ie ruje standardow e w yjście jak im je st w ynik działania po e ce nia e ch o (czy i ciąg znak ów te k st) do p ik u zam iast na e k ran. Cyfrę 1 m ożna pom inąć. W prze dstaw ionym przyk ładzie prze k ie row uje m y w yjście b łędów (2), k tórym je st napis s: nie m a dostępu do jas_ i_ m a gosia: Nie m a tak ie go p ik u ani k ata ogu, do p ik u /de v/nu tak, ab y nie zaśm ie cały e k ranu. P ik /de v/nu został stw orzony w łaśnie po to, że b y k ie row ać do nie go w szystk ie nie -. Po zak ończe niu działania, w yjście po e ce nia s zostanie sk ie row ane do program u w c, a te n z iczy i w yśw ie t i i ość inii (=i ość p ik ów + k ata ogów ), k tóra została m u prze k azana. Podob nie m ożna w yśw ie t ić np. 10 inię p ik u /e tc/passw d: h e ad - 10 /e tc/passw d tai- 1 (po e ce nie h e ad - 10 w yb ie ra 10 pie rw szych inii p ik u /e tc/passw d i prze k azuje je po e ce niu tai, k tóre w yśw ie t i ty k o je dną, ostatnią inię. Będzie to ostatnia inia z pie rw szych dzie sięciu, a w ięc w łaśnie dzie siąta). Ponie w aż nie m usim y tw orzyć p ik u tym czasow e go, w k tórym prze ch ow am y w ynik po e ce nia s ani h e ad, prze k ie row anie je st rozw iązanie m nie zw yk e w ygodnym. W róćm y je dnak do po e ce nia e ch o. M a ono dw a param e try:1 - n nie w ysyłajznak u now e go w ie rsza - e w łącz inte rpre tow anie znak ów spe cja nych Dostępne znak i spe cja ne to: Prze k ie row anie w e jścia/w yjścia, opis e ch o e ch o to w b udow ane w pow łok ę narzędzie służące do w yprow adzania te k stu na standardow e w yjście. Dom yś nie e ch o prze ch odzi do now e j inii po w ypisaniu te k stu. Z a pom ocą ope ratora > m ożna prze k ie row ać w yjście do p ik u: echo "Aa ma kota > wierszyk.txt Je że i p ik w ie rszyk.txt istniał, je go zaw artość zostanie nadpisana prze z zdanie A a m a k ota. Je że i nie istniał, zostanie utw orzony now y p ik z w pisanym 64

65 PR O G R A M O W A NIE Spraw dź, co w yśw ie t i: echo -e "Aa\tma \nkota Z po e ce nie m e ch o nie roze rw a nie zw iązane je st zagadnie nie cytow ania. Z nak i cytow ania służą do unie w ażnie nia inte rpre tacji znak ów spe cja nych. W w ięk szości przypadk ów cytow anie odb yw a się za pom ocą cudzysłow ów ( ). Anu ują one w szystk ie znak i spe cja ne za w yjątk ie m : \ - znak m ask ujący $ - um oż iw ia w yprow adze nie w artości zm ie nne j ` ` - um oż iw ia w staw ie nie w ynik u inne go po e ce nia Apostrofy ' ' unie w ażniają znacze nie w szystk ich znak ów spe cja nych, tak w ięc e ch o '$H O M E' nie w yśw ie t i k ata ogu dom ow e go użytk ow nik a. Z nak m ask ujący w yłącza inte rpre tacje znak u, k tóry poprze dza, d ate go e ch o \$USER w yśw ie t i $USER. M odyfik acja w artości zm ie nnych Najczęście j re a izow anym zadanie m je st dopisyw anie znak ów do w artości zm ie nne j. Nic prostsze go i b ardzie j ogiczne go: $ txt= Aa ma kota $ txt= Maa $txt i psa $ echo $txt Maa Aa ma kota i psa Prob e m zaczyna się, je że i ch ce m y ope row ać na iczb ach : $ x=3 $ x=$x+1 moja 2 Litwo, Ojczyzno moja $ echo ${inwokacja:7:8 Ojczyzno $ echo ${inwokacja:15 moja $ echo ${y:? bash: y: parameter nu or not set Bash ofe ruje nie zw yk e zaaw ansow aną ob sługę cią- #domyśny komunikat e użyte czne b yw ają rów nie ż ope ratory dogów znak ów. Co praw da, sk ładnia je st dość sk om p i- Nie zw yk pasow ania do w zorów. Są one szcze gó nie użyte czk ow ana, a e napraw dę w arto się je j nauczyć. Z ajm ijm y się najpie rw ope ratoram i zastąpie nia, przy- ne, gdy m usim y pracow ać ze ście żk am i dostępu oraz nazw am i p ik ów. toczę te najczęście jużyw ane : $ echo $x 3+1 Pow łok a trak tuje b ow ie m 3 nie jak o iczb ę, e cz jak o ite rę, a + 1 nie jak o w yk onyw anie dodaw ania, e cz jak o dok e je nie do w artości zm ie nne j ciągu znak ów + 1. O b icze niam i arytm e tycznym i b ędzie m y zajm ow ać się w drugie jczęści k ursu. Działanie ope ratorów zastąpie nia najłatw ie j zrozum ie ć na przyk ładach. Z ak ładam y, że nie istnie je zm ie nna o nazw ie y. $ inwokacja= Litwo, Ojczyzno moja! $ echo ${inwokacja:-"pan Tadeusz" Litwo, Ojczyzno moja $ echo ${y:-"pan Tadeusz" Pan Tadeusz $ echo ${inwokacja:= Litwo, Ojczyzno W idzim y, że sk ładnia je st b ardzo sk om pi ow ana i ciężk a do zapam iętania (jak w całym b ash u). Spraw ę dodatk ow o utrudnia fak t, że dopasow anie m usi b yć dok ładne. D ate go, je że i w e w zorze nie m a znak ów m ask ujących (*,?), ope ratory dopasow ania # i ## oraz % i % % zw rócą to sam o! Słow o najdłuższy/najk rótszy w ystępujące w ich opisie m oże w ydać się m y ące, je dnak po ch w i i zastanow ie nia doch odzim y do w niosk u, że w szystk o je st ogiczne. Prze ana izujm y 65

66 PR O G R A M O W A NIE w ięc przyk łady: $ sciezka=/home/rafa/dokumenty/drago- W czytyw anie danych W zde cydow ane j w ięk szości przypadk ów w szystk ie nia/bash.cz1.odt $ bajka=aibaba $ echo ${sciezka##*/ bash.cz1.odt #wyciągamy ze ścieżki nazwę piku/ostatniego kataogu $ basename $sciezka inform acje b ędzie m y prze k azyw ać do sk ryptu w postaci param e trów podczas je go w yw ołania. M oże zdarzyć się je dnak, że b ędzie m y m usie i w czytać, np. z k aw iatury, dane w trak cie działania sk ryptu. Służy do te go instruk cja re ad. Z asadę je go działania prze dstaw ia poniższy sk ryptim ie.sh : nie j): $ read -a tab a b c d $ echo ${tab[*] a b c d O pcja - d ok re ś a se parator, czy i znak, k tóry k ończy w prow adzanie te k stu. Je że i se parator sk łada się z w ie u znak ów, w prow adzanie je st sk ończone, gdy bash.cz1.odt #użyiśmy programu basename, który reaizuje takie #samo zadanie3 $ echo ${sciezka%/*/ #dodajemy dodatkowo / na końcu /home/rafa/dokumenty/dragonia/ $echo ${bajka/ai/stara starababa W ynik e ch o ${b ajk a% b a je st łatw y do prze w idze nia. Natom iast, o dziw o, e ch o ${b ajk a% % b a zw róci a ib a, a nie a i. Tak, jak już zostało pow ie dziane, dopasow ania są dok ładne i najdłuższym ciągie m znak ów b a w ystępującym w słow ie a ib ab a je st w łaśnie b a (a nie b ab a). R óżnica b ędzie dopie ro do użyciu *: $ echo ${bajka%ba* ai O statni przyk ład m oże m y zre a izow ać rów nie ż za pom ocą: $ echo ${bajka//ba/ Z a k ażdy napotk any w słow ie a ib ab a ciąg b a w staw iam y znak pusty. #!/bin/bash echo -n "Podaj swoje imie: read imie echo "Witaj $imie! W czytany ciąg znak ów został przypisany do zm ie nne j im ie, k tóra następnie została w yprow adzona na e k ran. Kończe nie w prow adzania danych potw ie rdzamy k aw isze m Ente r. Gdy za re ad nie stoi nazw a zm ie nne j, odpow ie dź użytk ow nik a zostanie przypisane do zm ie nne jr EPLY. Po e ce nie re ad m a w ie e użyte cznych param e trów, re ad - n 20 spow oduje, że zak ończe nie w prow adzania b ędzie m iało m ie jsce po naciśnięciu k aw isz Ente r ub gdy długość w prow adzone go te k stu prze k roczy 20 znak ów. Pow yższy przyk ład m ożna b yło uprościć za pom ocą param e tru - p, k tóry w yśw ie t a znak zach ęty prze d w prow adzanie m te k stu: #!/bin/bash read -p "Podaj swoje imie: imie echo "Witaj $imie! Param e tr - a um oż iw ia w czytyw anie k o e jnych e em e ntów tab icy (o te j struk turze b ędzie nie co póź- pojaw i się pie rw szy znak se paratora: $ read -d dragonia gazeta a b 44 x d $ echo $gazeta a b 44 x Z araz za ite rą d pok aże się znak zach ęty. Je że i zajdzie potrze b a w czytania h asła, m oże m y posłużyć się opcją - s, k tóra pow oduje, że w prow adzane znak i nie są w yprow adzane na e k ran, e cz od razu przypisyw ane do zm ie nne j. O pcja - t pow oduje, że re ad cze k a na w prow adze nie te k su prze z ok re ś ony (w se k undach ) czas, je że i to nie nastąpi, sk ryptprze ch odzi da e j. Używ anie w sw oich sk ryptach instruk cji re ad nie zaw sze je st dob rym rozw iązanie m. W ym aga to b ow ie m inte rak cji użytk ow nik a i unie m oż iw ia pisanie w pe łni autom atycznych sk ryptów. W yob raźm y sob ie, jak uciąż iw e b yłob y po e ce nie cp, gdyb y działało w tak i sposób : $cp Podaj pik źródłowy: Podaj pik doceowy: Podaj parametry: 66

67 PR O G R A M O W A NIE Na tym zak ończym y pie rw szą część k ursu. Na razie prze dstaw iona w ie dza nie pozw a a na pisanie nicze go b ardzie j sk om p ik ow ane go, niż ciąg w yk onyw anych po sob ie po e ce ń. Początk i zaw sze są je dnak ciężk ie. Po e cam utrw a ić sob ie w szystk o, co zostało pow ie dziane, tre nując na sk ryptach w łasne j rob oty. W następne j części k ursu pojaw ią się instruk cje ste rujące prze b ie gie m (instruk cje w arunk ow e, pęt e) oraz działania na iczb ach. Przyk łady: 1.Napisz sk rypt, k tóry po iczy, i e trzy ite row ych słów m ożna utw orzyć m ając do dyspozycji ite ry A,B,C. Słow a nie m uszą m ie ć se nsu. 2.Udosk onask rypt im ie.sh tak, ab y w przypadk u nie podania im ie nia, zostałzw rócony odpow ie dni k om unik at, po czym sk ryptzak ończy działanie. 3.Z m ie nna PATH prze ch ow uje ście żk ędostępu do k ata ogów, w k tórych pow łok a szuk a po e ce ń. Z m ie nna m a postać ście że k oddzie onych od sie b ie znak ie m dw uk ropk a: $ echo $PATH /usr/oca/bin:/usr/oca/sbin:/usr/oca/bin... Napisz sk rypt, k tóry w ypisze te k ata ogi w osob nych iniach. 4.I e inii m a p ik w czytany jak o pie rw szy param e tr przy w yw ołaniu sk ryptu?nie używ ać program u w c. R ozw iązania: 1.$ e ch o {A,B,C{A,B,C{A,B,C w c - w W yprow adzam y w szystk ie m oż iw e k om b inacje, tra- k u \n. 4.#!/b in/b ash fiają one je dnak nie na e k ran, e cz do po e ce nia w c, k tóre dzięk i opcji - w z icza i ość słów. 2.O sob y program ujące w innych język ach m yś ą zape w ne o instruk cji w arunk ow e j. O w sze m da się to zre a izow ać za je jpośre dnictw e m : #!/bin/bash cat- n $1 tai- 1 cut- f1 W tym sk rypcie w idzim y zw ięzłość b ash a. Nie m usim y b aw ić się w żadne pęt e EO F. Jak to działa? O pcja - n poprze dza k ażdą inię je j num e re m, inte re suje w ięc nas ty k o ostatnia inia;stąd tai- 1. Z a pom ocą narzędzia cut w yb ie ram y 1 k o um nę z read -p "Podaj swoje imie: " imie if [ -z $imie ]; then echo "Nie podano imienia exit 1 ese echo "Witaj $imie! fi b ash ofe ruje je dnak e psze rozw iązanie : #/bin/bash read -p "Podaj swoje imie: imie echo Witaj ${imie:? Nie podano imienia! Z nacznie k róce j. 3.$ e ch o - e ${PATH //:/'\n' Uży iśm y ope ratora dopasow ania do w zorca. Każdy znak dw uk ropk a w ystępujący w zm ie nne j PATH zostałzam ie niony na znak now e j inii.w yraże nie \n na e ży um ie ścić w apostrofach, ab y pow strzym ać pow łok ę prze d inte rpre tacją uk ośnik a (zostałb y potrak tow any jak znak m ask ujący). Następnie w yprow adzam y w ynik na e k ran. O pcja - e w łącza inte rpre tacje znak ów spe cja nych, czy i w tym w ypad- ostatnie j inii, czy i je j num e r. W cut za pom ocą - d m ożna de finiow ać se parator oddzie ający k o um ny. W tym w ypadk u nie b yło je dnak tak ie j potrze b y, - fn w yb ie ra n- tą k o um nę. Sk rypt nie zaw ie ra ob sługi b łędów co stanie się gdy nie zostanie podany p ik ub gdy nie b ędzie on istniał? Z am iast cut m ożna użyć rów nie ż aw k, w te dy: cat- n $1 tai- 1 aw k '{print$1' Na ostatnim przyk ładzie w idać, jak w ażna je st znajom ość po e ce ń, d ate go zach ęcam do czytania m anua i, na począte k cut, cat, e ch o, h e ad, taii w c. Do zob acze nia 67

68 W Y W IA D Z ak och ałam s ię... O pe n Source z dobyw a s e rca k obie t;-) - w yw iad z Pau iną Budz oń RO Z M AW IA: TO M ASZ BEDNARSK I Roz w ój oprogram ow ania O pe n Source w duże j m ie rz e z a e ży od z aangażow ania użytk ow nik ów. To oni pośw ięcają s w ój cz as na tw orz e nie now ych program ów, te s tow anie ich, tłum acz e nia, opracow yw anie dok um e ntacji, pom oc innym, itd. Dz ięk i ich z aangażow aniu, tys iące użytk ow nik ów na św ie cie m a m oż iw ość w ygodne go k orz ys tania z e s w oich s ys te m ów ope racyjnych i oprogram ow ania. D acz e go to robią?jak w prak tyce w yg ąda praca nad proje k te m O pe n Source? Cz y z aangażow anie to ty k o program ow anie? Na te oraz inne pytania odpow iada nam Pau ina Budz oń, k tóra od k i ku at w s pie ra s w oją pracą roz w ój dys trybucji M andriva Linux. Z apras z am y do e k tury. Tom asz Be dnarsk i: Pow ie d z k i k a słów o sob ie Pau in a Bu d zoń: O m nie?o je j... Poza tym, że nazyw am się Pau ina i m ie szk am w e w spaniałym m ie ście jak im je stkrak ów, je ste m zapa oną fank ą O pe n Source, w spółpracuję z M andrivą i m ogę - m am nadzie ję - nazyw ać się re dak tore m Dragonia M agazine. A na co dzie ń, k ie dy nie sie dzę prze d k om pute re m i ak uratnie m am w ak acji, ch odzę do ice um. TB: Jak to się stało, że zaangażow ałaś się w rozw ójd y stry b ucji? PB: Sam a nie w ie m... k ie dyś - w e dług m oich arch iw ów m ai ow ych to b ył począte k rok u - w e szłam na po sk ą podstronę m andrak e inux.com i stw ie rdziłam, że nic tu nie b yło ak tua izow ane od b ardzo daw na. Nie w ie m jak im cude m, gdzie ś na stronie zna azłam inform ację, do k ogo zw racać się z propozycją pom ocy. Adre s e - m aina e żał do Gae a Duva a (tw órcy syste m u M andrak e Linux - przyp. re d.). Szcze rze m ów iąc, w te dy nie m iałam pojęcia k to to je st :) Napisałam do nie go, ofe rując sw oją pom oc przy ak tua izacji po sk ie j w e rsji strony. O dpow ie dź otrzym ałam po godzinie. A po następne j, m iałam już dostęp do strony i zaczęłam przygodę z M andrivą. Do te j pory nie w ie m, cze m u w te dy do nie go napisałam - tak jak oś sam o w yszło :) TB: Czy m d ok ład nie się zajm uje sz w spółpracując z 68

69 W Y W IA D M and rivą? PB: W szystk im, w czym m ogę pom óc! M oim "podstaw ow ym " zajęcie m (je ś i m ogę to tak nazw ać) je st tłum acze nie strony, te raz już m andriva.com /p. Poza tym, m am przyje m ność w spółpracow ać z M andrivą Po and przy różnych proje k tach. Na przyk ład, jak iś czas te m u pom agałam w tłum acze niu inte rfe jsu K ub u M andrivy, w k tórym spotyk a się w ięk sza część społe czności z całe go św iata. Poza tym, m iałam przyje m ność popraw iać tłum acze nie inte rfe jsu sam e go syste m u i podręcznik a do w e rsji Z ajm uję się prak tycznie w szystk im, w czym je ste m w stanie pom óc w w ięk szości tłum acze niam i. TB: Nad czy m w te jch w i i pracuje sz? PB: O statnio zajm uję się rozw oje m po sk ie go w ik i M andrivy (w ik i.m andriva.com /p ). Ch ce m y rozw inąć je na ty e, że b y oddać je w ręce po sk ie j społe czności, k tóra b ędzie m ogła się nim da e j zająć. Na razie idzie nam to racze jpow o i, a e - tak że dzięk i pom ocy Piotra Krak ow iak a z Dragonia M agazine - zm iany stają się pow o i w idoczne. Strona głów na je st w te j ch w i i prak tycznie gotow a. Pracuje m y te raz nad różnym i podstronam i i rozw ażam y m oż iw ość szyb k ie go oddania w ik i społe czności. TB: Co uznaje sz za najb ard zie jinte re sujące w sy ste m ie M and riva Linux? PB: Czy ja w ie m... zak och ałam się w tym syste m ie już daw no te m u, d ate go w szystk o w nim je st d a m nie św ie tne. Bardzo podob a m i się prostota k orzystania z pu pitów 3D w najnow szym w ydaniu syste m u. Z dążyłam się już uza e żnić od M e tisse i nie je ste m w stanie b e z nie j w ygodnie k orzystać z k om pute ra. Poza tym, M andriva je st w e dług m nie syste m e m, k tóry nadaje się do w szystk ie go. Bardzo dob rze spraw uje się na b iurk u, a e te ż św ie tnie się spisuje na se rw e rze. Korzystam y z M andrivy na naszym szk o nym se rw e rze i w tym m om e ncie nie w yob rażam sob ie, że m ógłb y tam b yć inny syste m. Je dnak najb ardzie j w M andrivie doce niam dąże nie do now ych te ch no ogii - tak ich jak ch oćb y M e tisse, k tóre jnie m a w żadnym innym syste m ie, czy rozw ijanie proje k tu Ne pom uk w zw iązk u z KDE 4. Podob a m i się to, że M andriva nie b oi się k orzystać z now atorsk ich rozw iązań. w po sk im K ub ie M andrivy), a b o - na przyk ładzgłaszać b łędy do Bugzi i i te stow ać popraw k i. M ożna rów nie ż zgłosić się do k ogoś z nas ( ub z M andrivy Po and) - d a k ażde go znajdzie się zajęcie. TB: A jak d ok ład nie w y g ąd a tak a w spółpraca? PB: W m oim przypadk u, podstaw ow ym środk ie m k om unik acji są isty dysk usyjne i poczta e - m ai. Kie dy coś w ym aga tłum acze nia, osob y za to odpow ie dzia ne w M andrivie w ysyłają dany te k st na istę, a m y odsyłam y im te k st w sw oim język u. W ięk szość k ontak tów z M andrivą odb yw a się prze z m ai e d a w szystk ich je st to w ygodne. Poza tym, z nie k tórym i osob am i z M andrivy Po and utrzym uję k ontak t poprze z Jab b e ra przydaje się, k ie dy trze b a coś szyb k o om ów ić. Tak a w spółpraca daje ogrom ną satysfak cję.poza tym, nik t nik ogo nie pob ije, je ś i ak urat nie b ędzie się m iało czasu napisać tłum acze nia, co spraw ia, że je st to prak tycznie sam a przyje m ność :) TB: Jak inni m ogą pom óc?co m ogą zrob ić d a społe czności? PB: Pom óc na pe w no m oże k ażdy. M ożna zaangażow ać się w nasze w ik i - napisać w łasny te k st, na jak ik o w ie k te m at zw iązany z syste m e m, sk orzystać z te k stów w innych język ach a b o po prostu ak tua izow ać dział Now ości. Je ś i k toś nie czuję się zb yt dob rze w pisaniu, m oże udzie ać się na forum (ch oćb y TB: Jak w iad om o zm ie niły się osob y od pow ie d zia ne za zarząd zanie jak ością, zm ie niły się proce d ury zarząd zania b łęd am i oraz sy ste m inform aty czny ob sługujący Bugzi ę. W id ać tak że now e pod e jście d o proje k tow ania d y stry b ucji. Jak oce niasz przy gotow ania d o w e rsji i cze go najb ard zie j ocze k uje sz? 69

70 W Y W IA D dzie ję rozw inąć po sk ie w ik i i zach ęcić w ięk szą część je stpotrze b ne. społe czności do zaangażow ania się w rozw ój ich u upb: Fak tycznie, da się zauw ażyć zm iany, szcze gó nie w spółpracując z M andrivą. Na pe w no w e rsja b ędzie się różniła od poprze dnik ów praw dopodob nie dość znacząco. Sam e przygotow ania do je j w ydania te ż są zupe łnie inne. Trudno je w tym m om e ncie oce niać w m oim odczuciu - M andriva zrob iła duży k rok w stronę społe czności, ch oćb y dzięk i tak im stronom jak P ane t M andriva. Społe czność m a w ięk szy k ontak t z de w e ope ram i i innym i osob am i zaangażow anym i w rozw ójsyste m u, na b ie żąco m oże go ob se rw ow ać. M am nadzie ję, że na tym się nie sk ończy i że przynie sie to k orzyści nam w szystk im. Co do sam e j w e rsji na pe w no ocze k uję od nie jspe łnie nia w szystk ich ob ie tnic :) W szystk o w sk azuje na to, że b ędzie to syste m, k tóry w prow adzi k o- b ione j dystryb ucji. A w da sze j przyszłości, pryw at- TB: Dzięk uję za rozm ow ę i ży czę pow od ze nia nie, m am nadzie ję sk ończyć studia (oczyw iście, na k ie runk u Inform atyk a :)) i je szcze b ardzie jzaangażo- PB: Dzięk uję i w zaje m nie. w ać się w rozw ój O pe n Source. Na pe w no ch cę da ej k ontynuow ać m oją w spółpracę z M andrivą daje m i to dużą frajdę i w ie m, że m oje zaangażow anie e jne now atorsk ie te ch no ogie, a rów nocze śnie b ędzie prosty w ob słudze i profe sjona ny. Po prostu syste m, z k tóre go m oże k orzystać k ażdy. De w e ope rzy zape w niają, że nie pow tórzą b łędów z poprze dnich e dycji i że fina na w e rsja b ędzie dopracow ana. M am nadzie ję, że im się to uda b yłab y w te dy napraw dę re w o ucyjną e dycją. TB: Jak ie są Tw oje p any na przy szłość?z arów no zw iązane z M and rivą jak i te pry w atne? PB: Je ś i ch odzi o tą b iższą przyszłość, to m am na- 70

71 RO Z RY W K A O o ite m iędz yp atform ow a gra baz ująca na E ite O o ite je s t bardz o pros tą i m ałą grą z aproje k tow aną tak, aby k ażdy m ógł ja e dytow ać z a pom ocą dodatk ow ych pak ie tów ub naw e t e dytora te k s tow e go. Dodatk ow o, je s t ona opub ik ow ana na ice ncji Cre ative Com m ons. Dz ięk i te m u, de w e ope r Gi es W i iam s oddz ie ił k od źródłow y od grafik i, m ode i i AI. K ATARZ YNA M YREK Gra początk ow o została napisana na syste m M ac O S X. Ak tua nie, rozw ijane są rów nie ż w e rsje d a Linuk sa, Fre e BSD oraz M S W indow s. Program został stw orzony jak o odpow ie dź na E ite Th e Ne w Kind i b azuje na orygina ne j E ite, stw orzone j w rok u d a BBC M icro prze z Acornsoft. Tytuł poch odzi od je dne go z głów nych ce ów gracza zdob ycie najw yższe j oce ny i w e jście do e ity. O o ite rozgryw a się w orygina nym św ie cie C assic E ite nie ob ow iązują w nim praw a Ne w tona, a w syste m ach w ystępuje zaw sze ty k o je dna p ane ta. O czyw iście, je st m oż iw ość sam odzie ne j zm iany, M oże m y np. dodać now e dok i, dźw ięk i, m isje, statk i i inne ob ie k ty. Ab y zainsta ow ać O XP, w ystarczy ściągnąć go do fo de ru AddO ns ( i e w e ntua nie rozpak ow ać). dodania p ane tpoprze z inge re ncje w grę. Po w łącze niu O o ite, m oże on e k k o odstraszyć nas w yg ąde m. Je st to gra d a ub iących pow spom inać stare czasy, k ie dy tak a grafik a b yła standarde m. Ste row anie te ż do najb ardzie j zaaw ansow anych nie na e ży. W szystk o ob sługuje się k aw iszam i 1-10 oraz a,p,s. Podczas gry je dnak zazw yczaj doch odzi do te go k i k a innych. W w e rsji Linuk sow e j dodano ob sługę joystick a/pada. Link i: h ttp://oo ite.ae gidian.org/ h ttp://oo ite.ae gidian.org/tu toria / -k rótk i tu toria h ttp://oo ite - inu x.b e r ios.de /faq.h tm h ttp://w ik i.a ioth.ne t/inde x.ph p/r u nning_ O o ite -Linu x poradnik jak u ru ch om ić grę na Linu k s ie h ttp://w ik i.a ioth.ne t/inde x.ph p/o XP dodatk i Gdy podstaw ow a gra nam się znudzi, co m oże nastąpić nie ste ty dość szyb k o, w arto zainte re sow ać się O o ite e Xpansion Pack s. Są one dostępne na w ik i proje k tu, poje dynczo ub podzie one na k ate gorie. 71

72 LITE R ATU R A Z roz um ie ć DB2 z CD-RO M. Nauk a na prz yk ładach I us trow any prz e w odnik po IBM DB2 V8.2 K s iążk a pow s tała prz y pom ocy i w ścis łe jw s półpracy z e s pe cja is tam i z ajm ującym i s ię DB2 w po s k im oddz ia e IBM. Baza danych IBM DB2 Unive rsadatab ase V8.2 d a Linuk sa, UNIXa i W indow s je st e astyczną sk a ow a ną, e fe k tyw ną z punk tu w idze nia k osztów i łatw ą do używ ania b azą danych d a prze dsięb iorstw. Nie m a k siążk i, k tóra b y łatw ie j i w form u e k rok po k rok u prze dstaw iała DB2 v*.2, niż pre ze ntow any podręcznik.książk a zaw ie ra dzie siątk i przyk ładów i studiów prak tycznych opartych na nie prze ciętnym dośw iadcze niu autorów pracujących jak o k onsu tanci DB2 d a firm y IBM. Podręcznik nie ogranicza się do ogó ne go ob razu zagadnie nia. Pre ze ntuje k ażdą k once pcję, proce durę i narzędzie potrze b ne adm inistratorow i, użytk ow nik ow i i tw órcy b azy. M ożna w nim zna e źć dok ładny opis insta acji, ob ie k tów k onfiguracji, zm ie nnych e gze m p arza b azy danych, pam ięci połącze ń, b e zpie cze ństw a, szyb k ości działania, k opii zapasow ych oraz odzysk iw ania danych, podstaw języ- k a SQL i w ie e, w ie e w ięce j. Każde zagadnie nie zi ustrow ano zrzutam i e k ranu, sch e m atam i ub tab e am i opracow anym i tak, ab y ułatw ić ich nauk ę i zapam iętanie. D a osób przygotow ujących się do e gzam inu ce rtyfik acyjne go podano w k siążce ponad sto przyk ładow ych pytań przygotow anych prze z autorów. W raz z odpow ie dziam i i szcze gółow ym i ob jaśnie niam i odzw ie rcie d ają one zaw artość i form ate gzam inu IBM DB2 UDB Datab ase Adm inistration Ce rtification. Książk a ob e jm uje : - opis ce ch rodziny produk tów DB2, po e ce ń DB2 oraz środow isk a DB2; - k onfigurację połącze ń k ie nta i se rw e ra w ram ach czte re ch typow ych sce nariuszy; - zarządzanie pam ięcią DB2 partycje, prze strze nie tab e, pu e b uforów i inne ; - m oż iw ości język a SQL k w e re ndy, w staw ianie, usuw anie, ak tua izacja; - im p e m e ntacja zasad b e zpie cze ństw a szyfrow anie, uw ie rzyte nianie i autoryzacja; - adm inistrow anie danym i i ich utrzym yw anie od po e ce nia LO AD i EXPO R T do b ack up/re cove ry; - zape w nie nie dostępności danych z w yk orzystanie m k opii ustrzane jon ine i zaw ie szone go I/O ; - arch ite k turę DB2 proce sy i m ode e pam ięci; - zarządzanie działanie m b azy danych oraz w yk ryw anie i usuw anie b łędów. Pły ta CD- R O M d ołączona d o k siążk i zaw ie ra IBM DB2 Unive rsadatab ase Ente rprise Se rve r Ed ition Ve rsion 8.2 for W ind ow s i środ ow isk o pracy w w e rsji te stow e j oraz b ib iote k ę sk ry ptów prze znaczony ch d o prze ch w y ty w ania zm ie nny ch e gze m p arza i b az d any ch oraz tw orze nia raportów d oty czący ch e fe k ty w ności d ziałania. 72

73 LITE R ATU R A SUSE Linux stych, w tym rów nie ż funk cji Z acz ynam y od pods taw K s iążk a prz e z nacz ona je s t d a pocz ątk ujących użytk ow nik ów s ys te m u Linux. Je jce e m je s tnadanie Cz yte nik om rangi e k s pe rtów w m oż iw ie k rótk im cz as ie. W yk ład z acz yna s ię od prz ygotow ania środow is k a pracy, opis u poch odz e nia Linuk s a oraz prz e ds taw ie nia s pos obu ins ta acji oprogram ow ania. W da sze j części k siążk i om aw iane są b ardzie j zaaw ansow ane te m aty. W dzisie jszych czasach w ięk szość użytk ow nik ów m iała już k ontak t z k om pute re m. D ate go autorzy k siążk i pok azują jak popu arne funk cje syste m ow e w yg ądają w przypadk u om aw iane go tu syste m u SUSE Linux, przyk ładow o: słuch anie płyt CD, og ądanie p ik ów w ide o, prze tw arzanie te k stów i zadań zw iązanych z pracam i b iurow ym i oraz odpow ie dnie ustaw ie nia param e trów syste m u. Książk a pozw o i te ż na dogłęb ne poznanie se rca syste m u Linux pozw o i osiągnąćb ie głośćw posługiw aniu się po e ce niam i, w ustaw ianiu ścian ogniow ych i innych zab e zpie cze ń, przygotow aniu autom atyczne go tw orze nia k opii zapasow ych, zarządzaniu użytk ow nik am i i stosow aniu w ie u innych funk cji syste m ow ych. Ponadto na płycie DVD- R O M Czyte nicy otrzym ają pe łną w e rsję SUSE Linux 9.2 Profe ssiona. Je st tam w szystk o cze go potrze b a do zainsta ow ania syste m u. Dołączone na płycie przygotow ane prze z Nove oprogram ow anie to k om p e tne środow isk o d a dom ow ych użytk ow nik ów k om pute rów oraz e ntuzjastów syste m u Linux. Pozw a a na zapoznanie się z m oż iw ościam i prze znaczone j na ryne k użytk ow nik ów dom ow ych w e rsji syste m u SUSE LINUX d a k om pute rów osob i- se rw e row ych oraz dołączonych ap ik acji. Płyta oprócz syste m u zaw ie ra starannie dob rane program y użytk ow e - b iurow e, m u tim e dia ne i inte rne tow e. Udostępniona z k siążk ą w e rsja SUSE LINUX Profe ssiona 9.2 um oż iw ia insta ację oprogram ow ania i je go e k sp oatację b e z ogranicze ń czasow ych. Dostępne oprogram ow anie pozw a a na zainsta ow anie po sk ie jw e rsji język ow e j. Książk a dostarcza ty u inform acji i porad, że posługiw anie się nim b ędzie d a Czyte nik ów prostym zadanie m. 73

Gdyńskim Ośrodkiem Sportu i Rekreacji jednostka budżetowa

Gdyńskim Ośrodkiem Sportu i Rekreacji jednostka budżetowa W Z Ó R U M O W Y z a w a r t a w G d y n i w d n i u 2 0 1 4 r po m i d z y G d y s k i m O r o d k i e m S p o r t u i R e k r e a c j i j e d n o s t k a b u d e t o w a ( 8 1-5 3 8 G d y n i a ), l

Bardziej szczegółowo

1 8 / m S t a n d a r d w y m a g a ń e g z a m i n m i s t r z o w s k i dla zawodu M E C H A N I K - O P E R A T O R P O J A Z D Ó W I M A S Z Y N R O L N I C Z Y C H K o d z k l a s y f i k a c j i

Bardziej szczegółowo

PROJEKT DOCELOWEJ ORGANIZACJI RUCHU DLA ZADANIA: PRZEBUDOWA UL PIASTÓW ŚLĄSKICH (OD UL. DZIERŻONIA DO UL. KOPALNIANEJ) W MYSŁOWICACH

PROJEKT DOCELOWEJ ORGANIZACJI RUCHU DLA ZADANIA: PRZEBUDOWA UL PIASTÓW ŚLĄSKICH (OD UL. DZIERŻONIA DO UL. KOPALNIANEJ) W MYSŁOWICACH P r o j e k t d o c e l o w e j o r g a n i z a c j i r u c h u d l a z a d a n i a : " P r z e b u d o w a u l. P i a s t ó w Śl ą s k i c h ( o d u l. D z i e r ż o n i a d o u l. K o p a l n i a n e

Bardziej szczegółowo

Z awó d: p o s a d z k a r z I. Etap teoretyczny ( część pisemna i ustna) egzamin obejmuje: Zakres wiadomości i umiejętności właściwych dla kwalifikac

Z awó d: p o s a d z k a r z I. Etap teoretyczny ( część pisemna i ustna) egzamin obejmuje: Zakres wiadomości i umiejętności właściwych dla kwalifikac 9 2 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i P O dla zawodu S A D Z K A R Z Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji

Bardziej szczegółowo

Fe dora. Tux Paint. num e r 11 2007. > s tr.13. > s tr.22

Fe dora. Tux Paint. num e r 11 2007. > s tr.13. > s tr.22 Fe dora Fe dora Core je s tdys trybucją pow s tałą w 2003 rok u, opartą na baz ie s ys te m u Re d H at. Je s tto dis tro dopracow ane,s k ie row ane z arów no do pocz ątk ujących jak i do z aaw ans ow

Bardziej szczegółowo

O prac.: Marta Bosz cz yk. K ie lce, grudz ie ń 2005r.

O prac.: Marta Bosz cz yk. K ie lce, grudz ie ń 2005r. O prac.: Marta Bosz cz yk K ie lce, grudz ie ń 2005r. Artyk uły 1. Bary cz, H alina : D ob re ob y cz aje w nauce / H alina Barycz // W ych ow aw ca. 2002, nr 2, s. 14-15 [Naucz ycie lak ade m ick i, pracow

Bardziej szczegółowo

o d ro z m ia r u /p o w y ż e j 1 0 c m d ł c m śr e d n ic y 5 a ) o ś r e d n ic y 2,5 5 c m 5 b ) o śr e d n ic y 5 c m 1 0 c m 8

o d ro z m ia r u /p o w y ż e j 1 0 c m d ł c m śr e d n ic y 5 a ) o ś r e d n ic y 2,5 5 c m 5 b ) o śr e d n ic y 5 c m 1 0 c m 8 T A B E L A O C E N Y P R O C E N T O W E J T R W A Ł E G O U S Z C Z E R B K U N A Z D R O W IU R o d z a j u s z k o d z e ń c ia ła P r o c e n t t r w a łe g o u s z c z e r b k u n a z d r o w iu

Bardziej szczegółowo

1 0 2 / m S t a n d a r d w y m a g a ñ - e g z a m i n m i s t r z o w s k i dla zawodu R A D I E S T E T A Kod z klasyfikacji zawodów i sp e cjaln o ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Rozdział 2. Informacja o trybie i stosowaniu przepisów Rozdział 3. Przedmiot zamówienia

Rozdział 1. Nazwa i adres Zamawiającego Rozdział 2. Informacja o trybie i stosowaniu przepisów Rozdział 3. Przedmiot zamówienia Z n a k s p r a w y G O S I R D Z P I 2 7 1 0 1 0 2 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f S p r z» t a n i e i u t r z y m a n i e c z y s t o c i g d y

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2.

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2. Z n a k s p r a w y G O S I R D Z P I 2 7 1 03 3 2 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f U d o s t p n i e n i e t e l e b i m ó w i n a g ł o n i e n i

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2.

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2. Z n a k s p r a w y G O S I R D Z P I 2 7 1 0 5 32 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f W y k o n a n i e p r z e g l» d ó w k o n s e r w a c y j n o -

Bardziej szczegółowo

HTML/OA.jsp?page=/dm/oracle/apps/xxext/rep/xxre

HTML/OA.jsp?page=/dm/oracle/apps/xxext/rep/xxre Page 1 of 7 N a z w a i a d re s sp ra w o z d a w c z e j: D o ln o ś lą s k i U rz ą d W o je w ó d z k i w e W ro c ła w iu PI. P o w s ta ń c o w W a rs z a w y 1 50-153 W ro cław IN F O R M A C J

Bardziej szczegółowo

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA Z n a k s p r a w y GC S D Z P I 2 7 1 0 1 42 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f W y k o n a n i e p r a c p i e l g n a c y j n o r e n o w a c y j n

Bardziej szczegółowo

Zawód: złotnik-j u b il e r I Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z a kr e s w ia d om oś c i i u m ie j ę tnoś c i w ła ś c i

Zawód: złotnik-j u b il e r I Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z a kr e s w ia d om oś c i i u m ie j ę tnoś c i w ła ś c i 1 5 / m S t a n d a r d w y m a g a ń e g z a m i n m i s t r z o w s k i Z Ł O dla zawodu T N I K -J U B I L E R K o d z k l a s y f i k a c j i z a w o d ó w i s p e c j a l n o ś c i d l a p o t r z

Bardziej szczegółowo

I n f o r m a c j e n a t e m a t p o d m i o t u k t ó r e m u z a m a w i a j» c y p o w i e r z y łk p o w i e r z y l i p r o w a d z e p o s t p

I n f o r m a c j e n a t e m a t p o d m i o t u k t ó r e m u z a m a w i a j» c y p o w i e r z y łk p o w i e r z y l i p r o w a d z e p o s t p A d r e s s t r o n y i n t e r n e t o w e j, n a k t ó r e j z a m i e s z c z o n a b d z i e s p e c y f i k a c j a i s t o t n y c h w a r u n k ó w z a m ó w i e n i a ( j e e ld io t y c z y )

Bardziej szczegółowo

Zawód: monter instalacji i urządzeń sanitarnych I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z ak res w iadomoś ci i umieję tnoś ci

Zawód: monter instalacji i urządzeń sanitarnych I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z ak res w iadomoś ci i umieję tnoś ci 8 8 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i dla zawodu M O N T E R I N S T A L A C J I I U R Z Ą D Z E Ń S A N I T A R N Y C H Kod z klasyfikacji zawodów i sp e cjaln oś

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa w Gdyni Rozdział 2. Informacja o trybie i stosowaniu przepisów

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa w Gdyni Rozdział 2. Informacja o trybie i stosowaniu przepisów Z n a k s p r a w y G C S D Z P I 2 7 1 03 7 2 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A W y k o n a n i e r e m o n t u n a o b i e k c i e s p o r t o w y mp

Bardziej szczegółowo

CONNECT, STARTUP, PROMOTE YOUR IDEA

CONNECT, STARTUP, PROMOTE YOUR IDEA Dz ę u ę z r - T A ry. K z w ź ó ży u w USA www.. łą z sz s ł z ś F u T A ry! C yr t 2018 y Sy w Gór Wy rwsz S Fr s, 2018 Wszyst r w z strz ż. N ut ryz w r z wsz ł ś u r tu sz - w w st st z r. K w ą w

Bardziej szczegółowo

Xtre m e II. W ynik i k onk urs u i ank ie ty. 28 w rz e śnia 2007 rok u rus z a k am pania pod h as łe m W io O w Sz k ołach Linux dl

Xtre m e II. W ynik i k onk urs u i ank ie ty. 28 w rz e śnia 2007 rok u rus z a k am pania pod h as łe m W io O w Sz k ołach Linux dl Linux d a Sz k ół 28 w rz e śnia 2007 rok u rus z a k am pania pod h as łe m W io O w Sz k ołach Linux d a s z k ół", organiz ow ana prz e z Fundację W o ne go i O tw arte go O program ow ania oraz w ortajak

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2.

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2. Z n a k s p r a w y G O S I R D Z P I 2 7 1 0 2 32 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f O b s ł u g a o p e r a t o r s k a u r a w i s a m o j e z d n

Bardziej szczegółowo

2 7k 0 5k 2 0 1 5 S 1 0 0 P a s t w a c z ł o n k o w s k i e - Z a m ó w i e n i e p u b l i c z n e n a u s ł u g- i O g ł o s z e n i e o z a m ó w i e n i u - P r o c e d u r a o t w a r t a P o l

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2.

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2. Z n a k s p r a w y G O S I R D Z P I 2 70 1 3 7 2 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f U d o s t p n i e n i e w r a z z r o z s t a w i e n i e m o g

Bardziej szczegółowo

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA Z a m a w i a j» c y G D Y S K I O R O D E K S P O R T U I R E K R E A C J I J E D N O S T K A B U D E T O W A 8 1 5 3 8 G d y n i a, u l O l i m p i j s k a 5k 9 Z n a k s p r a w y G O S I R D Z P I

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2.

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2. Z n a k s p r a w y G O S I R D Z P I 2 7 1 0 3 12 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f O b s ł u g a o p e r a t o r s k aw r a z z d o s t a w» s p r

Bardziej szczegółowo

W al LTSP. As cii-art. Konk urs program is tycz ny C+ + num e r 9 2007. > s tr.12. > s tr.5. > s tr.41

W al LTSP. As cii-art. Konk urs program is tycz ny C+ + num e r 9 2007. > s tr.12. > s tr.5. > s tr.41 W a ka z e s pam e m Konk urs program is tycz ny C+ + O dpow ie dz popraw nie na pytania i w ygrajs upe r nagrodę! > s tr.12 LTSP Cie nk i k ie nto grubych m oż iw ościach. > s tr.5 As cii-art Pis ać w

Bardziej szczegółowo

Zawód: stolarz meblowy I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z ak res wi ad omoś c i i u mi ej ę tn oś c i wł aś c i wyc h d

Zawód: stolarz meblowy I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z ak res wi ad omoś c i i u mi ej ę tn oś c i wł aś c i wyc h d 4 6 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i dla zawodu S T O L A R Z M E B L O W Y Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji

Bardziej szczegółowo

Gdyńskim Ośrodkiem Sportu i Rekreacji jednostka budżetowa

Gdyńskim Ośrodkiem Sportu i Rekreacji jednostka budżetowa Z a ł» c z n i k n r 5 d o S p e c y f i k a c j i I s t o t n y c h W a r u n k Zó aw m ó w i e n i a Z n a k s p r a w y G O S I R D Z P I 2 7 1 0 1 1 2 0 14 W Z Ó R U M O W Y z a w a r t a w Gd y n

Bardziej szczegółowo

1 0 0 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i dla zawodu K O S M E T Y C Z K A * * (dla absolwentów szkół ponadzasadniczych) Kod z klasyfikacji zawodów i sp e cjaln oś ci

Bardziej szczegółowo

O prac.: Marta Bosz cz yk. K ie lce, stycz e ń 2006r.

O prac.: Marta Bosz cz yk. K ie lce, stycz e ń 2006r. O prac.: Marta Bosz cz yk K ie lce, stycz e ń 2006r. 1. Baw e j Iz ab e la : Naucz m y ucz niów s ię ucz yć jak łatw ie j z apam ię tać now e słów k a / Iz ab e la Baw e j // Ję z y k i O b ce w Sz k ole.

Bardziej szczegółowo

F u l l H D, I P S D, I P F u l l H D, I P 5 M P,

F u l l H D, I P S D, I P F u l l H D, I P 5 M P, Z a ł» c z n i k n r 6 d o S p e c y f i k a c j i I s t o t n y c h W a r u n k ó w Z a m ó w i e n i a Z n a k s p r a w yg O S I R D Z P I 2 7 1 02 4 2 0 1 5 W Z Ó R U M O W Y z a w a r t a w G d y

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów Z n a k s p r a w y G C S D Z P I 2 7 1 07 2 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f U s ł u g i s p r z» t a n i a o b i e k t Gó w d y s k i e g o C e n

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2.

Rozdział 1. Nazwa i adres Zamawiającego Gdyński Ośrodek Sportu i Rekreacji jednostka budżetowa Rozdział 2. Z n a k s p r a w y G O S i R D Z P I 2 7 1 0 3 62 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A Z a p e w n i e n i e z a s i l a n i ea n e r g e t y c z ne g o

Bardziej szczegółowo

Ins talacja i k onfiguracja

Ins talacja i k onfiguracja Ubuntu 7.4 Ubuntu to prz yjaz ny d a użytk ow nik a s ys t m op racyjny, w k tórym praw i w s z ys tk o m oż m y z robić m todą k ik aną. > s tr.3 Java cz.5 Kontynuacja k urs u program ow ania w jęz yju

Bardziej szczegółowo

9 6 6 0, 4 m 2 ), S t r o n a 1 z 1 1

9 6 6 0, 4 m 2 ), S t r o n a 1 z 1 1 O p i s p r z e d m i o t u z a m ó w i e n i a - z a k r e s c z y n n o c i f U s ł u g i s p r z» t a n i a o b i e k t ó w G d y s k i e g o O r o d k a S p o r t u i R e ks r e a c j i I S t a d i

Bardziej szczegółowo

Zawód: z d u n I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z a k r e s w i a d o m o ś c i i u m i e j ę t n o ś c i w ł a ś c i w

Zawód: z d u n I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: Z a k r e s w i a d o m o ś c i i u m i e j ę t n o ś c i w ł a ś c i w 9 4 / m S t a n d a r d w y m a g a ń e g z a m i n m i s t r z o w s k i dla zawodu Z D U N Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji zawodów szkoln

Bardziej szczegółowo

3. Unia kalmarska IE W O EN MAŁGORZATA I 116 ERYK VII POMORSKI 119 KRZYSZTOF III BAWARSKI ESTRYDSII IE DAN W LO KRÓ 115

3. Unia kalmarska IE W O EN MAŁGORZATA I 116 ERYK VII POMORSKI 119 KRZYSZTOF III BAWARSKI ESTRYDSII IE DAN W LO KRÓ 115 K R Ó L O W I E D ~ N I IW. S TE R Y D S E N O W I E 1 1 4 3. Unia kalmarska K R Ó L O W I E D ~ N I IW. S TE R Y D S E N O W I E M~ Ł G O R Z~ T~ I E R Y K V I I O M O R S K I K R Z Y S Z T O F I I I

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów Z n a k s p r a w y G C S D Z P I 2 7 1 01 82 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A P r o m o c j a G m i n y M i a s t a G d y n i a p r z e z z e s p óp

Bardziej szczegółowo

Zawód: s t o l a r z I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: r e s m o ś c i i u m i e j ę t n o ś c i c i c h k i f i k j i m

Zawód: s t o l a r z I. Etap teoretyczny (część pisemna i ustna) egzaminu obejmuje: r e s m o ś c i i u m i e j ę t n o ś c i c i c h k i f i k j i m 4 3 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i dla zawodu S T O L A R Z Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji zawodów

Bardziej szczegółowo

H a lina S o b c z y ń ska 3

H a lina S o b c z y ń ska 3 Z a rz ą d z a n ie o ś w ia tą B a z a te c h n o d yd a k ty c z n a B a z a te c h n o d yd a k tyc z n a In w e n ta ryza c ja P o lityk a k a d ro w a B h p w p la c ó w c e o ś w ia to w e j C O

Bardziej szczegółowo

n ó g, S t r o n a 2 z 1 9

n ó g, S t r o n a 2 z 1 9 Z n a k s p r a w y G O S I R D Z P I2 7 1 0 6 3 2 0 1 4 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A D o s t a w a w r a z z m o n t a e m u r z» d z e s i ł o w n i z

Bardziej szczegółowo

, , , , 0

, , , , 0 S T E R O W N I K G R E E N M I L L A Q U A S Y S T E M 2 4 V 4 S E K C J I G B 6 9 6 4 C, 8 S E K C J I G B 6 9 6 8 C I n s t r u k c j a i n s t a l a c j i i o b s ł u g i P r z e d r o z p o c z ę

Bardziej szczegółowo

O F E R T A H o t e l Z A M E K R Y N * * * * T a m, g d z i e b łł k i t j e z i o r p r z e p l a t a s ił z s o c z y s t z i e l e n i t r a w, a r a d o s n e t r e l e p t a z m i a r o w y m s z

Bardziej szczegółowo

T00o historyczne: Rozwój uk00adu okresowego pierwiastków 1 Storytelling Teaching Model: wiki.science-stories.org , Research Group

T00o historyczne: Rozwój uk00adu okresowego pierwiastków 1 Storytelling Teaching Model: wiki.science-stories.org , Research Group 13T 00 o h i s t o r y c z n Re o: z w ó j u k 00 a d u o k r e s o w e g o p i e r w i a s t k ó w W p r o w a d z e n i e I s t n i e j e w i e l e s u b s t a n c j i i m o g o n e r e a g o w a z e

Bardziej szczegółowo

W ynik k onk urs u na l

W ynik k onk urs u na l num e r 8 2007 W ynik k onk urs u na ogo W ynik k onk urs u na ogo Dragonia M agaz ine. > s tr.50 M e tis s e Środow is k o graficz ne s tw orz one prz e z proje k tin Situ, k tóre ofe ruje innow acyjne

Bardziej szczegółowo

1 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i dla zawodu B L A C H A R Z Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji zawodów

Bardziej szczegółowo

S.A RAPORT ROCZNY Za 2013 rok

S.A RAPORT ROCZNY Za 2013 rok O P E R A T O R T E L E K O M U N I K A C Y J N Y R A P O R T R O C Z N Y Z A 2 0 1 3 R O K Y u r e c o S. A. z s i e d z i b t w O l e ~ n i c y O l e ~ n i c a, 6 m a j a 2 0 14 r. S p i s t r e ~ c

Bardziej szczegółowo

P o l s k a j a k o k r a j a t a k ż e m y P o l a c y s t o i m y p r d s n s ą j a k i e j n i g d y n i e m i e l i ś m y i p e w n i e n i g d y m i e ć n i e b ę d e m y J a k o n o w i c o n k o

Bardziej szczegółowo

7 4 / m S t a n d a r d w y m a g a ± û e g z a m i n m i s t r z o w s k i dla zawodu K U C H A R Z * * (dla absolwent¾w szk¾ ponadzasadniczych) K o d z k l a s y f i k a c j i z a w o d ¾ w i s p e c

Bardziej szczegółowo

8 6 / m S t a n d a r d w y m a g a ń e g z a m i n m i s t r z o w s k i dla zawodu E L E K T R Y K K o d z k l a s y f i k a c j i z a w o d ó w i s p e c j a l n o ś c i d l a p o t r z e b r y n k

Bardziej szczegółowo

Rozwiązywanie umów o pracę

Rozwiązywanie umów o pracę Ryszard Sadlik Rozwiązywanie umów o pracę instruktaż, wzory, przykłady Ośrodek Doradztwa i Doskonalenia Kadr Sp. z o.o. Gdańsk 2012 Wstęp...7 Rozdział I Wy po wie dze nie umo wy o pra cę za war tej na

Bardziej szczegółowo

8 7 / m S t a n d a r d w y m a g a ń e g z a m i n m i s t r z o w s k i dla zawodu M O N T E R I N S T A L A C J I G A Z O W Y C H K o d z k l a s y f i k a c j i z a w o d ó w i s p e c j a l n o ś

Bardziej szczegółowo

1 0 2 / c S t a n d a r d w y m a g a ń e g z a m i n c z e l a d n i c z y dla zawodu R A D I E S T E T A Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji

Bardziej szczegółowo

FORMULARZ ZGODY NA ZABIEG OPERACYJNY

FORMULARZ ZGODY NA ZABIEG OPERACYJNY FORMULARZ ZGODY NA ZABIEG OPERACYJNY Pacjent... PESEL/Data urodzenia pacjenta...... Z ół yj y Operator:... Asysta:... Instrumentariuszka:... Operacja dotyczy stopy: LEWEJ* OBU STÓP* PRAWEJ* Nazwa zabiegu

Bardziej szczegółowo

L U D O L F I N G O W I E PWP XŁ X IPW.P L U D O L F I N G O W I E X MX IPw.A P 8 0

L U D O L F I N G O W I E PWP XŁ X IPW.P L U D O L F I N G O W I E X MX IPw.A P 8 0 L U D O L F I N G O W I E X MX Iw.A 8 0 K O N RŻ D I H E N R Y K I TŻ S Z N I K O T T O I W I E L K I O T T O I I O T T O I I I H E N R Y K I I WŚ I Ę T Y 8 1 K O N RŻ D I M A 8 2 O j c i e c- K O N RŻ

Bardziej szczegółowo

Opis i zakres czynności sprzątania obiektów Gdyńskiego Centrum Sportu

Opis i zakres czynności sprzątania obiektów Gdyńskiego Centrum Sportu O p i s i z a k r e s c z y n n o c is p r z» t a n i a o b i e k t ó w G d y s k i e g o C e n t r u m S p o r t u I S t a d i o n p i ł k a r s k i w G d y n i I A S p r z» t a n i e p r z e d m e c

Bardziej szczegółowo

Technologia i Zastosowania Satelitarnych Systemów Lokalizacyjnych GPS, GLONASS, GALILEO Szkolenie połączone z praktycznymi demonstracjami i zajęciami na terenie polig onu g eodezyjneg o przeznaczone dla

Bardziej szczegółowo

ZARZĄDZENIE NR 2/2018 PREZYDENTA MIASTA KATOWICE. z dnia 23 listopada 2018 r. w sprawie zmian w planie finansowym na 2018 rok

ZARZĄDZENIE NR 2/2018 PREZYDENTA MIASTA KATOWICE. z dnia 23 listopada 2018 r. w sprawie zmian w planie finansowym na 2018 rok ZARZĄDZENIE NR 2/2018 PREZYDENTA MIASTA KATOWICE z dnia 23 listopada 2018 r. w sprawie zmian w planie finansowym na 2018 rok Na podstawie art. 30 ust. 2 pkt 4 ustawy z dnia 8 marca 10 r. o samorządzie

Bardziej szczegółowo

Rewolucja dziewczyn na informatyce

Rewolucja dziewczyn na informatyce Rewolucja dziewczyn na informatyce Wro ku aka de mic kim 2017/18 od no to wa no w Pol sce naj więk szy w hi sto rii przy rost licz by stu den tek kie run ków in for ma tycz nych o 1179 w ska li kra ju

Bardziej szczegółowo

u Spis treści: Nr 80 6 p a ź d z i e rn i k 2 0 0 6 I n f o r m a c j e p o d a t k o w e 2 P o s e l s k i p r o j e k t n o w e l i z a c j i 3 k o d e k s u p r a c y K o n s u l t a c j e s p o ł e

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa w Gdyni Rozdział 2. Informacja o trybie i stosowaniu przepisów

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa w Gdyni Rozdział 2. Informacja o trybie i stosowaniu przepisów Z n a k s p r a w y G C S D Z P I 2 7 1 0 2 8 2 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f W y k o n a n i e ro b ó t b u d o w l a n y c h w b u d y n k u H

Bardziej szczegółowo

Linux, W indow s, W irus y

Linux, W indow s, W irus y Sim pl ym EPIS 6 M EPIS to m ało z nana w Pol s ce dys trybucja oparta na s ys te m ie De bian bądź Ubuntu. Cz y w arto z apoz nać s ię z dz ie łe m W arre na W oodforda? > s tr.4 Linux, W indow s, W irus

Bardziej szczegółowo

2 3 / m S t a n d a r d w y m a g a ń e g z a m i n m i s t r z o w s k i dla zawodu L A K I E R N I K S A M O C H O D O W Y Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy

Bardziej szczegółowo

z dnia 1 marca 2019 r. zarządza się co następuje:

z dnia 1 marca 2019 r. zarządza się co następuje: ZARZĄDZENIE NR 173/2019 PREZYDENTA MIASTA KATOWICE w sprawie zmian w budżecie miasta Katowice na 2019 rok Na podstawie art. ust. 2 pkt 4 ustawy z dnia 8 marca 1990 r. o samorządzie gminnym (Dz.U. z 2018

Bardziej szczegółowo

6 0 / m S t a n d a r d w y m a g a ń - e g z a m i n m i s t r z o w s k i dla zawodu K R A W I E C Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r ze b r yn ku p r acy Kod z klasyfikacji zawodów

Bardziej szczegółowo

w 1 9 2 8 i 1 9 3 0 r.

w 1 9 2 8 i 1 9 3 0 r. I I O G Ó L N O P O L S K A K O N F E R E N C J A N A U K O W A D O K T O R A N C K I E S P O T K A N I A Z H I S T O R I } K o m i t e t n a u k o w y U n i w e r s y t e t W a r m i f -M s kaoz u r s

Bardziej szczegółowo

Instrukcja obiegu i kontroli dokumentów powodujących skutki finansowo-gospodarcze w ZHP Spis treści

Instrukcja obiegu i kontroli dokumentów powodujących skutki finansowo-gospodarcze w ZHP Spis treści C h o r ą g i e w D o l n o l ą s k a Z H P U c h w a ł a n r 2 1 / I X / 2 0 1 5 K o m e n d y C h o r ą g w i D o l n o 6 l ą s k i e j Z H P z d n i a 2 10. 5. 2 0 1 5 r. w s p r a w i e I n s t r u

Bardziej szczegółowo

IN ST Y T U T TECHNOLOGII E LEK T R O N O W E

IN ST Y T U T TECHNOLOGII E LEK T R O N O W E IN ST Y T U T TECHNOLOGII E LEK T R O N O W E S - B I TO WY NA D AJN IK /O D.BIO RNIK SZYNY DANYCH UCY 7ASA86/487 o n o lit y c z n y c y fro w y u k ła d s c a lo n y TTL-S UCY 7AS486/A87 p e łn i fu

Bardziej szczegółowo

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA Z n a k s p r a w y G C S D Z P I 2 7 1 0 1 12 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A D o s t a w a ( u d o s t p n i e n i e ) a g r e g a t u p r» d o t w

Bardziej szczegółowo

O prac.: Marta Bosz cz yk. K ie lce, k w ie cie ń 2006

O prac.: Marta Bosz cz yk. K ie lce, k w ie cie ń 2006 O prac.: Marta Bosz cz yk K ie lce, k w ie cie ń 2006 1. Ce cuda, D. : Le k s yk on opoz ycji politycz ne j19 76-19 89 / D. Ce cuda // Stude nt. 19 9 0, nr 3, s.7 [Nie z ale żny Z w iąz e k Młodz ie ży,,kraj,

Bardziej szczegółowo

2 0 0 M P a o r a z = 0, 4.

2 0 0 M P a o r a z = 0, 4. M O D E L O W A N I E I N Y N I E R S K I E n r 4 7, I S S N 1 8 9 6-7 7 1 X A N A L I Z A W Y T R Z Y M A O C I O W A S Y S T E M U U N I L O C K 2, 4 S T O S O W A N E G O W C H I R U R G I I S Z C Z

Bardziej szczegółowo

g sp e p z. z g ej zczec e ł p esz ch 吇 s p e 吇 zece 吇 cz ł e 吇 吇 吇 吇 吇 ch 吇 吇 s zczec z ł 吇 sp ej 吇ch ᖧ啧 s 70-54 吇 zczec p. j ej 1 ᐧ北 t h. J k Ry h k Sz z, m z 20 2. 2 R ᖧ啧 1. s ęp.. N z s z mó.2. P z

Bardziej szczegółowo

1 Wynagrodzenie Wykonawcy zostanie podzielone na równe raty płatne cykliczne za okresy 2 tygodniowe w. okresie obowiązywania umowy.

1 Wynagrodzenie Wykonawcy zostanie podzielone na równe raty płatne cykliczne za okresy 2 tygodniowe w. okresie obowiązywania umowy. W Z Ó R U M O W Y N r :: k J Bk 2 0 1 5 Z a ł» c z n i k n r 4 A z a w a r t a w G d y n i d n i a :::::: 2 0 1 5 r o k u p o m i d z y G d y s k i m C e n t r u m S p o r t u j e d n o s t k» b u d e

Bardziej szczegółowo

8. N i e u W y w a ć u r z ą d z e n i a, g d y j e s t w i l g o t n e l ug b d y j e s t n a r a W o n e n a b e z p o 6 r e d n i e d z i a ł a n i

8. N i e u W y w a ć u r z ą d z e n i a, g d y j e s t w i l g o t n e l ug b d y j e s t n a r a W o n e n a b e z p o 6 r e d n i e d z i a ł a n i M G 4 0 1 v 4 G R I L L E L E K T R Y C Z N Y M G 4 0 1 I N S T R U K C J A M O N T A V U I B E Z P I E C Z N E G O U V Y T K O W A N I A S z a n o w n i P a s t w o, d z i ę k u j e m y z a z a k u p

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów Z n a k s p r a w y G C S D Z P I 2 7 1 0 33 2 0 1 7 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A f U s ł u g i s p r z» t a n i a o b i e k t ó w G d y s k i e g o C e

Bardziej szczegółowo

w ady, z ale ty, z agroże nia O prac. Marta Bosz cz yk K ie lce, sie rpie ń, 2005r.

w ady, z ale ty, z agroże nia O prac. Marta Bosz cz yk K ie lce, sie rpie ń, 2005r. w ady, z ale ty, z agroże nia O prac. Marta Bosz cz yk K ie lce, sie rpie ń, 2005r. Książk i : 1. Aftab Parry : Inte rne t a dz ie ci : uz ale żnie nia i inne nie - b e z pie cz e ń s tw a. W ars z aw

Bardziej szczegółowo

Liturgia eucharystyczna. Modlitwa nad darami œ

Liturgia eucharystyczna. Modlitwa nad darami œ Msza święta Liturgia eucharystyczna K. Pa - nie, nasz Bo - że, niech ta O - fia - ra, któ - rą skła - da - my...... Przez Chry - stu - sa, Pa - na na - sze - go. Modlitwa nad darami... Któ - ry ży - e

Bardziej szczegółowo

Echa Przeszłości 11,

Echa Przeszłości 11, Irena Makarczyk Międzynarodowa Konferencja: "Dzieje wyznaniowe obu części Prus w epoce nowożytnej: region Europy Wschodniej jako obszar komunikacji międzywyznaniowej", Elbląg 20-23 września 2009 roku Echa

Bardziej szczegółowo

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów

Rozdział 1. Nazwa i adres Zamawiającego Gdyńskie Centrum Sportu jednostka budżetowa Rozdział 2. Informacja o trybie i stosowaniu przepisów Z n a k s p r a w y G C S D Z P I 2 7 1 0 4 52 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A W y k o n a n i e p o m i a r ó w i n s t a l a c j i e l e k t r y c

Bardziej szczegółowo

S z a nowni P a ń s t wo! t y m rok u p oj a wi ą s i ę p i e rws i a b s ol we nc i rz e m i e ś l ni c z e j na u k i z a wod u na wy s z k ol e ni e, k t ó ry c h m i s t rz om s z k ol ą c y m b ę

Bardziej szczegółowo

Władcy Skandynawii opracował

Władcy Skandynawii opracował W Ł~ D C Y S K~ N D Y N~ W I I K R Ó L O W I E D ~ N I IW. K J S O L D U N G O W I E 1 K R Ó L O W I E D ~ N I IW. K J S O L D U N G O W I E 2 Władcy Skandynawii G E N E~ L O G I~ K R Ó L Ó W D~ N O R

Bardziej szczegółowo

PROJEKT I WALIDACJA URZĄDZEŃ POMIAROWYCH

PROJEKT I WALIDACJA URZĄDZEŃ POMIAROWYCH M O D E L O W A N I E I N Y N I E R S K I E n r 4 7, I S S N 1 8 9 6-7 7 1 X P R O J E K T I W A L I D A C J A U R Z Ą D Z E P O M I A R O W Y C H a S I Y W L I N I E I K Ą T A W Y C H Y L E N I A L I

Bardziej szczegółowo

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA

SPECYFIKACJA ISTOTNYCH WARUNKÓW ZAMÓWIENIA Z n a k s p r a w y G C S D Z P I 2 7 1 0 2 02 0 1 5 S P E C Y F I K A C J A I S T O T N Y C H W A R U N K Ó W Z A M Ó W I E N I A U s ł u g a d r u k o w a n i a d l a p o t r z e b G d y s k i e g o

Bardziej szczegółowo

RPMP /17

RPMP /17 Ustalenie wartości szacunkowej zamówienia RFI/01/10/2018 Nazwa Projektu: Opracowanie i wdrożenie strategii działalności międzynarodowej przedsiębiorstwa w zakresie rozwoju eksportu na rynkach zagranicznych.

Bardziej szczegółowo

0 ( 1 ) Q = Q T W + Q W + Q P C + Q P R + Q K T + Q G K + Q D M =

0 ( 1 ) Q = Q T W + Q W + Q P C + Q P R + Q K T + Q G K + Q D M = M O D E L O W A N I E I N Y N I E R S K I E n r 4 7, I S S N 1 8 9 6-7 7 1 X O P T Y M A L I Z A C J A K O N S T R U K C J I F O R M Y W T R Y S K O W E J P O D K Ą T E M E F E K T Y W N O C I C H O D

Bardziej szczegółowo

I. STADHOUDERZY NIDERLANDÓW

I. STADHOUDERZY NIDERLANDÓW 68 I. STADHOUDERZY NIDERLANDÓW I. TŻS D H O U D E R Z Y N I D E R LŻ N D Ó W R o z d z i a ł I I. KRÓLOWIE HOLANDII LUDWIK I 70 LUDWIK II 79 6 9 I. TŻS D H O U D E R Z Y N I D E R LŻ N D Ó W LUDWIK I Król

Bardziej szczegółowo

Gdyńskim Ośrodkiem Sportu i Rekreacji jednostką budżetową Zamawiającym Wykonawcą

Gdyńskim Ośrodkiem Sportu i Rekreacji jednostką budżetową Zamawiającym Wykonawcą W Z Ó R U M O W Y n r 1 4 k J Bk 2 0 Z a ł» c z n i k n r 5 z a w a r t a w G d y n i w d n i u 1 4 ro ku p o m i 2 0d z y G d y s k i m O r o d k i e m S p o r t u i R e k r e a c j ei d n o s t k» b

Bardziej szczegółowo

Opakowania na materiały niebezpieczne

Opakowania na materiały niebezpieczne Założyciel firmy Georg Utz 1916 1988 Opakowania na materiały 208 GGVS Opakowania na materiały 209 Opakowania na materiały Cer ty fi ko wa ne po jem ni ki Utz jest pro du cen tem sze ro kiej ga my opa ko

Bardziej szczegółowo

Wersja archiwalna. Adres: Urząd Miejski w Rabce-Zdroju. ul. Parkowa 2. 34-700 Rabka-Zdrój. tel. (18) 26 92 000. fax.

Wersja archiwalna. Adres: Urząd Miejski w Rabce-Zdroju. ul. Parkowa 2. 34-700 Rabka-Zdrój. tel. (18) 26 92 000. fax. Wersja archiwalna O g ło sze n ie o r o zp o czę ciu p o st ę p o w a n ia w t r yb ie p r ze t a r g u n ie o g r a n iczo n e g o n a za d a n ie p n. : " D o w ó z u czn ió w d o G imn a zju m n r 1

Bardziej szczegółowo

Liturgia eucharystyczna. Modlitwa nad darami œ

Liturgia eucharystyczna. Modlitwa nad darami œ Msza święta Liturgia eucharystyczna # Modlitwa nad darami " # # K. Pa - nie, nasz Bo - że, niech ta O - fia - ra, któ - rą skła - da - my...... Przez Chry - stu - sa, Pa - na na - sze - go. lub... Któ

Bardziej szczegółowo

Kluczpunktowaniaarkusza Kibicujmy!

Kluczpunktowaniaarkusza Kibicujmy! Kluczpunktowaniaarkusza Kibicujmy! KLUCZODPOWIEDZIDOZADAŃZAMKNIĘTYCH zadania 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Poprawna odpowiedź D B A D C D D C B C C B D B B C B

Bardziej szczegółowo

Kluczpunktowaniaarkusza Kibicujmy!

Kluczpunktowaniaarkusza Kibicujmy! Kluczpunktowaniaarkusza Kibicujmy! KLUCZODPOWIEDZIDOZADAŃZAMKNIĘTYCH zadania 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Poprawna odpowiedź D B A D C D D C B C C B D B B C B

Bardziej szczegółowo

K a r l a Hronová ( P r a g a )

K a r l a Hronová ( P r a g a ) A C T A U N I V E R S I T A T I S L O D Z I E N S I S KSZTAŁCENIE POLONISTYCZNE CUDZOZIEMCÓW 2, 1989 K a r l a Hronová ( P r a g a ) DOBÓR I UKŁAD MATERIAŁU GRAMATYCZNEGO W PODRĘCZNIKACH KURSU PODSTAWOWEGO

Bardziej szczegółowo

ZARZĄDZENIE NR 63/2018 WÓJTA GMINY CZERNIKOWO z dnia 28 września 2018 r.

ZARZĄDZENIE NR 63/2018 WÓJTA GMINY CZERNIKOWO z dnia 28 września 2018 r. ZARZĄDZENIE NR 63/2018 WÓJTA GMINY CZERNIKOWO z dnia 28 września 2018 r. w sprawie zmian w budżecie na 2018 rok Na podstawie art.257 pkt 1 i pkt 3 ustawy z dnia 27 sierpnia 2009r o finansach publicznych

Bardziej szczegółowo

z d n i a 2 3. 0 4.2 0 1 5 r.

z d n i a 2 3. 0 4.2 0 1 5 r. C h o r ą g i e w D o l n o l ą s k a Z H P I. P o s t a n o w i e n i a p o c z ą t k o w e U c h w a ł a n r 1 5 / I X / 2 0 1 5 K o m e n d y C h o r ą g w i D o l n o l ą s k i e j Z H P z d n i a

Bardziej szczegółowo

u P o d n o s z e n i e e f e k t y w n o śc i e k o n o m i c z n e j f u n k c j o n o w a n i a a d m i n i s t ra c j i pu - b li c z n e j w y m

u P o d n o s z e n i e e f e k t y w n o śc i e k o n o m i c z n e j f u n k c j o n o w a n i a a d m i n i s t ra c j i pu - b li c z n e j w y m W Załącznik do Uchwały nr XXX/244/01 R ady M ie j s kie j w N ałę czowie z dnia 28 g ru dnia 2001 r. Strategia rozwoju gminy miejskiej Nałęczów Opracowanie: dr Waldemar A. Gorzym-Wi lk ow s k i dr An drzej

Bardziej szczegółowo

p. a y o o L f,.! r \ ' V. ' ' l s>, ; :... BIULETYN

p. a y o o L f,.! r \ ' V. ' ' l s>, ; :... BIULETYN p. a y o o L f,.! r \ ' V. '. ' ' l s>, ; :... BIULETYN KOLEGIUM REDAKCYJNE Redaktor Naczelny: Sekretarz Redakcji: Redaktorzy działowi: Członkowie: mgr Roman Sprawski mgr Zofia Bieguszewska-Kochan mgr

Bardziej szczegółowo

K R Ó L O W I E PD Ż N I IPWP.P K J S O L D U N G O W I E P 1 0

K R Ó L O W I E PD Ż N I IPWP.P K J S O L D U N G O W I E P 1 0 1 0 A Królowie Danii K J O L D U N G O W I E. S K J O L D U N G O W I E. E S T R Y D S E N O W I E K R Ó L O W I E D Ż N I IW. S. U N IŻ KŻ L MŻ R S KŻ. O L D E N B U R G O W I E. G L Ü C K S B U R G O

Bardziej szczegółowo

Ż S KŻ Ń C Z Y C Y PWP X I Ł I X I VPW.P W I T T E L S BŻ C H O W I EPPPPPPPPPPPPPPP IP L U K S E M B U R G O W I EPPPPPPPPPPPPPP P X I V MX VP w.a 8

Ż S KŻ Ń C Z Y C Y PWP X I Ł I X I VPW.P W I T T E L S BŻ C H O W I EPPPPPPPPPPPPPPP IP L U K S E M B U R G O W I EPPPPPPPPPPPPPP P X I V MX VP w.a 8 Ż S KŻ Ń C Z Y C Y W X I Ł I X I VW. W I T T E L S BŻ C H O W I E I L U K S E M B U R G O W I E X I V MX V w.a 8 8 W i t t e l s b a c h o w i e L U D W I K W Ż L D E MŻ R L U D W I K I STŻ R S Z Y FŻ

Bardziej szczegółowo

1 9 / c S t a n d a r d w y m a g a ń - e g z a m i n c z e l a d n i c z y dla zawodu M E C H A N I K P O J A Z D Ó W S A M O C H O D O W Y C H Kod z klasyfikacji zawodów i sp e cjaln oś ci dla p ot r

Bardziej szczegółowo

K R Ó L O W I E PS Z W E C J I PWP.P O LF K U N G O W I E P 5 2 2

K R Ó L O W I E PS Z W E C J I PWP.P O LF K U N G O W I E P 5 2 2 5 2 2 3. Folkungowie WŻ L D E MŻ R B I R G E R S S O N MŻ G N U S I LŻ D U L Å S B I R G E R MŻ G N U S S O N MŻ G N U S I I E R I K S S O N E R Y K MŻ G N U S S O N HŻŻ K O N MŻ G N U S S O N 5 2 3 W

Bardziej szczegółowo