Académique Documents
Professionnel Documents
Culture Documents
Código
0,75 créditos
Sistema operativo
GNU/Linux básico
I
Publicado 2003-09-21
Se garantiza permiso para copiar, distribuir y modificar este documento según los términos de la GNU Free Documentation License,
Version 1.2 o cualquiera posterior publicada por la Free Software Foundation, sin secciones invariantes ni textos de cubierta delan-
tera o trasera. Se dispone de una copia de la licencia en el apéndice A, junto con una tradición no oficial en el Apéndice B.
Puede encontrarse una versión de la última versión de este documento en http://curso-sobre.berlios.de/introsobre.
Sistema operativo GNU/Lunux básico FUOC
Índice
Introducción ................................................................... 9
1. Presentación .............................................................. 11
1.1. ¿Qué es el GNU? ................................................. 11
1.2. ¿Qué es el GNU/Linux? ........................................ 14
1.3. Distribuciones ....................................................... 16
1.4. Programas y documentación ................................. 18
3
FUOC Software libre
4
Sistema operativo GNU/Lunux básico FUOC
5
FUOC Software libre
6
Sistema operativo GNU/Lunux básico FUOC
7
FUOC Software libre
8
Sistema operativo GNU/Linux básico FUOC
Introducción
Aunque ya hace más de veinte años que el software libre existe, hasta
los últimos tiempos no se ha perfilado como una alternativa válida
para muchos usuarios, empresas y, cada vez más, instituciones y go-
biernos. Actualmente, GNU/Linux es uno de los sistemas operativos
más fiables y eficientes que podemos encontrar. Aunque su natura-
leza de software libre creó inicialmente ciertas reticencias por parte
de usuarios y empresas, GNU/Linux ha demostrado estar a la altura
de cualquier otro sistema operativo existente.
9
FUOC Software libre
¡Bienvenidos al GNU/Linux!
ANOTACIONES
10
Sistema operativo GNU/Linux básico FUOC
1. Presentación
gital Research empezó a vender el suyo, etc. Este hecho hizo que to- que la compañía que les
das las compañías se dieran cuenta de que el software podía ser muy había vendido una nueva
impresora para el laborato-
rentable y les podía aportar grandes beneficios. A partir de este he- rio donde trabajaba no le
cho, la mayoría de empresas empezaron a poner reticencias a dejar quería facilitar el código
fuente de los drivers. ¡Él sólo
el código fuente de sus programas y sistemas operativos y empeza-
quería modificarlos para
ron a vender sus programas como un valor añadido a su hardware. que le avisara automática-
En este entorno cada vez más cerrado, Richard Stallman (que traba- mente cuando se atascaba
el papel! La compañía se
jaba en el MIT, Massachusetts Institute of Technology) se sintió indig- negó a proporcionárselos.
nado al comprobar que cada vez era más difícil conseguir el código
11
FUOC Software libre
La filosofía que en la FSF se tiene del software lo define con las si-
guientes cuatro libertades:
12
Sistema operativo GNU/Linux básico FUOC
13
FUOC Software libre
Actividades
14
Sistema operativo GNU/Linux básico FUOC
Newsgroups: comp.os.minix
Asunto: What would you like to see most in minix?
Fecha: 25 Aug. 91 20:57:08 GMT
Organization: University of Helsinki
Hello everybody out there using minix.
I’m doing a (free) operating system (just a ho-
bby, won’t be big and professional like gnu) for
386(486) AT clones. This has been brewing since
april, and is starting to get ready. I’d like any
feedback on things people like/dislike in minix,
as my OS resembles it somewhat (same physical la- Contenido
yout of the file-system (due to practical rea- complementario
sons) among other things). Linux, el núcleo de GNU/Li-
I’ve currently ported bash(1.08) and gcc(1.40), nux, es de tipo monolítico.
Esto indica que no se sepa-
and things seem to work.
ran sus diferentes funcionali-
ANOTACIONES
This implies that I’ll get something practical dades en distintos módulos,
within a few months, and I’d like to know what sino que todo forma parte
de un mismo programa. El
features most people would want. Any suggestions principal inconveniente de
are welcome, but I won’t promise I’ll implement este tipo de diseño es que
la localización de errores y
them :-)
su mantenimiento son muy
costosos. En contrapartida,
el rendimiento que se con-
Si accediéramos al fórum de debate donde apareció este primer sigue es mucho mayor que
mensaje, veríamos cómo rápidamente gente de todo el mundo em- en otros tipos de diseño.
15
FUOC Software libre
1.3. Distribuciones
16
Sistema operativo GNU/Linux básico FUOC
17
FUOC Software libre
Actividad
18
Sistema operativo GNU/Linux básico FUOC
• Documentación
http://www.linuxpowered.com/HOWTO/HOWTO-INDEX: El
HOWTO de los HOWTOS.
19
FUOC Software libre
• Noticias
• Foros
• Búsqueda
20
Sistema operativo GNU/Linux básico FUOC
• Distribuciones
• Descargas
• Otras
21
Sistema operativo GNU/Linux básico FUOC
2.1. Introducción
Contenido
Cada uno de los comandos del sistema suele tener multitud de pa- complementario
ANOTACIONES
23
FUOC Software libre
24
Sistema operativo GNU/Linux básico FUOC
25
FUOC Software libre
26
Sistema operativo GNU/Linux básico FUOC
• group
único que está reservado para el grupo del root (los administra-
dores).
27
FUOC Software libre
• shadow
2) Contraseña cifrada.
4) Días que deben pasar hasta que la contraseña pueda ser cam-
biada.
5) Días que han de pasar hasta que la contraseña deba ser cam-
biada.
28
Sistema operativo GNU/Linux básico FUOC
de un determinado grupo.
29
FUOC Software libre
los de la configuración del sistema, los de log, los de los usuarios, etc.
programa (o módulos del nú-
cleo del operativo) que se en- En general, cada operativo utiliza su propio sistema de ficheros, carac-
carga de realizar todas las terizándolo en muchos aspectos como pueden ser el rendimiento, la
operaciones relacionadas
seguridad, la fiabilidad, etc. GNU/Linux es capaz de leer/escribir ar-
con el almacenamiento y
manipulación de los archi- chivos con cualquiera de los sistemas de ficheros que actualmente
vos. Son las funciones que existen, aunque para su propia raíz y directorios principales es nece-
tratan con los dispositivos físi-
cos de almacenamiento del sario un sistema de ficheros que le permita ciertas operaciones. Gene-
ordenador, como el disco du- ralmente, se suele utilizar el tipo ext2, ext3 o ReiserFS. El ext2 es el más
ro.
típico y extendido. Su rendimiento es bastante bueno, incorpora todo
30
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
31
FUOC Software libre
32
Sistema operativo GNU/Linux básico FUOC
2.3.3. Moviéndonos
33
FUOC Software libre
ejemplo anterior sería: “cd /root”. Para saber en qué directorio es-
tamos, podemos utilizar el comando pwd.
2.3.4. Enlaces
34
Sistema operativo GNU/Linux básico FUOC
2.3.5. Permisos
35
FUOC Software libre
El mecanismo de SetUserId
es muy útil cuando un pro- Después de estos 10 caracteres encontramos una cifra que nos indi-
grama necesita tener los
permisos de su propietario
ca el número de enlaces fuertes que tiene el fichero. Para los direc-
para acceder a ciertos ar- torios, este número indica cuántas carpetas hay dentro de él además
chivos o hacer algún tipo de de los enlaces fuertes que tiene (cuando no hay ninguno, el número
operación en el sistema. De
todos modos, debemos vigi- es 2, debido a la gestión interna del operativo). A continuación ve-
lar mucho con este tipo de mos el propietario y el grupo del archivo, seguido del tamaño (en
ficheros porque pueden su-
bytes) que ocupa y la fecha de la ultima modificación. En todos los
ANOTACIONES
36
Sistema operativo GNU/Linux básico FUOC
0 000 ---
1 001 --x
2 010 -w-
3 011 -wx
4 100 r--
5 101 r-x
6 110 rw-
7 111 rwx
del usuario, grupo o al resto con las letras “u”, “g” u “o” respec-
tivamente. Seguidamente, debemos añadir un “+” o “-” según
si queremos añadir o eliminar el atributo, que indicaremos con
“r”, “w”, “x” o “s” (este último para el SetUserId). Además, po-
demos hacer todas las combinaciones posibles, refiriéndonos a
más de un permiso y/o usuarios. Por ejemplo, “chmod go+r
gpl.txt”daría el permiso de lectura al grupo y a los otros usua-
rios para el fichero gpl.txt.
37
FUOC Software libre
38
Sistema operativo GNU/Linux básico FUOC
39
FUOC Software libre
Otro tipo de comandos muy útiles son los que nos buscan un cierto
patrón en el contenido de los ficheros. Con el comando grep le po-
demos pasar como segundo parámetro el nombre del archivo y
40
Sistema operativo GNU/Linux básico FUOC
41
FUOC Software libre
• “T”: esta opción viene por defecto y nos indica que sólo se mos-
trarán los procesos que se están ejecutando en el terminal dónde
nos encontramos o que se hayan lanzando a partir de él.
• “-a”: nos muestra los procesos de todos los terminales del siste-
ma.
42
Sistema operativo GNU/Linux básico FUOC
Otro comando muy útil es el top, que nos informa de forma interac-
Contenido
tiva de los procesos del sistema, del estado de utilización de la CPU, complementario
la memoria utilizada y libre, la RAM que utiliza cada proceso, etc. Con los comandos de mani-
Este programa es muy indicado cuando el sistema no responde ade- pulación de procesos pode-
mos realizar cualquier
cuadamente o notamos alguna disfunción extraña, ya que nos per-
acción que nos interese:
mite localizar rápidamente qué proceso está afectando desde pausar los procesos
negativamente al rendimiento del sistema. de un usuario concreto, eli-
minar aquellos que no nos
interesan o hacer que algu-
Como vemos, el sistema nos informa sobre todos los aspectos posi- nos ocupen más tiempo la
CPU para que vayan más
bles de los procesos del sistema. Además de esto, podemos enviar rápido.
ciertas señales a los procesos para informarles de algún evento, po-
demos sacarlos de la cola de ejecución, eliminarlos, darles más prio- Contenido
ridad, etc. Saber manipular correctamente todos estos aspectos complementario
también es muy importante, ya que nos permitirá utilizar nuestro or- Para tratar las señales en un
denador de forma más eficiente. Por ejemplo, si somos administra- shell script (véase más ade-
lante cómo programarlos),
dores de un centro de cálculo donde la mayoría de aplicaciones que podemos utilizar el coman-
se ejecutan necesitan mucho tiempo de CPU, podríamos configurar do trap.
el sistema para hacer que los más urgentes se ejecuten con más prio-
ridad que otros y acaben primero. El comando kill nos permite
enviar señales a los procesos que nos interese. En general, todos los
programas se diseñan para que puedan recibir este tipo de señales.
ANOTACIONES
De este modo, según el tipo de señal recibido saben que deben rea-
lizar unas operaciones u otras. Hay muchos tipos diferentes de seña-
les, que podemos ver en el manual de kill, aunque las más
utilizadas son las que nos sirven para obligar a un proceso a que ter-
mine o pause su ejecución. Con la señal TERM (“kill -15 PID”),
le indicamos al proceso que queremos que termine, de modo que al
recibir la señal deberá guardar todo lo necesario y acabar su ejecu-
ción. Si hay algún tipo de problema o el programa no está prepara-
do para recibir este tipo de señal, podemos utilizar KILL (“kill -
43
FUOC Software libre
Todos los procesos del sistema tienen una cierta prioridad. Como de-
cíamos antes, esta prioridad indica el tiempo de CPU que se le dejará
ANOTACIONES
44
Sistema operativo GNU/Linux básico FUOC
ocurrencias y “N” para las anteriores), “q” para salir, etc. Los manua-
les del sistema están divididos en diferentes secciones según la natu-
raleza de los mismos:
45
FUOC Software libre
6) Juegos.
7) Paquetes de macro.
46
Sistema operativo GNU/Linux básico FUOC
extensión formato
“.tar” tar
“.gz” gzip
“.bz2” bzip2
“.zip” zip
47
FUOC Software libre
Otro comando muy útil es du, que nos muestra realmente lo que nos
ocupa un fichero en disco. Para entender claramente qué queremos
decir con esto, debemos profundizar un poco más en la organización
interna de los discos y en cómo el sistema operativo los manipula.
Tal como decíamos anteriormente, por razones de eficiencia el siste-
ma operativo divide el espacio del disco en pequeños trozos llama-
48
Sistema operativo GNU/Linux básico FUOC
49
FUOC Software libre
2.6.1. Redireccionamientos
Una vez hemos aprendido a utilizar algunos de los comandos del sis-
tema, es muy probable que en algunos casos nos interese utilizarlos
de forma simultánea para agilizar las acciones que queremos reali-
zar. Una operación muy interesante consiste en poder coger la salida
50
Sistema operativo GNU/Linux básico FUOC
51
FUOC Software libre
52
Sistema operativo GNU/Linux básico FUOC
53
FUOC Software libre
Los shell scripts son ficheros donde escribimos una serie de coman-
Contenido
complementario dos (cualquiera de los que hemos visto en este capítulo) para que
ANOTACIONES
#!/bin/bash
54
Sistema operativo GNU/Linux básico FUOC
nombreVariable = contenido
if condicion; then
instrucciones
else
instrucciones
fi
case palabra in
caso1)
55
FUOC Software libre
instrucciones
;;
caso2)
instrucciones
;;
*)
instrucciones
esac
56
Sistema operativo GNU/Linux básico FUOC
3. Taller de Knoppix
3.1. Introducción
57
FUOC Software libre
F2 for help
boot:
58
Sistema operativo GNU/Linux básico FUOC
Nota
59
FUOC Software libre
Una vez dentro, lo primero que debemos saber, tal como ya se ha re-
marcado, es cómo pararlo. Recordemos una vez más que no pode-
mos parar el ordenador sin haber detenido antes el sistema operativo.
Hay múltiples maneras de hacerlo. Las más comunes son: pulsar la
combinación de teclas CTRL+ALT+Supr o mediante el comando
halt (hay muchas más, mediante el comando reboot, cambiando
de runlevel a 0 o 6, etc.). Una vez hayamos dado la orden al sistema
para que se detenga, éste empezará a ejecutar las instrucciones perti-
nentes de paro (desmontado de dispositivos, parada de procesos,
etc.), y al final de todo este proceso, KNOPPIX expulsará el CD-ROM ,
y nos pedirá que pulsemos INTRO para parar el ordenador.
root@tty1[/]#loadkeys /usr/share/keymaps/i386/
qwerty/es.kmap.gz
60
Sistema operativo GNU/Linux básico FUOC
root@tty1[/]# l
Display all 143 possibilities? (y or n)
root@tty1[/]# lo
root@tty1[/]# lo
Vemos que sólo falta añadir “adk” y volver a pulsar TAB para que
funcione el autocompletado obteniendo:
root@tty1[/]# loadkeys
ANOTACIONES
61
FUOC Software libre
root@tty1[/]# pwd
/
Después del carácter “@”, que simplemente sirve para separar cam-
pos, hay “tty1”, este campo nos indica en qué terminal nos encon-
tramos, y es que, tal como ya se ha dicho, Linux es multiusuario y
ANOTACIONES
62
Sistema operativo GNU/Linux básico FUOC
root@tty1[/]# ls
KNOPPIX bin boot CD-ROM dev etc home lib mnt opt proc
ramdisk sbin tmp usr var
root@tty1[/]# ls -la
total 45
drwxr-xr-x 9 root root 1024 Mar 2 18:37 .
drwxr-xr-x 9 root root 1024 Mar 2 18:37 ..
drwxr-xr-x 20 root root 4096 Jan 18 18:05 KNOPPIX
ANOTACIONES
63
FUOC Software libre
Fijémonos en los distintos colores con los que se nos muestran los resul-
tados (podemos observar los colores citados en nuestro PC a medida
que vayamos progresando en el taller de Knoppix): azul marino para los
directorios; magenta para los enlaces simbólicos, cuyo destino se nos
muestra después de la combinación de caracteres “->”; verde para los
scripts y ejecutables (aunque, obviamente, en el directorio raíz no espe-
ramos encontrar ninguno de ellos, ya que, tal como hemos visto, en
UNIX el orden dentro del sistema de ficheros es muy rígido), etc.
root@tty1[bin]# ls -la
total 171831
drwxr-xr-x 2 root root 311296 Jan 18 18:04 .
drwxr-xr-x 14 root root 2048 Aug 17 2002 ..
ANOTACIONES
64
Sistema operativo GNU/Linux básico FUOC
Actividad
65
FUOC Software libre
66
Sistema operativo GNU/Linux básico FUOC
que en UNIX los dispositivos antes de poderse usar deben ser monta-
dos, y que antes de retirar el soporte deben ser desmontados. Este úl-
timo punto es extremadamente importante, ya que si no, la integridad
de los datos no está en absoluto garantizada. Podemos, por ejemplo,
antes de proceder a trabajar sobre el disquete, intentar retirar el CD-
ROM pulsando el botón de expulsión. ¡Oh, sorpresa!, no se puede; no
pensemos que se ha estropeado el dispositivo y menos que lo haya he-
cho Linux. Simplemente sucede que este dispositivo también ha sido
montado automáticamente por el sistema durante el arranque, y que,
por tanto, ha pasado a formar parte de éste; no tendría ningún sentido
que pudiésemos retirar el CD-ROM sin antes informar al sistema; así
pues, éste ha tomado el control de este dispositivo y, entre otras cosas,
ha deshabilitado el botón de expulsión del CD-ROM, precisamente
con el fin de que accidentalmente éste sea retirado sin antes ser des-
montado. No sucede lo mismo con la disquetera: en este dispositivo la
expulsión se hace de forma puramente mecánica, así que es imposible
que el sistema pueda impedir que nosotros expulsemos el disquete sin
informarle antes, pero esto no es en absoluto recomendable, tal como
ya se ha dicho, porque esto puede suponer la pérdida de todos los da-
tos que pudiese contener. Así pues, mientras no aprendamos a montar
y desmontar dispositivos de soporte de datos, el disquete debe perma-
necer en la disquetera desde que el sistema arranca hasta que está pa-
rado, ya que durante el proceso de parada, entre otras operaciones,
se efectuarán las de desmontado de estos dispositivos. Vayamos al dis-
quete: pero, ¿dónde está?, ¿dónde lo ha montado el sistema? Para
responder a estas preguntas ejecutamos el comando mount sin argu-
mentos ni opciones adicionales (precisamente éste es el comando que
se utiliza para montar dispositivos, y umount para desmontarlos):
root@tty1[/]# mount
/dev/root on / type ext2 (rw)
ANOTACIONES
67
FUOC Software libre
root@tty1[/]# cd /mnt/auto/floppy
root@tty1[floppy]# ls -la
total 8
drwxrwxrwx 3 knoppix knoppix 7168 Jan 1 1970 .
drwxr-xr-x 3 root root 0 Mar 3 19:34 ..
chero:
root@tty1[dir00]# cd subdir00
root@tty1[subdir00]# touch file00
root@tty1[subdir00]# ls -la
total 1
drwxrwxrwx 2 knoppix knoppix 512 Mar 3 20:21 .
drwxrwxrwx 4 knoppix knoppix 512 Mar 3 20:21 ..
-rwxrwxrwx 1 knoppix knoppix 0 Mar 3 20:21 file00
68
Sistema operativo GNU/Linux básico FUOC
69
FUOC Software libre
I agree.
˜
˜
˜
:wq
root@tty1[subdir00]# more file01
it seems we’re on the right way, mate!!!
I agree.
root@tty1[subdir00]# rm file00
rm: remove regular file ‘file00’?
Lo cierto es que esta pregunta por parte del sistema no nos la espe-
rábamos. Pulsamos CTRL-C para cancelar, “n” para no borrar o “y”
para hacerlo. Lo importante ahora es que entendamos por qué el sis-
tema nos ha formulado esta pregunta. Si leemos el man del coman-
do rm veremos que éste debería borrar el archivo sin hacer ninguna
pregunta (recordemos que podemos ejecutar dicho man en otra tty,
y que en la tty2 aún tenemos abierto el man de man, si no hemos
salido de él mediante “q”, o si no hemos apagado el ordenador des-
de que lo invocamos, y proseguir así nuestro trabajo en la tty en que
estábamos). Pero fijémonos en la explicación de la opción “-i” de
este mismo man. ¿Qué está pasando? Parece como si esta opción es-
tuviera activada por defecto. En realidad no es exactamente así, lo
que ocurre es que el sistema por defecto ha establecido unos alias;
para verlos todos, ejecutemos el comando alias:
root@tty1[etc]# alias
alias ..=’cd ..’
ANOTACIONES
70
Sistema operativo GNU/Linux básico FUOC
root@tty1[subdir00]# cp /mnt/auto/floppy/dir00/ /
mnt/auto/floppy/dir01 -r
ta, tanto para el origen como para el destino. Del mismo modo, po-
dríamos haber utilizado el direccionamiento relativo para especificar
el origen de la operación, su destino o ambas cosas. Cuando usa-
mos el direccionamiento relativo, el origen del direccionamiento es
la posición actual dentro del filesystem. Como en la mayoría de las
ocasiones, el sistema nos ofrece la posibilidad de obtener los mismos
resultados empleando distintos métodos. Se trata de conocer cuantos
más mejor, y saber escoger el más efectivo para cada caso en parti-
cular. Así pues, hubiésemos obtenido el mismo resultado haciendo
71
FUOC Software libre
Actividad
root@tty1[dir00]# cp subdir00/file01.
root@tty1[floppy]# rm -rf *
72
Sistema operativo GNU/Linux básico FUOC
root@tty1[/]#cd /etc
root@tty1[etc]# cat passwd
root:x:0:0:root:/home/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
.
.
.
ANOTACIONES
partimag:x:104:65534::/home/partimag:/bin/false
user00:x:1001:100::/home/user00:/bin/bash
73
FUOC Software libre
74
Sistema operativo GNU/Linux básico FUOC
root@tty1[etc]#mkdir /home/user00
root@tty1[etc]#chown user00 -R /home/user00
root@tty1[etc]#chgrp users -R /home/user00
ANOTACIONES
75
FUOC Software libre
Nota
Actividad
root@tty1[home]# su user00
su(pam_unix)[4312]: session opened for user user00
by (uid=0)
user00@tty1[home]$
user00@tty1[home]$ cd
user00@tty1[user00]$ echo “only user00 can read,
write and execute this file.” > user00file
76
Sistema operativo GNU/Linux básico FUOC
Actividad
root@tty1[/]# ps
PID TTY TIME CMD
481 tty1 00:00:00 bash
1559 tty1 00:00:00 ps
Sin argumentos ps nos informa sobre los procesos que corren sobre
el terminal donde se ejecuta; naturalmente el primer proceso siem-
pre corresponderá al shell.
77
FUOC Software libre
Podemos ahora preguntarnos por todos los procesos que están co-
rriendo sobre el sistema:
root@tty1[/]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.4 0.0 72 72 ? S 15:41 0:07 init [2]
root 2 0.0 0.0 0 0 ? SW 15:41 0:00 [keventd]
root 3 0.0 0.0 0 0 ? SWN 15:41 0:00 [ksoftirqd_CPU0]
root 4 0.0 0.0 0 0 ? SW 15:41 0:00 [kswapd]
root 5 0.0 0.0 0 0 ? SW 15:41 0:00 [bdflush]
root 6 0.0 0.0 0 0 ? SW 15:41 0:00 [kupdated]
root 52 0.0 0.0 0 0 ? SW 15:41 0:00 [kapmd]
root 59 0.0 0.0 0 0 ? SW 15:41 0:00 [khubd]
root 433 0.0 0.1 1368 616 ? S 15:41 0:00 pump -i eth0
root 475 0.0 0.1 1316 596 ? S 15:41 0:00 /usr/sbin/automount
--pidfile=varrunautofs_:mnt_:auto.pid
root 481 0.0 0.3 2864 1988 tty1 S 15:41 0:00 /bin/bash -login
root 482 0.0 0.3 2864 1988 tty2 S 15:41 0:00 /bin/bash -login
root 483 0.0 0.3 2856 1952 tty3 S 15:41 0:00 /bin/bash -login
root 484 0.0 0.3 2856 1976 tty4 S 15:41 0:00 /bin/bash -login
root 2086 0.0 0.3 3436 1552 tty1 R 16:06 0:00 ps aux
root@tty1[/]# sleep 20
<Ctrl+Z>
[1]+ Stopped sleep 20
\intro
root@tty1[/]#jobs
[1]+ Stopped sleep 20
root@tty1[/]# bg 1
[1]+ sleep 20 &
78
Sistema operativo GNU/Linux básico FUOC
root@tty1[/]# man ls
<Ctrl+z>
[1]+ Stopped man ls
root@tty1[/]# jobs
[1]+ Stopped man ls
root@tty1[/]# bg 1
ciones posteriores.)
Hay muchos tipos de mice, pero los más corrientes son los de tres
botones conectados al ordenador vía puerto serie o vía puerto PS2.
Si tenemos un ratón del primer tipo, ejecutaremos la línea siguiente
(se presupone que el ratón está conectado en el primer puerto serie
del ordenador, si no fuese así, soló habría que cambiar el device
ttyS0 (/dev/ttS0) por ttyS1 (/dev/ttS1) en caso de estar en el
79
FUOC Software libre
segundo puerto, por ttyS2 para el tercer puerto o por ttyS3 para el
cuarto puerto):
Hay que destacar que el contenido del búffer del ratón se conserva
al pasar de una tty a otra.
80
Sistema operativo GNU/Linux básico FUOC
Actividad
root@tty1[/]# uname -a
Linux Knoppix 2.4.20-xfs #1 SMP Die Dez 10 20:07:25
CET 2002 i686 AMD Athlon(TM) XP
2100+ AuthenticAMD GNU/Linux
root@tty1[/]# cat/proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
ANOTACIONES
model : 8
model name : AMD Athlon(TM) XP 2100+
stepping : 1
cpu MHz : 1732.890
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
81
FUOC Software libre
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8
apic sep mtrr pge mca
cmov pat pse36 mmx fxsr sse syscall
mmxext 3dnowext 3dnow
bogomips : 3460.30
root@tty1[/]# lspci
00:00.0 Host bridge: VIA Technologies, Inc. VT8367 [KT266]
00:01.0 PCI bridge: VIA Technologies, Inc. VT8367 [KT266 AGP]
00:05.0 Multimedia audio controller: C-Media Electronics Inc CM8738 (rev 10)
00:06.0 RAID bus controller: Promise Technology, Inc. PDC20276 IDE (rev 01)
00:07.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22 1394a-2000 Controller
00:09.0 USB Controller: VIA Technologies, Inc. USB (rev 50)
00:09.1 USB Controller: VIA Technologies, Inc. USB (rev 50)
00:09.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 51)
00:0d.0 SCSI storage controller: Artop Electronic Corp AEC6712D SCSI (rev 01)
00:0f.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8029(AS)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8233A ISA Bridge
00:11.1 IDE interface: VIA Technologies, Inc. Bus Master IDE (rev 06)
00:11.2 USB Controller: VIA Technologies, Inc. USB (rev 23)
00:11.3 USB Controller: VIA Technologies, Inc. USB (rev 23)
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon 7500 QW
root@tty1[/]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 1971 1516 455 77% /
/dev/CD-ROM 715744 715744 0 100% /CD-ROM
/dev/cloop 1837536 1837536 0 100% /KNOPPIX
/dev/shm 407928 40 407888 1% /ramdisk
ANOTACIONES
Actividad
82
Sistema operativo GNU/Linux básico FUOC
3.11. Conclusión
ANOTACIONES
83
Sistema operativo GNU/Linux básico FUOC
4. Instalación de GNU/Linux
4.1. Introducción
85
FUOC Software libre
El primer paso del proceso suele ser escoger qué tipo de instala-
ción queremos realizar. Generalmente, la elección suele ser para
identificar qué tipo de usuario está instalando el sistema para, se-
gún éste, proporcionarle más o menos información y dejarle con-
figurar con más precisión el sistema o no. Si tenemos los
conocimientos suficientes, es recomendable hacer la instalación
en modo experto (o similar) para poder adaptar más el sistema a
nuestras necesidades específicas. En algunas distribuciones, este
primer paso sirve para seleccionar la versión del núcleo que que-
remos instalar o para configurar el proceso de instalación en
modo gráfico, texto, etc. Es imprescindible leer antentamente la
información que se nos proporciona en esta primera fase para
poder elegir adecuadamente lo que más se ajuste al destino que
queramos darle al sistema.
de instalación porque el
rendimiento del sistema
baja considerablemente. Para instalar GNU/Linux debemos disponer de, al menos, una
partición para él. El hecho de que al modificar el tamaño de una
partición debemos eliminarla y crearla de nuevo implica perder
toda la información que tenemos en ella. Por éste y otros motivos,
existen programas que nos permiten modificar el tamaño de las
mismas sin tener que eliminarlas. El fips es un programa con
licencia GPL que nos permite redimensionar nuestras particiones
formateadas con FAT (para sistemas Windows TM de la rama no
86
Sistema operativo GNU/Linux básico FUOC
cer exactamente lo mismo cambiando, eso sí, la presentación, el en- tar dos dispositivos compati-
bles (discos, CD, etc.) en
torno, etc. La forma como GNU/Linux identifica los discos es /dev/
cada uno de los dos canales.
hdX para los discos IDE y /dev/sdX para los SCSI, donde en am- Las controladoras SCSI (Sma-
bos casos la “X” es una letra, correspondiente con el disco al que ll/Smart Computer System In-
terface) permiten hasta 8
nos queramos referir de la siguiente manera: dispositivos y tienen tasas de
transferencia más altas, aun-
que su precio también es
dispositivo significado bastante más elevado que los
/dev/hda Maestro del primer canal IDE IDE.
87
FUOC Software libre
dispositivo significado
Contenido
complementario /dev/hdb Esclavo del primer canal IDE
...
88
Sistema operativo GNU/Linux básico FUOC
89
FUOC Software libre
El fichero de configuración de
mos recurrir a los comandos insmod (para agregar un nuevo
los módulos se suele encon- módulo), lsmod (para listar los instalados), rmmod (para eliminar
trar en /etc/modules.
alguno) y modprobe (para probar alguno y, si funciona correcta-
mente, incluirlo en el núcleo). Todos estos módulos no son más que
ficheros binarios que acostumbramos a encontrar en el directorio /
lib/modules/ del sistema.
90
Sistema operativo GNU/Linux básico FUOC
91
FUOC Software libre
Contenido
qué programas necesitamos, ahorrándonos espacio en el disco y evi-
complementario tando que el sistema cargue más programas de los necesarios. Al
RedHat también ha adopta- instalar un sistema para un uso específico (servidor http, cvs, etc.) es
do un sistema de descarga/ muy recomendable escoger sólo aquellos programas que realmente
actualización del mismo es-
tilo que el apt de Debian.
utilizaremos para evitar problemas de seguridad (cuantas menos
puertas dejemos abiertas al exterior, más seguro será el sistema).
92
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
93
Sistema operativo GNU/Linux básico FUOC
5.1. Introducción
Si el primer taller nos servía para dar nuestros primeros pasos so-
bre un sistema tipo UNIX, y para ello utilizábamos una distribu-
ción que no dejase rastro en nuestro PC, pues se arrancaba y se
ejecutaba desde CD-ROM, éste debe servirnos para aprender a
instalar un sistema básico GNU/Linux en nuestro ordenador. La
distribución escogida para el desarrollo del taller ha sido la De-
bian 3.0r1 (las versiones 3.0 también se conocen con el nombre
de Debian Woody).
95
FUOC Software libre
Actividad
96
Sistema operativo GNU/Linux básico FUOC
97
FUOC Software libre
será tan simple como ejecutar una sola instrucción. Pero este hecho
no debe hacernos abandonar la instalación utilizando CD-ROM, si,
como hemos dicho, no disponemos de conexión a Internet o la que
tenemos es muy lenta (no hay que subestimar tampoco los paquetes
que contienen estos CD-ROM, ya que Debian se caracteriza por ser
una distribución donde sólo se incluyen paquetes que han sido pro-
bados exhaustivamente).
main. Paquetes que cumplen con las Debian Free Software Guidelines,
es decir, que se garantiza su uso y redistribución libre, tanto de todos
los binarios que los componen como de su código fuente completo.
contrib. Paquetes que, aun siendo libres, y por tanto aparte de los bi-
narios –también tienen disponible su código fuente–, dependen de
otros paquetes que no lo son.
stable.
stable. Distribución de los paquetes con la versión oficial más recien-
te de la distribución. Consta de softwre estable y bien probado, y
98
Sistema operativo GNU/Linux básico FUOC
testing.
testing. Distribución que contiene los paquetes que se espera que for- Lectura complementaria
men parte de la próxima distribución estable. Hay una serie de re- http://www.debian.org/re-
quisitos muy estrictos que debe cumplir cada paquete antes de dejar leases/testing/
unstable.
unstable En esta distribución son los paquetes más recientes de De-
bian y en consecuencia los menos probados. Por esta razón, pueden
contener problemas suficientemente graves como para afectar a la
estabilidad del sistema.
99
FUOC Software libre
vanilla. Este kernel está basado en la serie 2.2, en el cual se han inclui-
do muchos drivers destinados a soportar hardware antiguo (como
pueden ser los dispositivos ISA), además de dar soporte al puerto USB.
idepci. Este kernel está basado en la serie 2.2 y está concebido para
dar soporte al mayor número de hardware posible. Por esta razón se
trata de un kernel bastante grande y poco optimizado.
bf24. Kernel basado en la serie 2.4 con soporte para ext3 y ReiserFS
orientado a dar soporte a hardware nuevo, como pueden ser los te-
clados USB. También da soporte a dispositivos SCSI e IDE ATA-100.
100
Sistema operativo GNU/Linux básico FUOC
CD2. vanilla.
CD3. compact.
CD4. idepci.
CD5. bf24.
101
FUOC Software libre
102
Sistema operativo GNU/Linux básico FUOC
boot:
103
FUOC Software libre
HELP INDEX:
KEY TOPIC
boot:
BOOT METHODS
104
Sistema operativo GNU/Linux básico FUOC
boot:
Una vez hecho esto, se cargará el kernel (veremos durante unos ins-
ANOTACIONES
tantes las salidas por pantalla de las distintas pruebas que se hacen)
e inmediatamente nos aparecerá una pantalla, Choose The Langua-
ge, para que mediante los cursores seleccionemos el idioma de ins-
talación.
105
FUOC Software libre
106
Sistema operativo GNU/Linux básico FUOC
Como mínimo hay que crear dos particiones: una primera para
ANOTACIONES
montar el sistema y otra de swap (es cierto que se puede hacer ins-
talaciones sin swap, pero, tal como ya se ha dicho, no es en absoluto
recomendable). Para aumentar la eficiencia del sistema, nosotros
crearemos cinco particiones. La primera destinada a albergar la root
partition; ésta no tiene que ser muy grande, por ello se le destinará
alrededor de un diez por ciento del disco duro, preferentemente en
una partición primaria; pero si no disponemos de ella, la podemos
crear como partición lógica sin darle más importancia. La segunda
se destinará a swap.
107
FUOC Software libre
108
Sistema operativo GNU/Linux básico FUOC
Una vez se han creado las particiones, hay que asignarles el tipo de
sistema de ficheros. Por defecto las particiones se crean de tipo Linux,
es decir, con código 0x83; en general, pues, esta opción por defecto
ya nos será útil salvo para la partición destinada a swap. Para esta
partición en concreto habrá que seleccionar la opción [ Type ],
con lo que primero se nos mostrará, en hexadecimal, la relación en-
tre códigos y filesystem types, y después se nos preguntará qué tipo
de sistema de ficheros queremos asignarle a la partición selecciona-
da. Por defecto se nos propone la 0x82, es decir, Linux swap, que es
la opción deseada. Si tenemos más de una instalación de GNU/Li-
nux en el mismo ordenador, se puede utilizar la misma partición
swap para todas ellas, ya que la información que se pueda almace-
nar en ella durante el funcionamiento del sistema es totalmente vo-
látil. Bastará, pues, con pulsar INTRO y se nos retornará a la pantalla
principal de cfdisk mostrándonos que, efectivamente, se ha reali-
zado el cambio.
109
FUOC Software libre
Ahora el menú principal nos sugiere, como opción principal, que ins-
talemos el kernel y sus módulos en la root partition, Install Ker-
nel and Driver Modules. Nosotros aún no lo haremos, pues,
tal como habíamos planeado, tenemos que inicializar, activar y mon-
ANOTACIONES
110
Sistema operativo GNU/Linux básico FUOC
111
FUOC Software libre
112
Sistema operativo GNU/Linux básico FUOC
113
FUOC Software libre
114
Sistema operativo GNU/Linux básico FUOC
Sistema md5
Sistema shadow
115
FUOC Software libre
Paquetes PCMCIA
En esta sección se nos pregunta acerca de las fuentes donde apt de-
berá ir a buscar la información para construir su base de datos sobre
los paquetes (dependencias, estado de instalación, etc.). Al estar ha-
ciendo una instalación íntegramente basada en CD-ROM, escoge-
mos la primera opción, y, tras poner el CD1 en el lector, aceptamos
ANOTACIONES
la ruta que nos sugiere para acceder a él. Transcurridos unos mo-
mentos en los cuales apt extrae la información relativa a los paquetes
que contiene este CD, se nos preguntará si queremos añadir el con-
tenido de otro CD a la base de datos. Una vez hayamos introducido
el CD2 en el lector, contestamos yes a esta pregunta. Repetimos
esta operación hasta que apt haya procesado el contenido del sépti-
mo CD-ROM. Las operaciones sobre la gestión de contenidos de los
CD-ROM se pueden hacer también desde el sistema mediante la
aplicación aptCD-ROM.
116
Sistema operativo GNU/Linux básico FUOC
117
FUOC Software libre
Muchos de los pasos para realizar una instalación por red son comu-
ANOTACIONES
118
Sistema operativo GNU/Linux básico FUOC
Por otro lado, para realizar una instalación por red, generalmente
basta con un juego de disquetes, o con un único CD-ROM, que con-
tenga la información necesaria para poder arrancar un sistema ope-
rativo básico sobre el cual se hará correr el programa de instalación
(que ya está incluido en el juego de disquetes o en el CD-ROM, junto
con los módulos que nos puedan ser necesarios para configurar el
acceso a la red), y a partir de aquí, el resto de información se obten-
drá remotamente.
119
FUOC Software libre
brau:˜# dmesg
.
.
.
ne2k-pci.c:v1.02 10/19/2000 D. Becker/P. Gortmaker
http://www.scyld.com/network/ne2k-pci.html
PCI: Found IRQ 11 for device 00:0b.0
PCI: Sharing IRQ 11 with 00:07.2
eth0: RealTek RTL-8029 found at 0xe400, IRQ 11,
52:54:00:DB:FB:D4.
120
Sistema operativo GNU/Linux básico FUOC
Una vez conozcamos qué tipo de tarjeta de red es la que tenemos, de-
bemos averiguar qué módulo es el que nos servirá para acceder a la
tarjeta. La estrategia más segura para este fin es recurrir a cualquier
buscador, por ejemplo http://www.google.es, entrar palabras clave so-
bre nuestra tarjeta (referencia de la tarjeta NIC linux module, por
ejemplo) y leer algunas de las páginas encontradas. También se puede
recurrir a las páginas de las principales distribuciones de linux, y entrar
la referencia de la tarjeta en sus buscadores. Como último recurso, se
puede recurrir a la documentación de módulos de red del kernel, donde
se especifica, para todas las tarjetas soportadas, el módulo correspon-
diente. También es bueno saber si el fabricante ha desarrollado su pro-
pio módulo. Llegar a encontrar un módulo para una tarjeta puede ser
una tarea muy complicada, incluso imposible, ya que puede suceder
que no haya soporte para dicha tarjeta o que haya que recurrir a méto-
dos avanzados para poderlo configurar; por este motivo, se recomienda
utilizar siempre tarjetas lo más estándar posible.
121
FUOC Software libre
Una vez se ha configurado la red, los siguientes pasos que hay que
seguir son idénticos a los seguidos en la instalación por CD-ROM,
hasta llegar a la configuración de apt Apt Configuration. Llegados a
este punto, en vez de elegir la opción de CD-ROM, optaremos por la
opción de red que más nos convenga. A efectos prácticos es lo mis-
mo seleccionar el protocolo http que el ftp. Después de realizar la se-
lección se nos preguntará si deseamos usar paquetes de tipo non-
US;
US en principio, y salvo problemas legales, responderemos que sí.
Respecto a la respuesta sobre la pregunta siguiente, referente al uso
de paquetes nonfree,
nonfree ya se deja que el mismo lector tome la decisión
según sus principios éticos. Acto seguido se nos pregunta de qué es-
tado debe ser el mirror del cual apt deberá obtener los paquetes, de-
bemos escoger siempre el que nos sea accesible de forma más
rápida, que acostumbra a ser el más próximo a nosotros geográfi-
camente hablando. Una vez seleccionado el estado, se nos pide que
seleccionemos un servidor en concreto (la aplicación netselect
destinada a facilitar la elección de servidores de paquetes según el
criterio de velocidad de acceso). Cuando se ha resulto esta cuestión,
se nos muestra la pantalla de configuración de acceso a través de
proxy; si no tenemos que usar este servicio, dejaremos en blanco la
línea.
ANOTACIONES
Terminados todos estos pasos, apt conectará con el mirror que le he-
mos especificado para configurar su base de datos. A partir de este
punto, para el resto de la instalación seguiremos los mismos pasos
que en la instalación realizada mediante CD-ROM.
122
Sistema operativo GNU/Linux básico FUOC
5.5. Conclusión
ANOTACIONES
123
Sistema operativo GNU/Linux básico FUOC
6. Configuraciones básicas
125
FUOC Software libre
#CONFIGURACIONES BÁSICAS
mesg n
umask 022
#PATH
ANOTACIONES
126
Sistema operativo GNU/Linux básico FUOC
Como vemos, en este archivo podemos definir lo que queramos. Las Nota
dos primeras instrucciones del fichero anulan la entrada de mensajes
Si queremos ejecutar los
de otros usuarios y configuran los permisos que tendrán los nuevos fi- programas del directorio
desde donde estamos situa-
cheros que vamos a crear. La siguiente instrucción es la definición del
dos sin necesidad de poner
PATH.
PATH El PATH son los directorios donde tenemos los comandos, pro- “./” al principio, podría-
gramas, aplicaciones, etc. que queremos poder llamar desde cual- mos añadir esta entrada en
la declaración del PATH.
quier sitio de la jerarquía de sistema de ficheros sin necesidad de Igualmente, si en el PATH
escribir su ruta completa (cada directorio del PATH lo separamos con no hay ningún programa
que necesitamos ejecutar,
“:”). La siguiente declaración es la del prompt del sistema. El prompt
podemos especificar la ruta
es la línea que aparece en el shell antes del carácter “#” (para el root) completa del mismo en la lí-
o “$” (para los otros usuarios). Podemos configurarnos este prompt de nea de comandos.
“\$” aparece “#” si somos el root o “$” para los otros usuarios
lizamos.
127
FUOC Software libre
gustos y necesidades.
128
Sistema operativo GNU/Linux básico FUOC
129
FUOC Software libre
6.3.1. Lilo
130
Sistema operativo GNU/Linux básico FUOC
• lba32: esta opción nos sirve para poder arrancar cualquier par-
tición del disco duro.
Las directivas locales son las que corresponden con cada uno de los
mismo sistema de ficheros,
sistemas operativos instalados en las particiones de nuestros discos. cargar varios núcleos dife-
rentes. De este modo, sin la
La primera directiva debe ser o bien image u other. Las explicamos
necesidad de instalar de
a continuación (junto con otras directivas posibles): nuevo el sistema, podemos
trabajar con diferentes nú-
cleos. Para configurarlo
• image = CAMINO: el CAMINO nos indica el archivo que contiene sólo tendríamos que especi-
la imagen núcleo del sistema operativo. Esta opción sólo es válida ficar dos secciones locales
poniendo, en cada una, qué
para sistemas GNU/Linux o similares. Generalmente, las distribu-
núcleo utilizaremos.
ciones crean un directorio /boot/ donde se pone la imagen del
131
FUOC Software libre
Hay algunas de las directivas del Lilo que también pueden ser confi-
guradas directamente sobre la imagen del núcleo del operativo. Con
el comando rdev podemos configurar las posibles opciones de una
imagen núcleo Linux. Algunas de ellas son la raíz del sistema de fi-
cheros (si no lo configuramos con el Lilo, se coge el que hay en la
imagen), el modo vga, etc.
Contenido
Si queremos proteger adecuadamente el sistema de arranque del or-
complementario denador, debemos añadir algunas directivas más en este fichero de
Con el Lilo o el Grub pode- configuración. Lo primero que debemos hacer es proteger la BIOS o
ANOTACIONES
mos pasar parámetros al nú- EFI con una contraseña y configurar la secuencia de arranque para
cleo Linux en el momento de
arrancar. Esto es muy útil
que sólo se pueda realizar a partir del disco duro. Con esto pasamos
cuando queremos realizar al- toda la responsabilidad al Lilo. A partir de las directivas password
guna operación específica en
= CONTRASEÑA y restricted, podremos configurar la seguri-
el sistema; por ejemplo, pa-
sando single o 1 se inicia- dad del mismo de cinco maneras diferentes:
ría el sistema en el runlevel 1,
con root=/dev/hda3 es-
Debemos poner la directiva de password en
pecificaríamos la raíz del sis- Contraseña global la sección global y al arrancar cualquiera de
tema de ficheros, etc. los sistemas se pedirá la contraseña.
132
Sistema operativo GNU/Linux básico FUOC
lba32
boot = /dev/hda
prompt
timeout = 50
message = /etc/message
default = debian
ANOTACIONES
restricted
password = contraseña
image = /vmlinuz
label = debian
root = /dev/hda1
other = /dev/hda3
label = w2000
133
FUOC Software libre
6.3.2. Grub
Igual que el Lilo, el Grub también nos sirve para instalar un progra-
Contenido
complementario ma en la zona de arranque que queramos del ordenador. A diferen-
cia del Lilo, tiene muchísimas más posibilidades que lo hacen muy
El Grub (GRand Unified
Bootloader) es el programa versátil: permite tener un pequeño intérprete de comandos al arran-
de arranque del proyecto car el ordenador, nos permite acceder a los archivos de las particio-
GNU.
nes del disco sin cargar ningún operativo, etc. Como en el caso
anterior, en esta sección sólo veremos su configuración básica. Si
quisiéramos profundizar más en su uso, podemos recurrir a su ma-
nual o en el HOWTO correspondiente.
Esta instrucción instala el Grub en la MBR del disco maestro del pri-
mer canal IDE. La forma como se referencian los discos varía un
poco de como se hace en GNU/Linux y con el Lilo. En “hdX” la “X”,
en lugar de “a”, “b”,. . . , es “0”, “1”, etc. Para las particiones tam-
bién se empieza con el número “0” para denominar la primera y a
134
Sistema operativo GNU/Linux básico FUOC
135
FUOC Software libre
Los sistemas tipo UNIX tratan todos los dispositivos del ordenador
como si fueran ficheros. Esto nos permite mucha flexibilidad, ya que
podemos aprovechar todos los mecanismos y funciones que utilizá-
bamos con los ficheros y aplicarla a los dispositivos. En el directorio
/dev/ tenemos todos los dispositivos reconocidos por el sistema. Si
el sistema no reconoce adecuadamente un dispositivo o queremos
crear uno especial, el comando mknod nos permite realizar esta cla-
se de operaciones, aunque es importante saber exactamente qué
queremos hacer antes de utilizarlo, ya que su mal uso podría dañar
Contenido partes del sistema.
complementario
Para la disquetera y CD/
ANOTACIONES
136
Sistema operativo GNU/Linux básico FUOC
TIPO SISTEMA
minix MINIX
ANOTACIONES
msdos MS-DOSTM
137
FUOC Software libre
(si pasásemos defaults se utilizarían las opciones rw, suid, dev, exec,
auto, nouser y async)
138
Sistema operativo GNU/Linux básico FUOC
Una entrada que siempre veremos en este fichero y que nos puede
sorprender es la del directorio /proc/, que tiene un significado es-
pecial. Realmente, lo que hay en este directorio no son ficheros, sino
el valor de muchas de las variables que utiliza el núcleo del sistema.
Siguiendo la misma política del operativo, con la cual todo se debe
poder referenciar como un archivo, en el directorio /proc/ también
podemos manipular variables internas del núcleo como si se tratara
de ficheros.
ANOTACIONES
139
FUOC Software libre
6.5.1. El teclado
para poder solucionar cualquier problema que nos surja con él. En
primer lugar, debemos saber que cuando el sistema arranca, se car-
ga un mapa de caracteres correspondiente al configurado en el pro-
ceso de instalación. Este mapa de caracteres se suele encontrar
situado en /etc/console/boottime.kmap.gz o en algún otro
directorio de /etc/. Si cambiásemos de teclado, sólo tendríamos
que cambiar este fichero con el que correspondiera al nuevo teclado
y al arrancar de nuevo ya se cargaría el nuevo mapa. Todos los ma-
pas de caracteres existentes se suelen situar dentro del directorio /
140
Sistema operativo GNU/Linux básico FUOC
acentos, etc. Todo ello lo podemos configurar a partir del fichero de se suele encontrar en /
/etc/inputrc (todas las directivas posibles de este fichero las te- etc/console-tools /
config.
nemos especificadas en el manual de readline). La que nos puede
ser más útil es la de convert-meta, que desactivándola (set
convert-meta off) nos permite utilizar los acentos y diéresis (pa-
ra el catalán).
141
FUOC Software libre
#Interfície de loopback
auto lo
iface lo inet loopback
#NIC
auto eth0
142
Sistema operativo GNU/Linux básico FUOC
Finalmente, en el último campo se indica cómo se obtiene la confi- mos manipular todos los as-
pectos relacionados con
guración de red de la tarjeta (su dirección, la red dónde está, el ga-
nuestras NIC y las tablas in-
teway que hay que utilizar, etc.). En la siguiente tabla podemos ver ternas que utiliza el operativo
cuáles son estas opciones para la familia de protocolos inet: para manejar todo lo relacio-
nado con la red.
loopback Método para definir la interfaz de loopback (se debe utilizar con la interfaz lo).
static Método para configurar una NIC con una dirección IP estática.
143
FUOC Software libre
ppp Método utilizado con el protocolo Point to Point Protocol, usado en los módems.
Las redes de comunicación sin cables son cada vez más frecuentes,
tanto en instalaciones domésticas como en instituciones, escuelas o
empresas. Para la instalación de las mismas, se debe disponer de lo
que denominamos puntos de acceso, que son unos dispositivos co-
nectados a la red física de la institución. Estos puntos de acceso per-
miten que, a partir de unas tarjetas PCMCIA, cualquier ordenador de
144
Sistema operativo GNU/Linux básico FUOC
Contenido
6.5.4. Módems complementario
Los paquetes que contienen
los programas necesarios
Para la configuración de un módem generalmente se suele utilizar la
para la conexión a Internet
aplicación pppconfig, que escribe los archivos de configuración con un módem suelen nom-
brarse ppp y pppconfig.
necesarios para el daemon del sistema ppp, que es el programa en-
ANOTACIONES
145
FUOC Software libre
146
Sistema operativo GNU/Linux básico FUOC
6.5.6. Impresora
147
FUOC Software libre
Al configurar un servidor de la. Generalmente, también utilizan algún tipo de daemon para que
impresión, es importante el sistema de impresión sea operativo. El daemon se puede configu-
que configuremos adecua-
rar para que el ordenador al que está conectada la impresora sirva
damente desde qué máqui-
nas/usuarios permitimos la como servidor de impresión. De este modo, varios ordenadores de
impresión. De otro modo,
la misma red podrán utilizar la misma impresora, ahorrando recur-
un atacante podría aprove-
char la vulnerabilidad y sos. Para los clientes de impresión se pueden utilizar los mismos pro-
aprovechar nuestros recur- gramas especificando, en la configuración, que la impresora es
sos, dejar la impresora sin
papel, etc. remota (generalmente se debe proporcionar la IP del servidor de im-
presión y la cola).
Contenido
complementario wsTM o configurar una impresora de un servidor WindowsTM desde
Swat (Samba Web Adminis- un cliente GNU/Linux, debemos utilizar otro tipo de programas.
tration Tool) es una herra- Samba es un conjunto de aplicaciones de GNU/Linux que utilizan
mienta muy útil para la
los protocolos de las redes WindowsTM. Aunque sus funcionalidades
configuración de un servi-
dor de samba. van mucho más allá de la configuración de un servidor o cliente de
impresión, para poder utilizar impresoras en WindowsTM tendremos
que utilizar este conjunto de aplicaciones o bien las que nos propor-
ciona CUPS.
148
Sistema operativo GNU/Linux básico FUOC
7. Daemons y runlevels
149
FUOC Software libre
150
Sistema operativo GNU/Linux básico FUOC
#! /bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:
/usr/sbin:/usr/bin
DAEMON=/usr/sbin/daemon
NAME=daemon
DESC=”some daemon”
case “$1” in
start)
echo -n “Starting $DESC: $NAME”
start-stop-daemon --start --quiet --pidfile \
/var/run/$NAME.pid --exec $DAEMON
echo “.”
;;
stop)
echo -n “Stopping $DESC: $NAME “
151
FUOC Software libre
Como hemos visto, en las variables declaradas al inicio del shell script
Contenido
complementario especificamos qué PATH es necesario para el proceso del daemon, el
Aunque los daemons son programa a ejecutar (DAEMON), el nombre que le damos (NAME, que
programas como cualquier debe ser igual que el nombre del shell script) y su descripción (DESC).
otro, su programación difie-
Lo único que hace el código al arrancar el daemon es escribir en el
re un poco de las aplicacio-
nes de usuario porque directorio /var/run/ un fichero con el PID del proceso. Al pararlo,
deben incluir funciones
se va a buscar este PID y se envía la señal de finalización al proceso
para quedar suspendidos y
esperar señales para que correspondiente. Naturalmente, encontraremos shell scripts prepara-
sean despertados, etc. dos para realizar muchísimas más operaciones con el daemon a tra-
tar, aunque como mínimo todos deben tener esta estructura.
ANOTACIONES
152
Sistema operativo GNU/Linux básico FUOC
NIVEL Funcionalidad.
0 El nivel de ejecución 0 está configurado para parar el sistema.
Este nivel es denominado como single user, ya que sólo permite
1 la entrada al sistema al root del mismo. Se arrancan los
daemons mínimos y sirve para tareas de mantenimiento.
Los niveles del 2 al 5 están destinados para ser configurados
según las necesidades de cada instalación. Al instalar el
2~5 sistema, por defecto todos son iguales. Estos niveles también se
llaman multiusuario, ya que, por defecto, permiten que más de
un usuario trabaje en el sistema.
El último nivel está preparado para reiniciar el sistema. Es muy
6
parecido al 0 pero se añade una función de reinicio.
153
FUOC Software libre
daemon, mientras que se empieza por “K” (Kill) indica que queremos
pararlo. Si el nombre no empieza por ninguna de estas letras, el sis-
tema no hace nada con él. Después de esta letra se pone un número
de 2 cifras entre “00” y “99”, que indica el orden de inicio o parada
de los mismos. Este orden es importante, ya que algunos daemons
necesitan que otros estén en ejecución antes de ser iniciados.
154
Sistema operativo GNU/Linux básico FUOC
155
FUOC Software libre
Grub. Esto es muy útil, por ejemplo, cuando tenemos problemas gra-
ves en el sistema que no nos permiten arreglarlos adecuadamente;
si arrancamos con el primer nivel (pasando “1” o “single” al Lilo
o Grub), sólo se iniciarán las funciones más necesarias y podremos
entrar para arreglar lo que haga falta.
156
Sistema operativo GNU/Linux básico FUOC
Los logs del sistema son ficheros de traza que un daemon del opera-
Contenido
tivo se encarga de generar para que quede constancia de cualquier complementario
acción realizada sobre el mismo. El daemon encargado de realizar
El núcleo del sistema tam-
estas tareas es el sysklogd, cuya configuración encontramos en / bién lanza un daemon para
etc/syslog.conf. Cada línea de este fichero consiste en una re- gestionar sus logs denomi-
nado klogd.
gla con dos campos: el selector y la acción. Con el selector configu-
ramos de qué servicio queremos tratar los logs y el nivel de prioridad
de los mismos. La acción sirve para indicar hacia dónde queremos
redirigir los logs (a un fichero, a una consola, etc.). En las tablas de
la siguiente página podemos ver las diferentes opciones válidas para
estos campos.
SELECTOR
daemon Daemons del sistema sin opciones de logs. crit Condiciones críticas.
ANOTACIONES
157
FUOC Software libre
SELECTOR
ACCION
Destino explicación
Se especifica la ruta completa del fichero. Poniendo un “-” delante no se requiere que el
Fichero regular fichero sea sincronizado cada vez que se escribe en él (aunque se perderá el log en caso de
fallar la alimentación).
Este sistema permite que los mensajes se redirijan hacia una tubería creada antes de iniciar
Pipe nombrado el daemon de sysklogd con el comando mkfifo. Se indica poniendo el carácter “|” antes
del nombre del fichero. Es muy útil para operaciones de debugging de programas.
Para especificar que los logs se redirijan a una máquina remota, debemos preceder el
Máquina remota
nombre del host remoto con “@”.
Con “*” especificaremos que los logs se redirijan a todos los usuarios que en el momento de
Usuarios on-line ocurrir el log estén dentro del sistema. Esto se utiliza para avisar a todos los usuarios que ha
pasado alguna acción crítica en el sistema.
Esta forma de tratar los logs permite mucha flexibilidad para confi-
Contenido
complementario gurarlos adecuadamente cuando instalamos un servidor, tarea muy
importante para tener controlados los aspectos que más nos intere-
Si quisiéramos configurar
una consola del sistema san del sistema. Aun así, si tuviéramos que guardar todos los logs
para ver todos los logs que que se generan en un servidor, seguramente al final saturaríamos el
se van generando, podría-
ANOTACIONES
mos añadir la línea “*.* disco por el tamaño siempre creciente de estos archivos. Para evitarlo
/dev/ttySX”(donde “X” se utiliza un sistema de rotación de logs, que consiste en ir compri-
es la consola donde quere-
miendo, cada cierto tiempo, estos ficheros y guardar sólo hasta una
mos ver los logs) al fichero
/etc/syslog.conf determinada antigüedad. Aunque generalmente se suelen compri-
y reiniciar el daemon mir cada semana y se guardan sólo los de uno o dos meses anterio-
sysklogd.
res, podemos configurar todo esto a partir del fichero /etc/
logrotate.conf. Los logs de ciertos servidores y/o aplicaciones
también se pueden configurar de forma explícita para tener un con-
trol más adecuado de lo que hacen. La configuración personalizada
158
Sistema operativo GNU/Linux básico FUOC
manipulación).
159
FUOC Software libre
PATH=/usr/local/sbin:/usr/local/bin:
/sbin:/bin:/usr/sbin:/usr/bin
#m h dom mon dow user command
25 6 * * * root test -e /usr/sbin/anacron ||
run-parts --report /etc/cron.daily
47 6 * * 7 root test -e /usr/sbin/anacron ||
run-parts --report /etc/cron.weekly
52 6 1 * * root test -e /usr/sbin/anacron ||
run-parts --report /etc/cron.monthly
Si instalamos GNU/Linux en
siguientes tres líneas están formadas por los campos: “<minuto>
un ordenador que no está <hora> <díaMes> <mes> <diaSetmana> <usuario>
en funcionamiento todo el
<comando>”. Los cinco primeros indican cuándo ejecutar el co-
día, es recomendable tener
instalado el programa mando correspondiente (deben ser coherentes) y en el sexto encon-
anacron porque ejecutará tramos el usuario que se utilizará para ejecutar el comando
los scripts configurados con
el cron adecuadamente especificado en el último. Fijémonos cómo en el fichero de configu-
(aunque sea en horas dife- ración los comandos que se ejecutan una vez al día, una vez a la se-
rentes a las previstas).
mana o una vez al mes son los encargados de lanzar los shell scripts
que se encuentren en los directorios especificados. Si existe el pro-
grama anacron, se ejecutan con él, si no se utiliza el run-parts,
que aunque no tiene tantas funcionalidades como el anacron,
también sirve para poder ejecutar todos los shell scripts que se en-
cuentren en un determinado directorio. Esta configuración es la que
nos permite toda la estructura de directorios que comentábamos an-
teriormente. Si quisiéramos, podríamos cambiar las directivas de
este archivo para adaptarlas más a nuestras necesidades.
Si utilizamos el fichero /
etc/crontab para confi- emon. El único que no aparece en esta configuración es el de /etc/
gurar nuestras propias eje-
cron.d/, que el daemon ya tiene en cuenta automáticamente. En
cuciones periódicas, cada
vez que lo modifiquemos este directorio podemos situar archivos exactamente con la misma
debemos reiniciar el dae- sintaxis que en el /etc/crontab para programar ejecuciones per-
mon cron. Si utilizamos su
estructura de directorios, no sonalizadas. De esta forma, la flexibilidad es total.
hace falta.
160
Sistema operativo GNU/Linux básico FUOC
Con atq podemos ver qué trabajos tenemos retardados y con atrm
Contenido
podemos borrar alguno de los que estén en la cola. Finalmente, si complementario
queremos ejecutar todos los trabajos en la cola del at, podemos uti- La carga del sistema es un
lizar el comando atrun. Este nos permite pasarle el parámetro “-l parámetro que nos indica el
grado de actividad del or-
LOADAVERAGE” donde LOADAVERAGE debe ser un número que in-
denador. Con el comando
dica a partir de qué momento de carga del sistema se podrán ejecu- top podemos ver esta carga
de forma interactiva.
tar los comandos retardados. Esto enlaza directamente con el
comando batch, que sirve exactamente para lo mismo que el at y
sigue su misma sintaxis, pero sin necesidad de especificar un tiempo
161
FUOC Software libre
162
Sistema operativo GNU/Linux básico FUOC
8. Instalación de aplicaciones
8.1. Introducción
que los rpm (Redhat Package Manager) son los nativos de RedHat.
Las distribuciones basadas en alguna de estas dos generalmente
adoptan el sistema de paquetes correspondiente, aunque la mayoría
de las otras distribuciones propias también han optado por incorpo-
rar alguno de los dos sistemas, ya que actualmente la gran mayoría
de programas se empaquetan utilizando estos formatos.
Por otra parte, los programas con licencia GPL o similar también se
suelen distribuir con su código fuente (empaquetados y comprimidos
163
FUOC Software libre
con algún formato estándar, como el tar). A partir de este código fuen-
te, también podemos instalar el programa en nuestro operativo, com-
pilándolo y situando los ejecutables en el lugar donde les corresponda.
164
Sistema operativo GNU/Linux básico FUOC
165
FUOC Software libre
Los sistemas de paquetes encontramos la referencia de la fuente de los paquetes, que puede
también permiten crear pa- ser un CD-ROM, una dirección de Internet, etc. El campo de distribu-
quetes con el código fuente
ción indica a apt qué versión de Debian GNU/Linux estamos utili-
de las aplicaciones. Si sólo
nos interesa utilizar la apli- zando. Este campo es importante porque cada versión de la
cación, no hace falta que
distribución tiene sus propios paquetes, generalmente incompatibles
descarguemos los paquetes
de código fuente. con las otras. En los últimos campos podemos especificar qué tipo de
paquetes queremos utilizar. Debian divide todos los paquetes en di-
ferentes secciones debido a licencias restrictivas de algunos de ellos
o a temas legales. Las diferentes secciones de los paquetes son las
siguientes:
166
Sistema operativo GNU/Linux básico FUOC
167
FUOC Software libre
Con dpkg también pode- instalar, listar o eliminar los paquetes del sistema. Para listar todos
mos utilizar patrones para los paquetes disponibles le podemos pasar el parámetro “-l”, con
seleccionar, instalar, elimi-
lo cual se mostrará una lista completa de los paquetes y su estado de
nar, . . . los paquetes del sis-
tema. instalación (instalados, instalados pero no configurados, etc.). Si qui-
siéramos ver toda la información de un determinado paquete, po-
dríamos utilizar el parámetro “-p” seguido del nombre del paquete,
con lo cual se muestran todas las dependencias, conflictos con otros
paquetes, versión, descripción, etc.
168
Sistema operativo GNU/Linux básico FUOC
• ...:
169
FUOC Software libre
170
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
171
Sistema operativo GNU/Linux básico FUOC
9.1. Introducción
173
FUOC Software libre
174
Sistema operativo GNU/Linux básico FUOC
escribir sobre ella; con ello estaremos en la misma situación que es-
tábamos antes de ejecutar lilo:
brau:˜# lilo -U
Grub no viene instalado por defecto, por este motivo, antes de usarlo
debemos proceder a su instalación. Para ello, podemos proceder a
leer las secciones posteriores para informarnos sobre el sistema ges-
tor de paquetes, su configuración y su uso; o simplemente, en caso
de que durante la instalación hayamos introducido en la base de da-
tos los contenidos de todos los CD o que hayamos optado por una
instalación por red, ejecutaremos la línea siguiente:
175
FUOC Software libre
brau:˜# cp /usr/share/doc/grub/examples/menu.lst /
boot/
brau:˜# grub
Grub cuenta con muchos más comandos, para ver un listado de al-
gunos de ellos basta con pulsar la tecla TAB en la línea de comandos
para obtener lo siguiente:
ANOTACIONES
grub>
Possible commands are: blocklist boot cat chain-
loader cmp color configfile deb
ug device displayapm displaymem embed find fstest
geometry halt help hide impsp robe initrd install
ioprobe kernel lock makeactive map md5crypt module
moduleno unzip partnew parttype password pause quit
read reboot root rootnoverify savede fault serial
176
Sistema operativo GNU/Linux básico FUOC
grub>
177
FUOC Software libre
grub> makeactive
grub> chainloader +1
grub> boot
178
Sistema operativo GNU/Linux básico FUOC
Actividad
• http://www.de.debian.org/doc/manuals/debian-
faq/ch-pkg basics.en.html
• http://www.de.debian.org/doc/manuals/debian-
faq/ch-pkgtools.en.html
9.3.1. /etc/apt/sources.list
179
FUOC Software libre
180
Sistema operativo GNU/Linux básico FUOC
181
FUOC Software libre
9.3.2. apt
182
Sistema operativo GNU/Linux básico FUOC
183
FUOC Software libre
184
Sistema operativo GNU/Linux básico FUOC
apt-cache
policy package.
package Informa acerca del estado de instalación, la versión
y revisión del paquete, y su procedencia.
apt-get
install package.
package Instala el paquete. Si éste depende de paquetes que
no se encuentran en el sistema, apt nos informará de ello, y nos pre-
185
FUOC Software libre
9.3.3. dpkg
como back-end de apt. Los parámetros más utilizados son los si-
guientes:
– L package.
package Para listar los ficheros contenidos en el paquete.
186
Sistema operativo GNU/Linux básico FUOC
– s package.
package Describe el estado de instalación del paquete.
– S file.
file Busca a qué paquetes pertenece el fichero.
9.3.4. dselect
dselect es una GUI (Graphical User Interface) que corre sobre apt.
Para entrar en ella, basta con teclear el comando dselect, y me-
diante los menús de esta interfaz ir seleccionando los distintos pa-
quetes sobre los cuales queremos operar y especificar qué tipo de
operación deseamos hacer sobre ellos.
9.3.5. aptitude
aptitude es otra GUI que corre sobre apt. Por defecto no viene insta-
lada, por lo que hay que hacerlo antes de proceder a su uso:
187
FUOC Software libre
LC_ALL=es_ES
ANOTACIONES
LANGUAGE=en_US
LC_TYPE=es_ES
LC_MESSAGES=ISO8859-1
188
Sistema operativo GNU/Linux básico FUOC
189
FUOC Software libre
190
Sistema operativo GNU/Linux básico FUOC
Hay que tener presente que por defecto el kernel que hemos instala-
ANOTACIONES
do no soporta el tipo ntfs. Por tanto, hay que cargar el módulo co-
rrespondiente mediante el comando modconf y seleccionar la
opcion kernel/fs/ntfs.
Las últimas líneas del fichero anterior van destinadas a montar par-
ticiones fat32, sobre las cuales sí que es posible escribir desde GNU/
Linux. Por esta razón es buena idea disponer siempre de una peque-
ña partición con este tipo de formato, ya que será accesible tanto
desde GNU/Linux, como desde WindowsTM.
191
FUOC Software libre
Dado que no todos los fabricantes de hardware dan soporte a los sis-
temas GNU/Linux, y los hay que ni siquiera facilitan la información
192
Sistema operativo GNU/Linux básico FUOC
193
FUOC Software libre
194
Sistema operativo GNU/Linux básico FUOC
este script sin ningún parámetro, él mismo nos mostrará una línea de
ayuda para orientarnos en su uso. Procedamos pues a parar el dea-
mon gpm:
../init.d/gpm
195
FUOC Software libre
196
Sistema operativo GNU/Linux básico FUOC
197
FUOC Software libre
198
Sistema operativo GNU/Linux básico FUOC
199
FUOC Software libre
network 158.109.0.0
broadcast 158.109.255.255
gateway 158.109.0.3
ifup se utiliza para arrancar los servicios de red de una interfaz de-
terminada, e ifdown para pararlos. Así pues, para la configuración
anterior, si quisiéramos detener y volver a arrancar los servicios de
eth0, lo que haríamos es lo siguiente (se utiliza el comando ifcon-
fig para comprobar los resultados):
brau:˜# ifconfig
ANOTACIONES
200
Sistema operativo GNU/Linux básico FUOC
collisions:0 txqueuelen:100
RX bytes:1489273710 (1.3 GiB) TX
bytes:20116974 (19.1 MiB)
Interrupt:5 Base address:0x9400
201
FUOC Software libre
collisions:0 txqueuelen:100
RX bytes:1490867554 (1.3 GiB) TX
bytes:20118868 (19.1 MiB)
Interrupt:5 Base address:0x9400
202
Sistema operativo GNU/Linux básico FUOC
203
FUOC Software libre
9.9. Conclusión
204
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
205
Sistema operativo GNU/Linux básico FUOC
207
FUOC Software libre
208
Sistema operativo GNU/Linux básico FUOC
A medida que las tarjetas gráficas han ido evolucionando, cada vez más
aplicaciones y juegos necesitan de un procesamiento en 2D o 3D más
rápido. Si bien la arquitectura de ventanas X-Window aporta muchas
ventajas, cuando queremos utilizar este tipo de aplicaciones el diseño
cliente/servidor no es el más adecuado, ya que no aprovechamos las
funciones de procesamiento 2D y 3D extremadamente rápido de las tar-
jetas gráficas instaladas en el cliente. Para solucionar este problema, a
partir de 1998 apareció una tecnología llamada DRI (Direct Rendering
Infrastructure), que permite aprovechar los chips de procesamiento de
las tarjetas para ahorrar trabajo al servidor X-Window. De esta forma,
continuamos teniendo todas las ventajas de X-Window aprovechando
los elementos específicos de las tarjetas gráficas.
209
FUOC Software libre
210
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
211
FUOC Software libre
ANOTACIONES
212
Sistema operativo GNU/Linux básico FUOC
Actividades
10.2. Configuración
213
FUOC Software libre
1) Tarjeta gráfica
2) Teclado
ANOTACIONES
214
Sistema operativo GNU/Linux básico FUOC
los PC estándar que tienen las teclas de menú y logo suelen tener
104 teclas (los identificamos con el nombre “pc104”). Los tecla-
dos que no llevan estas teclas se identifican como de 101 teclas
(“pc101”).
3) Ratón
4) Monitor
215
FUOC Software libre
Una vez contestadas estas preguntas, que pueden ser más o menos
según el programa que utilicemos, toda la configuración se guarda
en el fichero /etc/X11/XF86Config-4.
216
Sistema operativo GNU/Linux básico FUOC
Los X display manager pueden actuar tanto de forma local como re-
mota. Entre otras funciones, lo que hacen es mostrar una pantalla
217
FUOC Software libre
comentar todas las líneas de este archivo. De este modo, aunque tu-
viéramos instalado un servidor de X-Window, por defecto no se ini-
ciaría en la máquina local. Si por el contrario quisiéramos instalar
más de uno, podríamos editar el fichero y añadir directivas como las
que siguen:
218
Sistema operativo GNU/Linux básico FUOC
219
Sistema operativo GNU/Linux básico FUOC
11.1. Introducción
Actividades
15. http://www.ibiblio.org/pub/Linux/
docs/HOWTO/other-formats/html sin-
gle/XWindow-Overview-HOWTO.html Se tra-
ta de un documento sencillo, que sirve para
asimilar los conceptos básicos que conciernen al
sistema.
221
FUOC Software libre
16. http://www.ibiblio.org/pub/Linux/
docs/HOWTO/other-formats/html single/
XWindow-User-Howto.html Es un documento
con contenidos más avanzados que el anterior,
pero también recomendable.
222
Sistema operativo GNU/Linux básico FUOC
core.
core. Paquetes esenciales e imprescindibles para el correcto funcio-
namiento del sistema (x-window-system-core).
system.
system. Paquetes esenciales cuya presencia es altamente recomen-
dable (x-window-system).
fonts.
fonts. Paquetes de fuentes, algunos de ellos imprescindibles para dis-
poner, al menos, de un tipo de fuentes en el entorno.
utils.
utils. Paquetes de programas que correrán sobre el sistema gráfi-
co. Son, en el fondo, los que dan la razón de existencia del siste-
ma.
libs.
libs. Paquetes de librerías del entorno gráfico, las cuales proporcio-
nan funciones a otros programas.
Nota
223
FUOC Software libre
#/etc/X11/XF86Config-4
Section “Device”
Identifier “Generic Video Card”
Option “ UseFBDev” “true”
224
Sistema operativo GNU/Linux básico FUOC
#/etc/X11/XF86Config-4
Section “ InputDevice”
Identifier “Generic Keyboard”
225
FUOC Software libre
Nota
Actividad
226
Sistema operativo GNU/Linux básico FUOC
deb http://people.debian.org/˜blade/woody/i386/ ./
227
FUOC Software libre
brau:˜# rm /etc/rc2.d/S99xdm
brau:˜# cd /etc/rc2.d
brau:/etc/rc2.d# ln -s ../init.d/xdm S99xdm
228
Sistema operativo GNU/Linux básico FUOC
Una aplicación que puede ser útil para conocer qué fuentes tenemos
instaladas y qué aspecto tienen es xfontsel. Se trata de una apli-
cación escrita mediante librerías de athena (como el resto de los xba-
se-clients, grupo al cual pertenece xfontsel), en la cual, mediante
menús desplegables se seleccionan las opciones disponibles de con-
figuración de las fuentes y nos muestra algunos caracteres de ejem-
plo. Para conocer los caracteres de una fuente se puede usar la
aplicación xfd.
Así pues, una vez sepamos qué fuente queremos utilizar para un de-
terminado programa, podemos lanzarlo desde una xterm con el ar-
gumento “-fn” seguido de la descripción de la fuente (otros
programas pueden usar nombres distintos para este argumento). Un
ejemplo puede ser:
Los window managers son programas clientes (en realidad se los lla-
ma meta-clientes) encargados de gestionar las distintas ventanas
que corren sobre el entorno gráfico y de su presentación, así como
de lanzar otros clientes (aplicaciones). A estas alturas, ya tenemos un
window manager instalado, el twm, ya que una instalación completa
de un sistema X requiere como mínimo de un window manager, aun-
que éste no forme parte del servidor, que corra sobre él. Como ya
hemos visto, el twm es muy rudimentario, puede ser, pues, que nos
interese instalar algunos más complejos, como puede ser Window-
Maker, BlackBox, qvwm, etc. Vamos pues a instalar algunos de ellos
ANOTACIONES
229
FUOC Software libre
Tener que especificar cada vez qué window manager deseamos uti-
lizar, una vez nos hayamos decidido por uno en concreto, puede ser
un tanto pesado. Para especificar qué window manager debe usarse
en caso de que después del comando startx no se especifique nin-
guno en concreto, crearemos el archivo .xsession en el directorio
raíz del usuario con el contenido siguiente, en el caso que quisiéra-
mos que el window manager por defecto fuese el twm, por ejemplo:
ANOTACIONES
#˜/.xsession
exec twm
230
Sistema operativo GNU/Linux básico FUOC
que residen en el directorio raíz del usuario) que se leen antes de en-
trar en el entorno gráfico. Este fichero, por tanto, nos permite modi-
ficar algunos aspectos de los que se han determinado por defecto
dentro del sistema y que están definidos en los ficheros residentes en
/etc/X11 y sus subdirectorios.
Los session managers son programas que pueden hacerse correr so-
bre una sesión gráfica y que nos permitirán establecer y modificar
parámetros de ésta. xms es el session manager que viene por defecto
con la instalación que hemos hecho del servidor gráfico. Podemos
lanzarlo desde un terminal X (para lanzar una xterm, pulsaremos el
botón del medio del ratón y seleccionaremos Programs/Xshells/
Xterm) , mediante el comando xsm.
ANOTACIONES
231
FUOC Software libre
232
Sistema operativo GNU/Linux básico FUOC
Una vez arrancada una sesión X desde el display manager, es decir, una vez ha-
yamos lanzado el pertinente window maker, puede ser interesante ejecutar el co-
mando pstree para ver las relaciones de dependencia entre los distintos
procesos que están corriendo en este momento, junto con la información que
nos aportará la línea ps aux.
233
FUOC Software libre
11.6.1. GNOME
234
Sistema operativo GNU/Linux básico FUOC
#GNOME2
deb http://ftp.acc.umu.se/mirror/mirrors.evilge-
niuses.org.uk/debian/backports/woody gnome2.2/
235
FUOC Software libre
deb-src http://ftp.acc.umu.se/mirror/mi-
rrors.evilgeniuses.org.uk/debian/backports/woody
gnome2.2/
Una vez hayamos hecho esto, bastará con ejecutar los siguientes co-
mandos para disponer de dichas actualizaciones:
11.6.2. KDE
236
Sistema operativo GNU/Linux básico FUOC
A partir de este punto, ya será cada usuario el que instalará los dis-
tintos paquetes del proyecto que le sean de interés.
#KDE3
deb http://people.debian.org/˜schoepf/kde3/woody ./
237
FUOC Software libre
Xsession
bbkeys &
blackbox
ANOTACIONES
Xresources
Xterm*reverseVideo: true
238
Sistema operativo GNU/Linux básico FUOC
Xmodmap
xmodmap nos permite modificar su contenido. Un ejemplo de su uso Estos comandos fueron utili-
zados durante mucho tiem-
puede ser el siguiente: po debido a la inversión de
asignación de símbolos en
las tablas de conversión; ac-
brau:˜# xmosmap -e “keycode 127 = Delete” tualmente, sin embargo,
brau:˜# xmosmap -e “keycode 22 = BackSpace” este problema está resuelto.
$DISPLAY
239
FUOC Software libre
xhost y xauth
240
Sistema operativo GNU/Linux básico FUOC
Para instalar CUPS (Common Linux Printing System) habrá que ins-
talar el paquete del servidor de impresión, cupsys; y se recomienda
instalar, junto a este paquete, el de clientes de impresión, paquete
cupsys-client. También se puede instalar el paquete cupsys-
bsd para disponer de los comandos habituales en el sistema de im-
presión de BSD. Por lo que se refiere a drivers, los paquetes cup-
sys-driver-gimpprint y cupsomatic-ppd, aportan gran
ANOTACIONES
11.9. OpenOffice
241
FUOC Software libre
#OpenOffice
deb http://ftp.freenet.de/pub/ftp.vpn-junkies.de/
openoffice/ woody main contrib
rectorio:
/usr/lib/openoffice/program/setup
242
Sistema operativo GNU/Linux básico FUOC
11.10. Conclusión
ANOTACIONES
243
Sistema operativo GNU/Linux básico FUOC
A. Tablas de comandos
man [numManual] comando Muestra el contenido del manual del comando mediante un paginador
Otra fuente de ayuda, que a veces complementa los contenidos del man, y en otras
info comando
es la única documentación que se mantiene
245
FUOC Software libre
Inicializa los permisos de todos los ficheros creados a partir del momento en
umask modo
que se ejecuta el comando
246
Sistema operativo GNU/Linux básico FUOC
Muestra el contenido del archivo de una forma similar a “less” pero más simple
more archivo
(no permite, por ejemplo, la opción de retroceder)
Busca las líneas que cumplen con el pattern y la muestra por pantalla
⇒ “-b” muestra el número de byte de cada línea encontrada
⇒ “-c” no muestra las líneas por pantalla, sino que las cuenta y devuelve el
número
grep [pattern] archivo ⇒ “-e pattern” útil cuando el pattern empieza por el carácter “-”
⇒ “-i” ignora la diferencia entre mayúsculas y minúsculas
⇒ “-n” muestra el número de línea
⇒ “-v” invierte el resultado de la búsqueda
⇒ “-w” selecciona sólo aquellas líneas donde el pattern es toda una palabra
247
FUOC Software libre
Une distintos archivos y directorios en uno solo (conocido como tarball, los cuales
se caracterizan por terminar con “.tar”)
⇒ “-cf” crea un archivo a partir de los archivos y directorios origen
⇒ “-cvf” como en el caso anterior, pero mostrando por pantalla el proceso
tar opciones archivo
⇒ “-cvzf” como en el caso anterior, pero comprimiendo los archivos con gzip
[archivoOrigen]
⇒ “-x” para extraer el contenido de un tarball
⇒ “-xvzf” para extraer y descomprimir mostrando por pantalla los resultados del
proceso
(los archivos comprimidos se caracterizan por terminar en “.tar.gz” o “.tgz”
Comprime todos los archivos origen en archivo final (el cual se caracteriza por
terminar con “.zip”
zip archivoFinal archivoOrigen
⇒ “-e” encripta el archivo mediante una palabra clave que se pide al ejecutar el
comando
248
Sistema operativo GNU/Linux básico FUOC
249
Sistema operativo GNU/Linux básico FUOC
B. El editor vi
B.1. Introducción
251
FUOC Software libre
252
Sistema operativo GNU/Linux básico FUOC
“:w
Guarda el fichero con el nombre indicado
nombreArchivo”
“:g/HOLA/
Sustituye todos los “HOLA” por “ADIÓS”
s//ADIOS”
253
FUOC Software libre
En la línea inferior del editor veremos los comandos que vayamos es-
cribiendo, que se ejecutarán al apretar el RETURN. Además, la ma-
yoría de estos comandos permiten la repetición: tan sólo debemos
escribir el número de veces que queremos que se ejecuten antes que
el comando. Por ejemplo, con “dd” conseguimos que se borre la lí-
nea actual; si escribiéramos “3dd” en lugar de la línea actual, se bo-
rrarían las tres siguientes.
ANOTACIONES
254
Sistema operativo GNU/Linux básico FUOC
C.1. Introducción
En este apéndice se pretende dar una idea general de los pasos bá-
sicos que hay que seguir para la instalación de Red Hat Linux 9.0. Se
dan por sentados los conocimientos básicos adquiridos a lo largo del
módulo y que han conducido a la instalación de Debian 3.0r1. Los
conocimientos teóricos para abordar cualquiera de ambas instala-
ciones son prácticamente los mismos, por este motivo, este apéndice
está completamente orientado a praxis, y en él sólo se resaltan las
diferencias entre los dos procesos de instalación.
C.3. RHinicioinst
255
FUOC Software libre
256
Sistema operativo GNU/Linux básico FUOC
En este caso, Red Hat Linux nos propone como gestor de arranque
Grub. Si ya disponemos de un gestor de arranque en nuestro equipo,
no es necesario, a no ser que deseemos reemplazarlo, proceder a la
instalación de Grub. Bastará con adecuar la configuración de arran-
que para que nos permita acceder al nuevo sistema operativo.
257
FUOC Software libre
proceso de instalación).
258
Sistema operativo GNU/Linux básico FUOC
259
Sistema operativo GNU/Linux básico FUOC
D. Herramientas de administración
D.1. Introducción
261
FUOC Software libre
D.2. Linuxconf
262
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
263
FUOC Software libre
264
Sistema operativo GNU/Linux básico FUOC
265
FUOC Software libre
D.3. Webmin
266
Sistema operativo GNU/Linux básico FUOC
ANOTACIONES
267
FUOC Software libre
• Información de disco:
• Navegador de archivos:
ANOTACIONES
268