Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 72731
Collapse All | Expand All

(-)hb-working-features.xml (-190 / +114 lines)
Lines 7-16 Link Here
7
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/es/handbook/hb-working-features.xml,v 1.2 2004/03/03 15:25:25 chiguire Exp $ -->
7
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/es/handbook/hb-working-features.xml,v 1.2 2004/03/03 15:25:25 chiguire Exp $ -->
8
8
9
<sections>
9
<sections>
10
11
<version>1.23</version>
12
<date>2004-11-26</date>
13
14
<section>
15
<title>Características del Portage</title>
16
<body>
17
18
<p>
19
Portage tiene varias características adicionales que hacen de su experiencia
20
con Gentoo algo mucho mejor. Muchas de estas características residen en 
21
ciertas herramientas software que mejoran el rendimiento, la estabilidad, la
22
seguridad, ...
23
</p>
24
25
<p>
26
Para activar o desactivar ciertas características de Portage necesita editar
27
la variable <c>FEATURES</c> del archivo <path>/etc/make.conf</path>.
28
En algunos casos necesita además instalar la herramienta que implementa
29
la característica.
30
</p>
31
32
<p>
33
No todas las características que soporta Portage están aquí reflejadas.
34
Para una consulta completa por favor revise la página de la ayuda referente
35
a <path>make.conf</path> 
36
</p>
37
38
<pre caption="Consultando la página de ayuda sobre make.conf">
39
$ <i>man make.conf</i>
40
</pre>
41
42
<p>
43
Para conocer que características están siendo utilizadas por defecto, ejecute
44
<c>emerge info</c> y busque la variable FEATURES o utilice grep:
45
</p>
46
47
<pre caption="Conociendo que características están configuradas">
48
$ <i>emerge info | grep FEATURES</i>
49
</pre>
50
51
</body>
52
</section>
10
<section>
53
<section>
11
<title>DistCC</title>
54
<title>Compilación Distribuida</title>
12
<subsection>
55
<subsection>
13
<title>¿Qué es DistCC?</title>
56
<title>Usando distcc</title>
14
<body>
57
<body>
15
58
16
<p>
59
<p>
Lines 23-29 Link Here
23
</p>
66
</p>
24
67
25
<p>
68
<p>
26
Puede encontrar información mas detallada sobre <c>distcc</c> (y información de
69
Puede encontrar información mas detallada sobre <c>distcc</c> (e información de
27
como tenerlo funcionando sobre Gentoo) en nuestra <uri 
70
como tenerlo funcionando sobre Gentoo) en nuestra <uri 
28
link="/doc/es/distcc.xml">Documentación Gentoo de Distcc</uri>.
71
link="/doc/es/distcc.xml">Documentación Gentoo de Distcc</uri>.
29
</p>
72
</p>
Lines 31-37 Link Here
31
</body>
74
</body>
32
</subsection>
75
</subsection>
33
<subsection>
76
<subsection>
34
<title>Instalando DistCC</title>
77
<title>Instalando distcc</title>
35
<body>
78
<body>
36
79
37
<p>
80
<p>
Lines 42-58 Link Here
42
configuración <c>USE</c>.
85
configuración <c>USE</c>.
43
</p>
86
</p>
44
87
45
<p>
88
<pre caption="Instalando distcc">
46
Instalar distcc es, como lo es con todo el software disponible a través del
47
Portage de Gentoo, extremadamente fácil.
48
</p>
49
50
<note>
51
A partir de ahora, como conoce como instalar paquetes binarios si lo desea,
52
omitiremos la opción <c>--usepkg</c> durante el resto del Gentoo Handbook.
53
</note>
54
55
<pre caption="Instalando Distcc">
56
# <i>emerge distcc</i>
89
# <i>emerge distcc</i>
57
</pre>
90
</pre>
58
91
Lines 63-101 Link Here
63
<body>
96
<body>
64
97
65
<p>
98
<p>
66
Bien, si la instalación fue fácil, el resto también debe serlo :) Así que vamos
99
Añada <c>distcc</c> a la variable FEATURES dentro de 
67
a activar rápidamente el soporte en el portage para <c>distcc</c>.
100
<path>/etc/make.conf</path>. Hecho esto, edite la variable <c>MAKEOPTS</c> 
68
</p>
101
a sus necesidades. Una pauta conocida para configurarla es poner <c>-jX</c> con 
69
102
<c>X</c> representando el número de CPUs que ejecutan <c>distccd</c> 
70
<p>
103
(incluyendo el host local) más uno, pero quizá obtenga mejores resultados 
71
Primero, abra <path>/etc/make.conf</path> y edite la variable <c>FEATURES</c> de
104
con otros números.
72
forma que contenga la palabra <c>distcc</c>. Hecho esto, edite la variable
73
<c>MAKEOPTS</c> para que se lea <c>-jX</c> con <c>X</c> representando el número
74
de CPUs que corren <c>distccd</c> (incluyendo el host local) mas uno:
75
</p>
105
</p>
76
106
77
<pre caption="Definición posible de MAKEOPTS en /etc/make.conf">
78
<comment># Suponga que tiene 2 hosts con una sola CPU excluyendo el host
79
local:</comment>
80
MAKEOPTS="-j4"
81
</pre>
82
83
<p>
107
<p>
84
Ahora, aún dentro de <path>/etc/make.conf</path>, descomente la linea
108
Ahora ejecute <c>distcc-config</c> y cree una lista de los servidores distcc
85
<c>PORTAGE_TMPDIR</c> y añada la siguiente linea al final del fichero:
86
</p>
87
88
<pre caption="Añadiendo una variable extra, específica de distcc al 
89
/etc/make.conf">
90
<comment># No olvide descomentar la variable PORTAGE_TMPDIR</comment>
91
DISTCC_DIR=${PORTAGE_TMPDIR}/portage/.distcc
92
</pre>
93
94
<p>
95
Ahora ejecute <c>distcc-config</c> y cree una lista de los servidores DistCC
96
disponibles. Para un ejemplo simple, supondremos que los servidores DistCC son
109
disponibles. Para un ejemplo simple, supondremos que los servidores DistCC son
97
<c>192.168.1.102</c> (el host local), <c>192.168.1.103</c> y
110
192.168.1.102 (el host local), 192.168.1.103 y <c>192.168.1.104</c> 
98
<c>192.168.1.104</c> (los dos hosts "remotos"):
111
(los dos hosts "remotos"):
99
</p>
112
</p>
100
113
101
<pre caption="Configurando distcc para usar los tres servidores DistCC
114
<pre caption="Configurando distcc para usar los tres servidores DistCC
Lines 108-129 Link Here
108
</p>
121
</p>
109
122
110
<pre caption="Arrancando el demonio distcc">
123
<pre caption="Arrancando el demonio distcc">
124
# <i>rc-update add distccd default</i>
111
# <i>/etc/init.d/distccd start</i>
125
# <i>/etc/init.d/distccd start</i>
112
</pre>
126
</pre>
113
127
114
<p>
115
Felicidades, ¡su sistema usará ahora compilación distribuida! Para profundizar
116
más sobre DistCC y Gentoo, por favor lea nuestra <uri
117
link="/doc/es/distcc.xml">Documentación Gentoo de DistCC</uri>.
118
</p>
119
120
</body>
128
</body>
121
</subsection>
129
</subsection>
122
</section>
130
</section>
123
<section>
131
<section>
124
<title>ccache</title>
132
<title>Compilación utiliizando caché</title>
125
<subsection>
133
<subsection>
126
<title>¿Qué es ccache?</title>
134
<title>A cerca de ccache</title>
127
<body>
135
<body>
128
136
129
<p>
137
<p>
Lines 146-153 Link Here
146
<body>
154
<body>
147
155
148
<p>
156
<p>
149
Instalar <c>ccache</c> en Gentoo es coser y cantar. Tan solo emérgelo y ya está
157
Para instalar <c>ccache</c>, ejecute <c>emerge ccache</c>:
150
:)
151
</p>
158
</p>
152
159
153
<pre caption="Instalando ccache">
160
<pre caption="Instalando ccache">
Lines 161-361 Link Here
161
<body>
168
<body>
162
169
163
<p>
170
<p>
164
Primero, edite el <path>/etc/make.conf</path> y cambie la variable
171
Primero, edite el <path>/etc/make.conf</path> y añada a la variable
165
<c>FEATURES</c> de forma que contenga la palabra clave <c>ccache</c>:
172
<c>FEATURES</c> la palabra clave <c>ccache</c>. A continuación,
173
añada una nueva variable llamada CCACHE_SIZE y dele el valor de "2G":
166
</p>
174
</p>
167
175
168
<pre caption="Editando las FEATURES en el /etc/make.conf">
176
<pre caption="Editando CCACHE_SIZE en /etc/make.conf">
169
FEATURES="ccache"
170
</pre>
171
172
<p>
173
Después, edite (o cree) la variable <c>CCACHE_SIZE</c> (también en el
174
<path>/etc/make.conf</path>) que contiene la cantidad de espacio de disco que
175
quiere sacrificar para el <c>ccache</c>:
176
</p>
177
178
<pre caption="Editando CCACHE_SIZE en el /etc/make.conf">
179
CCACHE_SIZE="2G"
177
CCACHE_SIZE="2G"
180
</pre>
178
</pre>
181
179
182
<p>
180
<p>
183
A partir de ahora, Portage usará <c>ccache</c> para acelerar la compilación
181
Para comprobar si ccache funciona, pídale a ccache que te muestre 
184
donde sea posible. Si dudas del funcionamiento de <c>ccache</c>, puedes
182
las estadísticas:
185
ejecutar <c>ccache -s</c> para ver las estadísticas de <c>ccache</c>:
186
</p>
183
</p>
187
184
188
<pre caption="Visualizando las estadísticas de ccache">
185
<pre caption="Viendo las estadísticas de ccache">
189
# <i>ccache -s</i>
186
# <i>ccache -s</i>
190
</pre>
187
</pre>
191
188
192
</body>
189
</body>
193
</subsection>
190
</subsection>
194
</section>
195
<section>
196
<title>Paquetes Binarios</title>
197
<subsection>
191
<subsection>
198
<title>Creando paquetes binarios</title>
192
<title>Utilizando ccache para compilaciones de C sin relación con Portage</title>
199
<body>
193
<body>
200
194
201
<p>
195
<p>
202
Hemos discutido anteriormente como trabajar con paquetes precompilados, pero
196
Si quiere utilizar ccache para compilaciones que no tengan que ver con Portage, 
203
como creas tus propios paquetes precompilados?
197
añada <path>/usr/lib/ccache/bin</path> al principio de su variable PATH
204
</p>
198
(antes de <path>/usr/bin</path>). Esto puede llevarse a cabo editando
205
199
<path>/etc/profile</path>:
206
<p>
207
Si el paquete ya está instalado, puedes usar el comando <c>quickpkg</c> que
208
hará un tar de los ficheros instalados. ¡Es muy interesante para los backups!
209
</p>
210
211
<pre caption="Usando quickpkg">
212
# <i>quickpkg gnumeric</i>
213
</pre>
214
215
<p>
216
Si el paquete no está instalado aún, puede instalarlo usando <c>emerge</c> y
217
especificándole crear un paquete binario. <c>emerge</c> usa el argumento
218
<c>--buildpkg</c> (<c>-b</c> en su versión corta) para esto:
219
</p>
200
</p>
220
201
221
<pre caption="Instalando gnumeric y creando paquetes binarios">
202
<pre caption="Editando /etc/profile">
222
# <i>emerge --buildpkg gnumeric</i>
203
PATH="<i>/usr/lib/ccache/bin</i>:${PATH}"
223
</pre>
224
225
<p>
226
Si quieres que el Portage haga esto por defecto, debería poner la palabra clave
227
<c>buildpkg</c> en la variable <c>FEATURES</c> declarada en el
228
<path>/etc/make.conf</path>.
229
</p>
230
231
<pre caption="Creando automáticamente paquetes binarios">
232
FEATURES="buildpkg"
233
</pre>
234
235
<p>
236
Si no quiere instalar el software, pero si compilar el paquete, puede usar el
237
argumento <c>--buildpkgonly</c> (<c>-B</c> en su versión corta):
238
</p>
239
240
<pre caption="Compilando un paquete binario de gnumeric">
241
# <i>emerge --buildpkgonly gnumeric</i>
242
</pre>
204
</pre>
243
205
244
</body>
206
</body>
245
</subsection>
207
</subsection>
246
</section>
208
</section>
247
<section>
209
<section>
248
<title>Características de Seguridad</title>
210
<title>Soporte para Paquetes Binarios</title>
249
<subsection>
211
<subsection>
250
<title>Sandbox</title>
212
<title>Creando paquetes binarios</title>
251
<body>
213
<body>
252
214
253
<p>
215
<p>
254
Mientras se compilan y instalan paquetes, el Portage usa una <e>sandbox</e> 
216
Portage soporta la instalación de paquetes precompilados. A pesar de que 
255
(caja de arena) para proteger tu sistema en funcionamiento. Esto significa que,
217
Gentoo no proporciona paquetes precompilados por sí mismo (excepto para
256
mientras el paquete no se instale en tu sistema, este no tocará ningún fichero
218
las imágenes GRP) Portage puede estar funcionando perfectamente con paquetes
257
fuera de la "caja de arena" Esto asegura que el Portage sabe que ficheros se
219
precompilados.
258
crearon y se modificaron por el paquete.
259
</p>
220
</p>
260
221
261
<p>
222
<p>
262
Cuando la compilación de un paquete se completa, el Portage "preinstalará" el
223
Para crear un paquete precompilado puede utilizar <c>quickpkg</c> si el paquete 
263
paquete en la "caja de arena", registrando que ficheros se han puesto y donde.
224
está instado en su sistema, o <c>emerge</c> con las opciones <c>--buildpkg</c> o
264
Entonces moverá estos ficheros desde la "caja de arena" a tu sistema en
225
<c>--buildpkgonly</c>.
265
funcionamiento.
266
</p>
226
</p>
267
227
268
</body>
269
</subsection>
270
<subsection>
271
<title>Privilegios de usuario</title>
272
<body>
273
274
<p>
228
<p>
275
El Portage también soporta la compilación de paquetes como usuario no
229
Si quiere que Portage cree paquetes precompilados de cada paquete individual 
276
privilegiado (para ser mas exactos, como usuario "portage", dentro del grupo
230
que instale, añada <c>buildpkg</c> a la variable FEATURES.
277
"portage"). Esto aumenta la seguridad durante el proceso de compilación. Puede
278
optar por usar los privilegios de usuario con o sin "sandboxing". Por supuesto,
279
ni que decir que los privilegios de usuario y el "sandboxing" es el método
280
más preferible :)
281
</p>
231
</p>
282
232
283
</body>
284
</subsection>
285
<subsection>
286
<title>Activando sandbox y/o userpriv</title>
287
<body>
288
289
<p>
233
<p>
290
Portage usará <c>sandbox</c> por defecto. Si desea <c>userpriv</c>, deberá
234
Puede encontrar mayor soporte para la creación de conjuntos de paquetes 
291
agregarlo a la variable <c>FEATURES</c>. Fíjese en que activando
235
precompilados con<c>catalyst</c>. Para más información sobre catalyst, por
292
<c>userpriv</c> descartará el soporte <c>sandbox</c>, a menos que también
236
favor lea <uri link="/proj/en/releng/catalyst/reference.xml">Manual de Referencia 
293
active <c>usersandbox</c>:
237
de Catalyst</uri> y la <uri link="/proj/en/releng/catalyst/catalyst-howto.xml">
238
Guía de Catalyst </uri> (en inglés ambos documentos). 
294
</p>
239
</p>
295
240
296
<pre caption="Activando userpriv y usersandbox">
297
FEATURES="userpriv usersandbox"
298
</pre>
299
300
<warn>
301
<e>No</e> quite <c>sandbox</c> de la variable <c>FEATURES</c>
302
</warn>
303
304
</body>
241
</body>
305
</subsection>
242
</subsection>
306
<subsection>
243
<subsection>
307
<title>Chequeo estricto</title>
244
<title>Instalando Paquetes Precompilados</title>
308
<body>
245
<body>
309
246
310
<p>
247
<p>
311
El Portage puede prepararse para reaccionar a las posibles condiciones de
248
A pesar de que Gentoo no proporciona uno, puede crear un repositorio central
312
peligro (como ficheros Manifest perdidos o incorrectos). Para activar este
249
donde almacene paquetes precompilados. Si quiere utilizar este repositorio,
313
chequeo estricto agregue la palabra clave <c>strict</c> a la variable
250
necesita que Portage lo conozca a través de la variable PORTAGE_BINHOST
314
<c>FEATURES</c>:
251
que debe apuntar al repositorio. Por ejemplo, si los paquetes precompilados 
252
están en ftp://buildhost/gentoo:
315
</p>
253
</p>
316
254
317
<pre caption="Activando el chequeo estricto">
255
<pre caption="Configurando PORTAGE_BINHOST en /etc/make.conf">
318
FEATURES="strict"
256
PORTAGE_BINHOST="ftp://buildhost/gentoo"
319
</pre>
257
</pre>
320
258
321
</body>
259
<p>
322
</subsection>
260
Cuando quiera instalar un paquete precompilado, añada la opción 
323
<subsection>
261
<c>--getbinpkg</c> al comando emerge junto a  la opción <c>--usepkg</c>.
324
<title>Permisos Inteligentes del Sistema de Ficheros</title>
262
La primera le indica a emerge que descargue el paquete precompilado
325
<body>
263
del servidor definido previamente, mientras que el segundo indica a emerge
264
que intente instalar el paquete precompilado antes de buscar el código fuente
265
y compilarlo.
266
</p>
326
267
327
<p>
268
<p>
328
Portage puede ser configurado para tratar con permisos de ficheros
269
Por ejemplo, para instalar <c>gnumeric</c> a través de paquetes precompilados:
329
potencialmente peligrosos que representen un riesgo de seguridad. Lo hace
330
quitando los bits de lectura "grupo" y "otros" en los ficheros "setuid" y
331
quitando el bit de lectura "otros" en los ficheros "setgid" en la fase de
332
preinstalación. Para activar los permisos de ficheros inteligentes, agregue la
333
palabra clave <c>sfperms</c> a la variable <c>FEATURES</c>:
334
</p>
270
</p>
335
271
336
<pre caption="Activando los permisos inteligentes del sistema de ficheros">
272
<pre caption="Instalando el paquete precompilado gnumeric">
337
FEATURES="sfperms"
273
# <i>emerge --usepkg --getbinpkg gnumeric</i>
338
</pre>
274
</pre>
339
275
340
</body>
341
</subsection>
342
</section>
343
<section>
344
<title>Otras características</title>
345
<subsection>
346
<title>Ayuda del Portage</title>
347
<body>
348
349
<p>
276
<p>
350
Existen muchas otras palabras clave que puede introducir en la variable 
277
Más información sobre las opciones para utilizar paquetes precompilados con 
351
<c>FEATURES</c>. Muchas de ellas están dirigidas a los desarrolladores y son
278
emerge puede consultarse en la página de la ayuda:
352
menos interesantes para los usuarios comunes. Si está interesado en aprender
353
más sobre estas características (o del Portage en general), no olvide leer
354
la pagina del manual del <path>make.conf</path> que le proporcionamos.
355
</p>
279
</p>
356
280
357
<pre caption="Más información sobre el Portage">
281
<pre caption="Leyendo la página de ayuda sobre emerge">
358
# <i>man make.conf</i>
282
$ <i>man emerge</i>
359
</pre>
283
</pre>
360
284
361
</body>
285
</body>

Return to bug 72731