Kiszolgálók üzemeltetése. Iványi Péter



Hasonló dokumentumok
Csomagkezelés haladó. Bakai Dániel, volt reszortvezető

Szoftver technológia. Build systems. Cserép Máté ELTE Informatikai Kar 2019.

Csomagkezelők. Soós Péter Pannonhalmi Főapátság IPSZILON szeminárium február 22.

Dr. Schuster György október 14.

C programozási nyelv

C/C++ programozás UNIX környezetben

4. Laborgyakorlat. A fájlokról ezeket az adatokat, a fájlrendszer tárolja. Számunkra az 1, 3, 4. oszlopok lesznek az érdekesek.

Operációs rendszerek. 4. gyakorlat. BASH bevezetés, script írása, futtatása UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Elemi alkalmazások fejlesztése I.

Bináris Debian csomag készítése HOGYAN

1. Bevezetés szeptember 9. BME Fizika Intézet. Szám. szim. labor ea. Tőke Csaba. Tudnivalók. feladat. Tematika. Moodle Házi feladatok

A Java EE 5 plattform

C programozás. 1 óra Bevezetés

OPENCV TELEPÍTÉSE SZÁMÍTÓGÉPES LÁTÁS ÉS KÉPFELDOLGOZÁS. Tanács Attila Képfeldolgozás és Számítógépes Grafika Tanszék Szegedi Tudományegyetem

15. Programok fordítása és végrehajtása

TI TMDSEVM6472 rövid bemutatása

Mobil Informatikai Rendszerek

Java I. A Java programozási nyelv

Delphi programozás I.

Automatizált Java Build. ApacheAnt használatával

I. Felzárkoztató Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

C++ fejlesztés az ECLIPSE környezetben

Programozási nyelvek (ADA)

HAWK-3. Az OMSZ saját fejlesztésű időjárási megjelenítő rendszere

2017/01/27 08:59 1/6 Gettext Rendszer

Egészítsük ki a Drupal-t. Drupal modul fejlesztés

Programozás alapjai óra. Morvai Flórián, 2010 Dr. Dévényi Károly előadásvázlata alapján

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Programozás II. 2. Dr. Iványi Péter

Programozás 1. Dr. Iványi Péter

LOGalyze Telepítési és Frissítési Dokumentáció Verzió 3.0

Clang Static Analyzer belülről

Programozás I. gyakorlat

GPU Lab. 5. fejezet. A C++ fordítási modellje. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc

IPTABLES. Forrás: Gregor N. Purdy: Linux iptables zsebkönyv

Szkriptnyelvek. 1. UNIX shell

italc felhasználói dokumentáció

Kiszolgálók üzemeltetése. Iványi Péter

Ismerkedjünk meg a Linuxszal!

Adatbázis és szoftverfejlesztés elmélet

Robot Operating System

1_Linux_bevezeto_bash

A DNS64 és NAT64 IPv6 áttérési technikák egyes implementációinak teljesítőképesség- és stabilitás-vizsgálata. Répás Sándor

Unix/Linux alapok. Operációs rendszerek I. készítette: Bringye Zsolt, Kozlovszky Miklós, Póserné Oláh Valéria, Windisch Gergely

Telepítés Linux alatt röviden - általánosan

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Készítette: Csatlós István 2010-ben

Occam 1. Készítette: Szabó Éva

Operációs Rendszerek példatár. Utolsó frissítés: február 10.

Operációs rendszerek. 2. gyakorlat. Munka állományokkal UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Operációs rendszerek gyakorlat

Bevezetés. Dr. Iványi Péter

A Debian GNU/Linux, mint Hálózati operációs rendszer

Több platform egy kódbázis Tanulságok a Tresorittól. Budai Péter, vezető fejlesztő

eszemélyi Kliens Szoftvercsomag

Programozás C és C++ -ban

Fordítóprogramok. Aszalós László szeptember 7.

C++ programok fordítása

2016/12/30 18:43 1/13 Csomagkezelés

RapidMiner telepítés i. RapidMiner telepítés

