Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 153856 | Differences between
and this patch

Collapse All | Expand All

(-)BGO/handbook/hb-net-advanced.xml (+254 lines)
Line 0 Link Here
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4
<!-- The content of this document is licensed under the CC-BY-SA license -->
5
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7
<!-- $Header: /var/www/viewcvs.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/handbook/hb-net-advanced.xml,v 1.13 2006/10/28 09:17:55 neysx Exp $ -->
8
9
<sections>
10
11
<abstract>
12
Itt arról tanulhatsz hogyan működnek a beállítások - szükséged lesz ezekre az 
13
ismeretekre mielőtt tovább lépnél a moduláris hálózatok megismerése felé.
14
</abstract>
15
16
<version>7.0</version>
17
<date>2006-08-30</date>
18
19
<section>
20
<title>Haladó beállítások</title>
21
<body>
22
23
<p>
24
A <c>config_eth0</c> változó a hálókártya (<c>eth0</c> ebben az esetben) 
25
beállításának a lelke. Ez egy magas szintű utasításlista a hálózati kártya 
26
beállítására. A parancsok az utasításlistában egymás után kerülnek 
27
végrehajtásra.
28
</p>
29
30
<p>
31
A beépített parancsok listája.
32
</p>
33
34
<table>
35
<tr>
36
  <th>Parancs</th>
37
  <th>Leírás</th>
38
</tr>
39
<tr>
40
  <ti><c>null</c></ti>
41
  <ti>Nem csinál semmit</ti>
42
</tr>
43
<tr>
44
  <ti><c>noop</c></ti>
45
  <ti>
46
    Ha a hálókártya engedélyezett és címe is van, sikeresen lép ki a konfigurálásból
47
  </ti>
48
</tr>
49
<tr>
50
  <ti>egy IPv4 vagy IPv6 cím</ti>
51
  <ti>A cím hozzárendelése a hálókártyához</ti>
52
</tr>
53
<tr>
54
  <ti>
55
    <c>dhcp</c>, <c>adsl</c> vagy <c>apipa</c> (vagy egyedi parancs külső 
56
forrásból származó modulból)
57
  </ti>
58
  <ti>
59
    Elindítja a parancsot szolgáltató modult. Például a <c>dhcp</c> elindít egy 
60
    modult amely DHCP-t fog nyújtani. Ez a következők bármelyike lehet: 
61
    <c>dhcpcd</c>, <c>udhcpc</c>, <c>dhclient</c>, <c>pump</c>.    
62
  </ti>
63
</tr>
64
</table>
65
66
<p>
67
Arra az esetre ha a parancsot nem sikerülne végrehajtani, megadhatsz egy 
68
tartalék parancsot. Ennek a parancsnak pontosan meg kell egyeznie a 
69
konfiguráció szerkezetével.
70
</p>
71
72
<p>
73
Ezekből a parancsokból többet is írhatsz egymás után. Következzen 
74
néhány gyakorlati példa.
75
</p>
76
77
<pre caption="Beállítási példák">
78
<comment># Három IPv4 cím hozzárendelése a hálókártyához</comment>
79
config_eth0=(
80
  "192.168.0.2/24"
81
  "192.168.0.3/24"
82
  "192.168.0.4/24"
83
)
84
85
<comment># Egy IPv4 és két IPv6 cím hozzárendelése a hálókártyához</comment>
86
config_eth0=(
87
  "192.168.0.2/24"
88
  "4321:0:1:2:3:4:567:89ab"
89
  "4321:0:1:2:3:4:567:89ac"
90
)
91
92
<comment># Hagyjuk, hogy a kernel adjon címet, hacsak a hálókártya 
93
# le nem áll. Ekkor DHCP-n kérünk új címet. Ha ez nem sikerül az 
94
# APIPA által meghatározott statikus címet állítjuk be</comment>
95
config_eth0=(
96
  "noop"
97
  "dhcp"
98
)
99
fallback_eth0=(
100
  "null"
101
  "apipa"
102
)
103
</pre>
104
105
<note>
106
Ha egynél több címet rendelsz a hálókártyához az <c>ifconfig</c> modullal,
107
minden extra címhez generálódik egy újabb név. Azaz a fenti példa esetében 
108
<c>eth0</c>, <c>eth0:1</c> és <c>eth0:2</c>. Ezekkel semmi különlegeset sem 
109
tudsz csinálni, mivel a kernel és a többi program is úgy kezeli az 
110
<c>eth0:1</c>-et és az <c>eth0:2</c>-t mintha <c>eth0</c> volna.
111
</note>
112
113
<impo>
114
A tartalék parancs sorrendje lényeges! Ha nem adtuk volna meg a <c>null</c> 
115
opciót, akkor az <c>apipa</c> parancs csak akkor került volna végrehajtásra 
116
ha a <c>noop</c> parancs végrehajtása nem sikerült volna.
117
</impo>
118
119
<note>
120
Az <uri link="?part=4&amp;chap=3#apipa">APIPA</uri>-ról és a 
121
<uri link="?part=4&amp;chap=3#dhcp">DHCP</uri>-ről később lesz szó.
122
</note>
123
124
</body>
125
</section>
126
<section>
127
<title>Hálózati függőségek</title>
128
<body>
129
130
<p>
131
Az <path>/etc/init.d</path> található initszkriptek függhetnek egy adott 
132
hálókáryától vagy a hálózattól. Az <path>/etc/conf.d/rc</path> állományban 
133
található <c>RC_NET_STRICT_CHECKING</c> változóval definiálható az, hogy 
134
mit értsen a Gentoo <c>hálózat</c> alatt.
135
</p>
136
137
<table>
138
<tr>
139
  <th>Érték</th>
140
  <th>Leírás</th>
141
</tr>
142
<tr>
143
  <ti><c>none</c></ti>
144
  <ti>A <path>net</path> (hálózat) szolgáltatás állandónak tekintendő</ti>
145
</tr>
146
<tr>
147
  <ti><c>no</c></ti>
148
  <ti>
149
    Alapvetően azt jelenti, hogy legalább egy <path>net.*</path> hálózati 
150
    szolgáltatásnak élnie kell a <path>net.lo</path> mellett. Ezt a beállítást 
151
    használhatják azok a notebook felhasználók, akik WIFI-vel és állandó 
152
    hálókártyával is rendelkeznek, de egyszerre csak az egyiket akarják 
153
    használni.
154
  </ti>
155
</tr>
156
<tr>
157
  <ti><c>lo</c></ti>
158
  <ti>
159
    Megegyezik a <c>no</c> beállítással, de a <path>net.lo</path> is számít. 
160
    Ez a beállítás azoknak lehet hasznos akiknek nem fontos, hogy 
161
    rendszeréledés során már működjön a hálózat.
162
  </ti>
163
</tr>
164
<tr>
165
  <ti><c>yes</c></ti>
166
  <ti>
167
    Ezt beállítva az ÖSSZES hálózati kártyának MŰKÖDNIE KELL ahhoz, hogy a 
168
    <path>hálózat</path> működőképesnek legyen tekinthető.
169
  </ti>
