# A Moodle telepítése

## Nyugalom!

> Ebből az útmutatóból megtudhatja, hogyan telepítheti a Moodle-t az első alkalommal. A leírás egyes lépéseket részletesen taglal annak érdekében, hogy a webszerverek lehetséges beállításainak túlnyomó részére kitérhessen, ezért ez a dokumentum hosszúnak és bonyolultnak tűnhet. De izgalomra nincs ok: ha tudja, mi a módja, a Moodle-t percek alatt telepíteni tudja!

> Ha gondja támad, alaposan olvassa végig az alábbiakat - a legtöbb kérdésre alább megkapja a választ. Ha továbbra is problémába ütközik, választ kaphat a Moodle súgójából.

> Egy másik lehetőség, ha megbíz egy internetes szolgáltató vállalatot, amely teljes egészében átvállalja a Moodle kezelését, így Önnek egyből csak a tanításra kell koncentrálnia!

> A leírás részei:

> 1. Követelmények
> 2. Állományok letöltése és helyükre másolása
> 3. A portál szerkezete
> 4. A telepítő program futtatása a config.php létrehozására
>    - Webszerver beállításainak ellenőrzése
>    - Adatbázis létrehozása
>    - Adatkönyvtár létrehozása
> 5. A beállítások folytatásához áttérés a rendszergazda oldalára
> 6. A cron beállítása
> 7. Új kurzus létrehozása

### 1. Követelmények

> A Moodle alapvetően Linux alatt lett kifejlesztve az Apache, a MySQL és a PHP (együttesen időnként LAMP platformként ismert) környezetben, de rendszeresen ellenőrzésen megy át a PostgreSQL adatbázis-kezelővel, illetve Windows XP, Mac OS X és Netware 6 operációs rendszerben

> A Moodle futtatásához a következőkre van szükség:

> 1. Webszerver. A legelterjedtebb az Apache, de a Moodle bármely egyéb PHP-t támogató webszerverrel megfelelően futtatható, például Windows alatt az IIS-sel.
> 2. PHP programozási language (4.1.0-es vagy magasabb verzió). A Moodle 1.4 változatától felfelé a rendszer támogatja a PHP 5 használatát.
> 3. működő adatbázisszerver: a MySQL vagy a PostgreSQL használatát a Moodle teljes mértékben támogatja, így ezek használata ajánlott.

> A legtöbb webes környezet ezeket alapbeállításban támogatja. Ha azon csekély számú internetes szolgáltató egyikével áll kapcsolatban, amely ezeket nem támogatja, kérdezze meg, mi ennek az oka és vegye fontolóra valamely másik szolgáltató kiválasztását.

> Ha a Moodle-t saját gépén kívánja futtatni és a fentiek kissé ijesztőnek tűnnek, olvassa el rendszergazdáknak szóló tájékoztatónkat.

### 2. Állományok letöltése és helyükre másolása

> A Moodle kétféleképpen szerezhető be: tömörített csomagként és a CVS-en keresztül. Ezekről részletesen lásd a letöltési oldalt: http://moodle.org/download/

> A csomag letöltése és kicsomagolása, illetve az állományok CVS-en keresztüli elérése után a felhasználó a "moodle" könyvtárba kerül, amelyben számos állomány és mappa található.

> Lehetősége van a komplett könyvtárat a webszerver dokumentumkönyvtárába helyezni, ez esetben a portál a http://webszerverem.com/moodle alá kerül, illetve a teljes tartalmat a webszerver dokumentumai közé helyezheti, ekkor a portál egyszerűen a http://webszerverem.com könyvtár alá kerül.

> Amennyiben a Moodle-t saját gépére tölti le, majd ezután feltölti az internetes portáljára, célszerűbb az egész csomagot egyetlen tömörített állományként feltölteni, majd a szerveren kicsomagolni. Még a Cpanelhez hasonló webes környezetben is lehetőség van a csomagok kibontására, például a "File Manager" segítségével.

### 3. A portál szerkezete

> Ezt a részt nyugodtan átugorhatja, tájékoztatásul alább egy összegzést talál a Moodle mappa tartalmáról:

