You are on page 1of 24

GNU/LINUX Raúl López Martín

1HOTI

ÍNDICE
Historia ........................................................................................................................... 2
Características generales .............................................................................................. 2
Distribuciones ..................................................................................................... 2
Minidistribuciones .............................................................................................. 2
Características técnicas ................................................................................................. 3
Kernel ................................................................................................................. 3
Como compilar un nuevo kernel ........................................................................ 3
Arranque del sistema .................................................................................................... 5
Gestor de arranque .............................................................................................. 5
Login .................................................................................................................. 5
Sistema Xfree86 ............................................................................................................. 6
Archivos ......................................................................................................................... 7
Comando mount ................................................................................................. 9
Comando umount ............................................................................................... 9
Interprete de comandos ................................................................................................ 10
Variables ............................................................................................................. 10
Comandos ........................................................................................................... 11
Runlevels ........................................................................................................................ 12
Comandos básicos ......................................................................................................... 13
Glosario .......................................................................................................................... 22
Direcciones de interés .................................................................................................... 24

1
GNU/LINUX Raúl López Martín
1HOTI

Historia:

- Empezó a trabajar Linus Torvalds (estudiante de informática Finlandés), en 1991 porque


quería tener un SO tipo Unix para su PC.(386). Ya que solo había MINIX (único SO tipo
Unix para PC’s, “Tanenbaum” para estudiantes).
- En 2 meses ya funcionaba (esto fue por utilizar C en vez de Assembler), y puso a
disposición de la gente las fuentes de la versión 0.01.
- Hasta la versión 0.12 no se podía hablar de Linux como SO porque necesitaba MINIX para
configurarse.

Características generales:

- Porque GNU/Linux?¿-> Esto es debido a que utiliza herramientas del proyecto GNU.
- GNU/Linux es un SO gratuito de libre distribución, copia y modificación bajo la licencia
GPL, por lo que la distribución se hace bajo la condición que se entregue el código fuente.
- Proyecto GNU es una asociación sin animo de lucro de programadores, que promocionan el
software libre, el proyecto GNU tiene como fin crear un sistema operativo tipo Unix
gratuito y de libre distribución bajo la licencia GPL (General Plublic License).
- GNU/Linux es un SO, con especificación POSIX (variante de Unix compatible con el
estándar 1003.1: que incluye numerosas áreas de funcionamiento del Unix System V y del
BSD 4.3), y distribuido bajo licencia GPL de GNU.
- GPL y COPYLEFT: El concepto de Copyleft (inversa Copyright) impide que un programa
desarrollado bajo la licencia GPL (como consecuencia se puede: ejecutar, copiar,
modificar, y redistribuir copias modificadas del programa) se le puedan poner restricciones
propias, por lo que un programa de libre distribución no se puede volver propietario al
mezclar el código libre con uno propio. Todo esto lo regula el COPYLEFT.
- Existen muchas distribuciones del SO, creadas por empresas, grupos de programadores, y
personas particulares.

- Distribuciones: Sistema de paquetes (binarios) que utiliza.

+- Por orden de facilidad:

1. Mandrake. [nombre_paquete].rpm
2. SuSE; Corel. “ “ .rpm
3. RedHat; EsWare; Hispafuentes. “ “ .rpm herramientas => rpm
4. Conectiva; TurboLinux. “ “ .rpm
5. Caldera OpenLinux. “ “ .rpm
6. Slackware. “ “ .tgz código fuente => compilación
7. Debian. “ “ .deb herramientas => dpkg y apt-get

Aunque diferentes distribuciones usen el mismo tipo de paquetes, no tienen porque ser
compatibles entre sí.

- Minidistribuciones:

- Trinux.
- Mulinux.
- HAL91.
- Tombsrb.

2
GNU/LINUX Raúl López Martín
1HOTI

Características técnicas:

- Linux es un kernel (núcleo) de un sistema operativo, con herramientas GNU.


- El SO es multitarea (más de un proceso en ejecución simultáneamente) con más de un
procesador físico multitarea real.
- SO multiusuario por lo que pueden haber múltiples usuarios utilizando el SO
simultáneamente
- SO multiplataforma por lo que puede funcionar en varias arquitecturas de SII. Actualmente
soporta (15): PowerPC, Alpha, Intel y Comp., Sun SPARC, Motorola 68K, Intel IA
(64bits), DEC VAX,
- Debido a su gran versatilidad en compilación del núcleo se utiliza en muchas aplicaciones;
en grandes servidores workstations, routers, PS2, PDA’s, telefonos moviles y para SI’s de
control de TV digital bajo demanda.

KERNEL:

- El kernel, actúa como intermediario entre el hardware del SII y los programas (gestiona
memoria de procesos, reparte ciclos de procesador, ficheros, usuarios, comunicaciones,
etc).
- Hay 2 niveles de ejecución modo usuario y modo núcleo(privilegiado, llamada al sistema),
ningún proceso puede acceder a la zona de memoria de otro proceso o del SO, es por eso
que no puede afectar a todo el SI si da un error, sólo los programas ejecutados por root
pueden hacer eso (por eso gran estabilidad).
- El kernel se desarrolla independiente del resto de herramientas y de las distribuciones.
- Es un kernel modulable, por lo que se pueden cargar modulos(drivers “partes del código
del núcleo que se compila aparte”) en cualquier momento de la ejecución del SO. Teniendo
las fuentes, podemos compilarlo, adaptándolo a nuestras necesidades de hardware, por lo
que tendremos un kernel proporcional a nuestro SI.
- Las versiones del kernel van con una nomenclatura especial que nos permite saber que tipo
de versión es:

Versión de producción: son las que están libres de errores(hasta el momento).


Versión de desarrollo: son las que están en desarrollo y pueden contener errores por las líneas de
nuevo código.

Se identifican: 1.X.Y:

El primer número es la versión.


Segundo número X es el que identifica el tipo de versión:
Si es par es de producción.(nuevas funciones probadas, versión estable)
Si es impar es de desarrollo.(nuevas funciones en pruebas, versión inestable)
El tercer número Y es el que identifica si se ha aplicado algún parche al núcleo.

-Compilación de un nuevo kernel:

- Podremos compilar un nuevo kernel para adaptarlo mejor a nuestras necesidades con
respecto al hardware y los servicios que queramos que se ejecuten en nuestro sistema.
- Para hacer esto deberemos disponer en nuestro sistema de:

• Código fuente del kernel (que podremos descargar de la página oficial) y que
deberemos descomprimirlos si no lo tenemos como un paquete binario en el directorio:
/usr/src.
• Compilador de C (gcc).
• Herramienta de configuración de compilación (make).

3
GNU/LINUX Raúl López Martín
1HOTI

• Programas específicos para la configuración del nuevo kernel:

consola texto => “config”.


consola con menús => “menuconfig” (deberemos tener librerías “ncurses”).
entorno gráfico => “xconfig” (deberemos tener un entorno gráfico donde ejecutarlo).

Para ejecutar los programas de configuración deberemos ubicarnos en el directorio:


“/usr/src/linux” ,que se habrá creado al descomprimir el código fuente del kernel, y preceder
del nombre del programa que escojamos el comando “make”. Ej: make menuconfig.

- Una vez configurado el kernel a nuestras necesidades del sistema, deberemos ejecutar los
siguientes comandos en el directorio “/usr/src/linux/”:

1. make dep clean;


2. make bzImage modules;