170
</tr>
171
</table>
172
173
<p>
174
Mi a helyzet a <path>net.eth0</path>-tól és a <path>net.eth1</path>-től függő 
175
<path>net.br0</path>-val? Lehet, hogy a <path>net.eth1</path> egy 
176
vezetéknélküli vagy PPP eszköz amelyet be kell állítani mielőtt a hídhoz adod. 
177
Ezt nem lehet megtenni a <path>/etc/init.d/net.br0</path> állományban, mivel ez 
178
egy szimbólikus link a <path>net.lo</path>-ra.
179
</p>
180
181
<p>
182
A megoldás az, hogy csinálsz egy saját <c>depend()</c> függvényt az 
183
<path>/etc/conf.d/net</path> állományban.
184
</p>
185
186
<pre caption="A net.br0 függősége az in /etc/conf.d/net-ben">
187
<comment># Bármilyen függőséget használhatsz (use, after, before) ahogy azt a 
188
# szkriptben is láthatod</comment>
189
depend_br0() {
190
  need net.eth0 net.eth1
191
}
192
</pre>
193
194
<p>
195
A függőségek részletesebb ismertetését megtalálhatod Gentoo Kézikönyv 
196
<uri link="?part=2&amp;chap=4#doc_chap4">Initszkriptek</uri> című fejezetében.
197
</p>
198
199
</body>
200
</section>
201
202
<section id="variable_name">
203
<title>A változók nevei és értékei</title>
204
<body>
205
206
<p>
207
A változók neve több dologból áll össze. Rendesen 
208
<c>valtozo_${kartya|mac|essid|apmac}</c> alakúak. Például a <c>dhcpcd_eth0</c> 
209
változó az eth0 dhcpd beállításait tartalmazza és a <c>dhcpcd_essid</c> 
210
változóban található meg a dhcpd opciói arra az esetre ha bármelyik kártya az 
211
"essid" ESSID-hez csatlakozik.
212
</p>
213
214
<p>
215
Azonban nincs semmilyen megkötés arra, hogy a hálókártyák nevének ethx alakúnak 
216
kell lennie. Valójában a legtöbb vezetéknélküli eszköz neve wlanx, rax vagy 
217
ethx. Ezen kívül néhány felhasználó által definiált eszköznek, mint amilyenek a 
218
hidak például, teszőleges név adható, akár kiskutyafule is lehet. Azért, hogy 
219
még érdekesebb legyen a dolog, a vezetéknélküli elérési pontok (AP, Access 
220
Point) neve tartalmazhat nem alfanumerikus karaktereket is - ez fontos dolog, 
221
mivel ESSID alapján tudod beállítani a hálózat paramétereit.
222
</p>
223
224
<p>
225
A hátránya ennek az, hogy a Gentoo bash változókat használ a hálózathoz - 
226
és a bash az angolon kívül mást nem ért meg. Ezt úgy kerülhetjük meg, hogy a 
227
nem angol betűk helyett az aláhúzás <c>_</c> karaktert írjuk.
228
</p>
229
230
<p>
231
A bash másik hátránya a változók tartalma - néhány karaktert meg kell védeni 
232
attól, hogy a bash értelmezze őket. Ezt a megvédendő karakter elé írt <c>\</c> 
233
karakterrel lehet megtenni. A következő karaktereket kell ily módon megvédeni: 
234
<c>"</c>, <c>'</c> és <c>\</c>.
235
</p>
236
237
<p>
238
Ebben a példában vezetéknélküli ESSID szerepel, mivel ezekben fordulhatnak elő 
239
a legváltozatosabb karakterek. Használhatjuk például a <c>My "\ NET</c> 
240
ESSID-t:
241
</p>
242
243
<pre caption="példa változó nevekre">
244
<comment># Ez működik, de a domain érvénytelen</comment>
245
dns_domain_My____NET="My \"\\ NET"
246
247
<comment># A fenti sor beállítja a dns domaint My "\ NET-re ha egy 
248
vezetéknélküli kártya csatlakozik egy My "\ NET ESSID-vel rendelkező elérési 
249
ponthoz</comment>
250
</pre>
251
252
</body>
253
</section>
254
</sections>
(-)BGO/handbook/hb-net-start.xml (+113 lines)
Line 0 Link Here
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4
<!-- The content of this document is licensed under the CC-BY-SA license -->
5
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7
<!-- $Header: /var/www/viewcvs.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/handbook/hb-net-start.xml,v 1.7 2006/10/28 09:17:55 neysx Exp $ -->
8
9
<sections>
10
11
<abstract> 
12
Ez egy gyors útmutató a hálózati kártyád üzembehelyezéséhez általános 
13
környezetekben.
14
</abstract>
15
16
<version>7.0</version>
17
<date>2006-08-30</date>
18
19
<section>
20
<title>Kezdjünk hozzá</title>
21
<body>
22
23
<note>
24
Ez a leírás feltételezi, hogy már beállítottad a kerneledet és a moduljait a 
25
hardverednek megfelelően és hogy ismered a kártyád interfész nevét.
26
Azt is feltételezzük, hogy az <c>eth0</c>-t szeretnéd beállítani, de ez 
27
<c>eth1</c>, <c>wlan0</c> vagy más is lehet.
28
</note>
29
30
<note>
31
Ez a leírás a <c>baselayout-1.11.11</c> vagy újabbhoz készült.
32
</note>
33
34
<p>
35
A hálókártyád beállításának elkezdéséhez először is tudatnod kell a Gentoo RC
36
rendszerrel, hogy létezik. Ezt úgy teheted meg, hogy az 
37
<path>/etc/init.d</path> könyvtárban készítesz egy szimbólikus linket amely a 
38
<path>net.lo</path> fájlról a <path>net.eth0</path>-ra mutat.
39
</p>
40
41
<pre caption="A net.lo-ra mutató szimbólikus link elkészítése">
42
# <i>cd /etc/init.d</i>
43
# <i>ln -s net.lo net.eth0</i>
44
</pre>
45
46
<p>
47
A Gentoo RC rendszere most már tud a hálókártyáról. Tudnia kell még azt is, 
48
hogy hogyan lehet az új interfészt beállítani. Az <path>/etc/conf.d/net</path> 
49
fáljban állítható be az összes hálózati interfész. A következő példán láthatod 
50
hogyan lehet beállítani DHCP-t és fix IP címet.
51
</p>
52
53
<pre caption="Példák az /etc/conf.d/net beállításaira">
54
<comment># DHCP-hez</comment>
55
config_eth0=( "dhcp" )
56
57
<comment># Statikus IP CIDR formában</comment>
58
config_eth0=( "192.168.0.7/24" )
59
routes_eth0=( "default via 192.168.0.1" )
60
61
<comment># Statikus IP alhálózati maszkkal megadva</comment>
62
config_eth0=( "192.168.0.7 netmask 255.255.255.0" )
63
routes_eth0=( "default gw 192.168.0.1" )
64
</pre>
65
66
<note>
67
Ha nem állítasz be semmit, akkor a DHCP-t feltételezei a rendszer.
68
</note>
69
70
<note>
71
A CIDR a Classless InterDomain Routing rövidítése, magyarul talán Osztálymentes 
72
Domainközi Útvonalválasztásra lehetne fordítani. Eredetileg az IPv4-es címek 
73
A, B és C osztályokra voltak bontva. Ez a korai osztályozási rendszer nem 
74
számolt az Internet tömeges elterjedésével és ezért kritikussá vált új, egyedi 
75
címek kiosztása. A CIDR egy olyan címzési rendszer amely segítsévél egy IP cím 
76
több IP címet is jelenthet. Egy CIRD Ip cím úgy néz ki mint egy normális IP 
77
cím, csak a végén található egy per utáni szám, pl. 192.168.0.0/16. A CDIR részletes leírása a 
78
<uri link="http://rfc.net/rfc1519.html">1519-es számú RFC</uri>-ben található 
79
meg.
80
</note>
81
82
<p>
83
Miután beállítottuk a hálókártyát, az alábbi parancsokkal lehet engedélyezni és 
84
letiltani
85
</p>
86
87
<pre caption="Szkriptek a hálózat elindítására és leállítására">
88
# <i>/etc/init.d/net.eth0 start</i>
89
# <i>/etc/init.d/net.eth0 stop</i>
90
</pre>
91
92
<impo>
93
Ha valami problémába ütközöl, állítsd be az <c>RC_VERBOSE="yes"</c> változót az 
94
<path>/etc/conf.d/rc</path> állományban és így többet tudhatsz meg arról, 
95
hogy mi történt.
96
</impo>
97
98
<p>
99
Miután sikeresen elindítottad és leállítottad a hálózati kártyádat, biztosan 
100
szeretnéd automatikusan elindítani a Gentoo indításakor. Itt láthatod, hogyan 
101
lehet ezt megcsinálni. Az utolsó "rc" parancs arra utasítja a Gentoo-t, hogy 
102
indítson el minden el nem indított szkriptet az aktuális futási szinten.
103
</p>
104
105
<pre caption="Hálókártya automatikus beállítása rendszerindításkor">
106
# <i>rc-update add net.eth0 default</i>
107
# <i>rc</i>
108
</pre>
109
110
</body>
111
</section>
112
113
</sections>
(-)BGO/handbook/hb-portage-files.xml (+404 lines)
Line 0 Link Here
1
<?xml version='1.0' encoding='UTF-8'?>
2
<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4
<!-- The content of this document is licensed under the CC-BY-SA license -->
5
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7
<!-- $Header: /var/www/viewcvs.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/handbook/hb-portage-files.xml,v 1.13 2006/11/03 22:03:06 nightmorph Exp $ -->
8
9
<sections>
10
11
<abstract>
12
Once you want to know Portage in-depth you need to know where it stores its
13
files and data.
14
</abstract>
15
16
<version>1.8</version>
17
<date>2006-11-03</date>
18
19
<section>
20
<title>Portage Files</title>
21
<subsection>
22
<title>Configuration Directives</title>
23
<body>
24
25
<p>
26
Portage comes with a default configuration stored in
27
<path>/etc/make.globals</path>. When you take a look at it, you'll notice that
28
all Portage configuration is handled through variables. What variables Portage
29
listens to and what they mean are described later.
30
</p>
31
32
<p>
33
Since many configuration directives differ between architectures, Portage also
34
has default configuration files which are part of your profile. Your profile is
35
pointed to by the <path>/etc/make.profile</path> symlink; Portage'
36
configurations are set in the <path>make.defaults</path> files of your profile
37
and all parent profiles. We'll explain more about profiles
38
and the <path>/etc/make.profile</path> directory later on.
39
</p>
40
41
<p>
42
If you're planning on changing a configuration variable, <e>don't</e> alter
43
<path>/etc/make.globals</path> or <path>make.defaults</path>. 
44
Instead use <path>/etc/make.conf</path> which has precedence over
45
the previous files. You'll also find a <path>/etc/make.conf.example</path>. As 
46
the name implies, this is merely an example file - Portage does not read in 
47
this file.
48
</p>
49
50
<p>
51
You can also define a Portage configuration variable as an environment variable,
52
but we don't recommend this.
53
</p>
54
55
</body>
56
</subsection>
57
<subsection>
58
<title>Profile-Specific Information</title>
59
<body>
60
61
<p>
62
We've already encountered the <path>/etc/make.profile</path> directory. Well, 
63
this isn't exactly a directory but a symbolic link to a profile, by default one
64
inside <path>/usr/portage/profiles</path> although you can create your own 
65
profiles elsewhere and point to them. The profile this symlink points to is the
66
profile to which your system adheres.
67
</p>
68
69
<p>
70
A profile contains architecture-specific information for Portage, such as a 
71
list of packages that belong to the system corresponding with that profile,
72
a list of packages that don't work (or are masked-out) for that profile, etc.
73
</p>
74
75
</body>
76
</subsection>
77
<subsection>
78
<title>User-Specific Configuration</title>
79
<body>
80
81
<p>
82
When you need to override Portage's behaviour regarding the installation of
83
software, you will end up editing files within <path>/etc/portage</path>. You
84
are <e>highly recommended</e> to use files within <path>/etc/portage</path> and
85
<e>highly discouraged</e> to override the behaviour through environment
86
variables!
87
</p>
88
89
<p>
90
Within <path>/etc/portage</path> you can create the following files:
91
</p>
92
93
<ul>
94
  <li>