> > config.php | - | az alapvető beállításokat tartalmazza. Ezt a Moodle nem foglalja magában - Ön fogja létrehozni.
> > install.php | - | az a kód, amelyet a config.php létrehozására használni fog.
> > version.php | - | a Moodle programkódjának aktuális verzióját tartalmazza
> > index.php | - | a portál címoldala

> > - admin/ - a teljes szerver adminisztrálásához szükséges kódok
> > - auth/ - felhasználók engedélyezéséhez szükséges segédprogramok
> > - blocks/ - a számos oldalon megjelenő oldalsó kis blokkokhoz szükséges segédprogramok
> > - calendar/ - a naptárak kezeléséhez és megjelenítéséhez szükséges összes kód
> > - course/ - a kurzusok kezeléséhez és megjelenítéséhez szükséges kódok
> > - doc/ - a Moodle súgójának dokumentációja (pl. ez az oldal)
> > - files/ - a feltöltött állományok kezeléséhez és megjelenítéséhez szükséges kód
> > - lang/ - szövegek különféle nyelveken, nyelvenként egy-egy könyvtárban
> > - lib/ - a Moodle törzskódjának könyvtárai
> > - login/ - a bejelentkezések kezeléséhez és felhasználók létrehozásához való kód
> > - mod/ - az összes fő Moodle kurzus moduljai ide kerülnek
> > - pix/ - a portál fő grafikus állományai
> > - theme/ - tematikus sablonok a portál kinézetének módosításához.
> > - user/ - a felhasználók kezeléséhez és megjelenítéséhez szükséges kód

### 4. A telepítő program futtatása a config.php létrehozására

> A telepítő kód (install.php) futtatásához elegendő böngészőjében megnyitni a Moodle fő URL-jét, vagy közvetlenül behívni a http://szerverem/install.php állományt.

> (A telepítő megpróbál a folyamatról egy sütit létrehozni. Ha böngészője figyelmezteti a süti készülésére, ne feledje azt engedélyezni!)

> A Moodle észleli, ha konfigurálásra lesz szükség és néhány képernyő segítségével létrehozza Önnel az új konfigurációs fájlt config.php néven. A folyamat végén a Moodle megkísérli az állományt a megfelelő helyre írni, ellenkező esetben egy gomb megnyomásával letöltheti azt a telepítőből, majd feltöltheti közvetlenül a szerver fő Moodle könyvtárába.

> Mindeközben a telepítő ellenőrzi a szerver környezetét és ötleteket ad az esetleges problémák megoldására. Ezek az ötletek a leggyakoribb gondokra megoldást kínálnak, ha mégis elakadna, alább további információkat talál az olyan gyakori dolgokkal kapcsolatosan, amelyekkel esetleg szembetalálhatja magát.

> ### 4.1 A webszerver általános beállításai

> > Először is ellenőrizze, hogy webszerver alapbeállítás szerint az index.php fájlt használja-e (esetleg az index.html, default.htm stb. mellett).

> > Apache esetén ezt a httpd.conf állomány DirectoryIndex paraméteréből állapíthatja meg. Ez általában így néz ki:

> > >     DirectoryIndex index.php index.html index.htm

> > Ügyeljen arra, hogy a felsorolásban (a hatékonyság érdekében lehetőleg valahol elöl) szerepeljen az index.php.

> > Másodszor, ha Apache 2-t használ, kapcsolja be az AcceptPathInfo változót, amellyel engedélyezi, hogy a kódok olyan argumentumokat adjanak át, mint amilyen a http://server/file.php/arg1/arg2. Amellett, hogy elengedhetetlen a források közötti viszonylagos kapcsolatok engedélyezése, az Ön Moodle portáljára látogatók is teljesítményjavulást fognak tapasztalni. Ennek bekapcsolásához szúrja be az alábbi sort a httpd.conf állományba.

> > >     AcceptPathInfo on

> > Harmadszor, a Moodle megköveteli a PHP egy sor beállításának bekapcsolását. A legtöbb szerveren ez alapbeállításként jelenik meg. Ugyanakkor egyes PHP-szerverek esetén (és néhány újabb PHP-verzióban) a beállítások ezektől eltérőek lehetnek. Ezek a PHP konfigurációs állományában vannak megadva (melynek neve általában php.ini):