Una vez hecho esto, un fichero llamado “bzImage” se habrá creado en el directorio:
“/usr/src/linux/arch/i386/boot/”. Esto sólo pasará si todos los pasos de configuración del
kernel se han hecho correctamente. Después de mirar si se ha creado el fichero lo que
haremos será una copia del fichero “bzImage” en el directorio “/boot/” renombrandolo
como: “vmlinuz” (esto reescribirá el fichero vmlinuz existente del anterior kernel, por lo
que es mejor antes renombrar el ya existente por si hubiese un error).

3. make modules_install;

Así se podrá ver que todos los módulos (drivers) se instalan en un directorio personalizado.

Después de hacer todos los pasos deberemos configurar LILO (/etc/lilo.conf) para que
arranque el nuevo kernel (si lo hemos copiado en el directorio /boot/ con un nombre
diferente de “vmlinuz”), para que podamos arrancar el antiguo kernel en caso de que fallara
el inicio del nuevo.

4
GNU/LINUX Raúl López Martín
1HOTI

Arranque del sistema:

Gestor de arranque:

- Al arrancar el ordenador después de la información de la BIOS, nos sale el gestor de


arranque LILO (‘LI’nux ‘LO’ader) es el que normalmente llevan todos las distribuciones
Linux, existen otros (Grub, Chos, Loadlin).
- Para ver las opciones de arranque que tiene LILO (esto será cuando tengamos dos sistemas
operativos instalados en el mismo ordenador) apretaremos la tecla tabulador. Al hacer esto
nos saldrá una lista con los nombres que tengan asignados los sistemas operativos.
- En LILO disponemos de un pequeño prompt en el cual podemos pasar parámetros de
arranque al kernel para que el inicio sea como nosotros queramos.(memoria disponible en el
SI, que núcleo queremos arrancar, resolución de la consola, runlevel en el que queremos
iniciar, etc).
- Para poder configurar LILO tenemos el fichero “/etc/lilo.conf” para poner las opciones que
queramos. Después de modificarlo deberemos ejecutar el comando: “lilo” para que en el
próximo inicio del sistema lo haga con la nueva configuración.

Diagnostico de errores: Mensajes de inicio de LILO:

Cuando LILO se carga muestra en pantalla la palabra “LILO”. La aparición de cada letra indica
la terminación de una determinada fase, por lo tanto, las letras que ya han salido en pantalla
indican en que momento apareció el problema.

Mensajes:

(nada): No se cargó ninguna parte de LILO. Puede que LILO no esté instalado o no se haya
iniciado la partición con el sector de arranque de LILO.
‘L’ error... Se cargó e inició la “primera fase” pero no fue capaz de cargar la segunda
(/boot/boot.b). Esto generalmente indica un error físico del medio de arranque (p. Ej. disquete) o
una geometría de disco errónea.
‘LI’ => Se ha cargado la segunda fase de LILO pero no puede arrancar. Esto ocurre por una
geometría falsa de disco o por haber movido /boot/boot.b sin reinstalar LILO.
‘LIL’ => Arrancó la segunda fase de LILO, pero ésta no pudo cargar los datos necesarios
(punteros, etc) del fichero map. Se trata de un error provocado típicamente por un fallo físico
del medio de arranque.
‘LIL?’ => La segunda fase de LILO se cargó en un área de memoria falsa. Esto lo provoca
generalmente un pequeño fallo de la geometría del disco o por haber movido /boot/boot.b sin
reinstalar LILO.
‘LIL-‘ => Los valores en el fichero map no son válidos. El error es generalmente provocado por
un fallo en la geometría del disco o por haber movido /boot/boot.b sin reinstalar LILO.
‘LILO’ => Todas las partes se han cargado correctamente.

Login:

- Login es el programa encargado de la autenticación de los usuarios en el sistema. Este se


inicia cada vez que se inicia el sistema, a no ser que le indiquemos lo contrario en el inicio.
- Cuando se ejecuta Login, lo que nos muestra en pantalla es lo siguiente:

[nombre_sistema] login:
password:

Primero nos pide el nombre de usuario con el que queremos iniciar sesión en el sistema.
Seguido pide la contraseña que corresponde al usuario (no se mostrará nada al escribirla).

5
GNU/LINUX Raúl López Martín
1HOTI

Sistema XFree86 (X Window):

- El SI X Window es un entorno gráfico para los SO tipo Unix.


- El SI XFree86 es una adaptación de libre distribución del SI X Window, para PC’s
compatibles 8086.
- El GUI no es parte del núcleo del SO sino que es un programa independiente.
- El SI X Window está formado por varias partes: Servidor XWindow(XWindow server), el
servidor gráfico de X (X server), gestor de ventanas (Window Manager) y escritorios
(desktops).
- El servidor XWindow: Este modulo se encarga de gestionar lo que es internamente el SI
XWindow, el protocolo X, etc. Es el bloque principal de X.
- El servidor gráfico de X: Otro ejecutable diferente de X (y que XWindow carga
necesariamente antes de iniciarse) es el modulo encargado de ejecutar ordenes para la
tarjeta gráfica. Tendremos que escoger el especifico para nuestra tarjeta gráfica.
- El gestor de ventanas(window manager): Este modulo se encarga de dibujar las ventanas,
los menús, los iconos, etc. Podremos escoger el que más nos guste, pero hay algunos que
funcionarán mejor en ordenadores con pocos recursos que otros.
- El escritorio(desktop): Son gestores de ventanas pero más evolucionados, soportan arrastrar
y soltar(drag & drop), tienen sistemas de ayuda inteligentes, sistemas de configuración,
navegador de ficheros, etc. Se pueden usar con otro gestor de ventanas si no nos gusta el
aspecto del escritorio.

- Hay muchos gestores y escritorios:

1. KDE.
2. GNOME.
3. CDE.
4. ENLIGHTMENT.
5. WINDOWMAKER.
6. BLACKBOX.
7. FVWM95.

- Existe otro modulo XDM (GDM, KDM) que permite al SO arrancar en las X’s
directamente.

6
GNU/LINUX Raúl López Martín
1HOTI

Archivos:

- Los nombres de archivo en Linux pueden ser de máximo 255 caracteres y pueden contener
casi cualquier símbolo pero los espacios pueden dar problemas, así que hay que poner
comillas cuando nos refiramos a archivos que contengan espacios en su nombre.
- En los SO operativos tipo Unix se distinguen entre las mayusculas y minusculas, por lo que
al escribir el nombre de un archivo (fichero o directorio) tendremos que tenerlo en cuenta.
- En los SO tipo Unix los archivos no utilizan extensiones para identificar el tipo(excepto
para algunos programas), sino que el SO los reconoce.
- Se pueden crear enlaces simbólicos (“accesos directos”) a los archivos ejecutables, estos
pueden ser creados con el mismo o diferente nombre al original. Estos enlaces tienen una
característica, que es que al existir un enlace a un archivo original, si este ultimo es borrado
mientras exista el enlace en el sistema podremos acceder a él (ya que no apunta al archivo
original, sino que apunta a la tabla de i-nodes y así puede identificarlo).
- El SI de archivos es jerarquico.

- Directorios convencionales en los SO tipo Unix:

ESTRUCTURA DEL ARBOL DE DIRECTORIOS

/
raíz(root)

bin etc home proc sbin usr boot dev lib mnt root tmp var

1. / ó raíz: Este es el directorio principal del cual cuelgan el resto de la jerarquía de