95
    <path>package.mask</path> which lists the packages you never want Portage to
96
    install
97
  </li>
98
  <li>
99
    <path>package.unmask</path> which lists the packages you want to be able to
100
    install even though the Gentoo developers highly discourage you from
101
    emerging them
102
  </li>
103
  <li>
104
    <path>package.keywords</path> which lists the packages you want to be able
105
    to install even though the package hasn't been found suitable for your 
106
    system or architecture (yet)
107
  </li>
108
  <li>
109
    <path>package.use</path> which lists the USE flags you want to use for
110
    certain packages without having the entire system use those USE flags
111
  </li>
112
</ul>
113
114
<p>
115
More information about the <path>/etc/portage</path> directory and a full list
116
of possible files you can create can be found in the Portage man page:
117
</p>
118
119
<pre caption="Reading the Portage man page">
120
$ <i>man portage</i>
121
</pre>
122
123
</body>
124
</subsection>
125
<subsection>
126
<title>Changing Portage File &amp; Directory Locations</title>
127
<body>
128
129
<p>
130
The previously mentioned configuration files cannot be stored elsewhere -
131
Portage will always look for those configuration files at those exact locations.
132
However, Portage uses many other locations for various purposes: build
133
directory, source code storage, Portage tree location, ...
134
</p>
135
136
<p>
137
All these purposes have well-known default locations but can be altered to your
138
own taste through <path>/etc/make.conf</path>. The rest of this chapter explains
139
what special-purpose locations Portage uses and how to alter their placement on
140
your filesystem.
141
</p>
142
143
<p>
144
This document isn't meant to be used as a reference though. If you need 100%
145
coverage, please consult the Portage and <path>make.conf</path> man pages:
146
</p>
147
148
<pre caption="Reading the Portage and make.conf man pages">
149
$ <i>man portage</i>
150
$ <i>man make.conf</i>
151
</pre>
152
153
</body>
154
</subsection>
155
</section>
156
<section>
157
<title>Storing Files</title>
158
<subsection>
159
<title>The Portage Tree</title>
160
<body>
161
162
<p>
163
The Portage tree default location is <path>/usr/portage</path>. This is defined
164
by the PORTDIR variable. When you store the Portage tree elsewhere (by altering
165
this variable), don't forget to change the <path>/etc/make.profile</path>
166
symbolic link accordingly.
167
</p>
168
169
<p>
170
If you alter the PORTDIR variable, you might want to alter the following
171
variables as well since they will not notice the PORTDIR change. This is due to
172
how Portage handles variables: PKGDIR, DISTDIR, RPMDIR.
173
</p>
174
175
</body>
176
</subsection>
177
<subsection>
178
<title>Prebuilt Binaries</title>
179
<body>
180
181
<p>
182
Even though Portage doesn't use prebuilt binaries by default, it has extensive
183
support for them. When you ask Portage to work with prebuilt packages, it will
184
look for them in <path>/usr/portage/packages</path>. This location is defined by
185
the PKGDIR variable. 
186
</p>
187
188
</body>
189
</subsection>
190
<subsection>
191
<title>Source Code</title>
192
<body>
193
194
<p>
195
Application source code is stored in <path>/usr/portage/distfiles</path> by
196
default. This location is defined by the DISTDIR variable.
197
</p>
198
199
</body>
200
</subsection>
201
<subsection>
202
<title>RPM Files</title>
203
<body>
204
205
<p>
206
Even though Portage cannot use RPM files, it is able to generate them using the
207
<c>ebuild</c> command (see <uri link="?part=3&amp;chap=6">The Ebuild
208
Application</uri>). The default location where Portage stores RPM files is 
209
<path>/usr/portage/rpm</path> and is defined by the RPMDIR variable.
210
</p>
211
212
</body>
213
</subsection>
214
<subsection>
215
<title>Portage Database</title>
216
<body>
217
218
<p>
219
Portage stores the state of your system (what packages are installed, what files
220
belong to which package, ...) in <path>/var/db/pkg</path>. Do <e>not</e> alter
221
these files manually! It might break Portage's knowledge of your system.
222
</p>
223
224
</body>
225
</subsection>
226
<subsection>
227
<title>Portage Cache</title>
228
<body>
229
230
<p>
231
The Portage cache (with modification times, virtuals, dependency tree
232
information, ...) is stored in <path>/var/cache/edb</path>. This location really
233
is a cache: you can clean it if you are not running any portage-related
234
application at that moment.
235
</p>
236
237
</body>
238
</subsection>
239
</section>
240
<section>
241
<title>Building Software</title>
242
<subsection>
243
<title>Temporary Portage Files</title>
244
<body>
245
246
<p>
247
Portage's temporary files are stored in <path>/var/tmp</path> by default. This 
248
is defined by the PORTAGE_TMPDIR variable.
249
</p>
250
251
<p>
252
If you alter the PORTAGE_TMPDIR variable, you might want to alter the following
253
variables as well since they will not notice the PORTAGE_TMPDIR change. This 
254
is due to how Portage handles variables: BUILD_PREFIX.
255
</p>
256
257
</body>
258
</subsection>
259
<subsection>
260
<title>Building Directory</title>
261
<body>
262
263
<p>
264
Portage creates specific build directories for each package it emerges inside
265
<path>/var/tmp/portage</path>. This location is defined by the BUILD_PREFIX
266
variable.
267
</p>
268
269
</body>
270
</subsection>
271
<subsection>
272
<title>Live Filesystem Location</title>
273
<body>
274
275
<p>
276
By default Portage installs all files on the current filesystem 
277
(<path>/</path>), but you can change this by setting the ROOT environment 
278
variable. This is useful when you want to create new build images.
279
</p>
280
281
</body>
282
</subsection>
283
</section>
284
<section>
285
<title>Logging Features</title>
286
<subsection>
287
<title>Ebuild Logging</title>
288
<body>
289
290
<p>
291
Portage can create per-ebuild logfiles, but only when the PORT_LOGDIR variable
292
is set to a location that is writable by Portage (the portage user). By default
293
this variable is unset. If you don't set PORT_LOGDIR, then you won't receive
294
any build logs with the current logging system, though you may receive some
295
logs from the new <c>elog</c>. If you do have PORT_LOGDIR defined and you use
296
elog, you will receive build logs and any logs saved by elog, as explained
297
below.
298
</p>
299
300
<p>
301
Portage offers fine-grained control over logging through the use of
302
<c>elog</c>:
303
</p>
304
305
<ul>
306
  <li>