> > >     magic_quotes_gpc = 1    (lehetőleg, de nem elengedhetetlenül)
> > >     magic_quotes_runtime = 0    (mindenképpen)
> > >     file_uploads = 1
> > >     session.auto_start = 0
> > >     session.bug_compat_warn = 0

> > Ha szerverén nem éri el a httpd.conf vagy a php.ini állományt, vagy ha a Moodle-t a szerveren más beállítást kívánó alkalmazásokkal használja együtt, aggodalomra nincs ok, az alapbeállításokat FELÜLBÍRÁLHATJA.

> > Ehhez a Moodle fő könyvtárában egy .htaccess állományra van szüksége, amely tartalmazza az alábbi sorokat. Ez csak Apache szervereken működik, és csak akkor, ha engedélyezte az alapbeállításoknál az Overrides [felülbírál] opciót.

> > >     DirectoryIndex index.php index.html index.htm

> > >          AcceptPathInfo on

> > >     php_flag magic_quotes_gpc 1
> > >     php_flag magic_quotes_runtime 0
> > >     php_flag file_uploads 1
> > >     php_flag session.auto_start 0
> > >     php_flag session.bug_compat_warn 0

> > Emellett meghatározhatja például a feltölthető állományok maximális számát:

> > >     LimitRequestBody 0
> > >     php_value upload_max_filesize 2M
> > >     php_value post_max_size 2M

> > A legegyszerűbb megoldás, ha a mintafájlt átmásolja a lib/htaccess könyvtárból és megszerkeszti igényeinek megfelelően. Abban további utasítások találhatók. Például egy Unix héjprogramban:

> > >     cp lib/htaccess .htaccess

> ### 4.2 Adatbázis létrehozása

> > Adatbázisrendszerében létre kell hoznia egy üres adatbázist (pl. "moodle") egy speciális felhasználóval (pl. "moodleuser"), aki hozzáfér ehhez az adatbázishoz (és csakis ehhez). Tesztelési célra használhatja a "root" felhasználót, de élesben ennek a használata nem ajánlott: ha a hekkerek kiderítik a jelszavát, az egy helyett az egész adatbázisrendszer veszélybe kerülhet.

> > Ha internetes szolgáltató működteti a rendszerét, feltehetőleg rendelkezik az adatbázisa létrehozásához egy kezelői felülettel.

> > A Cpanel rendszer az egyik közkedvelt ilyesfajta rendszer. Az adatbázis Cpanel segítségével való létrehozásához

> > 1. Kattintson a "MySQL Databases" ikonra.
> > 2. Az adatbázismezőbe írja be a "moodle"-t, majd kattintson az "Add Database" [Adatbázis hozzáadása] pontra.
> > 3. Írjon be egy felhasználói nevet és egy jelszót (ne olyat, amilyet máshol már használ), majd kattintson az "Add User" [Felhasználó hozzáadása] pontra.
> > 4. Az "Add User to Database" [Felhasználó hozzáadása az adatbázishoz] gombbal adjon a felhasználónak mindenre kiterjedő jogosultságot az "ALL" kiválasztásával.
> > 5. Ne feledje, hogy a felhasználói névhez és az adatbázisok nevéhez előtagként beszúródhat az Ön felhasználói neve. Ezen adatok megadása során használjon teljes nevet.

> > Ha használhatja a Unix parancssorát, ugyanezt elérheti parancsok begépelésével is.

> > Íme néhány Unix parancssor az MySQL-hez:

> >        # mysql -u root -p
> >        > CREATE DATABASE moodle;
> >        > GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON moodle.*
> >                TO moodleuser@localhost IDENTIFIED BY 'jelszava';
> >        > quit
> >        # mysqladmin -p reload

> > Ez pedig néhány parancssor a PostgreSQL-hez:

> >        # su - postgres
> >        > psql -c "create user moodleuser createdb;" template1
> >        > psql -c "create database moodle;" -U moodleuser template1
> >        > psql -c "alter user moodleuser nocreatedb;" template1

> ### 4.3 Adatkönyvtár létrehozása

> > A Moodle-nak némi tárhelyre lesz szüksége a szerver merevlemezén a feltöltött állományok tárolására, például kurzusdokumentumok és felhasználói képek tárolására.

> > A Moodle telepítője megpróbálja létrehozni ezt a könyvtárat, ha nem sikerül, akkor kézzel kell ezt elvégeznie.

