1 Instalación
1.1 Comenzar la instalación
1.1.1 La
Interfaz de Uusario del Programa de instalación
1.1.2 Usar el teclado para moverse
1.1.3 Consolas Virtuales
1.2 Iniciando el programa de
instalación
1.3 Empezando la instalación
1.3.1 Elegir un Lenguage
1.3.2 Seleccionar Teclado
1.4 Instalación desde
dispositivos locales
1.4.1 Seleccionar un
método de instalación
1.4.2 Instalar desde un CDROM
1.5 Tipo de Instalación
1.6 Crear particiones
1.6.1 Usando Disk Druid
1.6.2 Sección particiones Actuales
1.6.3 Sección botones de Disk Druid
1.7 Formatear particiones
1.8 Seleccionar e instalar paquetes
2 Administrando linux con linuxconf
2.1 Configuración del sistema con Linuxconf
2.1.1 Ejecutando Linuxconf
2.1.1.1 Interfaz de Menú en árbol
2.1.1.2 Habilitar Acceso Basado en Web a Linuxconf
2.1.1.3 Añadir Cuentas de Usuario -- Referencia Rápida
2.1.1.4 Añadir Cuentas de Usuario -- Repaso General
2.1.1.5 Modificar una Cuenta de Usuario -- Referencia Rápida
2.1.1.6 Modificar una Cuenta de Usuario -- Repaso General
2.1.1.7 Cambiar la Password a un Usuario -- Referencia Rápida
2.1.1.8 Cambiar la Password a un Usuario -- Repaso General
2.1.1.9 Cambiar la Password de root -- Referencia Rápida
2.1.1.10 Cambiar la Password de root -- Repaso General
2.1.1.11 Deshabilitar una Cuenta de Usuario -- Referencia Rápida
2.1.1.12 Deshabilitar una Cuenta de Usuario -- Repaso General
2.1.1.13 Habilitar una Cuenta de Usuario
2.1.1.14 Borrar una Cuenta de Usuario -- Referencia Rápida
2.1.2
2.1.2.1 Crear un Grupo -- Referencia Rápida
2.1.2.2 Crear un Grupo -- Repaso General
2.1.2.3 Borrar un Grupo -- Referencia Rápida
2.1.2.4 Borrar un Grupo -- Repaso General
2.1.2.5 Modificar la Pertenencia a un Grupo
2.1.2.6 Modificar la Pertenencia a un Grupo -- Referencia Rápida
2.1.2.7 Modificar la Pertenencia a un Grupo -- Referencia Rápida
2.1.2.8 Modificar la Pertenencia a un Grupo -- Repaso General
2.1.3
2.1.3.1 Revisar el Sistema de Ficheros
Actual -- Referencia Rápida
2.1.3.2 Examinar el Sistema de Ficheros
Actual -- Repaso General
2.1.3.3 Montar Sistemas de Ficheros NFS --
Referencia Rápida
2.1.3.4 Montar Sistemas de Ficheros NFS --
Repaso General
2.1.4
2.1.4.1 Añadir conexiones Modem/PPP/SLIP -- Referencia
Rápida
2.1.4.2 Añadir conexiones Modem/PPP/SLIP -- Repaso General
2.1.4.3 Modificar la Configuración PPP ó SLIP -- Referencia Rápida
2.1.4.4 Modificar una Configuración PPP ó SLIP -- Repaso General
2.1.4.5 Otras Conexiones de Red -- Referencia Rápida
2.1.4.6 Otras Conexiones de Red -- Repaso General
2.1.4.7 Especificación del Servidor de Nombres
2.1.4.8 Fecha y Hora
3 Preguntas más corrientes
3.1 Cuestiones Básicas
3.1.1 Nombres de Ficheros
3.1.2 ¿Para qué son todos esos directorios?
3.1.3 ¿Cómo ejecuto un programa?
3.1.4 ¿Cómo cambio el PATH?
3.1.5 ¿Cómo se apaga el ordenador?
3.1.6 ¿Cómo tratar un programa que se ha quedado colgado?
3.2 Usuarios, passwords, permisos de ficheros y seguridad
3.2.1 Directorios home y root, añadir usuarios
3.2.2 Seguridad y passwords
3.2.3 He olvidado la password de root
3.2.4 Tengo problemas con los permisos de ficheros. ¿Cómo
funcionan la propiedad y los permisos de los ficheros?
3.2.5 Mi reproductor de mp3 se ahoga. El sonido suena como
interrumpido (cómo establecer el suid a un fichero)
3.3 Agenda de tareas con "at" y "cron"
3.3.1 ¿Cómo ejecutar un comando a una hora determinada?
3.3.2 ¿Cómo se configura cron?
3.4 Espacio de swap
3.4.1 Particiones de swap
3.4.2 Ficheros de swap
3.5 Shell
3.5.1 ¿Qué es una shell? ¿Cuál uso?
3.5.2 ¿Cómo se escriben scripts de shell?
3.6 Un poco de programación
3.6.1 ¿Cómo se escribe un programa en Python?
3.6.2 ¿Cómo se escribe un programa para una interfaz gráfica (GUI)
(usando tcl)?
3.6.3 ¿Cómo se escribe un script para perl?
3.6.4 ¿Cómo se compila un programa en C?
4 FAQ del Administrador de Linux Neófito
4.1 aspectos de LILO
4.1.1 Linux no detecta toda mi memoria
4.1.2 LILO muestra únicamente LI (ó LIL) y se cuelga
4.1.3 Cómo cambiar el sistema ppor defecto que carga LILO
durante el arranque
4.1.4 El prompt de LILO tarda muy poco (ó mucho) en desaparecer
durante el arranque
4.1.5 desinstalar Linux
4.2 Accediendo a los dispositivos
4.2.1 Dóde estan los dispositivos
4.2.2 Cómo acceder al CDROM
4.2.3 Cómo montar un floppy, dispositivo zip, partición
dos, ó un dispositivo en red
4.2.4 Cómo montar un sistema de ficheros remoto de MS Windows con
Samba
4.2.5 Un camino rápido para acceder a un floppy de DOS/Windows
4.2.6 Mount y los usuarios normales
4.2.7 Un alias para simplificar el uso de "mount"
4.2.8 Automatizar mount
4.2.9 Cómo reconocer un dispositivo zip
4.2.10 Podemos usar IO en discos duros a 32-bit?
4.3 Trabajando con las X-windows
4.3.1 Cómo instalar kde en Esware (si no se seleccionaron
al instalar)
4.3.2 Cómo configurar la tarjeta de video, el monitor y el ratón para
el servidor X
4.3.3 Cómo ejecutar X-windows remotamente
4.3.4 Se pueden tener varias sesiones de X-windows
corriendo simultáneamente?
4.3.5 Podemos tener un login gráfico?
4.5 Impresora y Tarjeta de sonido
4.4.1 Cómo configurar la tarjeta de sonido
4.4.2 Cómo configurar la impresora
4.4.3 Word Perfect 8 no tiene drivers para mi impresora
4.6 Configurar la red
4.5.1 Merece la pena tener una red doméstica?
4.5.2 Cómo configurar una red en casa
4.5.3 Tengo problemas configurando mi conexión con Internet
4.5.4 Cómo navegar por la red sin un modem
4.5.5 Cómo usar Samba
4.5.6 Sendmail
4.5.7 Un servidor web sencillo (Apache)
4.5.8 Un servidor ftp sencillo
5. Cómo actualizar el kernel
5.1 Introducción
5.2 Qué es el kernel
5.3 Por qué actualizarlo
5.4 Dónde conseguir un nuevo kernel
5.5 ¿Debemos bajarnos todas las fuentes ó solo el parche?
5.6 Descomprimir el fichero descargado
5.6.1 Descomprimir el parche
5.6.2 Descomprimir las fuentes al completo
5.7 Compilar el nuevo kernel
5.7.1 Usar el parche
5.7.2 Usar las fuentes
5.8 Instalar el nuevo kernel
5.9 La próxima actualización
5.10 A la atención de los usarios de Esware
5.11 Acerca del autor
6. Principales aplicaciones de Linux, propietarias ó no:
6.1 Word Perfect 8 para Linux
6.2 Star Office Suite
6.3 Applixware
6.4 Hojas de Cálculo
6.5 Bases de Datos
6.6 CAD
6.7 Netscape
Atajos y comandos de Linux:
A. Atajos básicos para Linux
B. Comandos usuales de LINUX--system info
C. Operaciones básicas
D. Control de Procesos
E. Comandos Básicos de Administración
F.Herramientas para trabajar en Red
G.Herramientas de Desarrollo y Lenguajes de
Programación
1 Instalación
1.1 Comenzar la instalación
Explicamos aquí como comenzar el proceso de instalación. Estos son los puntos que
pretendemos cubrir:
Familiarizarnos con el proceso de instalación.
Arrancar el programa de instalción.
Seleccionar un método de instalación.
Cuando terminemos, tendremos un sistema Linux instalado en nuestro equipo.
1.1.1 La
Interfaz de Uusario del Programa de instalación
El programa de instalación usa una interfaz de usuario en modo texto que incluye la
mayoría de los elementos interactivos de una interfaz gráfica. Aunque puede parecer un
poco diferente de otras interfaces "más gráficas". Seguido damos una
descripción de estos elementos:
Ventana: También llamadas "cuadros de diálogo", aparecerán en su pantalla
durante el proceso de instalación. A veces, una ventana puede superponerse a otra. En
estos casos, solo puede interactuar con la última ventana que se le haya abierto. Cuando
termine con esa ventana desaparecerá, permitiéndole continuar con la ventana que estaba
debajo.
Texto de Entrada: Son zonas donde puede insertar información requerida por el proceso
de instalación. Cuando el cursor se situe en una de estas zonas, podrá proporcionar la
información que se le pide.
Caja de Selección: Le permiten seleccionar ó deseleccionar una característica
particular ofrecida por el proceso de instalación. Cuando el cursor esté posicionado
sobre ella, pulse "espacio" para cambiar el estado de seleccionado ó no
seleccionado.
Ventanas de Texto: son zonas dedicadas a presentar texto explicativo ó de otra
naturaleza. Pueden contener otros elementos gráficos, como Textos de Entrada, Cajas de
Selección... A veces no caben en una sola pantalla, en cuyo caso, puede usar las teclas
de cursor para desplazarse por su contenido.
Barra de Despalzamiento: le dan una información visual de su ubicación dentro de un
elemento gráfico que ocupa más de una pantalla. Su posición actual la marca un
carácter "#", que se desplazará conforme ud. se mueva por el elemento.
Botón: son el métod primario de interactividad. "Presionando" estos botones
progresará a través de las diversas pantallas que forman el proceso de instalación. Se
les puede presionar cuando están resaltados por el cursor.
Cursor: aunque no es un elemento gráfico, se le usa para seleccionar (e interactuar)
con algun elemento gráfico en particular. Al moverlo de un elemento a otro, puede hacer
que el elemento al que accede cambie de color, ó desaparecer.
Como puede imaginar de estas descripciones, el proceso de instalación se basa en
teclado, no en el ratón. Esto se debe a que este proceso debe ejecutarse en una amplia
variedad de máquinas, alguna de ellas puede no tener ratón.
1.1.2 Usar el teclado para moverse
Un juego simple de teclas le permitirá recorrer todo el proceso de instalación.
Usará las Teclas de Cursor. Tabulador y Alt+Tab le permitirán circular por las opciones
dentro de una pantalla. En la mayoría de ellas hay una descripción de las teclas
disponibles en la zona inferior de la pantalla.
Para "presionar" un botón, situe el cursor sobre él (p.e. Usando Tab) y
presione "espacio" ó "enter". Para seleccionar un elemento de entre
una lista, mueva el cursor hasta el elemento deseado y presione "enter". Para
seleccionar un elemento con una Caja de Selección, mueva el cursor hasta la Caja y
presione "espacio" para seleccionarlo, si quiere deseleccionarlo, presione
"espacio" otra vez.
La tecla F12 acepta los valores actuales de la pantalla y le lleva a la siguiente.
Normalmente es lo mismo que presionar el botón "ok".
Observe: a menos que un cuadro de diálogo espere su información, no presione teclas
caprichosamente durante la instalación, puede resultar en efectos no predecibles.
1.1.3 Consolas Virtuales
Durante la instalación, ud interactuará fundamentalmente con una pantalla que va
progresando por las diversas etapas, y esto es lo que la mayoría de usuarios ve, pero hay
otras cuatro consolas virtuales que le dan información del proceso y le permiten tomar
otras acciones. Puede conmutar entre estas cinco consolas virtuales con una combinación
de teclas.
Estas consolas pueden serle muy útiles si llega a tener problemas durante la
instalación. Los mensajes presentados le pueden ayudar a localizar el problema y buscarle
solución.
En general, puede hacerlo todo desde la consola #1, pero si tiene problemas ó
curiosidad, siéntase libre de mirarlas.
#1 Alt-F1 dialogo del proceso de instalación.
#2 Alt-F2 consola de comandos.
#3 Alt-F3 mensages del programa de instalación.
#4 Alt-F4 mensajes del sistema.
#5 Alt-F5 otros mensajes.
1.2 Iniciando el programa
de instalación
Inserte el disquete de arranque en la primera disquetera y reinicie ( ó reinicie desde
la unidad de CDROM si su BIOS se lo permite).
Tras un poco de tiempo, una pantalla aparece con un prompt "boot:". Esta
pantalla le da información sobre una variedad de opciones de arranque. Cada opción tiene
además otra pantalla de ayuda asociada. Para llegar a ellas, lea las teclas disponibles
abajo en la pantalla.
Dos cuestiones importantes:
La pantalla inicial arrancará automáticamente el proceso de instalación si ud. no
toma ninguan acción en 1 minuto. Para eliminar esta característica, presiones alguna de
las teclas de ayuda.
Si busca alguna pantalla de ayuda, tardará un poco en aparecer, según la lea del
disquete.
Normalmente solo necesitará presionar "enter" para arrancar. Observe los
mensajes para ver si Linux detecta su hardware. Si no lo hace adecuadamente, puede que
tenga que reiniciar la instalación en modo "experto".
Este modo deshabilita la mayoría de las pruebas sobre el hardware y le permite entrar
las opciones necesarias para los drivers que se cargen durante la instalación. Para
acceder a este modo, entre el comando de arranque:
boot: expert
Observe que los mensajes iniciales no tienen referencias a dispositivos SCSI ó
tarjetas de red. Estos dispositivos se soportan por drivers que serán cargados más
adelante durante la instalación.
También se le pueden pasar opciones al kernel durante el arranque de la instalación,
por ejemplo, para decirle que use toda la memoria en un sistema con 128 MB RAM,
entraremos:
boot: linux mem=128M
Sin embargo, en la mayoría de los casos no será necesario pasarle estos argumentos al
kernel. El detectará la cantidad de memoria que tenga. Para comprobar que se esta usando
toda su memoria, conmute a la consola #2 y teclee:
cat /proc/meminfo
lo que lemostrará la cantidad de memoria detectada en la forma de: total, usada,
libre, etc.
Si la MemoriaTotal no es la correcta para su sistema, necesitará modificar el fichero
lilo.conf para decirle cuanta memoria tiene. De modo que si tiene 96 MB de RAM, añadirá:
append="mem=96M"
Tras entrar cualquier opción, presione "enter" para arrancar usándola. Si
necesita especificar alguna opción para identificar su hardware, por favor, anótela, la
necesitará luego.
En las máquinas basadas en procesadores intel, aunque no puedan arrancar desde la
unidad de CDROM, puede arrancar directamente la instalación sin tener que utilizar
disquetes de arranque, si tiene p. e. MS DOS instalado, para hacerlo (suponiendo que su
unidad de CD es la d:), use los siguientes comandos:
C:\>d:
D:\>cd \dosutils
D:\dosutils>autobot.bat
Este métod no le funcionará si lo ejecuta en una ventana de DOS en windows. Si esto
le falla y no puede arrancar desde la unidad de CD, tendrá que usar el disquete de
arranque.
1.3 Empezando la instalación
Tras arrancar, se le presenta un mensaje de bienvenida, presione "enter" para
empezar la instalación. Si quiere abortarla, solo tiene que sacar el disquete y reiniciar
la máquina.
1.3.1 Elegir un Lenguage
Seguido, se le pide que seleccione un lenguage. Use las teclas e cursor para
seleccionar el que desee. Si aparece una barra de desplazamiento vertical a la derecha de
los idiomas, significa que hay más de los que caben en una sola pantalla. Verá muchas de
estas durante la instalación.
1.3.2 Seleccionar Teclado
Despues se le pide seleccionar un tipo de teclado, puede navegar por este cuadro de
diálogo igual que en el caso anterior. Cuando haya seleccionado el tipo de teclado que
desee presione "enter", este será el teclado que se use durante el resto de la
instalación y el que se establezca por defecto en el sistema cada vez que lo arranque
tras finalizar la instalación.
Si quiere cambiar el tipo de teclado, puede usar el comando
"/usr/sbin/kbdconfig" ó el programa "setup" como root.
1.4 Instalación
desde dispositivos locales
1.4.1 Seleccionar un
método de instalación
Luego se le pregunta por un método de instalación, puede elegir entre cinco tipos
básicos, pero lo más habitual es que elija CD-ROM y no FTP, HTTP, NFS que le suponen
conectado a una red ó a Internet, ni Hard Drive, que tenga la instalación en un disco
duro.
1.4.2 Instalar desde un CDROM
Cuando elija este medio, el programa le pedirá que inserte el CDROM en la unidad, una
vez que lo haya hecho, tratará de reconocerlo (primero lo intentará como IDE) si lo
encuentra y lo reconoce, seguirá con el proceso. Si no consigue reconocer la unidad, le
pedirá que se la especifique, dándole a elegir entre tipo SCSI y Otro. Pero lo normal es
que tengamos un PC con una unidad CDROM tipo IDE.
1.5 Tipo de Instalación
Si quiere hacer una instalación completa, se le pedirá un tipo:
Estación de Trabajo: esta clase le borrará automáticamente todas
las particiones Linux de todos los discos duros encontrados en el sistema. También
intentará configurar un arranque dual automáticamente tras la instalación.
Servidor: Borrará todas las particiones Linux y no Linux de todos los
discos duros
Personalizada: le da control total sobre el proceso y las particiones.
Tenga en cuenta lo que decimos de que se borran particiones automáticamente según el
tipo de instalación que elijamos.
1.6 Crear particiones
El programa de instalación debe saber dónde ubicar cada parte del sistema, por ello
necesitará que ud. le informe sobre ello.
Dado que Linux tiene un sistema de ficheros propio, "ext2", si no tenemos
alguna zona en el disco duro con ese formato, tendremos que crearlo.
Además, Linux necesita de una zona de dsico especial para realizar intercambios de
memoria, "swap", que también suele ubicarse en una partición dedicada. Que
también deberemos crear.
Para ello tenemos dos herramientas:
Disk Druid: sigue el estilo gráfico del resto de la instalación, es bastante sencilla
de usar, resulta intuitiva, tiene muchas explicaciones y proporciona suficiente
flexibilidad a casi cualquiera.
Fdisk: muy potente y versátil. Su interacción es al más puro estilo de pantallas de
texto, requiere de mas experiencia para su manejo y un no experto puede cometer errores
más fácilmente que con Disk Druid.
1.6.1 Usando Disk Druid
Le presenta una pantalla dividida en tres secciones:
1.6.2 Sección particiones
Actuales: le da información del estado actual de sus discos duros, puede
tener una barra de desplazamiento lateral, Ya sabe lo que eso significa! Hay más
particiones de las que caben de una sola vez en la zona.
Aquí se le da información diversa de cada partición:
Punto de montaje: indica en qué lugar del sistema de ficheros se montará la
partición cuando se instale Linux. (puede no tener nada) lo que significa que por defecto
Linux no tratará de montar esa determinada partición.
Dispositivo: qué disco duro contiene a la partición y cual es el número de
orden de esta.
Requerida: espacio mínimo cuando se definió la partición.
Actual: espacio que actualmente ocupa.
Tipo: si es de Linux, swap, MSDOS, W95, ...
Sección: Información de los Discos: cada linea representa a un disco en su
sistema, informando de:
Dispositivo: nombre del disco
Geom [C/HS] Geometría del disco en Cilindros/Cabezas/Sectores.
Total: espacio total disponible en el disco.
Usado: espacio ocupado.
Libre: especio sin ocupar.
Gráfica: asemeja a una barra que le informa visualmente de la ocupación del
disco.
Esta sección solo es informativa.
1.6.3 Sección botones de Disk
Druid: estos botones controlan las acciones de Disk Druid. Se les usa para
añadir, editar... particiones.
Añadir: define una partición nueva en el sistema.
Editar: modifica una partición ya definida.
Delete: borra una partición del sistema.
Ok: acepta los valores actuales de Disk Druid y trata de implementar las particiones
sobre sus discos duros.
Back: hace que Disk Druid aborte su ejecución sin realizar ninguna accion sobre sus
particiones.
Inicializar una particion de Swap
Una vez definidas las particiones que quiere en su sistema, el proceso de instalación
le pedirá inicializar una partición de swap, buscará si hay alguna con el tipo adecuado
y le propondrá usarla, a lo que ud. debe confirmar, por algo ha sido ud. mismo quien ha
definido esa partición como de swap.
1.7 Formatear particiones
Antes de proceder a la instalación del sistema, si sus particiones no están
formateadas deberá hacerlo, aunque tanto si tiene formato como si no, el proceso de
instalación le preguntará si quiere formatear las particiones que haya elejido para
instalar su sistema.
1.8 Seleccionar e instalar
paquetes
Ya estamos dispuestos y preparados para la instalación, solo nos queda decir qué
queremos instalar, para lo que se nos presentará una ventana donde podremos elegir
paquetes por grupos ó bien individualmente.
Si queremos saber qué hace un paquete determinado, posicionamos el cursor sobre su
nombre y F1 nos abrirá una nueva ventana informativa.
El número de paquetes disponibles es muy elevado, hay que tener en cuenta que
tienen dependencias unos de otros (a veces)... Sinceramente, todo el proceso le puede
llevar unos 20 a 40 minutos (instalción de paquetes incluida) dependiendo de su equipo.
Pero si se pone aquí a mirar detalladamente los paquetes que le interesen ó que le
llamen la atención, se puede pasar horas y horas en esta parte de la instalación.
Personalmente recomiendo seleccionar la casilla de selección que dice
"Todos" (si tiene disco suficiente, que puede ser 2 GB o menos), y si me apetece
ya me quitaré los que quiera. Se tarda menos y lo tienes todo instalado. No echas cosas
en falta, que si luego te instalas otros paquetes y necesitas unas librerías que no
instalaste ó cierto programa que pensaste nunca utilizarías, en unas semanas te
apetecería probar...
Con los discos de hoy en día, 2 GB me parece que merece la pena.
2 Administrando Linux con linuxconf
Linuxconf es una utilidad que le permite configurar y controlar diversos aspectos
de su sistema, y es capaz de manejar un amplio grupo de programas y tareas. Documentar
completamente linuxconf daría lugar a un libro por propio derecho y ciertamente sería
más de lo que podremos cubrir en este capítulo. Así pues, nos centraremos en aquellas
áreas que cubren tareas comunes tales como añadir nuevos usuarios y conectarse a la red.
Más información sobre linuxconf, incluyendo su estado, versión más reciente
release, y más puede encontrarse en la página del Proyecto Linuxconf:
http://www.solucorp.qc.ca/linuxconf/
Este sitio web incluye buena y abundante información sobre linuxconf incluyendo
descripción, fundamentos, historia, lista de contactos y un motón de información
además del software mismo. Está mantenido por el creador de linuxconf, Jacques Gelinas,
así que es la mejor fuente de información sobre linuxconf en Internet.
Direccionar con precisión una pantalla específica dentro de linuxconf es
sencillo, pero largo debido a la naturaleza jerárquica de linuxconf. Si la estructura
fuese un árbol genealógico, la mayoría de las pantallas para entrar datos en linuxconf,
estarían en la cuarta generación. Para describir el camino a la pantalla donde se añade
un nuevo usuario del sistema, podríamos poner:
"seleccione la opción Config en la pantalla principal, desde el menú que se
despliega seleccionar users accounts; de la pantalla users accounts que aparece,
seleccionar la opción normal y del menú que se despliega, seleccionar la opción users
accounts."
Más bien largo y poco accesible de primeras. Dada la similitud estructural con un
árbol genealógico, se podría escribir
"ventana principal abrir Users accounts, abrir Normal, ..."
Aunque resulta en un montón de "abrir". En vez de ello, usaremos el
siguiente formato:
[Config] ->
[Users accounts] ->
[Normal] ->
[User
accounts]
Es mucho más claro y conciso. Adopta la pantalla de entrada a Linuxconf como el
elemento base. Otra ventaja de este formato reside en que es independiente de la interfaz
específica que se esté usando, así siempre se sabe dónde está la información. Los
usuarios son felices, nosotros somos felices y los árboles que presionaban en contra de
largas descripciones son felices. ¿Qué podría ser mejor?
Para ejecutar Linuxconf se debe acceder como root. Si entró al sistema como algún
otro usuario, tiene dos formas de proceder. La primera es ejecutar Linuxconf mediante la
orden Linuxconf.
Será Linuxconf quien le pida la contraseña de root.
La otra opción es usar el comando su para adquirir permisos de root. Para
quienes no estén familiarizados con él, escriba su en la línea de comandos y
presione [Enter]. La contraseña que le pide es la de root. Una vez que la introduzca
correctamente, tendrá un poder cósmico fenomenal! Bueno, un control completo sobre su
sistema a cualquier nivel4. De cualquier forma, ejecute Linuxconf desde la línea de
comandos para empezar el programa.. Linuxconf tiene las siguientes interfaces de usuario:
-
Línea de Comandos
-- este modo es muy adecuado para manipular la configuración del
sistema mediante scripts.
-
Interfaz en modo texto
-- Usando el mismo estilo de interfaz que el programa de
instalación de Esware Linux, se hace fácil navegar por Linuxconf, incluso si no se está
ejecutando X.
-
Basada en X Window
-- Linuxconf se ejecuta bajo X, proporcionando una interfaz
fácil de usar para el árbol. Esta forma de navegación es nueva en Linuxconf! Véase la
subsección Interfaz de menú en árbol de la sección
8.1.1.1 para má
información. Esta el la interfaz que usaremos para las ilustraciones a lo largo de este
capítulo.
-
Basada en Web
-- Permite administración remota de una forma sencilla. Esta interfaz
es cómoda incluso con el navegador en modo texto Lynx.
Normálmente Linuxconf comenzará bien en modo texto ó en modo X, dependiendo de la
variable de entorno DISPLAY . La primera vez que ejecute Linuxconf, se presentará un
mensaje de introducción; aunque ya no se vuelve a presentar, desde la ayuda de la
pantalla principal puede obtener la misma información.
Linuxconf dispone de ayuda sensible al contexto. En cada pantalla hay un menú de ayuda
Help que le dará ayuda específica sobre esa pantalla. Tenga en cuenta que por
ahora no están completas todas las pantallas de ayuda; conforme se vayan actualizando las
pantallas de ayuda, se incluirán en subsequentes versiones de linuxconf.
La nueva versión de Linuxconf viene con una interfaz para todo el árbol completo
Encontrar el panel apropiado debería ser simple y rápido! Puede plegar y expandir
secciones haciendo click sobre los iconos de los elementos del menú. Pulse un icono una
vez para activar su submenú apropiado. Un click simple lo repliega; otro click simple lo
expandirá otra vez.
Las entradas seleccionadas aparecerán como pestañas en el panel de la derecha y
permanecerán ahí hasta que se cierren. Esto reduce enórmemente la maraña de ventanas
en su escritorio que Linuxconf ha causado típicamente. Si acaba con más pestañas de las
que desea, sólo tiene que pulsar Cancel abajo en cada pestaña para cerrarla sin
hacer cambios, ó Accept para implementarlos.
Por favor Observe: Si se ha aficcionado a la anterior interfaz de X Windows,
todavía está disponible. Para volver a ella:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Control] -> [Control files and systems] -> [Linuxconf modules]
-
De-seleccione la casilla de selección This module is active para el módulo treemenu
.
-
Pulse Accept
-
Pulse Quit
-
Rearranque Linuxconf
Por razones de seguridad, el acceso basado en web a linuxconf está deshabilitado
por defecto. Antes de intentar acceder a Linuxconf con un navegador web, deberá
habilitarlo. Desde la interfaz en modo texto, esto se hace así:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Networking] -> [Misc] -> [Linuxconf network access]
-
En el cuadro de diálogo Linuxconf html access control , entre el nombre de
cualquier máquina a la que quiera permitirle este acceso a Linuxconf. Debe incluir su
propia máquina, si desea utilizar la interfaz basada en web localmente. Los accesos Web
relacionados con linuxconf se pueden registrar en su sistema en el fichero htmlaccess.log,
para ello seleccione la casilla de selección mostrada.
-
Seleccione el botón Accept y pulse [Space]. Luego seleccione el botón Quit
de cada cuadro de diálogopara retroceder por la jerarquía de menú. Cuando llegue a un
cuadro de diálogo etiquetado Status of the system, pulse [Enter] para llevar a
cabo la acción por defecto, que es aplicar los cambios que se hayan hecho.
Para este momento, el acceso basado en web se ha habilitado. Para probarlo, vaya a uno
de los sistemas que se añadieron a la lista de control de acceso. Arranque su navegador
web, y entre la siguiente URL:
(Cambie <host> por el nombre de
su sistema, por supuesto.) Debería ver la página principal de linuxconf . Observe que
debe entrar la contraseña de root de su sistema para avanzar más allá de la primera
página.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
Seleccione Add
Entre el nombre de la cuenta y el nombre completo
Entre información en los otros campos sólo si es necesario
Seleccione Accept
Entre la contraseña inicial para la cuenta
Reentre la contraseña inicial para la cuenta en el campo Confirmation
Seleccione Accept
Añadir un usuario es una de las tareas básicas que más se encontrará
administrando su sistema. Para añadir un usuario:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts] Esto abrirá
la pestaña Users accounts.
-
Si tiene más de 15 cuentas en el sistema, Linuxconf le presentará una pantalla de
filtrado.
Puede usarla para seleccionar un rango de cuentas menor que la lista completa. Para ver
toda la lista, seleccione Accept sin cambiar ninguno de los parámetros. Para una
información detallada sobre los diversos filtros, seleccione el botón Help en la
pantalla Filter control .
-
Seleccione Add. Esto abrirá la pestaña User account creation.
La pestaña User account creation es donde se entra toda la información sobre
la nueva cuenta. Hay algunos campos de los que debería estar pendiente, algunos son
requeridos, otros son opcionales.
Campos Requeridos:
-
Login name
-- el nombre de la cuenta. Normalmente son letras minúsculas. Nombre ó
apellidos, iniciales ó alguna combinación de ellos son login names muy comunes. Para un
usuario llamado John T. Smith, ``smith'', ``john'', ``jts'', ó ``jsmith'' serín nombres
de cuenta corrientes. Por supuesto que ``spike'' ó cualquier otra cosa también valdrí.
También se permiten números de forma que ``jts2'' sería válido para una segunda
persona con las mismas iniciales. No hay valor por defecto para este campo.
Campos Opcionales:
-
Full name
-- es el nombre del usuario ó de la cuenta. Para un individuo, sería su
nombre, por ejemplo ``John T. Smith'' . Si la cuenta representa un cargo en vez de una
persona, el campo full name podría ser el título. Así una cuenta llamada ``webmaster''
podría tener como full name ``Esware Webmaster'' ó ``Webmaster''. No hay valor por
defecto para este campo.
-
group
-- aquí se especifica el grupo asociado con la cuenta. Por defecto se toma un
grupo con nombre el mismo que el login name. Así ``jsmith'' pertenecería al grupo
``jsmith''.
-
Supplementary groups
-- aquí puede especificar otros grupos. Le sugerimos que si
quiere añadir un usuario a un grupo ó grupos, lo haga aquí, mejor que cambiar el campo group
. Los nombres de los grupos deben separarse por espacios. El valor por defecto para este
campo es nada, significando que no se pertenece a ningún grupo suplementario.
-
Home directory
-- especifica el directorio home ó login para la cuenta. El valor
por defecto es /home/login, donde
login se reemplaza por el login name. El
directorio home es su punto de partida en la estructura de directorios cuando accede al
sistema, ó en X, lo mismo para cada ventana xterm abierta. También es donde se guardan
los ficheros de preferencias de la cuenta.
-
Command interpreter
-- especifica la ubicación del intérprete de comandos. A los
intérpretes de comandos se les suele llamar shells. El valor por defecto se muestra en la
caja desplegable.
-
User ID
-- el número asociado con cada cuenta de usuario. Se genera
automáticamente por el sistema al crear la cuenta.
La pantalla User account creation tiene varios campos; sólo se requiere el
login name, aunque se recomienda encarecidamente rellenar el campo Full name . Una
vez que haya entrado el login name y cualquier otra información que desee seleccione el
botón Accept abajo en la pantalla. Si decide no crear una nueva cuenta, presione Cancel
.
Tras pulsar sobre Accept linuxconf le pedirá que entre una password. También
hay un campo llamado Confirmation donde deberá teclear la password otra vez. Esto
se hace así para evitarle errores al teclear la password. Las passwords deben tener al
menos 6 caracteres . Pueden contener números así como una mezcla de letras mayúsculas y
minúsculas. Pulse Accept cuando haya acabado.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
Seleccione user account
Modifique las entradas como desee
Seleccione Accept
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts] Esto abrirá
la pestaña Users accounts.
Si tiene más de 15 cuentas en el sistema, Linuxconf le prsentará una pantalla de
filtrado.
Puede usarla para seleccionar un rango de cuentas menor que la lista completa. Para ver
toda la lista, seleccione Accept sin cambiar ninguno de los parámetros. Para una
información detallada sobre los diversos filtros, seleccione el botón Help en la
pantalla Filter control .
Seleccione la cuenta que desee modificar. Esto abrirá la pestaña User information
.
En la pantalla User information , la información se puede cambiar a voluntad.
Para implementar los cambios seleccione Accept. Si decide no realizar cambios
seleccione Cancel. Esto le garantiza que no se hace ningún cambio.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
Seleccione la cuenta
Seleccione Passwd
Entre la nueva password para el usuario
Reentre esa password en el campo Confirmation
Seleccione Accept
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts] Esto abrirá
la pestaña Users accounts.
Si tiene más de 15 cuentas en el sistema, Linuxconf le prsentará una pantalla de
filtrado.
Puede usarla para seleccionar un rango de cuentas menor que la lista completa. Para ver
toda la lista, seleccione Accept sin cambiar ninguno de los parámetros. Para una
información detallada sobre los diversos filtros, seleccione el botón Help en la
pantalla Filter control .
Seleccione la cuenta cuya password desea cambiar. Esto abrirá la pestaña User
information.
Seleccione Passwd de las opciones abajo en la pantalla.
Linuxconf le pedirá que entre la nueva password. También hay un campo llamado Confirmation
donde deberá teclear la password otra vez. Esto se hace así para evitarle errores al
teclear la password. Las passwords deben tener al menos 6 caracteres . Pueden contener
números así como una mezcla de letras mayúsculas y minúsculas. Si decide no realizar
cambio alguno, pulse Cancel cuando haya acabado. Una vez que haya entrado la nueva
password seleccione Accept.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [Change root password]
Entre la password de root actual
Seleccione Accept
Entre la nueva password para root
Reentre la nueva password para root en el campo Confirmation
Seleccione Accept
El cambio de la password de root no se hace de la misma forma que para otros
usuarios. Debido tanto a la importancia como a las consideraciones de seguridad relativas
al acceso como root , linuxconf le pide que verifique que ud. tiene acceso a la cuenta de
root.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [Change root password]
La pantalla es un poco confusa porque ni el título, ni la descripción explican
realmente el propósito de la pantalla. Parece que linuxconf le pregunte por la nueva
password, que no es lo que está haciendo. En vez de ello, linuxconf pide la password
actual de root para verificar que se tiene acceso a la cuenta de root. Para ejecutar
linuxconf se precisa tener acceso como root, pero una vez en ejcución alguien puede
entrar al sistema si la persona que está ejecutando linuxconf se levanta por un minuto.
Los problemas potenciales son muchos! Si la persona que estaba ejecutando linuxconf , hace
log out como root, no podrá recuperarlo. Un fallo en esta validación daría poder total
sobre el sistema a quien haya cambiado la password de root.
Una vez que haya entrado la password de root actual, se le pedirá la nueva password.
Hay un campo llamado Confirmation donde deberá teclear la password otra vez. Esto se hace así
para evitarle errores al teclear la password. Las passwords deben tener al menos 6
caracteres . Pueden contener números así como una mezcla de letras mayúsculas y
minúsculas. Si decide no cambiar la password de root, pulse Cancel. Una vez que
haya acabado seleccione Accept.El cambio tiene lugar inmediatamente y es efectivo
no solo para acceder como root, sino también para cambiar a root con el comando su.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
Seleccione la cuenta
De-seleccione la caja de selección the account is enabled
Seleccione Accept
¿Por qué deshabilitar una cuenta? Buena pregunta! No hay una respuesta sencilla,
pero podemos dar algunas razones de por qué está disponible esta opción. La razón
principal es la seguridad. Por ejemplo, puede haber creado una cuenta especial para que la
usen clientes, colaboradores, ó amigos para acceder a ficheros específicos de su
sistema. Esta cuenta se usa de vez en cuando, pero debería usarse cuando se necesite.
Dejar por ahí una cuenta que no se usa es un objetivo para gente que quisiera irrumpir en
su sitema. Borrarla le obliga a volverla a crear cada vez que quiera usarla.
Deshabilitarla resuelve ambos problemas y lo único que tiene que hacer es seleccionar ó
deseleccionar una casilla de verificación.
Para deshabilitar una cuenta:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
-
Deseleccione la casilla de verificación que establece que The account is enabled.
Seleccione el botón choiceAccept abajo en la ventana y ya está todo hecho.
La cuenta está deshabilitada y se puede habilitar posteriormente de forma similar.
Por defecto, todas las cuentas recien creadas están habilitadas. Si necesita
habilitar una cuenta, puede hacerlo usando Linuxconf.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
-
Seleccione la cuenta que quiere habilitar.
-
Seleccione la casilla de verificación The account is enabled y después
seleccione el botón Accept abajo en la pantalla.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [User accounts]
Seleccione la cuenta que quiere borrar
En la pantalla User information seleccione Del
En la pantalla Deleting account... , elija la opción apropiada para los datos de
la cuenta
Seleccione Accept
Por favor Observe: Aunque hay un par de opciones que le permiten mantener
ficheros asociados con una cuenta, una vez borrado cualquier fichero ó información ya no
lo podrá recuperar. Tenga cuidado cuando use esta opción!
Para borrar una cuenta:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [User accounts]
-
En la pantalla User accounts seleccione la
cuenta que desee borrar
-
Abajo de la pantalla User information seleccione Del para
borrar la cuenta.
Linuxconf le presentará una lista de opciones.
La opción por defecto es guardar los datos de la cuenta. Esta opción tiene los
efectos siguientes:
-
Elimina al usuario de la lista de cuentas de usuario
-
Coje todo lo que haya en el directorio home del usuario y lo guarda (usando tar y
compresión gzip), como un fichero en un directorio llamado oldaccounts. Para una
cuenta llamada useraccount el nombre del fichero sería:
useraccount-1998-10-10-497.tar.gz
La fecha indica cuándo se borró la cuenta, y el número siguiente es el process ID
del proceso que llevó a cabo el borrado. El directorio oldaccounts se crea en el
mismo lugar que los directorios de usuarios, y se crea automáticamente la primera vez que
elimine una cuenta usando esta opción.
-
Los ficheros propiedad del usuario, pero que no se encuentran en el directorio home del
usuario permanecen. El fichero es propiedad del user ID (UID) de la cuenta borrada. Si
crea una cuenta nueva y específicamente le asigna el UID de una cuenta borrada, se
convertirá en el propietario de todos esos ficheros que permanecían en el sistema.
Seleccionar Delete the account's data en la pantalla
Deleting account <accountname> hará que:
-
Se elimine el usuario de la lista de cuentas de usuario
-
Se elimine el directorio home del usuario y todo su contenido
Por favor Observe:Los ficheros propiedad del usuario, pero que no se encuentran en
el directorio home del usuario permanecen. El fichero es propiedad del user ID (UID) de la
cuenta borrada. Si crea una cuenta nueva y específicamente le asigna el UID de una cuenta
borrada, se convertirá en el propietario de todos esos ficheros que permanecían
''huérfanos'' en el sistema.
Seleccionar Leave the account's data in place en la pantalla
Deleting account
<accountname> hará que:
-
Se elimine el usuario de la lista de cuentas de usuario
-
Se deja el directorio home del usuario (con todos sus ficheros) intactos.
Por favor Observe:Los ficheros propiedad del usuario, pero que no se encuentran en
el directorio home del usuario permanecen. El fichero es propiedad del user ID (UID) de la
cuenta borrada. Si crea una cuenta nueva y específicamente le asigna el UID de una cuenta
borrada, se convertirá en el propietario de todos esos ficheros que permanecían
''huérfanos'' en el sistema.
Todo usuario pertenece a uno ó más grupos. De la misma forma que un determinado
fichero tiene un propietario específico, cada fichero pertenece también a un grupo
particular. Ese grupo puede ser el mismo al que pertenece el propietario del fichero, ó
puede ser un grupo compartido por todos los usuarios. Los permisos de lectura, escritura
ó ejecución de un fichero se pueden asignar a un grupo; independientemente de los
permisos del propietario. Por ejemplo, el propietario de un fichero puede escribir en él,
mientras que los otros miembros del grupo sólo pueden leerlo.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [Group definition]
Seleccione Add
Entre el nombre del Grupo , y opcionalmente modifique sus miembros
Seleccione Accept
Para crear un grupo nuevo:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [Group definition]
Si tiene más de 15 grupos, se le dará la opción de seleccionar grupos proporcionando
un prefijo.
Se puede añadir un grupo directamente desde esta pantalla, ó ir a la pantalla User
groups . Para ir seleccione choiceAccept con ó sin prefijo, para añadir un grupo
nuevo pulse choiceAdd.
Seleccione Add abajo en la pantalla User groups .
Entre un mombre para el grupo. Si quiere especificar miembros para el grupo, puede
hacerlo en el campo Alternate members . La lista de usuarios se delimita con
espacios, de forma que cada nombre de usuario debe tener un espacio entre él y el
siguiente. Cuando haya terminado, seleccione Accept y se creará el grupo.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [Group definitions]
Seleccione el grupo que desee borrar
Seleccione Del
Confirme la operación
Para borrar un grupo:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [Group definitions]
Si tiene más de 15 grupos, se le
presentará una pantalla para filtrarlos para delimitar su elección de grupos mediante especificar un prefijo.
-
Con ó sin prefijo, seleccione Accept abajo en la pantalla.
-
En la pantalla User groups seleccione el grupo que desee borrar.
-
Se le presentará la pantalla Group specification
-
Seleccione Del para borrar el grupo. Linuxconf entonces le pedirá que confirme
la operación. Elija yes para borrar el grupo.
Los ficheros del grupo permanecerán y únicamente sus respectivos dueños tendrán
control sobre ellos. El nombre del grupo se reemplazará por el ID del grupo borrado. Los
ficheros se pueden asignar a otros grupos mediante el comando chgrp. Para más
información sobre chgrp teclee el comando info chgrp ó man chgrp desde la línea de
comandos. Si se crea un grupo nuevo y se le asigna el ID de un grupo borrado, entonces
este nuevo grupo tendrá acceso a los ficheros del grupo borrado. No se preocupe,
Linuxconf no recicla los números ID de los grupos borrados ni de los usuarios, así que
esto no ocurrirá accidentalmente.
Hay dos formas para modificar la lista de usuarios que pertenencen a un grupo. Puede
modificar cada cuenta de usuario por separado, ó modificar la definición del grupo. En
general, el camino más rápido es modificar las propiedades del grupo. Si quiere
modificar más datos aparte del grupo al que pertenecen, entonces deberá modificar cada
cuenta de usuario por separado.
- Bajo Grupos
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [Group definitions]
Seleccione el grupo al que le quiere añadir ó eliminar usuarios
Añada ó elimine usuarios del campo Alternate members(opt) ; asegúrese de que
los nombres de usuarios están separados por un carácter de espacio`` ''
5. Seleccione Accept
- Bajo Usuarios
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
Seleccione el usuario al que le quiere añadir ó eliminar grupos
Ajuste el campo Supplementary groups adecuadamente; asegúrese de que todos los
nombres de grupos están separados por un carácter de espacio `` ''
Seleccione Accept
Repita los pasos 3 a 5 para cada usuario que quiera modificar
Empezaremos por detallar el método de definición de grupos.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [Group definitions]
Si tiene más de 15 grupos, se le
presentará una pantalla para filtrarlos para delimitar su elección de grupos mediante especificar un prefijo.
-
Con ó sin prefijo, seleccione Accept abajo en la pantalla.
-
Seleccione el grupo que desee modificar. Esto abrirá la pantalla Group specification
.
-
Añada ó elimine cada usuario del campo Alternate members . Asegúrese de que
cada nombre de usuario está separado de los demás por un carácter de espacio `` '' .
-
Una vez que haya hecho esto, seleccione Accept abajo en la pantalla.
Esto actualiza automáticamente las cuentas de usuario con el grupo que se muestra en
el campo Supplementary groups .
También se pueden añadir ó eliminar grupos modificando cada cuenta de usuario
individualmente.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Users accounts] -> [Normal] -> [User accounts]
Si tiene más de 15 cuentas en el sistema, Linuxconf le presentará una pantalla para
filtarlos.
-
En la pantalla User accounts, seleccione el usuario que desee actualizar. Se le presentará la
pantalla User information.
-
Añada ó elimine los grupos que desee del campo choiceSupplementary groups. Cada
grupo debe separarse por un carácter de espacio `` '' .
-
Una vez que haya hecho sus cambios, seleccione choiceAccept abajo de la pantalla.
Esto actualiza la definición de grupos automáticamente. Repita el proceso para cada
usuario.
Un sistema de ficheros está compuesto por ficheros y directorios, todos comenzando
desde un único directorio raiz. El directorio raiz puede contener cualquier número de
ficheros y otros directorios. Un Sistema de Fichero típico, normalmente parece un árbol
invertido con los directorios como ramas y los ficheros como hojas. Los Sistemas de
Ficheros residen en los dispositivos de almacenamiento masivo, como diskettes, discos
duros y CD-ROMs.
Por ejemplo, una unidad de diskette en DOS y Windows típicamente se referencia como
A:\. Esto describe a ambos, el dispositivo (A:), y el directorio raiz en ese dispositivo
(\). El disco duro primario en el mismo sistema se referencia típicamente como ``C''
porque la especificación para el primer disco duro es C:. Para nombrar el directorio raiz
en el dispositivo C, se usaría C:\.
Con este arreglo, hay dos Sistemas de Ficheros -- uno en A:, y el otro en C:. Para
nombrar cualquier fichero en un Sistema de Ficheros
DOS/Windows , bien debe especificar el dispositivo donde se encuentra, ó debe estar en el
dispositivo por defecto del sistema (de ahí proviene el promt C de DOS-- ese es el
dispositivo por defecto en un sistema con un único disco duro).
Con Linux, se pueden enlazar los Sistemas de Ficheros de varios dispositivos juntos en
un único y mayor Sistema de Ficheros. Esto se hace colocando uno de los Sistemas de
Ficheros ``bajo'' un directorio en el Sistema de Ficheros de otro de los dispositivos.
Así mientras que el directorio raiz de un diskette en una máquina DOS se nombra como
A:\, el mismo dispositivo en un sistema Linux puede estar accesible en /mnt/floppy.
El proceso de mezclar Sistemas de Ficheros de esta forma se conoce como
montado. Cuando se monta un dispositivo, se hace accesible a los
usuarios del sistema. El directorio ``bajo'' el cual un Sistema de Ficheros se hace
accesible se conoce como el mount point. En el ejemplo del
párrafo anterior, /mnt/floppy era el mount point de la unidad de diskette. Observe que no
hay restricciones (aparte de las convenciones comunes) para nombrar los mount points.
Podríamos haber montado el floppy en
/long/path/to/the/floppy/drive.
Algo a recordar es que todos los ficheros y directorios del dispositivo son relativos a
su mount point. Considere el siguiente ejemplo:
-
Un Sistema Linux
-
Un CD-ROM
-
/ -- directorio raiz del CD-ROM
-
/images -- un directorio de imágenes en el CD-ROM
-
/images/old -- un diredtorio de imágenes viejas
Así, si esos son los Sistemas de Ficheros individuales, y montamos el CD-ROM en /foo,
la nueva estructura de directorios del sistema operativo sería:
-
Un Sistema Linux (con el CD-ROM montado)
-
/ -- directorio raiz del sistema
-
/foo -- directorio raiz del CD-ROM
-
/foo/images --un directorio de imágenes en el CD-ROM
-
/foo/images/old -- un directorio de imágenes viejas
Para montar un Sistema de Ficheros debe tener permisos de root, acceda al sistema como
root ó use el comando su para adquirir permisos de root. Para lo último teclee su
en la línea de comandos y después entre la contraseña de root. Una vez que sea root,
teclee mount seguido del dispositivo y del mount point. Por ejemplo, para montar la
primera unidad de diskette en /mnt/floppy, se teclearía el comando mount /dev/fd0
/mnt/floppy.
Durante la instalción, Esware Linux crea /etc/fstab. Este fichero contiene
información sobre los dispositivos y sus mount points asociados. La ventaja de este
fichero es que le permite acortar sus comandos para montar 5.
Usando la información en /etc/fstab, se puede teclear mount y luego bién el mount point
ó el dispositivo. El comando mount buscará el resto de la información en /etc/fstab. Se
puede modificar el fichero a mano, ó usando linuxconf. Para utilizar linuxconf, vea las
Secciones
2.1.3.1 y
2.1.3.3.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [File systems] -> [Access local drive] ó para buscar en su
entorno de red : Abra [Config] -> [File systems] -> [Access nfs volume]
Empezaremos por ver la estructura de directorios existente.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [File systems] -> [Access local drive]
Los campos son:
-
Source
-- El hardware físico; hd quiere decir un disco duro IDE, fd una disketera,
y cdrom una unidad de CD-ROM. Si su sitema tiene unidades SCSI, se verán como sd. Más de
un dispositivo de un mismo tipo se indican mediante letras, así hda representa la primera
unidad IDE, hdb la segunda... En algunos casos hay un número después de la letra; para
discos duros, el número representa la partición, mientras que para disketeras, se
refiere a la unidad actual.
-
Mount point
-- Aquí es donde se mapea el dispositivo cuando lo monta el sistema.
-
FsType
-- Indica el tipo de sistema de ficheros. Una partición de Linux estándar
usa el tipo ext2 . El tipo vfat indica un sistema de ficheros DOS con soporte para nombres
largos, mientras que el tipo fat es para sistemas de ficheros DOS con el tipo tradicional
de nombres 8.3 . El tipo iso9660 indica una unidad de CD-ROM.
Por favor Observe: Esware Linux 1.1 puede acceder a sistemas de ficheros FAT32
usando el tipo de sistema de ficheros vfat .
Size -- Size indica el tamaño del sistema de ficheros en megabytes (M). Para
unidades removibles como diskettes y CD-ROMs el tamaño que se lista es cero.
-
Partition type
-- Una descripción del sistema de ficheros usado en esa partición.
También se puede acceder a sistemas de ficheros en otras máquinas de la red. Pudiendo
ser simples y pequeños directorios ó volúmenes enteros. No se verá información sobre
el tamaño ni el tipo de partición. Más información sobre estos sistemas de ficheros
(si la necesita) estará en:
[Config] -> [File systems] -> [Access nfs volume]
La pantalla es similar a la del Volumen Local, con diferencias notables en
la información proporcionada para cada entrada:
-
Source
-- El nombre de la máquina que sirve el sistema de ficheros, seguido por el
directorio remoto. Por ejemplo: foo:/var/spool/mail donde foo es la máquina que sirve el
directorio, y /var/spool/mail es el directorio que se sirve.
-
FsType
-- Siempre es ``nfs''.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [File systems] -> [Access nfs volume]
Seleccione Add
Entre el nombre de la máquina donde reside el sistema de ficheros
Entre el camino al sistema de ficheros remoto en el campo Volume . Por ejemplo,
/var/spool/mail
Epecifique el mount point en su sistema. Por ejemplo, /mnt/foo
Seleccione Accept
NFS quiere decir Network FileSystem. Es una forma para compartir secciones de los
sitemas de ficheros locales a través de una red. Estas secciones pueden ser tan pequeñas
como un simple directorio, ó incluir miles de ficheros en una vasta jerarquía de
directorios. Por ejemplo, muchas compañías tendrán un único servidor de correo con los
ficheros de mail de cada individuo montados via NFS bajo el sistema de ficheros local de
cada usuario.
Para montar un NFS:
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [File systems] -> [Access nfs volume]
-
En la pantalla NFS volume, seleccione Add
Los tres campos en la pestaña Base son todo de lo que se tiene que preocupar.
-
Server
-- El nombre de la máquina donde reside el sistema de ficheros a montar. Por
ejemplo, foo.bar.com.
-
Volume
-- El sistema de ficheros que quiere montar. Por ejamplo, /var/spool/mail.
-
Mount point
-- Dónde quiere montarlo en su sistema de ficheros. Por ejemplo,
/mnt/mail.
Esto es todo lo que se necesita para crear el montado. Linuxconf actualizrá su fichero
/etc/fstab adecuadamente. Si precisa más información, lea la ayuda de la pantalla Volume
specification y vea la página man para mount.
Una vez que haya entrado la información, seleccione Accept.
Lo primero que tiene que determinar es si está conectado a una red de área local,
como un grupo de ordenadores en una oficina, ó una red de área extensa, como Internet.
Antes de continuar, es importante saber qué hardware tiene y cómo pretende conectarse.
Si va a hacer dial en otro ordenador, asegúrese de que su modem está instalado y que los
cables están conectados correctamente. Si va a usar una tarjeta de red, compruebe que
está instalada y que los cables están conectados correctamente. No importa lo que
especifique en la configuración, si cada línea de teléfono y cada cable no están en su
lugar, nunca conseguirá conectarse. Empezaremos con las conexiones por modem y seguiremos
con las tarjetas de red.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Networking] -> [PPP/SLIP/PLIP]
Seleccione Add
Seleccione el tipo de conexión
Entre el número de teléfono, login name y password.
Seleccione Use PAP authentication sólo si es necesario (sólo disponible para
cuentas PPP)
Seleccione Accept
Hay cierta información que se la tiene que proporcionar su ISP (Proveedor de Servicios
de Internet) ó su administrador de sistemas antes de poder poner a funcionar su cuenta
PPP or SLIP. Algunos ISP le dan instrucciones sobre cómo configurar una conexión PPP en
un sistema Linux. Otros ISP están mal equipados para manejar individuos que usan Linx. No
se preocupe, incluso así se puede conectar; sólo necesita cierta información adicional
de su ISP. Lo que sigue es lo que necesita para conectarse con Esware Linux. Su ISP le
puede decir que no necesita esta información, ó que necesita más. Esware ha coordinado
la información necesaria usando valores por defecto inteligentes y herramientas como
linuxconf para simplificarle este proceso. A menos que le den un documento específico
para Esware Linux, sólo pida la información de más abajo. Va a necesitar:
-
La dirección IP del servidor de nombres (DNS)
-
el número de teléfono a marcar
-
su login y password
-
una dirección IP para su máquina si la red a la que se conecta no se la va a
proporcionar dinámicamente
-
Si su ISP usa ó no un método de autentificación como PAP, CHAP ó MS-CHAP. Si es
así, necesitará una clave para autentificarse. La clave será una palabra ó secuencia
de caracteres. CHAP y MS-CHAP no están soportados por linuxconf, y se usan ráramente.
Más información, que puede ser útil, pero no necesaria, incluye un servidor de
nombres secundario y un dominio donde buscar. Una vez que tenga esta información estará
listo para conectarse.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Networking] -> [PPP/SLIP/PLIP]
-
Seleccione Add
Inicialmente no habrá ninguna configuración especificada. Cuando seleccione Add
se le dará a elejir entre PPP, SLIP and PLIP.
La más habitual y la que se da por defecto es PPP. Para configurar una interfaz PPP
seleccione PPP y pulse Accept.
Se presentan los siguientes campos:
-
Phone number - número para acceder al sistema remoto
-
Modem port - indica dónde está su modem, debe estar instalado.
-
Use PAP authentication (checkbox) - actívelo si sabe que el sistema al que llama lo
requiere
-
Login name - su nombre de login para la cuenta PPP
-
Password - su password para la cuenta PPP
Observe que el título es PPP interface ppp0. ppp0 es la primera interfaz PPP,
ppp1 sería la segunda y así sucesivamente. Es importante saber qué interfaz usa si
tiene más de una. La conexiones SLIP usan sl en vez de ppp. Exceptuando la opción de
autentificación PAP, las entradas de las pantallas para añadir cuentas PPP ó SLIP son
idénticas.
Entre el número de teléfono completo de la máquina remota, asegúrese de añadir
cualquier número necesario para acceder a la línea exterior. Por ejemplo, si tiene que
marcar ``9'' y después el número, y el ordenador al que se quiere conectar tiene el
número de teléfono ``555 0111'', entonces debería entrar ``95550111''. Después se le
pregunta por el puerto de su modem. Es un menú desplegable con los puertos disponibles.
Si usa una máquina con Linux/Windows y sabe el puerto COM donde está su modem, la tabla
siguiente puede serle útil:
-
cua0 -- COM1: bajo MS-DOS
-
cua1 -- COM2: bajo MS-DOS
-
cua2 -- COM3: bajo MS-DOS
-
cua3 -- COM4: bajo MS-DOS
El login name es el de su cuenta PPP. La password que entre se verá tal cual, así que
tenga cuidado de quién está a su alrededor! Si usa autentificación PAP , seleccione la
casilla; cuando haya entrado el resto de la información requerida, seleccione Customize
abajo en la pantalla. Toda esa información se proporciona en las otras pestañas y se
pueden establecer desde la pantalla Customize, aunque es más fácil encontrar toda
la información en un solo lugar en la pantalla principal.
Seleccione la pestaña PAP y entre su nombre de usuario y la clave que le dió
su ISP en el campo Secret. El resto de valores por defecto deberían ser
suficientes, pero si lo necesita, puede editarlos usando la opción Customize.
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
Entre la contraseña de root cuando se le pida (si no se es ya root)
Abra [Config] -> [Networking] -> [PPP/SLIP/PLIP]
Seleccione la configuración a modificar
Cambie los valores deseados; la mayoría se encuentran en la pestaña Communications
Seleccione Accept
Puede editar una configuración existente así como borrarla seleccionándola de la
lista en la
Pantalla de configuraciones PPP/SLIP/PLIP .
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Networking] -> [PPP/SLIP/PLIP]
-
Se le pedirá que elija entre
las pantallas de configuración PPP/SLIP/PLIP. Seleccione la configuración que desee modificar ó borrar.
Esto abrirá la pantalla apropiada para la configuración. Si desea borrar una
configuración, el botón Del esta disponible abajo en la pantalla. El puerto del
Modem está en la pestaña Hardware y, de nuevo, es un menú desplegable. Si quiere
cambiar los valores que entró la primera vez que configuró la cuenta, seleccione la
pestaña Communication. El primer campo Send contiene su login, y el
siguiente su password. El campo Expect corresponde a las peticiones de login: y
password: , lo que explica las entradas ogin: y ord: .
Una vez hechos los cambios, puede comprobar que la configuración funciona. Seleccione Connect
abajo en la pantalla. Esto hará que se intente una conexión con el sitema remoto usando
los valores introducidos. Una vez que haya terminado de configurar y comprobar su
configuración, le recomendamos que use la utilidad usernet para controlar su conexión.
Vea la página man para usernet.
Debido al número posible de alternativas y sub-alternativas, no hay una Referencia
Rápida para esta sección.
Configurar una conexión de red ethernet requiere un tipo de configuración totalmente
distinto. Para redes token ring ó arcnet se sigue un procedimiento similar, aunque no se
van a discutir aquí.
-
Lo primero es que debe tener una tarjeta de red Ethernet instalada.
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Config] -> [Networking] -> [Client tasks] -> [Basic host information]. En
la pestaña Host name se le pedirá un nombre de máquina, que debe tener el
formato localhost.localdomain. Sáltese esta pestaña. Seleccione la pestaña Adaptor 1.
El primer elemento de esta pantalla es una casilla de verificación para indicar si
este adaptador de red está ó no. Debería estar seleccionado si es el adaptador que
pretende usar. Abajo se encuentran alternativas de modos de Configuración. Manual
significa que ud. debe proporcionar toda la información. DHCP y bootp
buscan la información de un servidor remoto del tipo adecuado. Si no está seguro sobre
la opción correcta, hable con el administrador de su red. Si es ud. el administrador y no
está seguro, escoja Manual, y considere hacer carrera en Hostelería...
Campos Requeridos para DHCP y bootp:
-
Net device - El tipo de tarjeta de red que tiene; por ejemplo, eth0 sería la entrada
apropiada para usar la primera tarjeta Ethernet.
-
Kernel module - El módulo correcto para su tarjeta de red; para más información vea
la lista abajo.
Para configurar DHCP y bootp solo se necesita especificar el Net device y el Kernel
module. Para Net device, se escoje de una lista donde el prefijo representa
tarjetas ethernet, arc especifica una tarjeta arcnet y tr especifica token ring. Para ver la lista más
actualizada, visite sitio web :
La información para la máscara de red se establece por defecto, aunque dependiendo
del tipo de red que esté implementando, ó de la que esté formando parte, puede que
necesite especificarlo. Si se está conectando a un ISP, pídale esa información.
Habitualmente será 255.255.255.0 (por defecto).
Campos requeridos para la configuración Manual Configuration:
-
Primary name + domain -- el nombre primario es el de su ordenador, el dominio es el de
su red. Por ejemplo, foo.bar.com; foo es el nombre primario y bar.com es el dominio.
-
IP address -- essta es la dirección de la máquina y sigue el patrón
x.x.x.x. Por ejemplo, 192.168.0.13
-
Net device -- tipo de tarjeta de red que se tiene; eth0 sería la entrada adecuada para
usar la primera tarjeta ethernet
-
Kernel module -- el módulo correcto para su tarjeta de red
Información sobre dispositivos de red y módulos del Kernel, se ofrece más arriba.
Valores apropiados para el nombre primario + dirección IP dependen de si está ubicando
su ordenador en una red que ya existe ó está creando una red nueva. Para conectarse a
una red que ya existe, contacte con el administrador de la red. Conectar una red a
Internet está más allá del propósito de este libro, como punto de partida
recomendamos:
TCP/IP Network Administration, 2nd Edition, por Craig Hunt (O'Reilly and Associates)
Si está estableciendo una red que
nunca estará
conectada a Internet, entonces puede elejir cualquier nombre primario + nombre de domino
que quiera, puede escoger direcciones IP (Ver Figura 78).
Direcciones disponibles
|
Ejemplos |
10.0.0.0 - 10.255.255.255
|
10.5.12.14 |
172.16.0.0 - 172.31.255.255
|
172.16.9.1, 172.28.2.5 |
192.168.0.0 - 192.168.255.255
|
192.168.0.13 |
|
|
Figura 78: Rangos de Direcciones
Privadas
Los tres juegos de direcciones de arriba, corresponden a redes de clase a, b, and c
respectivamente. Las clases se usan para dar idea del número de direcciones IP
disponibles así como el rango de direcciones usadas. Los números de arriba se han
reservado para redes privadas.
Por favor Observe : Esas direcciones IP no deben usarse si se conecta a Internet.
Si se va aconectar a Internet ó piensa que lo va a hacer en el futuro, hágase un favor y
consiga direcciones no privadas ahora.
Para establecer una conexión de red se necesita un servidor de nombres y un dominio
por defecto. El servidor de nombres se usa para traducir nombres de máquina como
private.network.com a sus correpondientes direcciones IP como 192.168.7.3. El dominio por
defecto le dice al ordenador dónde buscar si no se especifica un nombre totalmente
cualificado. Nombre totalmente cualificado significa que se da la dirección completa,
así foo.Esware.com es el nombre totalmente cualificado, mientras que el nombre de la
máquina es símplemente foo. Si establece como dominio por defecto Esware.com, podría
usar sólo el nombre de la máquina para conectarse con éxito. Por ejemplo ftp foo sería
suficiente si busca en el dominio Esware.com, y si no lo establece así debe ejecutar ftp
foo.Esware.com .
Para definir el servidor de nombres, abra [Config] -> [Networking] -> [Name
server specification (DNS)].
Los servidores de nombres se ordenan por orden de prioridad, así no es raro ver que
hay servidores de nombres a los que se les denomina primario, secundario, terciario y
sucesivamente. Cada uno de ellos debe ser una dirección IP y no un nombre. Su ordenador
no tiene medios de resolver un nombre hasta que se conecte con un servidor de nombres.
Obvio cuando se dice, pero ocasionalmente olvidado cuando alguien trata de dar una
dirección para un servidor de nombres a un ordenador.
Además de un dominio por defecto, se pueden especificar dominios donde buscar. Estos
dominios funcionan diferentemente; pueden ser hasta seis y se les ordena como a los
servidores de nombres. Sin embargo, todos toman precedencia sobre el dominio por defecto!
Téngalo en cuenta si los usa. Normalmente no se usan.
Lo único que queda por tratar es la casilla de selección para usar DNS. Si es una
pequeña red privada sin conexión a Internet, entonces con los ficheros /etc/hosts
sincronizados todo funcionará. Según vaya añadiendo más y más equipos, la complejidad
aumenta hasta que le resultará más sencillo tener una máquina como servidor de nombres.
Hay otra razón para que no se use DNS, y es que su red use NIS. Observe que NIS se
puede usar a la vez que DNS. Resumiendo, a menos que sepa por qué /etc/hosts ó NIS
sería mejor para su caso, DNS probablemente será su mejor elección.
Se pueden añadir, modificar ó borrar entradas del fichero /etc/hosts usando
linuxconf. Abra [Config] -> [Networking] -> [Misc] -> [Information about other
hosts].
Para modificar una entrada ó borrarla selecciónela. Para borrarla , seleccione Del
abajo en la pantalla host/network definition.
Para modificarla, cambie la información como necesite. Para añadir una entrada
seleccione Add abajo en la pantalla /etc/hosts screen. Esto también abre la
pantalla host/network definition.
Campos requeridos:
-
Primary name + domain
-- el nombre primario es el nombre del ordenador, mientras que
el dominio especifica la red a la que se pertenece. Por ejemplo, dado foo.bar.com, foo es
el nombre primario y bar.com es el dominio.
-
IP number
-- también conocido como Dirección IP; es la dirección de la máquina y
sigue el patrón x.x.x.x. Por ejemplo,
192.168.0.13
Campos Opcionales:
-
Alias
-- Un sinónimo para el nombre totalmente cualificado. A menudo es el mismo
que el nombre primario. Así, por ejemplo, si el nombre totalmente cualificado es
foo.bar.com, podría elejir foo como el alias.
-
Comment
-- un comentario sobre el ordenador. Por ejemplo, ``El servidor de nombres
remoto''.
Debe especificar ambos el nombre primario + dominio y la dirección IP. Los otros
campos son opcionales. Una vez que haya terminado, seleccione Accept.
Para acceder al panel de control date & time :
-
Comience Linuxconf tecleando linuxconf en la interfaz de comandos
-
Entre la contraseña de root cuando se le pida (si no se es ya root)
-
Abra [Control] -> [Date & Time]
El campo zone es una lista desplegable larga y extensiva. A menudo se la designa
por una región amplia y una ciudad ó zona en esa región. Ejemplos: Europe/Vienna y
US/Eastern. Hay una casilla de selección para Store date in CMOS in GMT format.
Las Horas se dan desde 0 (media noche) a 23 (11 PM). Los Meses mediante números. Para el
año especifique todos los cuatro dígitos. El resto de campos deberín ser
autoexplicativos.
FAQ sobre Operaciones Básicas
3.1 Cuestiones Básicas
3.1.1 Nombres de ficheros
Linux distingue mayúsculas de minúsculas. Por ejemplo: mi_ficherO, mi_fichero y
mi_FICHERO son tres ficheros diferentes. (Su password tambien, al igual que UNIX y el
lenguaje de programación "c")
Los nombres de ficheros pueden tener hasta 256 caracteres y normalmente están formados
por letras, números, "." (puntos), "_" (subrayado) y
"-" (guiones). Se permiten otros caracteres pero no se recomiendan.
Particularmente se desaconseja el uso de metacaracteres: "*" (asterisco),
"?" (interrogación), " " (espacio blanco), '$' (dólar),
'&" (ampersand), cualquier paréntesis, etc. Se debe a que los metacaracteres
tiene un significado especial para las shells de Linux.
Se prohíbe absolutamente el uso del carácter '/' (barra) en el nombre de un fichero
porque '/' se usa para representar el origen del árbol de directorios, y como
separador en nombres de camino ( igaul que '\' en DOS).
Para manipular ficheros cuyo nombre contienen metacaracteres, se puede usar un par de '
(apó>;strofos), de forma que al estar entrecomillados, el shell no interpreta su
significado. Por ejemplo, para borrar el fichero "mi fichero*" (tiene un espacio
blanco y un asterisco), se puede hacer:
rm 'mi fichero*'
Observe que hemos usado ' (apóstrofos). Las comillas " en general son menos
potentes, con ellas algunos metacarecteres pueden llegar a ser interpretados.
Seguido relacionamos el significado de algunos metacaracteres:
* = Representa cualquier secuencia de cero ó más caracteres (excepto un
"." punto inicial en el nombre de un fichero).
? = Representa un único carácter.
[abC1] = Representa un único carácter del conjunto. En este ejemplo el conjunto
es: 'a', 'b', 'C', ó '1'.
[a-z] = Representa cualquier letra en minúsculas.
[A-F] = Representa cualquier letra en mayúsculas de la A a la F en el alfabeto Latino.
[0-9] = Representa un único dígito.
[a-zA-Z0-9] = Representa cualquier letra (en minúsculas ó en mayúsculas) ó cualquier
dígito.
Ejemplos. Este comando le muestra todos los ficheros en el directorio actual,
exceptuando los que empiezen por "." punto:
ls *
Los comandos "ls" ó "dir" son equivalentes a éste. Se puede
interpretar a los ficheros cuyo nombre empieza por "." punto, como los ficheros
escondidos de DOS. Si quiere listarlos, use ls -a (listar con la
opción "all" (todos) ó ls .*. Estos ficheros son
frecuentes en los directorios de los usuarios para establecer configuraciones particulares
para cada uno de ellos.
Este comando le muestra todos los ficheros cuyo nombre contenga un punto (no al
principio):
ls *.*
Y este, cualquier fichero con dos puntos en el nombre:
ls *.*.*
Observe que Linux no usa el concepto de "extensión del nombre de un fichero"
ni otras características del nombrado de ficheros en sistemas DOS, MS Windows, como
Micros~1.doc.
Este comando le muestra todos los ficheros que empiezan por "a",
"b" ó cualquier letra mayúsculas":
ls [abA-Z]*
3.1.2 ¿Para qué son todos esos directorios?
Esto lo explica muy bien la Guía para el Administrador de Sistemas Linux (SAG), que
debería estar en su sistema. Intente:
cd /usr/doc/LDP/sag
lynx sag.html
Esto arranca el navegador en modo texto "lynx" para ver este libro en html.
Puede usar cualquier otro navegador, p. ej. Netscape para Windows. Este libro y otros del
LDP (Linux Documentation Project) son muy fáciles de leer.
Brévemente, Linux tiene cinco sistemas de ficheros, que pueden residir en un mismo ó
varios discos duros/particiones, dependiendo del tamaño y necesidades de su sistema. (Un
mismo sistema de ficheros puede distribuirse entre varios dispositivos físicos, si se
necesita)
La raiz "/" del sistema de ficheros--contiene herramientas básicas
del sistema y de mantenimiento, con ellas se debe poder arrancar el sistema y realizar
mantenimiento de emergencia y reparaciones si fuesen necesarias.
/usr--contiene todos los comandos, librerias, documentación y otros ficheros que
no cambian durante el uso normal del sistema. Tambien residen aquí las aplicaciones
principales, p. ej. Netscape.
/var--contiene ficheros que cambian: directorios de spool (colas),ficheros de
log, lock, temporales y páginas de manual formateadas.
/home--contiene ficheros de usuarios (sus configuraciones de acceso al sistema, de
entornos, documentos, datos, etc).
/proc--contiene ficheros inexistentes. no existen en el disco y no ocupan espacio
(aunque "ls -l" nos mostrará su tamaño). Al abrirlos, lo que vemos es
información que está en memoria. Se usa para acceder a información sobre el sistema.
El sistema de ficheros raiz consta de:
/bin--comandos necesarios durante el arranque, los puede usar un usuario normal.
/sbin--comandos que no se piensa que los vaya a usar un usuario normal, aunque podría.
/etc--ficheros de configuración para su sistema.
/root--directorio raiz para el administrador del sistema (denominado super-usuario ó
root).
/dev--ficheros de dispositivo. Linux interactua con cualquier dispositivo como si de un
fichero se tratase, así es muy fácil manejarlos.
/mnt--puntos de montaje para unidades removibles, particiones de otros sistemas operativos
(como dos), zonas compartidas a través de la red y cualquier otra cosa que se monte en el
sistema de ficheros temporalmente. Normalmente se estructura en directorios, uno para cada
unidad.
/lib--librerias compartidas para programas en el directorio raiz.
/boot--ficheros usados por el cargador/manejador LILO. Habitualmente se coloca aquí el
kernel de Linux, aunque se le puede poner en cualquier otro sitio, si configuramos a LILO
para que sepa encontrarlo.
/opt--aplicaciones extras grandes, como por ejemplo kde bajo Esware (con Esware, kde
se distribuye como parte de las X-windows, los ejecutables principales estan en el
directorio /usr/bin directory).
/tmp--ficheros temporales. Se pueden borrar automáticamente.
/lost+found--ficheros recuperados durante una reparación del sistema de ficheros.
Las partes más interesantes del sistema de ficheros /usr son:
/usr/X11R6--sistema X-windows.
/usr/X11--lo mismo que /usr/X11R6 (es un enlace simbólico a /usr/X11R6).
/usr/X11R6/bin --montones de pequeñas aplicaciones para X-windows, y quizás enlaces
simbólicos a algunas aplicaciones de X-windows mayores).
/usr/doc--documentación sobre Linux.
/usr/bin y /usr/sbin--similares a sus equivalentes en el sistema de ficheros raiz, pero
que no se necesitan para un arranque básico (p.e. mantenmiento de emergencia).
/usr/local--aplicaciones instaladas para los "usuarios locales", por ejemplo
Netscape (cada una en un subdirectorio).
/usr/local/bin--aplicaciones de "usuario" más pequeñas, y enlaces simbólicos
a otros ejecutables mayores ubicados en subdirectorios separados bajo /usr/local.
Es importante comprender que todos los directorios aparecen en un árbol de directorios
único, incluso si lo directorios estan contenidos en particiones diferentes, dispositivos
físicos (incluyendo floppys, etc), ó si están distribuidos por la red. Por ello, en
Linux no hay "letras de dispositivo" tipo DOS.
3.1.3¿Cómo se ejecuta un programa?
Tecleas el comando y ¿No te funciona?. Hay tres posibilidades.
Primera posibilidad: no ha tecleado el nombre del comando correctamente.
Compruebe las mayúsculas--Linux las diferencia! Por ejemplo, teclear
"Pico" ó "PICO" no arrancará el editor pico.
Segunda posibilidad: puede que el programa no se encuentre en su PATH.
Bajo Linux (ó UNIX), un ejecutable debe estar en su PATH para poderse ejecutar, y su
directorio de tabajo actual NO pertenece a su PATH. Teclee el nombre completo del
ejecutable con su ruta, ó:
cd directorio_del_programa
./nombre_programa
Debe poner el punto y la barra ó el programa NO se ejecutará (Es una medida de
seguridad poner fuera del PATH a su directorio de trabajo. Se lo pone más difícil
a los "caballos de troya".)
Puede comprobar su path mediante:
echo $PATH
Para aprender a cambiar su PATH, ó añadirle su directorio de trabajo, vea la respuesta siguiente.
Si su ejecutable se encuentra perdido en algún sitio de su árbol de directorios,
puede intentar encontrarlo así (por ejemplo):
find -name "netscape"
para encontrar un fichero que se llame "netscape". Tambié puede conseguir lo
mismo, pero más rápido mediante:
locate netscape
(Locate es más veloz porque usa una base de datos pre-construida de los ficheros en su
sistema. Esta base se actualiza por un "cron" normalmente durante la
noche, así que no puede encontrar con "locate" un fichero si desconecta su
ordenador por la noche ó si busca un fichero que acaba de instalar.)
Observe que el PATH normalmente es diferente para root que para un usario normal (el de
root incluye /sbin, /usr/sbin mientras que los usuarios no). De modo que éstos no pueden
ejecutar comandos ubicados en "sbin" a meno que tecleen la ruta completa.
También si se convierte en superusuario con el comando "su", hereda su PATH de
usuariio, y para ejecutar un comando en sbin, puede que tenga que teclear todo el path.
Tercera posibilidad: puede que el fichero no sea ejecutable. Si
fuera así, cambie los permisos para hacerlo ejecutable. p.e. (como root ó el usuario que
es propietario del fichero):
chmod a+x filename
convertirá al fichero en ejecutable por todos los usuarios. Compruebe si funcionó
mediante:
ls -l nombre_fichero
Lea esto si no ha comprendido algo de esta
"tercera posibilidad".
3.1.4 ¿Cómo se cambia el PATH?
El PATH es la lista de directorios en los que se busca para ejecutar un programa. Puede
comprobar su PATH con el comando:
echo $PATH
que, en mi sistema , muestra el siguiente PATH para el usuario "yogin":
/opt/kde/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/yogin/bin
Los ":" son un separador, de manera que el PATH de arriba representa la
siguiente lista de directroios:
/opt/kde/bin
/usr/local/bin
/bin:/usr/bin
/usr/X11R6/bin
/home/yogin/bin
Esta es la salida del comando "echo $PATH" ejecutado en mi sitema para la
cuenta "root":
/opt/kde/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
Se puede cambiar el PATH para todos los usuarios de golpe, hay que editar el fichero
/etc/profile y modificar (como root) la línea que contiene "PATH=". Yo lo hago
con el editor pico (como root):
pico -w /etc/profile
(La opción -w deshabilita el recorte de líneas largas.)
Re-entre en el sistema (salga con el comando "exit" y entre de nuevo su login
y passwd), para que los cambios tengan efecto. Para establecer un PATH individual, edite
el fichero "/home/nombre_usuario/.bashrc_profile" (observe el punto antes del
nombre del fichero -- los ficheros que empiezan por un punto se les considera invisibles,
para listarlos hay que usar "ls -a"):
Si realmente quiere tener su directorio personal en el PATH, añada un "."
(punto) a su PATH. El PATH especificado podría ser como:
PATH="$PATH:/usr/X11R6/bin:."
export PATH
Es obligatorio usar el comando "export" tras modificar PATH ó cualquier
variable de entorno del usuario.
3.1.5 ¿Cómo se apaga el ordenador?
Presione <Ctrl><Alt><Del>, espere a que el proceso de apagado se
complete, y apague su equipo cuando este rearrancando. No apague el equipo sin un cierre
correcto ó tendrá mensajes de error de disco la próxima vez que lo reinicie.
(Normalmente lo errores producidos se reparan automáticamente durante el reinicio, pero
alguna vez pueden producirse daños mayores y puede tener que reparar el sistema de
ficheros manualmente ó reinstalarlo)
Si prefiere que al presionar <Ctrl><Alt><Del> se pare (en vez de
reiniciar), lo puede configurar editando el archivo /etc/inittab. En él se especifica
algo como:
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
Cambie (como root) la opción "-r" a "-h" de modo que aparezca:
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -h now
La línea que comienza con "#" es un comentario (para los humanos, no tiene
efecto en el ordenador).
Root puede usar el comando shutdown. Este comando se puede usar
tanto para un apagado local como remoto del sistema. Lo último es muy útil si un
programa se cuelga de manera que el teclado quede inutilizable; por ejemplo:
telnet máquina_con_teclado_inoperable
[login como un usuario]
su
[proporcione la password de root]
["kill" el proceso ó]
/sbin/shutdown -rn now
Este comando apagará relamente rápido al ordenador, obivando los procedimientos
habituales (más largos)--útil si el sistema se vuelve muy inoperativo (la opción n hace
que "shutdown" mate ("kill") todos los procesos antes de reiniciar).
Ovserve que por razones de seguridad, no puede iniciar una sesión remota como root
(p.e. Usando telnet). Tiene que hacerlo como un usuario normal y después ejecutar su y proporcionar la password de root para adquirir sus privilegios.
Este comando también se puede utilizar para apagar el equipo a una determinada hora.
P.e. (como root):
/sbin/shutdown -r 23:59
reiniciará el equipo 1 minuto antes de la media noche.
Si el comando shutdown es muy largo para ud., puede intentar
estos dos, que hacen exactamente lo que su nombre indica (como root):
reboot
halt
Otra manera es conmutar su ordenador al nivel de ejecución 0 (para pararlo) ó al 6
(para reiniciarlo). Inténtelo mediante (como root):
init 0
El significado de los diferentes
niveles de ejecución se explica en /etc/inittab.
3.1.6 ¿Qué hago cuando un programa se cuelga?
Un programa con fallos se cuelga incluso bajo Linux. Sin embargo, un fallo de una
aplicación no debería afectar al sistema operativo mismo de forma que no tendría que
reiniciar su sistema a menudo. Nuestra experiencia nos dice que, cuando el sistema se
comporta mal puede ser síntoma de que hay problemas con el hardware ó con la
configuración, repetidamente hemos visto problemas con calentamientos de los pocesadores
Pentium (el ventilador no arrancaba lo rápido que debiera ó se paraba, el radiador
estaba sucio y lleno de polvo), chips de memoria defectuosos, con diferentes velocidades o
de tipos distintos (puede intentar reordenar los módulos, a veces ayuda), una
configuración mala de la BIOS (puede que deshabilitar las opciones avanzadas resulte). El
mensaje de error "signal 11" se asocia normalmente con fallos del hardware y
ocurre más a menudo cuando se realizan tareas intensivas: instalación del Linux,
compilación del kernel, etc.
No está realmente colgado.
Alguno programas
le pueden dar al no iniciado, la impresión de estar colgados cuando símplemente estan
esperando alguna acción por parte del usuario. Suele ocurrir cuando un programa necesita
el nombre de un fichero como argumento de entrada y al ejecutarlo no proporcionamos
ninguno, de modo que el programa espera recibirlo de la entrada estándar: la consola. Por
ejemplo, este comando
cat
puede parecer que está colgado, pero está esperando entrada desde teclado. Oruebe a
pulsar <Ctrl>d (que significa "fin-de-fichero") y vea que "cat"
termina. Otro ejemplo: He visto muchas preguntas en los grupos de noticias sobre el
comando tar que se cuelga cuando se intenta descomprimir un fichero
descargado, por ejemplo:
tar -zxv my_tar_file
También esta esperando por una entrada de usuario, ya que la opción -f (fichero) no
se especificó, de modo que el segundo parámetro "my_tar_file" no se
interpretó como un fichero. El comando correcto es:
tar -zxvf my_tar_file
Observe que el nombre del fichero debe ir justo tras la opción "f" (que
significa fichero!). Esto NO funcionará:
tar -zxfv my_tar_file
Cualquier programa (colgado ó no) puede matarse.
Un programa arrancado desde consola en modo texto y en primer
plano, normalmente se puede matar con <Ctrl>C. No suele funcionar con aplicaciones
grandes, pero se puede ganar el control bien mandándolo a segundo plano con <Ctrl>z
(no funciona siempre) ó conmutar a otro terminal, p.e. Mediante
<Ctrl><Alt><F2> e ingresando como el mismo usuario que lanzó el
programa que esta colgado (debería funcionar siempre). Una vez que está en el sistema
con un poco de control, encuentre el proceso que quiere terminar, p.e.:
ps
Este comando significa 2print status" ("imprime estado") y muestra la
lista de programas que se está ejecutando en el momento de teclearlo. En su salida,
encontramos el identificador del proceso (PID) que se ha quedado colgado y lo podremos
matar. p.e.:
kill 123
esto matará el proceso con PID "123".
Como usuario, solo se puede matar los procesos que nos pertenecen (esto es, los que
hemos iniciado). Root puede matar cualquier proceso. Para ver la lista de todos los
procesos ejecutándose en el sistema teclee:
ps axu | more
Esto lista todos los procesos en ejecución (opción "a"), incluso aquellos
que no tienen control de terminal (opción "x") y los presenta junto con el
nombre de login del usuario que lo posee ("u"). Dado que la salida será más
larga de lo que cabe en una sola pantalla, uso la "tubería" ("|")
hacia el comando "more" para verlo cómodamente.
El comando kill tiene un atajo killall para
matar programas por su nombre, p.e.:
killall netscape
matará cualquier programa que tenga "netscape" en su nombre.
Los programas basados en X-windows no tienen estas combinaciones de teclas pero se les
termina más fácilmente con (tecleado en un terminal X):
xkill
ante lo que el cursor se cambia y parece una sentencia de muerte; apunte a la ventana
que quiere matar y presione el botón izquierdo del ratón; la ventana desaparece por las
buenas y el progrma que ejecutaba se termina.
Si su sistema de X-windows deja de funcionar y no se recupera, lo más fácil es matar
al propio servidor X presionando <Ctrl><Alt><BkSpace>. Tras lo cual, es
una buena idea ejecutar ps axu, encontrar cualquier programa X que
todavia se este ejecutando y matarlos. Si no lo hace, el progrma defectuoso que causaba el
mal funcionamiento de su sistema podrá volver a causar problemas.
Si tiene programas en segundo plano, el sistema operativo le advertirá cuando quiera
desconectarse ("logout") y presentará un mensaje como "There are stopped
jobs". Para obivarlo y desconectarse de inmediato, solo tiene que repetir la orden
"logout" (ó "exit") y los programas en segundo plano se terminarán
automáticamente y se le desconectará del sistema.
Ficheros core. Cuando un programa se cuelga, a
menudo vuelca un "core" en su directorio home. Normalmente se acompaña de un
mensaje. Un "core" es una imagen de la memoria (más alguna información de
depuración "debug") y se le usa como herramienta de investigación y depurado
del programa que lo creó. Si no quiere depurar el programa, puede borrar el
"core":
rm core
ó no hacer nada (el "core" será sobreescrito si algun otro programa genera
un "core"). También puede deshabilitar la creación de estos ficheros mediante:
ulimit -c 0
Compruebe si funcionó usando:
ulimit -a
(Esto muestra los "límites de usuario", la opción "-a" significa
"all"--todos). Si quiere ver cómo sep uede usar el fichero "core",
teclee (en el directorio donde tien ese fichero):
gdb -c core
Esto lanza al depurador de CNU (gdb "debugger") y muestra el nombre del
programa que creó el fichero "core", la señal que hizo terminar al programa,
etc. Teclee "quit" para salir del depurador.
3.2 Usuarios, constraseñas (passwords), permisos dobre ficheros y
seguridad
3.2.1 Directorios home, root, añadir usuarios
El único sitio (casi) donde un usuario normal (no root) puede escribir es en su
directorio home, que es /home/nombre_login_usuario.
Este directorio "home" contiene todos los ficheros del usuario:
configuración del entorno de trabajo, de programas, documentos, datos, caché de
internet, correo, etc. El usuario puede crear subdirectorios bajos su directorio
"home" para organizar su información. Otros usuarios no podrán leer sus
ficheros ó escribir en sus directorios a menos que les de permiso para ello.
Los usuarios normales también pueden leer y ejecutar muchos otros ficheros del sistema
(además de los de su propio directorio home), pero normalmente no podrán modificarlos ó
borrarlos.
El usuario "root" ("superusuario"), es una cuenta especial de
administración que tiene el poder de modificar cualquier fichero del sistema. Así no es
buena idea hacer el trabajo habitual como root-- los fallos pueden salir muy caros.
Establezca una cuenta de usuario normal para su trabajo diario. La cuenta de root es la
única que existe tras la instalación de Linux.
Una cuenta de usuario se pede crear así: (como root):
adduser joe
passwd joe
[type the password for the user joe]
Root puede cambiar la password de cualquier usuario, pero no puede leerla. (Las
passwords se encriptan usando un algoritmo de solo ida y solo se guarda en el sistema la
copia encriptada en /etc/passwd , no la versión abierta. Cuando intenta ingresar en el
sistema (login), la password que teclee se encripta con el mismo algoritmo y el resultado
se compara con la versión encriptada de su pasword en el fichero /etc/passwd.)
Separar al administrador del usuario redunda en la seguridad y robustez del sistema,
incluso se lo pone difícil a los virus en Linux (los programas que ejcutan los usuarios,
solo pueden escribir en sus propios directorios home, de manera que no pueden afectar a
partes vitales del sistema operativo).
Suele ser obligatorio que el usuario cambie su password inmediatamente tras su primer
login, p.e.:
passwd
(current) UNIX password]: pass_OLD
New UNIX password: pass_NEW
Retype New UNIX password: pass_NEW
En realidad, la pssword no aparece en pantalla según la teclee (por razones de
seguridad).
3.2.2 La seguridad de las passwords
Passwords débiles son la causa más comun de los problemas de seguridad. Algunos tipos
de passwords problemáticas:
-
- la palabra "password"
-
- su nombre de login, su nobre ó apellido
-
- el nombre de su pareja, hijo, perro, etc.
-
- el nombre de su empresa, departamento, grupo de trabajo, etc.
-
- su fecha de nacimiento
-
- la password escrita en una nota pegada en su monitor
-
- cualquier palabra de diccionario (no tienen tantas como pudiera parecer y se las
comprueba muy rápidamente);
-
- una password que use en un sitio inseguro, como una lista
de correo, una tienda en internet.
Una buena password es relativamente larga (mínimo de 6 caracteres), contiene una
mezcla de letras (mayúsculas y minúsculas, a ser posible) y números; se la cambia con
regularidad (8 semanas?).
El administrador del sistema puede establecer una política de passwords mediante una
utilidad del programa de configuración "linuxconf" (como root):
linuxconf
elija el menú "user account"-"policies"-"password &
account policies".
3.2.3 He olvidado la password de root
Tiene que iniciar el equipo desde el disquete de arranque, encontrar la partición raiz
de Linux en el disco duro y editar el fichero /etc/passwd. En él, borre la password
encriptada de root, de modo que la establece como vacia. Por ejemplo, en el fichero
/etc/passwd, la entrada para el usuario root, podría tener la forma:
root:abcdefghijklm:0:0:root:/root:/bin/bash
El campo "abcdefghijklm" es una password encriptada en 13 caracteres
(exactamente, es una "semilla" de 2 caracteres que se usa para la encriptación
y una password encriptada en 11 caracteres). Cambiaríamos esta línea por:
root::0:0:root:/root:/bin/bash
Ahora, la cuenta de root no tiene password, de modo que podemos rearrancar el ordenador
y cuando nos presente el login, tecleamos root y cuando nos pida la password, presionamos
ENTER (vacío, sin password). Tras acceder de nuevo como root, lo primero que hacemos es
establecerla de nuevo.
Una alternativa a este procedimiento es reinstalar Linux.
Si cualquier otro usuario se olvida de su password, no supone un problema, root puede
cambiar cualquier password. p.e. (como root):
passwd barbara
le preguntará por una nueva password para el usuario "barbara" (no se
necesita conocer la antigua password).
Tome nota de que un "*" en el campo de password en /etc/passwd, significa que
a esa cuenta no se le permite hacer login. Si necesita deshabilitar temporalmente a un
usuario del sistema, solo tiene que poner una estrella antes de la password encriptada .
Si quiere restablecer la cuenta, solo tiene que borrar la estrella y la cuenta estará
habilitada, con la antigua password.
3.2.4 Tengo problemas con los permisos de los
ficheros.
Las reglas sobre nombrado y permisos son las mismas para los ficheros normales y para
los directorios, de modo que todo lo que digamos sobre los unos se aplica a los otros.
Propietarios de ficheros. Cada fichero tiene un usuario propietario y un
grupo propietario. Los podemos ver con el comando ls -l
("listar en formato largo"). p.e.:
ls -l junk
produjo esta salida en mi pantalla:
-rwx------ 1 yogin
inca 27 Apr 24 14:12 junk
Esto nos muestra que el fichero "junk", pertenence al usuario
"yogin" y al grupo "inca". El propietario normalmente es la
persona que lo creó ó copió. Solo el propietario y root pueden borrar un fichero
(aunque otros usarios pueden modificarlo ó borrarlo si se les da permiso para ello).
La propiedad se puede cambiar con el comando chown (change owner
"cambiar propietario") y chgrp (change group "cambiar
grupo"), que normalmente los ejecuta root:
chown peter junk
chgrp peter junk
ls -l junk
lo que produce
-rwx------ 1 peter
peter 27 Apr 25 20:27 junk
Cambiar al propietario de un fichero puede ser útil si como root, va por ahí copiando
y dejando ficheros para que los usen los diferentes usuarios. Cuando termine de hacer la
distribución, no se olvide de cambiar los propietarios por los correctos
Permisos de ficheros. Cada usuario, puede hacer sus ficheros accesibles a
otros de tres modos: read (r "lectura"), write (w "escritura"),
execute (x "ejecución") y a tres clases de usuarios: owner (u "propietario
ó usuario"), miembros del grupo popietario (g), otros usuarios del sistema (o ).
Compruebe los permisos de acceso mediante:
ls -l filename
Si el fichero está accesible a todo el mundo (propietario, grupo, otros) en todos los
modos (lectura, escritura, ejecución) mostrará:
-rwxrwxrwx
No se fije en el "-" del principio (habría sido "d" para un
directorio). Tras él, los primeros tres caracteres representan los permisos para el
propietario, los segundos para el grupo y los terceros para el resto de usuarios. Si
"no" está permitido, se muestra un "-". Seguido le mostramos la
salida del comando ls -l en un fichero que pertenence a root, para
el que tiene todos los permisos, mientras que el grupo y otros, solo pueden leer y
ejecutar:
drwxr-xr-x 2 root
root 21504 Apr 24 19:27 dev
La primera letra "d" informa que se trata de un directorioshows that the file
is actually a directory.
Para cambiar los permisos de un fichero del que ud. es propietario, use el comando
("change mode" "cambiar modo"). P.e., para cambiar los permisos de
lectura del fichero "junk" para que todos puedan leerlo (all=user+group+others):
chmod a+r junk
En ese comando se pueden usar muchas variantes, en vez de "a"
("all" "todos"), se puede usar "u", "g" ó
"o" ("user", "group" ó "others"). En lugar
de "+" ("add the permission" "añade el permiso"), se puede
poenr "-" ó "=" ("remove the permission" "elimina
permiso" ó "set the permission" "establece el permiso").
Por "r" (="read permission" "lectura"), se puede usar
"w" ó "x" ("write permission" "escritura" ó
"execute permission" "ejecución").
Por ejemplo, este comando le elimina el permiso de ejecución a los "otros":
chmod o-x junk
En vez de letras se pueden usar números para especificar los permisos. Para entender
como funcionan, vea el ejemplo:
read=4
write=2
exectute=1
Los permisos totales para cada clase de usuarios es la suma de todos ellos. Así:
4 = read only (solo lectura)
5 = read and execute (lectura y ejecución)
6 = read and write (lectura y escritura)
7 = read, write and execute. (lectura, escritura y ejecución)
Los permisos para todos los tipos de usuarios se establecen con un digito para cada
uno. p. e.:
chmod 770 junk
le dará al propietario y al grupo todos los permisos, mientras que al resto de
usuarios se les deniega todo acceso. El comando:
chmod 666 junk
le da a todos los permisos de lectura y escritura, pero no de ejcución. Los permisos
"666" se usan muy a menudo y al menos para una persona que conozco, es una
prueba de que Linux (cualquier UNIX si a esas vamos) es un producto del diablo >:-0.
Este comando:
chmod 411 junk
le daría al propietario permisos de lectura y al resto, de ejecución.
Máscara de permisos por defecto: "umask". Cuando se crea un
fichero nuevo, se le dan unos permisos por defecto. En mi sistema son:
-rw-r--r--
Esto significa que los ficheros creados por un usuario los puede leer y escribir el
mismo, mientras que todos los demás solo lo pueden leer. Sin embargo, en mi sistema, los
usuarios no pueden ver lo que hay en el directorio home de otros usuarios porque esos
directorios tienen permisos:
drwx------
Se pueden comprobar los permisos por defecto usando:
umask -S
(La opción "-S" significa "simbólico" y le dice a umask
que muestre la información de permisos de forma fácil de leer)
Para cambiar los permisos por defecto:
umask u=rwx,g=,o=
que le dará al propietario todos los permisos y ninguno al resto de usuarios.
Usar números para umask requiere un poco más de cuidado. Los números indican los
permisos que se le quitan (lo opuesto que chmod). Así:
umask 000
le dará todos los permisos a todo el mundo. El siguiente ejemplo le da todos los
permisos al propietario y ninguno a todos los demás:
umask 077
3.2.5 Mi reproductor de mp3 no va. El sonido va como
interrumpido (Como establecer el suid).
El reproductor MP· podría no tener suficiente dedicación por la CPU, que su sistema
esté poco optimizado, que esté ejecutando muchos procesos intensivos para la CPU al
mismo tiempo, ó lo más habitual, debe ejcutar el reproductor con mayor prioridad (la
prioridad de un proceso se puede establcer con un comando: nice --
vea man nice ó info nice). Pruebe a ejecutar el reproductor como
root--programas ejecutados como root tienen mayor prioridad que los ejecutados por
usuarios normales. Si esto le soluciona el problema, establezca el "suid" de
manera que los usuarios que lo ejecuten ,adquieren la personaidad "efectiva" del
propietario "root".
chmod a+s x11amp
este comando le hará exactamente eso para el programa x11amp. La salida de
ls -l x11amp
será:
-rwsr-sr-x 1 root
root 319172 Mar 13 1998 x11amp
La primera "s" indica que el bit suid (set-user-id) está activado. La
segunda "s" indica lo mismo para el sgid (set-group-id ). De modo que
cualquiera que ejecute x11amp tendrá los permisos del propietario y del grupo, que en
este caso son root y root.
Activar estos bits pueden dar lugar a problemas de seguridad. En un entornno doméstico
puede que no debamos preocuparnos mucho sobre lo que vayan a hacer otros usuarios con
nuestra máquina, pero deberíamos tener cuidado con los programas que instalemos si no
conocemos su origen, y no deberíamos dejar establecer un suid o sgid aunque algun script
de instalación nos lo sugiera, sin revisar el código y analizar que es lo que nos va a
hacer.
3.3 Planificación de tareas con "at" y cron
3.3.1 Ejecutar comandos en momentos específicos
Puede usar el comando at . "at" ejecutará los
comandos que le especifique en el dia y la hora que ud establezca. Por ejemplo, podríamos
poner a funcionar un CD de música a las 7 en punto de la mañana:
at 7:00
cdplay<Ctrl>d
En el ejemplo anterior, hemos tecleado la primera línea "at 7:00" en la
línea de comandos y después presionamos ENTER, ante lo cual, el comando "at"
nos proporciona su prompt "at>". Con este prompt, entramos el comando
"cdplay" y presionamos las teclas <Ctrl> y "d" simultáneamente
para dar por terminado los comandos que queremos ejecutar a las 7:00. Si en lugar de
<Ctrl>d, hubiéramos presionado ENTER, volveríamos a obtener otro prompt
"at>", donde podríamos introducir otros comandos que queramos que se
ejecuten, también a las 7:00 e inmediatamente después de "cdplay". Así,
sucesivamente podemos introducir los comandos que queramos. Tras entrar el último
comando, presionaríamos <Ctrl>d y daríamos por finalizada la entrada de comandos.
No presione <Ctrl>d dos veces seguidas porque le sacará de su shell actual, el
primero daría por terminada la shell de "at" y el segundo, su shell de comandos
("bash" habitualmente).
Puede obtener un listado de los trabajos planificados mediante:
at -l
que le presentará una lista numerada de trabajos.
Si quiere eliminar alguna tarea de la lista, puede hacerlo así:
atrm 8
esto eliminará de la lista de tareas la número 8.
Se puede planificar una tarea con mucho tiempo de antelación, p.e.:
at 23:55 12/31/00
startx
que arrancaría el servidor X justo 5 minutos antes de la entrada del año 2000.
Si no puede ejcutar el comando "at" como un usuario normal, compruebe los
ficheros /etc/at.deny y /etc/at.allow. El primero debería existir y estar vacío, el
segundo no debe existir. Con esta configuración, el comando "at" debería ser
accesible a todos los usuarios del sistema. Si quiere que únicamente cietos usuarios
tengan el privilegio de planificar tareas, cree el fichero /etc/at.allow e introduzca una
linea con el nombre de login por cada usuario al que quiera darle estos privilegios.
Para otras opciones, mire:
man at
3.3.2 Cómo configurar "cron"
Cron (un proceso en Linux que realiza trabajos en segundo plano, a menudo por las
noches) se configura por defecto en un sistema Esware. De modo que no tiene que hacer nada
a menos que quiera añadirle tareas a realizar de una forma regular ó cambiar el horario
en el que "cron" realiza sus "deberes".
Tome nota de que algunos de los trabajos realizados por cron pueden ser esenciales para
el correcto funcionamiento de su sistema a largo plazo. Entre otras podemos citar:
- rreconstruir la base de datos de los ficheros en el sistema, que se usa habitualmente
cuando buscamos archivos con el comando "locate",
- limpiar el directorio /tmp,
- reconstruir las páginas de manual (man),
- realizar comprobaciones, p. e., añadir fuentes que ha copiado recientemente...
Así, puede que no siempre sea una buena idea apagar su equipo or las noches\de esa
forma, cron nunca tendría ocasión para realizar sustareas. Si quiere apagar su máquina
por las noches, puede ajustar cron para que efectue sus trabajos en otros momentos del
día.
Para averiguar en qué momentos se pone a trabajar cron, mire en el fichero
/etc/crontab, p.e.:
cat /etc/crontab
Tendrá algo como esto:
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
Puede ver que hay cuatro categorías de tabajos para cron: realizados cada hora, día,
semana y cada mes. Puede modificarlos ó añadir su propia categoría. Así se hace:
La columnas de cada entrada se corresponden con: minutos (0-59), horas (0-23), días
del mes (1-31), mes del año (1-12), día de la semana (0-6\Sunday Saturday). El
"*" significa: "cualquier valor válido".
Así, en el ejemplo presentado, los trabajos horarios se realizan cada vez que el reloj
del sistema tiene en su campo de minutos "01", lo que ocurre cada hora. Los
trabajos diarios se realizan cada vez que el reloj pasa por las 4h2m, esto es, una vez al
día. Los trabajos semanales se comienzan a las 4h22m de los domingos (Sunday). Los
mensuales se hacen los días 1 de cada mes a las 4h42m. El fichero que contiene las
divrsas tareas a realizar, son los contenidos en el directorio que se indica al final de
cada línea.
Si quiere que esos trabajos se realizen al medio día en vez de a las 4 de la
madrugada, solo tiene que cambiar los 4 por 12. Cron se "despierta" cada minuto
y examina si ha cambiado algo en /etc/crontab en cuyo caso actuaría en consecuencia.
Si quiere añadir alguna tarea a cron, ponga un script que ejecute los comandos que
desee en alguno de los directorios /etc/cron.*.
3.4 Espacio de Swap
El espacio de swap es una extensión de la memoria física del sistema. Lo normal es
que haya creado una partición swap durante el proceso de instalación. Puede comprobar la
cantidad de memoria swap disponible mediante:
cat /proc/meminfo
Como recomendación general, se debe tener al menos 4 MB de espacio de swap, al menos
32 MB en total de RAM + swap para un sistema que ejecute comandos desde consola, al menos
64 MB para un sistema que use el sistema X-windows y el espacio de swap debe ser al menos
1.5 veces la cantidad de RAM.
Si esto suena complicado, puede usar un tamaño de swap el doble que su RAM y no menos
de 64 MB.
Si alguna vez quiere modificar su espacio de swap, ahí van unas recomendaciones.
3.4.1Swap partitions
Puede tener varias particiones de swap, caa una hasta de unos 124 MB. Los pasos
necesarios para crear y habilitar una partición de swap, son:
- Crear la partición del tamaño y tipo adecuado usando "fdisk" (tipo de
partición 82, "Linux swap").
- Formatee la partición y verifique los bloques malos:
mkswap -c /dev/hda4
Debe sustituir /dev/hda4 por el nombre de su partición. Como especificamos el tamaño
de la partición, se detectará automáticamente.
- Habilite el espacio de swap:
swapon /dev/hda4
Para habilitarlo automáticamente durante el arranque, debe incluir una entrada
apropiada en su fichero /etc/fstab, p.e.:
/dev/hda4 swap swap defaults 0 0
Si alguna vez quiere desabilitarla, puede hacerlo mediante:
swapoff /dev/hda4
3.4.2 Ficheros de Swap
Utilizar como espacio de swap un fichero es más lento que usar una partición
dedicada, de modo que esta técnica no se recomienda para gestionar de forma permanente el
swap del sistema. Pero puede ser un buen truco si en alguna ocasión necesita un poco más
de espacio de swap. Puede tener hasta 8 ficheros de swap, cada uno con un tamaño de hasta
16 MB. Aquí van los pasos para crearlos:
- Cree un fichero con el tamaño deseado de swap:
dd if=/dev/zero of=/swapfile bs=1024 count=8192
Esta orden crea físicamente un fichero de swap que se llama "/swapfile", el
tamaño del bloque es de 1024B, contiene 8192 bloques, lo que hace un total de 8MB
aproximadamente. (El comando dd copia ficheros, en el ejemplo anterior, el fichero de
entrada era /dev/zero, el de salida era /swapfile. Nop puede usar el comando cp para crear
un fichero de swap, puesto que éste debe ser contínuo).
- Inicie el fichero con el comando:
mkswap /swapfile 8192
- Fuerze la escritura de la cache al disco:
sync
- Habilite el fichero de swap:
swapon /swapfile
Cuando termine de trabajar con el fichero de swap, puede deshabilitarlo y borrarlo:
swapoff /swapfile
rm /swapfile
Puede leer la información escrita por el mismo Linus Torvalds:
man mkswap
3.5 Shell
3.5.1 ¿Qué es una shell y Quiero usar alguna otra?
Una shell es un programa que interpreta lo que un usuario teclea en la línea de
comandos y decide qué hacer con ello. También se las puede invocar de forma no
interactiva, por ejemplo, para ejecutar una lista de comandos previamente tecleados y
guardados en un fichero de texto (un "shell script"). Puede pensarse en la shell
como un equivalente del "command.com" de DOS (intérprete de línea de comandos)
y los archivos "shell script" como equivalentes a los ficheros batch de DOS
(*.bat).
En un sistema Linux hay varias shells disponibles (si las instaló): bash ("Bourne
Again" shell), sh (Bourne shell), csh (C shell), pdksh (public domain Korn shell),
tcsh (enhanced C shell), ash, zsh, y quizás un par de ellas más.
La shell por defecto en mi sistema (y seguramente en el suyo) es "bash", que
es una shell estándar excelente y de verdad, no veo ninguna razón por la que un recién
llegado, como yo, quiera cambiarla por otra. "bash" es totalmente compatible con
la shell Bourne (la más usada del mundo UNIX) y trae muchas mejoras y proporciona mejores
características que otras shells. Desde la perspectiva de un recién llegado, las
diferentes shells que vienen con Linux se incluyen para garantizar la compatibilidad con
antiguas versiones de algunos shell scripts que utilizan alguna shell particular para
hacer determinada función.
La shell de cada usuario se especifica en el último campo del fichero /etc/passwd. Si
quiere cambiarla, edite el fichero (como root) y reemplace "/bin/bash" por la
shell que prefiera.
3.5.2 Cómo escribir shell scripts sencillos
Edite el fichero que va a contener el shell script. Por ejemplo, se puede usar el
editor pico para escribir un script que ejecute el programa "tar" con todos los
parámetros habitualmente necesarios para descomprimir un fichero desde la red (parece que
nunca me acuerdo de las opciones de tar):
pico untar
Como el fichero "untar" no existía en my directorio, se crea. Ahora
tecleamos el contenido del script:
#!/bin/bash
echo este es el script file $0
echo descomprimiendo (untarring) el fichero $1
#llama a tar con las opciones -zxvf (filtrar con gzip, extraer, verbose,
fichero)
tar -zxvf $1
Guarde el fichero con <Ctrl>o y salga con <Ctrl>x
La primera línea le dice al shell qué programa debería usar para interpretar el
resto del script. En nuestro ejemplo es la misma shell bash. Esta línea, para que
funcione, debe comenzar por #!. El resto de líneas que comienzan por # son consideradas
comentarios del autor del script y se ignoran por el ordenador.
$0, $1, $2 ... son los parámetros que se le pasan a su script. Por ejemplo, si
ejecutamos el script llamado "script" de esta forma:
script a b c d e f g
entonces $0 sería "script", $1 sería "a", $2 sería
"b", $3 sería "c", etc.
El comando "echo" imprime en pantalla todo lo que le sigue en la misma
línea.
Ahora, haga el fichero ejecutable para el rpopietario:
chmod u+x untar
y nuestro script está listo para usarse:
./untar my_tar.tar.gz
3.6 Un poco de Programación Sencilla
3.6.1Cómo escribir un programa en Python
Es muy parecido a escribir un shell script. Edite el fichero que contendrá a su
programa Python:
pico try_python
Teclee algún comando de python para ver si funciona:
#!/usr/bin/env python
print 2+2
La primera línea le dice al shell cómo debe ejecutar el fichero. La segunda es una
expresión de python.
Tras guardar el fichero, hágalo ejecutable:
chmod a+x try_python
ahora podemos probarlo:
./try_python
Python es un lenguaje de programación muy bueno y moderno, así que pruébelo. Hay
libros excelentes (y voluminosos) gratuitos disponibles en la red. Como el de G. van
Rossum (el creador de Python). Pruebe: http://www.python.org/doc/
para navegar ó ftp://ftp.python.org para descargas.
3.6.2 Cómo escribir un programa gráfico (GUI)
sencillo (usando Tk)
Usaremos Tk, una extensión del fácil y poderoso lenguage tcl para construir
interfaces gráficas de usuario (GUI). De nuevo con pico podemos escribir el fichero que
contendrá nuestro programa:
pico try_tk
tecleamos un poco de código en Tk:
#!/usr/bin/wish
button .my_button -text "Hello World" -command exit
pack .my_button
La primera línea le dice a la shell cómo interpretar el fichero. Las siguientes dos
líneas son un ejemplo de programción en tk. Primero creamos un botón (button) llamado
"my_button" y lo colocamos al principio de la jerarquía de objetos gráficos
(el punto "." justo antes del nombre). Como texto, tendrá "Hello
World" y cuando se le pulse ejecutará el comando "exit". La última línea
hace que la ventana se ajuste al tamaño justo para contener al botón.
Tras guardar el fichero, lo haremos ejecutable:
chmod a+x try_tk
ahora lo podemos probar tecleando (en un terminal X):
./try_tk
Tk es mu popular para construir GUIs.
3.6.3 Cómo escribir programas sencillos en Perl
Per es un lenguage de programación famoso por su poder y flexibilidad. Es muy popular.
También podemos usar pico (ó culaquier otro editor de texto) para crear un script de
ejemplo. El que vamos a ver no hace nada útil, pero ilustra algunas características de
perl:
#!/usr/bin/perl -w
#programa de ejemplo en perl
#los nombre de variables escalares comienzan con $
$a=2;
$b=3;
print $a**$b,"\n";
$hello_world='Hello World';
print $hello_world,"\n";
system "ls";
La primera línea le dice al shell cóo ejecutar el script. La opción "-w"
hace que perl muestre mensajes adicionales, advertencias, etc lo que puede resultar útil
para un recién llegado. Las siguientes dos líneas (las que comienzan por un #) son
comentarios. La siguientes son autoexplicativas: le asignamos valores a dos variables ($a
y $b), calculamos $a elevado a $b y lo mostramos por pantalla. "\n" provoca un
salto de linea. Luego definimos una nueva variable para contener el mensaje "Hello
World" y en la siguiente lo mandamos imprimir por pantalla. Finalmente, ejecutamos el
comando del sistema "ls", que en Linux, saca por pantalla el contenido del
directorio actual.
Como os imaginais, tenemos que guardar el fichero y hacerlo ejecutable, entonces
estaremos listos para probarlo.
3.6.4 Cómo compilar un programa sencillo en C
Arranque su editor favorito y teclee el código fuente. Por ejemplo, usando pico:
pico hello.c
y tecleamos el ejemplo de Kernigham y Richie para programar en C:
#include <stdio.h>
void main(void) {
printf("hello world\n");
}
Salvamos el fichero, invocamos el compilador GNU C:
gcc hello.c
gcc produce el binario ejecutable "a.out", que podemos ejecutar:
./a.out
4.1 aspectos de LILO
4.1.1 Linux no detecta toda mi memoria
Si tiene más de 64 megabytes de memoria física, sepa que los kernels de Linux 2.0.36
ó menores, usarán, por defecto, solo los primeros 64 MB. Para ver cuánta memoria usa
Linux en su sistema, teclee:
cat /proc/meminfo
La versión del kernel se puede ver mediante:
uname -a
Para conseguir reconocer más de 64 MB, debemos editar (como root) el fichero
/etc/lilo.conf. Añada una línea como esta justo antes de su primera línea "image=
":
append="mem=80M"
Si su cantidad de memoria es diferente de 80MB, modifique la línea anterior. Para que
cualquier cambio en /etc/lilo.conf tenga efecto, debemos ejecutar el programa:
lilo
(observe si se ejecuta sin errores) y reinicie. Tras el reinicio, compruebe si sus
ajustes han funcionado mediante uno de estos comandos:
cat /proc/meminfo
free
Para pruebas ó si está teniendo problemas, puede serle útil una opción de LILO que
le permite especificar durante el arranque cuánta memoria tiene:
[teclee lo siguiente cuando le aparecza el prompt de LILO durante el arranque] linux "mem=16M"
Ocasionalmente he oido sobre avisos que hablan de saltar los primeros MB si tiene
problemas al cargar toda su memoria, ó que la máquina se para. P.e., habilite solo 78 de
sus 80 MB. Esto sucede aparentemente con algunas controladoras SCSI que utilizan la
primera parte de la memoria principal. Guarde esta observación por si le hace falta.
También ha ocurrido que Linux solo reconoce 16 MB de memoria. Sucede en relación a
una opción de la BIOS "memory hole at 15-16 MB". Deshabilite la opción. Suele
ser una buena idea deshabilitar todas las características "advanced" de su
BIOS.
Una mezcla de chips de memoria con diferente temporización también puede influir en
que no se reconozca toda su memoria ó que el sistema deje de funcionar (la solución es
reemplazar las tarjetas de memoria por otras que tengan la misma temporización).
4.1.2 LILO muestra solamente LI (ó LIL) y se cuelga
De mi buen manual "Red Hat Linux Unleashed" por Kamran Hussain, Timothy
Parker, et al., SAMS Publishing:
"Cuando LILO se carga a sí mismo, presenta por pantalla la palabra LILO. Cada
letra se imprime antes ó después e realizar una tarea específica. Si LILO falla en
algún punto, las letras impresas ayudan a identificar el problema. [...]
"When LILO loads itself, it displays the word LILO. Each letter is printed before
or after performing some specific action. If LILO fails at some point, the letters printed
so far can be used to identify the problem. [...]
LI [...] Esta causado por un desajuste en la geometría ó por haber movido
{etc{lilo{boot.b sin haber ejecutado el instalador de mapas.
LIL [...] Lo provoca generalmente un fallo del dispositivo ó un desajuste en la
geometría."
La geometría significa el número de sectrores/cabezas/cilindros que usa su BIOS para
configurar sus discos duros. Espero que esto le ayude!
Es una buena idea tener un buen libro sobre Linux ó al menos sobre UNIX en general.
"Red Hat Linux Unleashed" es un libro muy bueno (estoy seguro de que hay otros
igual de buenos).
Con un error de LILO como el de arriba, puede arrancar su máquina con un disco de
arranque de DOS ó de Linux. Hay varias posibilidades para sobreponerse a estos errores,
dependiedo de lo que esté mal:
1. Si símplemente es que LILO se ha corrompido, puede eliminarlo y reinstalarlo. Puede
eliminar LILO ejecutando bajo Linux:
lilo -u /dev/hda
ó bajo DOS:
fdisk/MBR
que sobreescribe el master boot record (MBR) del disco duro en que reside LILO y lo
reemplaza con un arranque limpio de DOS. No podrá acceder a Linux, pero puede arrancarlo
con un disquete y reinstalar LILO sobre el MBR de DOS. Para reinstalar LILO solo tiene que
ejecutar (como root) el comando "lilo".
2. Especificar una opción
linear
en su fichero /etc/lilo.conf. Es muy útil para discos duros grandes (>8GB). Vea
man lilo.conf para más detalles. La opción "linear" es
segura\no debería afectar al perfecto funcionamiento del sistema, de modo que puede
especificarla siempre que quiera.
3. Mire en su BIOS y averigüe si la geometría especificada se ajusta a la de su
disco. Bajo Linux puede obtener la geometría de su disco mediante (por ejemplo,
para el primer disco IDE):
hdparm -g /dev/hda
4. Ponga LILO en otra partición (diferente disco duro) y hágala arrancable (bootable)
con fdisk (si su sistema soporta el arranque desde otro disco duro).
5. Puede que prefira usar loadlin en lugar de LILO. Bajo DOS, localize su CDROM y vea
el programa /dosutils/loadlin.exe. Arranca Linux desde DOS.
4.1.3 Cómo cambiar el sistema operativo por defecto que arranca LILO
Típicamente, en /etc/lilo.conf tenemos dos secciones. Una empieza con "image=
" y se refiere a Linux, la otra comienza con "other= " y es la sección de
dos/win. El primero que aparezca en /etc/lilo.conf es el que se arranca por defecto. De
modo que para cambiarlo, intercambie las secciones. No se olvide de ejecutar el comando:
lilo
después de cualquier cambio en /etc/lilo/conf.
4.1.4 El prompt de LILO permanece mucho (ó muy poco) tiempo durante el arranque
Añada ó ajuste la línea
delay=100
justo antes de la primera línea "image=" ó "append=" en su
fichero /etc/lilo.conf. El número es el tiempo de espera en décimas de segundo (0.1 s).
No olvide ejecutar "lilo" tras los cambios.
4.1.5 Cómo desinstalar Linux
Si de verdad quiere "desinstalar" Linux, puede ejecutar fdisk /MBR (desde DOS
ó Windows) y eliminará a LILO. Después puede eliminar las particiones de Linux con
fdisk para recuperar el espacio.
4.2 Accediendo a los dispositivosAccessing my drives
4.2.1 Dónde están los dispositivos?
Linux sitúa todos los directorios en un único árbol, independientemente del disco
donde se encuentren. Generalmente, esta es una forma mejor que el modelo tradicional de
DOS/Windows (abstrae el sistema de ficheros del harware que lo soporta). Lo encontrará
útil si alguna vez tiene que reacomodar ó expandir su hardware ó añadir recursos de
red. Pero para usuarios acostumbrados al hardware estándar de un PC y nada más, esto le
supondrá cierto grado de complejidad añadida.
En pocas palabras, no busque letras de dispositivos; el contenido de sus discos aparece
como subdirectorios en un único sistema de ficheros Linux. Por defecto, el contenido de
los dispositivos removibles no aparece automáticamente (hay que "montar" estos
dispositivos). Vea la seeción siguiente para más detalles. También sepa que debe
"desmontar" estos dispositivos antes de sacar la unidad.
Puede acceder (para lectura y escritura) a una variedad de sistemas de ficheros bajo
Linux. Estos incluyen particiones nativas de Linux, DOS y MS Windows (en discos duros ó
floppies), unidades ZIP y Jazz y unidades CDROM. Otros muchos sistemas de ficheros menos
comunes también se soportan. Esto significa que puede descargarse software para Linux
usando Netscape para Windows, guardar el fichero descargado en una partición Windows,
después arrancar con Linux y copiar el software desde la partición Windows a la de Linux
para instalarlo ahí.
4.2.2 Cómo acceder a la unidad CDROM
Móntela. Al montarla, se añaden todos sus directorios y ficheros de su CD al
punto de montaje en su árbol Linux, de modo que puede verlo fácilmente sin necesidad de
una letra de dispositivo.
Como root, puede montar el CDROM con un comando como:
mount -t auto /dev/cdrom /mnt/cdrom
Si esto funciona, el contenido de su CDROM aparece en el directorio /mnt/cdrom
Puede ser que este comando no le funcione y tenga que personalizarlo para su caso.
Veamos como funciona el comando:
El comando le dice al sistema operativo que monte un sistema de fichero autodetectando
el tipo ("-t auto"). El dispositivo es /dev/cdrom. El punto de montaje (el
directorio donde lo vamos a montar) es /mnt/cdrom. Este directorio debe existir y estar
vacío. Si no existe créelo mediante:
mkdir /mnt/cdrom
Si el comando de montaje falla, asegúrese de que el dispositivo /dev/cdrom existe. Si
no existe, ¿Dónde está el CDROM? Las posibilidades son (para un CDROM IDE) algo como
/dev/hdb. Intente /dev/hdb en lugar de /dev/cdrom en el ejemplo anterior. Si esto le
falla, puede intentar /dev/hdc ó /dev/hdd. Si ninguno de ellos es su CDROM, entonces
puede que su unidad no sea IDE sino SCSI. Pruebe /dev/sda1, dev/sda2, etc.
["hda" es el primer disco IDE maestro, "hdb" es el primer discoIDE
esclavo, "hdc" el el segundo disco IDE maestro (si tiene dos interfaces IDE en
su equipo), hdd es el segundo disco IDE esclavo, "sda" es la primera interfaz
SCSI y el número es el número de dispositivoSCSI.]
Es una buena idea tener un dispositivo /dev/cdrom porque algunos programas asumen que
existe. Si no lo tien puede crearlo como un enlace simbólico, p.e.:
ln -s /dev/hdb /dev/cdrom
si su cdrom es el dispositivo /dev/hdb.
Si no puede "desmontarlo" y sale un mensaje que dice "the device is
already mounted or directory busy", puede que su directorio de trabajo actual esté
dentro de de l dispositivo, sálgase a otro directorio cualquiera y lo podrá
"desmontar".
Para "desmontar" (unmount) un CD ya montado, salga del directorio
/mnt/cdrom y teclee (como root):
umount /dev/cdrom
Su CDROM puede rechazar expulsar el disco si no está "desmontado". También
puede encontrar problemas al montar el próximo CD si el anteriior no fue
"unmounted". Si no puede "desmontarlo" porque "device is
busy", quizás /mnt/cdrom ó algun subdirectorio suyo, sea su directorio de trabajo
actual. Debe cambiarse a otro directorio cualquiera fuera del punto de montaje para poder
desmontarlo.
4.2.3 Cómo montar un floppy, una unidad zip, una partición DOS/Windows ó un disco
a través de la red
Muy similarmente al caso de un CDROM (vea la sección anterior)
Floppy. Se puede montar (como root) con:
mount -t auto /dev/fd0 /mnt/floppy
De nuevo, asegúrese de que el directorio /mnt/floppy existe y está vacio. También
/mnt/floppy no debe ser nuestro dirtectorio de trabajo actual, ni de ningún otro usuario
del sistema.
Tras un montaje con éxito. Los ficheros del floppy aparecen en el directorio
/mnt/floppy. Todos los usarios podrán vr los ficheros, pero solo root puede modificarlos
ó borrarlos. Lea más adelante para ver cómo hacer que otros usuarios puedan escribir en
el floppy.
Para demontar un floppy (debe hacerlo antes de sacarlo) use:
umount /mnt/floppy
Si no puede hacerlo porque "the device is busy", puede que /mnt/floppy sea su
directroio de trabajo actual, salga de el tecleando (por ejemplo):
cd
que le posicionará sobre su directorio home.
Unidad Zip. Monto una unidad externa por puerto paralelo (con emulación
scsi) con:
mount -t vfat /dev/sda4 /mnt/zipdrive
La opción "-t vfat" se usa porque los dispositivos zip vienen preformateados
con el sistema de ficheros vfat, que es el sistema de ficheros de windows con soporte para
nombres largos. No podrá expulsar el disco sin haberlo desmontado.
Todas la unidades zip (SCSI e IDE internas, SCSI externas y por puerto paralelo)
menos las USB aestan soportadas en Linux (Abril 1999).
Particiones DOS/Windows. Uso un arranque dual, para Linux y Windows.
Accedo a los ficheros de DOS/Windows tras montarlos con el siguiente comando:
mount -t vfat /dev/hda1 /mnt/dosdrive
De nuevo, puede que tenga que personalizar este comando para su caso, dependiendo de la
partición donde resida su sistema DOS/Windows. El parámetro /dev/hda1 significa el
primer disco duro IDE (hda), su primera partición (1); "hda2" es la segunda
partición de ese mismo disco; "hdb1" es la primera partición del segundo disco
IDE... Las unidades SCSI tienen nombres análogos que comienzan por las letrass
"sd", seguidas de una letra que indica la interfaz SCSI, y un número indicando
el id del dispositivo SCSI. Por ejemplo, "sda4" significa el cuarto dispositivo
conectado a la primera controladora.
Para montar las unidades de forma que cualquier usuario pueda leer y escribir, puede
hacer:
mount -t vfat -o user,rw,exec,umask=000 /dev/hda1 /mnt/dosdrive
Esto usa las opciones (-o user,rw,exec,umask=000) para dar a todo el mundo todos los
permisos sobre todos los ficheros de su partición DOS en /dev/hda1 (debería preguntarse
si esto es seguro para su sistema). Si sus usarios todavía no pueden escribir en esta
partición, puede que tenga que retocar los permisos del propio punto de montaje, por
ejemplo:
chmod a=rwx /mnt/dosdrive
Network File System (NFS). Esta tecnología es muy buena para acceder
directamente adiscos de toras máquinas Linux. Para montar un sistema de ficheros remoto
como NFS, primero verifique que el servicio NFS está habilitado (use el programa
setup). NFS también requiere permisos de la otra computadora. Para
configurar los permisos, ejecute como root:
netconf
y ajuste los valores en "Exported file systems".
Si prefiere hacerlo manualmente, los permisos se establecen en el fichero /etc/exports.
Mi /etc/exports es:
/usr hacker(ro) mars(ro)
/home hacker(rw) mars(rw)
/mnt hacker(rw) mars(rw)
Esto le da a la máquina llamada hacker y mars permisos para montar el directorio /usr
(solo lectura: read-only) y los directorios /home y /mnt (lectura y escritura:
read-write).
Si configura nfs adecuadamente, debería poder montar un directorio por la red
mediante:
mount -t nfs mars:/home /mnt/mars_home
Esto monta el directorio /home de la máquina mars en el punto de montaje
/mnt/mars_home (que debe existir y estar vacio).
Muchos sistemas operativos soportan NFS, pero MS Windows no. De modo que para compartir
remotamente con una máquina MS Windows, tenemos que emplear otra tecnología.
4.2.4 Cómo montar un sistema de ficheros remoto MS Windows mediante Samba
Un sistema de ficheros remoto tipo MS Windows puede montarse sobre un sistema Linux a
través del protocolo Samba (Samba debe estar instalado, venga aquí
si no lo tiene). Teclee un comando com este (como root):
smbmount //mars/windows /mnt/mars_windows -c marie
Esto monta el directorio windows de la maquina mars. El punto de montaje es
/mnt/mars_windows. La opción \c especifica que el servidor de samba es una maquina
llamada marie (esto no deberia ser necesario pero está en mi sistema).
Para que lo anteior funcione, en la máquina MS Windows debemos estblecer permisos para
compartir el directorio ó el disco que deseemos. Para hacerlo, en la máquina MS Windows,
habilite la compartición de recursos en "panel de control-red", arranque el
"explorqdor de windows", pulse el botón derecho del ratón sobre el directorio
ó disco que quiera compartir, haba click sobre propiedades, vaya a la pestaña
"compartir" y dese permisos, dele un nombre al recurso.
Para desmontar un directorio MS Windows, use:
smbumount /mnt/mars_windows
Si tiene problemas, vea:
man smbmout
4.2.5 Una forma rápida de acceder a floppies DOS/Windows
Use las mtools, no requieren de montado previo. Por ejmplo, podemos usar el comando
mdir para inspeccionar rápidamente el contenido del directorio raiz de
un floppy DOS:
mdir a:\
También podemos usar mcopy para copiar el fichero
"autoexec.bat" desde el raiz del floppy a mi directorio de trabajo actual en
Linux:
mcopy a:\autoexec.bat .
Debe ser root para poder escribir en un floppy.
Teclee mtools para ver los comamdos soportados por el conjunto
de las mtools, que son un paralelo de los comandos más populares de DOS (por ejemplo:
mformat, mtype, mren, mmove, mdel, mrd, mattib, ...), y use las páginas de manual (man)
si tiene problemas para usarlos:
man mtype
le muestra cómo sacar por pantalla el contenido de un fichero de texto en una
partición DOS.
Para acceder a otros dispositivos DOS que no sea a: ó b:, debe configurar las mtools
para indicarles qué dispositivos se asocian con las "letras" de DOS. Es muy
fácil-solo debe editar y modificar el fichero /etc/mtools.conf. Normalmente uso pico y
(como root):
pico /etc/mtools.conf
Por ejemplo, mi fichero /etc/mtools contiene una línea como:
drive c: file="/dev/hda1"
que instruye a mtools de que la partición "/dev/hda1" se
llamará"c:". El fichero "/etc/mtools.conf" requiere que únicamente
descomente (quite el "#" del principio) y ajuste la entrada apropiada.
4.2.6 "mount" y los usuarios normales
Debe editar el fichero /etc/fstab como root, p.e. Usando pico:
pico -w /etc/fstab
la opción "-w" deshabilita el fragmentado de líneas.
Aquí tenemos el contenido de mi fichero /etc/fstab:
/dev/hda2 / ext2 defaults 1 1
/dev/hdc3 /home ext2 defaults 1 2
/dev/hdc2 /usr ext2 defaults 1 2
/dev/hdc4 swap swap defaults 0 0
/dev/fd0 /mnt/floppy auto noauto,rw,user 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro,user 0 0
/dev/sda4 /mnt/zipdrive vfat noauto,rw,user,exec 0 0
/dev/hda1 /mnt/dosdrive vfat noauto,rw,user 0 0
none /proc proc defaults 0 0
hacker:/mnt/cdrom /mnt/hacker_cdrom nfs ro,noauto,user 0 0
hacker:/mnt/floppy /mnt/hacker_floppy nfs rw,noauto,user 0 0
hacker:/home /mnt/hacker_home nfs rw,noauto,user 0 0
hacker:/usr /mnt/hacker_usr nfs ro,noauto,user 0 0
Cada línea contiene seis campos delimitados por espacios. El primer campo es el nombre
del dispositivo. El segundo el punto de montaje (un directorio que debe existir en su
sistema Linux y donde el recurso será montado). El tercero es el tipo de sistema de
ficheros. El cuarto son opciones: "auto" = monta el dispositivo durante el
arranque; "rw" =se permite lectura y escritura; "ro" =solo lectura;
"user" =los usuarios tienen permiso para montarlo; "exec" =se permite
ejecutar programas de ese sistema de ficheros. Si tiene curiosidad sobre los números en
los campos 5 y 6 examine man fstab. La sección hacker en mi
/etc/fstab son sistemas de ficheros en otra máquina (llamada "hacker") en mi
red de casa y sirve como ejemplo sobre cómo montar recursos desde la red.
Si un usario tiene permisos para montar el cdrom (la opción "user" está
especificada), lo puede hacer con un comando como éste:
mount /mnt/cdrom
El comando que usa root para montar (vea aquí) no
le funcionará para un usario normal, porque el usuario está restringido por las opciones
en /etc/fstab de ahí que no pueda especificar el punto de montaje.
Para que un usario pueda escribir sobre un disco ó ejecutar un programa, ebe tener los
permisos adecuados sobre el punto de montaje. Por ejemplo, esto le dará a todos los
usuarios todos los permisos (lectura, escritura, ejecutar) en el directorio /mnt/floppy:
chmod a+rwx /mnt/floppy
Ahora (la opción "rw" también está establecida parael floppy en
/etc/fstab) el usario podrá escribir sobre el floppy. Si la opción "exec"
estuviese especificada en /etc/fstab, el usuario podría ejecutar programas desde el
floppy.
Observe que los sistemas de ficheros vfat no usa los permisos de la misma forma que lo
hace Linux. Linux maneja esta situación dando permisos por defecto al sistema de ficheros
montado: el usuario que lo montó tendrá permisos para escribir (si "rw" se
especificó en /etc/fstab) y los demás usuarios podrán leer solamente. Si quiere cambiar
este comportamiento, puede usar la opción "umask=" para la línea apropiada de
su /etc/fstab:
/dev/sda4 /mnt/zipdrive vfat noauto,rw,user,exec,umask=000 0 0
Esto le da a todo el mundo todos los permisos sobre su unidad zip (lectura, escritura,
ejecución).
En resumen. El fichero /etc/fstab es el lugar donde se guardan los valores por defecto
para montar sistemas de ficheros y qué clase de accesos se permite a los usuarios. Debe
personalizarlo para facilitar el montado de sus dispositivos.
4.2.7 un alias para el comando mount
Para crear un alias, como root, edito el fichero /etc/bashrc. De esta forma los alias
están disponibles para todos los usuarios del sistema. (Para crear alias específicos
para ciertos usuarios, use el fichero .bashrc en el directorio home del usuario.) La parte
que nos interesa de mi /etc/bashrc es esta:
alias cdrom="mount -v /mnt/cdrom"
alias ucdrom="umount -v /mnt/cdrom"
alias dosdrive="mount -v /mnt/dosdrive"
alias udosdrive="umount -v /mnt/dosdrive"
alias zipdrive="mount -v /mnt/zipdrive"
alias uzipdrive="umount -v /mnt/zipdrive"
alias floppy="mount -v /mnt/floppy"
alias ufloppy="umount -v /mnt/floppy"
La opción "-v" significa "verbose", esto es, le dice a Linux que
nos muestre mucha información durante el montaje. Para que los alias tengan efecto, el
usuario debe reentrar al sistema. Ahora puede montar el floppy con el comando:
floppy
y desmontarlo con:
ufloppy
4.2.8 montdo automático
Automount montará automáticamente los sistemas de ficheros conforme quiera acceder a
ellos y los desmonta cuando deja de usarlos.
Primero ejecute "setup" (como root). Vaya a la opción "netsysv".
Asegúrese de que el servicio automount ("autofs") está habilitado.
Configure automount editando los ficheros /etc/auto.master y /etc/auto.misc, p.e. (como
root):
pico /etc/auto.master
Mi fichero /etc/auto.master tiene:
/misc /etc/auto.misc --timeout 1
Esto dice que mis dispositivos automount se montarán en el directorio /misc (que debe
existir y estar vacío). El sistema automunt desmontará cualquiersistema de ficheros un
segundo después que deje de usarlos (p.e. Después de dejar el directorio). Esto es un
tiempo muy corto-- puede elegir uno más largo. Aquí va mi fichero /etc/auto.misc:
kernel -ro,soft,intr ftp.kernel.org:/pub/linux
cdrom -fstype=auto,ro :/dev/cdrom
floppy -fstype=auto,rw :/dev/fd0
zipdrive -fstype=vfat,rw :/dev/sda4
dosdrive -fstype=vfat,ro :/dev/hda1
hacker_cdrom -fstype=nfs,ro hacker:/mnt/cdrom
hacker_floppy -fstype=nfs,rw hacker:/mnt/floppy
hacker_usr -fstype=nfs,ro hacker:/usr
El primer campo es la "clave" que será el nombre del subdirectorio (bajo
/misc) sobre el que se montará el dispositivo. Este directorio NO debe existir. No sera
visible cuando usemos ls, pero podemos hacer cd a él y nustro dispositivo se montará. No
me preguntéis por qué es así ni cómo usar automount con una GUI. No lo se. Las líneas
que tienen "hacker" en mi fichero son el cdrom y el floppy de otra máquina en
mi red de casa.
Hago automount al directorio /misc de manera que también puedo montar manualmente, sin
usar automount, al directorio /mnt.
4.2.9 Cómo reconocer una unidad Zip de puerto paralelo
Esware
Durante la instalación, reponda "Si" a la pregunta
"¿Tienes adaptador SCSI?". Entonces, elija el dispositivo parallel port
zip drive (ppa) de la lista. Durante el particionado de discos, más tarde en la
instalación, tenga un disco zip en la unidad ó dígale al proceso de instalación que se
salte el intento de acceder a la unidad.
Si no instaló la unidad Zip durante la instalación inicial, puede añadir el soporte
para Zip más tarde de forma similar a añadir una tarjeta de red ó cualquier otro
módulo al kernel.
Como root, lance un terminal X y ejecute:
/usr/bin/kernelcfg
para insertar el módulo lla en el kernel ("ppa" quiere decir, imagino,
"puerto paralelo, primera interfaz 'a' ".)
Una vez que todo esté hecho, mire en /proc/modules para ver si el módulo ppa está
cargado (ó ejecute como root lsmod
para ver la lista de
móduulos). La información generada por kernelcfg va al
fichero /etc/conf.modules de modo que si tiene dificultades al descargar módulos (p.e.
Insertados por error)--como me pasó a mi--solo tiene que editar este fichero y ajustarlo
manualmente.
Ahora su dispositivo zip se debe reconocer. Ponga un disco zip en la unidad e intente
montarlo con el comando anterior (como root):
mount -t vfat /dev/sda4 /mnt/zipdrive
Con el kernel 2.0.36 e inferiores, no podrá usar una impresora conectada al puerto
paralelo del dispositivo zip (probablemente vaya bien con los kernels 2.2.x pero no lo
hemos probado). Use el comando:
uname -a
para ver que versión del kernel tiene instalada.
Esware 1.1 La instalación de la unidad zip no fiuncionó durante la
actualización a Esware 1.1 (el proceso de instalación dijo que no podía encontrar la
unidad zip). De modo que cuando se terminó la instalación, ejecuté los isguientes
comandos para insertar los módulos pertinentes en el kernel (como root):
/sbin/insmod parport
/sbin/insmod ppa
Para ejecutar estas líneas automáticamente tras el arranque, las podemos añadir al
final del fichero /etc/rc.d/rc.local (que es algo parecido al autoexec.bat de DOS).
Si esto no le funciona, puede editar /etc/conf.modules. El mio tiene una línea como:
alias parport_lowlevel parport_pc
y no hay ninguna línea mencionando un módulo "ppa".
4.2.10 Se puede tener acceso IO en un disco con sistema de ficheros de 32-bits
No se nada sobre discos duros, pero leí un artículo sobre Red Hat 6.0 de Edward Choh
(http://hardwarezone.community.com.sg/main.htm), en el que se daban trucos interesantes,
incluyendo configurar la entrada/salida a 32 bits y el acceso directo a memoria (DMA). Lo
intenté y salió bien. Le advertimos de que esto puede modificar el contenido de su disco
duro, de modo que hágalo si de verdad es un recién llegado, no le puedo garantizar que
le funcione.
Establecer la IO a 32 bits y el DMA tiene que hacerlo root y lo hice ejecutando Linux
en modo monousuario (para minimizar el posible daño al sistema de ficheros si algo fuese
mal y tuviese que reiniciar). Definitivamente, no lo haría en un sistema ejecutando las
X-windows ó con muchos procesos abiertos y tendría una copia de seguridad de cualquier
dato importante.
Digamos que queremos habilitar el acceso a 32 bits para el primer disco IDE, hda.
Primero comprobamos el rendimiento del disco y lo anotamos:
hdparm -t /dev/hda
Luego, examinamos el tipo de IO y la configuración de DMA:
hdparm -c /dev/hda
[mi sistema dió 0, lo que significa que la IO a 32 bits no está habilitda y que se
usa un acceso a 16 bits por defecto]
hdparm -d /dev/hda
[mi sitema dió 0 de nuevo, significando que el acceso DMA al disco duro está
deshabilitado].
Ahora, habilitamos el acceso a 32 bits y la DMA:
hdparm -c 1 /dev/hda
hdparm -d 1 /dev/hda
Si pedimos de nuevo el rendimiento del disco para comparar:
hdparm -t /dev/hda
Si todo funcionó, el rendimiento debe haber mejorado, podemos confirmar la nueva
configuración para que se activen cuando reiniciemos el equipo.
hdparm -k 1 /dev/hda
Para que la configuración sea válida cada vez que reiniciemos el equipo, podemos
añadir una línea al final del fichero /etc/rc.d/rc.local (que es equivalente al
"autoexec.bat" de DOS):
hdparm -c 1 -d 1 -k 1 /dev/hda
Si algo no fue como esperábamos, podemos reiniciar en cualquier momento y los valores
antiguos se tomarán, siempre que no hayamos efedtuado la última operación.
Llevé a cabo este afinado en 4 discos duros en nuestra red casera. Tuvimos éxito con
3 discos nuevos: el rendimiento mejoró entre un 30-300% y al menos una de las máquinas
sigue yendo más rápida que antes. Uno de los discos, que siempre da problemas, colgó a
la máquina durante el test de rendimiento y tuve que resetearla (no hubo daños).
4.3 Trabajando con las X-windows
4.3.1 Cómo instalar kde en
Red Hat 5.2
Red Hat 5.2 no instala kde por defecto, porque cuando se publicó Red Hat 5.2, había
un problema de licencias con una de las librerías que usa kde. De todos modos, kde es una
GUI muy buena, el problema de licencias está resuelto y la última versión (6.0) incluye
kde (y el más barroco GBOME). No obstante, los binarios de kde están en sus Cds de Red
Hat 5.2, solo debe instalarlos por su propia cuenta (si no tiene los Cds, puede
descargarse los binarios del sitio de kde en internet.)
Primero compruebe que su servidor X funciona ejecutando:
xinit
[El servidor X es un sistema de ventanas desnudo, sin un gestor gráfico. Puede
ejcutar sus programas X desde aquí, tecleando el nombre del ejecutable (anteponiédoles
./ ó dando el path completo) en el terminal X,pero no podrá mover ó cambiar el tamaño
de las ventanas, añdirle iconos, etc.)
Puede salir del servidor X tecleando exit ó presionando
<Ctrl><Alt><Backspace> para matar al servidor. (Esta última solución
es la más adecuada cuando se cuelgue el servidor X\no reinicie si eso le ocurre.) Si su
servidor X no funciona, vea la sección siguiente.
Ahora, ingrese como root. Monte el CD de Esware:
mount /mnt/cdrom
Vaya al directorio apropiado:
cd /mnt/cdrom/kde/distribution/Esware/i386/binary
Resulta útil el autocompletado de comandos (presione Tab) cuando tenga que teclear
paths ó nombres de ficheros largos.
Lea el fichero README:
cat README-2rh51-rpms | more
Use rpm "RedHat Package Manager" para instalar los
paquetes necesarios
rpm -i packagename
Los paquetes tienen nombres que acaban en .rpm. Primero instale las librerías qt,
despues el soporte kde, las librerías, después la base. Si se equivoca en el orden, la
verificación de dependencias fallará y no se instalará el paquete (rpm le dará un
mensaje). Esto no es mayor problema, solo reinstale el paquete y siga con el siguiente.
Después que haya instalado el paquete base, puede instalar los demás (utill, admin,
network, games, graphics, multimedia)--no son grandes, de modo que puede pensar en
instalarlos todos. Al final ,verifique lo que ha instalado:
rpm -ivh *.rpm
Las opciones "vh" muestran información adicional. Tendrá mensajes como
"the package is already installed". Si estos mensajes ocupan más de una
pantalla, puede retroceder usando <Shift><PgUp>. Si de verda no le gusta el
gestor de paquetes desde línea de comandos, puede utilizar un forntal gráfico que se
llama glint. Solo tiene que teclear "glint" en un terminal X.
Ahora le decimos al sistema que kde es nuestro gestor de ventanas por defecto. En el
directorio home del usuario, creamos un fichero llamado .Xclients:
pico .Xclients
que contendrá solo una línea:
/opt/kde/bin/startkde
Teclee la línea y guarde el fichero. Ahora, haga el fichero ejecutable para cualquier
usuario:
chmod a+x .Xclients
Verifique que los permisos han cambiado:
ls -l .Xclients
[Los ficheros que comienzan por un punto "." no se muestran con un comando
"ls" normal, son parecidos a los ficheros "ocultos" de DOS. Debe pedir
su nombre explícitamente ó usar "ls -l".]
Si creó el fichero como root, cambie el propietario y el grupo a los valores
adecuados:
chown user_name .Xclients
chgrp user_name .Xclients
Eso es todo. Ahora, al teclear
startx debería ejecutarse el
servidor X con kde como gestor de ventanas.
4.3.2 Cómo configurar la tarjeta de vídeo, el monitor y el ratón para las X-windows
Esto se debería configurar durante la instalación de Esware a menos que decidiese
saltarse estos pasos. Para configurarlos ahora, ejecute, como root, uno de estos
configuradores:
Xconfigurator
XF86Setup
xconf
El camino más fácil es el comando "setup" (como
root) y acceder a Xconfigurator desde ahí.
Para configurar X-wondows bajo Linux, debe conocer su hardware. De su monitor debe
conocer las frecuencias de sincronización (vertical y horizontal) que soporta. El mensaje
que sale durante el arranque de la máquina, le puede informar del tipo de tarjeta de
video y de la memoria que tiene. Lea la etiqueta bajo su ratón para saber qué tipo de
ratón tiene. La próxima vez que compre un ratón. Busque uno de 3 botones Logitech ó
similar (Linux hace un buen uso de los tres botones):
Al testear el servidor X, si su pantalla se apaga, muestra líneas extrañas ó en
cualquier sentido, es obvio que no funciona, mátelo rápidamente con la combinación
<Ctrl><Alt><Backspace> y verifique su configuración. Ejecutar un
servidor mal configurado en frecuencias puede hacerle daño al monitor.
Si de verdad tiene problemas, configure un servidor básico vga (640x480) primero. Lo
puede afinar más tarde, cuando aprenda cómo funcionan las cosas en su sistema.
4.3.3 Cómo ejcutar el sistema X-window remotamente
- Araanque el siervidor X en la mquina local. p.e.:
xinit
- Desde el terminal X, de a la máquina remota permisos para usar su consola:
xhost name_of_the_remote_server
En el ambiente seguro de mi casa, le podría haber dado permiso a todos los servidores
para usar mi consola:
xhost +
- Haga telnet al servidor remoto.
- Arranque un programa X en el servidor remoto dirigiendo el display a nuestra máquina
local, p.e., podemos arrancar un gestor de ventans:
startkde -display local_machine_name:0.0 &
El símbolo "&" pejecuta el comando en segundo plano, de modo que su
ventana de telnet sigue disponible para más comandos.
El 0.0 significa "display zero, screen 0", que es su primera pantalla en el
primer display y tiene sentido cuando tiene varias sesiones de X-windows concurrentes en
su máquina Linux.
No tiene que especificar la opción "-display" si su variable de entorno
DISPLAY especifica la localización correcta de su terminal actual, que es el caso por
defecto en mi sistema, pero no es así para todo el mundo. Puede verificar su DISPLAY
mediante:
echo $DISPLAY
- Cuando termine la sesión X remota, reestablezca el control a su servidor X mediante:
xhost -name_of_the_remote_server
ó
xhost -
Por ejemplo: Esta secuencia de comandos ejecutará Netscape en la máquina remota,
llamada marie, dirigiendo el dispaly al servidor X que se ejecuta en mi máquina hacker:
startx
xhost marie
telnet marie
[login]
netscape -display hacker:0.0 &
[do my stuff]
[logout]
xhost -marie
En principio, puede ejcutar cualquier programa en cualquier ordenador de la red, y
dirigir su salida a cualquier otro equipo (no necesariamente al que ud. utiliza)
Uso mucho esta técnica para ejcutar programas grandes (kde, Word Perfect 8, y
Netscape) en máquinas pequeñas (486-33, 8 MB mem) que no podrían ejecutarlos pr sí
mismas. También es un modo adecuado y raápido para trabajar con ficheros en un sistema
remoto para el que no se ha configurado un acceso por nfs.
4.3.4 Cómo tener varias sesiones de X ejecutándose simultáneamente
Cuando teclee el primer comando
startx en su sistema, le abre la
primera sesión X en el display por defecto 0. La segunda sesión debe abrirse en un
display diferente. Por ejmplo, esto le abrirá una segunda sesión X en el display 1:
startx -- :1
Puede tener hasta 6 sesiones X concurrentes. Use <Ctrl><Alt><F7> para
conmutar al display 0, <Ctrl><Alt><F8> al segundo, etc. hasta
<Ctrl><Alt><F12> Pruebe man startx si
quiere más información.
De forma similar, puede abrir otro servidor X, desnudo, sin gestor de ventans. Esto se
abre en el display 2:
xinit -- :2
En este servidor desnudo podemos ejecutar una variedad de gestores de ventanas:
fvwm2
(to run fvwm2)
startkde
(to run kde)
afterstep
(to run afterstep)
fvwm
(to run fvwm)
AnotherLevel
(to run AnotherLevel)
gnome-session(to run Gnome)
Por supuesto, estos gestores de ventans alternativos, solo se ejecutarán si están
instalados en su sitema. Los mencionados anteriormente están disponibles en su CD de
Esware para que ud. decida cual instalar. Yo uso casi exclusivamente KDE, aunque los otros
gestores son más pequeños y más rápidos. Gnome es un proyecto X-windows famoso, del
que se dice que es más avanzado y bonito que KDE, pero todavía tiene muchos fallos, de
modo que no es recomendable para un recién llegado.
4.3.5 Cómo tener un login gráfico
Para arrancar su servidor X automáticamente durante el arranque y tener así un prompt
en un display gráfico, debe editar un carácter en el fichero /etc/inittab. Donde se
especifica algo así como:
id:3:initdefault:
Cámbielo por:
id:5:initdefault:
Esto establece el nivel de ejecución por defecto a 5, que es el modo gráfico. El
significado de los propios niveles de ejcución, se explican en el mismo fichero
/etc/inittab:
0 - halt (Do NOT set initdefault to this) (parada, NO establezca este
nivel como nivel inicial)
1 - Single user mode (monousuario)
2 - Multiuser, without NFS (The same as 3, if you do not have networking)
(multiusuario, sin NFS, lo mismo que 3 si no tiene red)
3 - Full multiuser mode (multiusuario total)
4 - unused (no usado)
5 - X11 (gráfico)
6 - reboot (Do NOT set initdefault to this) (reinicio, NO lo establezca
como nivel de inicio)
Puede cambiar el nivel deejecución desde la línea de comandos, mediante (como root):
init 6
que reiniciará su equipo.
4.4 Impresora y Tarjeta de Sonido
4.5.1 Cómo configurar la Tarjeta de Sonido
Pruebe a ejecutar (como root)
setup
El tercer botón desde arriba ("sndconfig") configura la tarjeta de sonido. A
menos que tenga una tarjeta muy moderna, esto le funcionará. Al fianl de la
configuración, Linus Torvalds pronuncia "Linux". ("sndconfig"
también se puede ejecutar directamente desde la línea de comandos--teclee
sndconfig.)
Puede comprobar su tarjeta y su cdrom con un reproductor. Ponga un CD de música en su
unidad CDROM y teclee:
cdplay
Si no le funciona, quizás no tenga /dev/cdrom?. Verifique si puede montar un CD de
datos en la unidad como root (mire aquí) y cree el
dispositivo /dev/cdrom enlazándolo al dispositivo correcto, mayormente será /dev/hdb,
p.e.:
ln -s /dev/hdb /dev/cdrom
Si cdplay funciona para root, pero falla para un usuario normal,
quizás deba darle permisos (como root) a todos los usuarios para que lean y escriban a
/dev/cdrom:
chmod 666 /dev/cdrom
(El directorio /dev es donde todos sus dispositivos aparecen, como ficheros.)
Para parar la musica, puede presionar un botín de su unidad ó teclear el comando:
eject
4.4.2 Cómo configurar la impresora
Como root, arranque una sesión X:
startx
Lea aquí si no tiene configurado adecuadamente un servidor X.
Lance un terminal X (el botón con dos maquinas en la barra de kde) y teclee:
printtool
Configurar la impresora adecuada es lo más importante. Si no sabe cual es, intente:
en Esware : lp1 (este es el primer puerto paralelo) ó lp2 (tel segundo puerto
paralelo) ó lp3 (el tercer puerto paralelo); en Esware : lp0 (el primer
puerto paralelo) ó lp1 (el segundo puerto paralelo) ó lp2 (el tercer puerto paralelo.
Intente imprimir una página de texto ASCII directamente al puerto. Solo cuando esto
funcione eche campanas al vuelo.
Si está configurando una impresor remota, asegúrese de que su máquina tiene permisos
en la máquina remota. Los permisos se establecen en /etc/hosts.lpd (más seguro) ó en
/etc/hosts.equiv (menos seguro). Estos ficheros símplemente listan los nombres de las
máquinas, una máquina por línea. La mía está así:
hacker
mars
El fichero /etc/hosts.lpd no existía en mi equipo, de modo que lo creé.
Para un a información rápida acerca de las impresoras en su máquina, vea el fichero
/etc/printcap:
cd /etc/
cat printcap
Seguido detallamos el significado de algunos de los códigos que tengo en mi
/etc/printcap:
: |
Separador de campos (separa las entradas en una línea). |
\ |
(al final de la línea) Continua en la siguiente línea. |
lp |
Nombre de al impresora. "lp" es el nombre de la impresora
por defecto en su sistema. La subsiguientes impresoras, toman, por defecto, los nombres
lp0 ó lp1, ... (ó lo que ud quiera) que no deben confundirse con los nombres de los
dispositivos (puertos) a los que están conectados. |
sd=/var/spool/lpd/lp |
Mi directorio de spool (sd). |
mx#0 |
Tamaño máximo de lostabajos de impresión (mx) en bloques.
"0" significa "sin límite" |
sh |
Suprimir cabeceras (sh). Una cabecera es una página con su nombre,
que se imprime antes de imprimir su página (un gasto de papel y tiempo en un entorno
doméstico) |
rm=mars |
Nombre de la máquina remota (rm), que en mi sistema se llama
"mars" (mi impresora está conectada a otra máquina) |
rp=lp
or
lp=/dev/lp0 |
Nombre de la impresora remota (rp), que es el nombre de la impresora
en la máquina remota ("lp" en mi sistema)
ó
el nombre del dispositivo en la máquina
local. "/dev/lp0" es el primer puerto paralelo en EsW1.1 |
if=/var/spool/lpd/lp/filter |
Filtro de entrada (if).Los trabajos de impresión se formatean con
este filtro antes de ser enviados a la impresora. |
sf |
Suprime el avance de página que normalmente se envía cuando se
termina una impresión (uselo si su impresora se empeña en lanzar una hoja en blanco
cuando termina un trabajo). |
La impresora se controla con el comanco
lpc (como root).
Teclee "?" para ver las opciones. Este programa es notorio por sus
peculiaridades, de modo que no se desanime fácilmente. La cola de impresión puede verse
con lpq y borrarse con lprm,
ambos funcionan
para usuarios normales, no solo para root. Para imprimir desde la línea de comandos
podemos usar lpr.
4.4.3 Word Perfect 8 no tiene un driver para mi impresora
Si instaló su impresora usando "printtool" y tenía un driver para ella,
configure Word Perfect para que use el driver "passthru postcript".
4.5 Cómo configurar la red
4.5.1 Merece la pena tener una red doméstica?
Es una idea muy buena. Le va a permitir usar máquinas que tenía desechadas
símplemente porque estaban desfasadas y ya no tienen el poder necesario para las
aplicaciones actuales. Las puede usar y a través de la red pueden compartir los recursos
de otras máquinas más modernas, incluso pueden ejecutar aplicaciones en esas máquinas.
4.5.2 Cómo configurar la red en casa
Hardware. Debe configurarel hardware de red adecuadamente. La trajeta de red
debe haberse configurado durante el proceso de instalación. Si no fue así, puede
hacerlo, p.e. desde X-windows. Si tiene más de una tarjeta de red, también deberá
instalarlas manualmente, pues Linux solo reconoce la primera de ellas durante el proceso
de instalación.
Arranque un terminal X, haga "su" para darse privilegios de root y ejecute:
/usr/bin/kernelcfg
Bajo Linux, la mayoría de los drivers para tarjetas de red se implementan como
módulos. De manera que configurar una tarjeta implica insertar en el kernel el módulo
adecuado con sus parámetros. No se necesita recompilar el kernel, ni reiniciar la
máquina (a menos que tenga una tarjeta muy poco común). Para averiguar qué módulos y
parámetros se necesitan, vea la Linux Network Administrator Guide (fichero
/usr/doc/LPD/nag en su sistema ó verifique http://metalab.unc.edu/mdw/index.html#guide).
Esta excelente guía se la conoce como nag.
Los parámetros (IRQ y direcciones) me dieron problemas con dos tarjetas de red en una
de las máquinas-- hay que comprobar que no tenemos conflictos de hardware. Una fuente
habitual de estos conflictos, viene de que la tarjeta se quiere configurar con IRQ 5, que
está ocupada por la SoundBlaster, ó IRQ 3, que entra en conflicto con el segundo puerto
serie (COM2, cua1, ttyS1). Si miramos en /proc/interrupts, /proc/ioport y leyendo los
mensajes de arranque, encontraremos ayuda para decidir que IRQ asignarle a nuestra/s
tarjeta/s.
Por ejemplo tengo una tarjeta de Western Digital, WD8013 (según nag, es la misma que
SMC Elite y SMC Elite plus), que configura IRQ 10 (establecida por un jumper en la propia
tarjeta) bajo la dirección 0x300 y usa el módulo "WD". Otra tarjeta, "SMC
EtherEZ" (que no tiene jumpers) trabaja con IRQ 9, dirección 0x240 y usa el módulo
"SMC EtherEZ". Por favor asegúrese de no omitir el prefijo "0x" en la
dirección--quiere decir "hexadecimal" y debe aparecer.
Una vez que hemos añadido el módulo y rearrancado el kernel, compruebe /proc/modules
para ver si el módulo se ha cargado (ó ejecute como root lsmod).
La información de kernelcfg va al fichero /etc/conf.modules
de modo que si tiene problemas (por ejemplo, yo tuve problemas eliminando módulos
insertados por error), solo tiene que editar y ajustar a mano este fichero, usando
pico.
Network(Red). Tras configurar las tarjetas de red y conectar los cables,
configure la red mediante (como root):
netconf
Este programa tiene ayuda!
netconf también se puede
ejecutar desde una GUI. Si necesita saber más sobre cómo funciona una red, puede leer la
guía que mencionábamos, nag.
Cómo y qué información suministrarle a
netconf depende de su
caso particular. Como mínimo deberá rellenar la "información básica de la
máquina" ("Basic Host Information"), habilite la primera interfaz de red
eth0, rellene el campo para el nombre, alias y dirección IP. Proporcione información
sobre otras máquinas ("Information About Other Hosts"), nombres, aliases y
direcciones IPs de otras máquinas de su red local). Esta información se guarda en los
ficheros: /etc/hosts y /etc/sysconfig/network, que podrá editar y ajustar a mano.
Cuando configure la red, no se dedique al dispositivo local "loopback driver"
que tiene dirección IP 127.0.0.1. Siempre está ahí--es la IP que usa la máquina
para conectarse consigo misma.
Si no tiene una dirección IP (que será el caso habitual de alguien que se instala una
red en casa sin conexión al exterior), puede inventarse una, sin importar demasiado;
cuando alguna vez se conecte a internet a través de un modem, su proveedor de internet le
asignará (a su modem) un dirección IP elejida entre las que tenga él disponibles en ese
momento. De lo único que debe preocuparse es de que las IP que use para su red casera,
sean formalmente correctas y se correspondan con la clase de red que pretende configurar
(clase A, B ó C). Vea el capítulo sobre direcciones IP en la guía que mencionabamos:
nag (/usr/doc/LDP/nag) ó http://metalab.unc.edu/mdw/index.html#guide.
Normalmente, lo más adecuado para una red doméstica es usar una de clase C (hasta 254
máquinas, la más pequeña de las clases) y elegiremos para el primer campo de la
dirección IP, un valor entero que varía entre 192 y 223. El último campo de la
dirección IP va a identificar a su tarjeta/máquina, y no puede usar el
"0"--toda la red de clase C-- ni "255"--dirección de multidifusión
(broadcast). Los dos campos intermedios pueden tener enteros entre "0" y
"255". De esta manera, 223.223.223.1 es la primera máquina de la Red de clase
C: 223.223.223.0. Lo más normal es que tenga como dirección de "broadcast"
223.223.223.255 y que su máscara de red sea 255.255.255.0 (esto cambia cuando fragmenta
su red C en varias mas pequeñas, pero esa técnica, "subnetting" no la vamos a
ver aquí)
Habitualmente, la primera máquina de una red es la que se espera que tenga conexión
con el exterior (aunque no hay nada que obligue a ello). Por ello, al configurar mi red,
en el campo GATEWAY puse xxx.xxx.xxx.1 para todas las máquinas, excepto para la propia
máquina xxx.xxx.xxx.1 donde este campo lo dejé vacio. Luego netconf
insertó como gateway 0.0.0.0 en el fichero /etc/sysconf. Lo que provocó una serie
de mensajes desagradables durante la carga de la tarjeta de red en el proceso de arranque.
Para eliminarlos, edite /etc/sysconfig/network:
GATWAYDEV=
GATEWAY=
[No se necesita un gateway en una tarjeta de red, puesto que no vamos a tener conexión
al exterior con estos dispositivos, si acaso lo haremos a través de un módem, que usa
una interfaz de red del tipo "ppp" y que cuando lo utilicemos, se establece a si
mismo como gateway por defecto.]
El nombre de una máquina es completamente arbitrario-- el administrador suele elgir
una palabra corta de su agrado. El nombre de dominio también es totalmente arbitrario, a
menos que tenga una conexión permanente con internet, en cuyo caso, debe tener un nombre
de dominio registrado. Trate de inventar algo que no lo use nadie por ahí, le hará la
vida más fácil cuando se quiera conectar por modem a internet.
En lo relativo al Servicio de Nombres de Directorio DNS (llamado "named"), lo
habitual es que tras la instalación lo tengamos configurado como "solo cache".
Puede decidir no utilizar DNS (cuando una petición DNS no encuentra lo que busca tarda
mucho en dejar de intentarlo). Para usar el DNS, el servicio "named" debe estar
habilitado-- verifíquelo ejecutando setup. Para configurar el
servicio como "solo cache", rellene el campo adecuado en la pantalla de
netconf. P.e., rellené con "nameserver 1" a mi primera
máquina (xxx.xxx.xxx.1) en todas las máquinas de la red (para la propia máquina
xxx.xxx.xxx.1 le puse la dirección loopback 127.0.0.1).
En mi red no necesitaba ningun router a otras redes ó hosts, dado que no tengo más
redes locales. De modo que dejé en blanco estos campos.
Aparte de rellenar estos campos de
netconf en cada equipo, no
tuve que hacer nada más para tener la red operativa.
Reinicie las máquinas una a una en cualquier orden y mire los mensajes del proceso de
arranque, no es necesario pero le puede servir. Si los mensajes pasan muy deprisa, puede
usar <Shift><PgUp> para recorrerlo hacia arriva ó utilizar "dmesg"
desde línea de comandos una vez que el sistema haya completado el arranque. ¿Se
configuraron correctamente sus tarjetas? Utilice (como root) el comando route
para ver si la interfaz eth0 está funcionando. Con el comando ping
puede testear conexiones individuales entre máquinas. Intente hacer un telnet a su propia
máquina para ver si funciona el lazo local:
telnet name_of_the_machine_you_are_sitting_at
Si consigue acceder con éxito, puede salir de la sesión telnet con:
exit
Despues, intente acceder con telnet a una máquina remota de su red:
telnet name_of_a_remote_machine
Si esto funciona con todas sus m´quinas, ha instalado bien todas las tarjetas de red.
Si usa "ppp" para conectarse por teléfono a un Proveedor de Servicios de
Internet (ISP), tendrá una nueva interfaz de red: "ppp0" y a través de ella
podrá hacer telnet a otras máquinas del mundo.
4.5.3 Tengo problemas para configurar mi enlace telefónico a Internet
Si yo fuera ud. instalaría "kde" y usaría "kppp" (si no lo tiene
instalado,mire aquí para ver cómo instalarlo.) kppp es
realmente sencillo de configurar y ejecutar. Ejecute kpppd (esta en el menú de
internet en kde), pulse el botón "setup", cree una cuenta, rellene la
información requerida: nº de teléfono, protocolo de autenticación, el dominio de su
ISP, la dirección IP del DNS, información que le debe haber proporcionado su ISP.
Seguidamente, creamos un dispositivo llamado /dev/modem, enlazándolo simbólicamente a
/dev/ttyS1 (como root)
ln -s /dev/ttyS1 /dev/modem
ttyS1 debe funcionar si su modem está conectado al puerto que DOS llama COM2. Use
ttyS0 para COM1, ttyS1 para COM2 y ttys2 para COM3. El modem no llamará si ha elegido un
puerto incorrecto.
Finalmente, cuando intenté ejcutar kppp, obtuve un mensaje de error donde se decía
algo sobre "lock". Fuí al fichero /etc/ppp/options y me aseguré de que estaba
vacio, editándolo:
pico /etc/ppp/options
y borré la palabra "lock" (lo único que contenía este fichero), y guardé
el archivo.
Tras estos pasos, kppp se pudo conectar a mi ISP sin problemas.
Con Esware se necesita un paso más, establecer el "suid"
("sustituir id de usuario") a kppp, de forma que cuando se ejecute lo haga con
los permisos de su propietario: root. Si no se lo ajustamos, kppp se queja y dice que no
está configurado correctamente y que no puede crear un fichero de bloqueo. Así que como
root:
cd /usr/bin/kppp
chmod a+s kppp
Resolviendo problemas (Troubleshooting). Si su modem no marca, y ud. está
seguro que el puerto al que lo conecta está bien referenciado en su configuración,
seguramente, es el modem que no está bien configurado ó se trata de un
"winmodem" (en este caso, tendrá que adquirir otro para poderlo usar con
Linux). Por ejemplo, en una ocasión tuve que ejecutar kppp, editar los "modem
commands" y establecer ATZ1 como cadena de inicialización en lugar de la típica ATZ
para los modems compatibles con el estándar Hayes.
Si su modem marca correctamente pero falla la autentificación, es posible que su ISP
utilice otro protocolo para este menester. Llámeles y pregúnteles por el protocolo de
autentificación que utilizan. Puede intentar PAP ó CHAP (desde su configuración de
kppp) hasta que le digan cual es el que usa su ISP.
El rendimiento (velocidad) y la fiabilidad de la conexión con kppp se mejora mucho si
actualizamos desde EsW1.0 a EsW1.1, de modo que si tiene problemas de velocidad, puede que
sea hora de actualizarse.
Si sigue teniendo problemas configurando ppp, puede probar a usar
minicom
para ver si puede hacer funcionar su modem. minicom es algo
parecido a PROCOMM para Linux.Debería estar en su sistema si decidio instalarlo. Seguido
damos una comunicación a un grupo de noticias: comp.os.linux.help que explica cómo
arrancar ppp manualmente usando minicom (está recortada para
ganar espacio aquí):
From: mark <balthazaar@one.net.au> Subject: Re: pppd problem with
kppp
BachuZ wrote:
>>Also, for an experiment, try using minicom to connect to your ISP, start ppp
manually..this can prove buggy scripts. >how would u do that?
Easy!! If your ISP doesn't allow a manual logon then you might be in trouble. Every ISP
I've ever used does allow this, so.. 1. Start minicom. 2. dial your
ISP. 3. Log in. 4. AFter your ISP starts PPP, quit minicom with ALT-Q (or
whatever the sequence is to 'quit without reset'). 5. start pppd, eg:
[Fácil, Si su ISP no permite hacer log manual tendrá problemas, pero todos los ISP
que he visto lo permiten.... 1. Arranque minicom. 2. marque el nº de su ISP.
3. Log in (nobre de usuario, contraseña). 4. Cuando su ISP arranque el protocolo
PPP, cierre minicom con Alt-Q (salga de minicom sin resetar el modem). 5. arranque
pppd]
pppd -d -detach /dev/modem 115200 &
OK, PPP will be running. Try pinging your ISP or another known IP address. That
will test everything is OK. BTW, this is all in the PPP-HOWTO. If you can get PPP
running this way, then you have a scripting problem. If PPP doesn't work, you have a PPP
configuration problem. Cheers.
[OK, PPP esta ejecutándose. Pruebe a hacer ping a su ISP y a otras máquinas de
internet que conozca. Si lo consigue de esta forma y no puede ejecutar PPP normalmente,
entonces su problema seguramente está en alguno de los scripts. Si con minicom, PPP no le
funciona, su problemas es de configuración.]
Línea de comandos. Si quiere arrancar ppp desde la línea de comandos, ejecute
netconf (como root) para configurar la primera interfaz ppp (ppp0).
Cuando termine la configuración, puede arrancar la interfaz con el comando:
ifup ppp0
y pararla mediante:
ifdown ppp0
Configurar ppp desde la línea de comandos no es mucho más complicado que hacerlo con
kppp. Hay montones de scripts para arrancar/parar ppp desde línea de comandos, pero
aparentemente, no son tan sencillos de configurar y usar, y muchos recién llegados tienen
problemas con ellos.
4.5.4 Cómo navegar por la red sin un modem
Otra máquina de su red debe tenerlo (ó algun otro tipo de conexión a Internet :-)
Configure IP masquerading (enmascaramiento IP). De esta forma todas las peticiones que
vayan desde su red a su ISP aparecerán originadas desde una única máquina, y el ISP les
permitirá salir a Internet. Un enmascaramiento sencillo necesita solo un comando (en la
máquina que tiene el modem):
/sbin/ipfwadm -F -p m
Esto configura el enmascaramiento como su política de reencaminamiento por defecto,
por lo que puede ser inseguro pero sin mayores riesgos para un usuario en su casa. (los
riesgos son de que alguien en su propia red manipule esta ruta para ocultar su identidad y
hacer lo que quiera). Para más información, consulte /usr/doc/HOWTO/mini/IP-Masquerade.
Una configuración más segura puede ser esta:
ipfwadm -F -p deny
ipfwadm -F -a m -S 192.168.1.1/32 -D 0.0.0.0/0
ipfwadm -F -a m -S 192.168.1.3/32 -D 0.0.0.0/0
ipfwadm -F -a m -S 192.168.2.0/24 -D 0.0.0.0/0
Establecemos como política por defecto "denegar" y le hacemos masquerading a
dos máquinas que declaramos explícitamente: 192.168.1.1 y 192.168.1.3. Además le hace
masquerading a cualquier máquina de la red 192.168.2.0. El número /32 significa
red punto a punto (esto es "máquina a máquina"), la opción /24 identifica a
una red de clase C. El campo -D 0.0.0.0/0 identifica la ruta por defecto que las máquinas
a las que enmascaramos, van a usar para salir a Internet.
CON Esware 1.1 EL NOMBRE DEL COMANDO ES "ipfwadm-wrapper" (en vez de
"ipfwadm").
Si quisiera que estos comandos se ejecuten cada vez que reinicie el sistema, añadalos
como líneas al final del fichero /etc/rc.d/rc.local. Este fichero es como el autoexec.bat
de DOS. Como siempre, se recomienda leer la página de manual y otra documentación para
ver qué hacen los comandos y qué otras opciones tienen.
less /usr/doc/HOWTO/mini/IP-Masquerade
man ipfwadm
4.5.5Cómo usar Samba
Samba es para operar en redes mixtas Linux-MS Windows. Es un programa que hace que una
máquina Linux aparezca como un servidor MS Windows NT, y así le permite a otras
máquinas con Windows 3.1/95/98 conectarse en red con Linux como servidor. Samba no
solamente reemplaza a WinNT\muchos dicen que hace el trabajo de WinNT mucho mejor que
WinNT!
Una de las máquinas que tengo tiene un arranque dual Linux/Win95. Configuré mi red de
forma que si arranco con W95, otra máquina actua como servidor de Samba. De esta forma,
la máquina W95 tiene acceso a la impresora de red, directorios compartidos en Linux,
puede hacer telnet, navegar por Internet a través de un modem en una máquina Linux, etc.
También puedo acceder a los ficheros de la máquina W95 desde las Linux.
Solo es necesario configurar Samba en una de las máquinas Linux.
Primero, ejecutamos setup como root, elejimos ntsysv de la barra
de menus, comprobamos que el servicio "smb" está habilitado. (El programa setup le proporciona ayuda presionando F1. Solo por si tiene curiosidad
sobre los diferentes servicios) Si smb no está listado ahí, puede que no lo instalara?
Ponga el CD de Esware en la unidad, móntelo, arranque la utilidad de instalación (como
root) glint ) ó gnorpm y añada Samba a su sistema.
La segunda parte es configurar Samba. Es relativamente simple puesto que todo se hace
desde un único fichero, que está muy bien documentado, /etc/smb.conf. Una configuración
mínima supone proporcionar un nombre de GrupodeTrabajo ("workgroup"). Observe
que si no selecciona la opción "host allow", todas las máquinas están
autorizadas, que es probablemente lo que quiera en una red doméstica. El resto de
opciones que proporciona /etc/smb.conf, puede que necesiten ajustes personales para
adaptarse a sus sistemas, pero no hacen falta para que una máquina W95 se pueda conectar
a su servidor Samba.
Compruebe estas opciones:
domain master = yes
domain logons = yes
deben estar habilitadas en /etc/smb.conf. Casi seguro que las va a querer.
Bajo Esware, puede efectuar una configuración básica de samba mediante (como root):
netconf
El tercer paso consiste en configurar su máquina W95 (ó la que sea) para trabajar en
red. Se hace exactamente igual que si se estuviera conectando a un servidor WinNT.
Verifique que habilita la red ("cliente para redes de Microsoft") y rellena el
nombre del GrupodeTrabajo. Para darse de alta en la red al arrancar MS Windows, use su
nombre de login de Linux y su password. Para ver si ha ido bien, pulse el icono
"Entorno de Red"--su servidor Linux debería aparecer ahí, y bajo él deben
aparecer los directorios e impresoras compartidas que se mencionan en /etc/smb.conf.
Si no puede ver ó usar esos directorios públicos, asegúrese de que los creó y les
dió los permisos de lectura/escritura adecuados para todos los usuarios.
MS Windows 95b y superiores (95c,98,y NT mas modernos que W95b) pueden usar
encriptación de la password. Esto hará que sus intentos de login desde esas máquinas
fallen y entonces necesitará habilitar esta opción en /etc/smb.conf:
encrypt passwords = yes
En el servidor Linux, puede arrancar, parar y comprobar el estado de Samba con estos
comandos (como root):
samba start
samba status
samba restart
samba stop
Hay que rearrancar Samba despues de hacer cambios en /etc/smb.conf.
Puede navegar por la red con su Netscape para Windows si está conectado mediante Samba
a una máquina Linux y hay alguna otra (o la misma) maquina Linux con un modem conectado a
internet. Para hacerlo tiene que tener configurado el enmascaramiento IP en la máquina
que tenga el modem (descrito aquí) y debe habilitar en Samba
la resolución de nombres (dns) en /etc/smb.conf:
dns proxy = yes
luego le dice a Windows que active el servicio dns, proporciónele la dirección IP y
el nombre del servidor Linux (en Panel de Control -> Red -> TCP/IP).
También puede montar remotamente un directorio Windows sobre un sistema de ficheros
Linux. Mire aquí para ver cómo.
Hemos descrito una configuración mínima de Samba. Puede obtener más información de:
man samba; man smb.conf; man smbclient; man smbmount
less /usr/doc/HOWTO/SMB-HOWTO (en Esware)
documentation in /usr/doc/samba-2.0.3/doc (en Esware)
http://www.sfu.ca/~yzhang/linux/samba/ (samba minihowto)
http://www.germanynet.de/teilnehmer/101,69082/samba.html
y también estudiando el fichero /etc/smb.conf y de Internet. Tener un buen libro sobre
Linux es una idea excelente.
4.5.6. Sendmail
Sendmail es el agente de transporte de correo estandar de Internet, y el que se instala
por defecto en Esware Linux. Como usuario no lo llama directamente-- sendmail es la
maquinaria que subyace en su máquina para manejar el correo. Para leer/enviar correo
desde consola de comandos, lo más habitual es usar pine ó elm (elija uno y adóptelo,
puede sufrir inconvenientes si quiere mantener dos cuentas de correo separadas). En KDE
puede elegir usar el "cliente de correo" disponible en el menú de kde. Para
comunicarse con el mundo exterior a través de su enlace ppp, seguramente usará el agente
de correo de Mozilla incluido en su navegador Netscape y que se comunica directamente con
su cuenta de correo en la máquina remota de su ISP.
Sendmail es muy flexible y robusto, pero también famoso por ser difícil de manejar si
tuviera que adaptarlo a sus necesidades específicas. Afortunadamente, Esware(1.0 ó 1.1)
viene con un sendmail que está preparado para funcionar nada más instalarlo (con alguna
limitación, no obstante).
En mi casa (instalación por defecto de Esware), puedo enviar correo a otro usuario en
la misma máquina sin problemas (p.e. Usando pine). Puedo enviar correo localmente ó a
cualquier parte del mundo una vez que me conecto a mi ISP con el modem (IP masquerading habilitado). Cuando no estoy conectado, el
correo permanece en cola y espera a que haya una conexión a Internet, incluso si el
destino es la máquina de al lado (una molestia menor) Se envía una vez que me
conecto. (Ocurre porque sendmail intenta hacer una consulta DNS y el servicio no está
disponible en el sistema-- la instalación de Esware por defecto del DNS es del tipo solo
cache). Si quiere evitar esto, con Esware puede ejecutar Linuxconf y especificar a
sendmail que no use DNS para nada (Esware Linuxconf no le da esa elección).
Esta configuración sencilla tiene otras limitaciones, si desde su máquina quiere
enviar un correo a un destinatario fuera de su red doméstica, usando pine p.e., al salir
el correo, la dirección que muestra de ud. es la de su máquina, de modo que si tiene
unos nombres de dominios inventados, que no existen en Internet, lo mas probable es que no
pueda recibir la respuesta de su interlocutor. Para operar pese a estas limitaciones, una
solución muy sencilla consiste en utilizar el agente de correo de Netscape para
comunicarse con el exterior de su red personal. Netscape usa los valores que ud. le
proporcione en su "edit-preferences" para conectarse directamente al servidor de
correo de su ISP, que reside en un dominio registrado de Internet y le evita estos
problemas. Otra forma puede ser poner su dirección de correo válida en el campo Reply
To: del "cliente de correos" de KDE, lo que le asegura que las respuestas le
llegarán a esa dirección, válida en Internet. Lo mismo puede hacer con pine:
especifique la dirección reply-to bajo "setup-configure",
"customized-hdrs":
Reply-to: joe@joe_net.net
donde "joe@joe_net.net" es su dirección válida de Internet.
4.5.7 Apache: un servidor de web
Configurar un servidor web sencillo con apache, es muy fácil con ESware. Lo primero es
asegurarse de que tiene instalado el servidor apache. Si no lo instaló con el sistema,
coja el CD, móntelo, instale el paquete apache-*.rpm. Si sabe lo que tiene que instalar,
es simple hacerlo a mano (como root)
cd /mnt/cdrom/Esware/RPMS
rpm -ivh apache*.rpm
Luego, como root, ejecutamos "setup" y comprobamos que el demonio httpd (bajo
"system services") está habilitado. [Un demonio es un programa que se queda en
segundo plano y despierta cuando se le necesita. En el caso de httpd, se despierta cuando
alguien le hace una petición a su servidor web]
Ahora, httpd arrancará automáticamente cada vez que arranquemos el equipo. Tambien lo
podemos arrancar manualmente (como root):
/etc/rc.d/init.d/httpd start
y pararlo mediante:
/etc/rc.d/init.d/httpd stop
Debemos tener /home/httpd (comprobar que existe) y bajo él, el subdirectorio
"html"-- este es el directorio "raiz" para la gente que accede al
sistema desde la web (su "directorio raiz" significa que no podrán acceder a
ningun directorio por encima de /home/httpd/html en su sistema). Por defecto, este
directorio contiene algunas páginas html y un manual sobre apache que se pusieron ahí
durante la instalación de apache. De forma que ahora debemos poder conectarnos a nuestro
servidor web desde otra máquina en nuestra red casera. P.e., podemos teclear en el campo
"Location:" de Netscape:
http://my_http_server_name
y podriamos navegar por el manual de apache.and be able to browse the
"apache" manual.
Para poner nuestro propio contenido en el servidor web, movemos los ficheros ejemplo de
apache a cualquier otro sitio, y en su lugar ponemos las páginas html que queremos que
vea nuestro público. (No olvide de incluir una página "index.html", que es la
primera que abre el navegador cuando accede al sitio).
Los ficheros de configuración y de log de apache están en el directorio /etc/html por
si los quiere ver/personalizar. Los ficheros de "log" pueden verse en
"tiempo real" usando este sencillo comando (como root):
tail -f /etc/httpd/logs/access_log
[El comando "tail" normalmente saca por pantalla el final ó la cola
("tail" en inglés) de un fichero de texto. Con la opción "-f", tail
se mantiene mostrando el fichero según va creciendo-- realmente bueno si queremos
monitorizar quien se conecta a su sitema, p.e.]
Para una configuración con entorno gráfico de Apache, pruebe esto (desde una consola
X, como root, si es que instaló el paquete "comanche"):
comanche
4.5.8 Un servidor ftp sencillo
Con una distribución Esware, configurar un servidor ftp no podría ser más fácil. Al
terminar la instalación del sistema, casi seguro que ya lo tiene funcionando. Esto es
así porque el servicio de ftp esta habilitado por defecto y se considera uno de los
servicios estándar (como pueden serlo telnet ó gopher) en el fichero /etc/inetd.conf.
Aquí tenemos la parte pertinente del fichero:
ftp stream tcp
nowait root /usr/sbin/tcpd in.ftpd -l -a
telnet stream tcp nowait
root /usr/sbin/tcpd in.telnetd
gopher stream tcp nowait
root /usr/sbin/tcpd gn
La segunda parte de nuestro servidor ftp está en el fichero /etc/passwd, que define la
cuenta:
ftp:*:14:50:FTP User:/home/ftp:
Los ":" son un separador de campos. El primer campo es el nombre del usuario
"ftp", el "*" del segundo campo indica que la password para este
usuario está deshabilitada, nadie puede hacer login en el sistema con ese nombre, el id
del usuario es 14, el id del grupo es 50, "FTP User" es un comentario, el
directorio home es /home/ftp, no hay ninguna shell especificada para este usuario (esto
tambien se puede poner como /bin/false).
Debido a que el proceso de instalación de Esware hizo todo esto por nosotros,
cualquiera puede hacer ftp a nuestra máquina y hacer login como un usuario normal (con su
nombre de login y su password) ó pueden hacer login "anonymous", en cuyo caso
deberán proporcionar como password una dirección de correo. Cualquier usuario puede
entrar algo como esto en el campo "Location" del navegador Netscape:
ftp://my_computer_name
y conectar automáticamente (Netscape se ocupará de enviarle al servidor el usuario
"anonymous" y nuestra dirección de correo como password).
Los usuarios "anonymous" acceden al sistema en el punto /home/ftp, que se les
aparece a ellos como su directorio raiz (no podrán acceder a otros directorios arriba de
este). Los ficheros que queremos que la gente se descarge, se suelen poner en un
subdirectorio: "pub".
El directorio /home/ftp/bin contiene los comandos que los usuarios remotos podrán
usar. En mi sistema, estos son: compress, cpio, gzip, ls, sh, tar, zcat; todos con
permisos de solo ejecución "111".
En /home/ftp/etc tenemos los ficheros necesarios para que la cuenta
"anonymous" pueda funcionar (passwd, group, ld.so.cache).
En /home/ftp/lib tenemos las bibliotecas (imagino que las usan los comandos que los
usarios "anonymous" pueden ejecutar).
5. Cómo actualizar el kernel
5.1 Introducción
Este documento se ha escrito para ayudar a los nuevos usuarios de Linux a actualizar el
kernel.
Se han usado varias fuente de referencia para escribirlo. De los HOW-TO oficiales ( http://metalab.unc.edu/LDP/HOWTO/ ) a
la Linux Knowledge Base y otras
fuentes.
5.2 Qué es el kernel
El kernel actua como un mediador entre sus programas y su hardware. Primero, administra
ó arregla la administración de la memoria para todos los procesos (programas en
ejecución), se asegura de que todos reciben su parte de ciclos del procesador. Además
proporciona una interfaz agradable y portable para que sus programas interactuen con su
hardware.
En realidad hay mucho más que decir sobre el kernel, pero estas operacionesson las mas
importantes que debemos conocer.
5.3 Por qué actualizarse
Hay varias razones para actualizar el kernel. La mayoría de las veces será porque
quiere tener soporte para un dispositivo nuevo que se acaba de comprar ó por algún fallo
del kernel (que afecte ó no a la seguridad).
Lo normal es que los nuevos kernels son más rápidos, estables y fiables que los
antiguos.
5.4 Dónde conseguir el kernel
Lo primero para actualizar el kernel, es conseguir una versión nueva. Arranque un
navegador cualquiera y apunte a la dirección http://www.kernel.org/
. Ahí puede encontrar una lista de of mirrors. Mirrors son sitios con (casi) la misma
información que el sitio principal. Debido a que el sitio principal, kernel.org, está
seriamente ocupado por las descargas, elija un mirror cercano a ud ó de su pais. Por
ejemplo, si está en Noruega, vaya a .no kernel archive => http://www.no.kernel.org/ . Observe el .no tras las
www. Muchos países tienen mirrors para el kernel.
Una vez que la página mirror se carga, verá algo parecido a lo que sigue:
<= start of example page=>
The Linux Kernel Archives mirror at Sunsite.uio.no
All transfers are logged. If you don't like this policy please
disconnect now.
Welcome to the Linux Kernel Archives. This is an official mirror site
for the Linux kernel source. Please see
http://www.kernel.org/mirrors/
for information about how to connect to an other kernel-mirror site.
What is
Linux?
Linux is a Unix clone written from scratch by Linus Torvalds with
assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX
compliance.
...
<= end of example page=>
Ahora elija el protocolo que más le guste para la descarga. Digamos que elejimos el
protocolo HTTP (el mismo usan los navegadores WWW).
En su navegador aparecerá una página con una estructura de directorios como esta:
<= start of example page =>
Index of /pub
Name Last modified Size Description
[DIR] Parent Directory 28-Dec-98 12:06 -
[DIR] linux/ 31-Dec-98 09:57 -
[ ] ls-lR 29-Mar-99 14:56 262k
[DIR] software/ 31-Dec-98 18:25 -
<= end of example page =>
Vea el direcotio linux . Entre con su navegador:
<= start of example page =>
Index of /pub/linux
Name Last modified Size Description
[DIR] Parent Directory 29-Mar-99 14:56 -
[DIR] daemons/ 12-Feb-99 01:19 -
[DIR] devel/ 18-Dec-98 19:34 -
[DIR] distributions/ 18-Dec-98 19:34 -
[DIR] docs/ 31-Jan-99 04:01 -
[DIR] kernel/ 18-Mar-99 21:55 -
[DIR] libs/ 18-Dec-98 19:35 -
[DIR] utils/ 31-Jan-99 04:01 -
<= end of example page =>
Este lugar tiene montones de cosas para descargarse, pero por ahora solo estamos
interesados en el kernel. Entre en el directorio kernel.
Deberá ver algo como:
<= start of example page =>
Index of /pub/linux/kernel
Name Last modified Size Description
[DIR] Parent Directory 31-Dec-98 09:57 -
[ ] COPYING 13-Mar-94 00:00 18k
[ ] CREDITS 16-Sep-96 00:00 36k
[DIR] Historic/ 18-Dec-98 20:55 -
[DIR] SillySounds/ 18-Dec-96 09:45 -
[DIR] alan/ 18-Mar-99 21:55 -
[DIR] davem/ 29-Jan-99 04:05 -
[DIR] hpa/ 19-Dec-98 02:16 -
[DIR] people/ 18-Mar-99 21:55 -
[DIR] testing/ 27-Mar-99 00:55 -
[DIR] v1.0/ 19-Dec-98 02:19 -
[DIR] v1.1/ 19-Dec-98 03:51 -
[DIR] v1.2/ 19-Dec-98 04:36 -
[DIR] v1.3/ 19-Dec-98 13:21 -
[DIR] v2.0/ 11-Feb-99 16:48 -
[DIR] v2.1/ 11-Feb-99 16:45 -
[DIR] v2.2/ 24-Mar-99 00:27 -
[DIR] whawes/ 18-Dec-98 19:34 -
Linux kernel release 2.0.xx
These are the release notes for linux version 2.0. Read them carefully,
as they tell you what this is all about, explain how to install the
kernel, and what to do if something goes wrong.
...
....
<= end of example page =>
Para nuestro ejemplo tendremos en consideración que en el momento de escribir este
documento, la versión estable del kernel era la serie 2.2.x. Por ello elejimos el
directorio v2.2/ en el servidor.
Cómo saber cual es la última versión? Al final de la página http://www.kernel.org/ tenemos un texto como este:
<= start of example page =>
|
|
The latest stable version of the Linux kernel is:
|
2.2.4
|
The latest beta version of the Linux kernel is:
|
2.1.132
|
The latest prepatch (alpha) version appears to be:
|
none
|
<= end of example page =>
Aquí se dice cual es la última versión y cual se recomienda usar. Tambien hay un
fichero llamado algo así como LATEST-IS-2.2.4 arriba en el listado del directorio
que le dice cual es la última versión.
Una vez que estamos en el directorio v2.2/ veremos algo como:
<= start of example page =>
Index of /pub/linux/kernel/v2.2
Name Last modified Size Description
[DIR] Parent Directory 18-Mar-99 21:55 -
[ ] LATEST-IS-2.2.4 23-Mar-99 23:32 0k
[ ] linux-2.2.0.tar.bz2 26-Jan-99 02:41 10.1M
[ ] linux-2.2.0.tar.bz2.s..26-Jan-99 02:41 1k
[CMP] linux-2.2.0.tar.gz 26-Jan-99 02:41 12.5M
[ ] linux-2.2.0.tar.gz.sign26-Jan-99 02:41 1k
[ ] linux-2.2.1.tar.bz2 28-Jan-99 21:56 10.1M
[ ] linux-2.2.1.tar.bz2.s..28-Jan-99 21:56 1k
[CMP] linux-2.2.1.tar.gz 28-Jan-99 21:56 12.5M
[ ] linux-2.2.1.tar.gz.sign28-Jan-99 21:56 1k
[ ] linux-2.2.2.tar.bz2 23-Feb-99 03:58 10.1M
[ ] linux-2.2.2.tar.bz2.s..23-Feb-99 03:58 1k
[CMP] linux-2.2.2.tar.gz 23-Feb-99 03:58 12.5M
[ ] linux-2.2.2.tar.gz.sign23-Feb-99 03:58 1k
[ ] linux-2.2.3.tar.bz2 09-Mar-99 01:42 10.2M
[ ] linux-2.2.3.tar.bz2.s..09-Mar-99 01:42 1k
[CMP] linux-2.2.3.tar.gz 09-Mar-99 01:42 12.6M
[ ] linux-2.2.3.tar.gz.sign09-Mar-99 01:42 1k
[ ] linux-2.2.4.tar.bz2 23-Mar-99 23:33 10.4M
[ ] linux-2.2.4.tar.bz2.s..23-Mar-99 23:33 1k
[CMP] linux-2.2.4.tar.gz 23-Mar-99 23:33 12.8M
[ ] linux-2.2.4.tar.gz.sign23-Mar-99 23:33 1k
[ ] patch-2.2.1.bz2 28-Jan-99 21:56 22k
[ ] patch-2.2.1.bz2.sign 28-Jan-99 21:56 1k
[CMP] patch-2.2.1.gz 28-Jan-99 21:56 24k
[ ] patch-2.2.1.gz.sign 28-Jan-99 21:56 1k
[ ] patch-2.2.2.bz2 23-Feb-99 03:58 85k
[ ] patch-2.2.2.bz2.sign 23-Feb-99 03:58 1k
[CMP] patch-2.2.2.gz 23-Feb-99 03:58 94k
[ ] patch-2.2.2.gz.sign 23-Feb-99 03:58 1k
[ ] patch-2.2.3.bz2 09-Mar-99 01:42 261k
[ ] patch-2.2.3.bz2.sign 09-Mar-99 01:42 1k
[CMP] patch-2.2.3.gz 09-Mar-99 01:42 324k
[ ] patch-2.2.3.gz.sign 09-Mar-99 01:42 1k
[ ] patch-2.2.4.bz2 23-Mar-99 23:33 550k
<= end of example page =>
5.5 Debemos descargar las fuentes al completo ó solo los parches
Ahora debe elegir entre descargar todas las fuentes ó solo el parche.
Si se está actualizando desde un kernel de la serie 2.0.x kernel tendrá que descargar
todas las fuentes.
Si lo está haciendo desde un kernel de la serie 2.2.x puede bajarse solo el patch, que
por supuesto es mucho menor. El parche contiene solo las diferencias.
Si quisiera más información acerca de los parches y de diff, mire aquí: http://www.linuxpower.org/display_item.phtml?id=101
.
Ahora descarge lo que haya elejido. Le sugerimos que lo haga en el directorio /usr/src/
.
Se recomienda bajarse el fichero con extensión .tar.gz (si se está trayendo las
fuentes completas). Para los parches, .bz2. Observe que los ejemplos que siguen
están basados en estas elecciones para los ficheros a descargarnos.
5.6 Descomprimir el fichero descargado
5.6.1 Descomprimir el parche
Suponemos que se ha bajado el parche al directorio /usr/src/. Digamos que se
llama patch-2.2.4.bz2. Antes de usarlo debemos descomprimirlo. La extensión .bz2
significa con formato de bunzip2. Con el siguiente comando lo descomprimimos:
<= start of example command =>
bunzip2 patch-2.2.4.bz2
<= end of example command =>
No se nos muestra salida alguna. Verifique qué ficheros tiene ahora en ese directorio,
verá que el fichero patch-2.2.4.bz2 ha desaparecidoy en su lugar tenemospatch-2.2.4
que es mucho mayor.
5.6.2 Descomprimir las fuentes al completo
De nuevo suponemos que hemos traido las fuentes al directorio /usr/src/. Para
nuestro ejemplo digamos que el fichero se llama linux-2.2.4.tar.gz.
Incluso antes de descomprimirlo, hay algo que debemos hacer. En /usr/src/ tenemos
un enlace simbólico llamado linux que apunta a (p.e.) linux-2.0.36. Cómo
comprobarlo? Teclee ls -al en el directorio /usr/src/ . Verá algo como
esto:
<= start of example page =>
total 7295
drwxr-xr-x 5 root root 1024 Mar 19 15:01 .
drwxr-xr-x 20 root root 1024 Mar 13 22:52 ..
lrwxrwxrwx 1 root root 11 Mar 15 18:21 linux -> linux-2.0.36
drwxr-xr-x 17 root root 1024 Mar 13 22:52 linux-2.0.36
...
<= end of example page =>
Observe lrwxrwxrwx 1 root root 11 Mar 15 18:21 linux -> linux-2.0.36 que es
el enlace simbólico apuntando al directorio linux-2.0.36.
Si descomprimiésemos las fuentes ahora, por defecto se colocarían en el directorio linux
sobreeescribiendo las fuentes anteriores.
Eliminamos el enlace mediante rm linux. Solo elimina el enlace, no el directorio!
Ahora podemos descomprimir las fuentes. Teclee tar -xvzf linux-2.2.4.tar.gz.
Montones de texto volarán por la consoloa. Si ahora hace un ls -al verá el
directorio linux . Ahí se encuentran nuestras nuevas fuentes. directory.
5.7 Compilar el nuevo kernel
5.7.1 Usar el parche
Si se descargó el parche debe ver esta sección:
Suponemos que se encuentra posicionado sobre el directorio /usr/src/ . Hemos
descomprimido el fichero (Sección 5.6.1). Ahora nos movemos al directorio del kernel (que
suponemos es linux). Tecleamos cd linux.
Ya estamos sobre el directorio del kernel. En este punto tenemos montones de opciones y
cuestiones. ¿Es este su primer parche del kernel? No? Si? No vamos a entrar en detalles y
asumiremos que este es su primer parche. Veamos cómo parchear el kernel.
Lo haremos con la utilidad patch. Para más detalles y una información más amplia, le
sugiero que lea el artículo del sitio web www.linuxpower.org, localizado en esta
url: http://www.linuxpower.org/display_item.phtml?id=101
.
Teclee patch -E -p1 < ../patch-2.2.4
Montones de texto volarán. Si no separan en ningun sitio salvo al final (si se para es
que le está haciendo una pregunta) es que todo ha ido ok. Si no, podría tener algun
problema (ya ha debido parchear el kernel previamente ó algo ha ido muy pero muy mal)
Si todo ha ido bien, siga leyendo. Configure el kernel y luego compilelo. Tenemos 2
opciones. Una es compilarlo totalmente desde cero, la otra es recompilarlo usando una
configuración anterior. Como tenemos el parche, suponemos que vamos a usar la
configuración anterior. Si no quiere hacer esto, lea la sección 6.2 donde se muestra
como compilar el kernel desde 0. La única diferencia entre ambas opciones está en el
paso 1, dónde debemos ejecutar make menuconfig.
Pasos a seguir para recompilar el kernel desde una configuración anterior:
1. teclee make oldconfig
En este punto puede que se le pregunte por nuevos drivrs ó por otros en versión de
desarrollo. A menos que realmente los necesite, diga que no (n).
2. teclee make dep
3. teclee make clean
4. teclee make zImage (si esto falla use bzImage, que significa big
zImage --imagen grande en inglés)
5. teclee make modules (si los habilitó)
6. teclee make modules_install (si ha pasado por #5)
Si todo ha ido bien, tiene en su sitema un kernel nuevo y listo para ser usado.
5.7.2 Usar las fuentes al completo
Si se ha bajado las fuentes completas, lea esto:
Suponemos que se encuentra posicionado en /usr/src/. Hemos descomprimido las
fuentes. Ahora nos movemos al directorio del kernel (linux). Teclee cd linux.
Ahora empezamos nuestra compilación.
1. teclee make menuconfig
Ahora tenemos que configurar el kernel. No vamos a entrar en detalles, pues la
configuración variará mucho de una máquina a otra. Vaya a través de los menus con
sabiduría, si no sabe algo lea las ayudas y si no termina de comprenderlo, acepte las
sugerencias que se le hacen.
2. teclee make dep
3. teclee make clean
4. teclee make zImage (si esto falla use bzImage)
5. teclee make modules (si los habilitó)
6. teclee make modules_install si ha pasado por #5)
Si todo ha ido bien, tenemos un kernel nuevo, listo para instalarlo y usarlo.
5.8 Instalar el nuevo kernel
Para instalar el nuevo kernel hay que saber algo sobre como editar el fichero
/etc/lilo.conf. Este varía de una máquina a otra. Supondremos que estamos en /usr/src/linux/
. Debemos copiar el nuevo kernel y el System.map a determinado lugar del
sistema de ficheros, que cambia de una distribución a otra.
Cambiemos el directorio a donde está el nuevo kernel.
Teclee cd /arch/i386/boot/
Teclee ls -al solo para ver lo que hay por ahí. Veremos algo como:
<= start of example page =>
total 588
drwxr-xr-x 4 1046
1046 1024 Apr 5 20:54 .
drwxr-xr-x 7 1046
1046 1024 Mar 13 02:39 ..
-rw-r--r-- 1 1046
1046 2633 Jan 2 19:27 Makefile
-rwxr-xr-x 1 root
root 544 Apr 5 20:54 bootsect
-rw-r--r-- 1 1046
1046 9536 Jun 24 1998 bootsect.S
-rw-r--r-- 1 root
root 1238 Apr 5 20:54 bootsect.o
-rw-r--r-- 1 root
root 8293 Apr 5 20:54 bootsect.s
drwxr-xr-x 2 1046
1046 1024 Apr 5 20:54 compressed
-rw-r--r-- 1 1046
1046 904 Jan 3 1995
install.sh
-rwxr-xr-x 1 root
root 1428 Apr 5 20:54 setup
-rw-r--r-- 1 1046
1046 20136 Nov 29 02:18 setup.S
-rw-r--r-- 1 root
root 3053 Apr 5 20:54 setup.o
-rw-r--r-- 1 root
root 24136 Apr 5 20:54 setup.s
drwxr-xr-x 2 1046
1046 1024 Apr 5 20:54 tools
-rw-r--r-- 1 1046
1046 36836 Sep 30 1998 video.S
-rw-r--r-- 1 root
root 477285 Apr 5 20:54 zImage
<= end of example page =>
Si en la sección 5.7.x hemos usado make zImage debemos copiar el fichero zImage
, en otro caso copiaremos bzImage. Supongamos que operamos con zImage.
Dónde copiar el kernel?. En una distribución Esware el kernel se ubica en /boot/
para Slackware en / . No estoy muy familiarizado con otras distribuciones (Debian,
SuSe, etc.). Dependiendo de su distribución haga lo que proceda.
Veamos un ejemplo para Esware.
Teclee cp zImage /boot/vmlinuz-2.2.4
Ahora nos cambiamos a /usr/src/linux/ .
Teclee cd /usr/src/linux/ .
Copiamos System.map. Observe que System.map siempre se ubica en /boot/ .
Teclee cp System.map /boot/System.map-2.2.4.
Ahora creamos un enlace simbólico que apunte al nuevo System.map.
Cambiamos al directorio /boot mediante cd /boot .
Borramos el enlace simbólico antiguo (borramos el enlace NO el directorio al que apunta).
Teclee rm System.map .
Creamos el nuevo enlace simbólico apuntando a System.map-2.2.4. Teclee ln -s
System.map-2.2.4 System.map .
Todo lo que nos queda es editar lilo.conf , añadirle nuestro nuevo kernel y
ejecutar lilo.
Cambiamos de directorio a /etc mediante cd /etc . Con nuestro editor favorito (vi,
joe, pico) editamos el ficherolilo.conf . Usaremos joe.
Veremos algo como esto en el fichero:
= start of example page =>
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.0.36-0.7
label=linux.old
root=/dev/hda1
read-only
<= end of example page =>
Tenga en cuenta que esta sección será muy diferente de una máquina a otra.
Añadimos el nuevo kernel a lilo.conf . Copie la sección "image" y
pégela al final:
= start of example page =>
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.0.36-0.7
label=linux.old
root=/dev/hda1
read-only
image=/boot/vmlinuz-2.0.36-0.7
label=linux.old
root=/dev/hda1
read-only
<= end of example page =>
Ahora cambiamos la sección pegada para reflejar nuestros valores particulares de la
versión del kernel a utilizar:
= start of example page =>
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.4
label=linux
root=/dev/hda1
read-only
image=/boot/vmlinuz-2.0.36-0.7
label=linux.old
root=/dev/hda1
read-only
<= end of example page =>
Hemos cambiado las etiqueta label e image, el resto ha permanecido igual.
Ejecutamos lilo símplemente mediante teclearlo. Debemos ver algo como esto:
= start of example page =>
Added linux *
Added linux.old
<= end of example page =>
Ahora podemos reiniciar el equipo con el nuevo kernel.
5.9 La próxima actualización
Debería ser muy similar. Solo cambia una cosa: si está aplicando un parche, primero
deberá eliminar el anterior. Esto se hace mediante patch -R -p1 < ../patchfile
(donde patchfile es el nombre del parche antiguo) y tras ello podremos aplicar el nuevo
parche con la opción -E. Todo lo demás debería ser igual.
5.10 A la atención de los usuarios de Esware
Si se está actualizando de un kernel de la serie 2.0.xx a la serie 2.2.x debe leer esto. El documento le proporciona información parecida a la que aquí
presentamos, paso a paso, con instruciones específicas para determinados detalles, como
init, samba,... que le pueden ser muy necesarios
5.11 Sobre el autor
Me llamo Alesh Mustar, tengo 20 años, vivo en Slovenia, Europa, trabajo como
programador y administrador de sistemas para una empresa llamada ZIG. Además de pasar
mucho tiempo ante la pantalla, me gusta pasar el tiempo con mi novia, Tanja, leyendo
libros y paseando con el coche. Se puede contactar conmigo en la dirección de correo
arriba en la página. Comentarios, sugrçerencias y cualquier otra cosa, será mas que
bienvenida.
7. Principales aplicaciones de Linux, propietarias ó no:
No pretendemos cubrir todas las aplicaciones disponibles para Linux. Nuestro criterio
para elegirlas ha sido:
o La aplicación no se instala por defecto bajo Esware.
o Nos gusta particularmente la aplicación.
Hay miles de programas para Linux, si quiere más puede visitar: http://www.linuxapps.com/ ó http://stommel.tamu.edu/~baum/linuxlist/linuxlist/linuxlist.html
ó http://www.boutell.com/lsm/
ó http://www.linuxlinks.com/Software/
7.1 Word Perfect 8 para Linux
Es un procesador de textos muy bueno y potente. Hay una versión disponible para uso
personal: http://linux.corel.com/linux8/download.htm
(se le pedirá que se registre, pero es gratuito). Esta versión gratuita, carece del
editor de ecuaciones, un editor gráfico, otro de organigramas y otro de letras
artísticas. No obstante es una versión por entero funcional del mejor procesador de
textos del mundo. La versión completa cuesta $50.
La compatibilidad con el formato MS Word es muy buena (a veces mejor que el mismo MS
Word con sus diversas versiones).
WP8 normalmente se ejecuta desde un icono ó de una entrada en su menu en KDE, pero
tendrá que ponerlos ahí ud. mismo.
locate xwp
ó
find / -name "xwp"
se lo encontrarán si no recuerda dónde lo instaló.
Para arrancarlo "manualmente", ejecute, en un terminal X:
/usr/local/wp8/wpbin/xwp
7.2 Star Office Suite
Star Office es una suite de ofimática completa: procesador de textos, hoja de cálculo
y programa de presentaciones. Hay una versión completa gratuita para uso personal: http://www.stardivision.com/freeoffice/
(es muy grande, 60-80 MB).
Star Office se parece y se comporta muy similarmente a MS Office para Windows (al igual
que el de Windows, es grande y lento) y puede que no le merezca la pena si tiene menos de
32 MB de RAM. También se entiende muy bien con los formatos de MS Office.
7.3 Applixware
Applixware ies otra suite de ofimática. Con un procesador de textos, hoja de cálculo,
gráficos, presentación, correo, editor de html y algunas otras aplicaciones. Muchos
dicen que es la mejor. No lo se porque no hay versión gratuita: http://www.applix.com/appware/linux/index.htm
. I está realmente desesperado por Aplixware, hay una versión de demo en:
http://www.download.com/
7.4 Hoja de cálculo
Además de las que vienen con las suites mencionadas arriba, puede que le interese ver
"xess":
http://www.ais.com/linux_corner.html
Hay una versión reducida y shareware de xess. Nos gusta mucho el diseño de esta
aplicación. Creemos que es la mejor del momento para Linux, muy adecuada para
ingeniería.
Vea "Gnumeric" (incluida con Esware, es parte del proyecto Gnome).
Está muy incompleta, pero parece que va a ser un fuera de serie en el futuro.
7.5 Bases de Datos
Si le gustan las bases de datos, tendrá el palcer de comprobar aue Linux está muy
bien provisto:
postgreSQL
con licencia libre, sin restriciones, es una de las mejores bases de
datos en el mundo.
mySQL
http://www.MySQL.com/ es gratuita para
uso no comercial.
Sybase
para Linux (editada por space):
From: Rumy Driver <rdriver@sybase.com> Organization: Sybase
Inc.
[...] I trabajamos conSybase, totalmente compatible con Y2K, es para GNU/LINUX y es
gratuita, con uso ilimitado. Rumy Driver
Mira: http://www.sybase.com:80/sqlserver/linux/aselinux_install.html
para más información.
Interbase
para Linux se puede descargar para uso personal desde: http://www.interbase.com/downloads/products.html
.
También tenemos Oracle para Linux: http://platforms.oracle.com/linux/index_lin.htm.
Para un how-to sobre Oracle-Linux, vea: http://jordan.fortwayne.com/oracle/index.html
7.6 CAD
OCTREE
(gratis para uso no comercial): http://www.octree.de/html/frames/eng/f_octree.htm
VariCAD (propietario, comercial): http://www.varicad.com/
VARKON (LGPL): http://www.varkon.com/
Microstation (propietario): http://www.microstation.com/academic/products/linux.htm\la
edición académica de Microstation incluye la versión para Linux de su excelente sistema
de CAD (mejor que AutoCad).
7.7 Netscape
Debe tener una versión instalada de Netscape (la 4.xx). Para ejecutarla, en un
terminal X:
netscape
Si no la instaló, inserte su CD, móntelo (como root):
mount -t auto /dev/cdrom /mnt/cdrom
arranque desde un terminal X: glint (para Esware) ó gnorpm y naveque por los paquetes disponibles en el CD. También
puede operar desde consola:
cd /mnt/cdrom
cd Esware/RPMS
rpm -i netsca*
Netscape es un navegador muy bueno, con el mismo estilo y comportamiento que su vrsión
para windows, de modo que no creo que tenga problemas para navegar con el. El aldo malo,
es que a veces falla (desaparece de la pantalla, sin hacerle otros daños y si quiere
usarlo, tiene que rearrancarlo) y no funciona bien cuando está desconectado de
internet, dependiendo de la configuración , le puede tardar has dos minutos en darse
cuenta deque no hay conexión con el exterior. Todas las vrsiones 4.xx parecen estar
afectadas del mismo problema. Una vez conectado, funciona muy bien.
Por ahora, si tiene muchos fallos para ud, vacíe su papelera "trash" de
correo y comprima las carpetas de correo de vez en cuando (con regularidad) y deshabilite
Java (menu ·Edit-Preferences-Advanced"). Esto lo vuelve algo más estable.
Atajos y Comandos en Linux
Leyenda:
<> = tecla especial del teclado 8 una única), por ejemplo <Ctrl>
italic = nombre de fichero ó variable que ud. deberá
personalizar.
Para los muy despistados en UNIX:
1. RECUERDE QUE LINUX DISTINGUE MAYUSCULAS DE MINUSCULAS. Por ejemplo: Netscape, NETSCAPE
y nEtscape son todos comandos diferentes. Igualmente, my_filE, my_file, y my_FILE son
ficheros diferentes. Su password también refleja este comportamiento. (UNIX y el lenguaje
"c" también son así).
2. Los nombres de ficheros pueden tener hasta 256 caracteres de largo y pueden contener
letras, números, "." (punto), "_" (subrayado), "-"
(guión), más algunos otros caracteres no recomendados.
3. Los ficheros cuyo nombre empieza por "." no se muestran normalmente por el
comando ls (listar) . Use ls -a (listar con la
opción all "todos") para verlos.
4. "/" es un equivalente al "\" de DOS.
5. En un fichero de configuración, una línea que comienza por # es un comentario.
A. Comandos básicos en Linux
<Ctrl><Alt><F1> |
Conmuta al primer terminal de texto. Bajo Linux
podremos tener varios terminales de texto operando al mismo tiempo. |
<Ctrl><Alt><Fn> |
(n=1..6) Conmuta al terminal de texto e-nésimo. |
<Ctrl><Alt><F7> |
Conmuta al primer terminal Gráfico, si alguno se está
ejecutando. |
<Ctrl><Alt><Fn> |
(n=7..12) Conmuta al terminal gráfico n-simo (si otro
terminal gráfico está corriendo en la consola n-1). |
<Tab> |
Autocompletado de comandos desde consoloa. ES
BUENÍSIMO! Funxiona en el prompt de LILO también. |
<ArrowUp> |
Recorrer y editar la historia de comandos tecleados.
Presione [Enter] para ejecutar el que quiera. |
<Shift><PgUp> |
Recorre lo que nos ha ido saliendo por pantalla hacia
arriba. Funciona también en el login, puede ver todos los mensajes del arranque. |
<Shift><PgDown> |
Recorre la pantalla hacia abajo. |
<Ctrl><Alt><+> |
(en X-windows) Cambia a la próxima resolución de
pantalla (si configuramos al servidor para que acepte varias resoluciones). |
<Ctrl><Alt><-> |
(en X-windows) Cambia a la resolución anterior. |
<Ctrl><Alt><BkSpc> |
(en X-windows) Mata al servidor X actual. Uselo si el
servidor X deja de funcionarle ó no se puede salir normalmente. |
<Ctrl><Alt><Del> |
Apaga el sistema y lo reinicia. Es el modo habitual de
cerrar el sistema para un usuario normal desde la consola de texto. |
<Ctrl>c |
Mata al proceso actual. |
<Ctrl>d |
Se sale (logout) del terminal actual. |
<Ctrl>d |
Envía [Fin de Fichero] al proceso actual. |
<Ctrl>s |
Para la transferencia al terminal. |
<Ctrl>q |
Retoma la transferencia al terminal. Pruebelo si su
terminal deja de responder misteriosamente. |
<Ctrl>z |
Pone en segundo plano al proceso actual. |
reset |
Restable los valores por defecto de un terminal. Uselo
despues de haber intentado un "cat" sobre un fichero binario, que suele provocar
que los siguientes comandos que tecleemos no se vean bien en la pantalla. |
<MiddleMouseButton> |
Pega el texto seleccionado (el que esté resaltado en
la pantallaPaste the text which is currently highlighted somewhere else. This is the
normal "copy-paste" operation in Linux. (It doesn't work with Netscape and
WordPerfect which use the MS Windows-style "copy-paste".) Best used with a
Linux-ready 3-button mouse (Logitech or similar). |
~ |
Su directorio personal. |
. |
(punto) Directorio actual. |
.. |
(dos puntos) Directorio padre del actual. |
B. Comandos de LINUX -- información del sistema
Comando |
Descripción |
pwd |
Print Working Directory, muestra el directorio de
trabajo actual. |
hostname |
muestra por pantalla el nombre de la máquina (a la que
está conectado). Use netconf (como root) para cambiar el nombre de la máquina. |
whoami |
Muestra el nombre del usuario. |
id username |
Muestra el id del usuario (uid) y el de su grupo
efectivo (gid) (si es diferente del grupo principal) y los grupos suplementarios. |
date |
Muestra ó cambia la fecha del sistema. P.e. cambia la
fecha y la hora a 2000-12-31 23:57 mediante:
date 123123572000 |
time |
Mide el tiempo que tarda un proceso en ejecutarse y
otra información. No confundirlo con el comando date. P.e. para ver el tiempo que se
tarda en listar un directorio: time ls |
who |
Muestra qué usuarios están conectados al sistema. |
rwho -a |
Averigua qué usuarios estan conectados en su red. El
servicio rwho debe estar habilitado paraque este comando funcione. Si no lo está, ejecute
"setup" como root y habilítelo. |
finger user_name |
Información sobre un usario del sistema. Pruebe
"finger root". |
last |
Muestra un listado de los últimos usuarios que han
ingresado en su sistema. |
uptime |
Tiempo desde el último inicio. |
ps |
Lista los procesos en ejecución propiedad del usuario. |
ps axu | more |
Lista todos los proceso en el sistema que se esten
ejecutando, incluso aquellos que no están asociados a un determinado terminal, nos
proporciona además, el usuario que los lanzó. |
top |
Lista los procesos en ejecución de forma continua, va
refrescando la información cada cierto tiempo, los ordena por consumo de cpu. |
uname -a |
Información de su servidor. |
free |
Información de la memoria, en kilobytes. |
df -h |
(=disk free)Muestra la capacidad de todas las unidades
montadas en el sistema de ficheros, la presenta de una forma fácil de entender para un
humano. |
du / -bh | more |
(=disk usage)Nos detalla la cantidad de disco usado por
los diversos directorios que cualgan del raiz "/" (en forma amena para un
humano). |
cat /proc/cpuinfo |
Información Elimina ficheros. información sobre el
kernel. |
cat /proc/interrupts |
Lista las interrupciones que se usan. |
cat /proc/version |
Versión de Linux y otra información. |
cat /proc/filesystems |
Muestra los tipos de ficheros que se estan usando en el
sistema. |
cat /etc/printcap |
Muestra la configuración de las impresoras. |
lsmod |
(como root) Muestra los módulos del kernel actualmente
cargados. |
set|more |
Presenta el entorno actual del usuario. |
echo $PATH |
Muestra el contenido de la variable de entorno
"PATH". Este comando nos muestra otras variables de entorno si queremos. Para
ver una lista de todas las variables de entorno definidas, use el coamndo "set". |
dmesg |
Presenta en pantalla los mensajes del último arranque
(están en el fichero /var/log/dmesg) |
C. Operaciones Básicas
ls |
Lista el contenido del directorio actual. Bajo Linux,
el coamndo "dir" es un alias de ls. |
cd directory |
Cambia de directorio. Invocado sin argumentos, le lleva
a su directorio home, "cd -" le llevará al directorio anterior y es una manera
muy usada para conmutar entre dos directorios. |
cp source destination |
Copia ficheros. |
mcopy source destination |
Copia un fichero desde/hacia una partición DOS (sin
tener que montarla). p.e., mcopy a:\autoexec.bat ~/junk . Vea man mtools para
buscar información sobre otros comandos relacionados: mdir, mcd, mren, mmove, mdel, mmd,
mrd, mformat .... |
mv source destination |
Mueve ó renombra ficheros. |
ln -s source destination |
Crea un enlace simbólico. |
rm files |
Elimina ficheros. |
mkdir directory |
Crea un directorio. |
rmdir directory |
Elimina un directorio vacío. |
rm -r files |
(modo recursivo) Borra ficheros, directorios y sus
subdirectorios. Tenga cuidado cuando use este comando como root. En Linux no hay vuelta
atrás (como undelete en DOS) |
cat filename | more |
Muestra el contenido de un fichero de texto, que se
llama "filename", de página en página. La "|" es un "pipe"
. Que direcciona la salida del comando "cat" (que por defecto sería la consola)
como entrada al comando "more". Si lo que queremos es ver el principio ó el
final de un fichero muy grande, quizás los coamndos "head" (cabeza) y
"tail" (cola) sean más convenientes. Si usa "cat" para ver por
pantalla el contenido de un fichero binario, puede que la consola no le siga respondiendo
correctamente, en este caso use el comando "reset". |
less filename |
Muestra por pantalla el contenido de un fichero,
permite desplazarse hacia arriba y hacia abajo. Cuando termine de ver lo que desee,
presione "q" para salir. |
pico filename |
Edita un fichero de texto. |
pico -w filename |
Edita un fichero de texto, deshabilita la segmentación
de líneas largas. Muy bueno para editar los ficheros de configuración. |
lynx file.html |
Abre ficheros html y permite navegar por Internet en
modo texto. |
tar -zxvf filename |
Descomprime ficheros. |
find / -name "filename" |
Busca un fichero llamado "filename" en su
sistema, empezando desde / . El argumento "filename" puede contener
metacaracteres (*,?). |
locate filename |
Busca un fichero que en su nombre contenga la cadena
"filename". Más fácil y rápido que el comando anterior. |
pine |
Un lector de correo en modo texto muy bueno. Otro es
"elm". El agente de correo de Netscape leerá el correo desu cuenta de Internet.
Pine le permitirá leer el correo local. |
talk username1 |
Le permite comunicarse con otro usuario que esté
usando el sistema en este momento. Desde la consola ó quizas un sistema remoto. Teclee
"talk username2". Si alguien está intentando comunicarle algo y le
interrumpe su trabajo, use el comando "esg n" para rehusar mensajes. Mediante
"who" ó "rwho" puede verificar quién está dado de alta en el
sistema. |
mc |
Ejecuta el "Midnight Commander" (Comandante
de Medianoche) similar al "Comandante Norton" de DOS. |
telnet server |
Se conecta a otra máquina usando el protocolo TELNET.
Puede referirse a la máquina remota mediante su nombre ó su dirección IP. Se le pedirá
su nombre de login y su password, debe tener una cuenta en la máquina remota. Una vez
conectado, le permitirá operar en la máquina remota como si estuviera en su misma
consola. Es un protocolo poco seguro, todo lo que envia viaja en texto, incluso su
password. |
rlogin server |
(=remote login) Se conecta a otra máquina. Necesita un
nombre de login y una password. |
rsh server |
(=remote shell) Otra forma de conectarse remotamente a
otra máquina. Como en el caso anterior, usa el login/password de su sesión actual
Si no son válidos le pregunta. |
ftp server |
Se conecta por el protocolo ftp a otra máquina. Es un
buen sistema para copiar ficheros de un sistema a otro. |
minicom |
Programa minicom, para usar el modem. |
./program_name |
Ejecuta un archivo que tenga permisos de ejecución. El
fichero está en el directorio de trabajo actual. |
xinit |
Arranca el servidor de X-windows, de forma básica, sin
gestor de ventanas. |
startx |
Arranca el servidor X y el gestor de ventanas por
defecto. |
startx -- :1 |
Arranca una sesión X en el display 1 (por defecto lo
abriría en el 0) Puede tener varios terminales X ejecutándose simultánemaente. Conmute
entre ellos con las combinaciones de teclas <Ctrl><Alt><F7>,
<Ctrl><Alt><F8>, etc. |
xterm |
(en X) arranca un terminal de consola en X. Tecleando
"exit" lo cierra. |
xboing |
(en X). Un juego antiguo muy divertido. |
gimp |
(en X) Un editor de imágenes muy potente. Pese a una
apariencia muy sencilla, tiene una multitud de opciones, abra una imagen y pulse sobre
ella el botón derecho. |
netscape |
(en X) arranca netscape (necesita que Netscape esté
instalado). La versión actual es la 4.06 y 4.5. Se sabe que tienen fallos y son grandes.
De vez en cuando dejan de funcionar y desaparecen, sin hacer algun otro daño. Además,
cuando no está conectado a Internet, no funciona del todo bien, cuando se conecta,
revive. |
netscape -display host:0.0 |
(en X) Ejecuta Netscape en la máquina local y envía
su salida a otra máquina, al terminal especificado. La máquina remota debe tener los
permisos adecuados para el display, use el comando "xhost". |
shutdown -h now |
(como root) Apaga el sistema. Se usa mayormente cuando
cierra el sistema remotamente. Para hacerlo desde consola, use
<Ctrl><Alt><Del> . |
halt
reboot |
(como root) Para ó rearranca el sistema. |
D. Control de procesos
ps |
(=print status) Muestr por pantalla los proceso que se
están ejecutando en este momento. Use ps axu para ver "todos" los procesos. |
fg PID |
Trae a primer plano un proceso que estaba parado ó en
segundo plano. |
bg PID |
Pone en segundo plano al proceso. Lo mismo lo podemos
hacer con <Ctrl>z. |
kill PID |
Cierra un proceso. Averigüe el pid con "ps". |
killall program_name |
Mata un proceso por su nombre. |
xkill |
(en X) Mata una ventana gráfica. |
lpc |
(como root) Comprueba y controloa la impresora. |
lpq |
Muestra la cola de impresión. |
lprm job# |
Elimina un trabajo de la cola de impresión. |
nice program_name |
Ajusta la prioridad del proceso program_name .
Por defecto la ajusta al valor 10 (lo enlentece), el valor normal sería 0. A menor
número "nice", mayuor prioridad.. Este número puede variar entre -20 a 19.
Solo root puede especificar valores negativos. |
renice -1 PID |
(comot) Cambia la prioridad de un proceso a -1 |
Aprenda sobre los atajos: <Ctrl>c, <Ctrl>z, <Ctrl>s, and
<Ctrl>q. Hablamios de ellos previamente.
E. Comandos Básicos de Administración
printtool |
(como root en X) Herramienta para configurar la
impresora. Los valores que establezcamos los guarda en /etc/printcap. |
setup |
(como root) Configura el ratón, tarjeta de sonido,
teclado, X-windows y servicios delsistema. |
alias ls="ls-Fskb --color" |
Crea un alias para un comando. Cuando tecleemos
"ls" se ejcutará en realidad "ls - Fskb \color. Utilice /etc/bashrc para
almacenar los alias que quiera que tengan vigor cada vez que arranque. |
adduser user_name |
Crea una nueva cuenta. Debe ser root
adduser barbara
No olvide proporcionar una password en el próximo comando. |
useradd user_name |
Igual que adduser. |
userdel user_name |
Elimina una cuenta (debe ser root). Su directorio home
y su correo no entregado, no se borran automáticamente. |
groupadd group_name |
Crea un nuevo grupo. |
passwd |
Cambia la password de su cuenta. Como root puede
cambiar la password de cualquier usuario.
passwd user_name |
chmod perm filename |
(=change mode) Cambia los permisos de acceso de un
fichero que le pertenezca. (root puede cambiar lo que quiera) |
chown new_ownername filename
chgrp new_groupname filename |
Cambia el propietario y el grupo de un fichero. Debe
usarlo cada vez que copie un fichero que quiera compartir con otros. |
su |
(=super user) Adquiera privilegios de root. Se le
pedirá la password. |
rpm -ivh filename.rpm |
(=Red Hat Package Manager) Instala los paquetes de
aplicaciones en formato "rpm", de Red Hat. También los desinstala y hace muchas
otras operaciones con ellos. Trabaja desde linea de comandos. |
glint
gnorpm |
(en X) Una Interfaz Gráfica de Usuario (GUI) para rpm. |
kernelcfg |
(como root en X). GUI para manejar los módulos
cargados en el kernel. Es un frontal gráfico para "insmod", que es menos
agradable para los recién llegados. |
insmod parport
insmod ppa |
(como root)Inserta módulos en el kernel. En el ejemplo
insertamos el módulo para dispositivos zip de puerto paralelo. (los módulos son algo
así como los "drivers" de DOS). |
rmmod module_name |
(como root). Elimina módulos del kernel. |
setserial /dev/cua0 port 0x03f8 irq 4 |
(como root) Establece la configuración de un puerto
serie a valores no estandar. En el ejemplo, establecemos al puerto serie uno (cua0 ó
ttyS0). Los valores por defecto son (cua1or ttyS1): dirección i/o 0x02f8, irq 3. El
puerto tres(cua2 or ttyS2): 0x03e8, irq 4. El cuarto: (cua3 or ttyS3): 0x02e8, irq
3. Añada sus valores a /etc/rc.d/rc.local si quiere tenerlos activos cada vez que
arranque el sistema. Vea la página de manual |
fdisk |
(como root) utilidad para particionar discos duros. |
cd /usr/src/linux-2.0.36
make xconfig |
(como root en X). Interfaz gráfica para configurar el
kernel. (Se necesita el intérprete "Tk" y debe tener el código fuente
instalado). Como alternativas tenemos: "make config" (en modo texto) y
"make menuconfig" (con menus). |
depmod -a |
(como root) Crea las dependencias de módulos para el
kernel. Use "modprobe -a" para cargar los módulos. |
ldconfig |
(como root) Reestablece los enlaces a las librerías
dinámicas. Se usa despues de instalar nuevo software, aunque un reinicio de la maquina se
lo evita. |
touch filename |
Cambia la fecha del fichero a la fecha actual. Si no
existe el fichero, lo crea. |
mknod /dev/fd0 b 2 0 |
(=make node, como root) Crea ficheros de dispositivos
(drivers). En el ejemplo creamos un driver para una disquetera. El carácter "b"
significa dispositivo de bloques, podría haber sido c=caracteres, p=dispositivo FIFO,
u=dispositivo de caracteres sin buffer. Los dos enteros son los números mayor y menor del
dispositivo. |
fdformat /dev/fd0H1440
mkfs -c -t ext2 |
(=floppy disk format, como root) Efectua un formateo a
bajo nivel de la disquetera (/dev/fd0), a alta densidad (1440 MB). Establece un sistema de
ficheros Linux (-t ext2), comprueba bloque malos (en cuyo caso los marca) (-c ). La
última parte del formateo es a alto nivel. |
badblocks /dev/fd01440 1440 |
(como root) Analiza un disquete buscando bloques
defectuosos. El parámetro "1440" significa que se comprobarán 1440 bloques. No
modifica al contenido del floppy. |
fsck -t ext2 /dev/hda2 |
(=file system check, como root) Verifica y repara
sistemas de ficheros. |
dd if=/dev/fd0H1440 of=floppy_image
dd if=floppy_image of=/dev/fd0H1440 |
Crea una imagen de un disquete en el fichero
"floppy_image" y lo situa en el directorio de trabajo actual. El segundo
comando, copia este fichero a otro disquete. |
mount -t auto /dev/fd0 /mnt/floppy |
(como root) monta el disquete. El directorio
/mnt/floppy debe existir y NO ser su directorio de trabajo actula. |
mount -t auto /dev/cdrom /mnt/cdrom |
(como root) monta el CD. |
mount /mnt/floppy |
(como user) monta un disquete como usuario. El fichero
/etc/fstab debe estar configurado para permitirlo. El directorio /mnt/floppy NO debe ser
su directorio de trabajo actual. |
mount /mnt/cdrom |
(como user) monta un CD. Similar al caso anterior. |
umount /mnt/floppy |
Desmonta el disquete. |
F. Utilidades de Red
netconf |
(como root) Una herramienta de configuración, basada
en menus, muy útil. |
ping machine_name |
Comprueba que puede acceder a una determinada
dirección de red. |
route -n |
Muestra la tabla de rutas. |
ipfwadm -F -p m |
Establece la política de firewall a enmascaramiento.
No es muy seguro, pero es smple y muy funcional. |
ifconfig |
(como root) Muestra información sobre sus interfaces
de red activas (ethernet, ppp, etc). |
ifup interface_name |
(/sbin/ifup para ejecutarlo como usuario normal)
Arranca la interfaz:
ifup eth0
ifup ppp0
Los usuarios pueden hacer esto solo si tienen los permisos apropiados. |
ifdown interface_name |
(/sbin/ifdown para ejecutarlo como usuario normal).
Desactiva una interfaz de red. |
netstat | more |
Muestra un montón de información sobre la red. |
G. Herramientas de Desarrollo y Lenguages de
Programación
emacs |
(en X) El editor emacs. |
gcc filename.c |
Compilador GNU C. |
g++ filename.C |
Compilador GNU C++. |
perl |
Lenguaje de scripts muy versátil y poderoso. |
python |
Lenguaje moderno y orientado a objetos, muy elegante. |
tcl |
Otro lenguaje de scripts, portado a diversas
plataformas. |
wish |
(xterm) Un frontal gráfico para Tk, unas extensiones
para X-windows de tcl. Muy usado para construir GUIs. |
guile |
Una implementación del lenguaje "Scheme" |
g77 |
GNU FORTRAN. |
f2c |
Conversor de FORTRAN a C. |
fort77 |
Compilador de FORTRAN. |
basic |
"Chipmunk Basic". |
cvs |
Sistema de Versiones Concurrentes. Para llevar un
desarrollo entre un grupo de trabajo. |
diff file1 file2 > patchfile |
Compara el contenido de dos ficheros. Guarda los
rsultados en un fichero. |
sdiff file1 file2 |
Comparación a dos bandas. |
patch file_to_patch patchfile |
Aplica un parche producido con "diff". |
grep |
Busca en ficheros de texto la aparición de una
deterninada expresión. Muy poderoso. |
rgrep |
Una versión de grep que busca recursivamente en
directorios. |
tr |
Traducción. Reemplaza caracteres en un fichero de
texto. |
gawk |
GNU awk (muy usado para procesar ficheros de texto con
campos delimitados por algun caracter). |
sed |
Editor/Procesador de ficheros de textos. |