307
    PORTAGE_ELOG_CLASSES: This is where you set what kinds of messages to be
308
    logged. You can use any space-separated combination of <c>info</c>,
309
    <c>warn</c>, <c>error</c>, and <c>log</c>.
310
  </li>
311
  <li>
312
    <ul>
313
      <li>info: Logs "einfo" messages printed by an ebuild</li>
314
      <li>warn: Logs "ewarn" messages printed by an ebuild</li>
315
      <li>error: Logs "eerror" messages printed by an ebuild</li>
316
      <li>log: Logs the "elog" messages found in some ebuilds</li>
317
    </ul>
318
  </li>
319
  <li>
320
    PORTAGE_ELOG_SYSTEM: This selects the module(s) to process the log
321
    messages. If left empty, logging is disable. You can use any
322
    space-separated combination of <c>save</c>, <c>custom</c>, <c>syslog</c>,
323
    and <c>mail</c>. You must select at least one module in order to use elog.
324
  </li>
325
  <li>
326
    <ul>
327
      <li>
328
	save: This saves one log per package in <path>$PORT_LOGDIR/elog</path>,
329
	or <path>/var/log/portage/elog</path> if $PORT_LOGDIR is not defined.
330
      </li>
331
      <li>
332
	custom: Passes all messages to a user-defined command in
333
	$PORTAGE_ELOG_COMMAND; this will be discussed later.
334
      </li>
335
      <li>syslog: Sends all messages to the installed system logger.</li>
336
      <li>
337
	mail: Passes all messages to a user-defined mailserver in
338
	$PORTAGE_ELOG_MAILURI; this will be discussed later. The mail features
339
	of elog require &gt;=<c>portage-2.1.1</c>.
340
      </li>
341
    </ul>
342
  </li>
343
  <li>
344
    PORTAGE_ELOG_COMMAND: This is only used when the <c>custom</c> module is
345
    enabled. Here is where you specify a command to process log messages. Note
346
    that you can make use of two variables: ${PACKAGE} is the package name and
347
    version, while ${LOGFILE} is the absolute path to the logfile. Here's one
348
    possible usage:
349
  </li>
350
  <li>
351
    <ul>
352
      <li>
353
        PORTAGE_ELOG_COMMAND="/path/to/logger -p '\${PACKAGE}' -f '\${LOGFILE}'"
354
      </li>
355
    </ul>
356
  </li>
357
  <li>
358
    PORTAGE_ELOG_MAILURI: This contains settings for the <c>mail</c> module
359
    such as address, user, password, mailserver, and port number. The default
360
    setting is "root@localhost localhost".
361
  </li>
362
  <li>
363
    Here's an example for an smtp server that requires username and
364
    password-based authentication on a particular port (the default is port
365
    25):
366
  </li>
367
  <li>
368
    <ul>
369
      <li>
370
	PORTAGE_ELOG_MAILURI="user@some.domain
371
	username:password@smtp.some.domain:995"
372
      </li>
373
    </ul>
374
  </li>
375
  <li>
376
    PORTAGE_ELOG_MAILFROM: Allows you to set the "from" address of log mails;
377
    defaults to "portage" if unset.
378
  </li>
379
  <li>
380
    PORTAGE_ELOG_MAILSUBJECT: Allows you to create a subject line for log
381
    mails. Note that you can make use of two variables: ${PACKAGE} will display
382
    the package name and version, while ${HOST} is the fully qualified domain
383
    name of the host Portage is running on.
384
  </li>
385
  <li>Here's one possible use:</li>
386
  <li>
387
    <ul>
388
      <li>
389
	PORTAGE_ELOG_MAILSUBJECT="package \${PACKAGE} was merged on \${HOST}
390
	with some messages"
391
      </li>
392
    </ul>
393
  </li>