> > Biztonsági okokból célszerű ezt a könyvtárat interneten keresztül NEM hozzáférhetőre beállítani. Ennek a legegyszerűbb módja, ha az internetes könyvtáron KÍVÜL helyezi el. Ha mégis az internetes könyvtáron belül kell elhelyeznie, védje le oly módon, hogy az adatkönyvtárban létrehoz egy .htaccess nevű állományt, benne az alábbi sorral:

> > >     deny from all
> > >     AllowOverride None

> > Annak ellenőrzésére, hogy a Moodle az ezen könyvtárba feltöltött állományokat el tudja menteni, győződjön meg arról, hogy a webszerver szoftvere (pl. az Apache) rendelkezik-e a könyvtárhoz olvasási, írási és futtatási joggal.

> > Unix gépek esetén ez azt jelenti, hogy a könyvtár tulajdonosát pl. "senki" vagy "apache" értékre kell beállítani, majd a felhasználónak olvasási, írási és futtatási jogosultságot kell biztosítani.

> > Cpanel rendszerek esetén a "File Manager"-rel keresse ki a mappát, kattintson rá, majd válasza a "Change Permissions" [Engedélyek módosítása] pontot. Számos osztott szerveren előírás az állományokhoz való hozzáférés "csoportra" korlátozása (hogy más szerverhasználók ne nyúlhassanak az állományaihoz), de mindenki másnak teljes írási/olvasási jogosultságot biztosítanak (így a webszerver elérheti az Ön állományait).

> > Ha a biztonságos beállítást illetően bizonytalan, forduljon a rendszergazdához. Egyes portálokon, ahol a PHP-t "Safe Mode" nevű biztonságos üzemmódban használják, a rendszergazdát kell megkérni a könyvtár megfelelő beállítására.

### 5. A beállítások folytatásához áttérés a rendszergazda oldalára

> Ha a fenti lépés során sikerült a config.php-t létrehozni, térjen át portálja címoldalára, mellyel a beállítás további lépéseihez átkerül a "rendszergazda" oldalára.

> A rendszergazda oldalának első behívásakor először a GPL szoftverhasználati szerződés feltételeivel kell egyetértenie a beállítás folytatásához.

> Ezután a Moodle elkezdni létrehozni az adatbázisát és az adatok tárolására használandó táblázatokat. Ekkor egy sor SQL-parancsot lát a hozzájuk tartozó (zöld vagy piros) üzenetekkel, pl.:

> > CREATE TABLE course ( id int(10) unsigned NOT NULL auto_increment, category int(10) unsigned NOT NULL default '0', password varchar(50) NOT NULL default '', fullname varchar(254) NOT NULL default '', shortname varchar(15) NOT NULL default '', summary text NOT NULL, format tinyint(4) NOT NULL default '1', teacher varchar(100) NOT NULL default 'Teacher', startdate int(10) unsigned NOT NULL default '0', enddate int(10) unsigned NOT NULL default '0', timemodified int(10) unsigned NOT NULL default '0', PRIMARY KEY (id)) TYPE=MyISAM

> > SUCCESS

> ...stb., majd ezt követően: A fő adatbázisok létrehozása sikerült....

> > Ha nem lát ilyen üzeneteket, akkor az adatbázissal vagy a config.php állományban megadott beállításokkal lehet valami gond. Ellenőrizze, hogy a PHP nincs-e "Safe Mode"-ra korlátozva (egyes kereskedelmi szolgáltatók ezt időnként bekapcsolják). A PHP változóit ellenőrizheti egy kis fájl létrehozásával, melynek tartalma . Hívja be az állományt a böngészővel, ellenőrizze a megjelenő információkat, majd próbálkozzék újból.

> Menjen le az oldal legaljára és nyomja meg a "Tovább" gombot.

> Ekkor egy űrlapot lát, ahol további változókat állíthat be, például az alapbeállítás szerinti nyelvet, az SMTP-gazdagépeket stb. Ezen a ponton nem kell sokat törődnie az összes változó pontos beállításával, mert később bármikor lesz még lehetősége visszatérni ide és a rendszergazda-felületen keresztül szerkeszteni az adatokat. Az alapértékek úgy vannak kialakítva, hogy megfelelőek legyenek a legtöbb portál esetén. Térjen át a lap aljára és kattintson a "Változások mentése" pontra.