directorios. Este directorio debe tener una estructura que permita iniciar, restaurar, recuperar
y/o reparar el SI. Se suele montar en una partición individual para poder mantener esta
estructura lo más pequeña posible para poder tener un mejor control, y también debido a
que los SIA pequeños son menos propensos a corromperse por una falla del SI.

2. bin: Este directorio contiene los archivos binarios (comandos) esenciales para los usuarios,
pueden ser ejecutados por todos los usuarios y algunos scripts, son esenciales para el modo
de arranque mono-usuario.
Los comandos que contiene este directorio son los “indispensables” para la administración
del SI y para que los usuarios puedan realizar las operaciones más básicas; administrar:
archivos, cuentas usuarios, dispositivos, básicos de red y para la restauración del SI.

3. boot: Este directorio contiene todo lo necesario para el arranque, excepto los archivos de
configuración y el instalador de mapas. En este directorio se buscan todas las cosas antes de
ejecutado /sbin/init por el kernel, como son: el sector de arranque (MBR) o los archivos de
mapeo de sectores, etc. Aquí también puede estar el archivo del kernel.

4. dev: Aquí están contenidos los archivos correspondientes a cada dispositivo físico del
sistema; discos duros, cdrom, mouse, puertos serie/paralelo, etc. Estos dispositivos serán los
que el kernel de linux pueda soportar.(con MAKEDEV se pueden crear nuevos
dispositivos).

7
GNU/LINUX Raúl López Martín
1HOTI

5. etc: Este directorio contiene los archivos de configuración del sistema, como para
dispositivos, servicios o para el propio sistema.
Dentro de este directorio se encuentran directorios tales como:
X11-> Contiene todos los ficheros para la configuración del sistema XWindow.
skel-> Directorio donde se guardan los perfiles por defecto de los usuarios que se crearan.
etc también contiene los directorios de configuración de los runlevels, estos pueden estar
dispuestos de maneras diversas pero muy parecidas, estos son:
rcX.d-> Estos son los archivos de configuración de los runlevels del sistema, contienen
enlaces simbólicos a los escripts de los servicios que se deben ejecutar en cada uno de los
runlevels, que se encuentran en init.d.
Aquí se encuentran también los archivos de autenticación de los usuarios al entrar en el
sistema: passwd y shadow(en caso de que las hayamos instalado).

6. home: Directorio hogar de los usuarios del sistema. Al crear un usuario con las
herramientas del sistema, se crea un directorio en home con el nombre de usuario
(/home/nom_user) donde se guardarán sus archivos de configuración y sus programas y
archivos particulares. En estos directorios solo tendrán acceso los propietarios del mismo.

7. lib: Contiene las librerías compartidas necesarias para arrancar el sistema y las utilizadas
por los binarios contenidos en /bin y /sbin. También contiene los módulos esenciales del
kernel (/lib/modules/ver_kernel/...).

8. mnt: Este directorio esta vacío, es para poder montar sistemas de archivos temporalmente
sin que afecte a la estructura del sistema (se puede montar en cualquier sitio).

9. proc: Este directorio no existe como tal en el sistema, sino que esta montado virtualmente.
Contiene información sobre los procesos que se están ejecutando en el sistema, el kernel y
la memoria. No se pueden/deben modificar los archivos contenidos en el.

10. root: Directorio hogar del superusuario(administrador). Todo y que tiene un directorio
hogar propio puede encontrarse en otros sistemas UNIX en /, esto es así ya que el usuario
root no debería guardar información personal, esto es porque no es recomendable usar el
usuario root excepto para cosas estrictamente necesarias, en la administración del sistema.

11. sbin: Contiene las utilidades para la administración del sistema, por lo que aquí sólo deben
estar los binarios que deban ser ejecutados para la administración y no por los usuarios.
También contiene ejecutables esenciales para arrancar el sistema a parte de los de /bin.

12. tmp: Se utiliza para contener archivos temporales del sistema, por lo que la duración de la
información aquí guardada no se puede asegurar que se mantenga durante mucho tiempo, ya
que tmp es limpiado en intervalos de tiempo relativamente cortos. Este directorio puede
estar ubicado en un disco RAM (directamente en RAM).

13. usr: Es la segunda mayor jerarquía de archivos del sistema. Contiene información relativa a
los programas usados por los usuarios, los propios binarios y programas ejecutados por los
usarios, las librerías para los mismos, paginas de manuales, etc.

14. var: Contiene archivos con información variable, como son archivos de logs (información
sobre los sucesos del sistema: logins, accesos a servicios, mensajes del kernel, etc).
Contiene también la información y los archivos de algunos servicios, como el servidor web
(/var/www/...), donde están ubicadas las paginas que servirá, el archivo del servidor DNS,
etc.

8
GNU/LINUX Raúl López Martín
1HOTI

• El fs que instala Linux por defecto es el ext2 (existen: ext3, ReiserFS), pero es compatible
con muchos sistemas de archivos: vfat, ntfs, nfs, etc...
• Herramienta para reparar el sistema de archivos => fsck.
• Herramienta para formatear con el sistema de archivos ext2 =>
mke2fs /dev/[nombre_dispositivo] .Para hacer esto tendremos que tener el dispositivo
desmontado.

• Comando mount:

En Linux como en Unix los sistemas de archivos tienen que montarse para poder acceder a
ellos, esten en el dispositivo que esten (HD, floppy, CD, etc).
Para hacer esto se utiliza el comando “mount” que utilizaremos para montar un sistema de
archivos en un punto cualquiera de la estructura de directorios.
Para poder hacer la acción contraria utilizaremos el comando “umount”, esto la tendremos
que hacer cuando hayamos acabado de trabajar con el sistema de archivos y querramos
disponer del dispositivo libremente, ya que en caso de no hacerlo no podremos utilizar el
dispositivo para realizar otras tareas.

Ejemplo de utilización:

Prompt$ mount -o ro -t iso9660 /dev/hdd /cdrom

En este ejemplo vemos que al comando “mount” le hemos pasado los siguientes argumentos
“-o (-options)” donde le decimos a mount que le pasaremos opciones; “ro (read only)” estas
son las opciones que le pasamos, y significa que el sistema de archivos que montaremos
será de solo lectura por lo que no podremos escribir en el,(caso del CD); “-t (type)” con esto
le especificamos tipo de sistema de archivos, en este caso: iso9660 (estandar de CD-ROM)
“/dev/hdd” es la ruta donde se encuentra el archivo que se refiere al dispositivo del CD =>
“hdd” y por último “/cdrom” es el directorio donde estará montado el contenido del CD, así
si queremos acceder al contenido del CD-ROM entraremos en el directorio /cdrom (los
sistemas de ficheros que vallamos a montar lo podremos hacer en cualquier directorio,
siempre que tengamos permisos, del disco).

• Comando umount:

Para poder realizar el proceso inverso al anterior, o sea desmontar el sistema de archivos,
deberemos usar el comando umount (viene de unmount) para asi poder disponer del
dispositivo libremente ya que en caso de no hacerlo, no podremos.
En el ejemplo anterior hemos montado el CD-ROM, por lo que una vez montado no
podremos extraerlo hasta que lo desmontemos del sistema, para hacer esto antes hay que
asegurarse de que no hay ningun usuario accediendo a él; en el caso del ejemplo anterior,
esto sería que nadie estuviese en el momento de desmontar el CD-ROM dentro del
directorio si no fuese así el sistema nos responderá con un error que nos informará de que el
dispositivo está ocupado “DEVICE IS BUSY”.