394
</ul>
395
396
<impo>
397
If you used <c>enotice</c> with Portage-2.0.*, you must completely remove
398
enotice, as it is incompatible with elog.
399
</impo>
400
401
</body>
402
</subsection>
403
</section>
404
</sections>
(-)BGO/handbook/hb-working-portage.xml (+685 lines)
Line 0 Link Here
1
<?xml version='1.0' encoding='UTF-8'?>
2
<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4
<!-- The content of this document is licensed under the CC-BY-SA license -->
5
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7
<!-- $Header: /var/www/www.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/handbook/hb-working-portage.xml,v 1.59 2006/09/04 11:21:06 nightmorph Exp $ -->
8
9
<sections>
10
11
<version>1.54</version>
12
<date>2006-09-04</date>
13
14
<section>
15
<title>Üdvözlünk a Portage világában</title>
16
<body>
17
18
<p>
19
A Portage talán a legnevezetesebb újítása a Gentoo-nak a szoftverkezelés terén. 
20
Nagyfokú rugalmassága és számtalan jellegzetes képessége okán gyakran a Linuxon 
21
elérhető legjobb szoftverkezelő eszköznek tekintik. 
22
</p>
23
24
<p>
25
A Portage teljes egészében <uri link="http://www.python.org">Python</uri>ban
26
és <uri link="http://www.gnu.org/software/bash">Bash</uri>ban íródott, ezért 
27
teljesen átlátható a felhasználó számára, mivel mindkettő szkriptnyelv.
28
</p>
29
30
<p>
31
A legtöbb felhasználó a Portage-t az <e>emerge</e> eszköz segítségével 
32
használja. Ez a fejezet nem szándékozik az emerge kézikönyv-oldalának másolata 
33
lenni, az emerge teljes opciólistáját a megfelelő kézikönyv-oldalon fogod 
34
megtalálni:
35
</p>
36
37
<pre caption="Az emerge kézikönyv-oldalának olvasása">
38
$ <i>man emerge</i>
39
</pre>
40
41
</body>
42
</section>
43
<section>
44
<title>A Portage fa</title>
45
<subsection>
46
<title>Ebuildek</title>
47
<body>
48
49
<p>
50
Amikor csomagokról beszélünk, gyakran a szoftverek elnevezéseire gondolunk, 
51
amelyek a Gentoo-felhasználók számára a Portage fán keresztül érhetőek el. A 
52
Portage fa tulajdonképpen <e>ebuildek</e> gyűjteménye, az <e>ebuild</e> pedig 
53
olyan fájl, amely minden olyan információt tartalmaz, ami a Portage-nek 
54
szükséges a szoftverkarbantartáshoz (telepítés, keresés, lekérdezés, ...). Ezek 
55
az ebuildek alapértelmezésben az <path>/usr/portage</path> könyvtárban vannak.
56
</p>
57
58
<p>
59
Amikor megkéred a Portage-t, hogy hajtson végre valamilyen szoftverrel 
60
kapcsolatos feladatot, akkor a rendszereden lévő ebuildeket használja 
61
kiindulópontként. Ezért nagyon fontos, hogy rendszeresen frissítsd ezeket, így 
62
a Portage tudni fog minden új szoftverről, biztonsági frissítésről, stb.
63
</p>
64
65
</body>
66
</subsection>
67
<subsection>
68
<title>A Portage fa frissítése</title>
69
<body>
70
71
<p>
72
A Portage fát rendszerint az <uri link="http://rsync.samba.org/">rsync</uri> 
73
segítségével frissítjük, ami egy gyors inkrementális fájlátviteli eszköz. A 
74
frissítés meglehetősen egyszerű, mivel az <c>emerge</c> parancs egy front-endet 
75
biztosít az rsync-hez:
76
</p>
77
78
<pre caption="A Portage fa frissítése">
79
# <i>emerge --sync</i>
80
</pre>
81
82
<p>
83
Ha tűzfal-korlátozások miatt nem tudsz rsync-elni, még mindig frissítheted a 
84
Portage fát a naponta újragenerált Portage snapshotjaink segítségével. Az 
85
<c>emerge-webrsync</c> eszköz automatikusan letölti és telepíti a legfrissebb 
86
snapshotot a gépedre:
87
</p>
88
89
<pre caption=" Az emerge-webrsync futtatása">
90
# <i>emerge-webrsync</i>
91
</pre>
92
93
</body>
94
</subsection>
95
</section>
96
<section>
97
<title>A szoftverek karbantartása</title>
98
<subsection>
99
<title>Szoftverkeresés</title>
100
<body>
101
102
<p>
103
Ha a Portage fában szoftvernevekre akarsz keresni, használhatod az 
104
<c>emerge</c> beépített keresőjét. Alapértelmezésben az <c>emerge --search</c> 
105
azon csomagok nevét adja vissza, amelyek címében részben vagy egészben 
106
megtalálható az adott keresési kifejezés.
107
</p>
108
109
<p>
110
Mondjuk keressünk rá az összes olyan csomagra, amelynek a neve tartalmazza a 
111
"pdf"-et:
112
</p>
113
114
<pre caption="pdf-nevű csomagok keresése">
115
$ <i>emerge --search pdf</i>
116
</pre>
117
118
<p>
119
Ha a csomagleírásokban is akarsz keresni, használd a <c>--searchdesc</c> 
120
(vagy <c>-S</c>) kapcsolót:
121
</p>
122
123
<pre caption="pdf-vonatkozású csomagok keresése">
124
$ <i>emerge --searchdesc pdf</i>
125
</pre>
126
127
<p>
128
A kimenetet megnézve észreveheted, hogy egy csomó információval lát el. Az 
129
egyes mezők elnevezése magáért beszél, ezért nem merülünk el a magyarázatukban:
130
</p>
131
132
<pre caption="Példa az 'emerge --search' kimenetére">
133
*  net-print/cups-pdf
134
      Latest version available: 1.5.2
135
      Latest version installed: [ Not Installed ]
136
      Size of downloaded files: 15 kB
137
      Homepage:    http://cip.physik.uni-wuerzburg.de/~vrbehr/cups-pdf/
138
      Description: Provides a virtual printer for CUPS to produce PDF files.
139
      License:     GPL-2