> > Ha ezen az oldalon elakad és nem tud továbblépni, akkor szervere feltehetőleg "hibás hivatkozást" észlel. Ez könnyen kiküszöbölhető: kapcsolja ki a "secureforms" beállítást, majd próbálkozzék újból.

> Ezután további oldalak jelennek meg egy sor üzenettel a Moodle különböző moduljai számára szükséges táblázatok létrehozásának megfelelően. Mint korábban, ezeknek az üzeneteknek is zöld színben kell megjelenni.

> Az oldalak legaljára lapozva nyomja meg a "Tovább" gombot.

> A következő oldalon a Moodle portáljához és a címoldalhoz határozhat meg beállításokat, például a nevét, a formáját, a leírását stb. Töltse ki az oldalt (bármikor visszatérhet ide és módosíthatja a beállításokat), majd nyomja meg a "Változások mentése" gombot.

> Végezetül létre kell hoznia egy rendszergazdát a rendszergazdához tartozó oldalak későbbi eléréséhez. Adja meg a nevét, az e-mail címét stb., majd kattintson a "Változások mentése" gombra. Nem minden mezőt szükséges kitölteni, ha pedig kihagyja valamelyik fontos mezőt, a rendszer figyelmezteti erre.

> > > > > > Ne feledje el megjegyezni a rendszergazdaként megadott felhasználói nevet és jelszót, mivel ezekkel fog tudni a későbbiek folyamán belépni a rendszergazda oldalára.

> > (Ha a telepítés valamilyen okból félbeszakad, illetve ha egy rendszerhiba miatt nem tudja használni rendszergazda-felhasználó nevét, általában be tud jelentkezni az "admin" felhasználónévvel és az "admin" jelszóval.)

> Ha sikerült a telepítés, új portálja címoldalára fog kerülni! Figyelje meg az oldal bal szélén megjelenő rendszergazda-ugrópontokat (ezek megjelennek egy külön Rendszergazda-oldalon is) - ezeket csak azért látja, mert rendszergazdaként jelentkezett be. A Moodle összes adminisztrációs feladatát ezen menüvel láthatja el, ideértve a:

> - kurzusok létrehozását és törlését
> - felhasználók létrehozását és adataik szerkesztését
> - tanári azonosítók létrehozását és adataik szerkesztését
> - egész portálra érvényes beállításokat, például sablonoknak megfelelő témákat stb.

> A telepítés azonban ezzel még nem ért véget! Hátravan még egy nagyon fontos teendő (lásd a cron leírását tartalmazó részt).

### 6. A cron beállítása -- FONTOS!

> A Moodle egyes moduljai a feladatok folyamatos elvégzéséhez rendszeres ellenőrzést igényelnek. Például a Moodle-nak ellenőrizni kell a vitafórumokat és postáznia kell az üzeneteket minden feliratkozott személy részére.

> Az ezt végrehajtó kód a rendszergazda könyvtárában van, elnevezése: cron.php. A kód azonban magától nem tud lefutni, ezért gondoskodni kell annak rendszeres (pl. öt vagy tíz percenkénti) lefutásáról. Ezzel létrejön egyfajta "szívritmus", mely révén az egyes modulok által megkívánt funkciók rendszeres időközönként végrehajtódnak. Ennek a rendszeresen lefutó mechanizmusnak cron szerviz a neve.

> Megjegyzendő, hogy a cron futtatását végző programnak nem szükséges a Moodle-t futtató számítógépen lennie. Ha például az internetes szolgáltató nem biztosítja a cron szervizt, dönthet úgy, hogy egy másik szerverről vagy otthoni gépéről futtatja. Mindössze az a fontos, hogy a cron.php állomány rendszeresen lefusson.

> A kód nem jelent túl nagy terhelést a gép erőforrásaira, így az 5 percenkénti futtatás nem jelenthet gondot. Ha mégis aggódna az erőforrások leterhelése miatt, futtatását kinyújthatja 15 vagy akár 30 perces időközökre is. Jobb azonban ezt az időszakot nem túl hosszúra hagyni, mert a levélküldés lelassíthatja a kurzuson belüli tevékenységeket.