Ejemplo de utilización:

Prompt$ umount /dev/hdd

Sólo especificandole el dispositivo (hdd) que queremos desmontar es suficiente.

9
GNU/LINUX Raúl López Martín
1HOTI

Interprete de comandos:

- El interprete de comandos en los sistemas Linux no es solamente uno, sino que existen
varios. El interprete más extendido y casi estarndar en Linux es el “bash” (bourne again
shell) este es descendiente del “sh” (bourne shell), muy utilizado en Unix.
- Existen otros interpretes a parte del “sh” y el “bash”: csh, tcsh, pdksh, zsh, ash y mc.
- La diferencia entre los shells consta en la diferencia en la programación y en las funciones
avanzadas de los shells, ya que en lo basico son iguales.
- Bash soporta implicitas las funciones de recordar y autocompletar comandos (recordar:
flecha up; autocompletar: tabulador).
- Normalmente por defecto los shells Bash y Korn utilizan el símbolo de dólar ($) como
indicador del prompt para usuarios corrientes, para el usuario “root” suelen utilizar el
simbolo de almuadilla (#) para distinguir cuando se haya logado con el usuario
administrador. El shell C (csh) puede utilizar como indicador el símbolo tanto por ciento
(%). Esto se puede cambiar.
- Para cambiar el shell que tendrá un usuario al entrar en el sistema se utiliza el comando
“usermod -s /bin/[nombre_shell] [nombre_user]” tambien se puede hacer editando el
archivo /etc/passwd. Si la shell no está disponible en el SI nos saldrá un error.
- En los sistemas tipo Unix disponemos de varias consolas virtuales. Esto es, el disponer de
varias shells. Para poder acceder a las diferentes consolas deberemos cambiar de una a otra
con las teclas Alt+Fx, donde x es el valor de las teclas de F1 a F6 normalmente.

VARIABLES.

- Para poder configurar el entorno del SI utiliza variables de shell. Para poder visualizarlas;
en Bash = “env o set” y en csh = “printenv”, esto nos mostrará la lista de variables que hay
definidas en el SI.
- Para poder crear variables sólo hará falta escribir el nombre de la variable y seguido de su
valor despues del igual: NOMBRE_VARIABLE= valor, esta variable es temporal ya que
una vez que se salga del SI desaparecerá, por lo que si queremos definir una variable que se
inicie cada vez que entramos en el SI la deberemos poner en: /home/[nom_user]/.profile.
- Lista de variables comunes en Bash:

HOME = /home/[nom_user] Esta variable contine el directorio definido como


nuestor home. Se puede modificar.
LOGNAME = login Contiene identificador de usuario con el que hemos
iniciado sesion en el SI. Se inicia automatica y no se
puede variar.
PATH = path Contiene directorios de ejecutables (igual que en MS-
DOS)
PS1 = prompt Define el aspecto del shell (en MS-DOS: PS1 =
PROMPT)
PWD = directorio Indica la ruta del directorio en el que nos encontramos
en este momento.
SHELL = shell Muestra la ruta del fichero ejecutable del shell (en MS-
DOS: SHELL = COMPSEC)
TERM = tipo_terminal Establece el nombre del tipo de terminal.

- Para poder modificar el valor de las variables se tiene que utilizar el signo del dólar ($)
antes del nombre de la variable: $PATH= nuevo_path.
- Para que los canvios tengan efecto cada vez que entramos en el SI hay que modificar el
valor de la variable en el archivo: /home/[nom_user]/.profile.

10
GNU/LINUX Raúl López Martín
1HOTI

COMANDOS.

- Para ejecutar comandos en Linux sólo hay que escribir el nombre del archivo binario,
entonces el SO buscará el nombre del archivo en los directorios definidos en la variable
PATH.
- Si el archivo ejecutable no se encuentra en algún directorio que contiene la variable PATH
tendremos que llamarlo con los caracteres punto (‘.’) y barra (‘/’) delante del nombre:
./binario
- A la mayoría de comandos se les pueden poner indicadores para variar la ejecución, esto lo
podemos hacer poniendo seguido del nombre del comando, un guión y el parámetro que le
queremos pasar: “ ls -l “ => esto nos listará el contenido del directorio actual con el formato
de muestra de información “-l (largo)”, enseñandonos toda la información referente a los
archivos y directorios.
- Podemos ejecutar comandos agrupados, esto tenemos que hacerlo escribiendo los comandos
entre llaves ({}), hacer esto nos puede servir para redireccionar la salida de dos comandos a
una salida no estandar: {comando1; comando2} > fichero.
- Para ejecutar comandos en background, esto es, en segundo plano que quiere decir que al
ejecutar el comando, la salida que tendría que dar nos la dará al finalizar la tarea,
dejandonos así libre la consola para poder ejecutar otros programas. Esto lo haremos
poniendo a continuación del nombre del ejecutable, el símobolo ampersand (&).
- Podremos cortar la ejecución de cualquier programa pulsando las teclas (Ctrl+C) y
podremos pararlo hasta que queramos seguir ejecutandolo pulsando las teclas (Ctrl+Z). Para
ver si hay algún proceso que hayamos parado utilizaremos el comando “jobs”, que nos
mostrará una lista con los procesos y su número de identificación. Para poder seguir
ejecutandolos de modo normal utilizaremos el comando “fg (foreground)”, y para ejecutarlo
en background utilizaremos el comando “bg (background)” seguido del número de
identificación de trabajo.

11
GNU/LINUX Raúl López Martín
1HOTI

Runlevels:

- Los runlevels son diferentes niveles en los que se puede ejecutar el SO.
- Un runlevel no es más que una configuración hecha para una tarea especifica. Esto es la
ejecución de unos procesos determinados para hacer un trabajo deseado, cambio del entorno
de trabajo o la realización de tareas especificas del SI.
- Podremos cambiar de un runlevel a otro con los comandos: “init o telinit”.
- El archivo de configuración, para describir que runlevel se iniciará por defecto, los
directorios correspondientes a cada uno, etc... es el “/etc/inittab”.
- Cada runlevel dispone de un directorio donde se encuentran los scripts de ejecución de
todos los servicios: “/etc/rcX.d”, donde X puede ser del 0 al 6.

Hay nueve runlevels existentes en los SI tipo Unix, pero normalmente se suelen utilizar seis, a
los cuales con el tiempo se le han ido asignando unas tareas especificas, por lo que son casi un
estandar:

Runlevels:

0 HALT => Este runlevel es el que se uitiliza para la parada del sistema, por lo que si
hacemos una llamada al runlevel 0 con telinit o init el SI se apagará.
1 Monousuario => Este runlevel es el que inicia el SI en modo monousuario, se utiliza para el
mantenimiento del SI, ya que solo podrá iniciar sesion en el SI el superusuario ( root ).
2 Multiusuario sin NFS => Este runlevel inicia el SI con todas la opciones, pero no inicia la
red.
3 Multiusuario completo => Este runlevel inicia el SI con todas las opciones incluyendo la
red.
4 Sin especificar la utilidad (podremos configurarlo a nuestro gusto).
5 X11 => Este runlevel inicia el sistema gráfico.
6 Reboot => Este runlevel es el que se utiliza para el reinicio del sistema, por lo que cada vez
que reiniciamos el sistema estamos llamando al runlevel 6.

Para poder iniciar en otro runlevel que no sea el por defecto, deberemos especificarlo en el
prompt de LILO, seguido del nombre del kernel que queramos iniciar.

Ejemplo:

LILO: linux S

Esto iniciará el kernel llamado linux en el runlevel S (es igual al 1), en este inicio del sistema.

12
GNU/LINUX Raúl López Martín
1HOTI

Comandos básicos:

ls
Omonimo de dir en MS-DOS lista ficheros y directorios.

Parámetros

-a
Lista todos los directorios y ficheros incluso los ocultos. Los ficheros y
directorios ocultos son los que empiezan por un punto: .[nombre_directorio o
nombre_fichero].
-c
Utiliza el tiempo de la ultima edición (o ultimo cambio de modalidad) para
ordenar o imprimir.Linux mantiene tres marcas de hora y fecha en cada archivo: la
fecha de creación del archivo, la fecha del ultimo acceso y la fecha de la ultima
modificación.Los archivos normalmente se relacionan en orden ASCII.
-C
Fuerza la salida en columnas, este es el formato predeterminado de
ls cuando la salida esta dirigida a un terminal.
-d [nombre_directorio]
Si el argumento es un directorio, relaciona solo su nombre y no su contenido; esto
se suele utilizar con el parámetro -l para obtener el estado de un directorio
en concreto ya que si utilizamos el comando ls [nombre_directorio] el
resultado será el contenido de ese directorio.
-F
Muestra los diferentes tipos de archivos y directorios marcándolos; a los
directorios con una barra (/) al final, los archivos ejecutables con un asterisco
(*), los enlaces simbólicos con una arroba (@), los FIFO con una barra (|) y los
zócalos con un signo igual (=) al final.
-i
Imprime el numero inode de cada archivo y directorio, en los archivos
enlazados se ve que los dos tienen el mismo numero de inode.
-l
Muestra toda la información de los directorios y ficheros; como son el tipo,
los permisos del directorio o fichero, propietario, grupo del propietario, fecha de
la ultima modificación y tamaño en bytes.Tambien muestra los enlaces simbólicos a
ficheros o directorios y los muestra de la siguiente forma:
[nombre_fichero]->[ruta_del_fichero_enlazado].
-n
Relaciona los números de identificación de grupo y usuario, en lugar de
nombres, asociados con cada archivo y directorio.
-q
Muestra caracteres no gráficos en nombres de archivo como, por ejemplo, el
signo de interrogación (?).Para ls, este es el valor predeterminado cuando la
salida se dirige a un terminal.
-r
Invierte el orden de clasificación para mostrar los archivos y directorios por
orden alfabético inverso.
-s
Proporciona el tamaño de cada archivo y directorio en kbytes lo contrario que con el
parámetro -l que lo muestra en bytes.
-t
Clasifica según el tiempo de modificación (los más recientes primero) en lugar

13
GNU/LINUX Raúl López Martín
1HOTI

de hacerlo por nombre.


-u
Utiliza el tiempo del ultimo acceso, en lugar de la ultima modificación, para
ordenar (con la opción -t) o para imprimir (utilizando la opción -l).
-x
Fuerza la salida multicolumna con las entradas distribuidas horizontalmente,
en lugar de verticalmente.
--color
Muestra descripciones de color para cada tipo de archivo y para los
directorios, siempre que se disponga del monitor adecuado.Las definiciones de los
colores se realizan en el archivo DIR_COLORS, localizado en el directorio
/etc, pudiendo así modificarlos.

cd
Igual que en DOS sirve para acceder y salir de directorios.Utilizando el comando sin especificar
ningún nombre de directorio o ruta, nos trasladamos al directorio home del usuario con el que
nos encontremos en el sistema en ese momento.Identificaremos el directorio home porque el
prompt nos mostrara el símbolo (~), esto lo podremos realizar desde cualquier parte del sistema
de archivos que nos encontremos.Para salir al directorio superior en el cual hayamos entrado
utilizaremos como en DOS los dos puntos (..) pero con un espacio en blanco: cd ...

mkdir

Este comando es utilizado para crear directorios; mkdir [nombre_directorio]. Antes de utilizar
este comando debe asegurarse de que tiene permisos de escritura en el directorio donde se
encuentra, aunque no tiene porque tener problemas si se encuentra en su directorio home de
usuario ya que aquí tiene todos los permisos. Los directorios de usuarios se encuentran en el
directorio /home/[nombre_usuario], excepto el del usuario root que se encuentra en la raíz del
sistema (/).

Parámetros

-m
Especifica el modo en el cual se crea el directorio (los permisos tendrá al
crearse); mkdir -m 0700 [nombre_directorio].En este ejemplo el
directorio creado solo podría acceder al, listar su contenido y escribir su
propietario, el resto de usuarios no tendrían derechos.El modo por defecto al crear
un directorio es; 0777 menos el valor de la umask que es
022.Esto daría como resultado el modo 0755 que daría todos los
permisos al propietario pero solo podrían acceder y listar su contenido los otros
usuarios que pertenezcan al grupo del propietario y el resto de usuarios.

rmdir
Con este comando borraremos todos los directorios y subdirectorios en los cuales tengamos
especificado el permiso de escritura con el cual podremos borrar.

14
GNU/LINUX Raúl López Martín
1HOTI

rm
Utilizaremos este comando para borrar los archivos que tengamos permisos.Con este comando
podremos borrar los diferentes tipos de archivos y también directorios en casos especiales, este
comando al tener varios parámetros con diferente sintaxis podría llegar a darse el caso de que
coincidiera un parámetro con el nombre de archivo el cual queremos eliminar, por ejemplo un
archivo llamado [-f] esto se corresponde con la opción -f y podría suponer un mal
funcionamiento del comando, así que para solucionar esto utilizaremos los guiones [--] para
indicar que los que viene a continuación no es un parámetro que le pasamos al comando sino un
nombre de archivo.Ejemplo; rm -f -- -f.

Parámetros

-i
Con esta opción se utiliza el comando rm en modo interactivo, que nos
preguntara si queremos eliminar los ficheros escogidos y tendremos que responder con
y/Y si estamos seguros o con n/N si no queremos que elimine el
archivo.
-r/-R
Esto nos dará la opción de borrar de forma recursiva los directorios que
no estén vacíos, borrando todos los archivos y subdirectorios que estén contenidos
dentro del.
-f
Con esto forzara el borrado de los ficheros.

cp
Este es el comando copy pero en forma abreviada, con esto copiaremos archivos y directorios.

Parámetros

-b
Este parámetro se lo pasaremos al comando cp cuando queramos que haga
un backup de los archivos que vayan a ser sobrescritos o borrados.
-d
Con esto copiaremos los links simbólicos (estos son los archivos que se
utilizan para enlazar a otros archivos y directorios), con esta opción los
copiaremos manteniendo el enlace al archivo o directorio que tenia.Si no utilizamos
este parámetro se copiara con las propiedades del archivo o directorio al que esta
enlazado, por ejemplo; si el archivo enlazado es un ejecutable, el nuevo archivo
creado tendrá las propiedades de ejecutable.
-f
Fuerza a que borre los archivos en el directorio destino.
-i
Este es el modo interactivo que nos preguntara si queremos sobreescribir los
ficheros existentes en el directorio destino.
-p
Preserva las propiedades del archivo original; propietario, grupo, permisos y fecha y
hora del ultimo acceso.
-x
Ignora los directorios que están en diferentes sistemas de ficheros.

15
GNU/LINUX Raúl López Martín
1HOTI

-r/-R
Copia directorios de forma recuersiva, eso quiere decir que todos los
ficheros y subdirectorios que están dentro de él se copiaran también.

mv
Este comando sirve para mover archivos y directorios a otros lugares del sistema de
archivos.Este comando también sirve para renombrar archivos, esto se realiza moviendo del
nombre original al nombre deseado para el nuevo fichero.Ejemplo: mv
[nombre_original_del_fichero] [nombre_nuevo_del_fichero].A este comando se le pueden
pasar los parámetros: -b,-f y -i que se utilizan igual que en el comando cp.

touch
Con este comando crearemos archivos (en Linux no existen las extensiones de los ficheros para
identificar un tipo, por lo tanto no hará falta que al crearlo en el nombre añadamos la extensión,
todo y que será muy útil a la hora de identificarlo nosotros, ya que el sistema reconocerá el tipo
a la hora de trabajar con él).

Parámetros

-d
Esto nos da la opción de crear un archivo con el formato de fecha que
deseemos.
-r
Con esto podremos crear archivos cogiendo la fecha de otro archivo existente
como referencia para la fecha del que crearemos.Ejemplo: touch -r
[nombre_archivo_de_referencia] [nombre_archivo_para_crear].

pwd
Este comando nos sirve para saber en el punto del árbol de directorios donde nos encontramos
en el momento de ejecutarlo, el comando nos devuelve la ruta completa partiendo del directorio
raíz.

cat
Ejecutando este comando nos permite visualizar el contenido de un fichero sin opción a
modificarlo.Esto es útil si queremos solo ver su contenido y no trabajar con él.

Parámetros

-b
Así nos mostrara el contenido numerando las líneas que están escritas.
-e
Con esto nos muestra los caracteres de dólar ($) al final de cada línea, y
también el carácter de control (^) que precede al carácter (M) (estos caracteres son
causados por el retorno de carro (^M)).Este parámetro es el conjunto de -vE.

16
GNU/LINUX Raúl López Martín
1HOTI

-n
Muestra el contenido numerando todas las líneas, estén o no escritas.
-T
Muestra los caracteres de tabulación (^I).

chmod
Este comando nos permite cambiar los permisos de ficheros y directorios.Linux es un sistema
operativo multiusuario, esto quiere decir que, hay múltiples cuentas de usuarios los cuales
tienen ficheros y directorios de su propiedad, así que los archivos y directorios tienen permisos
de acceso, listado, escritura, lectura y ejecución que se pueden cambiar para ajustarlos a
nuestras necesidades.Se puede utilizar diferentes formatos para dar o quitar permisos.

-En base octal (permisos absolutos):


0001 Permiso de ejecución para todos los demás usuarios.
0002 Permiso de escritura para todos los demás usuarios.
0004 Permiso de lectura para todos los demás usuarios.
0010 Permiso de ejecución para el grupo.
0020 Permiso de escritura para el grupo.
0040 Permiso de lectura para el grupo.
0100 Permiso de ejecución para el propietario.
0200 Permiso de escritura para el propietario.
0400 Permiso de lectura para el propietario.
1000 Bit adosado activo.
2000 Bit de identificador de grupo activo, si el archivo es ejecutable.
4000 Bit de identificador de usuario activo si el archivo es ejecutable.

En este formato se pueden ir sumando los bits para llegar a darle los permisos deseados.
Ejemplo: chmod 0763 [nombre_fichero].Con esto el archivo tiene todos los permisos para el
propietario (7), permisos de lectura y escritura para el grupo del propietario (6) y permisos de
ejecución y escritura para todos los demás usuarios (3).El (0) que aparece al principio
corresponde con el bit adosado de reconocimiento de usuario y grupo.En Linux hay algunos
comandos que solo los puede ejecutar el usuario root, y aunque tengamos permisos para
ejecutarlos no se ejecutaran ya que el sistema comprobara si es el usuario root el que lo ejecuta
y si no es así no lo ejecutara, por lo tanto activando estos bits podremos ejecutar los comandos
en nombre del usuario root, esto también se puede aplicar a otros usuarios.

-En caracteres (permisos relativos):


De esta manera es algo diferente dar y quitar permisos a los archivos y directorios ya que se
utiliza un formato diferente y se debe establecer lo siguiente: A quien pertenece. Que tipo de
operación se pretende hacer (agregar, quitar o establecer permisos). Que tipos de permisos son.
Todo esto se puede hacer con los siguientes parámetros:

-Especificando quien:

a Todos los usuarios (el usuario, sus grupos y todos los demás).
g El grupo/s del propietario del archivo.
o Todos los demás usuarios (los que no pertenecen a ningún grupo del propietario).
u Solo al propietario.
-Especificando el tipo de operación que se quiere hacer:
+ Agrega la modalidad.
- Elimina la modalidad.
= Establece la modalidad de forma absoluta.

17
GNU/LINUX Raúl López Martín
1HOTI

-Especificando que permisos son:

x Establece permiso de ejecución.


r Establece permiso de lectura.
w Establece permiso de escritura.
s Establece el bit de identificador de usuario.
t Establece el bit adosado.

Parámetros

-R
Con esta opción cambia los permisos recursivamente en un directorio, dando así
los mismos permisos a todos lo archivos y subdirectorios que contenga.
-c
Muestra un mensaje diciendo que ficheros y directorios cambian de permisos y
al modo al que pasan.
-f
No muestra ningún mensaje de error en los ficheros y directorios cuyos
permisos no se pueden cambiar.
-v
Describe la acción realizada sobre cada fichero o directorio.

clear
Con este comando realizamos lo mismo que con cls en DOS, limpiamos la pantalla de todo lo
que aparezca y nos quedamos con el prompt.

shutdown
Con este comando cerraremos el sistema de una manera correcta informando a todos los
usuarios que estén en el sistema en el momento de ejecutarlo enviándoles un mensaje que les
aparecerá en consola, así los trabajos que se estén realizando se guardaran de forma
automatica.Si ejecutamos el comando sin pasarle ningún parámetro cambia al runlevel 1 (es el
runlevel de mantenimiento del sistema, monousuario) de forma inmediata.Para ejecutar el
comando se tienen que tener privilegios de administrador.

Parámetros

-t sec
Así le pasaremos los segundos que queramos que espere desde que envía el
mensaje a los usuarios hasta que cambie a un runlevel diferente.
-k
No realiza el comando realmente solo envía el mensaje de advertencia a todos
los usuarios.
-r
Con esto se cambia al runlevel 6 que es el de reinicio del sistema (reboot).
-h
Con esto se cambia al runlevel 0 que es el de apagado del
sistema (halt) si la fuente de alimentación lo permite y tenemos
configurado LILO para ello el ordenador se apagara solo.
-f
Hace que en el reinicio del sistema se salte la ejecución de fsck.

18
GNU/LINUX Raúl López Martín
1HOTI

-F
Fuerza la ejecución de fsck en el reinicio del sistema.
now
Con esto lo que hará es ejecutar el comando inmediatamente.

mount
Con este comando podremos montar sistemas de archivos cuando sea necesario.Con el comando
mount podremos montar muchos sistemas de archivos existente ya que Linux soporta una gran
variedad de sistemas de ficheros, pudiendo así montar otra partición de DOS/Windows en
cualquier directorio del sistema.Ejemplo: mount -o rw -t vfat /dev/hda3 /mnt/win_C esto
montara la partición /dev/hda3 (que podría ser la partición C: de windows) en modo lectura y
escritura con el tipo de archivos vfat en el directorio /mnt/win_C.Linux utiliza unos archivos
especiales para acceder a los dispositivos hardware, estos archivos están ubicados dentro del
directorio /dev.Para identificar los diferentes dispositivos en el sistema hay una nomenclatura
especial para cada dispositivo:

/dev/hd
Unidades de discos IDE.El dispositivo/dev/hda
se refiere al primer disco duro del sistema, por lo tanto si tuviésemos
otro disco duro se identificaría con /dev/hdb así hasta la cantidad
completa de discos que tuviéramos instalados.De forma parecida pasa con las
diferentes particiones del sistema ya que la identificaríamos con el nombre de
dispositivo y numero de partición: /dev/hda1 esta es la primera
partición del primer disco duro.

/dev/sd
Es la interfaz de dispositivos SCSI, es igual que en los discos
IDE.

/dev/fd
Esto proporciona soporte a unidades de disquete.
/dev/fd0 es la primera unidad de disquete.

/dev/st
Dispositivo de cintas SCSI.

Parámetros

-f
Esto hace que se realicen todas las operaciones excepto el montaje de sistema
de archivos en sí.
-v
Modalidad detallada, informa de lo que esta intentando hacer.
-w
Con esta opción se monta el sistema de archivos en modo lectura y escritura,
esto es siempre que el dispositivo lo permita.
-r
Se monta el sistema de archivos con permiso de solo lectura.
-t type
Esta opción especifica el tipo de sistema de archivos que se va a montar.
-a
Hace que mount trate de montar todos los sistemas de archivos
en /etc/fstab.

19
GNU/LINUX Raúl López Martín
1HOTI

-o lista_opciones
Con esto seguido de las opciones hace que mount las aplique al sistema de archivos que
se va a montar.

adduser
Como ya hemos visto Linux es un sistema multiusuario, esto quiere decir que pueden existir
varios usuarios en el sistema al mismo tiempo.Al instalar el sistema la única cuenta que existe
es la del superusuario root debido a esto luego hay que ir añadiendo las cuentas de usuarios,
esto lo hará root.Hay dos maneras de dar de alta una cuenta de usuario a mano o utilizando el
comando adduser (en algunas distribuciones puede ser useradd).Para crear una cuenta a mano
hay que añadir varios parámetros en el fichero /etc/passwd y crear todos los directorios y
ficheros del usuario como pueden ser el directorio home y los archivos del perfil de usuario.
El comando adduser lo que hace es copiar todos loa archivos que empiecen por punto (.) desde
el directorio /etc/skel al directorio de usuario.El contenido del directorio skel debe ser todos los
archivos de configuración que queramos que tengan todos los usuarios.

Parámetros

-e fecha
Esto especifica cual será la fecha en la que la cuenta del
usuario que estamos creando quedara desabilitada.
-f dias
Con esto especificaremos cuantos dias tiene el usuario para
cambiar su contraseña después de que haya caducado hasta que la cuenta sé desabilite.
-g grupo
Así daremos el nombre o numero de grupo al cual pertenecerá él
usuario, debemos tener en cuenta que el grupo debe existir en el sistema.
-G lista_grupos
Con esto pasamos una lista con los grupos suplementarios a
los que también pertenecerá el usuario.
-m
Con esta opción el directorio home del usuario será creado sino existe en el
sistema.

tar
Con este comando podremos introducir toda una estructura de ficheros y directorios en un solo
archivo con la extensión *.tar, teniendo así la comodidad de trabajar con un solo archivo, esto
no comprime los ficheros ya que el archivo resultante tiene el mismo tamaño que la estructura
del árbol de ficheros y directorios.Ejemplo: tar [nombre_directorio] así se introduce todo el
contenido del directorio en el archivo contenedor.

Parámetros

-c
Con esto haremos que todo un árbol de directorios y ficheros se unan en un archivo
contenedor.
-t
Lista el contenido de un archivo tar.

20
GNU/LINUX Raúl López Martín
1HOTI

-x
Extrae el contenido de un archivo contenedor en el directorio que le especifiquemos.
-w
Nos preguntara confirmación para cada acción que realice.
-z
Filtra el archivo a través de gzip esto es para los archivos comprimidos
[nombre_archivo_contenedor].tar.gz.

gzip
Este es la herramienta estándar de compresión que incorporan todas las distribuciones Linux
esto puede llegar a reducir el tamaño de un archivo ASCII hasta un 80% de su tamaño
utilizando el algoritmo Lempel-Ziv.Este comando se suele usar con los archivos contenedores
*.tar para comprimirlos, todas las fuentes para Linux están comprimidas con esta utilidad.El
programa gunzip reconoce los archivos con las extensiones: .gz,-gz,.z,-z,_z,.Z y las extensiones
especiales .tgz y .taz para los archivos tar.gz y tar.Z respectivamente.

Parámetros

-d
Esto descomprime los archivos equivale a gunzip.
-f
Fuerza la compresión y descompresión del archivo.
-l
Esto lista información sobre el archivo como: tamaño comprimido, tamaño
descomprimido, ratio de compresión
(%) y el nombre del archivo descomprimido.
-r
Con esto comprimiremos recursivamente un árbol de directorios y archivos, cuando gzip
se encuentra un
directorio desciende para comprimir los ficheros que se encuentran en su interior.
-# --fast—best
Con esta opción podremos regular la velocidad y con ello la calidad de la compresión
que conseguiremos
donde -1 o—fast indica una compresión muy rápida por lo tanto menos compresión de
archivo, y -9 o—best
realiza una compresión lenta pero el archivo quedara con la máxima compresión
posible.
-c
Con esto podemos concatenar mas de un fichero en un solo archivo .gz: gzip -c fichero1
fichero2 >>
[nombre_archivo.gz].

man
Con este comando podremos ver las paginas del manual de cualquier comando que haya en el
sistema o que incorporemos posteriormente ya que casi todos los comandos y utilidades al
instalarse instalan también sus paginas de manual.Con esto se pueden ver los manuales de todos
los comandos incluidos en esta pagina: man [nombre_comando]. Hay muchos manuales que
aun no están traducidos al español pero hay unos cuantos que si, los podremos instalar y
añadiendo esto en la línea de comando export LC_MESSAGES=’es’ podremos leer los que
estén traducidos en español.

21
GNU/LINUX Raúl López Martín
1HOTI

GLOSARIO:

LINUX (‘L’inux ‘I’s ‘N’ot ‘Uni’X’): Kernel (núcleo) modular de sistema operativo de libre
distribución, modificación y ejecución.Desarrollado por Linus Torvalds en 1991.
GNU (‘G’un is ‘N’not ‘U’nix): Proyecto para la realización de un sistema operativo tipo Unix
gratuito iniciado en 1984 por Richard Stallman. Es de este proyecto del que Linux utiliza todos
los programas externos al kernel.
BASH (‘B’ourne ‘A’gain ‘SH’ell): Interprete de comandos por defecto de Linux y del proyecto
GNU.
SHELL: Traducido del inglés “concha o caparazón”, es el interprete de comandos que hay
entre nosotros y el kernel de sistema.
GPL (General Public License): Licencia Publica General, por la cual se rigen Linux y el
proyecto GNU, nos permite; la libre distribución, modificación, copia y ejecución de todo el
software que esté bajo esta licencia.
FSF (‘F’ree ‘S’oftware ‘F’undation): Fundación de programadores que pretenden la creación de
un sistema operativo tipo Unix libre. Esta fundación es la encargada del proyecto GNU. Creada
por Richard Stallman.
UNIX: Sistema operativo multiusuario creado en 1969 en los laboratorios BELL por los
creadores del lenguaje de programación C. Ha sido durante años el sistema operativo más
utilizado en el mundo por su portabilidad.
COPYLEFT: Sistema por el cual se protege al software creado para GNU de los empleadores,
que no puedan reclamar ese trabajo como suyo al realizarlo programadores los cuales están
trabajando para ellos.
POSIX (‘P’ortable ‘O’peration ‘S’ystem for Un’IX’): Estándar creado por la IEEE (Institute of
Electronical and Electronics Engineers) para la compatibilidad entre las diferentes versiones de
Unix.
BSD (‘B’erkeley ‘S’ystem ‘D’istribution): Licencia de la Universidad de California, Berkeley
es parecida a la GPL.
XFREE86: Sistema de interfaz gráfica de usuario (GUI) de libre distribución, modificación y
ejecución. Creado y mantenido por Xfree86, Inc.
XWINDOW: GUI, es el encargado de dibujar todo lo que le piden los programas que se
ejecutan bajo el entorno gráfico, también puede visualizar programas que se están ejecutando en
otros ordenadores de la red.
WINDOWMANAGER (Gestor de ventanas): Parte del sistema Xwindow que se encarga de
dar apariencia a los programas que se ejecutan bajo el sistema gráfico, también se encarga de
maximizar y minimizar ventanas, de ponerles el marco, del fondo del escritorio, etc...
ROOT (Superusuario): Usuario por defecto en los sistemas tipo Unix para su administración, el
cual tiene todos los privilegios en el sistema para hacer cualquier cosa.
MODULOS (Drivers): Son porciones de código que se añaden al kernel en tiempo de ejecución
para el manejo de dispositivos o para añadir funciones al núcleo.
LILO (‘LI’nux ‘LO’ader): Programa gestor de arranque por defecto en Linux. Nos permite
arrancar varios sistemas operativos que tengamos instalados, al iniciar con este gestor podemos
pasarle parámetros para que el inicio del sistema Linux tenga unas determinadas características.
DAEMON (Demonio): En los sistemas tipo Unix se les conoce como daemons a los procesos
que se están ejecutando continuamente en segundo plano (background), los cuales ofrecen
algún tipo de servicio: servidor web, correo, impresora, conexión a la red, etc.
GCC (‘G’NU ‘C’ ‘C’ompiler): Compilador estándar del proyecto GNU por lo tanto de Linux.
Soporta varios lenguajes de programación gracias a unos “front-ends”: los integrados son C,
C++ y ObjectiveC, los que se pueden instalar separadamente son Ada 9X, Fortran, Modula-3 y
Pascal.
MAKE: Herramienta estándar en todos los sistemas tipo Unix, utilizada para realizar una
compilación inteligente de programas, evitando instalar lo superfluo. Para ellos se basa en la
sintaxis especifica de un archivo llamado Makefile, que configura la forma de actuar de make a
la hora de llamar al compilador que haya por defecto en el sistema, las opciones, etc.

22
GNU/LINUX Raúl López Martín
1HOTI

GNOME (‘G’NU ‘N’etwork ‘O’bject ‘M’odel ‘E’nvironment): Entorno de escritorio gráfico


que consume “relativamente” bajos recursos, basado en las librerías GTK. Ofrece una interfaz
gráfica para la utilización de programas que se ejecuten bajo este entorno.
KDE (‘K’ ‘D’esktop ‘E’nvironment): Entorno de escritorio gráfico que integra un gestor de
ventanas propio y una barra de tareas igual que GNOME, necesita bastantes recursos para su
funcionamiento. Está escrito en C++ y basado en las librerías QT+.
VI: Editor de textos muy potente, funciona en modo texto y se utilizan comandos para pasarle
las opciones. Se podría decir que es un estándar en los sistemas tipo Unix, ya que casi todas las
versiones incorporan este editor.
LYNX: Navegador compatible con los estándares W3C (World Wide Web Consortium), este
navegador se ejecuta en puro texto, por lo que no necesitamos ningún interfaz gráfico para
utilizarlo, sino que desde la consola de texto ya funciona.
SCRIPT (Guión): Es un miniprograma para la ejecución de una serie de comandos en la
consola.(archivos batch en MS-DOS).
INETD: Superdemonio que se encarga de la gestión de los servicios TCP/IP. Se le llama
superdemonio porque se encarga de controlar otros demonios.
HOWTO (COMO): Documento sobre como realizar tareas especificas.
FAQ (PUF): Frecuency Asks Questions (Preguntas Frecuentes), documento que contiene
preguntas con sus correspondientes respuestas sobre un tema especifico.
LUG (‘L’inux ‘U’sers ‘Group’): Grupos de usuarios de Linux.
SAMBA: Proyecto de compatibilidad protocolo de red, en la compartición de archivos e
impresoras, de los sistemas tipo Unix con el sistema operativo Windows.

23
GNU/LINUX Raúl López Martín
1HOTI

Direcciones de interés:

Las direcciones que contienen ‘w’ significa que tienen delante (www).

w.gnu.org => Página oficial del proyecto GNU.


w.kernel.org => Página oficial de desarrollo del kernel.
w.debian.org => Página oficial distribución Debian.
w.redhat.com => Página oficial distribución RedHat.
w.suse.com => Página oficial distribución SuSE.
w.linux-mandrake.com => Página oficial distribución Mandrake.
w.slackware.com => Página oficial distribución Slackware.
w.linux.corel.com => Página oficial distribución Corel.
w.lpi.org => Página Instituto Profesional Linux.
w.xfree86.org => Página oficial proyecto XFree86.
lhd.datapower.com => Información sobre todo el hardware soportado por Linux.
sal.kachinatech.com => Aplicaciones científicas para Linux.
w.caldera.com => Página oficial distribución Caldera.
w.tux.org
w.linuxiso.org => Página donde se pueden bajar imágenes “iso” de diferentes distribuciones
Linux.
w.linmodems.org => Documentación y drivers para los modems internos (winmodems) para
Linux.
lucas.hispalinux.es => Página oficial del proyecto LUCAS (‘L’in’U’x en ‘CAS’tellano).
w.hispalinux.es => Asociación de usuarios españoles de GNU/LINUX.
w.linux-es.com => El rincón de Linux.
w.barrapunto.com => Noticias mundo GNU.
sourceforge.net => Recursos para desarrolladores código abierto.
w.linuxspain.org => Documentación en español.
w.hispacluster.org => Documentación sobre clustering.
playstation2-linux.com => Proyecto kit de compatiblidad de Linux en la Playstation2.
w.openresources.com/es/ => Recursos para las personas relacionadas con el código abierto.
w.linuxgames.com => Juegos para Linux.
w.turbolinux.com => Página oficial distribución Turbolinux.
w.hispafuentes.com => Página oficial distribución Hispafuentes.
w.linux-laptop.net => Información sobre la instalación de Linux en portatiles.
w.linux.com => Noticias, documentación, software, etc.
w.linux.com => Igual que la anterior.
w.tldp.org => Proyecto documentación para Linux.
w.insflug.org => Contiene COMO’s traducidos al español.
w.linuxparatodos.com

24

You might also like