140
</pre>
141
142
</body>
143
</subsection>
144
<subsection>
145
<title>Szoftvertelepítés</title>
146
<body>
147
148
<p>
149
Ha rábukkantál valamilyen neked tetsző szoftverre, könnnyen telepítheted az 
150
<c>emerge</c> paranccsal: csak írd utána a csomag nevét. Például a 
151
<c>gnumeric</c> telepítése így néz ki:
152
</p>
153
154
<pre caption="A gnumeric telepítése">
155
# <i>emerge gnumeric</i>
156
</pre>
157
158
<p>
159
Mivel sok alkalmazás egymástól is függ, egy adott szoftvercsomag telepítése 
160
magával vonhatja több függőségi csomag telepítését is. Emiatt nem kell 
161
aggódnod, mivel a Portage a függőségeket jól kezeli. Ha látni akarod, hogy mit 
162
<e>telepítene</e> a Portage egy konkrét csomag függőségeként, használd a 
163
<c>--pretend</c> kapcsolót. Példa:
164
</p>
165
166
<pre caption="A gnumeric függőségeinek megtekintése">
167
# <i>emerge --pretend gnumeric</i>
168
</pre>
169
170
<p>
171
Amikor megkéred a Portage-t, hogy telepítsen egy csomagot, le fogja tölteni a 
172
szükséges forráskódot az Internetről, és ezt alapértelmezésben az 
173
<path>/usr/portage/distfiles</path> könyvtárban fogja tárolni. Ezután 
174
kicsomagolja, lefordítja és telepíti a csomagot. Ha azt akarod, hogy a Portage 
175
csak letöltse, de ne telepítse a forrást, a <c>--fetchonly</c> kapcsolóval 
176
használd az <c>emerge</c> parancsot:
177
</p>
178
179
<pre caption="A gnumeric forráskódjának letöltése">
180
# <i>emerge --fetchonly gnumeric</i>
181
</pre>
182
183
</body>
184
</subsection>
185
<subsection>
186
<title>A telepített csomagok dokumentációjának keresése</title>
187
<body>
188
189
<p>
190
Sok csomagot saját dokumentációval szállítanak. Néha a <c>doc</c> USE flag 
191
határozza meg, hogy települjön-e a csomag dokumentációja. A <c>doc</c> USE flag 
192
meglétét az <c>emerge -vp &lt;csomagnév&gt;</c> paranccsal ellenőrizheted.
193
</p>
194
195
<pre caption="A doc USE flag ellenőrzése">
196
<comment>(Az alsa-lib persze csak egy példa.)</comment>
197
# <i>emerge -vp alsa-lib</i>
198
[ebuild  N    ] media-libs/alsa-lib-1.0.9_rc3  +doc -jack 674 kB
199
</pre>
200
201
<p>
202
A <c>doc</c> USE flaget engedélyezheted vagy letilthatod, akár globálisan az 
203
<path>/etc/make.conf</path> fájlban, akár csomagonként az 
204
<path>/etc/portage/package.use</path> fájlban. Létrehozhatsz egy könyvtárat is 
205
<path>/etc/portage/package.use</path> néven, és itt felsorolhatod az előbbieket 
206
egy fájlban (ezen a könyvtáron belül). A 
207
<uri link="?part=2&amp;chap=2">USE flagek</uri> fejezet részletesen tárgyalja 
208
ezt a témát.
209
</p>
210
211
<p>
212
Egy adott telepített csomag dokumentációja általában a csomag nevét viselő 
213
alkönyvtárban található az <path>/usr/share/doc</path> könyvtáron belül. 
214
Kilistázhatod az összes telepített fájlt az <c>equery</c> segítségével, ami 
215
része az <c>app-portage/gentoolkit</c> 
216
<uri link="/doc/en/gentoolkit.xml">csomagnak</uri>.
217
</p>
218
219
<pre caption="A csomagdokumentáció helyének meghatározása">
220
# <i>ls -l /usr/share/doc/alsa-lib-1.0.9_rc3</i>
221
total 28
222
-rw-r--r--  1 root root  669 May 17 21:54 ChangeLog.gz
223
-rw-r--r--  1 root root 9373 May 17 21:54 COPYING.gz
224
drwxr-xr-x  2 root root 8560 May 17 21:54 html
225
-rw-r--r--  1 root root  196 May 17 21:54 TODO.gz
226
227
<comment>(Másik lehetőségként használhatod az equery-t bizonyos fájlok helyének 
228
meghatározására:)</comment>
229
# <i>equery files alsa-lib | less</i>
230
media-libs/alsa-lib-1.0.9_rc3
231
* Contents of media-libs/alsa-lib-1.0.9_rc3:
232
/usr
233
/usr/bin
234
/usr/bin/alsalisp
235
<comment>(A kimenetet lerövidítettük)</comment>
236
</pre>
237
238
</body>
239
</subsection>
240
<subsection>
241
<title>Szoftvereltávolítás</title>
242
<body>
243
244
<p>
245
Ha el akarsz távolítani egy szoftvercsomagot a rendszeredből, használd az 
246
<c>emerge --unmerge</c> parancsot, ami arra utasítja a Portage-t, hogy 
247
távolítson el minden, az adott csomag által telepített fájlt a rendszerből, 
248
<e>kivéve</e> az adott alkalmazás konfigurációs fájljait, ha azokat telepítés 
249
után módosítottad. A konfigurációs fájlok érintetlenül hagyása lehetővé teszi, 
250
hogy később folytathasd a munkát az adott csomaggal, ha valaha is úgy döntesz, 
251
hogy újra telepíted.
252
</p>
253
254
<p>
255
Azonban <brite>nyomatékosan figyelmeztetünk</brite>: a Portage <e>nem</e> fogja 
256
ellenőrizni, hogy az eltávolítandó csomag szükséges-e más csomagok számára. 
257
Mindenesetre olyankor azért figyelmeztet, ha olyan csomagot akarsz 
258
eltávolítani, ami létfontosságú a rendszer számára, és nélküle összeomolhat az 
259
egész.
260
</p>
261
262
<pre caption="A gnumeric eltávolítása a rendszerből">
263
# <i>emerge --unmerge gnumeric</i>
264
</pre>
265
266
<p>
267
Egy csomag eltávolításakor megmaradnak azok a függőségek, amelyeket 
268
telepítéskor automatikusan magával hozott. A feleslegessé vált, azaz 
269
eltávolítható függőségek meghatározáshoz használd az 
270
<c>emerge</c> <c>--depclean</c> funkcióját. Erről később részletesen fogunk 
271
beszélni.
272
</p>
273
274
</body>
275
</subsection>
276
<subsection>
277
<title>A rendszer frissítése</title>
278
<body>
279
280
<p>
281
Ha tökéletes állapotban akarod tartani a rendszeredet (nem is szólva a 
282
legfrissebb biztonsági frissítésekről), rendszeresen frissíteni kell.  Mivel a 
283
Portage csak a gépeden lévő Portage fában lévő ebuildeket ellenőrzi, először is 
284
ezt kell frissíteni. Ha ez megtörtént, frissítheted a rendszeredet az 
285
<c>emerge --update world</c> paranccsal. Az alábbi példában az <c>--ask</c> 
286
kapcsolót is használjuk, ami megmondja a Portage-nak, hogy mutassa meg a 
287
frissítendő csomagok listáját, és kérdezzen rá, hogy akarod-e folytatni a 
288
frissítést:
289
</p>
290
291
<pre caption="A rendszer frissítése">
292
# <i>emerge --update --ask world</i>
293
</pre>
294
295
<p>
296
A Portage ezután megkeresi a telepített csomagok újabb verzióját, azonban csak 
297
a kifejezetten telepített alkalmazásoknak néz utána, a függőségként települt 
298
csomagoknak nem. Ha minden egyes csomagot frissíteni szeretnél, használd a 
299
<c>--deep</c> kapcsolót:
300
</p>
301
302
<pre caption="A teljes rendszer frissítése">
303
# <i>emerge --update --deep world</i>
304
</pre>
305
306
<p>
307
Mivel biztonsági frissítések olyan csomagokra is jönnek ki, amelyeket nem 
308
kifejezetten, hanem csak más programok függőségeként telepítettél, érdemes ezt 
309
a parancsot időnként lefuttatni.
310
</p>
311
312
<p>
313
Ha nemrég módosítottad valamelyik 
314
<uri link="?part=2&amp;chap=2">USE flaget</uri>, érdemes használni a 
315
<c>--newuse</c> kapcsolót is. Ekkor a Portage ellenőrzi, hogy a módosítás miatt 
316
szükséges-e új csomagok telepítése, vagy a meglévők újrafordítása:
317
</p>
318
319
<pre caption="Teljes rendszerfrissítés">
320
# <i>emerge --update --deep --newuse world</i>
321
</pre>
322
323
</body>
324
</subsection>
325
<subsection>
326
<title>Metacsomagok</title>
327
<body>
328
329
<p>
330
A Portage-ben néhány csomagnak nincs valódi tartalma, hanem csomaggyűjtemények 
331
telepítésére használatos. Például a <c>kde</c> csomag a teljes KDE környezetet 
332
telepíti úgy, hogy függőségként különféle KDE-vel kapcsolatos csomagokat húz 
333
magával.
334
</p>
335
336
<p>
337
Amennyiben ilyen csomagot akarsz eltávolítani, az <c>emerge --unmerge</c> 
338
futtatása az adott csomagon nem sok mindent fog csinálni, mivel a függőségek 
339
ott maradnak a rendszerben.
340
</p>
341
342
<p>
343
A Portage képes eltávolítani az elárvult függőségeket is, de mivel dinamikus 
344
függőségi rendszerekről van szó, először mindig végezz teljes 
345
rendszerfrissítést, beleértve a USE flagek módosítása miatti változásokat is. 
346
Ezután már futtathatod az <c>emerge --depclean</c> parancsot, amivel az 
347
elárvult függőségeket tudod eltávolítani. Ha ez megtörtént, újra kell 
348
fordítanod azokat az alkalmazásokat, amelyek dinamikusan voltak linkelve a most 
349
eltávolított szoftverekhez, de már nincs szükségük azokra.
350
</p>
351
352
<p>
353
A fentieket a következő három paranccsal tudod megoldani:
354
</p>
355
356
<pre caption="Az elárvult függőségek eltávolítása">
357
# <i>emerge --update --deep --newuse world</i>
358
# <i>emerge --depclean</i>
359
# <i>revdep-rebuild</i>
360
</pre>
361
362
<p>
363
A <c>revdep-rebuild</c> a <c>gentoolkit</c> csomag része, tehát előbb ezt 
364
telepítsd:
365
</p>
366
367
<pre caption="A gentoolkit csomag telepítése">
368
# <i>emerge gentoolkit</i>
369
</pre>
370
371
</body>
372
</subsection>
373
</section>
374
<section>
375
<title>Amikor a Portage panaszkodik...</title>
376
<subsection>
377
<title>SLOTok, virtuális csomagok (virtuals), ágak (branches), architektúrák és profilok</title>
378
<body>
379
380
<p>
381
Ahogyan már megállapítottuk, a Portage rendkívül hatékony, és sok olyan 
382
lehetőséget biztosít, amivel más szoftverkezelő eszközök nem rendelkeznek. 
383
Ennek jobb megértéséhez nyújt segítséget a következőkben néhány szempont kissé 
384
részletesebb magyarázata.
385
</p>
386
387
<p>
388
A Portage lehetővé teszi, hogy egy adott csomagnak többféle verziója is 
389
létezhessen egyazon rendszeren. Míg más diszribúciók inkább a verziószám 
390
szerint nevezik el a csomagokat, (mint pl. <c>freetype</c> és 
391
<c>freetype2</c>), a Portage egy <e>SLOT</e>-nak nevezett technológiát használ. 
392
Egy-egy ebuild egy bizonyos SLOT-ot deklarál a verziójának megfelelően. 
393
Különböző SLOT-okkal rendelkező ebuildek létezhetnek együtt egyazon rendszeren, 
394
például a <c>freetype</c> csomagból van <c>SLOT="1"</c> és <c>SLOT="2"</c> 
395
jelzésű ebuild.
396
</p>
397
398
<p>
399
Vannak olyan csomagok is, amelyek ugyanazt a funkciót valósítják meg másképpen. 
400
Például a <c>metalogd</c>, a <c>sysklogd</c> és a <c>syslog-ng</c> is 
401
rendszernaplózó program. Azok az alkalmazások, amelyek "egy rendszernaplózó" 
402
létezését követelik meg, nem függhetnek mondjuk a <c>metalogd</c> csomagtól, 
403
hiszen a többi rendszernaplózó is éppolyan jó választás lenne. A Portage ezért 
404
úgynevezett "<e>virtual</e>"-ok (virtuális csomagok) segítségével oldja meg ezt 
405
a problémát: mindegyik rendszernaplózó beletartozik a <c>virtual/syslog</c>-ba, 
406
így az alkalmazásoknak már megadható függőségként a <c>virtual/syslog</c>.
407
</p>
408
409
<p>
410
A szoftverek a Portage fában különböző ágakban (branch) lehetnek. 
411
Alapértelmezés szerint a rendszered csak olyan csomagokat fogad el, amelyeket a 
412
Gentoo stabilnak ítél. A legtöbb újonnan benyújtott szoftver először a 
413
tesztelési ágba kerül, ami azt jelenti, hogy további tesztelésnek kell 
414
alávetni, mielőtt stabillá nyilváníthatják. Igaz, hogy az ilyen ebuildeket is 
415
látni fogod a Portage fában, de nem lehet frissíteni rájuk, míg nem kerülnek be 
416
a stabil ágba.
417
</p>
418
419
<p>
420
Néhány szoftver csak kevés architektúrára érhető el. Ennek okai többfélék 
421
lehetnek: vagy nem működik a csomag más architektúrákon, vagy további 
422
tesztelésre van szükség, vagy a fejlesztő, aki benyújtotta a szoftvert a 
423
Portage fába, nem tudja ellenőrizni, hogy működik-e különböző architektúrákon.
424
</p>
425
426
<p>
427
Minden Gentoo-telepítés egy bizonyos <c>profil</c>ba tartozik, ami - egyéb 
428
információk mellett - azon csomagok listáját tartalmazza, amelyek a rendszer 
429
normális működéséhez szükségesek.
430
</p>
431
432
</body>
433
</subsection>
434
<subsection id="blocked">
435
<title>Blokkolt csomagok</title>
436
<body>
437
438
<pre caption="A Portage blokkolt csomagokra figyelmeztet (a --pretend kapcsolóval)">
439
[blocks B     ] mail-mta/ssmtp (is blocking mail-mta/postfix-2.2.2-r1)
440
</pre>
441
442
<pre caption="A Portage blokkolt csomagokra figyelmeztet (a --pretend kapcsoló nélkül)">
443
!!! Error: the mail-mta/postfix package conflicts with another package.
444
!!!        both can't be installed on the same system together.
445
!!!        Please use 'emerge --pretend' to determine blockers. 
446
</pre>
447
448
<p>
449
Az ebuildek olyan speciális mezőket tartalmaznak, amelyek tájékoztatják a 
450
Portage-t a függőségeikről. Kétféle függőség létezik: fordítási függőségek, 
451
amelyeket a <c>DEPEND</c>-ben deklarálnak, és a futásidejű függőségek, amelyek 
452
az <c>RDEPEND</c>-ben vannak deklarálva. Ha az egyik ilyen függőség egy 
453
csomagot vagy virtuális csomagot kifejezetten <e>nem</e> kompatibilisnek jelez, 
454
az blokkolást eredményez.
455
</p>
456
457
<p>
458
A blokkolás feloldásához választhatod azt a lehetőséget, hogy nem telepíted az 
459
adott csomagot, vagy pedig azt, hogy előbb eltávolítod az ütköző csomagot. A 
460
példánál maradva: dönthetsz úgy is, hogy nem telepíted a <c>postfix</c>et, vagy 
461
úgy is, hogy előbb eltávolítod az <c>ssmtp</c>-t.
462
</p>
463
464
<p>
465
Az is előfordulhat, hogy két, még ezután telepítendő csomag blokkolja egymást. 
466
Ebben a ritka esetben előbb rá kell jönnöd, miért kell mindkettőt telepítened. 
467
Többnyire elég szokott lenni az egyik csomag is. Ha mégsem, akkor arra kérünk, 
468
küldj hibajelentést a 
469
<uri link="http://bugs.gentoo.org">Gentoo hibakövető rendszeren</uri> 
470
keresztül.
471
</p>
472
473
</body>
474
</subsection>
475
<subsection id="masked">
476
<title>Maszkolt csomagok</title>
477
<body>
478
479
<pre caption="A Portage maszkolt csomagokra figyelmeztet">
480
!!! all ebuilds that could satisfy "bootsplash" have been masked. 
481
</pre>
482
483
<pre caption="A Portage maszkolt csomagokra figyelmeztet - indoklás">
484
!!! possible candidates are:
485
486
- gnome-base/gnome-2.8.0_pre1 (masked by: <i>~x86 keyword</i>)
487
- lm-sensors/lm-sensors-2.8.7 (masked by: <i>-sparc keyword</i>)
488
- sys-libs/glibc-2.3.4.20040808 (masked by: <i>-* keyword</i>)
489
- dev-util/cvsd-1.0.2 (masked by: <i>missing keyword</i>)
490
- media-video/ati-gatos-4.3.0 (masked by: <i>package.mask</i>)
491
- sys-libs/glibc-2.3.2-r11 (masked by: <i>profile</i>)
492
</pre>
493
494
<p>
495
Ha olyan csomagot akarsz telepíteni, ami a rendszeredre nem elérhető, akkor 
496
ilyen maszkolási hibát jelző üzenetet kapsz. Próbálj meg egy másik alkalmazást 
497
telepíteni helyette, ami elérhető a rendszeredre, vagy pedig várd meg, amíg a 
498
csomag elérhető lesz. A maszkolásnak mindig oka van:
499
</p>
500
501
<ul>
502
  <li>