> Először is ellenőrizze a kód működését a böngészővel:

> >     http://example.com/moodle/admin/cron.php

> Ezután kézzel be kell állítania a kód rendszeres automatikus lefutását.

> #### Windows rendszereken

> > A legegyszerűbb megoldás, ha a moodle-cron-for-windows.zip csomagot használja, amellyel egy kis Windows szolgáltatást telepíthet. Lefuttatja, aztán el is felejtheti!

> Internetes szolgáltatók szerverén

> > Internetes vezérlőpanelje tartalmazhat egy weboldalt, amelyről telepítheti a cron folyamatot. Például a Cpanel rendszerben keresse meg a "Cron jobs" feliratú gombot. Itt előkeresheti ugyanazokat a Unixparancsokat, mint amelyekkel alább találkozik.

> #### A parancssor használata Unix alatt

> > Különféle parancssori programokat használhat az oldal parancssorból való behívására. Előfordulhat, hogy egy-egy szerveren nem mindegyik áll rendelkezésre.

> > Használhatja például a Unix 'wget' segédprogramját:

> > >     wget -q -O /dev/null http://example.com/moodle/admin/cron.php

> > Ebben a példában a kimenet elvész (/dev/null).

> > Ugyanez a lynx használata esetén:

> > >     lynx -dump http://example.com/moodle/admin/cron.php > /dev/null

> > Másik megoldásként használhat egy önálló PHP-verziót, amely parancssorból futtatható. Ennek az az előnye, hogy a webszerver naplóit nem töltik ki a cron.php folyamatos futtatásának eredményei. Hátránya, hogy rendelkeznie kell a php parancssori változatával.

> > >     /opt/bin/php /web/moodle/admin/cron.php

> #### A crontab program használata Unix alatt

> > A Cpanel internetes interfészt biztosít a Unix crontab nevű segédprogramjához. Ha eléri a parancssort, egyedül is beállíthatja a crontab használatát az alábbi paraccsal:

> > >     crontab -e

> > és a fenti parancsok valamelyikének hozzáadásával, pl:

> > >     */5 * * * * wget -q -O /dev/null http://example.com/moodle/admin/cron.php

> > A "crontab" paranccsal általában a 'vi' szerkesztőbe kerül. Az "i" megnyomásával beszúró üzemmódba kerül, ezután gépelje be a fenti sort, majd az ESC lenyomásával lépjen ki a beszúró üzemmódból. Mentéshez és kilépéshez használja a ":wq" parancsot, mentés nélküli kilépéshez pedig a ":q!"-t (idézőjelek nélkül).

### 7. Új kurzus létrehozása

> Most, hogy a Moodle megfelelően működik, megpróbálkozhat egy új kurzus próbaképpeni létrehozásával.

> Az Adminisztráció oldalról (vagy a címoldalról az adminisztrációs ugrópontokról) válassza az "Új kurzus hozzáadása" menüpontot.

> Töltse ki a lapot, ügyeljen a kurzus formájára. A részletekkel most még nem kell túl sokat törődnie, mivel a tanár a későbbiekben bármit módosíthat. A sárga súgót jelző ikonok segítségével bármilyen témával kapcsolatosan a környezethez kapcsolódó segítséget kaphat.

> Nyomja meg a "Változások mentése" gombot. Egy újabb űrlapon lehetősége lesz tanárokat hozzáadni a kurzushoz. Erről az űrlapról csak meglévő tanárokat adhat a kurzushoz - ha új tanárt kíván felvenni a rendszerbe, vagy kérje meg őt, hogy regisztráltassa magát (lásd a bejelentkezési oldalt), vagy hozzon létre egyet az Adminisztráció oldalon az "Új felhasználónév és jelszó létrehozása" menüpont segítségével.

> Ha elkészült, a kurzus készen áll a testre szabásra, emellett elérhető a címoldal "Kurzusok" ugrópontjáról.

> A kurzusok létrehozásával kapcsolatosan lásd a "Tanári kézikönyvet".

> Kellemes felfedezést és sikeres oktatási élményt kívánunk a Moodle használatához!

> Ha megtetszett a Moodle, vegye fontolóra az adománnyal való támogatás lehetőségét, mellyel segíthet bennünket költségeink fedezésében!