Operációs rendszerek 2 1. óra: Linux alapok Ismétlés. Windisch Gergely félév

A szoftverfejlesztési szerződések buktatói. HWSW mobile! november 19.

Windows és/vagy Linux? Készítette: Hanusz Zoltán /Hazlaat/

PYTHON. Avagy hosszú az út a BioPythonig

Programozás. Programozás villamosmérnököknek

HaXSoN Nyílt forrásdú, zárt informatikai rendszer

Viczián István IP Systems JUM XIX szeptember 18.

OPERÁCIÓS RENDSZEREK II GYAKORLAT

A L i n u x r u h á j a

Kedvenc Ingyenes editorok avagy milyen a programozó jobbkeze? PSPAD editor DEVPHP IDE

Dr. Schuster György október 30.

Operációs rendszerek gyakorlat

Linux ismeretek. Göcs László mérnöktanár. 2. előadás. KF-GAMF Informatika Tanszék tavaszi félév

Programzás I gyakorlat

Mobil Informatikai Rendszerek

Beágyazott rendszerek fejlesztése laboratórium DSP fejlesztési technológiák

Freddy Felhasználói útmutató Móricz Ferenc

A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA-

Programozási nyelvek Java

Java I. A Java programozási nyelv

S z á m í t ó g é p e s a l a p i s m e r e t e k

Az állományok kezelésére használt fontosabb parancsok

Code review és continous integration toolok BME-MIT

Operációs rendszerek gyakorlat

K2 SIMU KAPCSOLATI KISZOLGÁLÓ MUNKAÁLLOMÁS szoftver

Flex tutorial. Dévai Gergely

A Code::Blocks fejlesztőkörnyezet

Kommunikációs rendszerek programozása (NGB_TA024_1) MÉRÉSI JEGYZ ŐKÖNYV. (4. mérés) OSPF protokollal megvalósított Quagga router

II. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

20. Tétel 1.0 Internet felépítése, OSI modell, TCP/IP modell szintjenek bemutatása, protokollok Pozsonyi ; Szemenyei

Operációs Rendszerek II. labor alkalom

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Programozás alapjai Bevezetés

Budapesti Műszaki- és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar MIT. Nagyteljesítményű mikrovezérlők tantárgy [vimim342]

Miről lesz szó? Setup Project készítése. Tulajdonságok. 1. Készítsünk egy setup project alkalmazást egy már elkészített, lefordított programhoz.

A fordítónak mindenhez lehet

Magyar Szabad Szoftver Tárház. Erdei Csaba Mátó Péter

Alternatív processz állapot és statisztika lekérdezési módszer a Linux kernelben

X. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK. Mérési utasítás

Írásjogtól Rootig AIX-on

Átírás:

Kiszolgálók üzemeltetése Iványi Péter

Linuxon a C fordító gcc Fordítás GNU Compiler Collection C, C++, Object-C, Java, Fortran, Ada nyelveket tud kezelni 42 féle rendszerre és processzorra tud kódot generálni Például: gcc -o hello.exe hello.c

Történet Unix-on bár alapvetően hasonlóak, de mindig volt valami eltérés Más fejléc file nevek A fejléc file-okban a függvényeknek egy kicsit más a neve A file-ok máshol voltak Terminál és processzus kezelés is másképpen történt POSIX segített, de Új lehetőségeket vezetett be Különböző időben Nagy változatosság

Történet Fejlesztőknek ismernie kellett a rendszereket #ifdef is használható, de túl kusza kódott eredményezett 1992-ben négy rendszer Metaconfig configure GNU Autoconf Imake, X Window része

Configure programok Két részre osztják a szoftver elkészítését Konfigurálás Fordítás (build) Mindegyik Makefile-okat használ A make program lehetőségeit használják ki configure script,nem bináris Nem interaktív, maguktól határozza meg a rendszer lehetőségeit cross-compiler lehetőséget is biztosít

Autotools A fordítás egyszerűsítése Fordítás Felismeri a rendszer sajátosságait és a megfelelő beállításokat alkalmazza A fordítási mechanizmus hordozhatósága Akár különböző architektúrák között Shell scriptekből áll, illetve vezérlik Tulajdonképpen Makefile-okat hoz létre

