Eric.Dumas@freenix.fr
Este documento es la traducción no adaptada, del "Guide du ROOTard pour Linux" de Eric Dumas. Aqui encontraras mucha información sobre Linux orientada al Francés, aunque todo puede ser adaptado al español (ya veremos despues ;-)). Por el momento si la solución francesa no te conviene, explota las pistas que te da Eric. Pero mira antes la Infosheet y el Spanish HOWTO en los capitulos 4 y 22 de este documento. Tambien puedes consultar los documentos que encontraras en :
He aquí la versión 2.6 de la Guía del enROOTador. Se trata principalmente de una versión "corregida" de la versión 2.5. Nada ha sido añadido.
Esta versión es un poco particular : es la ultima que escribo como estudiante. Mas sin embargo he hecho todo lo posible para hacer unos largos estudios en la bella y vieja ciudad (pero simpática) de Burdeos.. pero 5 anos, es suficiente ! Es muy probable que la próxima versión solo salga en algunos meses, por causa de vacaciones forzadas por cuenta del estado (servicio militar ... pues si algunos no se salvan).
No me tengas rencor si tengo mi correo un poco retrasado. Yo respondo siempre generalmente...(Es verdad a mi siempre me ha respondido, Ud. puede escribirle directamente a Eric en francés y sino, lo puede hacer por intermedio de caliman que contestara o traducirá) pero puede pasar un buen tiempo antes de que te responda (unos quince días)...
Esta guía ha sido inicialmente concebida por Julian Simon (Julian.Simon@freenix.fr), que me gustaría agradecer por el trabajo extraordinario que el realizo. Buen numero de estos pasajes, incluida la introducción, han sido prestados a las versiones precedentes. El ultimo capitulo indica los nombres de las personas que han contribuido a la realización de este documento. Al cabo de las versiones esta lista se ha alargado : es buen signo.
Esta guía tiene por objetivo dar respuestas muy claras y concretas a los problemas que puede poner la instalación de Linux. Reagrupa los trucos y astucias dadas por los utilizadores, lo mas frecuentemente leídas en el newsgroup fr.comp.os.linux (f.c.o.l), o en las Howto, documentos que indican como instalar, como configurar o mejorar un elemento soft o material dado.
Historia de simplificar las cosas, nos vamos a tutear, es mas simple y ademas es una tradición en internet.
Esta versión de La Guia del enROOTador (2.5/2.6) posee varias novedades :
kerneld
) ; Ademas; he integrado algunos articulos del
Journal Linux français (http://echo-linux.alienor.fr
).
Esta nueva versión sobrepasa alegremente las 140 paginas ... cosa que yo nunca hubiera imaginado. Empieza a ser una guia bastante importante que esta dirigida a todos.
La guía del enROOTador es freeware y yo te animo vivamente a distribuirlo tal cual gratuitamente. Mas sin embargo tu no puedes modificarlo o venderlo. Insisto particularmente sobre el hecho sobre el hecho que tu no puedes sacar beneficio financiero de este documento.
Ninguna publicación es autorizada sin el acuerdo previo del autor y de los que han contribuido, y ello es valido al mismo tiempo a la inscripción en un CD-ROM, etc.
/pub/linux/french/docs
http://www.freenix.fr/linux/Guide
Usted puede igualmente procurarse este documento en los sitios espejos del ftp.ibp.fr como por ejemplo:
(Nota: si se me olvidan contacteme !).
Es disponible en varios formatos:
Desde que retomé la GRL (Guia del enROOTador para Linux), la converti al formato SGML. Los Howto's y la documentacion Linux emplean tambien este standard gracias a un util llamado "linuxdoc-sgml" http://www.informatik.tu-muenchen.de/~schwarz/linuxdoc-sgml genera documentos en formatos tan variados como HTML, texto, DVI, etc. Mas sinembargo este util no permite la inclusion de figuras (lo que seria bastante practico) y sobre todo no respecta la tipografia francesa (un patch mejora un poco esta situacion : sgml-tools-0.99.0-fr.patch). Peor : solo la generacion en LaTeX (y luego PostScript) o HTML es realmente limpia y visible.
Te aconsejo leer, si no has instalado nada por el momento, la version strictamente texto.
ftp://ftp.ibp.fr/pub/linux/french/docs.
Es posible que la proxima version sea completamente escrita en LaTeX, puesto que los convertidores asia HTML estan bastante bien. Bueno es solo una idea personal;. Si tengo algun dia tiempo que perder.
Si tu encuentras errores (siempre he hestado muy enhojado con la horrografia :-)), tienes,
comentarios, cosas para poner o simplemente para decirme que esto te ha ayudado mucho, no
lo dudes, envíame un mail a la dirección siguiente: Eric.Dumas@freenix.fr
. Tu
puedes enviar un correo o un news en francés en el grupo Usenet francés consagrado a
Linux
: fr.comp.os.linux si tienes problemas, pero unicamente después
de haber leído este documento.
(Nt : es.comp.os.linux o la lista l-linux@cic-teleco.es ver Lucax y Slug)
Evidentemente si tu quiebras tu maquina o si tu pantalla explota.... es tu culpa no la mía !.
Todas las criticas y todas las precisiones citadas pertenecen a su propietario (como lo dice Juju, "muy profundo eso!") y no se usan que si uno no las utiliza.
Evidentemente toda sugerencia que permita hacer evolucionar esta guia o mejorar su difusion, es bienvenida. No dudes en contactarme : es siempre un placer.
author
Michael K. Johnson, johnsonm@nigel.vnet.net date
v4.4, 8 de Febrero de 1996 Este documento proporciona una información básica sobre el sistema operativo Linux, incluyendo una explicación de Linux, una lista de características, algunos requerimientos y algunos recursos.
Linux es una reimplementación completamente gratuita de las especificaciones POSIX, con extensiones de SYSV y BSD (lo cual significa que parece Unix pero no proviene del mismo código fuente base), que está disponible tanto en su versión fuente como ya compilada. El copyright pertenece a Linus B. Torvalds (Linus.Torvalds@.Helsinki.FI) y otros colaboradores, y es libremente redistribuible bajo las condiciones de la "GNU Public License".
Linux no es de dominio público, ni es "shareware". Es software gratuito, usualmente denominado freeware, y tú puedes proporcionar copias a otros pero también debes dar los fuentes con éstas o hacer posible su obtención de la misma forma. Si tú redistribuyes una modificación estás legalmente obligado a proporcionar los fuentes de ésta. Vease la "GNU Public License" para más detalles. Una copia está incluida en los fuentes de Linux o puedes obtenerla vía ftp de prep.ai.mit.edu en /pub/gnu/COPYING
Linux es gratuito en la versión actual y seguirá siéndolo en el futuro. Debido a la naturaleza del copyright de GNU, al que Linux está sujeto, sería ilegal no hacerlo así. No obstante es importante saber que es perfectamente legal cobrar por distribuir Linux, mientras se incluya el código fuente; para ampliar este punto remítase a la GPL.
Linux se ejecuta en máquinas 386/486/Pentium con bus ISA, EISA, PCI o VLB. MCA (bus propietario de IBM) no está actualmente soportado por la falta de documentación, aunque hay algunos parches disponibles para ciertas máquinas.
Actualmente se está portando a distintas plataformas Motorola 680x0 (los Amigas y Ataris), y por ahora funciona bastante bien. Se requiere un 68020 con una MMU, un 68030 o un 68040, y también una FPU. El software de red y X funcionan.
Linux funciona bien en la CPU Alpha de DEC, actualmente bajo "Jensen", "NoName", "Cabriolet", "Universal Desktop Box" (más conocida como Multia), y algunas otras plataformas.
Linux está siendo rápidamente portado a Sun Sparc.
Versiones para otras máquinas, incluyendo MIPS, PowerPC y PowerMAC están en camino y se está haciendo algún progreso. No te asustes, pero si estás interesado y puedes contribuir, puedes perfectamente encontrar otros desarrolladores que querrán trabajar contigo.
A partir de la versión 1.0 que data de Marzo de 1994, Linux ya no es una versión de prueba (una beta). Aún hay errores en el sistema y nuevos errores irán apareciendo y serán solucionados con el tiempo. Como Linux es un proyecto de desarrollo abierto, todas las nuevas versiones que vayan apareciendo estarán disponibles para el público, sean o no estables. Sin embargo, para ayudar a la gente a discernir si la una versión es o no estable se ha acordado lo siguiente: Las versiones 1.x.y en las que x sea par son versiones estables y el incremento de y implica la corrección de algún error. Por lo tanto de la versión 1.2.2 a la 1.2.3 sólo hay corrección de errores, pero ninguna característica nueva. Las versiones 1.x.y con x impar son betas para los desarrolladores, pudiendo ser inestables y hasta colgarse, y están siendo ampliadas continuamente con nuevas posibilidades. Las actuales versiones de desarrollo son las numeradas 1.3.x, y la más reciente versión estable es la 1.2.13.
De cuando en cuando, mientras el núcleo de desarrollo actual se estabiliza, será "congelado" como el nuevo núcleo y el desarrollo continuará en una nueva versión de desarrollo del kernel.
La mayor parte de las versiones de Linux, betas o no, son bastante estables, y podrás continuar usándolas si hacen lo que tú quieres y no pretendes estar a la última. Un site tuvo un ordenador corriendo bajo la versión 0.97 con un nivel de parcheado (patchlevel) 1 (originalmente del verano de 1992) sin un sólo error o cuelgue. (Habría durado más si el bruto del operador no hubiese confundido el transformador de la fuente con una aguja de descarga de electricidad estática...). Otros han informado de actualizaciones con un año de retraso. Un site sigue teniendo un ordenador corriendo Linux 0.99pl15s desde que fue inicialmente arrancado hace más de 600 días.
Algo a tener en cuenta es que Linux está desarrollado siguiendo un modelo abierto y distribuido, en lugar de uno cerrado y centralizado como la mayor parte del software. Esto significa que la versión actualmente en desarrollo es siempre pública (con un retraso de una o dos semanas) para que cualquiera pueda usarla. El resultado es que en cualquier momento que se añada una nueva funcionalidad y salga a la luz la nueva versión, ésta casi siempre tendrá errores, pero serán detectados y corregidos rápidamente, a menudo en cuestión de horas, ya que mucha gente trabaja en ello.
En contraste, el modelo centralizado y cerrado significa que hay sólo una persona o un equipo trabajando en el proyecto, y sólo publican software que ellos piensan que esté trabajando bien. A menudo esto conlleva largos periodos de tiempo entre versiones, largas esperas para la corrección de errores y un desarrollo más lento. Por supuesto que la última versión de este tipo de software es a menudo de mejor calidad para el público, pero la velocidad de desarrollo es normalmente mucho más lenta.
A 8 de Febrero de 1996, la actual versión estable de Linux es 1.2.13, y el nuevo árbol de desarrollo, 1.3.x, está actualmente por la versión 1.3.60. ¡No uses núcleos de la serie 1.3.x a menos que quieras meterte en su desarrollo y no te preocupe que tu máquina se venga abajo una vez tras otra!.
La siguiente es posiblemente la mínima configuración sobre la que Linux puede trabajar: 386SX/16, 2 Mb RAM, disquetera de 1.44 Mb o de 1.2 Mb y cualquier tarjeta gráfica soportada (más teclado, monitor y demás, por supuesto). Esto debería permitirte arrancar y comprobar si trabaja en el ordenador, pero no serás capaz de hacer nada útil.
Para hacer algo, necesitarás además algo de espacio en disco duro también, 5 o 10 Mb serán suficientes para una configuración minimísima (con sólo los comandos más importantes y quizás una o dos pequeñas aplicaciones instaladas, como por ejemplo un programa de terminal). Esto es aún muy, muy limitado, y muy incómodo, ya que no deja sufiente espacio para casi nada, a menos que tus aplicaciones sean bastante limitadas. No es recomendable para nada salvo para probar si las cosas funcionan y por supuesto para poder alardear de los pocos recursos requeridos.
Si vas a ejecutar programas de computación intensiva, como gcc, X y TeX, probablemente querrás un procesador más rápido que el 386SX/16, pero incluso eso sería suficiente si fueras paciente.
En la práctica necesitas al menos 4 Mb de RAM si no usas X, y 8 Mb en caso contrario. Además, si quieres tener muchos usuarios al mismo tiempo o ejecutar muchos programas grandes (compiladores por ejemplo) al mismo tiempo también, querrás más de 4 Mb de memoria RAM. Puede trabajar con menor cantidad de memoria (debería de hacerlo incluso con 2 Mb), pero usaría memoria virtual (usando el disco duro como una memoria lenta) y eso sería tan lento como para calificarlo de inútil.
La cantidad de disco duro que necesites depende del software que pienses instalar. El conjunto de utilidades típicas de Unix, shells y programas de administrador ocupan menos de 10 Mb, con un poco de espacio libre para ficheros de usuario. Para un sistema más completo consigue la Slackware, MCC o Debian, y asume que necesitarás entre 60 y 200 Mb, según lo que eligas instalar y la distribución de que se trate. Añade el espacio que desees reservar para los archivos de usuario a estos totales. Con los precios de los discos duros en la actualidad, si vas a comprar un nuevo sistema no tiene sentido comprar una unidad demasiado pequeña. Adquiere al menos 200 Mb, preferiblemente 500 Mb o más, y no te arrepentirás.
Añade más memoria, más disco duro, un procesador más rápido y otras cosas según tus necesidades, deseos y cartera para sobrepasar lo simplemente usable. En general, una gran diferencia frente a DOS es que con Linux, añadir memoria supone una grandísima diferencia, mientras que con DOS más memoria no supone tanta mejora. Esto por supuesto tiene algo que ver con los 640 Kb que pone por límite el DOS, hecho que no se da en absoluto bajo Linux.
Cualquiera que pueda ejecutar programas en modo protegido del 386 (todos los modelos de 386, 486, 586 y 686 deberían valer; los 286 no funcionan ni lo harán jamás). Además, una versión para las CPU's 680x0 (para x=2 con MMU externa, 3 y 4) que está implementada en Amigas y Ataris está siendo desarrollada y puede ser encontrada en tsx-11.mit.edu en el directorio 680x0. Muchas Alphas son soportadas. Se está portando a PowerPC, ARM y a arquitecturas MIPS. Más detalles disponibles en cualquier otro lugar.
Buses ISA o EISA. MCA (el de los PS/2) no funciona. Los buses locales (VLB y PCI) funcionan.
Teóricamente hasta 1 Gb, aunque jamás ha sido probado hasta este extremo. Algunas personas (incluido Linus) han notado que añadiendo memoria sin incrementar el caché al mismo tiempo su máquina se ha ralentizado extremadamente, por ello si añades memoria y encuentras tu máquina más lenta prueba a ponerle más caché. Por encima de 64Mb de ram se requiere un parámetro de arranque, ya que la BIOS no puede detectar más que 64 Mb por su implementación.
Las unidades tipo AT (IDE, controladores de disco duro de 16 bits con MFM o RLL, o ESDI) son soportadas, como también lo son los discos duros y CD-ROM SCSI, con un adaptador SCSI soportado. Las cotroladoras tipo XT (controladoras de 8 bits con MFM o RLL) también son soportadas. Adaptadores SCSI soportados: Adaptec 1542, 1522, 1740 y la serie 27xx, controladoras Buslogic vía compatibilidad con Adaptec o con su propio driver, controladoras basadas en NCR53c810, Seagate ST-01 y ST-02, de Future Domain la serie TMC-88x (o cualquier placa basada en el chip TMC950) y TMC1660/1680, Ultrastor 14F, 24F y 34F, Western Digital wd7000 y otras. Las unidades de cinta SCSI y algunas QIC-02 y QIC-80 también son soportadas. Bastantes unidades de CD-ROM tienen soporte también, incluyendo Matsushita/Panasonic, Mitsumi, Sony, Soundblaster, Toshiba, ATAPI y otras. Para modelos exactos consulta el HOWTO de compatibilidad de hardware.
VGA, EGA, CGA y Hercules (y compatibles) trabajan en modo texto. Para gráficos y X hay soporte para (al menos) VGA normal, algunas tarjetas super-VGA (la mayoría de las basadas en ET3000, ET4000, Paradise, y algunas Trident), S3, 8514/A, ATI MACH8, ATI MACH32 y Hercules. (Linux usa XFree86 como servidor X y éste es quien determina qué tarjetas son soportadas).
Western Digital 80x3, ne1000, ne2000, 3com503, 3com509, 3com589 PCMCIA, Allied Telliesis AT1500, la mayorías de las placas LANCE, adaptadores de bolsillo d-link, PPP, SLIP, CSLIP, PLIP (Parallel Link IP) y más.
La mayoría de las placas basadas en UART 16450 and 16550, incluyendo AST Fourport, la Usenet Serial Card II y otras. Las placas inteligentes soportadas incluyen a la serie Cyclades Cyclom (soporte del propio fabricante), la serie Comtrol Rocketport (soporte del fabricante también), Stallion (la mayoría de placas y con soporte por parte del fabricante) y Digi (algunas placas y sin soporte por parte del fabricante).
SoundBlaster, ProAudio Spectrum 16, Gravis Ultrasound, varios tipos de ratón de bus (Microsoft, Logitech, PS/2).
La mayor parte de las herramientas comunes de Unix y programas han sido portados a Linux, incluyendo casi todo el material de GNU y muchos clientes X de varias fuentes. Portar es una palabra un poco fuerte ya que muchas aplicaciones compilan sin ninguna modificación o sólo con unas pocas ya que Linux se ajusta a POSIX casi totalmente. Desafortunadamente, no hay muchas aplicaciones para usuarios finales por el momento, pero esto ha empezado ya a cambiar. Aquí hay una lista incompleta de software que se sabe que corre bajo Linux.
ls
, tr
, sed
, awk
y más
(cualquiera que se te ocurra, Linux probablemente lo tiene).
gcc
, gdb
, make
, bison
,
flex
, perl
, rcs
, cvs
, prof
.
C, C++, Objective C, Modula-3, Modula-2, Oberon, Ada95, Pascal, Fortran, ML, scheme, Tcl/tk, Perl, Python, Common Lisp y muchos más.
X11R5 (XFree86 2.x), X11R6 (XFree863.x), MGR.
GNU Emacs, XEmacs, MicroEmacs, jove
, ez,
epoch
, elvis
(GNU vi), vim
, vile
, joe
,
pico
, jed
y más.
bash
(POSIX sh-compatible), zsh
(incluye modo de
compatibilidad con ksh
), pdksh
, tcsh
, csh
, rc
,
es
, ash
(casi completamente sh-compatible shell usada como
/bin/sh
por BSD) y muchas más.
Taylor (BNU-compatible) UUCP, SLIP,
CSLIP, PPP, kermit
, szrz
, minicom
, pcomm
,
xcomm
, term
(ejecuta multiples shells, redirecciona la actividad
de la red y permite X remoto, todo sobre una línea de modem), Seyon (popular
programa de comunicaciones bajo X) y diversos paquetes de fax y correo de
voz (usando ZyXEL y otros modems) están disponibles. Por supuesto, los
logins remotos vía línea serie son soportados.
C-news, innd
, trn
, nn
, tin
,
smail
, elm
, mh
, pine
, etc.
TeX, groff
, doc
, ez
,
Linuxdoc-SGML, and others.
Nethack, varios Muds y juegos de X, y muchos más. Uno de esos juegos consiste en buscar por tsx-11 y sunsite para buscar los juegos disponibles.
AUIS, el Andrew User Interface System. ez es parte de este suite.
Todos estos programas (y esto no es ni una centésima parte de los disponible) son gratuitos. El software comercial está empezando a surgir, pregunta al distribuidor de tu programa favorito si está disponible para Linux.
Linux está disponible gratuitamente, y a nadie se le pide que registre sus copias ante ninguna autoridad, por lo tanto es difícil conocer cuánta gente usa Linux. Diversos negocios están actualmente dedicados únicamente a la venta y soporte de Linux, y muy pocos usuarios de Linux usan estos servicios, hablando relativamente, y los grupos de noticias de Linux son de los más leídos en Internet, por ello el número estará situado sobre varios centenares o miles, los grandes números son difíciles de averiguar. De todas formas, un alma brava, Harald T. Alvestrand, ha decidido intentarlo y te pide que si usas Linux le envíes un mensaje con uno de los siguientes subjects a linux-counter@uninett.no: "I use Linux at home" (uso Linux en casa), "I use Linux at work" (uso Linux en el trabajo) o "I use Linux at home and at work" (uso Linux en casa y en el trabajo). También está contando votos del tipo "I don't use Linux" (no uso Linux) por alguna razón. El manda sus cuentas a comp.os.linux.misc
Matt Welsh ha sacado una nueva versión de su guía Installation and Getting Started, la versión 2.1.1. Además, el Linux Documentation Project (LDP) ha "publicado" varios otros libros en diversos estados de desarrollo y estos están disponibles en sunsite.unc.edu:/pub/Linux/docs/LDP. Mantente atento a comp.os.linux.announce
Al menos los siguientes sites de ftp anónimo proporcionan Linux
Nombre textual Direccion IP Directorio Linux
============================= =============== ================
tsx-11.mit.edu 18.172.1.2 /pub/linux
sunsite.unc.edu 152.2.22.81 /pub/Linux
ftp.funet.fi 128.214.248.6 /pub/OS/Linux
net.tamu.edu 128.194.177.1 /pub/linux
ftp.mcc.ac.uk 130.88.203.12 /pub/linux
src.doc.ic.ac.uk 146.169.2.1 /packages/linux
fgb1.fgb.mw.tu-muenchen.de 129.187.200.1 /pub/linux
ftp.informatik.tu-muenchen.de 131.159.0.110 /pub/comp/os/linux
ftp.dfv.rwth-aachen.de 137.226.4.111 /pub/linux
ftp.informatik.rwth-aachen.de 137.226.225.3 /pub/Linux
ftp.Germany.EU.net 192.76.144.75 /pub/os/Linux
ftp.ibp.fr 132.227.60.2 /pub/linux
kirk.bond.edu.au 131.244.1.1 /pub/OS/Linux
ftp.uu.net 137.39.1.9 /systems/unix/linux
wuarchive.wustl.edu 128.252.135.4 mirrors/linux
ftp.win.tue.nl 131.155.70.100 /pub/linux
ftp.stack.urc.tue.nl 131.155.2.71 /pub/linux
srawgw.sra.co.jp 133.137.4.3 /pub/os/linux
cair.kaist.ac.kr /pub/Linux
ftp.denet.dk 129.142.6.74 /pub/OS/linux
NCTUCCCA.edu.tw 140.111.1.10 /Operating-Systems/Linux
nic.switch.ch 130.59.1.40 /mirror/linux
monu1.monash.edu.au 130.194.1.101 /pub/linux
cnuce_arch.cnr.it 131.114.1.10 /pub/Linux
tsx-11.mit.edu y fgb1.fgb.mw.tu-muenchen.de son los sites oficiales para el GCC de Linux. Algunos sites son un mirror de otros. Por favor usa el site más cercano a ti mientras te sea posible.
Al menos sunsite.unc.edu y ftp.informatik.tu-muenchen.de ofrecen servicios de ftpmail. Escribe a ftpmail@sunsite.unc.edu o ftp@informatik.tu-muenchen.de si necesitas ayuda.
Si estás perdido prueba a buscar en sunsite.unc.edu:/pub/Linux/distributions/, donde diversas distribuciones son ofrecidas. La Slackware está bien testeada y es una de las más populares distribuciones de Linux. La Red Hat y la Debian están también ganando popularidad.
Hay muchas BBS que tienen ficheros para Linux. Una lista de ellas es ocasionalmente enviada a comp.os.linux.announce. Pregunta a amigos y a grupos de usuarios, o pide una de las distribuciones comerciales. Una lista de ellas está contenida en el "Linux distribution HOWTO", disponible como sunsite.unc.edu:/pub/Linux/docs/HOWTO/distribution-HOWTO y enviado regularmente al newsgroup comp.os.linux.announce.
Como se ha mencionado al principio, Linux no tiene una administración centralizada. Por ello no hay una versión oficial que nadie pueda señalar y decir "Eso es Linux". Al contrario, hay varias distribuciones, que son más o menos colecciones completas de software configurado y empaquetado de tal forma que pueden ser usadas para instalar un sistema Linux.
La primera cosa que deberías hacer es obtener y leer la lista de preguntas frecuentes (FAQ) de uno de los sites de FTP, o usando los normales archivos FAQ de Usenet (por ejemplo rtfm.mit.edu). Este documento contiene numerosas instrucciones de qué hacer para empezar, qué ficheros son necesarios y cómo resolver la mayor parte de los problemas comunes (durante la instalación o en otro momento).
Aunque Linux es suministrado con el código fuente completo, es software con copyright, no de dominio público. Sin embargo está disponible gratuitamente bajo la "GNU Public License" (GPL). Ver la GPL para más información. Los programas que corren en Linux tienen cada uno su propio copyright, aunque muchos de ellos usen la GPL también. X usa el copyright de MIT X y hay algunas utilidades bajo copyright de BSD. En cualquier caso todo el software en el site se puede distribuir gratuitamente (y si no, no debería estar allí).
Una revista mensual, llamada Linux Journal, apareció hace más de un año. Incluye artículos destinados a casi cualquier nivel y pretende ser de ayuda a todos los usuarios de Linux. La subscripción por un año cuesta $22 en U.S., $27 en Canada y Méjico, y $32 en cualquier otro país, pagables en moneda USA. Las solicitudes de subscripción pueden ser enviadas por email a subs@ssc.com, por fax a +1-206-782-7191, por teléfono a +1-206-782-7733 o por correo a Linux Journal, PO Box 85867, Seattle, WA 98145-1867 USA. SSC tiene una clave PGP pública disponible para encriptar tu correo y proteger el número de tu tarjeta de crédito; haz finger a info@ssc.com para obtener la clave.
Hay diversos grupos de noticias (newsgroups) de Usenet para discusión sobre Linux además de diversas listas de correo. Ver la Linux FAQ para más información sobre las listas de correo (deberías poder encontrar la FAQ o en el grupo de noticias o los FTP sites).
El grupo de noticias comp.os.linux.announce es un grupo de noticias moderado para anuncios sobre Linux (nuevos programas, corrección de errores, etc).
El grupo de noticias comp.os.linux.answers es un grupo de noticias moderado al que se envían la Linux FAQ, los HOWTO's y otros documentos.
El grupo de noticias comp.os.linux.admin es un grupo de noticias no moderado para la discusión sobre la administración de un sistema Linux.
El grupo de noticias comp.os.linux.development.system es un grupo de noticias no moderado dedicado específicamente a la discusión sobre el desarrollo del núcleo de Linux. Las únicas cuestiones sobre desarrollo de aplicaciones que deben ser discutidas aquí son aquellas que están íntimamente ligadas al núcleo. Todas las demás cuestiones de desarrollo son probablemente genéricas de Unix y deben ser dirigidas un grupo de comp.unix, a menos que sean preguntas muy ligadas a Linux, en cuyo caso deben ser enviadas a comp.os.linux.apps.
El grupo de noticias comp.os.linux.development.apps es un grupo de noticias no moderado destinado a la discusión sobre el desarrollo de aplicaciones en relación con Linux. No está para discutir sobre el lugar en el que se puede conseguir una aplicación para Linux, ni para discusión entre aquellos que quieren aplicaciones para Linux.
El grupo de noticias comp.os.linux.hardware es para preguntas de hardware específicas de Linux.
El grupo de noticias comp.os.linux.networking es para preguntas específicas de Linux sobre desarrollo de redes y su puesta a punto.
El grupo de noticias comp.os.linux.x es para cuestiones sobre X-Windows relativas a Linux.
El grupo de noticias comp.os.linux.misc es el sustituto del original comp.os.linux y sirve para cualquier discusión que no esté cubierta en las temáticas de los anteriores grupos.
Por norma, no reenvíes entre los grupos de noticias de Linux. El único reenvío que es aceptable es un envío ocasional de un grupo no moderado a comp.os.linux.announce. La razón para dividir comp.os.linux en varios grupos es reducir el tráfico en cada uno. Aquellos que no sigan esta regla serán fulminados sin piedad...
Linux está en el Web (World Wide Web, WWW, W3, etc). La dirección URL es http://sunsite.unc.edu/mdw/linux.html
Tras salir Linux 1.0, se trabajó en varias mejoras. Mayor rapidez en los accesos a disco, mejoras de TTY y muchas más cosas están ahora disponibles en Linux 1.2.
Linux 1.2 acaba de ver la luz y muchas nuevas mejoras, incluyendo las de la memoria virtual, soporte de multiplataforma y cuotas están siendo consideradas para la serie de desarrollo 1.3.x. Tras un año de Linux 1.0 estable, Linux 2.0 ocupó ese papel. Ahora, una nueva versión estable de Linux (mejor dicho, de Linux 2.0, antes que de Linux 1.4) continuará esa tradición.
Hay mucho código para escribir e incluso más documentación todavía. Por favor únete a la lista de correo linux-doc@vger.rutgers.edu si quieres contribuir a la documentación. Manda un mensaje a majordomo@vger.rutgers.edu con una única línea conteniendo la palabra ``help'' en el cuerpo (NO el subject) del mensaje.
Este documento es mantenido por Michael K. Johnson, johnsonm@nigel.vnet.net. Por favor, escríbeme con cualquier comentario, sin importar que sea corto. No puedo hacer un buen trabajo manteniendo este documento sin tu ayuda. Una copia actualizada de este documento puede siempre ser encontrada como tsx-11.mit.edu:/pub/linux/docs/INFO-SHEET, y una versión PostScript es INFO-SHEET.ps, en el mismo directorio.
Las marcas registradas pertenecen a sus propietarios. No hay garantía sobre la información en este documento. Usalo y distribúyelo a tu libre albedrío. El contenido de este documento es de dominio público, pero por favor, se educado y proporciona información sobre cualquier cita.
Hola, soy Iván Casado, del INSFLUG. Me he encargado de traducir este documento por amor al arte (al arte del Linux, por supuesto). Espero que sea de tu interés y que comprendas que aún hay mucho por traducir y más aún por escribir.
He intentado ajustarme totalmente al original de Michael K. Jonhson y he revisado la traducción un par de veces. No obstante aún puede quedar algo por pulir o se me ha podido colar alguna errata, de cuya responsabilidad me hago cargo, pero jamás de sus consecuencias.
Para cualquier comentario, errata o consulta sobre la traducción, acude al área R34.LINUX de FidoNet o contacta conmigo por NetMail a la dirección 2:345/425.25 de la misma red.
Un saludo, Iván Casado.
Antes de comenzar,dos tres pequenas cosas se deben precisar sobre la manera de hacer una instalación de Linux en tu maquina.
La recuperacion de las distribuciones Linux puede hacerse de varias maneras :
En el curso de la historia de Linux, el formato de los binarios ha cambiado. Al principio eran a.out. Desde hace + o - un año, el formato de los binarios ha cambiado : paso a ELF. Si no tenias Linux en tu maquina, no notaras nada. Pero si tu quieres poner al dia tu maquina y que tienes a.out, tienes dos soluciones :
gandalf# file /bin/ls /bin/ls: ELF 32-bit LSB executable i386 (386 and up) Version 1En este caso los binarios son ELF. Si el mensage indica un formato Linux/i386 executable, entonces es casi seguro que tu maquina es a.out.
Existen varias posibilidades para instalar Linux... He aqui un corto resumen.
scandisk
y luego un defrag
. Luego
arrancas de nuevo tu maquina (le quitas antes los programas residentes) y lanzas
FIPS esto te permitira reducir tu particion DOS, y asi poder instalar Linux
. en el espacio asi liberado.umsdos
. Este sistema es bastante practico (yo
lo utilizo en este momento en el ejercito). Esto permite instalar Linux,
sin preocuparse de las particiones. Linux es instalado en la particion dos.
Mas sinembargo, una instalacion de este tipo es muy limitada puesto que el
sistema de archivos es muy lento. nfs-root
detalla esta operacion.Bueno despues de estos preliminares pasemos a las distribuciones.
Se llaman "distribuciones" un conjunto de soportes (disquetes, CD-ROM ...) que contengan lo necesario para instalar un programa en una maquina. Ver, a este propósito, la sección "como empezar" de la hoja de informaciones Linux reproducida mas arriba. No existe una distribución oficial de linux. Solo las distribuciones circulan. He aquí las principales :
Ya sea con Red Hat o con Slackware, debes utilizar un disquete de boot (y uno de root con Slackware). La manera de copiar estos ficheros en un disquete es la misma en las dos distribuciones. Luego de haber seleccionado la o las imágenes que vas a copiar en el disquete para permitir el arranque de la maquina, es necesario copiarla en el disquete. Para hacer esto hay varias soluciones :
En esta parte, se supone que tu tienes la versión 3.1 de Slackware. He aquí una breve descripción de los disquetes (en resumen , todo lo que vas a encontrar, para evitar que instales cosas que no necesitas).
Dos disquetes fundamentales para instalar Linux con la Slackware : el disquete de boot y el disquete de root. Linux se instala, en efecto , ... bajo Linux, de manera que es necesario lanzarlo "a partir de un disquete" antes de comenzar la instalación. El disquete boot contiene un núcleo linux y el disquete root el da al linux así lanzado algunos ficheros absolutamente necesarios para su buen funcionamiento. Varios tipos de disquetes boot y root existen, hay que escoger en función del material empleado. El contenido de cada disquete es dado en forma de un archivo de tipo image, que guarda el contenido de todos los sectores físicos de un disquete.
He aquí un resumen de las etapas necesarias para una instalación :
----------------\ Controlador de Disco : Las fuentes \ están sur : \ IDE SCSI MFM ------------------+----------------+--------------------------+-------------- Disco duro | bare.i | Utilizar un disquete | xt.i | | SCSI de la liste | | | aquí abajo. | -------------------+----------------+--------------------------+-------------- CD-ROM SCSI | Utilizar un | idem | | disquete SCSI | | -------------------+----------------+--------------------------+-------------- CD-ROM IDE/ATAPI | bare.i | ídem | -------------------+----------------+--------------------------+-------------- Aztech, Orchid, | aztech.i | aztech.s | Okano, Wearnes, | | | Conrad, CetcDROM | | | non-IDE CD-ROM | | | -------------------+----------------+--------------------------+-------------- Sony CDU31a, | cdu31a.i | cdu31a.s | Sony CDU33a CD-ROM| | | -------------------+----------------+--------------------------+-------------- Sony CDU531, | cdu535.i | cdu535.s | Sony CDU535 CD-ROM| | | -------------------+----------------+--------------------------+-------------- Philips/LMS cm206 | cm206.i | cm206.s | CD-ROM | | | -------------------+----------------+--------------------------+-------------- Goldstar R420 | goldstar.i | goldstar.s | CD-ROM | | | -------------------+----------------+--------------------------+-------------- Mitsumi non-IDE | mcdx.i | mcdx.s | CD-ROM | mcd.i | mcd.i | -------------------+----------------+--------------------------+-------------- Optics Storage | optics.i | optics.s | 8000 AT CD-ROM | | | (Dolphin) | | | -------------------+----------------+--------------------------+-------------- Sanyo CDR-H94A | sanyo.i | sanyo.s | CD-ROM | | | -------------------+----------------+--------------------------+-------------- Matsushita, | sbpcd.i | sbpcd.s | Kotobuki, | | | Panasonic, | | | CreativeLabs | | | (Sound Blaster), | | | Longshine and | | | Teac non-IDE | | | CD-ROM | | | -------------------+----------------+--------------------------+-------------- NFS | ny | scsiny | -------------------+----------------+--------------------------+-------------- Tape | bare (para | Utilizar un disquete | xt.i (para | lector non | SCSI de la lista | lector no | SCSI. | aquí abajo. | SCSI) | Si no utilizar | | | un disquete | | | SCSI - ver | | | aquí abajo. | | | | | -------------------+----------------+---------------------------------------Controladores SCSI : 7000fast.s, advansys.s, aha152x.s, aha1542.s, aha1740.s, aha2x4x.s, am53c974.s, buslogic.s, dtc3280.s, eata_dma.s, eata_isa.s, eata_pio.s, fdomain.s, in2000.s, iomega.s, n53c406a.s, n_5380.s, n_53c7xx.s, pas16.s, qlog_fas.s, qlog_isp.s, seagate.s, trantor.s, ultrastr.s y ustor14f.s Si tu no sabes cual es la tarjeta SCSI instalada en tu maquina, ensaya entonces el disquete de arranque genérico
scsi.s
. Su nombre aparecerá en la pantalla durante el arranque. En
seguida, utiliza el disquete correspondiente (puesto que el disquete scsi.s utiliza mucha
memoria).
Pasemos enseguida al disquete de root. El fichero correspondiente debe ser copiado en sur forma comprimida : Linux lo descomprime sólito como un grande. Existen 6 disquetes root posibles :
ATTENCION : El disquete Root no debe ser descomprimido !!
Bueno, hemos visto los dos primeros disquetes. Aquí esta la descripción de la distribución. Como es largo, esto es un resumen. Entre paréntesis, el numero de disquetes :
Ya esta, se acabo !!
La Slackware, como toda distribución, posee un cierto numero de bogues. Una lista existe, la puedes consultar en la siguiente dirección :
http://www.cuug.ab.ca:8001/~barkers/slackware-fixes/La ponen al día frecuentemente y no la detallaremos aquí.
La RedHat utiliza un sistema muy diferente de la Slackware : aprovecha los módulos cargables para el arranque de la maquina. Pero no permite la instalación a partir de disquetes (y en este caso, la Slackware se impone). Finalmente, su ultima limitación es que es obligatorio tener una partición Linux native (ext2fs).
Solo existe un solo disquete de boot : images/boot.img
. Si tu instalas tu maquina
desde un Pc que utiliza PCMCIA, tienes que utilizar un disquete suplementario :
images/supp.img
. Cuidado : en la primera versión del CD de la RedHat 4.0 hay
problemas con las tarjetas SCSI Adaptec 1520 y 1740. En estos casos debes recuperar una
versión mas reciente de la image de boot.
Una vez copiado el disquete de boot (y el segundo si necesario), arrancas ... y caes directamente en el sistema de instalación. Difícil hacer algo mas simple! Ademas este sistema de paquetes permite gestionar las dependencias entre las bibliotecas y los útiles.
La distribución RedHat esta compuesta por un conjunto de paquetes (un poco mas de 430) reagrupados por centros de interés (en realidad un árbol de grupos). Encontraras aquí abajo la lista de paquetes por orden alfabético de los grupos que puedes instalar en tu maquina. Los nombres de los grupos están en ingles puesto que así vienen y están en mayúsculas.
La manipulación "directa" de los paquetes (archivos rpm) es detallada en la próxima sección.
Es necesario resaltar que existe un archivo "upgrade" en cual se encuentran los archivos que permiten poner al día (evolución del núcleo y corrección de bogues eventuales) la distribución.
groff
bajo X ;
texinfo
. xdvi
. /etc/termcap
para la administración de
terminales; gdb
. libgr
;
ncurses
;
rpm
;
xview
;
gproff
;
koules
. db
;
f2c
;
gdbm
;
png
;
talk
;
arj
;
zip
;
zip
. /dev/
;
getty
reducido únicamente para la console
virtual ;
/proc
;
timeconfig
;
xterm
en colores; Se acabo ! Esta descripción detalla la versión original de la
RedHat 4.0 (llamada Colgate). Existen hoy en día numerosos paquetes (en el repertorio
upgrade
) que permiten poner al día correctamente tu maquina con una facilidad
desconcertante.
rpm
El programa rpm
es una verdadera maravilla que permite instalar, suprimir y poner al
día los diferentes paquetes instalados en tu maquina sin preocuparse mucho de los problemas
de versión, de bibliotecas etc.
Aquí no detallaremos todas la opciones de rpm porque en realidad hay muchas ( mira rpm --help
para eso o la documentación de Red Hat). Globalmente, rpm
funciona de
4 modos :
rpm
, La lista de paquetes instalados en tu maquina etc.
Por ejemplo, para saber cuales paquetes están instalados en tu maquina, solo tienes que hacer :
gandalf # rpm -q -a mailcap-1.0-3 rpm-devel-2.2.5-1 groff-1.10-6Para obtener mas informaciones sobre los diferentes paquetes instalados (numero de versión, cual distribución,...) solo necesitas agregar la opción
-l
y
-i
Por ejemplo:
gandalf # rpm -q -i -l rpm-devel Name : rpm-devel Distribution: Red Hat <bf/Linux/ Colgate Versión : 2.2.5 Vendor: Red Hat Software Release : 1 Build Date: Thu Sep 05 23:14:10 1996 Install date: Wed Nov 13 11:30:50 1996 Build Host: porky.redhat.com Group : Development/Libraries Source RPM: rpm-2.2.5-1.src.rpm Size : 136142 Summary : Header files and libraries for programs that manipulate rpm packages Descripción : The RPM packaging system includes a C library that makes it easy to manipulate RPM packages and databases. It is intended to ease the creation of graphical package managers and other tools that need intimate knowledge of RPM packages. /usr/include/rpm /usr/include/rpm/dbindex.h /usr/include/rpm/header.h /usr/include/rpm/messages.h /usr/include/rpm/rpmerr.h /usr/include/rpm/rpmlib.h /usr/lib/librpm.aEstas opciones pueden ser utilizadas sobre un archivo rpm que tu quieras instalar para conocer su contenido : solo necesitas agregar la opción
-p
:
gandalf # rpm -q -l -p giftrans-1.11.1-4.i386.rpm /usr/bin/giftrans /usr/man/man1/giftrans.1Si le agregas la opción
-i
, obtendrás las informaciones sobre el paquete.
gandalf# rpm<item>i howto-sgml-4.0-1.i386.rpm
gandalf# rpm<item>e howto-sgml-4.0-1
rpm
, vamos a ver la puesta al día. Tu has instalado algunos
paquetes muy interesantes y oh sorpresa, una nueva versión del programa
acaba de salir.
Debes recuperar la nueva versión. Normalmente, es necesario destruir la
versión antigua e instalar la nueva. Gracias al sistema rpm
, esto se hace solo :
gandalf# rpm -U howto-sgml-4.0-2.i386.rpm
Existe un numero importante de opciones. Consulta la documentación para más información.
Después de estos preliminares, pasemos a las cosas serias. En un primer tiempo, has una salvaguarda de tu disco duro, es lo mas prudente, y pones al lado tuyo un disquete formateado. Luego, apagas tu maquina y metes el disquete de boot.
Bueno, estas listo ? Nos fuimos. Arranca tu maquina. Linux arranca sobre el disquete de boot. En el caso de la Slackware, te pide insertar un segundo disquete, llamado root. Remplaza el disquete y luego oprime la tecla Enter.
Nota a propósito del mensaje "BIOS32" que algunos pueden ver durante el arranque : este mensaje significa que tu bus es PCI. Si tu ves el mensaje siguiente : "BIOS32 extended no supported" significa que tu maquina no es PCI. No hay que asustarse y utiliza a pesar de esto el disquete de boot standard. Si la maquina no arranca con el disquete de boot tienes que crear un disquete de boot gracias a un otro soporte; Lee la sección del presente documento reservado a la "signal 11". Antes de lanzarte en la instalación de tu sistema, he aquí algunos trucos y astucias. Linux utiliza un procedimiento que instala tu sistema de manera casi automática. En el caso de la Red Hat , la instalación es realmente simple y progresiva. Solo es necesario seguir las indicaciones. Cuidado con el teclado que qwerty (americano) desde el comienzo. La configuración del teclado en español se hará mas tarde.
.
Vas, en un primer tiempo, a necesitar hacer un formatage de tu disco. Tienes que crear por lo menos una partición Linux con el sistema de archivos ext2fs y al menos una partición de swap (la swap es un sistema de memoria virtual, quiere decir que si tu no posees suficiente memoria Ram para hacer funcionar tal o tal programa, el va utilizar el espacio del disco duro como memoria... Esta explicación es un poco simplificada pero es mas o menos así).
Es mucho mas fácil suprimir una partición de swap que crear una después entonces es mejor prevenir. Si quieres utilizar X Window, 8 Mo de memoria viva son absolutamente necesarios.
Los discos bajo Linux son devices. Por ejemplo, el primer disco duro es
/dev/hdax
, el segundo /dev/hdbx
para un controlador IDE. La x corresponde
al numero de la partición del disco. Si tu tienes un sistema MS instalado este es seguramente
/dev/hda1
.
Linux te va guiar en su instalación. El te permite instalar tu sistema de manera completa
de una sola vez. El único problema, es que si de pronto te equivocas en algo ... tienes que
volver a empezar todo.
Si tu disco no esta particionado, es el programa fdisk
que te va permitir realizar la
operación. Su sintaxis es : fdisk /dev/disco
. En el caso de Red Hat este se lanza solo.
Por ejemplo, si tu quieres instalar Linux en tu segundo disco IDE, escribe fdisk /dev/hdb
.
Los comandos de fdisk (por orden de utilidad) son :
Para agregar una partición, debes hacer n y luego debes especificar el numero de la partición (principal o extendida), el numero del bloque de origen y su talla. Luego tu le das un tipo (con t).
mke2fs -cv /dev/hdax
donde x corresponde al numero de tu
partición.
Ahora, tu debes lanzar el programa setup. Es un programa en colores (esto depende del disquete Root que tu as escogido), con un menú. El formatage de las particiones puede ser efectuado sin problemas. Configura tu partición swap e instala la serie A en la partición. La configuración swap es muy simple a efectuar : escoge la opción swap y sigue las instrucciones. Para instalar la serie A, escoge la opción fuente y escoge la buena opción : disquetes por ejemplo. Enseguida especifica el device necesario para acceder al lector A. Ahora debes especificar las series que quieres instalar. Tienes ahora la lista que aparece. Escoge la serie.
El programa de instalación te pregunta si quieres lanzar la instalación; Responde si. Luego, te pregunta un modo de selección. Escoge Normal. A partir de ahí, te toca jugar a ti. Te va a pedir insertar los disquetes y luego te da la lista de programas a instalar. Buena partida de come disquetes !
También es posible instalarla gracias a un CD ROM que contenga la distribución. Si el lector no es reconocido no es necesario recopiar todos los archivos en disquetes antes de proceder a la instalación. Tienes que copiar todos los archivos de la distribución en una partición MS- DOS y luego relanzar el sistema gracias a los disquetes boot/root, llamar al "setup" e indicarle la partición MS-DOS donde se encuentran los archivos necesarios. Utiliza los menús para efectuar todas estas operaciones. Linux te va a pedir la creación de un disquete de boot. Es este disquete que te va a servir de ahora en adelante para arrancar tu sistema. Tu partición Linux formateada, tus particiones de swap generadas, la serie instalada y tu disquete magico listo, no te falta mas que volver a arrancar. Entonces metes el disquete, calientito, configurado para Linux en el lector y apoyas en las teclas Ctr-Alt-Del.
Nunca apagues bruscamente tu maquina bajo Linux ! En efecto, Linux
como todo sistema UNIX, utiliza unos caches disco : perderías informaciones apagando tu
maquina. La única manera decente de apagar Linux es hacer ya sea Ctr-Alt-Del o
sino siendo root lanza uno de estos comandos : halt, rebbot, shutdown
(Mira
el man para ver las diferencias).
Una vez que has vuelto a arrancar, entra como root. Pero debes tener mucho cuidado, el usuario root tiene todos los derechos, entre ellos aquel de destruir todo. Esto pasa mas fácilmente y más frecuentemente, que lo que tu te imaginas.
La instalación con RedHat es muy intuitiva. Una vez las particiones realizadas, es suficiente escoger el tipo de instalación deseada y los paquetes que quieres utilizar. Esto realizado, esta distribución va a realizar la instalación completa de manera automática. Puedes ir a tomarte un cafecito mientras que la instalación de tu maquina se hace automáticamente.
Bueno, comencemos por las cosas útiles: El teclado Francés. Normalmente, las distribuciones
lo configuran solas...pero uno nunca sabe!
Una vez registrado como root, escribe el comando siguiente: /usr/bin/loadkeys /usr/lib/kdb/keytables/fr-latinl.map
.
Ahora tu teclado es francés ! Atención, esto es temporal; la solución mas simple es agregar en
el archivo /etc/rc.local
eso con la Slackware. Para la RedHat, realiza la operación con
el tablero de configuración gráfica.
LILO (LInux LOader) Permite tener un sistema de arranque
múltiple: MS- Windows, MS-DOS, Linux, etc. Este programa se ubica en el sector de
arranque de tu disco y te permite seleccionar la partición sobre la cual deseas arrancar.
Si has instalado LILO en tu disco duro y tu maquina se bloquea, arranca con un
disquete sistema MS-DOS y escribe FDISK /MBR
(nt: este comando borra LILO).
El archivo de configuración LILO se encuentra generalmente en /etc/lilo.conf
. Las
distribuciones permiten generar un archivo automáticamente.
He aquí un ejemplo de mi archivo /etc/lilo.conf
:
boot = /dev/hda # disco en el cual se encuentra el archivo LILO delay = 300 # tiempo de espera, antes del lanzamiento del arranque. # permite seleccionar la partición deseada. vga = normal # modo de la pantalla a escoger. ramdisk = 0 # paranoia setting # <bf/Linux/ : Ultima versión : El Pc arranca aquí por defecto. image = /vmlinuz # Núcleo de <bf/Linux/ 1 (camino completo y nombre del archivo.) root = /dev/hda2 append="no-hlt, aha1542=0x230" label = linux read-only other = /dev/hda1 # Partición 1 : label = dos # texto que identifica el arranque bajo DOS table = /dev/hda # disco : /dev/hda image = /zimage # Núcleo <bf/Linux/ 2 root = /dev/hda2 # Raiz de LINUX (Partición 2 de mi disco) append="aha1542=0x230" # append... ver la explicación mas abajo. label = old # Texto a escribir : old read-only #En este momento, debes tener muchas preguntas:
halt, reboot o shutdown
). Esta verificación no es de todas maneras lanzada
que sobre las particiones Linux. Es el programa fsck
que efectúa esta operación.
Te desaconsejo lanzarla para "ver que hace" : una utilización errada puede provocar
la perdida de datos de tu disco ! /sbin/lilo
y ya esta!
En el caso que tengas problemas con LILO tienes que ensayar la opción "compact"
que se puede encontrar en su archivo de configuración.
No te olvides de relanzar LILO luego de cada modificación del archivo de configuración.
El archivo /etc/fstab
contiene todas las informaciones que concierne el montaje de tus
particiones.
He aquí un ejemplo:
#/etc/fstab # Device Repertoire type options frequence passe # <bf/Linux/ /dev/hda2 / ext2 defaults 5 1 /dev/hdb2 /usr2 ext2 defaults 5 2 /dev/sda2 /usr3 ext2 defaults 10 2 # MS-DOS /dev/hda1 /dos msdos defaults 0 0 /dev/hdb1 /dos2 msdos defaults 0 0 # Processus none /proc proc defaults 0 0 # Partition de swap /dev/hda3 none swap defaults 0 0 # Fichier de swap /usr2/swap_file /usr2 swap defaults 0 0Descripción de las 6 columnas
dump
. Este comando existe solamente para ext2fs (es una migración de la
versión 4.4BSD) pero no esta aun incluida en todas las distribuciones.
Para NFS es aconsejable utilizar los siguientes parámetros:
rsize=8192, wsize=8192
, sobre todo si tu posees una tarjeta rápida.
Para autorizar un usuario a montar un volumen, tienes que crear una linea que contenga la
opción "user"
Ejemplo (caso de un CD-ROM SCSI) :
/dev/scd0 /mnt/cd iso9660 user,exec,dev,nosuid,ro,noautoCualquier utilizador podrá, a partir de ese momento, montar y desmontar un CD (utilizar
mount /mnt/cdrom, umount /mnt/cdrom
) La pagina de man de mount, sección 8
(man 8 mount
) explica la significación de las opciones posibles.
Como lo hemos visto en el parágrafo precedente, las particiones son montadas al momento del
arranque, gracias al archivo /etc/fstab
. Tu puedes, mas sin embargo, montarlos
manualmente, debes utilizar el comando mount. Por ejemplo, para montar el disquete a:, tu
debes hacer: mount -t msdos /dev/fd0 /mnt/floppy
.
El -t
indica el tipo de soporte. Los mas corrientes son:
/dev/fd0
es el nombre del archivo especial correspondiente al dispositivo especial
que corresponde al lector de disquetes. El punto de montaje es el directorio
/mnt/floppy
.
Para desmontar hacer umount /mnt/(directorio)
.
El soporte de cuotas disco ha sido integrado en el kernel Linux desde la versión 1.3.46. Necesitas utilizar un kernel posterior para poder beneficiar las cuotas.
Tu necesitas igualmente los útiles de gestión de cuotas y los puedes encontrar en:
ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/subsystems/quota
o, mas cerca, en :
ftp://ftp.ibp.fr/pub/linux/kernel/sources/subsystems/quota
El archivo que debe recuperar se llama quota-1.51.tar.gz
y se encuentra en el
subdirectorio utils
. También hay un subdirectorio doc
que contiene la
documentación (principalmente las paginas del manual de los útiles) en formato HTML.
Después de haber extraído el contenido del archivoquota-1.51.tar.gz
, necesitas
compilarlos. Esto se hace con el comando make. En ciertos casos (depende de tu biblioteca
C) puede ser necesario agregar -I
a la variable CFLAGS
definida en el
Makefile
.
Si tu utilizas el sistema de archivos ext2 y que tu has instalado las bibliotecas contenidas en
e2fsprogs, tu puedes incluir el soporte de ext2fs en los utilitarios de cuotas para acelerar su
ejecución. Para esto debes editar el archivo Makefile
de manera que la variable
CFLAGS
contenga-DEXT2_DIRECT
y que la variable
EXT2LIBS
contenga-lext2fs -lcom_err
antes de compilar los programas.
Luego de la compilación instala los utilitarios con el comando make install
. Cuidado
el comando quota
es instalado en el directorio /usr/ucb
que no existe en la
mayoria de las instalaciones Linux, necesitas entonces modificar el Makefile
para
instalarlo en otro directorio (/usr/bin
es un buen lugar). Puede ser necesario
igualmente definir la variable LN
a el valor ln -sf
.
Para utilizar las cuotas el kernel debe ser compilado con el soporte de cuotas. Para esto debes tener un kernel para el cual has respondido "Y" a la pregunta "Quota support". Cuidado, el soporte de cuotas es efectivo por el momento solamente en los sistemas de archivos ext2.
Existen dos tipos de cuotas: las cuotas asociadas a los usuarios y las cuotas asociadas a los grupos de usuarios. Las primeras definen el nombre máximo de archivos y de bloques disco asociados a cada usuario, los segundos definen el numero máximo de archivos asociados a cada grupo de usuarios. Los dos tipos de cuotas pueden ser activadas separadamente.
Para activar las cuotas para los usuarios es necesario indicar la opción usrquota
para
los sistemas de archivos concernidos en /etc/fstab
. Las cuotas que conciernen los
grupos son reguladas por la opción grpquota
. Los archivos de definición de cuotas
se llaman respectivamente quota.user
y quota.group
y están situados en la
raíz de cada sistema de archivos concernido.
Es posible modificar los nombres de los archivos de gestión de cuotas utilizando la sintaxis
usrquota=nombre_de_archivo
y grpquota=nombre_de_archivo
.
He aquí un ejemplo del archivo /etc/fstab
:
/dev/hda2 / ext2 defaults,rw 0 1 /dev/hdb2 /home ext2 defaults,rw,usrquota,grpquota 0 1 /dev/sda1 /usr/src ext2 dzfaults,rw,usrquota 0 1
La activación de las cuotas es lanzada por el comando quotaon
. Para activarlas
automáticamente a la inicialización del sistema, debes agregar al archivo de inicialización
(/etc/rc.d
) las lineas:
# Enable quota /usr/sbin/quotaon -avugPuede ser igualmente necesario verificar la coherencia de las informaciones de gestión de cuotas luego de bloqueos repentinos. Para esto utilice el comando
quotacheck
:
/usr/sbin/quotacheck -avugSi los utilitarios han sido compilados con
-DEXT2_DIRECT
, el comando
quotacheck
debe ejecutarse relativamente r pido, en el caso contrario puede ser muy
largo, pues debe explorar todos los directorios del disco. Es aconsejable de todas maneras
lanzar el quotacheck a la inicialización del sistema antes de la activación de la cuotas con
quotaon
:
# Check quota /usr/sbin/quotacheck -avug
El comando edquota
es utilizado para afectar una cuota a un usuario o a un grupo de
usuarios. Su sintaxis es edquota -u usuario
o edquota -g grupo
. Este
comando lanza un editor de texto que contiene la definición de cuotas atribuidas al usuario o al
grupo y toma en cuenta el nuevo valor cuando el archivo es reescrito.
Para cada usuario o grupo existen dos limitaciones: el numero de archivos y el numero de bloques disco (escritos en bloques de 1024 octetos). Para cada uno existe dos limites:
Todo usuario puede obtener el estado de la cuota que han sido atribuidas
(limites así como el numero de archivos y de bloques que le han sido atribuidos)
gracias al comando quota
.
El super usuario puede obtener las mismas informaciones sobre todo
usuario o grupo con el mismo comando : quota -u usuario
o
quota -g grupo
. Ademas es posible utilizar el comando repquota
para
obtener una lista de cuotas asociadas a un o varios sistemas de archivos.
La implementación de las cuotas en Linux es compatible con la implementación original en 4.2BSD UNIX. Todos los documentos que conciernen las cuotas con la implementación original 4.2BSD, ya sea a nivel de comandos o a nivel de la interfase de programación son utilizables.
Las paginas del manual de los utilitarios son bastante claras y muy instructivas. En fin, los documentos difundidos en formato HTML forman una buena introducción a la administración de cuotas.
En vez de montar tus particiones MS-DOS, te consejo que utilices
los mtools. Se trata de los equivalentes de los comandos MS-DOS, pero con un m
adelante.
Por ejemplo : mcopy toto.c a:
. Si tu quieres copiar un archivo texto para que sea
utilizado bajo MS-DOS o lo inverso, no olvides de utilizar la opción-t
: esto convierte
el carácter de fin de linea que es diferente en los dos sistemas.
En principio, ya vienen mas o menos configurados. Pero en el caso tal, tu debes modificar el
archivo /etc/mtools
.
drive a: file="/dev/fd0" exclusive drive b: file="/dev/fd1" exclusive # 1er disco Duro drive c: file="/dev/hda1" # 2nd disco Duro drive d: file="/dev/sda1" mtools_lower_case=1Cuidado : el archivo a sido modificado desde la ultima versión. Este es el ultimo formato por lo que es mas claro y simple de utilizar. Ademas, esta nueva versión permite utilizar los nombres largos (vfat de MS-Windows 95).
Para añadir una partición de swap de 8 Mo, tienes que crear primero la partición gracias
al programa fdisk
, luego, ya sea pasas por el programa setup, ya sea lo haces a la
mano :
mkswap /dev/hda3 8192
Añade la linea
/dev/hda3 swap swap defaults 0 0
en el archivo /etc/fstab
.
Finalmente, para que funcione, ya sea re-arrancas tu maquina o sino puedes hacer un
swapon -a
.
Para el archivo, es mas complicado. Debes hacer un :
dd if=/dev/zero of=/usr2/swap_file bs=1024 count=8192 mkswap /usr2/swap_file 8192Y agregas en el archivo
/etc/fstab
la linea
/usr2/swap_file /usr2 swap defaults 0 0.
Cuidado, debes poner esta linea después del montaje de la partición
/usr2
. Sino, no funcionara nunca.
De ahora en adelante, para salir de Linux estas obligado de hacer :
swapoff -a reboot #O otroEn efecto, si no desactivas el archivo de cambios, Linux no podrá desmontar la partición y por consiguiente hará un fsck sobre ella cada vez que arranques tu maquina. También es posible, con ciertos sistemas, agregar el comando swapoff en "/etc/rc.d/rc.K" Para automatizarlo.
.
Si posees la RedHat, utiliza el servicio de configuración, esta muy bien hecho realmente.
Agregar un usuario se hace en dos partes y rápidamente :
Dos archivos son importantes /etc/passwd
y /etc/group
.
Una linea del archivo passwd esta compuesta de esta manera :
gandalf::501:100:Eric Dumas:/home/gandalf:/bin/bash sgandalf::0:0:Super Eric Dumas:/:/bin/shUna linea esta compuesta por 7 columnas :
/etc/group
contiene la lista de los grupos de la maquina.
Por ejemplo, el grupo 100 es :
users::100:games,gandalf
Para agregar un usuario toto, debes hacer :
/etc/passwd
;
/etc/group
;
mkdir /home/toto cp /etc/skel/* /home/toto chown toto /home/toto chgrp le_groupe_de_toto /home/toto
passwd toto
. Te aconsejo mucho mucho trabajar bajo un nombre de usuario común. Es muy peligroso trabajar siendo root. Una mala manipulación y te tocara reinstalar todo ademas de perder tus datos personales mas los de tus usuarios.
Es en este archivo que vas a poner todas tus cositas personales(nt : si, soy de suramerica :-)) que quieres lanzar a cada arranque. He aquí una versión.
#! /bin/sh # una limpiadita,.dale echo "Cleaning /tmp... " /bin/rm -fr /tmp mkdir /tmp chmod 1777 /tmp # NOTA : esto puede ser nefasto puesto que ciertos programas lanzados # por los archivos rc ejecutados antes del rc.local pueden utilizar archivos en /tmp # Viva el azertyuiop :-) echo "Loading french keyboard... " /usr/bin/loadkeys /usr/lib/kbd/keytables/fr-latin1.mapLo que es importante es el teclado en francés Si tu agregas esta linea, tu teclado será francés desde el arranque. En caso de problema tienes que modificar así el fr-latin1.map :
keycode 3 = eacute two asciitilde keycode 8 = egrave seven grave keycode 10 = ccedilla nine asciicircum keycode 14 = Delete BackSpaceAdemas del teclado, yo limpio el directorio
/tmp
. Esto puede ser útil.
La crontab es una tabla que contiene los comandos que deben ser lanzados a intervalos regulares. Tu puedes poner la salvaguarda diaria, el cliente pop, etc.
El formato es bastante simple :
# hacer una salvaguarda todos los lunes a las 2 de la mañana 0 2 * * 1 /home/gandalf/backup # Arrancar la maquina todos 1 y 15 de cada mes a la 4:15 15 4 1,15 * * /sbin/shutdown<item>r +3Las 5 primeras columnas son :
Todo usuario puede crearse una crontab gracias al comando
crontab
.
Ahora que tu maquina funciona, veamos como imprimir. Las impresoras son administradas por el programa lpc y el demon lpd
El demon debe ser lanzado al arranque. Y puede ser lanzado ya sea por rc.M
o por
rc.inetd2
.
Normalmente, lpd es lanzado al arranque. (Tu debes verlo cuando son lanzados todos los
demons de tu maquina. Si no es el caso, necesitas quitar los comentarios a algunas lineas en
uno de los archivos citados)
Supongamos que tu impresora se llame betty. En un primer tiempo, en el archivo
/etc/rc.d/rc.local
, agrega :
echo "Setting up printer betty" /usr/sbin/lpc up bettyPasemos a las cosas serias. El archivo en el cual va a ser descrita tu impresora es el archivo :
/etc/printcap
Ej :
betty|lp:lp=/dev/lp1:sd=/var/spool/lp1:sh:lf=/var/adm/lpd-errs:of=/etc/start-dj500:La primera columna representa el nombre de la impresora. Yo puse betty y lp de esta manera es mi impresora por defecto. En seguida, la configuración se hace vía palabras clave. Para mas información has un
man printcap
. He aquí mas sin embargo una descripción de
aquellas utilizadas.
Como funciona ? Bueno, supongamos que yo tengo un archivo toto.ps.
Entonces yo hago lpr toto.ps
(o lpr -Pbetty toto.ps
). El archivo va ser
depositado en el directorio /var/spool/lp1
.
El demon va en seguida enviar el archivo al programa filtro. Este sistema permite imprimir archivos con formatos varios.
He aquí el archivo filtro (Para HP-500,510,520,etc).
#!/bin/sh # Script de impresión para impresora HP-500 Blanco y negro # # Eric.Dumas@freenix.fr # # Versión 2.0 # # 5/01/95 (ED) : Agrega el formato dvi; # 27/10/95 (ED) : Conversión de archivos texto en archivos PostScript ; # 01/11/95 (ED) : Un poco de limpieza; # 12/08/96 (ED) : modificación para gs # 04/12/96 (ED) : algunas correcciones y complementos. TmpDir=/tmp TmpFile=$TmpDir/deskjet.$$ # Usuario a prevenir en caso de error NOTIFY=lp-owner # Programas CAT=/bin/cat DVIPS=/usr/TeX/bin/dvips PGS=/usr/bin/gs AIIPS=/usr/local/bin/a2ps # Camino de acceso para GS GS_LIB=/usr/lib/ghostscript:/usr/lib/ghostscript/psfonts:/usr/lib/ghostscript/Type1: /usr/lib/ghostscript/fonts # Se fue esto ! $CAT- > $TmpFile echo -ne '\033E' set -- `file $TmpFile` shift FileType=$* # Transformación del PostScript al formato Deskjet500 # resolución a 300x300<item> formato a4 GS="$PGS -I$GS_LIB -q -sDEVICE=djet500 -r300x300 -sPAPERSIZE=a4 -dNOPAUSE - sOutputFile=- - /usr/lib/ghostscript/quit.ps || echo -ne '\033&10H'" case $FileType in *DVI*) # Fichier DVI $DVIPS -t a4 $TmpFile \ -f | $GS ;; *PostScript*) # Impresión de archivos Postscript $CAT $TmpFile | $GS ;; *text*|*script*) $CAT $TmpFile | $AIIPS -nP -r -8 | $GS ;; *data*) echo -ne '\033&;k0G' # Es un y comercial sin ; ! /bin/cat $TmpFile ;; *) echo "Deskjet: Unknow filetype $FileType" >> /dev/console echo "Deskjet: $TmpFile Unknow filetype $FileType " | mail $NOTIFY ;; esac /bin/rm -f $ TmpFile echo -ne '\033E'
Este script permite imprimir los archivos texto así como los archivos Postscript, dvi. Si tu quieres imprimir otro tipo de archivo, solo agrégalo aquí. Gracias por enviarme las modificaciones : esto permitirá que todo el mundo pueda aprovecharlo.
Timezone es un sistema muy útil que permite la administración del cambio de hora de invierno y de verano. Francia se encuentra en una zona horaria : MET (Medium European Time, o sea GMT +1).
La zona "MET DST" corresponde a la hora de verano activa (GMT+2) Lo mejor es no dejar todo eso a cargo de la única variable TZ.
Ve al directorio /usr/lib/zoneinfo
y te aconsejo leerte el archivo time.doc.
Los archivos binarios que se encuentran en /usr/lib/zoneinfo indican las reglas de calculo de la
hora en las diferentes zonas del globo.
Copia el archivo "MET" bajo el nombre /usr/lib/zoneinfo/localtime
,
haz un enlace simbólico de este archivo sobre /usr/lib/zoneinfo/posixrules
.
Comandos :
# cd /usr/lib/zoneinfo # cp MET localtime # ln -sf localtime posixrulesUtiliza en seguida el comando
clock
para poner el sistema a la buena hora.
Dos posibilidades :
/etc/rc.d/rc.local
el siguiente comando :
clock -u -s
Linux se ajustara sobre la hora salvaguardada.
Si la CMOS esta a la hora local, el comando en /etc/rc.d/rc.local
es : clock -s
y los cambios de hora solo serán automáticos si la maquina esta prendida
al momento del cambio de hora. Te toca a ti escribir la nueva hora en la CMOS manualmente,
haciendo clock -w
o poniendo la hora con el setup.
El comando date
permite verificar la validez de la hora : da la hora y timezone
date -u
da siempre la hora en GMT :
plux:/home/rene $ date Tue Sep 28 20:16:46 MET 1993 plux:/home/rene $ date -u Tue Sep 28 19:16:49 GMT 1993(En verano, "MET DST" (Daylight Savings Time) seria indicado).
Parece que este año, la fecha del cambio de hora a sido desplazada. Para que Linux no se
enrede, es necesario hacer ciertas modificaciones. La manipulación se basa en la utilización del
programa zic
, el time zone compiler.
En un fichero llamado europa
, pon :
Zone MET 1:00 M-Eur MET%s Link localtime MET Rule M-Eur 1986 max - Mar lastSun 2:00s 1:00 " DST" Rule M-Eur 1986 1995 - Sep lastSun 2:00s 0 - Rule M-Eur 1996 max - Oct lastSun 2:00s 0Para poner todo en su lugar, lanza la instrucción :
gandalf# zic europePara verificar que todo esta bien, debes obtener el resultado siguiente :
gandalf# zdump -v MET | grep 1996 MET Mon Nov 11 12:29:02 1996 MET MET Sun Mar 31 00:59:59 1996 GMT = Sun Mar 31 01:59:59 1996 MET isdst=0 MET Sun Mar 31 01:00:00 1996 GMT = Sun Mar 31 03:00:00 1996 MET DST isdst=1 MET Sun Oct 27 00:59:59 1996 GMT = Sun Oct 27 02:59:59 1996 MET DST isdst=1 MET Sun Oct 27 01:00:00 1996 GMT = Sun Oct 27 02:00:00 1996 MET isdst=0
Cuando instalas el paquete GNU "find", ademas del programa de búsqueda se
encuentra un programa de localización locate
. Este programa permite
encontrar el nombre completo de un archivo. El programa se encuentra en
ciertas distribuciones en /usr/lib/locate
.
Lanzar, siendo root,/usr/lib/locate/updatedb
. Esto llama un find ~/
sobre
los discos montados y coloca los nombres de todos los archivos (bajo la
forma hash) en /usr/lib/locate/find.codes
. El programa locate permite
localizar luego uno de estos archivos.
Nota: cuando lances este programa, piensa en desmontar las particiones de MS-DOS y tu CD/ROM !
Otra solución bastante agradable consiste en insertar en la crontab la linea
updatedb --prunepaths='/tmp /usr/tmp /var/tmp /proc /users /root /dos /mnt /var/adm /var/spool /var/catman /home '
Este comando realiza la actualización del árbol sin los archivos temporales, el árbol
del usuario, la partición dos, etc.
Es aconsejable excluir las particiones "HOMES" usuarios. En efecto, estas particiones contienen normalmente numerosos archivos. Pero el problema mayor es seguramente un problema de seguridad, porque todos los usuarios pueden conocer los nombres de los archivos de sus vecinos.
En este caso, es necesario que crees los dispositivos en /dev
.
Lanza MAKEDEV.ide1 en el repertorio /usr/src/linux/drivers/block
.
Luego, es suficiente hacer un fdisk /dev/hdc
por ejemplo.
Bueno, los cdrom en general no presentan muchos problemas, salvo los ATAPI. En efecto, el CD esta manejado sobre un segundo controlador disco. Procedamos en orden:
/usr/src/linux/drivers/block
. Hay un script que se
llama MAKEDEV.ide1. Lo lanzas. Este script va a crear los dispositivos
necesarios para tu segundo controlador de disco.
Linux hdd=cdrom
.
Atencion : aquí estas en qwerty.
/dev/hdd
(o hdc) y /dev/cdrom
.
Por ej : ln -s /dev/hdd /dev/cdrom
.
/cdrom
y tecleas : mount -t iso9660 -o ro /dev/cdrom /cdrom
. Normalemente, tu CD esta montado!
( nt : /mnt/cdrom
puede ser un buen remplazo de /cdrom
)
Si tienes problemas debes ensayar :
Algunos usuarios pueden querer poner como consola un minitel o un viejo
vt100 que no pasa sobre la tarjeta de video sino sobre el puerto serie.
Solo hace falta agregar en el fichero lilo.conf
la siguiente linea:
append ="scon=0x03f8 serial=0,9600n8"
Ciertas maquinas poseen dos (o más) tarjetas Ethernet. Para que las dos sean reconocidas, es necesario agregar en la configuración de Lilo :
append="ether=0,0,eth1"
Aquí esta la descripción de los archivos que se cargan después de la conexión de un usuario. El nombre de o de los archivos es especifico del interpretador de comandos utilizado.
En el caso de bash
, es un poco complicado. Según la pagina del manual de
bash
, y luego de una conexión interactiva, ejecuta:
/etc/profile
si existe; ~/.bash_profile
si existe, si no ~/.bash_login
si existe, si no
~/.profile si existe
; (nt : ~
representa tu
/home/nombre_de_usuario
)
En el caso en que bash
es llamado como sh
, solo ejecuta los archivos
/etc/profile
y ~/.profile
si existen.
En el caso de ksh
, la pagina del manual es menos precisa pero un estudio
rápido del código inicial muestra que:
/etc/profile
es ejecutado si existe;
~/.profile
es ejecutado si existe, si el numero del usuario efectivo
es idéntico al numero del usuario real y si el numero del grupo
efectivo es igual al numero del grupo real;
/etc/suid_profile
es ejecutado si existe, si los números del
usuario efectivo y real difieren o si los números de los grupos efectivos y
reales difieren;
ENV
esta posicionada, el archivo cuyo
nombre esta contenido en "$ENV
es ejecutado, si existe. zsh
que ejecuta:
/etc/zshenv
si existe, ~/.zshenv
(o "$ZDOTDIR/.zshenv
si ZDOTDIR esta
posicionado) si existe,
/etc/zprofile
si existe,
~/.zprofile
(o "$ZDOTDIR/.zprofile
) si existe,
/etc/zshrc
si existe,
~/.zshrc
(o "$ZDOTDIR/.zshrc
) si existe. csh
(o mas bien tcsh) :
/etc/csh.cshrc
es ejecutado si existe,
/etc/csh.login
es ejecutado si existe,
~/.tcshrc
es ejecutado si existe, si no ~/.cshrc
es ejecutado si
existe,
~/.history
(o el contenido de la variable histfile) es cargado en
memoria si existe,
~/.login
es ejecutado si existe,
~/.cshdirs
(o el contenido de la variable dirsfile) es cargado en
memoria si existe.
Como todo sistema UNIX, Linux provee las herramientas standard para realizar los archivos de seguridad de los discos.
Dos tipos de herramientas principales son actualmente utilizadas.
Las herramientas dump
y restore
fueron puestas bajo Linux por Remy
Card.
Actualmente, no se proveen en la Slackware. Las fuentes se deben
recuperar entonces en
ftp.ibp.fr:/pub/linux/tsx-11/packages/ext2Una vez que las fuentes han sido compiladas e instaladas, la utilización de dump y restore es relativamente simple. Para realizar la salvaguarda de una partición
/dev/sda1
sur /dev/rmt0
, por ejemplo es suficiente hacer:
gandalf# dump 0sfu 3600 /dev/rmt0 /dev/sda1 gandalf# dump 0sfu ondee: /dev/rmt0 /dev/sda1
El segundo comando permite salvaguardar un disco sobre un dispositivo distante (por ejemplo situado aquí sobre la maquina "ondee"). Las opciones de dump pueden parecer complejas. A continuación damos una corta descripción:
maquina:archivo
;
/etc/dumpdates
. Existen dos maneras de efectuar una restauración : en linea de comando o en modo llamado " interactivo ". El segundo modo es mas simple para las restauraciones parciales. El primero es sobre todo utilizado para las restauraciones completas.
Para restaurar la banda en modo interactivo es suficiente hacer:
gandalf# restore -if /dev/rmt0 gandalf# restore -if ondee:/dev/rmt0En este caso, un mimi-interpretador de comandos es lanzado. Utiliza el comando help para mas detalles.
Para restaurar completamente una banda, lanza:
gandalf# restore rf /dev/rmt0Nota importante: para la utilización de dump y restore a través de una red (salvaguarda sobre dispositivos distantes), debes utilizar los archivos
.rhosts
. En el siguiente ejemplo de salvaguarda, la maquina "ondee" debe
tener:
#cat ~root/.rhosts gandalf #El uso de dispositivos distantes necesita igualmente la presencia de un programa
rmt
sobre la maquina que maneja los dispositivos de salvaguarda.
Este programa esta incluido en la distribución fuente de dump para Linux.
A diferencia de dump o restore, tar permite salvaguardar los archivos deseados, excluir ciertos repertorios, etc. Es necesario notar que el tar utilizado bajo Linux es el tar GNU. Este posee ciertas opciones particulares.
Para conocer todas las opciones posibles, te aconsejo hacer tar --help
.
Una utilización simple de tar puede ilustrarse con la salvaguarda de una
partición de usuarios:
# tar cvf /dev/rmt0 /users | mail backup-userLa lista de archivos será así enviada al usuario backup-user.
Ciertos sitios utilizan tar
exclusivamente para efectuar sus salvaguardas, cada cual
escoge.
.
Para configurar la tecla Num Lock al arranque (por ejemplo para que ella se encienda) solo
tienes que poner en tu /etc/rc.d/rc.local
for tty in /dev/tty[1-9]*; do setleds -D +num < $tty > /dev/null done
Ciertos programadores adoran explotar el contenido de los archivos core
. Pero en
Linux, estan desactivados por defecto. Para poder generarlos debes introducir : ulimit -c unlimited
El sistema de accounting esta implementado en Linux (pero ... yo nunca lo he ensayado
porque es un poco Big Brother is Watching You). Normalmente debes compilar el paquete
acct-1.3.73.tar.gz y seguir las instrucciones que son dadas ahí. Lo puedes encontrar en :
ftp.ibp.fr:/pub/linux/sunsite/system/Admin/accounts
y en
ftp://iguana.hut.fi/pub/linux/Kernel/process_accounting/
Ten cuidado pues debes tener un núcleo 1.3.* o uno 2.0.*
He aquí el resultado :
# lastcomm | more Command Flags User Tty PagFlt Time Endtime clear - merlin ttyp2 85 0.00 secs Tue Aug 6 13:26:07 in.identd - root __ 100 0.00 secs Tue Aug 6 13:23:23 color-ls - merlin ttyp2 121 0.01 secs Tue Aug 6 13:23:02 telnet - merlin ttyp2 142 2.77 secs Tue Aug 6 13:23:01 Pnews F merlin ttyp3 33 0.01 secs Tue Aug 6 13:22:15 sed - merlin ttyp3 132 0.02 secs Tue Aug 6 13:22:15 Pnews F merlin ttyp3 34 0.01 secs Tue Aug 6 13:22:15 sed - merlin ttyp3 145 0.02 secs Tue Aug 6 13:22:15 cat - merlin ttyp3 80 0.01 secs Tue Aug 6 13:22:13 Pnews F merlin ttyp3 29 0.00 secs Tue Aug 6 13:22:13Hay que tener cuidado puesto que este sistema tiene tendencia a tomar mucho lugar. La solución para resolver este proclame es lanzar el sistema de accounting de esta manera :
# Lanzamiento del accounting accton /var/log/acct accttrim -n 2000 /var/log/acct 2> /dev/null
Ahora que todo funciona bien, pasamos a otro gran pedazo : la instalación de X Window. Para poder utilizar X Window, es necesario tener una configuración razonable (al menos 8Mo de memoria). En caso contrario, la maquina será muy lenta: se va a pasar el tiempo en "swapping".
En un primer tiempo, instala con la ayuda de tu distribución el servidor que corresponda mejor a tu carta gráfica.
El problema con X Window, es configurar el archivo. Se trata del archivo
XF86Config
. Cuidado: este archivo es fuertemente diferente de la versión
antigua de XFree86 2. Se trata aquí de un servidor XFree86 3.2, basado
en X11R6. Antes de comenzar a construir tu archivo, lanza el programa SuperProbe
.
En mi caso, esto me permite obtener las siguientes informaciones. (Si yo se que es una tarjeta
video super vieja... pero bueno, hay le damos con lo que tenemos !) :
First video: Super-VGA Chipset: Cirrus CL-GD5428 Memory: 1024 Kbytes RAMDAC: Cirrus Logic Built-in 15/16/24-bit DAC (with 6-bit wide lookup tables (or in 6-bit mode))
Ahora, sigue lo mas duro : construir el archivo de configuración.
Atención: en ciertas distribuciones, el archivo XF86config esta en el
repertorio /etc
, lo cual es una buena idea en el caso de una red de
estaciones Linux que comparten /usr
por NFS. Si utilizas una o varias
maquinas independientes, puedes suprimir /etc/XF86config
y utilizar
/usr/X11R6/lib/X11/XF86Config
.
Este archivo se presenta en forma de secciones. He aquí una descripción:
Secction "Files" RgbPath "/usr/X11R6/lib/X11/rgb" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "/usr/X11R6/lib/X11/fonts/xtel/" EndSectionEn esta sección no tienes gran cosa que modificar. Agregas o suprimes los caminos de las fonts y la lista de colores RGB.
Section "ServerFlags" EndSectionEn mi caso, esta vacía...
Section "Keyboard" Protocol "Standard" # AutoRepeat 500 5 ServerNumLock # Para esto, ver mas abajo LeftAlt Meta RightAlt ModeShift # RightCtl Compose ScrollLock ModeLock
Section "Pointer" # para el protocolo, utiliza MouseMan, MouseSystems, Logitech o Microsoft Protocol "MouseMan" # Dispositivo a utilizar Device "/dev/mouse" BaudRate 1200 # Emulación 3 botones : el click sobre los 2 botones # simulan el botón del medio... para los ratones con dos botones. Emulate3Buttons # ChordMiddle is an option for some 3-button Logitech mice # ChordMiddle EndSection
doc
contienen las características de varios tipos de pantallas. Es
muy probable que encuentres el tuyo.
Section "Monitor" Identifier "Sync3N" VendorName "Samsung" ModelName "3N" # Frequences : Bandwidth 25.2 HorizSync 31.5-80 VertRefresh 60-90 # Los modos en los cuales tu pantalla puede trabajar. Modeline "800x600" 40 800 840 968 1056 600 601 605 628 Modeline "640x480" 25.175 640 664 760 800 480 491 493 525 Modeline "1024x768i" 45 1024 1040 1216 1264 768 768 778 819 interlace Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 EndSection
Section <sq>"Device" # Bla bla bla Identifier "CartePerso" VendorName "Cirrus" # Nombre de la tarjeta BoardName "clgd5428" #memoria video VideoRam 1024 # nombre del chip Chipset "clgd5428" # clocks del reloj. Clocks 25.23 28.32 41.16 36.08 31.50 39.99 45.08 49.87 Clocks 64.98 72.16 75.00 80.01 85.23 EndSection
Section "Screen" Driver "svga" # Referencias a otras secciones. Device "CartePerso" Monitor "Sync3N" # El display utilizado Subsection "Display" Depth 8 # 256 colores max # Modos por prioridad : de izquierda a derecha Modes "1024x768" "800x600" "640x480" ViewPort 0 0 # Resolucion virtual Virtual 1024 768 option "linear" EndSubsection EndSectionSi tu carta lo permite, puedes agregar otras subsecciones para el display:
Subsection "Display" Depth 32 Modes "640x480" ViewPort 0 0 Virtual 800 600 EndSubsectionEn este caso, tu servidor funcionara en 16 millones de colores.
./doc
. Un buen numero de
pantallas y de tarjetas están descritas con los relojes que se deben utilizar.
startx 2>/tmp/err
.
En el archivo /tmp/err
van a estar todos los mensajes del servidor, entre ellos el chip
de tu carta y sus clocks. La única cosa que te va a faltar por configurar, es tu pantalla.
ftp.ibp.fr
en el repertorio /pub/linux/french/docs/HOWTO
. xvidtune
: permite "afinar"
la imagen (centrarla, etc). Por ejemplo, yo tenia una tembladera : con este programa, pude
resolver el problema.
Pasamos ahora al teclado francés bajo X Window. Como XFree fue concebido por personas que utilizan teclados americanos (qwertyiop), la configuración del teclado puede parecer bastante complicada. Te recomiendo seguir lo que sigue...
Primero, debes tener en el archivo XF86Config las siguientes opciones:
LeftAlt Meta RightAlt ModeShift # RightCtl Compose ScrollLock ModeLockLuego, pones el siguiente archivo en el repertorio
/usr/X11R6/lib/X11/xinit
. Debe llamarse .Xmodmap
.
El archivo que sigue fue hecho por Rene Cougnenc. Hoy en dia es el que yo utilizo. y pienso
que es dificil hacer algo mejor. Funciona bajo XFree86 3.2.
! teclado francés AZERTYUIOP para XFree86 3.2 ! ! Los acentos circunflejos de las principales vocales se obtienen con ! la tecla Mode_switch (ALT_GR). ! ! Los dos puntos se obtienen con ALT_GR + SHIFT, sobre 'e', 'i', 'o', y 'u'. ! ! Esperemos que un día podremos obtener el teclado francés standard sobre ! el cual todo el mundo aprenda a teclear... !<item>---------------------------------------------------------------------- ! keycode 9 = Escape keycode 10 = ampersand 1 keycode 11 = eacute 2 asciitilde keycode 12 = quotedbl 3 numbersign keycode 13 = apostrophe 4 braceleft keycode 14 = parenleft 5 bracketleft keycode 15 = minus 6 bar keycode 16 = egrave 7 grave keycode 17 = underscore 8 backslash keycode 18 = ccedilla 9 asciicircum keycode 19 = agrave 0 at keycode 20 = parenright degree bracketright keycode 21 = equal plus braceright keycode 22 = BackSpace keycode 23 = Tab keycode 24 = a A acircumflex keycode 25 = Z keycode 26 = e E ecircumflex ediaeresis keycode 27 = R keycode 28 = T keycode 29 = Y keycode 30 = u U ucircumflex udiaeresis keycode 31 = i I icircumflex idiaeresis keycode 32 = o O ocircumflex keycode 33 = P keycode 34 = dead_circumflex dead_diaeresis keycode 35 = dollar sterling keycode 36 = Return keycode 37 = Control_L keycode 38 = Q keycode 39 = S keycode 40 = D keycode 41 = F keycode 42 = G keycode 43 = H keycode 44 = J keycode 45 = K keycode 46 = L keycode 47 = M keycode 48 = ugrave percent keycode 49 = guillemotleft guillemotright keycode 50 = Shift_L keycode 51 = asterisk mu keycode 52 = W keycode 53 = X keycode 54 = C keycode 55 = V keycode 56 = B keycode 57 = N keycode 58 = comma question keycode 59 = semicolon period keycode 60 = colon slash keycode 61 = exclam slash keycode 62 = Shift_R keycode 63 = asterisk keycode 64 = Alt_L keycode 65 = space keycode 66 = Caps_Lock keycode 67 = F1 keycode 68 = F2 keycode 69 = F3 keycode 70 = F4 keycode 71 = F5 keycode 72 = F6 keycode 73 = F7 keycode 74 = F8 keycode 75 = F9 keycode 76 = F10 keycode 77 = Num_Lock keycode 78 = Scroll_Lock keycode 79 = 7 keycode 80 = 8 keycode 81 = 9 keycode 82 = KP_Subtract keycode 83 = 4 keycode 84 = 5 keycode 85 = 6 keycode 86 = KP_Add keycode 87 = 1 keycode 88 = 2 keycode 89 = 3 keycode 90 = 0 keycode 91 = period keycode 92 = 0x1007ff00 keycode 93 = keycode 94 = less greater keycode 95 = F11 keycode 96 = F12 keycode 97 = Home keycode 98 = Up keycode 99 = Prior keycode 100 = Left keycode 101 = Begin keycode 102 = Right keycode 103 = End keycode 104 = Down keycode 105 = Next keycode 106 = Insert keycode 107 = Delete keycode 108 = KP_Enter keycode 109 = Control_R keycode 110 = Pause keycode 111 = Print keycode 112 = KP_Divide keycode 113 = Mode_switch keycode 114 = Break ! Nuevos valores para el teclado numérico a partir de XFree 3.1.1 !keycode 147 = Home !keycode 148 = Up !keycode 149 = Prior !keycode 150 = Left !keycode 152 = Right !keycode 153 = End !keycode 154 = Down !keycode 155 = Next !keycode 156 = Insert !keycode 157 = Delete !keycode 136 = 7 !keycode 137 = 8 !keycode 138 = 9 keycode 82 = KP_Subtract !keycode 139 = 4 !keycode 140 = 5 !keycode 141 = 6 !keycode 86 = KP_Add !keycode 142 = 1 !keycode 143 = 2 !keycode 144 = 3 !keycode 145 = 0 !keycode 146 = period !-----------------------------------------------------------------------Los caracteres " y " se obtienen respectivamente presionando la tecla donde hay un un dos pequeño para " y Shift + dos para ".
Nota: Personalmente, utilizo la primera solución sin ningún problema... Si llegas a tener algún problema, ensaya esta otra.
Esta solución viene de Michel Billaud. Bueno, partimos de la constatación de que las teclas acento grave (ALT-4) y acento agudo (ALT 7) son difíciles de utilizar : si son mudas hay que doblarlas la mayor parte del tiempo, si no lo son no se pueden acentuar las E A U etc.
Entonces, es necesario que ALT 4 y ALT 7 produzcan verdaderos acentos agudos y apóstrofes. De todas formas, nos hacen falta teclas mudas (además). Será necesario modificar el "map" del teclado.
Entonces se debe hacer:
/usr/lib/kbd/keytables.map
, copia fr-lat1.map
bajo otro
nombre (tuteclado.map
). Lanza showkey
para ver el numero de las teclas
concernidas, en orden : 5 8 10 26 y 40. Luego edita tuteclado.map
para hacer las
modificaciones.
Para hacer un test, haz loadkeys tuteclado.map
. Cuando estés seguro que todo
funciona correctamente, modifica /etc/rc.d/rc.keymap
para que cargue
tuteclado.map y escribir sobre tu teclado con un lápiz y no con tinta ... :-)
También se puede poner una "tilde muda" en el 2 superior y una "tilde dura" (indispensable para un shellista) en ALT-2.
Para arrancar directamente con X Window (xdm
), tienes que modificar el archivo
/etc/inittab
y cambiar la linea que contiene initdefault
. Por ejemplo en mi
maquina solo tengo que remplazar :
id:5:initdefault: #id:6:initdefault:por
#id:5:initdefault: id:6:initdefault:Pero cuidado ! Ciertas distribuciones utilizan el nivel 6 para rearrancar. Lo mas simple es mirar en el repertorio
/etc/rc.d
si el archivo
rc.6
lanza el xdm.
Para lanzar xdm
en 16 o 32 bits, hay que modificar el archivo
/usr/X11/lib/X11/xdm
y poner :
:0 local /usr/X11/bin/X -bpp 16 (o 32)
Para poder arrancar varias sesiones X en diferentes consolas sin tener que especificar el "display" a utilizar, agrega al fin del archivo startx :
CONSOLE=`tty` CONSOLE=`basename $CONSOLE` CONSOLE=`echo $CONSOLE | sed s/tty//` CONSOLE=`expr $CONSOLE<item> 1` echo <sq>Starting X on display <sq>$CONSOLE exec xinit $clientargs -- $serverargs :$CONSOLE
Es común que los errores salgan en la ventana virtual texto a partir de la cual tu as lanzado el servidor. Una solución consiste en lanzar el servidor de esta manera :
xinit > /dev/console 2>&1Si utilizas la Slackware, solo tienes que editar el script
startx
y remplazar la linea :
exec xinit $clientargs -- $serverargspor
exec xinit $clientargs -- $serverargs >/dev/console 2>&1
A partir de la versión XFree 3.1.2B, el servidor X de XFree86 soporta la extensión Xinput. Esta extensión permite emplear simultáneamente varios dispositivos de entrada. En Xfree86, hay 3 por el momento :
Section "Module" Load "xf86Wacom.so" Load "xf86Elo.so" Load "xf86Jstk.so" EndSectionXfree busca los módulos en un repertorio predefinido :
/usr/X11R6/lib/modules
o en un camino especificado en la sección "Files" :
Section "Files" ModulePath "/usr/X11R6/lib/,/usr/X11R6/lib/modules/" ModulePath "/usr/X11R6/bin" EndSectionEl ModulePath debe ser especificado antes de la sección "Module" para funcionar
Cada dispositivo posee su propia sub-sección de configuración. Consultar la pagina del manual de XF86Config para mas detalles. Un dispositivo se activa solamente si posee una sub-sección. El siguiente ejemplo activa un joystick y una mesa :
Section "XInput" SubSection "Joystick" Port "/dev/js0" Timeout 20 MinimumXPosition 28 MaximumXPosition 1206 MinimumYPosition 27 MaximumYPosition 1239 Delta 20 EndSubsection SubSection "WacomStylus" Port "/dev/ttyS2" EndSubsection EndSectionEn seguida el servidor puede emitir los eventos extendidos o bien bascular un dispositivo en core pointer. Dos programas existen para manipular los dispositivos extendidos :
xsetpointer
bascula un dispositivo en core pointer o lista los dispositivos;
xsetmode
pasa un dispositivo en absoluto o en relativo. Tienes que cambiar
el modo de un dispositivo antes de hacerlo bascular en core pointer.
Una pregunta que hacen muy seguido : Yo no se porque bajo Xfree86, a veces no puedo mover las ventanas, no tengo acceso a los botones ni a los menús (salvo aquellos de las ventanas sistemas)?. La solución es muy simple : desbloquear "Scroll Lock" !
El archivo .Xauthority
es generado por el programa xauth
. Se trata de un
sistema de autenticación para las aplicaciones gráficas. Esto permite evitar que otras personas
envíen imágenes, otras ventanas en tu pantalla - pero igualmente que otras personas
puedan "ver" lo que hay en tu pantalla.
El principio es dar una clave de identificación, en hexadecimal con un numero par de caracteres.
Lanza xauth
y haz :
add MaMachine:0 MIT-MAGIC-COOKIE-1 MiCodigo add MaMachine/unix:0 MIT-MAGIC-COOKIE-1 MiCodigo
Para la maquina, es en realidad "hostname:NoDisplay
".
Una vez lanzado, tu servidor X prohibe toda conexión, salvo si la aplicación :
xhost +toto
por
ejemplo.
Nota : ciertas versiones obligan lanzar el servidor X con el comando :
xinit -- -auth $HOME/.Xauthority
Solo xdm
asegura un control de sección X Window correcto. La directiva
DontZap
, en la sección ServerFlags
del archivo de configuración de Xfree86
limita las posibilidades de equivocarse. Para prohibirle, a los malintencionados, la utilización de
las teclas de "bascula" de las consolas virtuales (Alt-F1, ALT-F2 ...) solo tienes que
poner en /etc/profile
la linea siguiente :
alias x='(startx >/dev/null &);clear;logout'Y luego invocar
x
en lugar de startx
.
La distribución Slackware contiene ciertas fallas. Tu puedes consultar la lista en la siguiente dirección :
http://bach.cis.temple.edu/pub/linux/linux-security/Linux es, de manera general, muy solido porque toda falla descubierta es inmediatamente referenciada y corregida...Es la ventaja de las fuentes publicas. Mas sin embargo, ciertas fallas importantes existen en las distribuciones y es muy importante corregirlas. Un documento WEB propone una lista de problemas :
http://bach.cis.temple.edu/pub/linux/linux-security/<bf/Linux/-Security-FAQ/
Una solución para evitar las conexiones externas es utilizar TCP/Wrappers. Es muy muy recomendado recompilarlo !
La instalación es bastante intuitiva. En resumen, solo necesitas indicar el nombre de las
maquinas autorizadas en el archivo /etc/hosts.allow
y las maquinas prohibidas en
/etc/hosts.deny
. Puedes permitir el envío de correo cuando una maquina intente
conectarse aunque haga parte de las maquinas impedidas, poniendo en el archivo
/etc/hosts.deny
:
wu.ftpd: ALL: twist = /usr/sbin/real-daemon-dir/safe_finger -l @%h | /bin/mail -s %d-%h root(En una sola linea :-)).
Si quieres mas detalles, puedes leer el siguiente documento :
ftp.win.tue.nl:/pub/security/tcp_wrapper.ps.Z
.
En Francia, el servidor ftp.urec.fr
contiene numerosos utilitarios relativos a la
seguridad en informática.
Dos listas de difusión consagradas a la difusión de informaciones relacionadas con los
problemas de seguridad bajo Linux : linux-security@tarsier.cv.nrao.edu
y
linux-alert@tarsier.cv.nrao.edu
Linux maneja sin ningún problema las maquinas basadas sobre procesadores Pentium. Para optimizar un poco la compilación, es suficiente especificar Pentium al momento de la recompilación del núcleo. Existe mas sin embargo un gcc especializado para Pentium, que esta en desarrollo.
Consulta la pagina http://www.goof.com/pcg
para mas información.
[nt : Lo que sigue es lo que estaba en esta sección en la versión anterior del Guide du Rootard y me parecio que esta información merecía estar aquí, aunque sea en esta primera versión en español]
A la pregunta,Existe una opción de gcc -mpentium, Laurent Chemla nos indica que la respuesta es no ! en efecto, las versiones patchees de gcc que manejan la optimizacion pentium tiene bugs, y de todas formas la optimizacion mas importante (95% de ganancia constante) que estas contienen esta presente en gcc 2.7 por defecto (alineamiento sobre 64 bits casi en todas partes).
Por tanto, para un pentium, gcc 2.7 causa 15% de ganancia con respecto a las versiones anteriores. Esta ha sido constatada personalmente, yo me puedo equivocar, sin haber leído nunca esto en ninguna parte de manera oficial. Parece también, según algunos que se obtiene una ligera ganancia utilizando m386 en lugar de m486 sobre un pentium. Es posible...
Lo anterior fue afirmado por un grupo de voluntarios trabajando sobre las optimizaciones de
gcc para procesadores Pentium. Información adicional esta disponible sobre http://www-
iss.mach.uni-karlsruhe.de/pcg/
.
En lo relativo al manejo optimado de los buses PCI, solamente los núcleos llamados de "desarrollo" lo hacen (v1.3 actualmente)... Sin embargo cuidado: estos núcleos tienen frecuentemente bugs! [Nt : fin de la antigua versión]
Esta sección es inspirada de Kernel HowTo (ward@blah.tu-graz.ac.at).
Los nuevos fuentes del núcleo Linux pueden ser recuperados sobre ftp.ibp.fr
en el directorio /pub/linux/kernel/sources/v2.0
para las versiones "estables".
Es un sitio mirror de ftp.funet.fi
Existe otro directorio: v2.1
: se trata de la versión de desarrollo. No aconsejo
instalarla: ya que es la versión en curso de desarrollo; pueden ser estables pero es igualmente
posible que estén completamente llenos de bugs. Utilizándolos, se corre el riesgo de perder
datos en tu maquina.
Los fuentes se instalan normalmente en el directorio /usr/src/linux
. La
compilación es muy simple pero algunos puntos deben ser seguidos muy escrupulosamente:
make config
te va preguntar la configuración que deseas. Algunos puntos
pueden parecer bastante oscuros, en este caso no los cambies.
Configuremos juntos... Nota importante: este ejemplo es con el núcleo 2.0.26...
por lo tanto algunos campos pueden no existir en otras versiones.
# make config rm -f include/asm ( cd include ; ln -sf asm-i386 asm) /bin/sh scripts/Configure -d arch/i386/config.inEsto no tiene mayor interés : se trata de posesionar los lazos simbólicos, pero no hay que olvidarlo.
* * Code maturity level options * prompt for development and/or incomplete code/drivers (CONFIG_EXPERIMENTAL) [Y/n/?] *Esta opción permite especificar si deseas tener ciertas opciones particulares. Las opciones así propuestas pueden acarrear la inclusión de dispositivos que no han llegado a su madurez completa. Mas sin embargo si deseas utilizar los módulos cargables con
kerneld
responde Y.
* * Loadable module support * Enable loadable module support (CONFIG_MODULES) [Y/n/?] Set version information on all symbols for modules (CONFIG_MODVERSIONS) [N/y/?] Kernel daemon support (e.g. autoload of modules) (CONFIG_KERNELD) [N/y/?]Esta parte es especifica a los módulos cargables. Si no sabe utilizarlos, es preferible colocar las opciones por defecto. Para responder a las preguntas, hay tres soluciones: ya sea la opción por defecto (letra en mayúscula) es de por si la adecuada, sino, es suficiente con darle la opción escogida. Si no sabe a que corresponde esta opción, escriba ? Una breve descripción aparecerá entonces. En este caso voy a utilizar los módulos cargables con el sistema de cargamento automático.
* * General setup * Kernel math emulation (CONFIG_MATH_EMULATION) [N/y/?] Networking support (CONFIG_NET) [Y/n/?] Limit memory to low 16MB (CONFIG_MAX_16M) [N/y/?] PCI bios support (CONFIG_PCI) [N/y/?] System V IPC (CONFIG_SYSVIPC) [Y/n/?] Kernel support for a.out binaries (CONFIG_BINFMT_AOUT) [Y/m/n/?] Kernel support for ELF binaries (CONFIG_BINFMT_ELF) [Y/m/n/?] Kernel support for JAVA binaries (CONFIG_BINFMT_JAVA) [N/y/m/?] Compile kernel as ELF<item> if your GCC is ELF-GCC (CONFIG_KERNEL_ELF) [Y/n/?] Processor type (386, 486, Pentium, PPro) [486] defined CONFIG_M486La primera opción es necesaria cuando no se dispone de un procesador aritmético. Yo aconsejo fuertemente imitar estas opciones. Claro esta, que si dispone de una maquina con PCI y diferente de 486, basta con dar las características reales de su maquina. En cuanto al formato de los ejecutables lo mejor es activar al menos los formatos ELF y a.out
* * Floppy, IDE, and other block devices * Normal floppy disk support (CONFIG_BLK_DEV_FD) [M/n/y/?] Enhanced IDE/MFM/RLL disk/cdrom/tape support (CONFIG_BLK_DEV_IDE) [Y/n/?]Yo le pido administrar mi lector de disquetes como modulo cargable, y de manera general, yo activo el soporte IDE.
* * Please see drivers/block/README.ide for help/info on IDE drives * Use old disk-only driver on primary interface (CONFIG_BLK_DEV_HD_IDE) [N/y/?] Include IDE/ATAPI CDROM support (CONFIG_BLK_DEV_IDECD) [N/y/?] Include IDE/ATAPI TAPE support (CONFIG_BLK_DEV_IDETAPE) [N/y/?] Support removeable IDE interfaces (PCMCIA) (CONFIG_BLK_DEV_IDE_PCMCIA)[N/y/?] CMD640 chipset bugfix/support (CONFIG_BLK_DEV_CMD640) [Y/n/?] Other IDE chipset support (CONFIG_IDE_CHIPSETS) [N/y/?]Si se dispone de material ATAPI, hay que indicarlo acá. Lo mismo si se tiene una interfase PCMCIA. Nótese bien que Linux propone ciertas opciones particulares para algunos controladores IDE conocidos por que tienen bugs. Si este es su caso, no lo dudes y selecciona la opción.
* * Additional Block Devices * Loopback device support (CONFIG_BLK_DEV_LOOP) [N/y/m/?] Multiple devices driver support (CONFIG_BLK_DEV_MD) [N/y/?] RAM disk support (CONFIG_BLK_DEV_RAM) [N/y/m/?] XT harddisk support (CONFIG_BLK_DEV_XD) [N/y/m/?]A menos que sepa exactamente lo que hace, es mejor no modificar. Bueno, pasemos a las redes !
* * Networking options * Network firewalls (CONFIG_FIREWALL) [N/y/?] Network aliasing (CONFIG_NET_ALIAS) [N/y/?] TCP/IP networking (CONFIG_INET) [Y/n/?] IP: forwarding/gatewaying (CONFIG_IP_FORWARD) [N/y/?] IP: multicasting (CONFIG_IP_MULTICAST) [N/y/?] IP: accounting (CONFIG_IP_ACCT) [Y/n/?]De manera general, es aconsejable activar Tcp/Ip, aunque no estés conectado a una red (ciertas aplicaciones lo necesitan). Lo demás depende de tu maquina. Paso las dos series que siguen para redes.
* * SCSI support * etc...etc : Para el SCSI. Lista de tarjetas SCSI manejadas... escoger la adecuada (varias si es necesario). * * Network device support * Network device support (CONFIG_NETDEVICES) [Y/n/?] Dummy net driver support (CONFIG_DUMMY) [M/n/y/?] EQL (serial line load balancing) support (CONFIG_EQUALIZER) [N/y/m/?] Frame relay DLCI support (EXPERIMENTAL) (CONFIG_DLCI) [N/y/m/?] SLIP (serial line) support (CONFIG_SLIP) [N/y/m/?] PPP (point-to-point) support (CONFIG_PPP) [Y/m/n/?]Lista de las posibilidades de red... no olvidar de colocar PPP o SLIP si es necesario. En seguida vienen las tarjetas en si. No son detalladas aquí.
* * ISDN subsystem * ISDN support (CONFIG_ISDN) [N/y/m/?]Soporte de tarjetas ISDN. A menos de tener alguna de estas, no activar la opción.
* * CD-ROM drivers (not for SCSI or IDE/ATAPI drives) * Suport non-SCSI/IDE/ATAPI CDROM drives (CONFIG_CD_NO_IDESCSI) [N/y/?]Para los CDROM Sony CDU31A/CDU33A, Matsushita/Panasonic/Creative, etc. En resumen, los CD conectados sobre la tarjeta de sonido por ejemplo.
* * Filesystems * Quota support (CONFIG_QUOTA) [Y/n/?] Mandatory lock support (CONFIG_LOCK_MANDATORY) [N/y/?] Minix fs support (CONFIG_MINIX_FS) [M/n/y/?] Extended fs support (CONFIG_EXT_FS) [N/y/m/?] Second extended fs support (CONFIG_EXT2_FS) [Y/m/n/?] xiafs filesystem support (CONFIG_XIA_FS) [N/y/m/?] DOS FAT fs support (CONFIG_FAT_FS) [M/n/y/?] MSDOS fs support (CONFIG_MSDOS_FS) [M/n/?] VFAT (MS-Windows-95) fs support (CONFIG_VFAT_FS) [M/n/?] umsdos: Unix like fs on top of std MSDOS FAT fs (CONFIG_UMSDOS_FS) [N/m/?] /proc filesystem support (CONFIG_PROC_FS) [Y/n/?] NFS filesystem support (CONFIG_NFS_FS) [M/n/y/?] SMB filesystem support (to mount WfW shares etc..) (CONFIG_SMB_FS) [N/y/m/?] ISO9660 cdrom filesystem support (CONFIG_ISO9660_FS) [M/n/y/?] OS/2 HPFS filesystem support (read only) (CONFIG_HPFS_FS) [N/y/m/?] System V and Coherent filesystem support (CONFIG_SYSV_FS) [N/y/m/?] Amiga FFS filesystem support (EXPERIMENTAL) (CONFIG_AFFS_FS) [N/y/m/?] UFS filesystem support (read only) (CONFIG_UFS_FS) [N/y/m/?]Se trata de configurar la lista de los manejadores de archivos comandados por Linux. Es indispensable Tener ext2fs. Es muy recomendable de incluir aquí el soporte /proc. SMB es usado para acceder a los recursos compartidos de Windows For Workgroup. Desde ahora, existen dos formatos para Ms-Dos : el formato standard y el formato extendido que utiliza Windows95 (VFAT). Si se tiene un CD-Rom, seria bueno incluir el soporte ISO9660. Finalmente, si se desean utilizar las cuotas, responda Y en la primera opción.
* * character devices *Soporte para el puerto paralelo y para diversos ratones. No olvides activar tu impresora si esta esta conectada al puerto paralelo.
* * Sound *Pasemos a la tarjeta de sonido ! Me voy a limitar a la SoundBlaster 16. Es la que yo tengo y permite dar un ejemplo. Solo las opciones que hay que modificar están aquí presentes. En realidad, Linux maneja muchas otras tarjetas de sonido.
Sound card support (CONFIG_SOUND) [M/n/y/?] Sound Blaster (SB, SBPro, SB16, clones) support (CONFIG_SB) [Y/n/?] /dev/dsp and /dev/audio support (CONFIG_AUDIO) [Y/n/?] MIDI interface support (CONFIG_MIDI) [Y/n/?] FM synthesizer (YM3812/OPL-3) support (CONFIG_YM3812) [Y/n/?] I/O base for SB Check from manual of the card (SBC_BASE) [260] Sound Blaster IRQ Check from manual of the card (SBC_IRQ) [5] Sound Blaster DMA 0, 1 or 3 (SBC_DMA) [1] Sound Blaster 16 bit DMA (_REQUIRED_for SB16, Jazz16, SMW) 5, 6 or 7 (use 1 for 8 bit cards) (SB_DMA2) [5] MPU401 I/O base of SB16, Jazz16 and ES1688 Check from manual of the card (SB_MPU_BASE) [330] SB MPU401 IRQ (Jazz16, SM Wave and ES1688) Use -1 with SB16 (SB_MPU_IRQ) [-1] Audio DMA buffer size 4096, 16384, 32768 or 65536 (DSP_BUFFSIZE) [65536]
* * Kernel hacking * Kernel profiling support (CONFIG_PROFILE) [N/y]Es muy recomendable poner esta opción en N.
make dep
se encarga de crear las dependencias. make clean
va limpiar toda la arborescencia. make zImage
para compilar el núcleo. Puede irse a tomar un cafecito:
es largo! Con mi DX2/66, la compilación toma aproximadamente 40 minutos. Depende sobre
todo de la cantidad de memoria viva disponible.
make modules
y luego
instálalos con : make modules_install
. Ellos serán recopiados en el repertorio
/lib/modules/2.0.26
/usr/src/linux/arch/i386/boot
. El nuevo
núcleo es el archivo zImage. El núcleo esta comprimido. Cópielo en la raíz /
, bajo un nuevo nombre (por ejemplo " vmlinuz2 "). Modifica la configuración
de lilo.conf pero no retires nada, copia una sección y modifícala de manera que puedas lanzar
tu nuevo núcleo. Luego relanza lilo
para que el nuevo núcleo sea tomado en cuenta.
Rearrancas la maquina y eso debería funcionar.Nota: Si no logras modificar la configuración de lilo
tienes que copiar el nuevo
núcleo sobre el antiguo núcleo (vmlinux). Te aconsejo mucho dejar una copia del antiguo en
algún lugar y sobre todo verifica que puedes re-arrancar en el gracias a un disquete por
ejemplo.
En Linux y más generalmente en UNIX, las entradas/salidas sobre un
dispositivo se hacen gracias a los archivos situados en el directorio /dev/
.
Cada uno de ellos se identifica por un nombre (por ejemplo, hda
para el
primer disco duro del controlador IDE) pero sobre todo por dos únicos
números: mayor
y menor
. Estos archivos especiales son de dos
tipos : caracteres (teminal, impresora, etc) o bloques (disco por ejemplo).
Es muy importante conocer estos archivos. Las diferentes distribuciones (Slackware, jurix, SLS, etc) crean estos archivos. Ciertas versiones pueden generar estos archivos de maneara incorrecta (Slackware). Igualmente, resulta inútil crear los archivos necesarios para la utilización de dispositivos de un tipo dado si no se dispone de la tarjeta adecuada.
Para crear un archivo especial, es suficiente la orden mknod Nom_Archivo Tipo Mayor Menor
. También existen otras opciones que se encuentran en el manual.
Dentro del directorio /dev
también existe un archivo de comandos llamado
MAKEDEV
, el cual permite crear archivos especiales sin utilizar
directamente mknod
.
La lista de periféricos que se presenta a continuación proviene del
documentoLINUX ALLOCATED DEVICES escrito por H. Peter Anvin
hpa@zytor.com
. Esta lista esta incluida en el directorio de documentaciones de las
fuentes del núcleo (Documentation/devices.txt
) a partir de la versión 1.3 del núcleo.
Si usted desea desarrollar un dispositivo a la lista, contactelo después de haber leído el documento original. De hecho, esta lista esta un poco depurada.
La lista corresponde a la versión 2.0.26
/dev/initrd
hace referencia a un disco virtual que ha sido cargado por el boot
loader.
UUCP (UNIX to UNIX CoPy) te permite enviar y recibir mail y news.
Te aconsejo hacer una liga entre /dev/modem
y /dev/cua1
(COM2), o hacia
el dispositivo que corresponda (cua0-3 , COM1-4). los repertorios utilizados por UUCP son
/var/spool/uucp, /var/spool/uucppublic, /usr/lib/uucp
y /var/lib/uucp
.
Bueno, supongo que tu as instalado el paquete UUCP, elm y sendmail. Para las news, te aconsejo INN, como servidor de news y tin o trn, como lector de news.
Los archivos UUCP descritos aquí están en formato HDB (si, yo se que Taylor es mucho mas simple ... pero no he tenido tiempo de hacer esta hacer esta parte que ya lleva tiempo !)
Bueno, UUCP necesita varios archivos de configuración que se encuentran en
/var/lib/uucp/hdb_config
.
ACU modem - 9600 hayes_usr
.
hayes_usr =,-, "" \dATE0V1X1Q0\r\c OK\r ATDT\T\r\c CONNECT
MACHINE=frmug LOGNAME=nuucp \ READ=/var/spool/uucppublic \ WRITE=/var/spool/uucppublic \ SENDFILES=yes REQUEST=yes
remcomp any ACU 9600 0042470611 ogin: nuucp frmug any ACU 9600 0053176410 ogin: nuucp frmug1 any ACU 9600 0053176411 ogin: nuucp
uucp remcomp\!\~/catalogue.Z ~/Tu maquina se va a conectar a remcomp para recuperar el archivo
catalogue.Z
.
Este archivo será depositado en el repertorio /var/spool/uucppublic
.
Bueno. Al punto en que estamos, tu puedes llamar; Ahora, vamos a configurar tu maquina para
que pueda ser llamada. Todo se juega en el archivo /etc/inittab
.
Debes descomentar una linea por ejemplo :
s1:45:respawn:/sbin/agetty -h -t 60 9600 modem | | | | | | |--- Puerto a utilizar | | | | | |--------- Velocidad del modem | | | | |--- Tiempo al cabo del cual cuelga | | | |-------- Activa el control de flujo rts/cts | | |------------- Relanzar cuando se termine | |------------------ Runlevels. |---------------------- IdentificadorEntonces al próximo boot, un sistema de login esta listo en tu puerto
/dev/modem
(tu
puerto serie al cual esta conectado tu modem). El ultimo problema es configurarlo. En efecto,
esto depende del modem (configuración de la velocidad). Si puedes posicionar algunos switch,
has que tu modem se vuelva mudo (ATQ2
) y sobre todo, ponlo en auto-respuesta
(ATS0=1
).
Si no tienes switches has un AT&W
para salvaguardar los parámetros.
Para verificar la config utiliza usrlib
uucp/uuchk/.
Si quieres mas informaciones te aconsejo que leas el HOWTO-UUCP.
El objeto de este parágrafo es la instalación de una conexión PPP.
PPP (Point to Point Protocol) permite establecer una conexión IP en una via serie de manera mas eficaz que SLIP (Serial Line Internet Protocol). Una vez la conexión establecida todos los protocolos superiores a IP (FTP, telnet, NFS, http, X ...) son disponibles.
Para establecer una conexión PPP, se necesita :
PPP es comprendido por un gran numero de sistemas ( hasta MS-Windows) y normalmente nos podemos podemos conectar de un sistema al otro. Mas sin embargo esta documentación solo trata el caso de Linux !
Par acceder a un servidor PPP instalado, tu núcleo debe ser compilado con la opción TCP/IP Para esto, cuando hagas make config tienes que responder así :
Networking support (CONFIG_NET) [y] y TCP/IP networking (CONFIG_INET) [y] y IP forwarding/gatewaying (CONFIG_IP_FORWARD) [y] n Network device support? (CONFIG_NETDEVICES) [y] y PPP (point-to-point) support (CONFIG_PPP) [y] yAdemás tienes que recuperar las fuentes de los programas de acceso a PPP (en el archivo
ppp-2.1.2a.tar.gz
, de pronto b, c o d) para poder instalar los siguientes programas :
Tu puedes por ejemplo instalar pppd
y chat
en el repertorio /usr/sbin
.
Luego, tienes que configurar tus shell-scripts de arranque para configurar la capa TCP/IP (por
ejemplo en un archivo /etc/rc.d/rc.net
que será lanzado por
/etc/rc.d.rc.local
). He aquí un ejemplo :
echo -n "/etc/rc.net: " INETD=/sbin/inetd PORTMAP=/sbin/portmap # loopback /sbin/ifconfig lo 127.0.0.1 up netmask 255.255.255.0 /sbin/route add 127.0.0.1 lo # demarrage des demons if [-x $PORTMAP ]; then echo-n ", `basename $PORTMAP`" $PORTMAP fi if [-x $INETD ]; then echo -n ", `basename $INETD`" $INETD fi echo ""Luego agrega la dirección IP de tu maquina en el archivo
/etc/hosts
:
127.0.0.1 loopback localhost # useful aliases 199.103.124.170 pcpf pcpf.lectra.fr # Mi lindo PC en PPPLa dirección IP de la maquina es aquella que el administrador del servidor PPP le ha asignado para la conexión asociada a un numero de teléfono dado. Esto significa que el amigo que se conecta 10 minutos después utilizara la misma dirección que tu.
Finalmente, debes configurar tu dominio en el archivo /etc/resolv.conf
:
domain lectra.fr nameserver 192.1.2.1La segunda linea es utilizada si tu quieres utilizar un servidor de nombres, cacharro que envía la dirección IP correspondiente a un nombre de maquina dado. Si no posees un servidor de nombres, solamente podrás utilizar direcciones numéricas (199.103.124.x) sino deberás poner en tu
/etc/hosts
todas las maquinas a las cuales
quieres acceder con sus direcciones IP...
Igualmente puedes poner tu nombre de dominio en el archivo /etc/ppp/options
que
debe existir aunque sea vacío (si no quieres que pppd
pida /etc/ppp/options
,
tienes que compilarlo con la opción-DREQ_SYSOPTIONS=0
)
Ahora puedes febrilmente hacer un test de tu conexión utilizando un shell-script de este estilo (Cuidado : todo esto es una sola linea) :
/usr/sbin/pppd connect '/usr/sbin/chat -v ABORT ERROR ABORT "NO CARRIER" \ ABORT BUSY "" ATB0 OK ATDTxxxxxxxx CONNECT "" ogin: ppp \ word: ppp0' /dev/modem 9600 -detach debug crtscts modem \ defaultroute 199.103.124.170:El comando
chat
permite efectuar la conexión llamando el numero de tu servidor.
Cuidado no olvides la segunda linea en particular modem
y defaultroute
.
La especificación de la velocidad (9600) así como el chat-script utilizado (ABORT ERROR ABORT "NO CARRIER" ABORT BUSY "" ATB0 OK ATDTxxxxxxxx CONNECT) dependen bien entendido de tu modem y de la configuración del servidor (ver igualmente el login y el password).
La dirección IP debe ser aquella declarada, como dirección IP de tu maquina en PPP, en
/etc/hosts
(igualmente puedes poner el nombre de tu maquina en PPP)
Las informaciones de debug deben salir en la consola (si has configurado el syslog para esto)
A partir de ese momento, estas conectado en la red distante y puedes hacer por ejemplo :
$ ping 199.103.124.50 PING 199.103.124.50 (199.103.124.50): 56 data bytes 64 bytes from 199.103.124.50: icmp_seq=0 ttl=255 time=268 ms 64 bytes from 199.103.124.50: icmp_seq=1 ttl=255 time=247 ms 64 bytes from 199.103.124.50: icmp_seq=2 ttl=255 time=266 msPara hacer un test de tu conexión. Si el ping funciona y tu red esta conectada a Internet entonces ya tienes Internet. Si eso no funciona, puedes hacer un test escribiendo
/sbin/ifconfig
el resultado debe parecerse a esto :
lo Link encap Local Loopback inet addr 127.0.0.1 Bcast 127.255.255.255 Mask 255.0.0.0 UP LOOPBACK RUNNING MTU 2000 Metric 1 RX packets 0 errors 0 dropped 0 overrun 0 TX packets 0 errors 0 dropped 0 overrun 0 ppp0 Link encap Serial Line IP inet addr 199.103.124.170 P-t-P 199.103.124.50 Mask 255.255.255.0 UP POINTOPOINT RUNNING MTU 1500 Metric 1 RX packets 33 errors 0 dropped 0 overrun 0 TX packets 42 errors 0 dropped 0 overrun 0Sobre todo tienes que tener una linea que comience por ppp0 sino, no good. Igualmente puedes hacer un test con
netstat -nr
que debe dar una cosa así mas o
menos :
Kernel routing table Destination Gateway Genmask Flags Metric Ref Use Iface 199.103.124.50 0.0.0.0 255.255.255.255 UH 0 0 6 ppp0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 199.103.124.50 0.0.0.0 UG 0 0 6298 ppp0Con una linea 0.0.0.0 que tenga la dirección IP de tu servidor PPP. Si no tienes esta linea, puede que hayas olvidado la opción
defaultroute
.
Para eso, debes instalar los mismos programas del capitulo anterior (configurar el núcleo,
instalar pppd
). Ademas de esto, debes crear un login especial para las conexiones PPP en
/etc/passwd
, por ejemplo :
ppp::61:60:Connexion PPP:/:/usr/bin/ppp_loginEl script
/usr/bin/ppp_login
es :
#!/bin/sh # Conexión PPP --> dirección IP = 199.103.124.170 exec /usr/sbin/pppd -d -detach -ip modem proxyarp :199.103.124.170La opción
proxyarp
le permite a la maquina conectada un acceso a toda la red :
199.103.124.170 199.103.124.50 +-----------+ PPP link +----------+ | pcpf |-------------------- | ondee | +-----------+ +----------+ | Ethernet ----------------------------------- 199.103.124.x
Para mas informaciones ver el archivo README.Linux del ppp-2.1.2a.tar.gz
.
Nota : este archivo se encuentra en la distribución standard de la Slackware.
Una pregunta común es : " Yo tengo un acceso Internet pero una sola dirección IP y yo quisiera conectar varias maquinas".
El NET2-HOWTO
responde a esta pregunta pero olvida una posibilidad.
Esta nota tiene por objetivo, explicar las cuatro maneras de resolver el problema.
ping
y muchos servicios UDP. "IP
masquerading" necesita un núcleo reciente (2.* o ciertos 1.3.* o un patch del 1.2.*) y esta
documentado en http://www.indyramp.com/masq/
o
http://hwy401.com/achau/ipmasq/
(todavía no existe un HOWTO). Firewall-HOWTO
describe esta solución.
http://www.nlanr.net/Squid/
El rele tiene dos defectos : todas las aplicaciones no poseen un rele (pero puedes utilizar Socks
para llenar los huecos) y tienes que instalar un nuevo rele para cada aplicación. El rele es
recomendado únicamente si te contentas con los servicios de base : correo, Web, news, etc.
La configuración de sendmail es siempre algo particularmente trabajoso y difícil. Mas sin embargo, ciertos útiles facilitan enormemente las cosas. La Slackware original posee ciertos archivos, que pueden ser una solución. De todas maneras es mas sano, reinstalar el archivo de configuración basándote en los siguientes documentos :
ftp://ftp.ibp.fr/pub/unix/mail/sendmail/ucb
; ftp://ftp.jussieu.fr/jussieu/sendmail/kit/
; http://www.smli.com/~bwelch/exmh/
. http://www.freebsd.org/FAQ/
;
http://web.pasteur.fr/other/computer/Linux/my-BBS/uucp<.txt
;
Los proveedores reciben los mensajes y los ponen a tu disposición via un servidor POP (en
general mail.provedor.pais o pop.provedor.pais ) Tienes que recuperar los mensajes recibidos
por ese servidor hacia la maquina Linux en /var/spool/mail/usuario. Para esto puedes
utilizar el programa gwpop
de Stephane Bortzmeyer. Se encuentra en :
ftp://ftp.pasteur.fr/pub/Network/gwpop
.
En este script, definir :
$mailhost = "mail.fournisseur.pais"; $deliver= "deliver NombreUsuarioLocal ";Una vez estés conectado, lanza via un script (para que no tengas que escribir todo cada vez) :
gwpop -p ClaveServidorPop UsuarioServidorPop
Una vez que el correo es recibido, la cuestión es saber como enviar.
Tienes que recompilar sendmail
sin DNS. Para esto, define NAMED_BIND
a 0 en src/conf.h
Las versiones recientes de sendmail tiene por defecto un comportamiento que puede ser
molesto. Los mensajes acentuados son automáticamente convertidos en Quoted
Printable si el servidor al cual se conecta no le anuncia que soporta el protocolo ESMTP
8bit. Si encuentras esta iniciativa molesta, tienes que definir MIME8TO7 a 0 en
src/conf.h
He aquí el archivo de reglas que tienes que indicar con el kit sendmail de Jussieu :
#!/bin/sh # # Reglas para el dominio lolonet # Domaine="MiNombredeDominioConUnPunto" AdressesInternes=RIEN V8="o" Aliases="/etc/aliases" SendmailSt="/etc/sendmail.st" SendmailHf="/etc/sendmail.hf" Mqueue="/var/spool/mqueue"y el archivo de config :
#!/bin/sh Host="NombreDeMiMaquina" AdressesLocales=TOUT_DOMAINE RelaisExterieur="smtp.[mail.provedor.pais] " ReecritureadressesLocales="provedor.pais" RevAliases="hash -N /etc/revaliases" MailerLocal='/usr/bin/deliver DFMPlmnrs deliver $u' SansDNS=1Luego solo necesitas quitarle el comentario a la linea siguiente :
CPP="$CPP -traditional"Y luego generar el archivo de config :
./configurateur regles.lolonet maquina.config >sendmail.cf.maquinaSi has desactivado MIME8TO7 en sendmail, comentar la linea del sendmail.cf generado:
# O EightBitMode=mimey copiar el archivo en
/etc
Es necesario definir la dirección IP del servidor SMTP en /etc/hosts
.
Finalmente, tienes que reescribir la dirección local para que los mensajes tengan un campo
From
correspondiente a la dirección dada por el proveedor. Solo tienes que agregar en
/etc/revaliases
una linea de estilo :
NombreLocal: NombreProveedor@Provedor.paisY luego regenerar la base con :
/usr/sbin/sendmail -bi -oA/etc/revaliasesListo ! Los mails son guardados en
/var/spool/mqueue
. Cuando te conectes por PPP
y que quieres enviar todos tus mails, solo tienes que hacer :
/usr/sbin/sendmail -q
Desde sus primeras versiones, Linux soporta los binarios en formato a.out. Recientemente, el soporte para los binarios en el formato ELF a sido integrado en el núcleo y se ha hecho una distribución de las bibliotecas compartidas en formato ELF. Las ventajas de este formato en relación al formato a.out son muchas:
dlopen()
, dlsym()
y
dlclose()
Las ultimas versiones de las distribuciones están basadas en el formato ELF. Entonces, lo que sigue no tendría razón de ser si no tienes una versión antigua y si la quieres poner al día por ti mismo, cuidado, ello puede ser largo y peligroso.
La primera versión publica de los utilitarios y de las bibliotecas ELF se
difundió el domingo 21/05/95. La versión, al día de las bibliotecas ELF y de
los utensilios asociados esta disponible en los sitios FTP tsx-11.mit.edu
y
sunsite.unc.edu
así como en su espejo francés ftp.ibp.fr
en el
repertorio /pub/linux/GCC
.
Es posible utilizar esta distribución para poner al día sus bibliotecas.
Sin embargo, es aconsejable utilizar una distribución binaria con
base en ELF (como Slackware 3.1 o Red Hat 4.0).
Si quieres hacer la actualización tu mismo esta es la lista de archivos
requerida:
binutils-2.7.0.3.bin.tar.gz
: los utilitarios (as, ld,...), binutils-2.7.0.3.tar.gz
: las fuentes de utilitarios (as,ld...) gcc-2.7.2.1.bin.tar.gz
: el compilador GCC 2.7.2.1 ld.so-1.8.5.tar.gz
: el editor de lazos dinámico, libc-5.4.17.bin.tar.gz
: las bibliotecas en el formato ELF, libc-5.4.17.tar.gz
: las fuentes de bibliotecas, libg++-2.7.2.1.bin.tar.gz
: la biblioteca C++ en el formato ELF.
# cd /usr/src # tar xvfz /.../ld.so-1.8.5.tar.gz # cd ld.so-1.8.5 # sh instldso.sh
# mkdir<item>p /usr/i486-linuxaout/bin /usr/i486-linuxaout/lib # echo "/usr/i486-linuxaout/lib" >> /etc/ld.so.conf # ldconfig -v # cd /usr/lib # mv *.o *.a *.sa lib*.so.* /usr/i486-linuxaout/lib # cd /lib # mv *.o *.a *.sa lib*.so.* /usr/i486-linuxaout/lib # ldconfig -v # cd /usr # mv include /usr/i486-linuxaout
# cd / # tar xvfz /.../libc-5.4.17.bin.tar.gz # tar xvfz /.../libg++-2.7.2.1.bin.tar.gz # ldconfig -v
# cd / # tar xvfz /.../gcc-2.7.2.1.bin.tar.gz # rmr -f /usr/lib/ldscripts # rm -f /usr/bin/as /usr/bin/as.1.38.1l.2 /usr/bin/as.2.2l # rmf -f /usr/bin/ld /usr/bin/ld.1.9l.4 # tar xvfz /.../binutils-2.7.0.3.bin.tar.gz
Listo! Ahora tienes un sistema en el que coexisten bibliotecas en formatos a.out
(bajo /usr/i486-linuxaout/lib
) y ELF (bajo /lib
y /usr/lib
). Los
antiguos binarios siguen ejecutándose correctamente.
Cuidado! si utilizas sistemas de archivos diferentes para /
y /usr
,
existe el peligro de tener problemas al arranque de la maquina. De hecho
las bibliotecas antiguas estando en /usr/i486-linuxaout/lib
, no son
accesibles mientras que /usr
no se haya montado, lo que puede impedir el
arranque normal del sistema. Si estas en ese caso, debes imperativamente
desplazar al menos la imagen a.out de la biblioteca C:
# cd /usr/i486-linuxaout/lib # mv libc.so.* /lib # ldconfig -v
.
Habiendo instalado los utilitarios y las bibliotecas ELF no resta más que
recompilar todos los programas que utilizas par beneficiar de este nuevo
formato de ejecutable. Deber encontrar las fuentes de todos los programas
y compilarlas una por una (animo, porque te pude tomar largo tiempo :-). Puedes
también recuperar binarios ya compilados en los sitios FTP Linux, muchos
están ya en formato ELF.
Es de anotar que algunos programas requieren modificaciones para ser
compatibles con ELF, en particular el núcleo Linux (versión 1.2.x) así como
todos los programas que contengan bibliotecas compartidas.
En el sitio ftp.ibp.fr
, el directorio /pub/linux/ELF
contiene "patchs"
para algunos programas.
.
Las nuevas versiones del compilador y de los utilitarios generan
ejecutables en formato ELF, por defecto. Es posible crear ejecutables en
formato a.out utilizando la opción -b i486-linuxaout
durante el llamado de
gcc.
Ahora es fácil construir bibliotecas dinámicas. Los archivos fuente deben
ser compilados con la opción -fPIC
con el fin que el código generado pueda
ser ejecutado en cualquier dirección (las bibliotecas dinámicas se cargan en
direcciones imprevisibles y su código debe ser independiente de su
dirección física). La opción -shared
de gcc permite luego generar una
biblioteca dinámica.
Por ejemplo para generar una biblioteca libtruc.so.1.0
se utilizarían las
siguientes ordenes:
$ gcc -c -fPIC *.c $ gcc -shared -Wl,-soname,libtruc.so.1 -o libtruc.so.1.0 *.o
Algunos documentos que conciernen ELF están disponibles en ftp.ibp.fr
en
/pub/linux/ELF/doc
. Se trata de :
ELF.doc.tar.gz
la especificación del formato ELF ELF.ps.gz
un artículo de H.J. Lu donde describe la implementación del
formato ELF en Linux move_to_elf.gz
una descripción de la transición entre formatos a.out y ELF.
Este capitulo esta dedicado a los momentos de catástrofe, cuando nada sale bien, y cuando uno tiene ganas de votarlo todo por la ventana...
Tu acabas de iniciar tu maquina, y no puedes arrancar. En este caso,
lo mejor es utilizar las disquetes de arranque (las de la
Slackware en este caso no están mal). Una vez la maquina comienza, tu
montas tu partición raíz copias el núcleo en una nueva
disquete lanzando : cat /mnt/vmlinuz > /dev/fd0
por ejemplo.
Normalmente, esto debe entonces funcionar si tu núcleo es el correcto.
Eventualmente, efectúa un :
rdev /vmlinux /dev/hda2para especificar al núcleo cual partición es la raíz del sistema de archivos.
Haz formateado por error une partición donde se encontraba tu
informe de stage. Bien, no paniques ! Inútil decirte que es
imposible hacer un unformat
.
La primera solución de recuperación (muy brutal) es la de hacer un
strings /dev/hda3 > Recup
. No te queda mas que recorrer el archivo y
recuperar lo que se pueda.
Una segunda solución es la de utilizar el script Perl (ver http://www-eleves.enst-bretagne.fr/ aubert/perl/) :
# Autor : aubert@titan.enst-bretagne.fr #!/usr/local/bin/perl $maxlines = 20; @before = (); $syntaxe = "Syntaxe: cgrep.pl termino_a_buscar archivo_a_recorrer\n"; $terme = shift(@ARGV) || die $syntaxe; $fichier = shift(@ARGV) || die $syntaxe; open(F, $fichier) || die "Cannot read $fichier: $!\n"; # Se llena @before hasta su capacidad máxima ($maxlines) while (($_ = <F>) && (scalar(@before) < $maxlines)) { if (/$terme/ o) { print @before; print $_; & print_next_lines; } push(@before, $_); } # El tablero @before contiene una buena cantidad de elementos, así que se # pasa ahora a una parte en donde @before guarda un tamaño constante while (<F>) { if (/$terme/o) { print @before; print $_; & print_next_lines; } push(@before, $_); shift(@before); } close(F); exit 1; sub print_next_lines { for ($i = 0; $i < $maxlines; $i++) { print scalar(<F>); } exit 0; }
Si el super-bloque esta hecho una nada lanzar e2fsck
con las siguientes opciones :
e2fsck -b 8193 /dev/sda3
. Si no funciona , ensaya aumentando el numero
de 8192 a cada vez para ensayar de recuperar una copia del super-bloque en
buen estado.
Si esto aun no funciona , ensaye de lanzar el comando mke2fs
con la opción -S. Atención no lo olvides, sino reformatarás tu
partición! Esta opción provoca la regeneración de las copias del
super-bloque y de los descriptores del sistema del archivo. No acaba
con los archivos existentes.
Si tu disco tiene algunos problemas (sectores defectuosos), puedes
recuperar e2fsck
en el paquete e2fsprogs
versión 1.06 si tu no
lo tienes ya. Luego :
Ciertas maquinas no podrán funcionar convenientemente y producirán entonces de manera mas o menos aleatoria un mensaje (por ejemplo "fatal signal 11") luego bloquearan brutalmente la ejecución del programa activo. La Causa, la mas probable : problema de material (componentes de memoria demasiado lenta, por ejemplo). Ensaya primero que todo de desbloquear el cache procesador, gracias al "SETUP" de la maquina. Y luego disminuir el nivel de PIO del EIDE (no pasar de PIO 3). Leer a este propósito el documento http://www.bitwizard.nl/sig11/.
Puede ser muy útil, el tener en un disquete un núcleo para arrancar desde el. Para hacerlo, toma un disquete formateado y ve a la raíz de tu disco.
Identifica tu núcleo. El debe llamarse zImage
o vmlinuz
.
Cópialo en el disquete :
cat /zImage > /dev/fd0
después tu haces (ejemplo) :
rdev zImage /dev/hda2el segundo parámetro debe ser el nombre de la partición raíz Linux de tu sistema.
Este disquete te permite arrancar (prueba !).
En resumen : Has perdido tu contraseña de root... Bueno, hay varias soluciones. La primera :
/mnt/etc/passwd
, y suprimir la contraseña de root :
root::0:0:root:/root:/bin/bash
. Bueno, pasemos a otras soluciones : Rebootar el pc en modo single-user. Para
esto, en el momento de arrancar con LILO, decirle LILO: linux single
.
Un shell root va aparecer . Atención : el teclado esta en qwerty y
la partición en lectura sola. Para remediarlo :
loadkeys /usr/lib/kbd/keytables/fr.map (es.map) mount -w -n -o remount /Y utilizas el comando
passwd
, o editas el archivo
/etc/passwd
El problema de arrancar en single-user
, es que no importa quien puede
pasar por la maquina en root. Para las empresas y las universidades, se
plantea un problema de seguridad. Ciertas estaciones UNIX permiten
colocar una contraseña en el EPROM de la maquina. Linux permite pedir la
contraseña root en single-user
.
Para esto, debes recuperar las fuentes del programa init que se
lanza en el momento de iniciar el sistema. Al principio del programa
init.c, modifica, la definición de la constante SOME_USER para que ella
tenga el valor 2, recompilas init
, y lo re-instalas.
Esta primera solución puede resultar de todas maneras insuficiente ya que
una persona puede siempre arrancar sobre otro periférico (utilizando
la opción root = MiLinux
).
Utilizando Lilo, no hay problema ! basta agregar las
lineas siguientes para cada una de las imágenes en el archivo
/etc/lilo.conf
:
password = la contraseña en claro restricted
(piensa en colocar este archivo en solo lectura para el super-utilisador sin ningún derecho para los otros !)
El arranque normal de cada imagen pasa sin problema y sin pedir la contraseña (importante si uno quiere que la maquina se reinicie sola en caso de lío : electricidad, reboot a distancia, ...) pero si uno quiere pasarle parámetros al núcleo en el momento del arranque, Lilo pide en este momento la contraseña
Linux te permite trabajar al mismo tiempo en varias ventanas
texto. Para pasar de una a otra, haz Alt + Fn
donde n
es el
numero de la ventana virtual y Fn
una tecla de función (por
ejemplo F1, F2 ...). Tu puedes configurar el numero de ventanas en el
archivo /etc/inittab
.
Cuando estas bajo X, la combinación se vuelve Ctrl + Alt + Fn. es entonces posible regresar bajo X accediendo así a la consola que es empleada (la primera "libre", es decir no manejada por un getty). Si tienes 6 consolas virtuales (de Alt F1 hasta Alt F6 ); usa Alt-F7, por ejemplo.
Utiliza maj + paginas
(teclas "SHIFT" y "pagina precedente" o
"pagina siguiente") para "pasearse". Esto funciona también bajo xterm.
Los "locales" son un sistema que permite gestionar lo mas apropiadamente posible las diferencias de lenguaje y de estilo de los utilizadores. Por ejemplo, los francófonos prefieren escribir 3,14 mejor que 3.14, no anotan las fechas como los Australianos (quienes no lo hacen como los Estados-Unidos), etc. Cada utilizador debe entonces poder escoger un local que le convenga y las aplicaciones bien hechas (raros son aquellos que gestionan completamente los locales pero numerosos son aquellos que les utilizan al menos un poco) se adaptan sin recompilación. En resumen, se trata de dejar las preferencias nacionales fuera de la aplicación, como con el sistema de recursos del Machinetoc.
Si eres programador, puedes consultar el locale-tutorial
(distributions/jurix/source/libc/nls
o sunsite/utils/nls
) o el Mini-
HOWTO sobre los Locales. Si tu eres simple utilizador, puedes conocer
los locales instalados en tu sistema con local -a
(los nombres
parecen estar poco estandarizados, tendrás trucos del genero "fr_FR" o
"fr_FR.ISO8859-1") y selecciona uno con las variables
de entorno como LANG o LC_CTYPE (man local
dará tal vez
algo).
Si eres el administrador de una maquina, y los locales no funcionan como tu quieres, puedes leer el Mini-HOWTO sobre los Locales y/o este modesto texto.
Si tu Linux no llego con una instalación correcta de los locales ( no creo que exista una buena distribución de este punto de vista), tienes dos soluciones. Yo solo teste la primera y ella solo funciona bien con un núcleo superior o igual a 2.0 y una libc versión 5.2.18 o superior.
Primera solución : compilar los programas de la libc y utilizar el paquete WG15-collection.
Para esto, debes recuperar las fuentes de la libc. no es necesario compilarla completa, solo los programas de gestión de los locales, que permiten especialmente producir un archivo binario a partir de la fuente de un local. Para resumir la instalación :
Recuperar libc (aquí 5.2.18), por ejemplo en
ftp://ftp.ibp.fr/pub/linux/GCC
.
(pasar root) cd /usr/src mkdir libc-5.2.18 chown <USERNAME libc-5.2.18 (salir de root) cd libc-5.2.18 tar -xzvf /usr/tmp/libc-5.2.18.tar.gz cd include ln -s /usr/src/linux/include/asm . ln -s /usr/src/linux/include/linux . cd ../libc
Y allí puedes leer las instrucciones en el README y hacer "./configure" ("make depend" es largo y no parece necesario si quieres solo los locales)
Si no quieres compilar toda la libc, te paras allí y :
cd locale make SHARED= programs (pasar root) mv localedef /usr/local/bin mv locale /usr/local/bin (salir de root)
Tienes ahora los dos programas importantes. Ahora puedes generar los locales binarios a partir de las fuentes.
Una buena colección de fuentes se encuentra en el archivo
WG15-collection.linux.tar.gz que se encuentra por ejemplo en
ftp://ftp.ibp.fr/pub/linux/GCC
( debe su nombre a un "working group"
Posix).
En este archivo, una vez destarado(?-)), hay una buena documentación (Intro). Si no quieres leerla, lo que hay que hacer es :
(pasar root) cd charmaps mkdirhier /usr/share/nls/charmap cp ISO_* /usr/share/nls/charmap cd ../locales mkdirhier /usr/share/nls/locale cp POSIX ??_* /usr/share/nls/locale mkdirhier /usr/share/locale (la linea siguiente es lo que parece ser un bogue(error) en la distribución) localedef -c -i /usr/share/nls/locale/en_DK -f ISO_8859-1:1987 en_DK (lleno de mensajes de errores del genero "item `yesstr' of category `LC_MESSAGES' undefined" a ignorar) localedef -c -i /usr/share/nls/locale/fr_FR -f ISO_8859-1:1987 fr_FR (salir de root)
Tu puedes testar con local -a
que el nuevo local es conocido desde ahora.
Es todo. Los utilizadores pueden utilizar ya las variables de entorno de los locales como
LANG
o LC_CTYPE
.
Segundo método, que no he podido hacer funcionar :
Recuperar nslutils
(hoy nlsutils-0.5.tar.gz
) por ejemplo (parece
necesario recuperar los archivos de encabezados como localeinfo.h en la libc).
make make install
Para testar tu instalación de los locales, puedes servirte de Perl 5.003 (es la primera versión de Perl que prueba que la instalación es correcta y si no produce un mensaje de error) o este programa:
# include <stdio.h> #include <ctype.h> #include <string.h> #include <locale.h> #include <sys/types.h> #define STRING "bétö\b" void main () { int i; u_char c; printf ("Setting locale: %s\n", setlocale(LC_ALL, "")); for (i=0; i<strlen(STRING); i++) { c = STRING[i]; printf ("%c (%d) is %s\n", c, (int)c, isprint((int)c)?"printable":"non-printable"); } }
No debe imprimir en la pantalla Setting locale: (null) y, con el buen locale francés, debe encontrar que todos los caracteres, excepto el ultimo, son "printables".
Ciertos útiles GNU comienzan a ser francesados. Para tener esta
posibilidad, añade en tu .bashrc
las lineas siguientes :
export LC_CTYPE=ISO-8859-1 export LANG=fr
ispell es un corrector ortográfico, en francés. Tu puedes
recuperarlo en ftp.ibp.fr
en /pub/ispell
. Es igualmente posible
recuperar un diccionario francés para ispell en el mismo sitio
en el repertorio /pub/ispell/francais
.
agrega en el archivo .inputrc
las lineas siguientes :
set meta-flag on set convert-meta off set output-meta on
Es muy desagradable no tener los acentos cuando se hace un less o un more de un archivo. Para que este problema no aparezca, añade :
export LESSCHARSET=latin1
en el archivo /etc/profile
.
less permite también examinar el contenido de diversos tipos de archivos
(less toto.tar.gz
...) :
export LESSOPEN="|lesspipe.sh %s"
Colocar el script siguiente en un repertorio cuyo nombre figura en el PATH :
#!/bin/sh lesspipe() { case "$1" in *.tar) tar tvvf $1 2>/dev/null ;; # View contents of .tar and .tgz files *.tgz) tar tzvvf $1 2>/dev/null ;; *.tar.gz) tar tzvvf $1 2>/dev/null ;; *.tar.Z) tar tzvvf $1 2>/dev/null ;; *.tar.z) tar tzvvf $1 2>/dev/null ;; *.Z) gzip -dc $1 2>/dev/null ;; # View compressed files correctly *.z) gzip -dc $1 2>/dev/null ;; *.gz) gzip -dc $1 2>/dev/null ;; *.zip) unzip - l $1 2>/dev/null ;; *.lha) lha -v $1 2>/dev/null ;; *.arj) arj l $1 2>/dev/null ;; *.1|*.2|*.3|*.4|*.5|*.6|*.7|*.8|*.9|*.n|*.man) FILE=`file -L $1` ; #groff src FILE=`echo $FILE | cut -d ' ' -f 2` if [ "$FILE" = "troff" ]; then groff -s -p -t -e -Tascii -mandoc $1 fi ;; esac } lesspipe $1
Para gs y xdvi, hay que utilizar unas opciones especiales (en mi maquina, son los alias). Efectivamente, con frecuencia son configurados para un papel de tamaño anglo-saxon.
Estas opciones son las siguientes :
gs -sPAPERSIZE=a4 xdvi -paper a4 ghostview -a4
Para que dvips convierta los documentos en un formato papel a4, hay
que especificar en el archivo config.ps
(el camino varia en función
de las versiones de LaTeX) :
@ a4 210mm 297mm @+ ! %%DocumentPaperSizes: a4 @+ %%PaperSize: a4 @+ %%BeginPaperSize: a4 @+ a4
Para que tu correo este en 8 bits (con acentos) sin necesidad
de encapsularlo vía MIME u otra, agrega estas tres lineas en tu
archivo ~/.elm/elmrc
:
charset = iso-8859-1 displaycharset = iso-8859-1 textencoding = 8bit
Ciertos personajes indelicados se permitieron modificar los
tipos de caracteres Computer Modern
sin cambiar el nombre Y ESTO ES
CONTRARIO A TODOS LOS COPYRIGHTS de Knuth. Esto es
EXTREMADAMENTE
grave porque todo documento tipografiado con los tipos de
caracteres no tendrá el mismo look que con los VERDADEROS Computar Moderan
. Desafortunadamente, estos tipos de caracteres defectuosos fueron
puestos sobre varios CDs Linux. Como trabajamos casi todos con los CDs slackware,
conviene tener extremada atención.
Es por esto que debes verificar tu sistema. Para ello, es fácil, un buen viejo terminal y dos minutos de tiempo :
**
\setbox0=\hbox{ho}\showbox0
> \box0= \hbox(6.94444+0.0)x10.55559 .\tenrm h .\tenrm o ! OK. <*> \setbox0=\hbox{ho}\showbox0 ?
listo!, tienes los buenos tipos de caracteres (el valor clave a retener, es el 10.55559). Es suficiente ahora de responder `x' para que TeX se termine.
En caso contrario, tu sistema esta infectado. Basta recuperar las actualizaciones y el ciclo se completa.
Cuando uno compila y se sirve de una tarjeta sonido en Linux,
la gran pregunta es saber si la tarjeta esta correctamente
configurada. Para esto, existe un archivo (/dev/sndstat
) que da
todas las informaciones sobre la configuración de la tarjeta :
Sound Driver:3.5.4-960630 (Mon Nov 11 14:50:52 MET 1996 root, Linux gandalf 2.0.25 #3 Mon Nov 11 11:44:54 MET 1996 i486) Kernel: Linux gandalf 2.0.25 #3 Mon Nov 11 11:44:54 MET 1996 i486 Config options: 0 Installed drivers: Type 1: OPL-2/OPL-3 FM Type 2: Sound Blaster Type 7: SB MPU-401 Card config: Sound Blaster at 0x260 irq 5 drq 1,5 SB MPU-401 at 0x330 irq 5 drq 0 OPL-2/OPL-3 FM at 0x388 drq 0 Audio devices: 0: Sound Blaster 16 (4.11) Synth devices: 0: Yamaha OPL-3 Midi devices: 0: Sound Blaster 16 Timers: 0: System clock Mixers: 0: Sound Blaster
Para ensayar la buena marcha de la tarjeta sonido, es suficiente enviar algunos archivos audio (.au) sur /dev/audio, etc.
Ciertas versiones de gcc (2.7.0 a 2.7.2 comprendidos, pero no 2.7.2.1 y
posteriores) tienen un bug con la opción -O2
. Para identificarlo, ensaya
este programa :
/* sr_bug.c * * este programa hace un test para un gcc bug. * Para compilar este test program: gcc -O2 sr_bug.c * * Algunas veces gcc para Intel CPUs genera codigos errados en optimizacion * nivel 2. el codigo errado es 'almost right' y esta oculto dentro del * programa que parece trabajar - incluyendo el Linux kernel. * el bug es muy viejo y ya ha sido reportado.Desde el 19-Dec-95, * el bug no ha sido fijado. * * Si cambias este código deberías testarlo, porque aun un * mínimo cambio puede esconder este elusivo bug. Si crees que * fijaste el bug, por favor corre el test original hasta * estar seguro. Puedes encontrar el test original abajo, despues de #if 0. * Escribi esta versión del test en Ingles para hacerla convivial, y * puede no ser tan solida como el original. * * Algunas personas que conocen mas que yo: * davis@space.mit.edu (John E. Davis) * anlauf@crunch.ikp.physik.th-darmstadt.de (Harald Anlauf) * craigs@iii2.iii.net (Craig Shrimpton) * * User-friendly versión by Albert Cahalan * */ #include <stdio.h> int gcc_sr_bug(void){ static int Array[3]; /* must be static (or global) */ unsigned int B = 3; /* must be unsigned 32-bit */ int i; for(i=0; i<B; i++) Array[i] = i<item> 3; for(i=0; i<B; i++) printf(<sq> %d,%d<sq>, i, Array[i]); return !Array[1]; } int main(){ printf(<sq>Testing for gcc bug...<sq>); if(gcc_sr_bug()){ printf(<sq>\n\nBad code! Your compiler generates bad output.\n\n<sq>); printf(<sq>Add<item>fno-strength-reduce to your gcc command line\n<sq>); printf(<sq>or put it into your gcc config file, such as in\n<sq>); printf(<sq>/usr/lib/gcc-lib/i486-linux/2.7.0/specs.\n<sq>); exit(1); }else{ printf(<sq>\nOK, no problem.\n<sq>); exit(0); } }
Emacs es un editor de texte muy potente ya que es coherente y extensible pero consume muchos recursos (procesador y memoria). La mayor parte de quienes comienzan a emplearlo seriamente, explorando las documentaciones, no podrán dejarlo después.
Aquí esta un archivo de configuración de base :
;; ;; Archivo .emacs: inicialización de emacs ;; Archivo de base : Guide du Rootard ;; (display-time) ;;Para tener la hora en la barre de estado (setq display-time-24hr-format t) ;; Formato 24 horas ;; Nuevos modes (autoload 'c++-mode "cplus-md" "C++ Editing Mode" t) (autoload 'perl-mode "perl-mode" "Perl Editing Mode" t) (autoload 'c-mode "c-mode" "C Editing Mode" t) ; mejor utilizar el "cc-mode" ;; Auto-Mode Settings : posiciona el modo de acuerdo a la extensión (setq auto-mode-alist (append '(("\.c$" . c-mode) ;; utiliza el modo C++ lo mismo para C ("\.h$" . c-mode) ("\.C$" . c++-mode) ("\.H$" . c++-mode) ("\.cc$" . c++-mode) ("\.C$" . c++-mode) ("\.pl$" . perl-mode) ;; Perl ("/tmp/snd\.[0-9]* " . text-mode);; Text (para el mail) "[Rr][Ee][0-9]* " . text-mode) ("\.ada$" . ada-mode) ;; Ada ("\.spec$" . ada-mode) ("\.body$" . ada-mode) ("makefile$" . makefile-mode) ;; Makefile ("Makefile$" . makefile-mode) ("Imakefile$" . makefile-mode)) auto-mode-alist)) # Remapes varies (global-set-key "\eg" 'goto-line) ;; ESC G = Goto line (global-set-key "\eo" 'overwrite-mode) (put 'eval-expression 'disabled nil) ;; Accents... (standard-display-european 1) (load-library "iso-syntax") ;; Sous X-Window, textos en colores (C/C++/Shell/Makefile,etc) (cond (window-system (setq hilit-mode-enable-list '(not text-mode) hilit-background-mode 'light hilit-inhibit-hooks nil hilit-inhibit-rebinding nil) (require 'hilit19) )) (if (not (equal window-system <sq><sq>)) (global-set-key "\C-?" 'delete-char)) ))
Este archivo puede ser ampliamente mejorado. Para saber mas, consulta la documentación de Emacs (apoyar sobre "control-H" luego "i"), que esta bien hecha pero es un poco grande.
Anotación : es posible agregar las lineas siguientes para poder servirse de los acentos en el momento de la edición de los archivos en modo texto :
(set-input-mode (car (current-input-mode)) (nth 1 (current-input-mode)) 0)
La utilización de puertos en serie plantea un problema de protección : hay que evitar que dos procesos concurrentes accedan a un puerto en serie dado al mismo tiempo. Pero de otra parte, si se tiene un puerto en serie sobre el cual gira un getty para tratar llamadas de entrada, nos gustaria también poder utilizar el puerto serie para pasar las llamadas que salen.
Para resolver este problema, hay dos enfoques. El primero, es la protección por el núcleo. Utiliza dos dispositivos diferentes para acceder a un puerto serie : /dev/ttySn para las llamadas de entrada (le getty), y /dev/cuan para las llamadas de salida. Cuando el getty intenta abrir /dev/ttySn, esta bloqueado hasta que una llamada de entrada sea recibida y que el modem señal por la linea DCD del puerto serie.
Cuando el getty esta bloqueado en la llamada del sistema open, se puede aun utilizar el dispositivo /dev/cuan para las llamadas que salen (evidentemente, el getty esta bloqueado cuando DCD est activado para la llamada que sale...)
Por otra parte, una vez que /dev/cuan esta abierto, un proceso de otra sesión no puede abrirlo (si el sistema esta correctamente configurado -- consultar la opción sesion_lockout de setserial(8). Este evita que dos procesos intentando independientemente pasar una llamada de salida se encuentren escribiendo simultáneamente sobre el puerto serie.
La segunda técnica es la de "lock-files" (archivos-protegidos). Ella consiste, para cada proceso que utiliza un puerto serie, escribir su PID en un archivo especial. De esta manera, cuando otro proceso quiere utilizar el mismo puerto serie, verifica la presencia del archivo, lo encuentra, lee el PID en donde esta escrito, verifica que el proceso correspondiente existe, y sabe entonces que el puerto serie esta ocupado y que el no puede utilizarlo. En este caso, no se utilizan que los /dev/cuan.
Cada uno de los dos enfoques tiene sus ventajas y sus inconvenientes. El método de protección por el núcleo necesita emplear un modem en modo auto-respuesta, y autoriza la overtura del puerto serie por un proceso que quiere pasar una llamada de salida entre el momento en que el teléfono suena y el momento en que los modems han terminado de negociar (que puede tomar una decena de segundos.) El método de lock-files necesita una configuración homogénea de los programas utilizados (todos los programas deben buscar y colocar el lock-file en el mismo lugar, aceptando el formato PID en el que esta inscrito...) también necesita que el getty verifique periódicamente la existencia del lock-file, y puede entonces "fallar" una llamada que entra entre el momento en que un proceso libera el puerto serie y cuando verifica de nuevo la presencia del lock-file. Es también posible que un proceso de salida llegue a crear el lock-file entre el momento en que el getty detecta una llamada y cuando crea el lock-file para esta llamada.
La selección de un método es, finalmente, una decisión individual de cada administrador, sabiendo que el enfoque "lock-file" es mas flexible, pero menos elegante y mas delicado a establecer que la protección para el núcleo.
Es muy agradable poder conectarse al Minitel. Recupera
el programa xtel
de Pierre Ficheux. Es un emulador Minitel
muy simple de utilizar.
Puedes encontrarlo en ftp.ibp.fr en el repertorio
/pub/X11/videotext/xtel
.
Enviar documentos por FAX es perfectamente posible. Para hacerlo, puedes utilizar por ejemplo Hylafax.
Se encuentra en el sitio ftp.funet.fi
en el repertorio
/pub/mirrors/sgi.com/sgi/fax/source
.
El núcleo de un sistema UNIX puede ser representado bajo la forma de un objeto monolítico. Sin embargo, tal objeto posee el inconveniente de ser grande y estático. Cada vez que se desee agregar un nuevo dispositivo, es necesario recompilar el núcleo. Ademas, si uno utiliza ciertos gestionarios particulares raramente, se esta obligado a tenerlo en el núcleo, y hay tendencia a consumir memoria.
Los módulos cargables, permiten reunir lo útil a lo agradable teniendo un núcleo más pequeño que posible, carga a la demanda si lo deseas de una manera manual por el super utilizador de la maquina, o de une manera automática. De esta manera, la ganancia de recursos no es despreciable.
La primera pregunta que uno puede hacerse, es : " Porque dos técnicas de cargamento ?"
La primera técnica es manual : hay que cargar o descargar los módulos a mano. La segunda es automática, gracias a la utilización de un demon especialista que es el esclavo del núcleo y que carga y descarga los módulos por él. De hecho, la versión 1.2 de Linux no ofrece la posibilidad de un cargamento manual que esta limitado al super-utilizador de la maquina y que es bastante pesado de manipular. En el desarrollo de la versión 2.0, un nuevo sistema implementado por Bjorn Ekwall permite efectuar un cargamento dinámico y automático de los módulos.
En el momento de la compilación del núcleo, es necesario especificar las opciones particulares para activar la utilización de los modulo cargables :
gandalf# make config * * Loadable module support * Enable loadable module support (CONFIG_MODULES) [Y/n/?] Set version information on all symbols for modules (CONFIG_MODVERSIONS) [N/y/?] Kernel daemon support (e.g. autoload of modules) (CONFIG_KERNELD) [Y/n/?]
He aquí el detalle de estas tres opciones :
gandalf# make dep ; make clean gandalf# make zImage gandalf# make modules ; make modules_install
Una vez que estas operaciones han sido efectuadas, los módulos se encuentran en el repertorio /lib/modules/x.y.z donde x.y.z que corresponde al numero de versión del núcleo. No nos queda sino mirar el cargamento.
Nota importante : todos los útiles de manipulación de los módulos son
archivados en un archivo modules-2.0.0.tar.gz
en el repertorio v2.0.
EIlos son instalados, por defecto, por las distribuciones standards, pero
es importante utilizar la buena versión.
El cargamento manual esta basado en tres comandos :
insmod
: inserte un modulo en el núcleo ; rmmod
: descargue un modulo, si ningún proceso lo utiliza; lsmod
: da la lista de módulos cargados. gandalf# insmod nfs.o gandalf# lsmod Module: #pages: Used by: nfs 12 4 gandalf# mount -t nfs /truc /mnt gandalf# lsmod Module: #pages: Used by: nfs 12 5 gandalf# cd /mnt gandalf# cd / gandalf# umount /mnt Module: #pages: Used by: nfs 12 4 gandalf# ps axu | grep nfs root 5535 0.0 0.0 0 0 q2 SW 17:15 0:00 (nfsiod) root 5536 0.0 0.0 0 0 q2 SW 17:15 0:00 (nfsiod) root 5537 0.0 0.0 0 0 q2 SW 17:15 0:00 (nfsiod) root 5538 0.0 0.0 0 0 q2 SW 17:15 0:00 (nfsiod) root 5557 0.0 0.4 864 300 q2 S 17:16 0:00 grep nfs gandalf# kill -9 5535 5536 5537 5538 gandalf# lsmod gandalf# rmmod nfs.o
Es necesario "matar"(killar) los 4 demons nfsiod porque ellos son lanzados cuando NFS es activado. Como puedes verlo, estas operaciones se vuelven relativamente difíciles. es por esta razón que el sistema de cargamento automático ha sido creado.
kerneld
El sistema de cargamento automático de módulos permite reducir al mínimo la talla de su núcleo. El principio de funcionamiento es particularmente simple : un demon en modo usuario esta a la escucha de las ordenes del núcleo (vía un archivo de mensaje de tipo IPC Sistema V). Cuando un proceso intenta acceder a un recurso sistema (vía un llamado sistema open, etc...), el núcleo envía la orden de cargamento del modulo a kerneld. Una vez el mensaje es recibido, kerneld ejecuta un modprobe para cargar los módulos necesarios : Esquemas del cargamento/descargue de los módulos con kerneld
En cambio, en el momento de la compilación del núcleo, es necesario colocar al menos el soporte para permitir el inicio de la maquina y el montaje de la raíz de tu sistema de archivo (por ejemplo, support IDE + ext2fs). Tu puedes tener todo el resto en modulo (tarjeta sonido, sistemas de archivos, tarjeta SCSI, etc).
Esta parte, de modificacion, solo es valida si tu maquina no esta
dotada de kerneld
. Las nuevas distribuciones efectuan una
instalacion correcta.
Para realizar la puesta en marcha del sistema de carga de módulos,
es necesario efectuar ciertas modificaciones al nivel de tu
configuración. En efecto, es necesario que en el momento de iniciar la
maquina, el demon kerneld sea lanzado y realizar una especie de lista
de dependencias de los módulos : ciertos módulos no pueden ser lanzados
antes que otros no l sean. En un primer momento, hay que crear
el archivo /etc/rc.d/rc.modules
en el cual, tu colocas :
# Modules # # Creación de un enlace lógico para el núcleo corriente # # /bin/rm -f /lib/modules/current ln -sf /lib/modules/`uname -r` /lib/modules/current # # Creación de las dependencias if [ \! -r /lib/modules/current/modules.dep ] then echo "Creating module dependencies" /sbin/depmod -a fi # # Carga de los módulos de arranque... # if [-x /sbin/kerneld ] then if find /lib/modules/boot -type f -o type l > /dev/null 2>&1 then echo "Loading boot-time modules" /sbin/modprobe -a -t boot \* fi else echo "Loading modules" /sbin/modprobe -a \* fi # # Si usted posee otros tipos de demons kerneld a lanzar... # if [-x /sbin/kdsound ] then echo "Starting sound daemon" /sbin/kdsound & fi
Esto permite generar las dependencias de tus módulos cada vez que
inicias tu maquina. Enseguida, en el archivo /etc/rd.d/rc.S
(puede
depender de tu distribución...), conviene agregar :
# Start update. /sbin/update & # *** A AGREGAR *** # Lanzamiento de kerneld lo mas pronto posible, de tal manera # que los módulos de sistemas de archivos puedan ser cargados if [ -x /sbin/kerneld ] then echo "kerneld running" /sbin/kerneld fi # Un poco de limpieza cat /dev/null > /var/adm/utmp # Lanzamiento del script de los módulos if [ -f /etc/rc.d/rc.modules ]; then /etc/rc.d/rc.modules fi
Una vez que estas modificaciones son efectuadas y la maquina
reinicializada, todo debe quedar en su lugar. Si kerneld permite cargar
automáticamente los
módulos, permite igualmente descargarlos luego de cierto
tiempo sin utilizarlos. Por defecto, si ningún proceso accede al
modulo durante mas de 60 segundos, es automáticamente descargado.
Es posible modificar este valor agregando el parámetro
delay=Nb_Segundos
a kerneld donde Nb_Secondes es la prolongación en
segundos.
puede suceder que sea necesario configurar un ultimo archivo:
el archivo /etc/conf.modules
. este archivo contiene los caminos donde se
encuentran los módulos que deben ser cargados y enseguida los alias para los
módulos. Si tu no tienes este archivo, puedes crearlo con :
gandalf# /sbin/modprobe<item>c | grep<item>v '^path' >/etc/conf.modules
puede suceder que en el momento del primer arranque obtengas este mensaje :
Cannot locate module for net-pf-3 Cannot locate module for net-pf-4 Cannot locate module for net-pf-5Que no cunda el panico ! Este mensaje no es malo y para no tenerlo mas, añade en el archivo
/etc/conf.modules
:
alias net-pf-3 off alias net-pf-4 off alias net-pf-5 off
puede suceder que ciertos dispositivos tengan necesidad de ciertos parámetros particulares. Consulta el documento Kernel HowTo.
Tu puedes consultar estas referencias para mas información :
Este libro es la traducción del libro "Linux Installation and Getting
Started" de Matt Welsh (mdw@sunsite.unc.edu
), versión 2.2.2. La
traducción fue realizada por Rene Cougnenc y esta disponible en ftp.ibp.fr
en /pub/linux/french/books
.
Aunque Linux tiene como principio el de ser completamente gratuito, varias obras se vende en el comercio.
ftp.ibp.fr
en /pub/linux/french/books
.
El numero de libros relacionados con Linux tiende a explotar en la ultima
época. Se puede consultar el sitio
http://excalibur.inp-fc.fr/anrtt/doc/index.html
que intenta presentar los
libros disponibles
La mayoría de HowTo's o mini HowTo ya han sido traducidos al francés. Están
disponibles en el ftp.ibp.fr
en el repertorio
/pub/linux/french/docs/HOWTO
. Esta es la lista :
HowTo :
Boot-disk-HOWTO BootPrompt-HOWTO NIS-HOWTO Net2-HOWTO Busmouse-HOWTO PCI-HOWTO CDROM-HOWTO PPP-FAQ Comercial-HOWTO DOSEMU-HOWTO Printing-HOWTO Distribucion-HOWTO ELF-HOWTO SCSI-HOWTO PPP-HOWTO SCSI-Programacion-HOWTO Firewall-HOWTO Ftape-HOWTO Serial-HOWTO GCC-HOWTO Sound-HOWTO HAM-HOWTO Term-HOWTO Tips-HOWTO Hardware-HOWTO UPS-HOWTO IPX-HOWTO UUCP-HOWTO Instalacion-HOWTO Video-HOWTO Java-HOWTO XFree86-HOWTO Kernel-HOWTO Keyboard-HOWTO MGR-HOWTO Mail-HOWTO Modems-HOWTOMini-HowTo :
Anon-ftp NFS-Root X-Terminal Assembleur Postgres ZipIomega Colour-ls Proxy-ARP IO-Port Shadow-Password Jaz Slip+ProxyARP LILO Term-Firewall Large-IDE Token-Ring Man-Page Win95+Win3x+<bf/Linux/
A pesar de todo esto, aun falta mucho trabajo! Si quieres unirte al grupo de traductores, puedes hacerlo inscribiéndote en la lista de traducción:
mail majordomo@linux.eu.org subscribe traduc
Algunas buenas direcciones:
ftp.ibp.fr
: espejo de tsx-11.mit.edu, de sunsite.unc.edu
con las ultimas actualizaciones del nodo, y sobretodo toda la arborescencia
francesa. Se trata del sitio de referencia en Francia concerniente a
Linux (y seguramente para el resto igualmente... bravo Rémy !).
majordom@arlesienne.ensica.fr : subscribe linux-31
majordomo@rd.lectra.fr : subscribe linux-33
http://opera.inrialpes.fr/linux/guilde
mail majordomo@rd.lectra.fr subscribe echo-linux
newsgroup fr.comp.os.linux
.
Aquí esta la list de las personas que han participado a la realización de este documento. Es muy posible que olvide alguien... mis excusas ! Gracias a todos.
Contribuciones :
Linux es un sistema abierto, que evoluciona. Numerosos desarrollos son actuelmente en curso, tales como Wine (WINdows Emulator), el proyecto de documentación de Linux(LDP), la internacionalización. Todos estos proyectos (y otros más) son realizados por personas de buena voluntad que dan un poco de su tiempo, desde la programación, a la traducción de documentos, etc.
Si deseas ofrecer un poco de tu tiempo para Linux, no dudes en contactarme.
Se termino.
Si ciertos puntos te parecen obscuros, etc, no dudes en contactarme. esta guía seguira evolucionando, pero no lo, podrá hacer que gracias a ti, así que si encuentras un truco realmente genial, envíalo : (Eric.Dumas@freenix.fr) (nt: o a caliman@magic.fr).
Mont de Marsan, 14 Decembre de 1996. Bergerac, le 29 Décembre 1996.
date
v0.1, 20 August 1996
This is the very first issue of the Spanish Linux HOWTO. The target audience of this document is the growing family of Linux users in Spain and Latin America, so this How-To is of course in Spanish. Some non-Spanish speakers have asked for information on Linux in the Spanish environment, for developing software with Spanish support or just to get in touch with the Linux community in Spain. You're welcome in any case...
Este documento pretende ser el punto de entrada de los hispanohablantes al mundo Linux, intentando abarcar tanto a los principiantes de este apasionante sistema como a los ya iniciados que buscan información puntual. Se tratarán de forma genérica todos los temas que puedan interesar al usuario de Linux, desarrollándolos en castellano o dando referencias a otras fuentes de información en nuestro idioma, así como orientación cuando tenga que acudir a otras HOWTO y en general a cualquier documento en inglés.
Se distribuye integrado con el Linux Documentation Project en todos los foros de información Linux en Internet. Se actualiza periódicamente, pudiendo encontrar la última versión en Linux/España
Notas del autor: Aunque puede ser interesante de por sí, traducir sin más información ya editada en inglés no es el objetivo de este documento, sino más bien servir de base al usuario hispanohablante y divulgar el Linux en nuestro idioma. Una ambición de quien escribe es, desde estas líneas, poner su grano de arena para coordinar los esfuerzos (valiosos pero muy diseminados por la red) de tanto Linuxero como ya hay. Otro objetivo menos pretencioso de este documento es complementar todas las demas Howto's en aquellos aspectos concretos que afecten a los usuarios hispanos (configuración del sistema y de las aplicaciones para trabajar en nuestro idioma, teclados, correo electrónico en español, etc). Un tercer objetivo será servir de agenda actualizada de direcciones españolas dedicadas a Linux, tanto para difusión de las distribuciones originales de software Linux como de desarrollos propios en español que se vayan publicando. Vaya desde aquí mi agradecimiento en esta primera versión para Antonio L. Delgado, compañero de la Facultad de Informática de Sevilla, por prestarse a echar una mano redactando esta Howto en las calurosas tardes de Sevilla.
Cualquier comentario, sugerencia para nuevos contenidos, rectificación de errores, crítica, etc. es no sólo bienvenido sino también esperado. Contacta por correo electrónico para todo lo que quieras.
Linux es una implementación del sistema operativo UNIX (uno más de entre los numerosos clónicos del histórico Unix), pero con la originalidad de ser gratuito y a la vez muy potente, que sale muy bien parado (no pocas veces victorioso) al compararlo con las versiones comerciales para sistemas de mayor envergadura y por tanto teóricamente superiores. Comenzó como proyecto personal del -entonces estudiante- Linus Torvalds, quien tomó como punto de partida otro viejo conocido, el Minix de Andy. S. Tanenbaum (profesor de sistemas operativos que creó su propio sistema operativo Unix en PCs XT para usarlo en su docencia). Actualmente Linus lo sigue desarrollando, pero a estas alturas el principal autor es la red Internet, desde donde una gigantesca familia de programadores y usuarios aportan diariamente su tiempo aumentando sus prestaciones y dando información y soporte técnico mútuo. La versión original -y aun predominante- comenzó para PCs compatibles (Intel 386 y superiores), existiendo también en desarrollo versiones para prácticamente todo tipo de plataformas: PowerPC, Sparc, Alpha, Mips, etc. De todas ellas la más reciente en este momento es la versión para PowerMac (el PowerPC de Apple) basada en el microkernel Mach 3.0 y de la que ya hay una distribución para desarrolladores avalada directamente por Apple y OSF pero conservando el espíritu (gratuito, de libre distribución, etc) de la version original. Un servidor la acaba de probar hace unos días y se ha llevado una grata sorpresa (aún tendrá muuuchos fallos, pero para ser una primerísima versión y el poco tiempo que lleva en marcha, ha avanzado más de lo que me esperaba).
La primera fuente para conseguir el sistema Linux es la propia red Internet, y es donde estarán siempre las últimas versiones y las aplicaciones más actualizadas en muchos servidores de FTP anónimo. Otra vía muy frecuente, de interés para principiantes y para quienes no deseen o no puedan permitirse copiar tanta cantidad de información a traves de la red, es mediante las versiones comercializadas en CDROM. Hay empresas que se dedican a elaborar CDROMs de bajo coste con recopilaciones de software, manuales, etc. El corazón del sistema es el mismo, aunque pueden tener externamente presentaciones y formas distintas de instalación. Hay revistas especializadas que tambión suelen incluir CDs con alguna versión de Linux. Hacia el final de este documento se relacionan diversas fuentes de Linux, tanto servidores públicos en la red como direcciones de empresas que lo comercializan.
Una ventaja (para muchos usuarios termina siendo un inconveniente) es la gran rapidez con la que se se desarrolla Linux. Constantemente llegan a los principales servidores Linux en la red actualizaciones del núcleo del sistema, de aplicaciones, utilidades, manuales y documentación, etc. Es bueno estar al día, seguir con atención su evolución y aprovechar las mejoras que se incorporen, pero en la mayoría de los casos no vale la pena estar reinstalando software por el simple hecho de ser una nueva versión, sino que hay que ser un poco selectivos, al menos con el software. En el caso de los manuales, How-To's, grupos de noticias y/o listas de correo sí que vale la pena estar "a la última", sobre todo porque es allí donde nos sacarán de apuros cuando agotemos nuestros propios recursos...
Como ocurre en todas las versiones de Unix, el primer sitio donde mirar
cuando tenga una duda concreta sobre tal comando, fichero de
configuración, etc. es la orden 'man
', que incluye la ayuda de referencia
de Unix. Pero sólo es útil en ese ámbito, cuando ya se sabe más o menos lo se que busca, y
sólo
se necesita aclarar dudas concretas. Para todo lo demás la mejor fuente de
información es, cómo no, la propia red. En ella están disponibles tanto
libros completos (de los que algunas editoriales especializadas han publicado versiones
en papel) como la colección "Linux HOWTO", de la que
este documento forma parte. Hay una HOWTO para prácticamente cualquier
tema. Su objetivo es cubrir, mediante manuales breves, concisos y
específicos, cualquier duda que pueda surgir. Se actualizan
permanentemente, y se distribuyen a través del denominado "Linux
Documentation Project" (LDP) en Internet. La misma información se publica
en muy diferentes formatos, orientados tanto a la búsqueda y consulta en
línea como a su lectura convencional. Todas las versiones de Linux incluyen
estos manuales (al menos la última edición disponible en el momento de
recopilar el CDROM correspondiente), y al final de este documento se
aportan algunas de las muchas direcciones para consultar en la red.
Extracto de la Distributions-HOWTO
sobre distintas versiones de
Linux. Acuda a ella para ampliar información
El único elemento común a todas las versiones Linux es su kernel -el núcleo del sistema operativo-, que se desarrolla de forma coordinada y con actualizaciones sistemáticas. Sin embargo todo sistema operativo necesita, junto al núcleo del sistema, todo un conjunto de utilidades y herramientas de instalación, configuración y uso. Ahí juegan su papel las diferentes distribuciones: algunos particulares, entidades y empresas se dedican a hacer determinadas recopilaciones de software que ellos mismos preparan para que sean facilmente instalables y configurables. Todas ellas facilitan el software junto a su código fuente, pero la flexible licencia GNU a la que se acojen permite tanto ofrecerlas gratuitamente como distribuirlas por canales comerciales (lo que se paga es el trabajo de recopilación, el software de cosecha propia que pueda aportar, una presentación más elaborada, gastos de distribución y soporte técnico al usuario).
Algunas de las distribuciones más conocidas son:
Esta distribucion es quizas de las más extendidas en todo el mundo y la más conocida en España, ya que es la que han divulgado las publicaciones del sector. Incluye con creces todo el software que cualquier usuario medio o avanzado pueda necesitar, y su método de instalación es asequible aunque lejos de las típicas y vistosas instalaciones a las que el usuario neófito esta acostumbrado en los sistemas comerciales. Tiene diversos derivados comercializados bajo diferentes nombres (por ej. "Slackware Pro") que mejoran la instalación e incluyen manuales y bibliografía en un único lote. Esta en todos los FTPs principales, siendo http://www.cdrom.com/ su distribuidor de origen.
Creada por Red Hat Software, en Connecticut, EE.UU. Una de sus ventajas es el atractivo sistema de instalación (en modo gráfico) y el cómodo mantenimiento de componentes de software, lo que facilita enormemente las tan frecuentes actualizaciones. Se puede obtener tanto gratuitamente en la red como adquiriendo el CDROM correspondiente. Otras empresas comercializan también sistemas basados en Red Hat, como Caldera Inc. y Pacific Hi-Tech. Aún poco conocida en España pero pujante, sobre todo para principiantes. Sus creadores estan en http://www.redhat.com. El mencionado sistema de gestión de componentes de software es obra suya, pero lo han ofrecido con carácter abierto y gratuito a los demás desarrolladores bajo la licencia de GNU, por lo que es previsible que en el futuro otros muchos asuman este sistema en sus propias distribuciones, lo que facilitará enormemente las actualizaciones.
La Free Software Fundation (FSF) es bien conocida entre los acérrimos usuarios de software gratuito para Unix. Son los creadores del sistema GNU, su futuro Unix gratuito. Ya hay mucho material pero no un sistema operativo completo, asi que mientras tanto ofrecen un Unix integrado por el nucleo de Linux y el software de GNU. http://www.debian.org.
Este es un extracto de la Installation-HOWTO
, orientada fundamentalmente
a la instalación de Linux Slackware. Mucha de la información sobre
instalacion de Slackware es aplicable a cualquier versión de Linux, pero
no necesariamente al pie de la letra.
Aparte de otras muchas variantes que se puedan considerar, a la hora de instalar Linux en nuestro disco duro hay básicamente dos formas: UMSDOS y Partición nativa. Cada una tiene sus ventajas e inconvenientes, pero como se verá es recomendable que todos los usuarios terminen usando el segundo método ya que es el más eficiente y el que mejor aprovecha las ventajas de Linux.
Consiste en aprovechar el espacio de disco que queda libre en los PCs con MSDOS,
sin necesidad de tocar las particiones de disco. Linux es un sistema operativo,
y como tal totalmente independiente, no requiriendo por tanto ningun otro
sistema operativo en su ordenador (aunque puede convivir perfectamente con
ellos). Sin embargo es un parque muy amplio el de usuarios que ya tienen
instalado MSDOS y/o MS-Windows y que, al no considerase expertos, no se atreven en
un primer momento a reparticionar el disco para sustituir total o parcialmente
a su sistema actual. Para ellos, o simplemente para quien quiera ver y probar
Linux sin ser tan drasticos formateando discos duros, la solución es UMSDOS. Permite crear,
a partir
de un directorio de MSDOS, toda la estructura que tendría un disco nativo
de Linux. Cuando arranque el sistema, Linux emulará su disco a partir
de la información en ese directorio. Es totalmente funcional, pero puede
ser ligeramente más lento en ordenadores de gama media-baja y no aprovecha la
gestión de disco nativo. Una gran ventaja es que si se libera disco en Linux,
implícitamente estamos creando espacio que será aprovechable cuando arranquemos
MSDOS, y viceversa. Además, el día que queramos deshacernos de Linux (¡poco
probable!) o que simplemente nos decidamos a hacer una instalación completa,
desinstalar ese Linux es tan sencillo como simplemente borrar sin contemplaciones
el directorio C:\LINUX
que creó desde MSDOS.
Salvo la fase inicial en la que se preparan las particiones nativas o el UMSDOS, el procedimiento restante de instalación es básicamente el mismo. Ya que puede ser el que provoque más dudas, centraremos estos consejos de instalación en la instalación con partición nativa. Pero recuerde que
ESTO NO ES UNA GUIA DE INSTALACION, SINO UN COMPLEMENTO A LAS INTRUCCIONES DE INSTALACION DE SU VERSION DE LINUX. LEA LA INSTALLATION-HOWTO Y/O EL MANUAL QUE ACOMPAñA A SU DISTRIBUCION ANTES DE COMENZAR, O DE LO CONTRARIO PUEDE FALLAR LA INSTALACION E INCLUSO INUTILIZAR EL SOFTWARE QUE PUEDA TENER YA INSTALADO EN SU ORDENADOR. LA DISTRIBUCION TOMADA COMO BASE ES LINUX SLACKWARE 3.0. EL PROCEDIMIENTO PUEDE VARIAR DE UNAS VERSIONES A OTRAS. EN CASO DE DUDA ACUDA A LOS MANUALES DE SU SISTEMA O CONSULTE A LOS CANALES DE AYUDA Y SOPORTE LINUX HABITUALES (EN INTERNET O A SU DISTRIBUIDOR) LOS AUTORES DE ESTA DOCUMENTACION NO SE RESPONSABILIZAN DE LOS POSIBLES DESASTRES QUE PUEDA OCASIONAR. SI DECIDE CONTINUAR ES BAJO SU EXCLUSIVA RESPONSABILIDAD. (Nos gusta dormir tranquilos ;^) )
En esta instalación es necesario que LINUX disponga de una partición distinta a la de MSDOS para trabajar. Si ya tiene algún sistema instalado, lo más frecuente es que sea una única partición DOS que ocupe todo el disco, por lo que reparticionar supone eliminar esa partición para volver a crearla asignándole menos disco para hacer sitio a Linux (o para dárselo totalmente, según la instalación escogida). Eso supone perder como norma general todos los datos en las particiones ya existentes.
Existe, sin embargo, una utilidad anexa a Linux que corre sobre MSDOS y que
permite "encoger" una partición de DOS siempre que la unidad tenga espacio
libre y haya sido totalmente defragmentada (con la utilidad "DEFRAG" de MSDOS 6.x
o similares). Esto le permitirá crear nuevas particiones conservando sus datos
en la partición MSDOS actual. Esta utilidad se llama "fips"
y la encontrará
en su servidor habitual en la red junto a otras utilidades de MSDOS para
ayudar a la instalación de Linux.
LEA LA DOCUMENTACION DE FIPS ANTES DE UTILIZARLO.
Primero debe liberar en MSDOS el espacio que pretenda reservar para la nueva partición de Linux (y para el espacio de swap, como después se comentará). Después debe defragmentar la partición de DOS con la utilidad "defrag" que acompaña a las últimas versiones de DOS, o bien sus equivalentes de PCTools o Norton. Ahora puede correr el programa fips y crear una nueva partición con el espacio liberado. Lo habitual será crear dos particiones: una Linux native para el sistema, y una Linux swap con por ej. el doble que de RAM, pero en caso de necesidad incluso puede ahorrarse una partición específica para swap, y "robar" ese espacio de disco bien a MSDOS o al propio Linux.
Una vez añadida la nueva partición que destinaremos a Linux, hay que preparar la siguiente etapa, el arranque de Linux, ya que salvo el apartado anterior en el que salvaguardamos la instalación previa de MSDOS, toda la instalación se hará desde el propio Linux. Para arrancar necesitaremos dos disquetes (en algunas distribuciones como RedHat pueden ser tres), donde grabaremos tanto el núcleo del sistema operativo como los primeros programas con los que poder empezar a instalar. El primer disquete es el que etiquetaremos como "boot disk", y es donde irá el núcleo del sistema con el que arrancar. Como Linux es casi un sistema "a la carta", que puede llevar en el núcleo más o menos funcionalidades según nuestras necesidades, deberemos escoger entre los núcleos precompilados aquel que se adapte mejor a nuestro caso. En el futuro será recomendable que incluso recompilemos nuestro propio núcleo para personalizarlo aún más, añadir lo que falte y simplificar lo que sobre en nuestro caso. El siguiente disquete es el "root disk" o "ramdisk", que incluye el software mínimo que cargaremos en memoria para la instalación.
En la distribución de Linux tendremos una serie de ficheros que constituyen "imágenes" de esos disquetes. Es decir, una vez elegidas qué diquetes necesitaremos, los crearemos a partir de esas imágenes, bien desde otro sistema Linux ya funcionando (o incluso de cualquier Unix en general), bien desde MSDOS con otra utilidad complementaria de "fips": "rawrite".
Una vez hecho esto ya puedes arrancar con tus discos. Introduce el "boot disk", arranca el ordenador y sigue sus instrucciones. Cuando finalice la fase de arranque Slackware te ofrecerá un símbolo para hacer "login" (entrar en el sistema), mientras que RedHat arrancará directamente la aplicación de instalación. Utiliza el nombre "root" como nombre de usuario (es el super-usuario que administra el sistema). La primera vez no necesitarás clave alguna para entrar.
Ya estas en el prompt de Linux, desde donde puedes crear tus particiones y tu espacio de swap (es una zona especial de disco que Linux usa como memoria virtual que complementa a la memoria RAM del ordenador). Al igual que en MSDOS, el comando para gestionar particiones se llama "fdisk". En algunas versiones hay también una "cfdisk" con un interfaz más asequible, aunque iguales en lo básico.
Si posees una partición de MSDOS, no te asustes, sigue adelante, no la vas a perder simplemente por entrar en fdisk, pero sí que debes tener precaución al añadir la partición linux sobre el espacio que le habíamos quitado a MSDOS, para no afectar a éste.
Dentro de fdisk usa la opción 'n' para añadir nuevas particiones. Dalas de alta como particiones primarias (si ya tienes una particion de arranque con MSDOS, ésta será la partición 1 y a partir de ahí añadirás particiones Linux). Es ahora el momento de añadir el espacio de swap, conveniente siempre, e incluso imprescindible si se dispone de memoria igual o inferior a 8Mb. Como regla orientativa puede servir tener el doble de swap que RAM (para 8Mb o menos de RAM), y 1.5 veces para memorias superiores, pero depende de la disponibilidad de disco y de memoria que tengamos, así como del uso que le vayamos a dar. En realidad será tu experiencia la que te irá diciendo en sucesivas instalaciones cuánto swap necesitas. En caso de disponer de más de un disco duro es muy recomendable tener separadas las particiones de linux y de swap (por ej. DOS+swap en uno y linux en el otro), lo que mejorará el rendimiento global.
Una vez creadas las particiones, hay que definir también en fdisk el uso que van a tener (tipo de partición), siendo obviamente "linux swap partition" (tipo 83) para el swap, y "Linux native partition" para el propio linux. Al final, y siguiendo con este ejemplo, tendrás tres particiones definidas:
NO TENGAS MIEDO POR TOCAR Y PROBAR: HASTA QUE NO USES LA OPCION DE ESCRIBIR A DISCO, PUEDES HACER TODO TIPO DE PRUEBAS Y/O CANCELARLO TODO HASTA ESTAR SEGURO Y GRABAR LA NUEVA TABLA DE PARTICIONES.
Es probable que haya que rearrancar si modificamos las particiones, y continuar con el software de instalación de nuestro Linux. En el caso de Slackware, ese software de instalación ya necesita al menos 8Mb de memoria, por lo que si estamos justos de memoria tendremos que activar ya mismo el swap antes de ejecutarlo. Si ese es el caso, hay que hacerlo en dos pasos: formatear la partición de swap y luego activarla para que empiece a complementar la RAM. Los comandos serían
mkswap -c /dev/hdXX swapon /dev/hdXX
donde /dev/hdXX
sería el nombre de la partición que hemos definido
como swap. Una vez hecho esto, Slackware ya aporta una utilidad de instalación que
detectará las particiones creadas y procederá con el resto de la instalación
con la aplicación "setup", que nos guiará durante toda la instalación con un
sencillo interfaz de menús, que no requiere muchas explicaciones. Durante una de
las etapas de la instalación Setup intentará preparar el swap. Si lo hemos hecho
ya a mano habrá que indicarle que se lo salte, mientras que en el resto de los casos
dejaremos que setup haga todo lo que tenga que hacer.
Slackware divide la distribución del sistema operativo en "series" temáticas, y a su vez cada una de ellas en directorios que se corresponden perfectamente con disquetes de 1.44Mb. Los discos esenciales serían los de la "Serie A", con los que el sistema ya es arrancable autónomamente desde el disco duro, aunque en la práctica lógicamente instalaremos también la "AP" (aplicaciones básicas), "N" (software de red, si vamos a conectarnos con cualquier modalidad), "D" (compiladores y librerías), "X" y "XAP" para el entorno gráfico XFree86.
Por su parte RedHat organiza el software también en "paquetes" instalables de forma independiente y también agrupados por temas, aunque no sigue ningún esquema traducible en disquetes, por lo que las únicas vías de instalación son CDROM o directamente de la red.
Una vez cargados a disco los paquetes de software, la siguiente fase será la de configuración, que se realiza desde el mismo programa de setup. Como esta parte es muy variable y depende de cada caso. Nos centraremos en dos puntos típicamente problematicos: el arranque del sistema (incluida la posibilidad de arrancar múltiples sistemas operativos desde distintas particiones o distintos discos) y la configuración de red
Para instalar un método de arranque de Linux hay dos utilidades: "Lilo" y "Loadlin". La primera es un pequeño programa que se instala en el "Master boot record" del disco duro o en la partición que fdisk marcó como "activa", y que permite arrancar indistintamente Linux, DOS 6.x, Windows95, etc. La segunda es una utilidad de MSDOS que permite dejar en paz los arranques de particiones, haciendo en su lugar un "arranque en caliente" directamente desde DOS. Ambos funcionan bien, por lo que elegir una u otra es cuestión de preferencias de cada cual. En el segundo caso podrí darnos algún error si hubiera algún programa de DOS residente en memoria que pueda obstaculizar la carga de Linux. Eso es relativamente facil de solucionar jugando un poco con las configuraciones de DOS (incluso con los menus de arranque que incorpora el config.sys de MSDOS 6.x), pero incluso en ese caso podemos encontrarnos dos obstaculos mas: si tenemos instalado DoubleSpace/Drivespace hay que evitar que se cargue en memoria pulsando F8 durante el inicio de DOS para poder ejecutar Loadlin (no hay otra forma de pararlo ya que normalmente se carga incluso antes que config.sys), y ademas si usamos Windows95 hay que pulsar igualmente F8 para arrancar con solo el símbolo del sistema, evitando entrar en el modo gráfico.
Linux puede convivir con cualquier sistema operativo, pero unos dan mas dolores de cabeza
que otros, por lo que en caso de duda acude a la documentación correspondiente (la de
instalación de la propia distribución y la Booting-HOWTO. De todas formas, si una
vez instalado Linux no conseguimos arrancarlo (sabemos que está ahí pero no conseguimos
entrar en él), siempre queda un recurso asequible: introduce el "boot disk" y en vez de
darle a INTRO cuando te aparezca un simbolo "boot", teclea root=
dev/XXXX/ indicando
que ya hay un Linux en la partición correspondiente, y que debe usarlo en vez de
continuar con una hipotética instalación. Lo único diferente es que se estaría
usando el núcleo (kernel) del disquete en vez del instalado en el disco duro, pero a
partir de ahí montará la partición del disco duro y usará todo lo ya instalado allí.
Otro problema frecuente (solventado en la última version de RedHat pero no aún en Slackware) es que graba en el disco duro un núcleo genérico en vez del que hayamos usado en el "boot disk", que era precisamente el que habíamos elegido, por lo que es habitual que, si necesitamos algún controlador específico para algún dispositivo o cualquier otra funcionalidad, cuando arranquemos directamente desde el disco duro ya no nos lo reconocerá. Si estamos usando LILO haz lo siguiente para arreglarlo: entra como superusuario, copia la imagen que habias usado para generar el "boot disk" sobre el fichero "/vmlinuz" del disco duro y ejecuta "lilo" para reinstalar el arranque con el núcleo correcto. Si estas usando LOADLIN, simplemente dale como parámetro el fichero del núcleo correcto (es facil tener varios núcleos y elegir en cada caso el que interese). Seguir arrancando con el disquete como en el caso anterior sería también otra posibilidad para no perder ese CDROM, esa tarjeta, etc.
Uno de los aspectos más molestos es no poder escribir con naturalidad en nuestro idioma por falta de soporte de los caracteres especiales en el software. El juego de caracteres básico de ASCII es de 7 bits, y no incluye ni las vocales acentuadas ni nuestra maltratada 'ñ'. Hay una norma ISO-8859-1 (ó ISO-Latin1) que sí que abarca todos los caracteres pero que sigue dando la lata en muchas tareas habituales, como el correo electrónico (muchos sistemas solo respetan 7 bits, por lo que textos que podemos ver correctamente en nuestro ordenador probablemente se visualizarán de forma lamentable cuando los enviemos a otra persona. A continuación se mencionan algunas de las situaciones más frecuentes y cómo intentar solucionarlas.
...O cómo demonios poder usar acentos en nuestro propio ordenador
Mediante el comando loadkeys se cargan las tablas de traducción del teclado.
Estas tablas traducen los códigos que se generan al pulsar las teclas a los que
reciben los programas. Los ficheros que contienen estas tablas de traducción se
encuentran en el directorio /usr/lib/kbd/keytables/
y el fichero que
contiene el mapeado del teclado español se denomina es.map
. Su objetivo es
que si pulsamos una determinada combinación de teclas, aparezca en pantalla
el carácter que tenemos pintado en nuestro teclado, y no su equivalente en el
teclado que se usa en cualquier otro país.
La llamada a este comando suele ser de la forma siguiente, que aparecerá
en el arranque por defecto (en Slackware estaría en/etc/rc.d/rc.keymap
):
loadkeys /usr/lib/kbd/keytables/es.map
Nota del autor: A igual configuración de teclado, más de una vez me han fallado los acentos por recompilar el núcleo, pero en el momento de escribir estas líneas aún no he visto la causa...
Para que la bash soporte el uso de vocales acentuadas asi como de la letra
ñ basta con incluir las siguientes líneas en un fichero .inputrc
(o al menos en .bash_profile
) en tu $HOME:
set meta-flag on # conservar bit 8 en entrada de teclado set output-meta on # conservar bit 8 en salida por terminal set convert-meta off # no convertir secuencias de escape export LC_CTYPE=ISO_8859_1
Para que la tcsh soporte el uso de vocales acentuadas asi como de la letra
ñ basta con incluir las siguientes líneas en un fichero .tcshrc
(o al menos en .login
) en tu $HOME:
setenv LANG C setenv LC_CTYPE "iso_8859_1"
Sería excesivamente largo detallar todas las posibilidades para trabajar con caracteres de 8 bits en todas las aplicaciones, utilidades, comandos del sistema, etc. Aquí van algunos ejemplos:
Joe tiene un parámetro -asis
para que conserve los caracteres de 8 bits.
Por defecto muestra solamente los caracteres de 7 bits (los de 8 los
representa por su código ASCII). Ello protege
de ver en pantalla "basura" si por error intentamos leer ficheros binarios,
de datos, etc., pero impide ver nuestros acentos. Se puede modificar
momentáneamente con el modificador -r
desde la propia utilidad,
pero sería mejor tener definida la variable de entorno LESSCHARSET=latin1
.
Para que muestre los caracteres especiales en los nombres de los ficheros tiene
las opciones -8 -N
, que se pueden añadir a la variable LS_OPTIONS
que probablemente ya tengas definida por defecto.
Este clónico Norton tiene una opción Full 8 bits del submenú Display bits... bajo Options.
Dispone de una opción -Tlatin1
El entorno gráfico XWindow usa para configurar el teclado un comando llamado
xmodmap
que tiene la misma funcion que loadkeys
para la consola de
texto. Ernest Artiaga (drw@portos.upc.es) preparó un fichero de configuracion
para Xmodmap que genera los acentos con la tecla [AltGr], que entre otros sitios puede
encontrar
en
ftp://ftp.cs.us.es/pub/Linux/contrib/Xmodmap-es, y que podemos
colocar como $HOME/.xmodmap para que se cargue como parte de nuestra
configuración. Existe también una utilidad /usr/lib/kbd/keytables/mk_modmap
que genera un listado para Xmodmap a partir del mapa de teclado usado por loadkeys.
De todas formas este método no es perfecto, ya que muchas aplicaciones bajo Xwindow tienen su propia forma de configuración o simplemente no tienen soporte para caracteres extendidos por lo que a veces es posible que podamos usar acentos en una ventana y no en la aplicación de la ventana de al lado.
La linea de configuración del teclado en /etc/dosemu.conf
deberá
incluir 'layout es-latin1
' para poder usar la 'ñ' y las aperturas
de interrogación y admiración. Una vez hecho esto, es posible cargar la
configuración habitual con keyb sp
desde el propio emulador de DOS, o
bien ejecutar 'keybes2.com
, una pequeña utilidad para el propio emulador
disponible en varias de las direcciones habituales.
Por último en relación con el uso del español en Linux, pero no menos importante, es poder leer y recibir por mensajería electrónica textos escritos en español sin deformar su contenido ni perder los acentos y símbolos propios.
El problema se reduce a lo de siempre: el uso de caracteres especiales no incluidos en la tipografía básica sajona requiere trabajar con 8 bits, pero aún hay muchos sistemas que siguen trabajando con 7 bits, lo que trunca o deforma mensajes escritos sin las debidas precauciones.
En el estándar RFC822 que define el formato usado en los mensajes de correo de Internet no se permite el uso de 8 bits en las cabeceras de los mensajes, dejando abierta la posibilidad de 8 bits en el cuerpo del mensaje. Pero tampoco podemos abusar de esa posibilidad ya que no tenemos garantías de que lo respete cualquier sistema que pueda recibir nuestros documentos. Una solución cada vez más extendida, y que permite a los usuarios escribir con libertad y enviar prácticamente cualquier información dejando todos esos detalles al software de gestión del correo (tanto los agentes de usuario como los agentes de transporte en los servidores de correo) es mediante el estandar MIME, que permite codificar nuestros mensajes de 8 bits y reducirlos a caracteres de 7 bits que puedan pasar a través de cualquier sistema sin peligro de perder información. El inconveniente (cada vez menor a medida que este sistema se extienda más y más) es que si intentamos leer un mensaje con codificación MIME sin un software que no implemente este sistema y no pueda interpretarlo, puede que veamos "basura" intercalada con nuestro mensaje, o que incluso no entendamos nada de nada.
MIME deja toda la responsabilidad al software, por lo que si ambos extremos (remitente y destinatario) usan software compatible con MIME, el usuario puede enviar junto a textos simples cualquier combinación de tipos de ficheros (documentos generados por procesadores de textos, gráficos, sonido, video, etc). Ni siquiera es necesario que ambos usen el mismo software. Basta con que ambos sean capaces de generar la codificación durante el envío, y de interpretarla en la recepción.
Uno de los puntos muy fuertes de Linux es su gran conectividad: incluso con recursos modestos en hardware puede ser un hábil servidor de red y convivir practicamente con cualquier configuracion que ya tengamos funcionando en nuestra red. A medida que mejoremos el equipamiento, Linux aprovechará todos los recursos convirtiéndose en un potente centro de servicios. Si no consigo abrirte el apetito de curiosidad, echa un vistazo a las varias How-To sobre el tema o lo lamentaras... :)
Como digno miembro de la familia Unix, el entorno nativo de red en el que ha nacido Linux es el TCP/IP, asi que nos moveremos en Internet y en las redes locales basadas en esta familia de protocolos como pez en el agua. Puede actuar tanto de simple cliente hasta como una potente estacion de trabajo de bajo coste, pasando por un XTerminal con todo su entorno grafico con absolutamente todo el software necesario, ya incluido o de más o menos fácil instalacion.
En el nivel físico (cacharreo para entendernos), Linux puede conectarse con otros Linux o con cualquier otro sistema usando casi cualquier cosa: cableado serie, paralelo, modems convencionales, tarjetas RDSI, Frame Relay, redes locales ethernet ó token ring, radiopaquete (AX.25 para radioaficionados), etc.
En cuanto a protocolos de red, lo que lleva en la sangre es el mencionado TCP/IP, pero puede acceder (como cliente o como servidor, segun los casos) a redes basadas en IPX (Novell), AppleTalk (Macintosh) y SMB (red LanManager para conectar con Windows para trabajo en grupo, Windows 95 y Windows NT). Por si sirve de pista, quien escribe ha hecho ya la prueba de poner un simple PC de gama media como nodo principal para dar servicios de disco, impresoras y, sobre todo, acceso a Internet a una LAN ethernet de 75 puestos de trabajo que usan indistintamente cualquiera de los mencionados protocolos compartiendo indistintamente sus recursos. Y lo mejor de todo es que nadie fue capaz de distinguir desde sus respectivos puestos a Linux del servidor propio que les atendía hasta entonces. De hecho lleva varios meses en uso ininterrumpido y sólo Linux ha sido capaz de hacer simultáneamente de servidor para usuarios Unix, Windows 3.11, Windows 95, NT, DOS, Netware y Mac sin colgarse ni una sola vez y con un coste ridículo. Nadie me garantiza que nunca me vaya a fallar, pero lo doy por modesta pero absolutamente victorioso en comparación con sistemas comerciales teóricamente superiores y con un coste mucho mayor.
Otra situación en la que actualmente uso Linux es como servidor de Web, mail, FTP anónimo (de servicio público a la red) y servicios de salida a Internet para una red local de 2.100 usuarios, también con muy buenos resultados a pesar de la fuerte carga de trabajo contínuo las 24 horas.
Algunas de las situaciones típicas en las que se puede aprovechar la capacidad de trabajo en red de Linux podrían ser:
¿Quién no tiene en casa un PC (o algo peor) que se ha quedado antiguo pero que aún funciona? Cualquier ordenador con un puerto serie y algun software de emulación de terminal puede conectarse a un Linux, permitiendo varios usuarios trabajando simultaneamente. Para quien no lo haya hecho alguna vez, es la forma más simple de comprobar por sí mismo que Linux es un sistema 100% multiusuario y multitarea. Todos los recursos de memoria, disco, etc. estarán a la vez disponibles para compartirlos entre tantos usuarios como puertos serie tengamos.
Enlazando ordenadores por puertas serie, paralelo, modems, etc, es posible no solamente que un Linux sea el ordenador principal y otros usuarios accedan a través de simples terminales, sino que es posible aprovechar la capacidad de todos los equipos sumando recursos. Desde un equipo se puede acceder a impresoras, discos, etc. de cualquier otro equipo. El protocolo PPP permite crear una red TCP/IP entre todos ellos, usando como enlace tanto modems como simples cables. A medida que cambiemos la red física por algo mas "decente" como una LAN ethernet o análogo, mejorarán las prestaciones como es lógico, pero la idea es la misma y el software de usuario son idénticos (lo que varía, claro esta, es la configuración del propio sistema operativo).
Combinando los dos apartados anteriores, podemos unir la capacidad de servidor de puertos serie (a los que conectaremos modems) y el protocolo PPP (para dar a esas líneas serie la funcionalidad del TCP/IP). Así podemos dar servicio de acceso a Internet a los usuarios que se nos conecten por teléfono.
Ciertamente no es lo normal en casa, pero es relativamente frecuente encontrarlo en universidades y de un tiempo para acá también es habitual en empresas. Si tenemos una red local enganchada a su vez a un proveedor (académico o comercial), entonces una simple tarjeta de red y una simple configuración del sistema serán suficientes para conectar Linux, que actuará como un ordenador Unix cualquiera, con todas sus ventajas. De hecho en la red encontraremos más de un servidor que esconde un Linux en sus "entrañas", o que precisamente quien nos esté haciendo de proveedor de acceso sea un Linux. Pero hay que tener en cuenta tambien sus inconvenientes de seguridad: igual que podemos conectarnos desde Linux, es perfectamente posible que se conecten a nosotros inadvertidamente, por lo que, salvo que necesitemos mantener abierto algun servicio en particular, es recomendable cerrar "todas las ventanas" para evitar problemas. Algunos buenos consejos para un Linux de uso personal serían:
root
y procura
mantenerla a salvo. Si la facilitas a alguien más, mentalízale para que
la use con precaución (por otra parte también es una forma de aprender
nociones básicas de administración de sistemas...) root
, edita /etc/inetd.conf
y ponle un signo de
comentario
(#
) a todas las lineas excepto aquellas que abran servicios que necesites
mantener accesibles; luego haz "killall -1 inetd". No te cortes y cierralo
todo, que siempre estaras a tiempo de reabrir aisladamente aquello que eches
en falta root
como usuario habitual con el que
te conectes al sistema, o en caso de despiste podrías provocar algun destrozo.
Es mas seguro que entres como un usuario "raso" y uses su - root
cuando necesites hacer alguna operacion concreta como super-usuario (recuerda
usar exit
para volver a tu status normal cuando termines lo que tenías que
hacer como super-usuario) syslogd
. En cuanto
empieces a desenvolverte un poco con el manual y los comandos básicos para
moverte por el sistema, aprende a recoger la información que genere ese
servicio, eliminar la inútil, revisar la útil y limpiar la contabilidad
de vez en cuando (de lo contrario te puedes dar un susto cuando veas
ficheros gigantescos que devoran espacio de disco con información desfasada
despues de tanto tiempo)
Infovía es una red creada por Telefónica a la que los usuarios acceden desde cualquier punto de la red telefónica española a precio de llamada local. Funciona como una intranet (una red basada en los mismos protocolos que Internet, pero independiente y sin integrarse en ella). No tiene por tanto acceso directo a Internet, pero es un buen intermediario ya que abarata costes tanto para el usuario como para el proveedor de acceso a internet, que aprovecha su infraestructura sin tener que invertir en una red propia. En este sentido es una vía interesante de acceso, pero para evitar confusiones hay que tener presente que Infovía NO es Internet, sino un producto comercial de Telefónica. Aún despues de habernos conectado a Infovía seguimos necesitando un proveedor de acceso a Internet para estar verdaderamente conectados a la red de redes.
Al funcionar igual que Internet (el software de Infovía no es más que un PPP y un navegador de web, que utiliza como interfaz de usuario) es perfectamente posible usar Linux para conectarse, pero surge el problema típico de configuración: Telefónica facilita su software gratuito para entornos comerciales típicos (Windows 3.11, Windows95 y Macintosh) que Linux no necesita (ya lo tiene). Pero Linux lo que necesita es conocer la configuracion de su red, para poder integrarse en ella.
El software básico es el pppd
, que a través del modem creará un enlace
TCP/IP entre nuestro ordenador e Infovia. Una vez creado, podremos
contactar con nuestro "verdadero" proveedor, quien
nos abrirá las puertas a Internet, y a partir de ese momento ya podremos usar
cualquiera de nuestras propias aplicaciones habituales desde Linux.
Como complemento de pppd
usaremos una utilidad chat
que se encargara
de dialogar via modem con el ordenador remoto al comienzo de la llamada, mientras
se establece la conexión. También intervendrán varios ficheros de configuración
(unos genéricos de Linux para cualquier conexión TCP/IP, otros característicos
de las conexiones a través de PPP y modem, y por último alguno que usemos en el
caso concreto de Infovía). Un detalle sobre versiones de software: un inconveniente
en la evolución de Linux ha sido un cambio en la implementación del PPP que hace
incompatible algunos pppd
con algunas versiones del kernel. Si nuestro
núcleo está entre 1.2.13 y 1.3.95 debemos usar un pppd 2.1.2d o superior,
mientras que necesitaremos un pppd 2.2.0e o superior para los núcleos más recientes.
El listado siguiente es un ejemplo del fichero principal de configuración
de pppd
, en el que a su vez se hace referencia a varios ficheros que
deberemos crear: identificación y clave facilitada por el proveedor de
acceso, el guión de inicio de conexión, y el de cierre y cuelgue
del modem. /dev/modem
es un enlace (un "symbolic link") que
usaremos como nombre genérico para el modem, y que debe apuntar al nombre
del dispositivo real en el que lo tengamos conectado.
/etc/ppp/options:
modem passive crtscts noipdefault defaultroute lock lcp-echo-interval 15 lcp-echo-failure 5 mtu 1500 +ua /etc/ppp/infovia.pass connect "/usr/sbin/chat -v -f /etc/ppp/infovia.chat" disconnect "/usr/sbin/chat -v -f /etc/ppp/infovia-off.chat" /dev/modem 38400
/etc/ppp/infovia.pass
es un fichero con simplemente dos líneas, una con
el login (identificación de usuario) y otra con la clave. Para acceder a Internet
deberemos introducir en ambos casos lo que indique el proveedor, mientras
que si sólo vamos a navegar por Infovía (sin salir a Internet) es suficiente
con poner infovia
como usuario genérico e infovia
como clave.
/etc/ppp/infovia.chat
contiene el guión que utilizará chat
en su
diálogo con el modem. Un ejemplo de su contenido podría ser:
TIMEOUT 6 ABORT '\nBUSY\r' ABORT '\nNO ANSWER\r' ABORT '\nNO CARRIER\r' ABORT '\nRING\r\n\r\RING\r' ABORT '\nNO DIALTONE\r' '' ATDP055 'CONNECT'
En el ejemplo anterior se usa marcación por pulsos. Si fuera por tonos
sustituir ATDP
por ATDT
. Además, si al número 055 de llamada a
Infovía hubiera que añadir algún prefijo de centralita o cualquier otra
marcación especial, no hay más que incluirlo en el listado. Por su parte
el de cierre de conexión y reseteo del modem sería algo así:
/etc/ppp/infovia-off.chat:
TIMEOUT 3 '' '\r' '\r' '+++\c' '\r' ATH0 OK ATH0 OK
Esta seccion es la que previsiblemente cambiara con mas frecuencia, dado el fuerte auge de Linux y la consiguiente mayor disponibilidad de material para Linux en castellano. Esto es solo un ejemplo para empezar en esta primera edicion...
En Sevilla, el servidor más veterano, con mirrors de LDP/WWW, Slackware, Sunsite, Linux/PPC (la sede para Europa de linuxppc.org), MkLinux (Linux para Powermac), RedHat (para PC y Alpha), etc.
En Valladolid, con mirrors de LDP/WWW, Slackware, Sunsite y manuales traducidos.
En Madrid, traducciones de las How-To.
Traducción del manual del sistema.
Aparte de las numerosísimas listas de correo en inglés (desde las más genéricas hasta las más especializadas en temas muy concretos), en España hay actualmente dos listas dedicadas a Linux en general:
Si Internet te queda muy lejos pero lo tuyo es Fidonet, entonces probablemente ya sabrás que existe un area R34.LINUX con bastante actividad (¡es una de las areas más animadas! ;^) Mucha de la información distribuida en Internet tiene su réplica en Fidonet, además del valioso soporte mútuo entre los propios usuarios.
Poco a poco va creciendo el numero de empresas que prestan atencion al pujante Linux y desarrollan aplicaciones, ofrecen soporte tecnico y/o venden algunas de las distribuciones en CDROM que se mencionaban anteriormente.
Copyright (c) Gonzalo García- Agulló 1996. Elaborado a partir de experiencia propia y de información recopilada a través de Internet. Vayan mis agradecimientos para Paco Culebras Amigo y Antonio L. Delgado Gonzalez, buenos linuxeros alla donde los haya.
Este documento se publica bajo la Licencia General GNU, lo que permite su libre distribución gratuita siempre que se conserve en su integridad y se retenga el copyright original.
Versión de la traducción : Mireya
La traducción fue dirigida por Andrés Ramirez y no habria acabado nunca sin la ayuda de ACASTC (http://perso.magic.fr/acastc), y la colaboración de : No informaticos