diff options
Diffstat (limited to 'hu_HU.ISO8859-2/books/handbook')
17 files changed, 2470 insertions, 453 deletions
diff --git a/hu_HU.ISO8859-2/books/handbook/Makefile b/hu_HU.ISO8859-2/books/handbook/Makefile index 5cfa55bbe0..3095cd24cd 100644 --- a/hu_HU.ISO8859-2/books/handbook/Makefile +++ b/hu_HU.ISO8859-2/books/handbook/Makefile @@ -4,7 +4,7 @@ # $FreeBSD$ # %SOURCE% en_US.ISO8859-1/books/handbook/Makefile -# %SRCID% 1.109 +# %SRCID% 1.110 # # Build the FreeBSD Handbook. # @@ -209,6 +209,7 @@ IMAGES_LIB+= callouts/15.png SRCS+= audit/chapter.sgml SRCS+= book.sgml SRCS+= colophon.sgml +SRCS+= dtrace/chapter.sgml SRCS+= freebsd-glossary.sgml SRCS+= advanced-networking/chapter.sgml SRCS+= basics/chapter.sgml @@ -220,6 +221,7 @@ SRCS+= desktop/chapter.sgml SRCS+= disks/chapter.sgml SRCS+= eresources/chapter.sgml SRCS+= firewalls/chapter.sgml +SRCS+= filesystems/chapter.sgml SRCS+= geom/chapter.sgml SRCS+= install/chapter.sgml SRCS+= introduction/chapter.sgml @@ -239,6 +241,7 @@ SRCS+= preface/preface.sgml SRCS+= printing/chapter.sgml SRCS+= security/chapter.sgml SRCS+= serialcomms/chapter.sgml +SRCS+= updating/chapter.sgml SRCS+= users/chapter.sgml SRCS+= vinum/chapter.sgml SRCS+= virtualization/chapter.sgml diff --git a/hu_HU.ISO8859-2/books/handbook/basics/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/basics/chapter.sgml index 5cd83de8b6..7ac5935599 100644 --- a/hu_HU.ISO8859-2/books/handbook/basics/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/basics/chapter.sgml @@ -7,7 +7,7 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/basics/chapter.sgml - %SRCID% 1.153 + %SRCID% 1.154 --> <chapter id="basics" lang="hu"> @@ -888,7 +888,202 @@ total 530 javasoljuk, hogy ezzel kapcsolatban a &man.chflags.1; és &man.chflags.2; man oldalakat tanulmányozzák át.</para> + </sect2> + + <sect2> + <sect2info> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Készítette: </contrib> + </author> + </authorgroup> + </sect2info> + + <title>A setuid, setgid és sticky engedélyek</title> + + <para>A korábban említett engedélyeken + kívül létezik még további + három, amelyekkel minden rendszergazdának illik + tisztában lennie. Ezek név szerint a + <literal>setuid</literal>, <literal>setgid</literal> és + <literal>sticky</literal> típusú + engedélyek.</para> + + <para>Ezek a beállítások bizonyos &unix; + mûveletek esetén nagyon fontosak, mivel az + átlagos felhasználók számára + általában el nem érhetõ + funkciók használatát + támogatják. A + megértésükhöz elsõként a + felhasználók valódi és + effektív azonosítója közti + különbségeket kell tisztáznunk.</para> + + <para>A valódi azonosító + tulajdonképpen az a felhasználói + azonosító, amellyel a programot indítjuk el + vagy futás elõtt birtokoljuk. A program + futása közben azonban az effektív + felhasználói azonosítóval fut. + Például a &man.passwd.1; segédprogram a + jelszavát megváltoztatni + kívánó felhasználó + valódi azonosítójával indul, + miközben a jelszavakat tároló + adatbázis elérésékor már a + <username>root</username> felhasználó + effektív azonosítójával fut. + Ezáltal a privilegiumokkal nem rendelkezõ + felhasználók is meg tudják + anélkül változtatni a jelszavaikat, hogy a + <errorname>Permission Denied</errorname> hibaüzenettel + találkoznának.</para> + + <note> + <para>A &man.mount.8; <literal>nosuid</literal> + beállításával azonban az ilyen + típusú binárisok minden + különösebb jel nélkül + csõdöt fognak mondani. Mellesleg a &man.mount.8; + man oldala szerint ez az opció nem is teljesen + megbízható, mivel <literal>nosuid</literal> + wrapperek segítségével meg lehet + kerülni.</para> + </note> + + <para>Ahogy azt az alábbi példa is + szemlélteti, a setuid engedélyt a többi + elé egy négyes (4) + beszúrásával tudjuk + beállítani:</para> + + <screen>&prompt.root; <userinput>chmod 4755 suidexample.sh</userinput></screen> + + <para>A + <filename><replaceable>suidexample.sh</replaceable></filename> + állomány engedélyei ezt követõen + már így fognak megjelenni:</para> + + <screen>-rwsr-xr-x 1 trhodes trhodes 63 Aug 29 06:36 suidexample.sh</screen> + + <para>Most már jól látható, hogy az + állomány tulajdonosához tartozó + engedélyek között a + végrehajthatóságot szabályozó + bit lecserélõdött egy <literal>s</literal> + bitre. Ennek köszönhetõen a + <command>passwd</command> parancshoz hasonló módon + kibõvített engedélyekkel leszünk + képesek futtatni programokat.</para> + + <para>Két terminál megnyitásával + mindezt valós idõben is megvizsgálhatjuk. Az + egyiken indítsuk el normál + felhasználóként a <command>passwd</command> + programot. Miközben a program várakozik az + új jelszó megadására, a másik + terminálon kérdezzük le a programhoz + tartozó felhasználói + információkat.</para> + + <para>Tehát az egyik terminálon a + következõt látjuk:</para> + + <screen>&prompt.user; <userinput>passwd</userinput> +Changing local password for trhodes +Old Password:</screen> + + <para>Eközben pedig a másikon:</para> + + <screen>&prompt.root; <userinput>ps aux | grep passwd</userinput> +trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd +root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01 passwd</screen> + + <para>A <command>passwd</command> parancsot egyszerû + felhasználóként adtunk ki, azonban + jól látható valójában a + <username>root</username> felhasználó + azonosítójával fut.</para> + + <para>A <literal>setgid</literal> a <literal>setuid</literal> + engedélyhez hasonlóan mûködik, + egyedül annyiban tér el, hogy a csoportra + vonatkozó beállításokat + módosítja. Amikor egy alkalmazást vagy + segédprogramot ilyen engedéllyel futtatunk, akkor + az adott programot birtokló csoport engedélyeit + kapjuk meg.</para> + + <para>Úgy tudjuk állományokon + beállítani a <literal>setgid</literal> + típusú engedélyt, ha az iménti + példához hasonlóan a + <command>chmod</command> parancs hívásakor + még egy kettest (2) írunk az engedélyek + elé:</para> + + <screen>&prompt.root; <userinput>chmod 2755 suidexample.sh</userinput></screen> + <para>Az így beállított engedélyek az + elõbbihöz hasonló módon + szemlélhetõek meg, azonban ebben az esetben a + csoporthoz tartozó engedélyeknél jelenik + meg az <literal>s</literal> bit:</para> + + <screen>-rwxr-sr-x 1 trhodes trhodes 44 Aug 31 01:49 suidexample.sh</screen> + + <note> + <para>Az elõbb tárgyalt példákkal + kapcsolatban fontos megemlítenünk, hogy habár + a szkriptek is végrehajtható + állományok, nem fognak a valóditól + eltérõ effektív felhasználói + azonosítóval futni. Ennek oka abban + keresendõ, hogy a parancssori szkriptek nem + hívhatják a &man.setuid.2; + rendszerhívást.</para> + </note> + <para>Ez a két speciális engedély (a + <literal>setuid</literal> és a <literal>setgid</literal>) a + programhoz tartozó engedélyek + kiterjesztésével csökkentheti + rendszerünk biztonságát. Ezzel szemben + viszont a harmadik bemutatandó speciális + engedély rendszerünk védelmének + erõsítésére szolgál: ez az + ún. <literal>sticky</literal> bit.</para> + + <para>Ha a <literal>sticky</literal> típusú + engedélyt könyvtárra adjuk meg, akkor a benne + levõ állományok törlését + kizárólag azok tulajdonosainak engedi. Ezzel az + engedéllyel lényegében a <filename + class="directory">/tmp</filename> könyvtárhoz + hasonló nyilvános, bárki által + elérhetõ könyvtárakban + akadályozhatjuk meg az állományok idegen + felhasználók általi + törlését. Az engedély + beállításához egy egyest (1) kell a + többi elé fûznünk, mint + például:</para> + + <screen>&prompt.root; <userinput>chmod 1777 /tmp</userinput></screen> + + <para>Most már az <command>ls</command> parancs + segítségével láthatjuk ennek a + hatását:</para> + + <screen>&prompt.root; <userinput>ls -al / | grep tmp</userinput> +drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmp</screen> + + <para>A <literal>sticky</literal> bit a + beállítások végén + felbukkanó <literal>t</literal> révén + azonosítható be.</para> </sect2> </sect1> diff --git a/hu_HU.ISO8859-2/books/handbook/book.sgml b/hu_HU.ISO8859-2/books/handbook/book.sgml index c5c50fb5f9..4705cb406b 100644 --- a/hu_HU.ISO8859-2/books/handbook/book.sgml +++ b/hu_HU.ISO8859-2/books/handbook/book.sgml @@ -7,7 +7,7 @@ The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/book.sgml - %SRCID% 1.172 + %SRCID% 1.173 --> <!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [ @@ -54,6 +54,9 @@ <!ENTITY % chap.freebsd-glossary "IGNORE"> <!ENTITY % chap.mac "IGNORE"> <!ENTITY % chap.audit "IGNORE"> +<!ENTITY % chap.filesystems "IGNORE"> +<!ENTITY % chap.dtrace "IGNORE"> +<!ENTITY % chap.updating "IGNORE"> <!ENTITY % pgpkeys SYSTEM "../../../share/pgpkeys/pgpkeys.ent"> %pgpkeys; ]> @@ -315,10 +318,12 @@ <![ %chap.audit; [ &chap.audit; ]]> <![ %chap.disks; [ &chap.disks; ]]> <![ %chap.geom; [ &chap.geom; ]]> + <![ %chap.filesystems; [ &chap.filesystems; ]]> <![ %chap.vinum; [ &chap.vinum; ]]> <![ %chap.virtualization; [ &chap.virtualization; ]]> <![ %chap.l10n; [ &chap.l10n; ]]> <![ %chap.cutting-edge; [ &chap.cutting-edge; ]]> + <![ %chap.dtrace; [ &chap.dtrace; ]]> </part> <part id="network-communication"> @@ -370,6 +375,7 @@ tudjuk.</para> </partintro> + <![ %chap.updating; [ &chap.updating; ]]> <![ %chap.serialcomms; [ &chap.serialcomms; ]]> <![ %chap.ppp-and-slip; [ &chap.ppp-and-slip; ]]> <![ %chap.mail; [ &chap.mail; ]]> diff --git a/hu_HU.ISO8859-2/books/handbook/chapters.ent b/hu_HU.ISO8859-2/books/handbook/chapters.ent index b0ebb3e8f2..235199ff30 100644 --- a/hu_HU.ISO8859-2/books/handbook/chapters.ent +++ b/hu_HU.ISO8859-2/books/handbook/chapters.ent @@ -11,7 +11,7 @@ $FreeBSD$ %SOURCE% en_US.ISO8859-1/books/handbook/chapters.ent - %SRCID% 1.37 + %SRCID% 1.38 --> <!ENTITY chap.preface SYSTEM "preface/preface.sgml"> @@ -40,12 +40,15 @@ <!ENTITY chap.audit SYSTEM "audit/chapter.sgml"> <!ENTITY chap.disks SYSTEM "disks/chapter.sgml"> <!ENTITY chap.geom SYSTEM "geom/chapter.sgml"> +<!ENTITY chap.filesystems SYSTEM "filesystems/chapter.sgml"> <!ENTITY chap.vinum SYSTEM "vinum/chapter.sgml"> <!ENTITY chap.virtualization SYSTEM "virtualization/chapter.sgml"> <!ENTITY chap.l10n SYSTEM "l10n/chapter.sgml"> <!ENTITY chap.cutting-edge SYSTEM "cutting-edge/chapter.sgml"> +<!ENTITY chap.dtrace SYSTEM "dtrace/chapter.sgml"> <!-- Part four --> +<!ENTITY chap.updating SYSTEM "updating/chapter.sgml"> <!ENTITY chap.serialcomms SYSTEM "serialcomms/chapter.sgml"> <!ENTITY chap.ppp-and-slip SYSTEM "ppp-and-slip/chapter.sgml"> <!ENTITY chap.mail SYSTEM "mail/chapter.sgml"> diff --git a/hu_HU.ISO8859-2/books/handbook/disks/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/disks/chapter.sgml index 659c505cfc..f7d2a8004b 100644 --- a/hu_HU.ISO8859-2/books/handbook/disks/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/disks/chapter.sgml @@ -1,13 +1,13 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/hu_HU.ISO8859-2/books/handbook/disks/chapter.sgml,v 1.2 2008/06/25 11:28:06 gabor Exp $ + $FreeBSD$ --> <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/disks/chapter.sgml - %SRCID% 1.286 + %SRCID% 1.287 --> <chapter id="disks" lang="hu"> @@ -1181,10 +1181,13 @@ add path 'da*' mode 0660 group operator</programlisting> néven (ahol a <replaceable>felhasználó</replaceable> nevet cseréljük a tényleges - felhasználó nevére):</para> + felhasználó nevére, a + <replaceable>csoport</replaceable> nevet pedig a + felhasználóhoz tartozó elsõdleges + csoport nevére):</para> <screen>&prompt.root; <userinput>mkdir /mnt/<replaceable>felhasználó</replaceable></userinput> -&prompt.root; <userinput>chown <replaceable>felhasználó</replaceable>:<replaceable>felhasználó</replaceable> /mnt/<replaceable>felhasználó</replaceable></userinput></screen> +&prompt.root; <userinput>chown <replaceable>felhasználó</replaceable>:<replaceable>csoport</replaceable> /mnt/<replaceable>felhasználó</replaceable></userinput></screen> <para>Most tegyük fel, hogy csatlakoztatnuk egy USB pen drive-ot és ennek megfelelõen megjelenik a @@ -1193,7 +1196,7 @@ add path 'da*' mode 0660 group operator</programlisting> állományrendszert tesznek, ezért így kell ezeket csatlakoztatni a &man.mount.8; paranccsal:</para> - <screen>&prompt.user; <userinput>mount -t msdosfs -m 644 -M 755 /dev/da0s1 /mnt/<replaceable>felhasználó</replaceable></userinput></screen> + <screen>&prompt.user; <userinput>mount -t msdosfs -o -m=644,-M=755 /dev/da0s1 /mnt/<replaceable>felhasználó</replaceable></userinput></screen> <para>Ha leválasztjuk az eszközt (miután kiadtuk a &man.umount.8; parancsot), akkor a diff --git a/hu_HU.ISO8859-2/books/handbook/dtrace/Makefile b/hu_HU.ISO8859-2/books/handbook/dtrace/Makefile new file mode 100644 index 0000000000..48e9f06fc2 --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/dtrace/Makefile @@ -0,0 +1,18 @@ +# +# Build the Handbook with just the content from this chapter. +# +# %SOURCE% en_US.ISO8859-1/books/handbook/dtrace/Makefile +# %SRCID% 1.1 +# +# $FreeBSD$ +# + +CHAPTERS= dtrace/chapter.sgml + +VPATH= .. + +MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX} + +DOC_PREFIX?= ${.CURDIR}/../../../.. + +.include "../Makefile" diff --git a/hu_HU.ISO8859-2/books/handbook/dtrace/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/dtrace/chapter.sgml new file mode 100644 index 0000000000..1e78ec47e5 --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/dtrace/chapter.sgml @@ -0,0 +1,480 @@ +<!-- + The FreeBSD Documentation Project + $FreeBSD$ +--> + +<!-- The FreeBSD Hungarian Documentation Project + Translated by: PALI, Gabor <pgj@FreeBSD.org> + %SOURCE% en_US.ISO8859-1/books/handbook/dtrace/chapter.sgml + %SRCID% 1.1 +--> + +<chapter id="dtrace" lang="hu"> + <chapterinfo> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Írta: </contrib> + </author> + </authorgroup> + </chapterinfo> + + <title>DTrace</title> + + <para>A DTrace, vagy más néven Dynamic Tracing + technológiát a &sun; dolgozta ki szerverek + teljesítményében jelentkezõ szûk + keresztmetszetek felderítésének + megkönnyítésére. Ez nem egy + nyomkövetésre szolgáló megoldást + takar, hanem inkább a rendszer valós idejû + elemzését és + teljesítményének vizsgálatát + elõsegítõ eszközt.</para> + + <para>A DTrace figyelemre méltó elemzõeszköz, + rengeteg rendkívül hasznos képességgel + rendelkezik a rendszerben felbukkanó problémák + diagnosztizálására. Elõre programozott + szkriptek segítségével pedig ezen + képességek további elõnyeit tudjuk + kihasználni, ugyanis a DTrace programozható egy + ún. D nyelven, amelynek révén a + különbözõ vizsgálatokat könnyen a + saját igényeink szerint tudjuk + alakítani.</para> + + <sect1 id="dtrace-synopsis"> + <title>Áttekintés</title> + + <indexterm><primary>DTrace</primary></indexterm> + <indexterm> + <primary>DTrace támogatás</primary> + <see>DTrace</see> + </indexterm> + + <para>A fejezet elolvasása során + megismerjük:</para> + + <itemizedlist> + <listitem> + <para>mi is az a DTrace és milyen lehetõségei + vannak;</para> + </listitem> + + <listitem> + <para>a &solaris; és &os; operációs + rendszereken megtalálható DTrace + implementációk közti + eltéréseket;</para> + </listitem> + + <listitem> + <para>a DTrace &os; alatt hogyan engedélyezhetõ + és használható.</para> + </listitem> + </itemizedlist> + + <para>A fejezet elolvasásához ajánlott:</para> + + <itemizedlist> + <listitem> + <para>a &unix; és &os; alapvetõ ismerete (<xref + linkend="basics">);</para> + </listitem> + + <listitem> + <para>a rendszermag konfigurációjának + és fordításának alapvetõ + ismerete (<xref linkend="kernelconfig">);</para> + </listitem> + + <listitem> + <para>az operációs rendszerek és azon + belül a &os; biztonsági fogalmainak minimális + ismerete (<xref linkend="security">);</para> + </listitem> + + <listitem> + <para>a &os; forrásainak megszerzésének + és azok lefordításának ismerete + (<xref linkend="cutting-edge">).</para> + </listitem> + </itemizedlist> + + <warning> + <para>Ez a funkció még folyamatos tesztelés + alatt áll. Bizonyos részei még + egyáltalán nem, vagy csak korlátozottan + érhetõek el. A dokumentáció annak + megfelelõen fog majd változni, hogy ezek az elemek + fokozatosan elérik az éles + felhasználáshoz szükséges + szintet.</para> + </warning> + </sect1> + + <sect1 id="dtrace-implementation"> + <title>Eltérések az + implementációban</title> + + <para>Noha a &os; alatt megtalálható DTrace + implementáció nagyon hasonló az eredeti, + &solaris; alatt futó változathoz, tartalmaz bizonyos + különbségeket, amelyeket a + továbblépés elõtt mindenképpen + érdemes megemlítenünk. Az egyik legfontosabb + ilyen szembetûnõ különbség, hogy a &os; + esetén a DTrace használatát külön + engedélyezni kell. A DTrace megfelelõ + mûködéséhez tehát a rendszermag + konfigurációs állományában meg + kell adnunk bizonyos beállításokat és + modulokat kell betöltenünk. Ezekrõl hamarosan + szó lesz.</para> + + <para>A rendszermag konfigurációs + állományában a <literal>DDB_CTF</literal> + opció segítségével tudjuk + engedélyezni ún. <acronym>CTF</acronym> adatok + betöltését mind a rendszermag + moduljaiból, mind pedig magából a + rendszermagból egyaránt. A <acronym>CTF</acronym> a + &solaris; <quote>Compressed Type Format</quote> + elnevezésû formátumára utal, amellyel + például a <acronym>DWARF</acronym> + megoldásához hasonló módon + tárolhatunk tömörített alakban + különbözõ típusú + nyomkövetési információkat. Ilyen + <acronym>CTF</acronym> adatok többek közt a + <command>ctfconvert</command> és a + <command>ctfmerge</command> használatával + rendelhetõek hozzá bináris + állományokhoz. A <command>ctfconvert</command> + segédprogram a fordítóprogram által az + <acronym>ELF</acronym> állományokban szereplõ + <acronym>DWARF</acronym> típusú szakaszokban + tárolt információkat képes beolvasni, + és a <command>ctfmerge</command> a + tárgykódban található + <acronym>CTF</acronym> típusú <acronym>ELF</acronym> + szakaszokat tudja végrehajtható + állományokká vagy osztott + könyvtárakka összefûzni. Röviden + beszélni fogunk arról, hogyan lehet mindezeket a + &os; alaprendszerébe és rendszermagjába is + beépíteni.</para> + + <para>&os; és &solaris; esetén elõfordulhat, hogy + más fajta providerek állnak + rendelkezésünkre. Ezek közül talán a + legfontosabb a <literal>dtmalloc</literal>, amely a &os; + rendszermagjában típus szerint teszi + lehetõvé a <function>malloc()</function> + függvény követését.</para> + + <para>&os; alatt kizárólag csak a + <username>root</username> tudja használni a DTrace-t. Ennek + oka a két operációs rendszer + biztonsági megoldásai közti + különbségekben keresendõ, mivel a &solaris; + esetén létezik néhány olyan + alacsonyszintû ellenõrzés, amely a + &os;-nél még nincs. Ezért + például a <devicename>/dev/dtrace/dtrace</devicename> + eszköz szigorúan csak a <username>root</username> + számára érhetõ el.</para> + + <para>Végezetül megemlítjük, hogy a DTrace + felhasználására a &sun; <acronym>CDDL</acronym> + licence vonatkozik. A <literal>Common Development and + Distribution License</literal> &os; a + <filename>/usr/src/cddl/contrib/opensolaris/OPENSOLARIS.LICENSE</filename> + állományban található, vagy interneten + keresztül a <ulink + url="http://www.opensolaris.org/os/licensing"></ulink> + címen.</para> + + <para>Ezen licenc értelmében a DTrace + támogatással készített &os; + rendszermagok továbbra is <acronym>BSD</acronym> + licencûek maradnak, azonban a rendszerrel terjesztett + binárisok futtatásakor vagy a modulok + betöltésekor már a <acronym>CDDL</acronym> + érvényesül.</para> + </sect1> + + <sect1 id="dtrace-enable"> + <title>A DTrace támogatásának + engedélyezése</title> + + <para>A DTrace által felkínált + lehetõségeket a következõ sorok + hozzáadásával tudjuk engedélyezni a + rendszermag konfigurációs + állományában:</para> + + <programlisting>options KDTRACE_HOOKS +options DDB_CTF</programlisting> + + <note> + <para>AMD64 architektúrán ezeken kívül + még az alábbi sor is kelleni fog:</para> + + <programlisting>options KDTRACE_FRAME</programlisting> + + <para>Ezzel a beállítással az + <acronym>FBT</acronym> (<quote>function boundary tracing</quote>) + részére nyújtunk támogatást. + A DTrace ugyan enélkül is képes lesz + mûködni, de akkor csak korlátozott + mértékben tudunk ilyen típusú + vizsgálatokat végezni.</para> + </note> + + <para>Az egész rendszert újra kell fordítanunk + a <acronym>CTF</acronym> használatával. Ennek + elvégzéséhez a következõ + parancsokat kell kiadnunk:</para> + + <screen>&prompt.root; <userinput>cd /usr/src</userinput> +&prompt.root; <userinput>make WITH_CTF=1 buildworld</userinput> +&prompt.root; <userinput>make WITH_CFT=1 kernel</userinput> +&prompt.root; <userinput>make WITH_CFT=1 installworld</userinput> +&prompt.root; <userinput>mergemaster -Ui</userinput></screen> + + <para>A fordítás befejezõdése után + indítsuk újra a rendszerünket.</para> + + <para>A rendszer újraindulása és az új + rendszermag betöltõdése után + szükségünk lesz egy Korn-féle + parancsértelmezõre is, mivel a DTrace + eszköztárában rengeteg, a + <command>ksh</command> programra épülõ + eszközt fogunk találni. Ezért tehát + telepítsük a <filename + role="package">shells/ksh93</filename> csomagot, de + megjegyezzük, hogy ugyanezen eszközök + számára a <filename + role="package">shells/pdksh</filename> vagy <filename + role="package">shells/mksh</filename> csomagok is + megfelelnek.</para> + + <para>Végül töltsük le a DTrace + eszköztárának legfrissebb + változatát. Az aktuális verzió a <ulink + url="http://www.opensolaris.org/os/community/dtrace/dtracetoolkit/"></ulink> + címen érhetõ el. Képes + önmagát telepíteni, de a benne + található eszközök + használatához nem kötelezõ ezt + elvégezni.</para> + </sect1> + + <sect1 id="dtrace-using"> + <title>A DTrace használata</title> + + <para>A DTrace funkcióinak alkalmazásához + léteznie kell egy DTrace eszköznek. Ennek + létrehozásához be kell töltenünk a + megfelelõ modult:</para> + + <screen>&prompt.root; <userinput>kldload dtraceall</userinput></screen> + + <para>Innentõl már mûködésre + kész a DTrace. Rendszeradminisztrátorként a + következõ módon kérdezhetjük le a + rendelkezésre álló + vizsgálatokat:</para> + + <screen>&prompt.root; <userinput>dtrace -l | more</userinput></screen> + + <para>Mivel lekérdezés eredménye pillanatok + alatt betöltené az egész képernyõt, + ezért az egészet még + átirányítjuk a <command>more</command> + parancshoz. Ha ez rendesen lefut, akkor a DTrace + ténylegesen használhatónak tekinthetõ. + Ezt követõen tekintsük át a + hozzátartozó eszközkészletet.</para> + + <para>Ez a mellékelt eszközkészlet + lényegében a rendszerrel kapcsolatos + információk összegyûjtésére + alkalmas szkripteket tartalmaz. Vannak szkriptek, amelyekkel a + megnyitott állományokat, a memóriát, a + processzorhasználatot és még sok minden + mást kérdezhetünk le. A szkriptek a + következõ parancs segítségével + tömöríthetõek ki:</para> + + <screen>&prompt.root; <userinput>gunzip -c DTraceToolkit* | tar xvf -</userinput></screen> + + <para>A <command>cd</command> parancs + segítségével lépjünk be az + így keletkezõ könyvtárba, és a + kisbetûs névvel rendelkezõ + állományok engedélyeit állítsuk + be a <literal>755</literal> módra.</para> + + <para>Mindegyik szkriptben el kell végeznünk némi + módosítást: a <filename>/usr/bin/ksh</filename> + hivatkozásokat írjuk át mindenhol a + <filename>/usr/local/bin/ksh</filename> névre, illetve a + <filename>/usr/bin/sh</filename> hivatkozásokat + <filename>/bin/sh</filename> névre, majd + végezetül pedig a <filename>/usr/bin/perl</filename> + hivatkozásokat a <filename>/usr/local/bin/perl</filename> + névre.</para> + + <important> + <para>Itt még egyszer kiemelnénk, hogy a &os;-ben + jelenleg megtalálható DTrace támogatás + <emphasis>még nem teljes</emphasis> és + <emphasis>kísérleti jelleggel</emphasis> szerepel. + Ezért bizonyos szkriptek nem fognak mûködni, + vagy azért, mert túlságosan &solaris; + lehetõségeihez igazodnak, vagy pedig azért, + mert a jelenlegi implementáció által + még nem ismert vizsgálatokra + támaszkodnak.</para> + </important> + + <para>Jelenlegi ismereteink szerint a &os; egyelõre csak + két szkriptet támogat teljes mértékben, + ezek a <filename>hotkernel</filename> és a + <filename>procsystime</filename>. A szakasz további + részében ezzel a kettõvel fogunk + részletesebben foglalkozni.</para> + + <para>A <filename>hotkernel</filename> feladata segíteni + beazonosítani azokat a függvényeket, amelyek a + legtöbb idõt veszik igénybe a rendszermagon + belül. A szkript futtatásakor nagyjából + a következõt csinálja:</para> + + <screen>&prompt.root; <userinput>./hotkernel</userinput> +Sampling... Hit Ctrl-C to end.</screen> + + <para>A folyamat <keycombo + action="simul"><keycap>Ctrl</keycap><keycap>C</keycap> </keycombo> + billentyûkombináció hatására + állítható meg. A szkript + futásának befejezõdésekor + különbözõ rendszermagbeli + függvények és a hozzájuk tartozó + idõk jelennek meg, az utóbbi szerint növekvõ + sorrendben:</para> + + <screen>kernel`_thread_lock_flags 2 0.0% +0xc1097063 2 0.0% +kernel`sched_userret 2 0.0% +kernel`kern_select 2 0.0% +kernel`generic_copyin 3 0.0% +kernel`_mtx_assert 3 0.0% +kernel`vm_fault 3 0.0% +kernel`sopoll_generic 3 0.0% +kernel`fixup_filename 4 0.0% +kernel`_isitmyx 4 0.0% +kernel`find_instance 4 0.0% +kernel`_mtx_unlock_flags 5 0.0% +kernel`syscall 5 0.0% +kernel`DELAY 5 0.0% +0xc108a253 6 0.0% +kernel`witness_lock 7 0.0% +kernel`read_aux_data_no_wait 7 0.0% +kernel`Xint0x80_syscall 7 0.0% +kernel`witness_checkorder 7 0.0% +kernel`sse2_pagezero 8 0.0% +kernel`strncmp 9 0.0% +kernel`spinlock_exit 10 0.0% +kernel`_mtx_lock_flags 11 0.0% +kernel`witness_unlock 15 0.0% +kernel`sched_idletd 137 0.3% +0xc10981a5 42139 99.3%</screen> + + <para>Ez a szkript modulok esetén is alkalmazható. + Ezt a módját a <option>-m</option> kapcsoló + megadásával aktiválhatjuk:</para> + + <screen>&prompt.root; <userinput>./hotkernel -m</userinput> +Sampling... Hit Ctrl-C to end. +^C +MODULE COUNT PCNT +0xc107882e 1 0.0% +0xc10e6aa4 1 0.0% +0xc1076983 1 0.0% +0xc109708a 1 0.0% +0xc1075a5d 1 0.0% +0xc1077325 1 0.0% +0xc108a245 1 0.0% +0xc107730d 1 0.0% +0xc1097063 2 0.0% +0xc108a253 73 0.0% +kernel 874 0.4% +0xc10981a5 213781 99.6%</screen> + + <para>A <filename>procsystime</filename> szkript egy adott + azonosítóval vagy névvel rendelkezõ + programhoz tudja megadni az általa kezdeményezett + rendszerhívások által felhasznált + idõt. A most következõ példában + elindítjuk a <filename>/bin/csh</filename> egy újabb + példányát. A + <filename>procsystime</filename> elindul, majd megvárja, + amíg kiadunk néhány parancsot a + <command>csh</command> frissen indított + másolatában. A teszt eredményei tehát + a következõk lesznek:</para> + + <screen>&prompt.root; <userinput>./procsystime -n csh</userinput> +Tracing... Hit Ctrl-C to end... +^C + +Elapsed Times for processes csh, + + SYSCALL TIME (ns) + getpid 6131 + sigreturn 8121 + close 19127 + fcntl 19959 + dup 26955 + setpgid 28070 + stat 31899 + setitimer 40938 + wait4 62717 + sigaction 67372 + sigprocmask 119091 + gettimeofday 183710 + write 263242 + execve 492547 + ioctl 770073 + vfork 3258923 + sigsuspend 6985124 + read 3988049784</screen> + + <para>Jól megfigyelhetõ, hogy (nanomásodpercekben + mérve) a legtöbb idõt a + <function>read()</function>, a legkevesebb idõt pedig a + <function>getpid()</function> rendszerhívás vette + igénybe.</para> + </sect1> + + <sect1 id="dtrace-language"> + <title>A D nyelv</title> + + <para>A DTrace eszköztárában + megtalálható számos szkript a DTrace + saját programozási nyelvén + íródott. Ezt a nyelvet nevezik a &sun; + implementációjában <quote>a D + nyelvnek</quote>. Ennek ismertetésére itt most + külön nem térünk ki, azonban a <ulink + url="http://wikis.sun.com/display/DTrace/Documentation"></ulink> + címen igen részletesen olvashatunk + róla.</para> + </sect1> +</chapter> diff --git a/hu_HU.ISO8859-2/books/handbook/eresources/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/eresources/chapter.sgml index 382b633a96..86e271e3d0 100644 --- a/hu_HU.ISO8859-2/books/handbook/eresources/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/eresources/chapter.sgml @@ -7,11 +7,11 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/eresources/chapter.sgml - %SRCID% 1.186 + %SRCID% 1.190 --> <appendix id="eresources" lang="hu"> - <title>Erõforrások az interneten</title> + <title>Források az interneten</title> <para>A &os; gyors ütemû fejlõdése a nyomtatott médiát alkalmatlanná teszi a legfrissebb @@ -125,13 +125,6 @@ <tbody> <row> - <entry>&a.cvsall.name;</entry> - <entry>Értesítés a &os; - forrásfájában elvégzett - változtatásokról</entry> - </row> - - <row> <entry>&a.advocacy.name;</entry> <entry>A &os; igéjének terjesztése</entry> @@ -740,9 +733,9 @@ kiválaszthatjuk, hogy kivonatolt formátumban kívánjuk-e kapni a leveleket.</para> - <para><emphasis>CVS listák:</emphasis> (CVS lists) A - következõ listák a forrásfa - különbözõ részeinek + <para><emphasis>CVS és SVN listák:</emphasis> (CVS + & SVN lists) A következõ listák a + forrásfa különbözõ részeinek változtatásáról és a hozzájuk tartozó üzenetekrõl adnak értesítést. Ezek a listák @@ -792,7 +785,9 @@ <entry>&a.cvs-src.name;</entry> <entry><filename>/usr/src</filename></entry> <entry>A rendszer forrásának - változásai</entry> + változásai (az svn és cvs + közti importer mûködése + alapján generálódik)</entry> </row> </tbody> </tgroup> @@ -2354,7 +2349,7 @@ <row> <entry>ukug.uk.FreeBSD.org</entry> <entry>Csak továbbítás</entry> - <entry><email>freebsd-users@uk.FreeBSD.org</email></entry> + <entry><email>ukfreebsd@uk.FreeBSD.org</email></entry> <entry>Lee Johnston <email>lee@uk.FreeBSD.org</email></entry> </row> diff --git a/hu_HU.ISO8859-2/books/handbook/filesystems/Makefile b/hu_HU.ISO8859-2/books/handbook/filesystems/Makefile new file mode 100644 index 0000000000..3a9d8868c6 --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/filesystems/Makefile @@ -0,0 +1,18 @@ +# +# Build the Handbook with just the content from this chapter. +# +# %SOURCE% en_US.ISO8859-1/books/handbook/filesystems/Makefile +# %SRCID% 1.1 +# +# $FreeBSD$ +# + +CHAPTERS= filesystems/chapter.sgml + +VPATH= .. + +MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX} + +DOC_PREFIX?= ${.CURDIR}/../../../.. + +.include "../Makefile" diff --git a/hu_HU.ISO8859-2/books/handbook/filesystems/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/filesystems/chapter.sgml new file mode 100644 index 0000000000..e53acf3d7a --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/filesystems/chapter.sgml @@ -0,0 +1,756 @@ +<!-- + The FreeBSD Documentation Project + $FreeBSD$ +--> + +<!-- The FreeBSD Hungarian Documentation Project + Translated by: PALI, Gabor <pgj@FreeBSD.org> + %SOURCE% en_US.ISO8859-1/books/handbook/filesystems/chapter.sgml + %SRCID% 1.3 +--> + +<chapter id="filesystems" lang="hu"> + <chapterinfo> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Írta: </contrib> + </author> + </authorgroup> + </chapterinfo> + + <title>Támogatott állományrendszerek</title> + + <sect1 id="filesystems-synopsis"> + <title>Áttekintés</title> + + <indexterm><primary>állományrendszerek</primary></indexterm> + <indexterm> + <primary>támogatott + állományrendszerek</primary> + <see>állományrendszerek</see> + </indexterm> + + <para>Az állományrendszerek szerves + részét képezik napjaink operációs + rendszereinek. Segítségükkel a + felhasználók adatokat tölthetnek fel és + tárolhatnak a számítógépen, + szabályozhatják a + hozzáférésüket, és + természetesen mûködtethetik a merevlemezeiket. A + különféle operációs rendszerekben + általában azért annyi közös, hogy + mindannyiukhoz tartozik egy natív, vagyis általuk + alapból ismert állományrendszer. A &os; + esetében ezt konkrétan a Fast File System vagy + röviden <acronym>FFS</acronym>, amely az eredeti Unix™ + File System, vagy más néven <acronym>UFS</acronym> + megoldásain alapszik. A &os; tehát a merevlemezeken + ebben a natív állományrendszerben + tárol adatokat.</para> + + <para>A &os; természetesen ezen kívül még + ismer számos egyéb állományrendszert, + ezáltal képes adatokat olvasni más + operációs rendszerek részérõl is + kezelhetõ partíciókról, + például helyi + <acronym>USB</acronym>-eszközökrõl, + flashkártyákról és + merevlemezekrõl. Továbbá ismeri + néhány más operációs rendszer + natív állományrendszerét, mint + például a &linux; Extended File System + (<acronym>EXT</acronym>) vagy éppen a &sun; Z File System + (<acronym>ZFS</acronym>).</para> + + <para>&os; alatt az egyes állományrendszerek ismerete + változó. Bizonyos esetekben elegendõ + csupán egy megfelelõ modul betöltése, + máskor viszont egy komplett eszközkészlet + segítségével tudunk velük dolgozni. Ez + a fejezet igyekszik a &sun;-féle Z + állományrendszerrel kezdõdõen bemutatni a + &os; felhasználói számára más + állományrendszerek használatát.</para> + + <para>A fejezet elolvasása során + megismerjük:</para> + + <itemizedlist> + <listitem> + <para>a natív és támogatott + állományrendszerek közti + különbségeket;</para> + </listitem> + + <listitem> + <para>a &os; által ismert + állományrendszereket;</para> + </listitem> + + <listitem> + <para>hogyan engedélyezzünk, állítsunk + be és érjünk el nem natív + állományrendszereket.</para> + </listitem> + </itemizedlist> + + <para>A fejezet elolvasásához ajánlott:</para> + + <itemizedlist> + <listitem> + <para>a &unix; és &os; alapjainak ismerete (<xref + linkend="basics">);</para> + </listitem> + + <listitem> + <para>a rendszermag konfigurációjának + és fordításának alapvetõ + fogásainak ismerete (<xref + linkend="kernelconfig">);</para> + </listitem> + + <listitem> + <para>a különbözõ külsõ + fejlesztésû szoftverek + telepítésének ismerete (<xref + linkend="ports">);</para> + </listitem> + + <listitem> + <para>a lemezek és egyéb + tárolóeszközök, valamint a &os; alatt az + eszközök elnevezésének + minimális ismerete (<xref linkend="disks">).</para> + </listitem> + </itemizedlist> + + <warning> + <para>Jelenleg a <acronym>ZFS</acronym> támogatása + még nem tekinthetõ hétköznapi + használatra alkalmasnak. Ennek + következményeképpen bizonyos funkciók + nem megfelelõen vagy egyáltalán nem + mûködnek. Ahogy ez a támogatás + megbízhatóvá válik, úgy + fogjuk tovább finomítani a + dokumentációt.</para> + </warning> + </sect1> + + <sect1 id="filesystems-zfs"> + <title>A Z állományrendszer</title> + + <para>A &sun; Z állományrendszere egy új, + közös tárolási módszeren + nyugvó technológia. Ez annyit jelent a + gyakorlatban, hogy mindig csak annyi helyet foglal, amennyire az + adatoknak közvetlenül szüksége van. + Emellett úgy alakították ki, hogy az adatok + épségét minél inkább + védje, ezért például + megtalálhatjuk benne a pillanatképek + készítését, a másolatok + létrehozását és az adatok + sértetlenségének + ellenõrzését. Továbbá egy + <acronym>RAID</acronym>-Z néven bemutatott új + replikációs modellt is támogat. A + <acronym>RAID</acronym>-Z alapvetõen a + <acronym>RAID</acronym>-5 megoldásához + hasonlít, azonban írás során + keletkezõ hibák ellen igyekszik védelmet + nyújtani.</para> + + <sect2> + <title>A ZFS finomhangolása</title> + + <para>A <acronym>ZFS</acronym> funkcióit + megvalósító alrendszer + alapértelmezés szerint meglehetõsen sok + erõforrást kíván, ezért nem + árt a legjobb hatékonyságra behangolnunk a + mindennapokban felmerülõ igények mentén. + Mivel ez még egy fejlesztés és + tesztelés alatt álló része a + &os;-nek, elképzelhetõ, hogy ez a jövõben + változik, viszont jelen pillanatban a következõ + lépéseket javasoljuk.</para> + + <sect3> + <title>Memória</title> + + <para>Hasznos, ha a rendszerünkben legalább + 1 GB memória található, de + inkább 2 vagy több az ajánlott. Az itt + szereplõ példákban ehelyett azonban + mindenhol csupán 1 GB-ot + feltételezünk.</para> + + <para>Néhányaknak sikerült + 1 GB-nál kevesebb központi + memóriával is használni ezt az + állományrendszert, azonban ilyenkor nagyon + könnyen elõfordulhat, hogy komolyabb terhelés + esetén a &os; a memória elfogyása miatt + egyszerûen összeomlik.</para> + </sect3> + + <sect3> + <title>A rendszermag beállításai</title> + + <para>A rendszermag konfigurációs + állományából javasolt + eltávolítani az összes nem használt + meghajtót és funkciót. A legtöbb + meghajtó egyébként is + elérhetõ modul formájában, és + a <filename>/boot/loader.conf</filename> + állományon keresztül minden gond + nélkül betölthetõek.</para> + + <para>Az i386 architektúránál + szükségünk lesz az alábbi + konfigurációs beállítás + megadására, majd a rendszermag + újrafordítására, végül + a rendszer újraindítására:</para> + + <programlisting>options KVA_PAGES=512</programlisting> + + <para>Ezzel az opcióval a rendszermag + címterét növeljük meg, aminek + eredményeképpen a <varname>vm.kvm_size</varname> + változót immáron az eredetileg + 1 GB-os (<acronym>PAE</acronym> használata + esetén pedig 2 GB-os) határ felé + tudjuk állítani. Az itt megadandó + értéket úgy tudjuk meghatározni, + ha a beállítani kívánt + méret MB-okban számolt + értékét elosztjuk néggyel. A + példában tehát az <literal>512</literal> + egy 2 GB nagyságú címteret ad + meg.</para> + </sect3> + + <sect3> + <title>A rendszertöltõ + beállításai</title> + + <para>A <devicename>kmem</devicename> címterét az + összes &os; által ismert architektúra + esetében érdemes megnövelnünk. A + teszteléshez használt rendszeren 1 GB + fizikai memória állt rendelkezésre, itt a + <filename>/boot/loader.conf</filename> + állományban a következõ + értékek megadásával minden + remekül mûködött:</para> + + <programlisting>vm.kmem_slze="330M" +vm.kmem_size_max="330M" +vfs.zfs.arc_max="40M" +vfs.zfs.vdev.cache.size="5M"</programlisting> + + <para>A ZFS finomhangolásával kapcsolatos + további javasolatokat a <ulink + url="http://wiki.freebsd.org/ZFSTuningGuide"></ulink> + címen olvashatunk.</para> + </sect3> + </sect2> + + <sect2> + <title>A <acronym>ZFS</acronym> használata</title> + + <para>A Z állományrendszerhez létezik egy + olyan mechanizmus, amelyen keresztül már a &os; + indítása során el tudjuk végezni a + közös tárolók + csatlakoztatását:</para> + + <screen>&prompt.root; <userinput>echo 'zfs_enable="YES"' >> /etc/rc.conf</userinput> +&prompt.root; <userinput>/etc/rc.d/zfs start</userinput></screen> + + <para>A leírás fennmaradó + részében feltételezzük, hogy + két <acronym>SCSI</acronym>-lemezünk van, + amelyeket rendre a + <devicename><replaceable>da0</replaceable></devicename> + és + <devicename><replaceable>da1</replaceable></devicename> + eszközök formájában tudunk + elérni. Az <acronym>IDE</acronym> lemezek + tulajdonosainak értelemszerûen itt majd az + <devicename><replaceable>ad</replaceable></devicename> + eszközneveket kell használniuk a + <acronym>SCSI</acronym>-eszközök hivatkozásai + helyett.</para> + + <sect3> + <title>Egyetlen közös tároló + használata</title> + + <para>A <command>zpool</command> kiadásával + egyetlen lemezen is létre tudunk hozni + <acronym>ZFS</acronym> partíciót:</para> + + <screen>&prompt.root; <userinput>zpool create minta /dev/da0</userinput></screen> + + <para>Az új közös tárterület a + <command>df</command> parancs + felhasználásával rögtön + láthatóvá válik:</para> + + <screen>&prompt.root; <userinput>df</userinput> +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/ad0s1a 2026030 235230 1628718 13% / +devfs 1 1 0 100% /dev +/dev/ad0s1d 54098308 1032846 48737598 2% /usr +minta 17547136 0 17547136 0% /minta</screen> + + <para>A parancs kimenetében tisztán + láthatjuk, hogy a <literal>minta</literal> nevû + tároló nem csak egyszerûen + elkészült, hanem egyúttal + <emphasis>csatolódott</emphasis>. Innentõl + már a többi állományrendszerhez + hasonlóan tetszõlegesen elérhetõ, az + alábbi példához hasonlóan + állományok hozhatóak rajta létre + vagy listázható a tartalma:</para> + + <screen>&prompt.root <userinput>cd /minta</userinput> +&prompt.root; <userinput>ls</userinput> +&prompt.root; <userinput>touch proba</userinput> +&prompt.root; <userinput>ls -al</userinput> +total 4 +drwxr-xr-x 2 root wheel 3 Aug 29 23:15 . +drwxr-xr-x 21 root wheel 512 Aug 29 23:12 .. +-rw-r--r-- 1 root wheel 0 Aug 29 23:15 proba</screen> + + <para>Sajnos azonban ez a tároló még ki sem + használja a <acronym>ZFS</acronym> által + felkínált lehetõségeket. + Ezért most hozzunk létre egy + állományrendszert ezen a tárolón + belül és engedélyezzük rajta a + tömörítést:</para> + + <screen>&prompt.root; <userinput>zfs create minta/tomoritett</userinput> +&prompt.root; <userinput>zfs set compression=gzip minta/tomoritett</userinput></screen> + + <para>A <literal>minta/tomoritett</literal> most már egy + tömörített Z állományrendszer. + Próbáljuk ki mit tud, és másoljunk + néhány nagyobb méretû + állományt a <filename + class="directory">/minta/tomoritett</filename> + könyvtárba.</para> + + <para>Ezután a tömörítés + akár ki is kapcsolható:</para> + + <screen>&prompt.root; <userinput>zfs set compression=off minta/tomoritett</userinput></screen> + + <para>Az állományrendszer + leválasztásához adjuk ki a lenti parancsot, + majd ellenõrizzük az eredményét a + <command>df</command> használatával:</para> + + <screen>&prompt.root; <userinput>zfs umount minta/tomoritett</userinput> +&prompt.root; <userinput>df</userinput> +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/ad0s1a 2026030 235232 1628716 13% / +devfs 1 1 0 100% /dev +/dev/ad0s1d 54098308 1032864 48737580 2% /usr +minta 17547008 0 17547008 0% /minta</screen> + + <para>Tegyük ismét elérhetõvé + és csatlakoztassuk újra az + állományrendszert, majd nézzük meg + az eredményt a <command>df</command> paranccsal:</para> + + <screen>&prompt.root; <userinput>zfs mount minta/tomoritett</userinput> +&prompt.root; <userinput>df</userinput> +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/ad0s1a 2026030 235234 1628714 13% / +devfs 1 1 0 100% /dev +/dev/ad0s1d 54098308 1032864 48737580 2% /usr +minta 17547008 0 17547008 0% /minta +minta/tomoritett 17547008 0 17547008 0% /minta/tomoritett</screen> + + <para>A közös terület és az + állományrendszer mellesleg a + <command>mount</command> parancs kimenetébõl is + megfigyelhetõ:</para> + + <screen>&prompt.root; <userinput>mount</userinput> +/dev/ad0s1a on / (ufs, local) +devfs on /dev (devfs, local) +/dev/ad0s1d on /usr (ufs, local, soft-updates) +minta on /minta (zfs, local) +minta/tomoritett on /minta/tomoritett (zfs, local)</screen> + + <para>Látható, hogy a létrehozásuk + után a Z állományrendszerek teljesen + hétköznapi módon viselkednek, de + természetesen további lehetõségek is + elérhetõek hozzájuk. A következõ + példában <literal>adat</literal> néven + készítünk egy új + állományrendszert. Mivel ide majd nagyon fontos + állományokat akarunk elhelyezni, + állítsuk be, hogy minden adatblokkból + két példány legyen:</para> + + <screen>&prompt.root; <userinput>zfs create minta/adat</userinput> +&prompt.root; <userinput>zfs set copies=2 minta/adat</userinput></screen> + + <para>A <command>df</command> újbóli + kiadásával most már látható + is ez az állományrendszer és annak + tárfoglalása:</para> + + <screen>&prompt.root; <userinput>df</userinput> +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/ad0s1a 2026030 235234 1628714 13% / +devfs 1 1 0 100% /dev +/dev/ad0s1d 54098308 1032864 48737580 2% /usr +minta 17547008 0 17547008 0% /minta +minta/tomoritett 17547008 0 17547008 0% /minta/tomoritett +minta/adat 17547008 0 17547008 0% /minta/adat</screen> + + <para>Vegyük észre, hogy a közös + területen levõ állományrendszerek + mindegyikén ugyanannyi szabad terület van. A + <command>df</command> segítségével a + késõbbiekben remekül megfigyelhetõ lesz, + hogy az egyes állományrendszerek mindig csak + annyi területet foglalnak el a közös + területbõl, amennyire abban a pillanatban + ténylegesen szükségünk van. A Z + állományrendszerek esetén megszûnik + a partíciók és kötetek fogalma, + és több állományrendszer + tárolódik egyazon közös + területen. Ha már nem akarjuk használni, + egyszerûen csak töröljük le az + állományrendszereket és ezt a + közös tárolót:</para> + + <screen>&prompt.root; <userinput>zfs destroy minta/tomoritett</userinput> +&prompt.root; <userinput>zfs destroy minta/adat</userinput> +&prompt.root; <userinput>zpool destroy minta</userinput></screen> + + <para>Nyilván tapasztalhattunk már, hogy a + lemezeink olykor menthetetlenül meghibásodnak. + Amikor egy lemezes meghajtó tönkremegy, a rajta + tárolt adatok általában elvesznek. Az + ilyen jellegû kellemetlenségek + elkerülésének egyik módja az + ún. <acronym>RAID</acronym>-tömbök + építése. A következõ + szakaszban bemutatjuk, hogy a Z + állományrendszerek esetén hogyan tudunk + ilyen tömböket készíteni.</para> + </sect3> + + <sect3> + <title><acronym>RAID</acronym>-Z tömbök</title> + + <para>Korábban már utaltunk rá, hogy ebben + a szakaszban két <acronym>SCSI</acronym>-lemez, vagyis a + <devicename>da0</devicename> és + <devicename>da1</devicename> eszközök + használatát feltételezzük. Egy + <acronym>RAID</acronym>-Z formátumú + közös tároló + készítéséhez a következõ + parancsot kell kiadni:</para> + + <screen>&prompt.root; <userinput>zpool create tarolo raidz da0 da1</userinput></screen> + + <para>Ennek hatására tehát keletkezik egy + <literal>tarolo</literal> nevû Z-tároló. + Ez a korábbiakhoz hasonló módon + ellenõrizhetõ is a &man.mount.8; és + &man.df.1; parancsokon keresztül. Természetesen + az iménti listába további + lemezeszközök tetszõlegesen felvehetõek. + Most hozzunk létre ezen a közös + területen egy <literal>felhasznalok</literal> nevû + állományrendszert, ahová majd a + felhasználók adatait fogjuk tenni:</para> + + <screen>&prompt.root; <userinput>zfs create tarolo/felhasznalok</userinput></screen> + + <para>Miután ezzel megvagyunk, az imént + létrehozott állományrendszerre nyugodtan + beállíthatunk tömörítést + és biztonsági másolatokat. Ebben az + alábbi parancsok lesznek a + segítségünkre:</para> + + <screen>&prompt.root; <userinput>zfs set copies=2 tarolo/felhasznalok</userinput> +&prompt.root; <userinput>zfs set compression=gzip tarolo/felhasznalok</userinput></screen> + + <para>Ezt követõen költöztessük + át a felhasználókat, vagyis másoljuk + át az adataikat ide és hozzuk létre a + megfelelõ szimbolikus linkeket:</para> + + <screen>&prompt.root; <userinput>cp -rp /home/* /tarolo/felhasznalok</userinput> +&prompt.root; <userinput>rm -rf /home /usr/home</userinput> +&prompt.root; <userinput>ln -s /tarolo/felhasznalok /home</userinput> +&prompt.root; <userinput>ln -s /tarolo/felhasznalok /usr/home</userinput></screen> + + <para>A felhasználók adatai immáron a + frissen létrehozott <filename + class="directory">/tarolo/felhasznalok</filename> + állományrendszeren tárolódnak. + Próbáljuk ki, hozzunk létre egy új + felhasználót és jelentkezzünk be + vele.</para> + + <para>Készítsünk most egy + pillanatképet is, amelyet aztán késõbb + szükség esetén vissza tudunk + állítani:</para> + + <screen>&prompt.root; <userinput>zfs snapshot tarolo/felhasznalok@08-08-30</userinput></screen> + + <para>A <literal>snapshot</literal> csak valós + állományrendszerekkel mûködik, + könyvtárakra vagy állományokra nem. + A nevében a <literal>@</literal> karakter + választja el egymástól a + hozzátartozó címkét az + állományrendszer vagy kötet + nevétõl. Ha netalán a + felhasználói könyvtárak + valamiért megsérültek volna, a + következõ paranccsal + állíthatóak vissza:</para> + + <screen>&prompt.root; <userinput>zfs rollback tarolo/felhasznalok@08-08-30</userinput></screen> + + <para>Az adott idõpontban aktív + pillanatképeket az adott állományrendszer + <filename class="directory">.zfs/snapshot</filename> + könyvtárában találhatjuk meg. + Például az elõbb készített + pillanatkép az alábbi paranccsal + nézhetõ meg:</para> + + <screen>&prompt.root; <userinput>ls /tarolo/felhasznalok/.zfs/snapshot</userinput></screen> + + <para>Ha ebbõl elindulunk, akkor pillanatok alatt + írható egy olyan szkript, amely a + felhasználók adatairól havonta + készít egy pillanatképet. Ilyenkor + azonban fontos számításba vennünk, + hogy az idõvel felgyülemlõ pillanatképek + rengeteg helyet el tudnak foglalni. A korábbi + pillanatkép így távolítható + el:</para> + + <screen>&prompt.root; <userinput>zfs destroy tarolo/felhasznalok@08-08-30</userinput></screen> + + <para>Miután alaposan kipróbáltuk a + <filename class="directory">/tarolo/felhasznalok</filename> + néven létrehozott + állományrendszerünket, + állítsuk be véglegesen ez eddigi + <filename class="directory">/home</filename> + állományrendszer helyére:</para> + + <screen>&prompt.root; <userinput>zfs set mountpoint=/home tarolo/felhasznalok</userinput></screen> + + <para>Ekkor a <command>df</command> és + <command>mount</command> parancsok használatával + meggyõzõdhetünk róla, hogy ezt az + állományrendszert innentõl már + valóban a <filename class="directory">/home</filename> + könyvtárnak tekintjük:</para> + + <screen>&prompt.root; <userinput>mount</userinput> +/dev/ad0s1a on / (ufs, local) +devfs on /dev (devfs, local) +/dev/ad0s1d on /usr (ufs, local, soft-updates) +tarolo on /tarolo (zfs, local) +tarolo/felhasznalok on /home (zfs, local) +&prompt.root; <userinput>df</userinput> +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/ad0s1a 2026030 235240 1628708 13% / +devfs 1 1 0 100% /dev +/dev/ad0s1d 54098308 1032826 48737618 2% /usr +tarolo 17547008 0 17547008 0% /tarolo +tarolo/felhasznalok 17547008 0 17547008 0% /home</screen> + + <para>Ezzel lényegében befejeztük a + <acronym>RAID</acronym>-Z tömb + konfigurációját. Az + állományrendszerek állapotára + vonatkozóan a &man.periodic.8; + alkalmazásával akár naponta + kérhetünk ellenõrzést:</para> + + <screen>&prompt.root; <userinput>echo 'daily_status_zfs_enable="YES"' >> /etc/periodic.conf</userinput></screen> + </sect3> + + <sect3> + <title>A <acronym>RAID</acronym>-Z + helyreállítása</title> + + <para>Minden szoftveres <acronym>RAID</acronym> + implementáció kínál valamilyen + megoldást az állapotának + ellenõrzésére, ez alól + tulajdonképpen a <acronym>ZFS</acronym> sem + kivétel. A <acronym>RAID</acronym>-Z + eszközök állapota a következõ + paranccsal kérdezhetõ le:</para> + + <screen>&prompt.root; <userinput>zpool status -x</userinput></screen> + + <para>Ezt az üzenetet láthatjuk, amikor minden + tároló kifogástalanul mûködik + és semmilyen probléma sincs:</para> + + <screen>all pools are healthy</screen> + + <para>Ha viszont valamilyen gond lenne valamelyik lemezzel, + például leállt, akkor az elõbbi + parancs eredménye ehhez lesz hasonló:</para> + + <screen> pool: tarolo + state: DEGRADED +status: One or more devices has been taken offline by the administrator. + Sufficient replicas exist for the pool to continue functioning in a + degraded state. +action: Online the device using 'zpool online' or replace the device with + 'zpool replace'. + scrub: none requested +config: + + NAME STATE READ WRITE CKSUM + tarolo DEGRADED 0 0 0 + raidz1 DEGRADED 0 0 0 + da0 ONLINE 0 0 0 + da1 OFFLINE 0 0 0 + +errors: No known data errors</screen> + + <para>A válasz szerint az eszközt az + adminisztrátor állította le. Ez + ennél a példánál valóban + igaz. Lemezeket a következõ módon lehet + leállítani:</para> + + <screen>&prompt.root; <userinput>zpool offline tarolo da1</userinput></screen> + + <para>Így miután leállítottuk a + rendszert, a <devicename>da1</devicename> eszköz + cserélhetõ. A rendszer soron következõ + indításakor ezzel a paranccsal tudjuk jelezni + logikailag is a lemez cseréjét:</para> + + <screen>&prompt.root; <userinput>zpool replace tarolo da1</userinput></screen> + + <para>Nézzük meg újra a tömb + állapotát, de ezúttal a <option>-x</option> + kapcsoló megadása nélkül, mivel csak + így fogjuk látni:</para> + + <screen>&prompt.root; <userinput>zpool status tarolo</userinput> + pool: tarolo + state: ONLINE + scrub: resilver completed with 0 errors on Sat Aug 30 19:44:11 2008 +config: + + NAME STATE READ WRITE CKSUM + tarolo ONLINE 0 0 0 + raidz1 ONLINE 0 0 0 + da0 ONLINE 0 0 0 + da1 ONLINE 0 0 0 + +errors: No known data errors</screen> + + <para>A példa szerint minden megfelelõen + mûködik.</para> + </sect3> + + <sect3> + <title>Az adatok ellenõrzése</title> + + <para>Elõzetesen már szó esett róla, + hogy a <acronym>ZFS</acronym> képes a tárolt + adatok sértetlenségének + ellenõrzésére. Az új + állományrendszerek + létrehozásánál ez a + lehetõség automatikusan aktiválódik, + de tetszés szerint letiltható:</para> + + <screen>&prompt.root; <userinput>zfs set checksum=off tarolo/felhasznalok</userinput></screen> + + <para>Ez a lépés viszont nem + feltétlenül jó döntés, mivel az + adatintegritás megtartásához + felhasznált ellenõrzõ összegek nagyon + kevés helyet foglalnak és meglehetõsen + hasznosak. Emellett semmilyen észlelhetõ + lassulást nem okoznak az állományrendszer + használata során. Ha engedélyezzük, + a <acronym>ZFS</acronym> ilyen ellenõrzõ + összegek segítségével folyamatosan + figyelni tudja az adatok épségét. Ezt az + ellenõrzést a <literal>scrub</literal> paranccsal + válthatjuk ki. Nézzük meg + például a <literal>tarolo</literal> + esetében:</para> + + <screen>&prompt.root; <userinput>zpool scrub tarolo</userinput></screen> + + <para>Ez a vizsgálat a tárolt adatok + mennyiségétõl függõen nagyon + sokáig is eltarthat, illetve rengeteg + lemezmûveletet foglal magában, ezért + egyszerre csak egy ilyen futtatása javasolt. + Miután befejezõdött, a tároló + állapota az eredményének megfelelõen + frissül, amelyet közvetlenül utána le is + kérdezhetünk:</para> + + <screen>&prompt.root; <userinput>zpool status tarolo</userinput> + pool: tarolo + state: ONLINE + scrub: scrub completed with 0 errors on Sat Aug 30 19:57:37 2008 +config: + + NAME STATE READ WRITE CKSUM + tarolo ONLINE 0 0 0 + raidz1 ONLINE 0 0 0 + da0 ONLINE 0 0 0 + da1 ONLINE 0 0 0 + +errors: No known data errors</screen> + + <para>A példában látható az + utolsó ellenõrzés ideje. Ezen + lehetõség használatával + hosszú idõn keresztül szavatolni tudjuk az + adataink épségét.</para> + + <para>A Z állományrendszerrel kapcsolatos + további beállítási + lehetõségekrõl a &man.zfs.8; és + &man.zpool.8; man oldalakon olvashatunk.</para> + </sect3> + </sect2> + </sect1> +</chapter> diff --git a/hu_HU.ISO8859-2/books/handbook/geom/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/geom/chapter.sgml index 2b796d79c3..586c25982a 100644 --- a/hu_HU.ISO8859-2/books/handbook/geom/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/geom/chapter.sgml @@ -1,12 +1,12 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/hu_HU.ISO8859-2/books/handbook/geom/chapter.sgml,v 1.2 2008/06/25 11:28:06 gabor Exp $ + $FreeBSD$ --> <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/geom/chapter.sgml - %SRCID% 1.42 + %SRCID% 1.43 --> <chapter id="GEOM" lang="hu"> @@ -301,185 +301,156 @@ fizikailag is biztonságosan tárolhatóak. <para>Elõször is szereznünk kell két egyforma - méretû lemezt, valamint ez a példa - feltételezi, hogy ezek a lemezek közvetlen + méretû lemezt, valamint a példák + feltételezik, hogy ezek a lemezek közvetlen elérésû (&man.da.4;) <acronym>SCSI</acronym>-lemezek.</para> - <para>Kezdetnek telepítsük fel a &os;-t az elsõ - lemezre, de csak két partícióval. Ezek - egyike legyen a lapozóállományt - tartalmazó partíció, aminek mérete - pedig a fizikailag rendelkezésre álló - memória (<acronym>RAM</acronym>) méretének - kétszere legyen. A többi helyet adjuk oda a - gyökérpartíciónak (<filename - class="directory">/</filename>). Természetesen a többi - csatolási pontot is kihasználhatjuk, külön - partíciókkal, de ezzel a feladat - nehézsége tízszeresére növekszik, - mivel ekkor manuálisan kell átírnunk a - &man.bsdlabel.8; és &man.fdisk.8; - beállításokat.</para> - - <para>Indítsuk újra a - számítógépet és várjuk - meg, amíg a rendszer teljesen készen nem áll. - Amint ez a folyamat véget ért, jelentkezzük be - a <username>root</username> felhasználóval.</para> - - <para>Hozzuk létre a <filename>/dev/mirror/gm</filename> - eszközt és kössük hozzá a - <filename>/dev/ad1</filename> eszközhöz:</para> - - <screen>&prompt.root; <userinput>gmirror label -vnb round-robin gm0 /dev/da1</userinput></screen> - - <para>A rendszernek erre így kell reagálnia:</para> - - <screen> -Metadata value stored on /dev/da1. + <sect2> + <title>Az elsõdleges lemezek + tükrözése</title> + + <para>Tegyük fel, hogy a &os; az elsõ, + <devicename>da0</devicename> nevû lemezmeghajtón + található, és a &man.gmirror.8; + számára ezt szeretnénk megadni az + elsõdleges adatok tárolásához.</para> + + <para>A tükrözés + létrehozásának megkezdése elõtt a + <varname>kern.geom.debugflags</varname> &man.sysctl.8; + változó megfelelõ + beállításával + engedélyezzünk további + nyomkövetési információkat és + hozzáférést az eszközhöz:</para> + + <screen>&prompt.root; <userinput>sysctl kern.geom.debugflags=17</userinput></screen> + + <para>Most építsük fel a + tükrözést. Kezdjük az egészet a + metaadatok elhelyezésével az elsõdleges + lemezmeghajtón, tehát tulajdonképpen az + alábbi parancs segítségével hozzuk + létre a <filename + class="devicefile">/dev/mirror/gm</filename> + eszközt:</para> + + <screen>&prompt.root; <userinput>gmirror label -vb round-robin gm0 /dev/da0</userinput></screen> + + <para>Erre a rendszernek a következõ módon kell + reagálnia:</para> + + <screen>Metadata value stored on /dev/da0. Done.</screen> - <para>Keltsük életre a GEOM-ot, aminek során - betöltõdik a - <filename>/boot/kernel/geom_mirror.ko</filename> modul:</para> - - <screen>&prompt.root; <userinput>gmirror load</userinput></screen> - - <note> - <para>Ezzel a paranccsal létre kellett jönnie a - <devicename>gm0</devicename> eszköznek a <filename - class="directory">/dev/mirror</filename> - könyvtárban.</para> - </note> + <para>A GEOM inicializálásához + szükségünk lesz a + <filename>/boot/kernel/geom_mirror.ko</filename> modul + betöltésére:</para> - <para>Helyezzünk el egy partíciós - táblát és rendszerindító - programot az <command>fdisk</command> - segítségével az újonnan - létrehozott <devicename>gm0</devicename> - eszközön:</para> + <screen>&prompt.root; <userinput>gmirror load</userinput></screen> - <screen>&prompt.root; <userinput>fdisk -vBI /dev/mirror/gm0</userinput></screen> - - <para>Most pedig tegyünk fel egy általános - címkét a <command>bsdlabel</command> - programmal:</para> - - <screen>&prompt.root; <userinput>bsdlabel -wB /dev/mirror/gm0s1</userinput></screen> - - <note> - <para>Ha több slice-unk és partíciónk is - van, az iménti két parancsban máshogy kell - megadnunk a paramétereket. Meg kell egyezniük a - másik lemezen található slice-al és - a partíciójának - méretével.</para> - </note> + <note> + <para>A parancs sikeres lefutása után a <filename + class="directory">/dev/mirror</filename> + könyvtárban létrehoz egy + <devicename>gm0</devicename> + eszközleírót.</para> + </note> - <para>Használjuk a &man.newfs.8; segédprogramot a - <devicename>gm0s1a</devicename> eszközön egy - <acronym>UFS</acronym> típusú - állományrendszer - létesítésére:</para> - - <screen>&prompt.root; <userinput>newfs -U /dev/mirror/gm0s1a</userinput></screen> - - <para>Ennek eredményeképpen kapunk egy halom - számot a képernyõn. Nagyon jó! - Ellenõrizzük, nem látunk-e a - képernyõn valamilyen hibaüzenetet, majd - csatlakoztassuk az eszközt a a <filename - class="directory">/mnt</filename> pontra:</para> - - <screen>&prompt.root; <userinput>mount /dev/mirror/gm0s1a /mnt</userinput></screen> - - <para>Ezt követõen pedig mozgassunk át minden - adatot a frissen létrehozott - állományrendszere arról a lemezrõl, - ahonnan elindítottuk a rendszert. Ebben a - példában ezt ugyan a &man.dump.8; és - &man.restore.8; parancsokkal oldjuk meg, erre a célra - viszont a &man.dd.1; is remekül - használható.</para> - - <screen>&prompt.root; <userinput>dump -L -0 -f- / |(cd /mnt && restore -r -v -f-)</userinput></screen> - - <para>Ezt el kell végeznünk mindegyik - állományrendszerre. Egyszerûen másoljuk - be az érintett állományrendszert a - megfelelõ helyre az elõbb bemutatott parancsban.</para> - - <para>Ezután írjuk át a duplikált - <filename>/mnt/etc/fstab</filename> állományt, - és távolítsuk el vagy csak kommentezzük - ki belõle a lapozóállományt - <footnote> - <para>Megjegyezzük, hogy az <filename>fstab</filename> - állományból kiszedett bejegyzés - miatt valószínûleg más módon - kell majd engedélyeznünk a - lapozóállomány használatát. - Errõl bõvebben lásd a <xref - linkend="adding-swap-space">.</para> - </footnote>. - Írjuk felül a másik - állományrendszer adatait is az új - eszköznek megfelelõ beállításokkal, - ahogy a példa is mutatja:</para> - - <programlisting># Device Mountpoint FStype Options Dump Pass# -#/dev/da0s2b none swap sw 0 0 -/dev/mirror/gm0s1a / ufs rw 1 1</programlisting> - - <para>Az alábbi paranccsal gondoskodjunk róla, hogy a - <filename>geom_mirror.ko</filename> modul - betöltõdjön a rendszerindítás - során:</para> - - <screen>&prompt.root; <userinput>echo 'geom_mirror_load="YES"' >> /mnt/boot/loader.conf</userinput></screen> - <screen>&prompt.root; <userinput>echo 'geom_mirror_load="YES"' >> /boot/loader.conf</userinput></screen> - - <para>Indítsuk újra a rendszert:</para> - - <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen> - - <para>A rendszerindító képernyõn az - egyfelhasználós mód - eléréséhez válasszuk a negyedik (4) - opciót. A konzol használatával - gyõzödjünk meg róla, hogy a rendszer a - <devicename>gm0s1a</devicename> eszközrõl indult. Ezt a - &man.df.1; kimenetébõl deríthetjük - ki.</para> - - <para>Ha minden rendben zajlott, akkor a rendszerünk elindult a - <devicename>gm0s1a</devicename> eszközrõl, és a - <command>login</command> vár minket. Innen a lemez a - következõ parancsok kiadásával - törölhetõ és illeszhetõbe a - tükrözések közé:</para> - - <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/da0 bs=512 count=79</userinput></screen> - - <screen>&prompt.root; <userinput>gmirror configure -a gm0</userinput> -&prompt.root; <userinput>gmirror insert gm0 /dev/da0</userinput></screen> - - <para>Az <option>-a</option> paraméter tudatja a - &man.gmirror.8;-al, hogy automatikus szinkronizációt - használjon, tehát az lemezre írást - magától tükrözze. A - hozzátartozó man oldal elmagyarázza, hogyan - építsük át a tömböt és - hogyan cseréljük benne a lemezeket, habár az - <devicename>data</devicename> névvel hivatkozik az itt - említett <devicename>gm0</devicename> eszközre.</para> - - <para>A frissen létrehozott tükrözés - állapotát az alábbi paranccsal - ellenõrizhetjük:</para> - - <screen>&prompt.root; <userinput>gmirror status</userinput></screen> + <para>A <filename>geom_mirror.ko</filename> modul betöltését így + tudjuk engedélyezni a rendszer indításakor:</para> + + <screen>&prompt.root; <userinput>echo 'geom_mirror_load="YES"' >gt; /boot/loader.conf</userinput></screen> + + <para>Rendszeradminisztrátorként nyissuk meg az + <filename>/etc/fstab</filename> állományt, és + cseréljük le benne az összes korábbi + <devicename>da0</devicename> hivatkozást az + újonnan kialakított <devicename>gm0</devicename> + tükrözés + eszközleírójával:</para> + + <screen>&prompt.root; <userinput>vi /etc/fstab</userinput></screen> + + <para>A &man.vi.1; indítása után a + <userinput>:w /etc/fstab.bak</userinput> kiadásával + készítsünk az <filename>fstab</filename> + állomány jelenlegi tartalmáról + másolatot. Ezután a + <userinput>:%s/da/mirror\/gm/g</userinput> parancs + használatával cseréljük ki az + összes <devicename>da0</devicename> hivatkozást a + <devicename>gm0</devicename> eszköz nevére.</para> + + <para>Az így keletkezõ <filename>fstab</filename> + állomány nagyjából következõ + módon fog kinézni. Most teljesen független, + hogy <acronym>SCSI</acronym> vagy <acronym>ATA</acronym> + meghajtókkal dolgozunk, a <acronym>RAID</acronym> + eszköz neve mindig <devicename>gm</devicename> lesz:</para> + + <programlisting># Eszköz Csatlakozási pont Típus Beállítások Dump Menet +/dev/mirror/gm0s2b none swap sw 0 0 +/dev/mirror/gm0s2a / ufs rw 1 1 +#/dev/mirror/gm0s2d /store ufs rw 2 2 +/dev/mirror/gm0s2e /usr ufs rw 2 2 +/dev/acd0 /cdrom cd9660 ro,noauto 0 0</programlisting> + + <para>Indítsuk újra a rendszert:</para> + + <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen> + + <para>Ennek megfelelõen a rendszer indítása + közben a <devicename>da0</devicename> eszköz helyett a + <devicename>gm0</devicename> eszközt fogjuk + használni. Miután sikeresen + befejezõdött a rendszerindítás, a + <command>mount</command> parancs kiadásával a + saját szemünkkel is meggyõzõdhetünk + az eredményrõl:</para> + + <screen>&prompt.root; <userinput>mount</userinput> +Filesystem 1K-blocks Used Avail Capacity Mounted on +/dev/mirror/gm0s1a 1012974 224604 707334 24% / +devfs 1 1 0 100% /dev +/dev/mirror/gm0s1f 45970182 28596 42263972 0% /home +/dev/mirror/gm0s1d 6090094 1348356 4254532 24% /usr +/dev/mirror/gm0s1e 3045006 2241420 559986 80% /var +devfs 1 1 0 100% /var/named/dev</screen> + + <para>A parancs kimenete az elvárásainknak + megfelelõen remekül néz ki. + Zárásképpen a szinkronizálás + megkezdéséhez a következõ paranccsal + illesszük be a <devicename>da1</devicename> eszközt a + tükrözésbe:</para> + + <screen>&prompt.root; <userinput>gmirror insert gm0 /dev/da1</userinput></screen> + + <para>A tükrözés állapota a + létrejöttét követõen az alábbi + paranccsal ellenõrizhetõ:</para> + + <screen>&prompt.root; <userinput>gmirror status</userinput></screen> + + <para>Az iménti parancs eredményének + nagyjából a következõnek kell lennie + miután a felépítettük a + tükrözést és szinkronizáltuk az + adatokat:</para> + + <screen> Name Status Components +mirror/gm0 COMPLETE da0 + da1</screen> + + <para>Hiba esetén a tükrözés + továbbra is folytatódik, azonban ilyenkor a + példában szereplõ <literal>COMPLETE</literal> + helyett a <literal>DEGRADED</literal> jelzést fogjuk + látni.</para> + </sect2> <sect2> <title>Hibakeresés</title> @@ -517,9 +488,39 @@ OK? <userinput>boot</userinput></screen> újra és telepítsük. Ezzel várhatóan orvosoltuk a problémát.</para> - </sect3> </sect2> + + <sect2> + <title>A meghibásodott lemezek cseréje</title> + + <para>A lemezek tükrözésének egyik + legcsodálatosabb elõnye, hogy a menet közben + meghibásodott meghajtókat gond, és + így feltehetõen adatvesztés + nélkül ki tudjuk cserélni.</para> + + <para>Vegyük az iménti <acronym>RAID</acronym>-1 + konfigurációt, és tételezzük fel, + hogy a <devicename>da1</devicename> eszköz felmondta a + szolgáltatot és cserére szorul. A + meghajtó leváltásához keressük + meg a hibás eszközt, majd állítsuk le + a rendszert. Tegyük be a helyére az újat + és indítsuk újra a rendszerünket. + Miután elindult az operációs rendszer, a + következõ parancsok kiadásával tujduk + logikailag is lecserélni a meghibásodott + lemezt:</para> + + <screen>&prompt.root; <userinput>gmirror forget gm0</userinput> +&prompt.root; <userinput>gmirror insert gm0 /dev/da1</userinput></screen> + + <para>Innen a <command>gmirror</command> <option>status</option> + parancsával kísérhetjük figyelemmel a + tükrözés újraszervezésének + menetét. Csupán ennyi az egész.</para> + </sect2> </sect1> <sect1 id="geom-ggate"> diff --git a/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.sgml index 2685ca8823..8937916e01 100644 --- a/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/mirrors/chapter.sgml @@ -7,7 +7,7 @@ The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/mirrors/chapter.sgml - %SRCID% 1.450 + %SRCID% 1.451 --> <appendix id="mirrors" lang="hu"> @@ -2994,252 +2994,6 @@ doc/zh_*</screen> </sect2> </sect1> - <sect1 id="portsnap"> - <title>A <application>Portsnap</application> - használata</title> - - <sect2 id="portsnap-intro"> - <title>Bevezetés</title> - - <para>A <application>Portsnap</application> a &os; - portfájának biztonságos - terjesztésére megalkotott rendszer. - Hozzávetõleg óránként egyszer a - portfa egy újabb <quote>pillanatképe</quote> - jön létre, amit ezután - tömörítenek és digitálisan - aláírnak. Az így keletkezõ - állományokat végül HTTP-n - keresztül terjesztik.</para> - - <para>A <application>CVSup</application>hoz hasonlóan a - <application>Portsnap</application> szintén - <emphasis>lehúzással</emphasis> frissít. - Ennek folyamán a becsomagolt és - aláírt portfák egy webszerveren - tároltan várják passzívan a kliensek - kéréseit. A felhasználók így - vagy a &man.portsnap.8; elindításával - azonnal, vagy pedig a &man.cron.8; - segítségével rendszeresen automatikusan - kérhetnek frissítéseket.</para> - - <para>Technikai megfontolásokból a - <application>Portsnap</application> nem közvetlenül a - <filename>/usr/ports/</filename> könyvtárban - található <quote>éles</quote> - portfát változtatja meg. Helyette - alapértelmezés szerint a - <filename>/var/db/portsnap/</filename> könyvtárba - kerülõ tömörített - változatával dolgozik. A frissítés - befejeztével ezzel a tömörített - változattal módosítja az éles - portfát.</para> - - <note> - <para>Ha a <application>Portsnap</application>et a &os; - Portgyûjteményébõl - telepítjük, akkor alapértelmezés - szerint a tömörített pillanatképet a - <filename>/var/db/portsnap/</filename> könyvtár - helyett a <filename>/usr/local/portsnap/</filename> - könyvtárban hozza létre.</para> - </note> - - </sect2> - - <sect2 id="portsnap-install"> - <title>Telepítés</title> - - <para>A &os; 6.0 vagy késõbbi változataiban - már a <application>Portsnap</application> az alaprendszer - része. A &os; korábbi verzióra a <filename - role="package">ports-mgmt/portsnap</filename> porton - keresztül telepíthetjük.</para> - - </sect2> - - <sect2 id="portsnap-config"> - <title>A <application>Portsnap</application> - beállítása</title> - - <para>A <application>Portsnap</application> - mûködését az - <filename>/etc/portsnap.conf</filename> - konfigurációs állomány - vezérli. A felhasználók - többségének a benne helyet kapott - alapbeállítások megfelelõek. Aki - kíváncsi a részletekre, nézze meg a - &man.portsnap.conf.5; man oldalt.</para> - - <note> - <para>Amennyiben a <application>Portsnap</application>et a &os; - Portgyûjteményébõl - telepítettük, a - <filename>/etc/portsnap.conf</filename> helyett a - <filename>/usr/local/etc/portsnap.conf</filename> - konfigurációs állományt fogja - használni. Ez az állomány a port - telepítésekor ugyan nem jön létre - automatikusan, de találhatunk belõle egy - mintát, amit a következõ paranccsal tudunk a - helyére másolni:</para> - - <screen>&prompt.root; <userinput>cd /usr/local/etc && cp portsnap.conf.sample portsnap.conf</userinput></screen> - </note> - - </sect2> - - <sect2> - <title>A <application>Portsnap</application> elsõ - futtatása</title> - - <para>A &man.portsnap.8; elsõ futtatásakor le kell - töltenünk a <filename>/var/db/portsnap/</filename> - (vagy <filename>/usr/local/portsnap/</filename>, ha a - <application>Portsnap</application>et a - Portgyûjteménybõl telepítettük) - könyvtárba az egész portfa - tömörített képét. Ez 2006 - elejétõl nagyjából 41 MB - méretûre dagadt.</para> - - <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen> - - <para>Miután sikerült letöltenünk a - tömörített képet, az - <quote>éles</quote> portfa egy - példányát tudjuk kibontani a - <filename>/usr/ports/</filename> könyvtárba. Ez a - lépés még abban az esetben is - kötelezõ, ha már valamilyen módon - feltöltöttük volna ezt a könyvtárat - (például a <application>CVSup</application> - segítségével), hiszen ekkor hozza - létre a <command>portsnap</command> a - mûködéséhez szükséges - adatokat is, amelyek révén el tudja majd - dönteni, hogy a portfa pontosan mely részeit kell - frissítenie.</para> - - <screen>&prompt.root; <userinput>portsnap extract</userinput></screen> - - <note> - <para>A telepítés során alapból nem - jön létre a <filename - class="directory">/usr/ports/</filename> könyvtár. - Ha a &os; 6.0-RELEASE kiadását - használjuk, akkor a <command>portsnap</command> - indítása elõtt ezt a könyvtárat - el kell készítenünk. A &os; vagy a - <application>Portsnap</application> újabb - változataiban a <command>portsnap</command> elsõ - használata során ez már azonban - önmagától megtörténik.<para> - </note> - - </sect2> - - <sect2> - <title>A portfa frissítése</title> - - <para>Miután letöltöttük a portfa - kiinduló pillanatképét és kibontottuk - a <filename>/usr/ports/</filename> könyvtárba, a - frissítése két lépésben - végezhetõ el: elõször - <emphasis>elkérjük</emphasis> (fetch) a - tömörített kép - frissítéseit, majd ezután az így - nyert módosításokat - <emphasis>érvényesítjük</emphasis> az - éles portfán (update). Ez a két - lépés egyetlen <command>portsnap</command> parancs - kiadásával összefoglalható:</para> - - <screen>&prompt.root; <userinput>portsnap fetch update</userinput></screen> - - <note> - <para>A <command>portsnap</command> némely régebbi - változatai nem támogatják ezt a - típusú felírást. Ha tehát - nem mûködne az iménti parancs, akkor helyette - próbáljuk meg ezt:</para> - - <screen>&prompt.root; <userinput>portsnap fetch</userinput> -&prompt.root; <userinput>portsnap update</userinput></screen> - </note> - - </sect2> - - <sect2> - <title>A <application>Portsnap</application> automatikus - futtatása</title> - - <para>A <application>Portsnap</application> szervereken - keletkezõ <quote>hirtelen tömeg</quote> - elkerülése érdekében a - <command>portsnap fetch</command> nem fog &man.cron.8; - feladatként futni. Ehelyett erre létezik egy - külön <command>portsnap cron</command> parancs, amivel - a frissítések letöltése elõtt - véletlenszerûen vár legfeljebb 3600 - másodpercet.</para> - - <para>Emellett a <command>portsnap update</command> parancs - futtatását sem javasoljuk <command>cron</command> - feladatként, mivel komoly problémákat - képes okozni akkor, amikor egy port - fordítása vagy telepítése - során adjuk ki. Azonban az <option>-I</option> - kapcsoló megadásával a portok - <filename>INDEX</filename> állományát - biztonságosan tudjuk frissíteni. (Ebbõl - nyilvánvalóan következik, hogy a - <command>portsnap -I update</command> lefutása - után a <command>portsnap update</command> parancsot is ki - kell majd adni az <option>-I</option> kapcsoló - nélkül a fa többi részének - frissítéséhez.)</para> - - <para>Ha felvesszük a következõ sort az - <filename>/etc/crontab</filename> állományba, - akkor a <command>portsnap</command> frissíteni fogja a - tömörített felvételt és a - <filename>/usr/ports/</filename> könyvtárban - levõ <filename>INDEX</filename> állományokat, - és küld egy levelet az elavult feltelepített - portokról:</para> - - <programlisting>0 3 * * * root portsnap -I cron update && pkg_version -vIL=</programlisting> - - <note> - <para>Ha a rendszeróra nem helyi idõ szerint - jár, akkor a <literal>3</literal> értéket - cseréljük ki egy 0 és 23 között - tetszõleges számra, így - hozzájárulunk a a - <application>Portsnap</application> szerverek - terhelésének egyenletes - elosztásához.</para> - </note> - <note> - <para>A <command>portsnap</command> egyes korábbi - változatai nem engednek meg egyszerre több - parancsot (mint például a <literal>cron - update</literal>). Ha az iménti - felírásban hibát kapunk, akkor - próbáljuk meg a <command>portsnap -I cron - update</command> parancsot kicserélni a - <command>portsnap cron && portsnap -I update</command> - parancsra.</para> - </note> - - </sect2> - </sect1> - <sect1 id="cvs-tags"> <title>CVS címkék</title> diff --git a/hu_HU.ISO8859-2/books/handbook/network-servers/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/network-servers/chapter.sgml index e837f1bd4a..2c486e0571 100644 --- a/hu_HU.ISO8859-2/books/handbook/network-servers/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/network-servers/chapter.sgml @@ -7,7 +7,7 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/network-servers/chapter.sgml - %SRCID% 1.108 + %SRCID% 1.109 --> <chapter id="network-servers" lang="hu"> @@ -3682,8 +3682,8 @@ nis_client_flags="-S <replaceable>NIS tartomány</replaceable>,<replaceabl következõt is (változtassuk meg igényeink szerint):</para> - <programlisting>dhcp_program="/sbin/dhclient" -dhcp_flags=""</programlisting> + <programlisting>dhclient_program="/sbin/dhclient" +dhclient_flags=""</programlisting> </listitem> </itemizedlist> diff --git a/hu_HU.ISO8859-2/books/handbook/ports/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/ports/chapter.sgml index 4edc7065e9..626da9d36e 100644 --- a/hu_HU.ISO8859-2/books/handbook/ports/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/ports/chapter.sgml @@ -1,13 +1,13 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/hu_HU.ISO8859-2/books/handbook/ports/chapter.sgml,v 1.3 2008/08/09 23:38:57 pgj Exp $ + $FreeBSD$ --> <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/ports/chapter.sgml - %SRCID% 1.282 + %SRCID% 1.283 --> <chapter id="ports" lang="hu"> @@ -950,8 +950,8 @@ docbook = <para>A <application>Portsnap</application> lehetõségeinek részletesebb megismeréséhez tekintsük át <link - linkend="portsnap">A Portsnap használata</link> - címû szakaszt.</para> + linkend="updating-portsnap">A Portsnap + használata</link> címû szakaszt.</para> <step> <para>Mivel a &os; 6.1-RELEASE és az utána diff --git a/hu_HU.ISO8859-2/books/handbook/security/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/security/chapter.sgml index e22826e1c5..848f74a3b9 100644 --- a/hu_HU.ISO8859-2/books/handbook/security/chapter.sgml +++ b/hu_HU.ISO8859-2/books/handbook/security/chapter.sgml @@ -7,7 +7,7 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> %SOURCE% en_US.ISO8859-1/books/handbook/security/chapter.sgml - %SRCID% 1.330 + %SRCID% 1.331 --> <chapter id="security" lang="hu"> @@ -3316,7 +3316,7 @@ Aug 27 15:37:58 Aug 28 01:37:58 krbtgt/EXAMPLE.ORG@EXAMPLE.ORG</screen> <para>Miután végeztünk, nyugodtan törölhetjük a jegyet:</para> - <screen>&prompt.user; <userinput>k5destroy</userinput></screen> + <screen>&prompt.user; <userinput>kdestroy</userinput></screen> </sect2> diff --git a/hu_HU.ISO8859-2/books/handbook/updating/Makefile b/hu_HU.ISO8859-2/books/handbook/updating/Makefile new file mode 100644 index 0000000000..1eacb8c021 --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/updating/Makefile @@ -0,0 +1,18 @@ +# +# Build the Handbook with just the content from this chapter. +# +# %SOURCE% en_US.ISO8859-1/books/handbook/updating/Makefile +# %SRCID% 1.1 +# +# $FreeBSD$ +# + +CHAPTERS= updating/chapter.sgml + +VPATH= .. + +MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX} + +DOC_PREFIX?= ${.CURDIR}/../../../.. + +.include "../Makefile" diff --git a/hu_HU.ISO8859-2/books/handbook/updating/chapter.sgml b/hu_HU.ISO8859-2/books/handbook/updating/chapter.sgml new file mode 100644 index 0000000000..577c273e82 --- /dev/null +++ b/hu_HU.ISO8859-2/books/handbook/updating/chapter.sgml @@ -0,0 +1,767 @@ +<!-- + The FreeBSD Documentation Project + $FreeBSD$ +--> + +<!-- The FreeBSD Hungarian Documentation Project + Translated by: PALI, Gabor <pgj@FreeBSD.org> + %SOURCE% en_US.ISO8859-1/books/handbook/updating/chapter.sgml + %SRCID% 1.1 +--> + +<chapter id="updating" lang="hu"> + <chapterinfo> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Írta: </contrib> + </author> + </authorgroup> + <authorgroup> + <author> + <firstname>Colin</firstname> + <surname>Percival</surname> + <contrib>A megíráshoz felhasznált + jegyzeteket készítette: </contrib> + </author> + </authorgroup> + </chapterinfo> + + <title>A &os; frissítése</title> + + <sect1 id="updating-synopsis"> + <title>Áttekintés</title> + + <indexterm><primary>a &os; frissítése</primary></indexterm> + <indexterm> + <primary>freebsd-update</primary> + <see>frissítés</see> + </indexterm> + + <para>A &os; operációs rendszerrel szemben + fejlõdése során egy komoly + elvárás az idõk folyamán + változatlanul fennmaradt: a felhasználóknak + szüksége van olyan alkalmazásokra és + segédprogramokra, amelyekkel képesek a nagyobb + és a kisebb rendszerfrissítéseket + letölteni.</para> + + <para>Hosszú éveken keresztül a rendszerüket + frissíteni kívánó + felhasználók a <application>CVSup</application> + segítségével voltak kénytelenek + elvégezni a különféle biztonsági + javítások letöltését, valamint a + telepített portok és csomagok + frissítését a Portgyûjtemény + által támogatott módszerekkel + összhangban.</para> + + <para>Miközben a <application>CVSup</application> + továbbra is használható, illetve + bekerült az alaprendszerbe egy teljesen C nyelven + íródott változata, egyéb + módszerek is születettek a rendszer naprakészen + tartására.</para> + + <para>A &man.portsnap.8; és &man.freebsd-update.8; + elnevezésû eszközök + modernizálták a frissítési + folyamatát. Elõdeiknél sokkal + hatékonyabbak és a felhasználók + számára is könnyebben alkalmazhatóak. + Némelyek közülük akár a &man.cron.8; + használatával is futtathatóak, aminek + köszönhetõen szinte teljesen + önállósítható a mûvelet. Ez + kifejezetten azok számára jelent elõnyt, akik + több száz &os; alapú rendszer + felügyeletéért felelõsek.</para> + + <para>Ebben a fejezetben bemutatjuk ezeket az új + módszereket, valamint eláruljuk, hogy a + felhasználók és rendszergazdák milyen + módon tudnak leginkább profitálni + használatukból.</para> + + <para>A fejezet elolvasása során megismerjük:</para> + + <itemizedlist> + <listitem> + <para>a Portgyûjtemény + frissítésére milyen eszközök + állnak rendelkezésre;</para> + </listitem> + + <listitem> + <para>a <command>freebsd-update</command> parancs hogyan + alkalmazható a &os; biztonsági + javításainak, vagy kisebb és nagyobb + frissítéseinek + letöltésére;</para> + </listitem> + + <listitem> + <para>hogyan vessük össze a telepített + rendszerünk állapotát egy ismert tiszta + változattal.</para> + </listitem> + </itemizedlist> + + <para>A fejezet elolvasásához ajánlott:</para> + + <itemizedlist> + <listitem> + <para>a &unix; és a &os; alapjainak ismerete (<xref + linkend="basics">);</para> + </listitem> + + <listitem> + <para>a rendszermag konfigurációjának + és fordításának ismerete (<xref + linkend="kernelconfig">);</para> + </listitem> + + <listitem> + <para>a Portgyûjtemény alapvetõ fogalmainak, + valamint a külsõ alkalmazások + telepítésének ismerete (<xref + linkend="ports">);</para> + </listitem> + + <listitem> + <para>a &os; alaprendszerét alkotó + forráskódok + felépítésének, valamint a + &man.mergemaster.8; eszköz használatának + ismerete (<xref linkend="cutting-edge">).</para> + </listitem> + </itemizedlist> + </sect1> + + <sect1 id="updating-freebsdupdate"> + <title>A <command>freebsd-update</command></title> + + <para>A biztonsági javítások + telepítése minden + számítógépes szoftver, + különösen az operációs rendszerek + számára lényeges mozzanat. Nagyon + hosszú ideig ez a &os; esetében nem volt + könnyen megoldható: a javításokat + közvetlenül a forráskódon kellett + elvégezni, ezekbõl újrafordítani a + rendszert, majd telepíteni.</para> + + <para>Ez a nehézség mostanra viszont már + elhárult, mivel a &os; legfrissebb verziói már + tartalmaznak egy <command>freebsd-update</command> nevû + segédprogramot, amellyel mindez leegyszerûsödik. + Ez a program két külön funkciót lát + el. Elõször is, lehetõvé teszi, hogy a &os; + alaprendszer újrafordítása és + -telepítése nélkül javítsunk + biztonsági és egyéb apró + hibákat, valamint másodsorban támogatja a + kisebb és nagyobb verziójú kiadások + közti váltást.</para> + + <note> + <para>Ezek a bináris frissítések azonban csak + a &os; biztonsági csapata által is felügyelt + architektúrák és kiadások + esetén érhetõek el. Emellett bizonyos + lehetõségek használatához, + például a &os; verziói közti + átállás támogatásához + a &man.freebsd-update.8; legújabb változata, + valamint minimum a &os; 6.3 kiadása + szükségeltetik. Ezért ne felejtsük el + alaposan átolvasni a legújabb + kiadásokról szóló + bejelentéseket mielõtt frissítenénk + rájuk, mivel ezzel kapcsolatban fontos + információkat tartalmazhatnak. Az említett + bejelentések a <ulink + url="http://www.FreeBSD.org/releases/"></ulink> címen + érhetõek el.</para> + </note> + + <para>Ha a <command>crontab</command> már hivatkozik a + <command>freebsd-update</command> programra, akkor a most + következõ mûvelet elkezdése elõtt + tiltsuk le. A <command>freebsd-update</command> legújabb + változatát tartalmazó, + <command>gzip</command> és <command>tar</command> + parancsokkal tömörített csomagját az + elõbbi címrõl tölthetjük le, majd az + alábbi parancsok kiadásával + telepíthetjük:</para> + + <screen>&prompt.root; <userinput>gunzip -c freebsd-update-upgrade.tgz | tar xvf -</userinput> +&prompt.root; <userinput>mv freebsd-update.sh /usr/sbin/freebsd-update</userinput> +&prompt.root; <userinput>mv freebsd-update.conf /etc</userinput></screen> + + <para>A &os; frissebb változatainál már semmit + sem kell telepítenünk a + használatához.</para> + + <sect2> + <title>A konfigurációs állományok</title> + + <para>Elõfordulhat, hogy változtatni akarunk valamin + a frissítési folyamatban és ezért + szeretnénk módosítani a programhoz + tartozó konfigurációs + állományt. Az opciók részletes + ismertetéssel rendelkeznek, habár + némelyiknél még további + magyarázat kellhet:</para> + + <programlisting># Az alaprendszerben frissíteni kívánt komponensek +Components src world kernel</programlisting> + + <para>Ezzel a paraméterrel határozhatjuk meg, hogy a + &os; mely részei kerüljenek frissítésre. + Alapértelmezés szerint a program frissíti a + forrásokat, a teljes alaprendszert és a + rendszermagot. Komponensként a + telepítésnél választható + elemeket adhatjuk meg, például "world/games" + hozzáadásakor a games kategória elemei is + folyamatosan frissülni fognak. Az "src/bin" + megadásakor pedig az <filename + class="directory">src/bin</filename> könyvtár + tartalma frissül.</para> + + <para>Ezt a beállítást a legjobb meghagyni az + alapértelmezett értéken, mivel a + további elemek megadásánál + egyenként fel kell sorolni a frissítendõ + komponenseket. Ha itt viszont kifelejtünk valamit, akkor + könnyen megeshet, hogy a források és a + binárisok verziója elcsúszik + egymástól.</para> + + <programlisting># Az IgnorePaths beállítás után megadott szövegre illeszkedõ összes +# bejegyzés frissítése kimarad +IgnorePaths</programlisting> + + <para>Ennél a beállításnál + azokat a könyvtárakat kell megadnunk, amelyeket + (és tartalmukat) ki szeretnénk hagyni a + frissítés során. Ezek lehetnek + például a <filename + class="directory">/bin</filename> vagy az <filename + class="directory">/sbin</filename>. Így meg tudjuk + akadályozni, hogy <command>freebsd-update</command> + esetleg felülírjon valamilyen helyi + változtatást a rendszerünkben.</para> + + <programlisting># Az UpdateIfUnmodified beállítás után megadott elérési útvonalakon csak +# a felhasználó által még nem módosított állományok fognak frissülni +# (hacsak a módosításokat össze nem fésüljük, lásd lentebb) +UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting> + + <para>A megadott könyvtárakban csak azokat a + konfigurációs állományokat fogja + frissíteni, amelyeket nem változtattuk meg. + Amennyiben bármelyikük eltér az eredetileg + frissítendõ változattól, azt a program + nem módosítja. Létezik egy másik + hasonló beállítás, a + <literal>KeepModifiedMetadata</literal>, amely + hatására a <command>freebsd-update</command> az + összefésülés során elmenti a + változtatásokat.</para> + + <programlisting># A MergeChanges beállításnál szereplõ állományok helyi módosításait +# automatikusan összefésüljük a &os; újabb verziójára frissítése közben +MergeChanges /etc/ /var/named/etc/</programlisting> + + <para>Itt azokat a könyvtárakat adhatjuk meg, + amelyekben a <command>freebsd-update</command> + számára engedélyezzük a + konfigurációs állományok új + verziójának + összefésülését a jelenlegi + állapottal. Az összefésülés + lényegében a &man.mergemaster.8; + használatánál már megszokott + módon, &man.diff.1; formátumban érkezõ + módosítások sorozata alapján + történik. Ekkor egy szövegszerkesztõ + segítségével felügyelhetjük az + összefésülés menetét vagy + megállíthatjuk a <command>freebsd-update</command> + futását. Ha kétségeink + adódnak, akkor egyszerûen mentsük le az + <filename class="directory">/etc</filename> + könyvtárat és fogadjuk el mindegyik + összefésülés eredményét. + A <command>mergemaster</command> + mûködésérõl a <xref + linkend="cutting-edge"> ad részletesebb + tájékoztatást.</para> + + <programlisting># A &os; frissítésekor ezt a könyvtárat fogja a program használni a +# letöltött módosítások és az egyéb ideiglenes állományok tárolására +# WorkDir /var/db/freebsd-update</programlisting> + + <para>Az itt megadott könyvtárba fognak kerülni + az elvégzendõ módosítások + és az egyéb ideiglenesen keletkezõ + állományok. A verziók közti + váltás során ebben a + könyvtárban ajánlott legalább + 1 GB szabad tárterületnek lennie.</para> + + <programlisting># A kiadások közti váltás során a Components beállításnál megadott +# elemek kerüljenek csak frissítésre (StrictComponents yes), vagy a +# program próbálja meg magától kitalálni, hogy milyen komponesek +# *lehetnek* fenn a rendszeren és azokat frissítse (StrictComponents +# no)? +# StrictComponents no</programlisting> + + <para>Ha ennél a beállításnál a + <literal>yes</literal> értéket adjuk meg, akkor a + <command>freebsd-update</command> feltételezni fogja, + hogy a <literal>Components</literal> opciónál + felsoroltunk minden frissítendõ komponenst és + nem próbál meg mást is + megváltoztatni. Ilyenkor tehát a + <command>freebsd-update</command> tulajdonképpen + egyedül csak a <literal>Components</literal> által + meghatározott elemekhez tartozó + állományokat fogja frissíteni.</para> + </sect2> + + <sect2> + <title>Biztonsági javítások</title> + + <para>A biztonsági javítások mindig egy + távoli gépen tárolódnak, a + következõ parancsok használatával + tölthetõek le és + telepíthetõek:</para> + + <screen>&prompt.root; <userinput>freebsd-update fetch</userinput> +&prompt.root; <userinput>freebsd-update install</userinput></screen> + + <para>Amennyiben a rendszermagot is érintik + javítások, úgy a rendszert a mûvelet + befejezõdésével újra kell + indítanunk. Ha minden a megfelelõ módon + történt, akkor a rendszerünk már + tartalmazni fogja a korábban letöltött + és telepített javításokat, és + a <command>freebsd-update</command> akár + beállítható egy naponta + végrehajtandó &man.cron.8; feladatnak. Ehhez + mindössze a következõ bejegyzést kell + elhelyeznünk az <filename>/etc/crontab</filename> + állományban:</para> + + <programlisting>@daily root freebsd-update cron</programlisting> + + <para>A bejegyzés szerint naponta egyszer le fog futni a + <command>freebsd-update</command>. Ilyenkor, vagyis a + <option>cron</option> paraméter megadásakor a + <command>freebsd-update</command> csak ellenõrzi, hogy + vannak-e telepítendõ frissítések. Ha + talál, akkor automatikusan letölti ezeket a lemezre, + de nem telepíti. Helyette levélben + értesíti a <username>root</username> + felhasználót, aki ezután bármikor + manuálisan kérheti a + telepítést.</para> + + <para>Probléma esetén az alábbi paranccsal + megkérhetjük a <command>freebsd-update</command> + programot a legutóbb telepített + módosítások + visszavonására:</para> + + <screen>&prompt.root; <userinput>freebsd-update rollback</userinput></screen> + + <para>Ha ez a visszavonás a rendszermagra vagy annak + moduljaira is vonatkozott, akkor a rendszert újra kell + indítanunk a parancs futásának + befejezõdésével. A &os; csak ilyenkor + képes betölteni az új binárisokat + betölteni a memóriába.</para> + + <note> + <para>A <command>freebsd-update</command> + kizárólag csak a <filename>GENERIC</filename> + konfigurációjú rendszermagok + esetén alkalmazható. Amennyiben a + <filename>GENERIC</filename> típusú + rendszermagot módosítottuk, vagy egy + saját rendszermagot telepítettünk, a + <command>freebsd-update</command> nem fog rendesen + mûködni — az elõbbi esetben + megáll, az utóbbiban pedig hibát fog + jelezni.</para> + </note> + </sect2> + + <sect2> + <title>Váltás kisebb és nagyobb + verziók között</title> + + <para>Verziók közti váltás során + a külsõ alkalmazások + mûkõdését akadályozó + régi tárgykódok és + függvénykönyvtárak törlõdni + fognak. Ezért javasoljuk, hogy vagy + töröljük le az összes portot és + telepítsük újra, vagy az alaprendszer + frissítése után hozzuk ezeket is + naprakész állapotba a <filename + role="package">ports-mgmt/portupgrade</filename> + segédprogram segítségével. + Elõször minden bizonnyal szeretnék + kipróbálni a frissítést, ezt a + következõ paranccsal tehetjük meg:</para> + + <screen>&prompt.root; <userinput>portupgrade -af</userinput></screen> + + <para>Ezzel gondoskodunk róla, hogy a minden a + megfelelõen telepítõdjön újra. Ha a + <envar>BATCH</envar> környezeti változót a + <literal>yes</literal> értékre + állítjuk, akkor a folyamat során + megjelenõ összes kérdésre automatikusan + a <literal>yes</literal> választ adjuk, ezáltal + önállósítani tudjuk.</para> + + <para>A <command>freebsd-update</command> képes + frissíteni rendszerünket egy adott kiadásra. + Például a következõ paraméterek + megadásával válthatunk a &os; 6.3 + használatára:</para> + + <screen>&prompt.root; <userinput>freebsd-update -r 6.3-RELEASE upgrade</userinput></screen> + + <para>A parancs elindulása után nem sokkal, a + váltáshoz szükséges + információk + összegyûjtéséhez a + <command>freebsd-update</command> elemzi a + konfigurációs állományában + megadott beállításokat és a rendszer + jelenleg használt verzióját. A + képernyõn ekkor sorban megjelennek a program + részérõl érzékelt és nem + érzékelt komponensek. Mint például + ahogy itt látható:</para> + + <screen>Looking up update.FreeBSD.org mirrors... 1 mirrors found. +Fetching metadata signature for 6.3-BETA1 from update1.FreeBSD.org... done. +Fetching metadata index... done. +Inspecting system... done. + +The following components of FreeBSD seem to be installed: +kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games +src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue +src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin +world/base world/info world/lib32 world/manpages + +The following components of FreeBSD do not seem to be installed: +kernel/generic world/catpages world/dict world/doc world/games +world/proflibs + +Does this look reasonable (y/n)? y</screen> + + <para>Ekkor a <command>freebsd-update</command> + megpróbálja letölteni a verziók + közti váltáshoz szükséges + összes állományt. Bizonyos esetekben + kérdésekkel fordul a felhasználó + felé arra vonatkozóan, hogy miket + telepítsen fel vagy mit csináljon.</para> + + <para>A javítások letöltését + követõen megkezdõdik a + telepítésük. A váltás ezen + lépése az adott gép aktuális + terhelésétõl és + sebességétõl függõen + változó hosszúságú lehet. + Ezután a konfigurációs + állományok összefésülése + zajlik le — itt általában a emberi + felügyeletre is szükség van az + állományok + összefésülésének + irányításához, amelynek folyamatosan + láthatóak az eredményei. A + meghiúsult vagy kihagyott + összefésülések a teljes + frissítési folyamat leállását + vonják maguk után. Az <filename + class="directory">/etc</filename> könyvtárban + tárolt fontosabb állományokról, mint + például a <filename>master.passwd</filename> vagy + <filename>group</filename> javasolt elõzetesen + biztonsági mentést készíteni + és késõbb kézzel hozzájuk adni + a változtatásaikat.</para> + + <note> + <para>A rendszerben ekkor még nem lesz jelen semmilyen + konkrét változás, az összes + említett javítás és + összefésülés egy külön + könyvtárban történik. A + telepített javításokat és az + összefésült konfigurációs + állományokat a folyamat végén + magának a felhasználónak kell + véglegesíteni.</para> + </note> + + <para>A frissítési eljárás + végén a következõ parancs + kiadásával tudjuk ténylegesen + érvényesíteni az eddig elvégzett + módosításokat:</para> + + <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen> + + <para>Elõször mindig a rendszermag és a + hozzátartozó modulok cserélõdnek le. + Ahogy ez végrehajtódott, újra kell + indítanunk a rendszert. Az új rendszermagot + tehát a következõ parancs + futtatásával tudjuk a rendszer + újraindításán keresztül a + memóriába juttatni:</para> + + <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen> + + <para>A rendszer sikeres újraindulása után + ismét el kell indítanunk a + <command>freebsd-update</command> programot, amely + korábban már elmentette a frissítés + állapotát, emiatt a legutóbbi + pontról fog folytatódni, illetve törli az + osztott könyvtárak és + tárgykódok régebbi változatait. + Innen az alábbi paranccsal léphetünk + tovább:</para> + + <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen> + + <note> + <para>A függvénykönyvtárak + verziói közti eltérések + mértékétõl függõen + elképzelhetõ, hogy a telepítés az + említett három fázis helyett + kettõben történik.</para> + </note> + + <para>Most pedig újra kell fordítanunk vagy + telepítenünk az összes általunk + korábban használt külsõ + alkalmazást. Erre azért van + szükségünk, mert bizonyos alkalmazások a + verziók közti váltás során + törölt programkönyvtáraktól + függtek. Ennek automatizálásában a + <filename role="package">ports-mgmt/portupgrade</filename> lesz + segítségünkre. Az alkalmazások + frissítésének + elindításához a következõ + parancsokat használjuk:</para> + + <screen>&prompt.root; <userinput>portupgrade -f ruby</userinput> +&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db</userinput> +&prompt.root; <userinput>portupgrade -f ruby18-bdb</userinput> +&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db</userinput> +&prompt.root; <userinput>portupgrade -af</userinput></screen> + + <para>A parancsok lefutását követõen a + <command>freebsd-update</command> utolsó + hívásával zárjuk le a + frissítést. Ezzel a paranccsal tudunk + tehát pontot tenni a frissítési + procedúra végére:</para> + + <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen> + + <para>Indítsuk újra a rendszert a &os; + frissített változatával. A folyamat ezzel + véget ért.</para> + </sect2> + + <sect2> + <title>Rendszerek állapotainak + összehasonlítása</title> + + <para>A <command>freebsd-update</command> ragyogóan + felhasználható a &os; egy telepített + változatának és egy általunk + garantáltan megbízható + példányának + összevetésére. Ilyenkor a rendszerhez + tartozó segédprogramokat, + programkönyvtárakat és + konfigurációs állományokat + ellenõriztethetjük le. Az + összehasonlítást ezzel a paranccsal + kezdhetjük meg:</para> + + <screen>&prompt.root; <userinput>freebsd-update IDS >> eredmeny.idk</userinput></screen> + + <warning> + <para>Habár a parancs neve <acronym>IDS</acronym> + (intrusion detection system), nem helyettesít semmilyen + olyan behatolásjelzõ megoldást, mint + amilyen például a <filename + role="package">security/snort</filename>. Mivel a + <command>freebsd-update</command> adatokat tárol a + lemezen, teljesen kézenfekvõ a + hamisítás lehetõsége. Míg + ennek eshetõsége adott mértékben + visszaszorítható a + <varname>kern.securelevel</varname> + csökkentésével és a + <command>freebsd-update</command> által használt + adatok írásvédett + állományrendszerre helyezésével, + erre a problémára az ideális + megoldást mégis egy teljes biztonságban + tudható referencia rendszer jelentheti. Ennek + tárolására alkalmas lehet + például egy <acronym>DVD</acronym> vagy egy + külsõ <acronym>USB</acronym>-egység.</para> + </warning> + + <para>A parancs kiadása után megkezdõdik a + rendszer vizsgálata, és az ellenõrzés + során folyamatosan jelennek meg az + átvizsgált állományok a + hozzájuk tartozó ismert és + kiszámított &man.sha256.1;-kódjukkal + együtt. Mivel a képernyõn + túlságosan gyorsan elúsznának az + eredmények, ezért ezeket egy + <filename>eredmeny.idk</filename> nevû + állományba mentjük a késõbbi + elemzésekhez.</para> + + <para>Az így keletkezõ állomány sorai + ugyan meglehetõsen hosszúak, de szerencsére + viszonylag könnyen értelmezhetõek. + Például az adott kiadásban szereplõ + állományoktól eltérõeket ezzel + a paranccsal kérdezhetjük le:</para> + + <screen>&prompt.root; <userinput>cat eredmeny.idk | awk '{ print $1 }' | more</userinput> +/etc/master.passwd +/etc/motd +/etc/passwd +/etc/pf.conf</screen> + + <para>A példában most csak az elsõ + néhány állományt hagytuk meg, gyakran + tapasztalhatunk viszont ennél többet. Ezek + közül bizonyos állományok + értelemszerûen eltérnek, mint itt + például az <filename>/etc/passwd</filename>, mert + idõközben új felhasználókat + adtunk a rendszerhez. Máskor egyéb + állományok, például modulok nevei is + felbukkanhatnak, mert tegyük fel, hogy a + <command>freebsd-update</command> már frissítette + ezeket. Ha ki szeretnénk zárni valamilyen + állományokat vagy könyvtárakat az + ellenõrzésbõl, egyszerûen csak soroljuk + fel ezeket az <filename>/etc/freebsd-update.conf</filename> + állományban megjelenõ + <literal>IDSIgnorePaths</literal> + beállításnál.</para> + + <para>A korábban tárgyaltaktól + függetlenül ez a rendszer alkalmas bonyolultabb + frissítési folyamatok + kisegítésére is.</para> + </sect2> + </sect1> + + <sect1 id="updating-portsnap"> + <title>A Portgyûjtemény frissítése a + Portsnap használatával</title> + + <para>A &os; alaprendszer a Portgyûjtemény + frissítéséhez is tartalmaz egy &man.portsnap.8; + elnevezésû segédprogramot. Ez a program + elindítása után csatlakozik egy távoli + géphez, ellenõrzi a biztonsági kulcsát + és letölti a portok legfrissebb változatait. A + biztonsági kulcs feladata a frissítés + közben letöltött állományok + sértetlenségének szavatolása, ezzel + gondoskodik róla, hogy az adatok átvitelük + közben nem változtak meg. A + Portgyûjtemény legújabb + változatát így érhetjük + el:</para> + + <screen>&prompt.root; <userinput>portsnap fetch</userinput> +Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found. +Fetching snapshot tag from portsnap1.FreeBSD.org... done. +Fetching snapshot metadata... done. +Updating from Wed Aug 6 18:00:22 EDT 2008 to Sat Aug 30 20:24:11 EDT 2008. +Fetching 3 metadata patches.. done. +Applying metadata patches... done. +Fetching 3 metadata files... done. +Fetching 90 patches.....10....20....30....40....50....60....70....80....90. done. +Applying patches... done. +Fetching 133 new ports or files... done.</screen> + + <para>A példában látható, hogy a + &man.portsnap.8; eltéréseket talált a helyi + és a távoli rendszerekben fellelhetõ portok + között, majd azokat ellenõrizte. Emellett az is + megfigyelhetõ, hogy korábban már futtatuk a + programot, mivel ha most indítottuk volna az elsõ + alkalommal, akkor egyszerûen letöltötte volna a + teljes Portgyûjteményt.</para> + + <para>Ahogy a &man.portsnap.8; sikeresen befejezi az imént + kiadott <command>fetch</command> mûvelet + végrehajtását, a helyi rendszeren már + telepítésre készen fog várakozni a + Portgyûjtemény és az hozzátartozó + ellenõrzött módosítások. A + tényleges telepítésüket a + következõképpen kérhetjük: + + <screen>&prompt.root; <userinput>portsnap extract</userinput> +/usr/ports/.cvsignore +/usr/ports/CHANGES +/usr/ports/COPYRIGHT +/usr/ports/GIDs +/usr/ports/KNOBS +/usr/ports/LEGAL +/usr/ports/MOVED +/usr/ports/Makefile +/usr/ports/Mk/bsd.apache.mk +/usr/ports/Mk/bsd.autotools.mk +/usr/ports/Mk/bsd.cmake.mk +<replaceable>...</replaceable></screen> + + <para>Ezzel lezárult a portok frissítése, + innentõl már az aktualizált + Portgyûjtemény felhasználásával + tetszõlegesen telepíthetõek vagy + frissíthetõek az alkalmazások.</para> + </sect1> +</chapter> |