Makefile make Függőségek definíciója, illetve Hogyan kell a függőségeket feloldani úgy, hogy egy célt elérjünk A make program a célt frissíti (update) úgy, hogy amitől függ a létezése azokat is frissíti Up-to-date azt jelenti, hogy az időbélyege frissebb Sajnos (!)

Függőségek all: foo foo: foo.o bar.o baz.o.c.o: $(CC) $(CFLAGS) -c $< -o $@.l.c: $(LEX) $< && mv lex.yy.c $@ all foo foo.o bar.o baz.o foo.c bar.c baz.c baz.l

A célok (target) file-ok Szabályok A Makefile azt adja meg, hogyan lehet a file-t létrehozni A szabály után shell parancsok végzik el a feladatot A parancsoknak 0-val kell kilépniük (nincs hiba) Vannak feltétel nélküli szabályok is clean: rm -f *.o

Szintakszis Megjegyzés sor# karakterrel kezdődik Szintakszis: target1: dep1 dep2... depn <tab> cmd1 <tab> cmd2 <tab>... <tab> cmdn

Makrók Makrók dollár jellel $ kezdődnek Szintakszisa: $( ) Értékadás: CC = ec++ Használata $(CC) $(CFLAGS) -c $< -o $@

$@ $< A cél neve Makrók A szabályhoz tartozó első függőség all: dummy @echo "$@ depends on dummy" dummy: touch $@ $ make touch dummy all depends on dummy

Egyszerűsítés: Kevesebbet kelljen írni, Speciális szabály wildcard minta alapján több file esetén alkalmazható Ha más szabály nem vonatkozik rá, akkor a.o file-ok.c filetól függnek.c.o: $(CC) $(CFLAGS) -c $< -o $@

make alkalmazása Gyakorlaton megnézzük egy Hello World programmal

Autoconf programok configure --prefix=/home/peteri/local make make install

Debian csomagok Minden szüskséges file összessége ami egy programhoz, szolgáltatáshoz szükséges Bináris csomag Futtatható file-ok Konfigurációs file-ok Dokumentáció Forrás (source) csomagok A forráskódot tartalmazza

Csomag nevek csomag_verzió-debianverzió_arch.deb csomag: a csomag neve verzió : bármi lehet, nincs szabványosítva debianverzió : a debian verzió, fejlesztő adja meg arch : processzor típus

control file Megadja főbb információkat Package: myhello Priority: optional Section: devel Maintainer: Senki Alfonz <senki@debian.org> Architecture: i386 Version: 1.0 Depends: libc6 (>= 2.1) Description: Hello program Sajat fejlesztesu hello program

Példák: Függőségek Depends: foo (>= 1.2), libbar1 (= 1.3.4) Conflicts: baz Recommends: libbaz4 (>> 4.0.7) Suggests: quux Replaces: quux (<< 5), quux-foo (<= 7.6)

control file Package: myhello Priority: optional Section: devel Maintainer: Senki Alfonz <senki@debian.org> Architecture: i386 Version: 1.0 Depends: libc6 (>= 2.1) Description: Hello program Sajat fejlesztesu hello program

Required Priority A rendszer működéséhez kell Important A legtöbb unix fontos eszköze, programja Standard Szabványos programok Linux-on, web browser, e-mail program, ftp, stb

Optional Priority Valószínűleg szükség lesz rá, X window, TeX Extra A magasabb szintű csomagokkal ütközhet Speciális tudást igényelhet Speciális igényei lehetnek

preinst: script-ek A file-ok kicsomagolása előtt fut le Például leállít szolgáltatásokat postinst: A file-ok kicsomagolása után fut le Konfigurálja a csomagot vagy elindítja a szolgáltatást

prerm: script-ek A file-ok eltávolítása előtt fut le postrm: A file-ok eltávolítása után fut le

Csomag készítés dpkg-buildpackage -rfakeroot Törli a forrás kódból generált file-okat Újrafordítja a programot Újraépítí a csomagot