503
    <b>~arch kulcsszó/keyword</b> azt jelenti, hogy az alkalmazást még nem 
504
tesztelték kellőképpen ahhoz, hogy bekerüljön a stabil ágba. Várj néhány napot 
505
vagy hetet, és próbáld újra.
506
  </li>
507
  <li>
508
    <b>-arch kulcsszó/keyword</b> vagy <b>-* kulcsszó/keyword</b> azt jelenti, 
509
hogy az alkalmazás nem működik az általad használt architektúrán. Ha úgy 
510
gondolod, hogy igen, akkor küldj hibajelentést a 
511
<uri link="http://bugs.gentoo.org">bugzilla</uri> weboldalunkon keresztül..
512
  </li>
513
  <li>
514
    <b>hiányzó kulcsszó/missing keyword</b> azt jelenti, hogy az alkalmazást 
515
még nem tesztelték az adott architektúrán. Kérd meg az architektúra portolási 
516
csapatát, hogy teszteljék a csomagot, vagy teszteld te helyettük, és számolj be 
517
a tapasztalataidról a 
518
<uri link="http://bugs.gentoo.org">bugzilla</uri> oldalon.
519
  </li>
520
  <li>
521
    <b>package.mask</b> azt jelenti, hogy a csomagot hibásnak, instabilnak vagy 
522
még rosszabbnak találták, ezért szándékosan jelölték meg úgy, hogy 
523
"ne használd".
524
  </li>
525
  <li>
526
    <b>profile</b> azt jelenti, hogy a csomag nem felel meg a profilodnak: 
527
tönkreteheti a rendszert, ha telepíted, vagy egyszerűen nem kompatibilis az 
528
általad használt profillal.
529
  </li>
530
</ul>
531
532
</body>
533
</subsection>
534
<subsection id="missingdependencies">
535
<title>Hiányzó függőségek</title>
536
<body>
537
538
<pre caption="A Portage hiányzó függőségekre figyelmeztet">
539
emerge: there are no ebuilds to satisfy "&gt;=sys-devel/gcc-3.4.2-r4".
540
541
!!! Problem with ebuild sys-devel/gcc-3.4.2-r2
542
!!! Possibly a DEPEND/*DEPEND problem. 
543
</pre>
544
545
<p>
546
A telepítendő alkalmazás egy másik csomagtól függ, ami viszont nem elérhető a 
547
rendszeredre. Nézd meg a <uri link="http://bugs.gentoo.org">bugzillán</uri>, 
548
hogy ismert-e a probléma, és ha nem, jelentsd be. Ilyen hibaüzenet elvileg csak 
549
akkor adódhat, ha ágakat keversz; ha nem ez a helyzet, akkor hibáról van szó, 
550
amit érdemes jelezni.
551
</p>
552
553
</body>
554
</subsection>
555
<subsection id="ambiguousebuild">
556
<title>Nem egyértelmű ebuild-név</title>
557
<body>
558
559
<pre caption="A Portage nem egyértelmű ebuild-névre figyelmeztet">
560
!!! The short ebuild name "aterm" is ambiguous.  Please specify
561
!!! one of the following fully-qualified ebuild names instead:
562
563
    dev-libs/aterm
564
    x11-terms/aterm
565
</pre>
566
567
<p>
568
A telepítendő alkalmazás neve több csomag nevének is megfelel, ezért meg kell 
569
adni a kategória nevét is. A Portage felkínálja a választható formákat.
570
</p>
571
572
</body>
573
</subsection>
574
<subsection id="circulardependencies">
575
<title>Körkörös függőségek</title>
576
<body>
577
578
<pre caption="A Portage körkörös függőségekre figyelmeztet">
579
!!! Error: circular dependencies: 
580
581
ebuild / net-print/cups-1.1.15-r2 depends on ebuild / app-text/ghostscript-7.05.3-r1
582
ebuild / app-text/ghostscript-7.05.3-r1 depends on ebuild / net-print/cups-1.1.15-r2 
583
</pre>
584
585
<p>
586
Két (vagy több) csomag, amit telepíteni akarsz, egymástól függ, ezért nem lehet 
587
őket telepíteni. Ez nagy valószínűséggel a Portage fában lévő hiba. 
588
Megoldásként egy kis idő múltán sync-elj újra, és próbáld meg újra a 
589
telepítést. Megnézheted a 
590
<uri link="http://bugs.gentoo.org">bugzillát</uri> is, hátha már ismert a 
591
hiba, s ha még nem, ott jelezheted.
592
</p>
593
594
</body>
595
</subsection>
596
<subsection id="fetchfailed">
597
<title>Sikertelen letöltés</title>
598
<body>
599
600
<pre caption="A Portage sikertelen letöltésre figyelmeztet">
601
!!! Fetch failed for sys-libs/ncurses-5.4-r5, continuing...
602
<comment>(...)</comment>
603
!!! Some fetch errors were encountered.  Please see above for details.
604
</pre>
605
606
<p>
607
A Portage nem tudta letölteni az adott alkalmazás forráskódját, de megpróbálja 
608
folytatni a többi alkalmazás telepítését (ha többről volt szó). Ezt a hibát 
609
okozhatja egy olyan tükörszerver, amelyet nem jól szinkronizáltak, vagy az, 
610
hogy az ebuild nem jó helyre mutat. Az is lehet, hogy a forráskódot tartalmazó 
611
szerver valamiért épp leállt.
612
</p>
613
614
<p>
615
Próbáld meg újra egy óra elteltével, és kiderül, fennáll-e még a probléma.
616
</p>
617
618
</body>
619
</subsection>
620
<subsection id="profileprotect">
621
<title>A rendszerprofil védelme</title>
622
<body>
623
624
<pre caption="A Portage profilvédelem alatt álló csomagra figyelmeztet">
625
!!! Trying to unmerge package(s) in system profile. 'sys-apps/portage'
626
!!! This could be damaging to your system.
627
</pre>
628
629
<p>
630
Olyan csomagot akarsz eltávolítani, ami a rendszered alapvető csomagjai közé 
631
tartozik. A profilban létfontosságúként van felsorolva, ezért nem szabad 
632
eltávolítani.
633
</p>
634
635
</body>
636
</subsection>
637
<subsection id="digesterror">
638
<title>A kivonat (digest) ellenőrzésének hibája</title>
639
<body>
640
641
<p>
642
Előfordulhat néha csomagtelepítéskor, hogy a következő üzenettel áll le:
643
</p>
644
645
<pre caption="A kivonat ellenőrzésének hibája">
646
&gt;&gt;&gt; checking ebuild checksums
647
!!! Digest verification failed:
648
</pre>
649
650
<p>
651
Ez annak a jele, hogy valami hibádzik a Portage fában -- gyakran azért, mert 
652
egy fejlesztő hibát követhetett el, amikor feltöltötte a csomagot a fába.
653
</p>
654
655
<p>
656
Ha a kivonat (digest)/ellenőrző összeg (checksum) ellenőrzése sikertelen, 
657
<e>ne</e> próbálj sajátkezűleg új kivonatot készíteni a csomaghoz 
658
("újradigestelni"). Az <c>ebuild foo digest</c> parancs futtatása nem fogja 
659
megoldani a problémát, sőt szinte biztosan csak rontani fog a helyzeten!
660
</p>
661
662
<p>
663
Inkább várj egy-két órát, hogy a Portage fa "beálljon". Valószínűleg azonnal 
664
észrevették a hibát, de kell egy kis idő, amíg a javítás lefut a fán. Várakozás 
665
közben nézd meg a <uri link="http://bugs.gentoo.org">Bugzillán</uri>, hogy 
666
jelezték-e már a problémát. Ha nem, akkor rajta, jelezd te!
667
</p>
668
669
<p>
670
Ha azt látod, hogy javították a hibát, megpróbálkozhatsz egy újabb 
671
sync-eléssel, ami után már valószínűleg a javított kivonat lesz a fában.
672
</p>
673
674
<impo>
675
Ez azonban <e>nem</e> jelenti azt, hogy többször is újraszinkronizálhatod a 
676
fát! Ahogyan az rsync-irányelvekben is leszögeztük (amit akkor olvashatsz, 
677
amikor az <c>emerge --sync</c>-et futtatod), azok a felhasználók, akik túl 
678
gyakran sync-elnek, ki lesznek tiltva! Tényleg jobb várni a következő esedékes 
679
sync idejéig, nehogy túlterheld az rsync szervereket.
680
</impo>
681
682
</body>
683
</subsection>
684
</section>
685
</sections>

Return to bug 153856