Vous êtes sur la page 1sur 20

YA ESTÁ AQUÍ UBUNTU 10.04, TAMBIÉN CONOCIDA COMO LUCID LYNX.

Esta nueva versión viene con un importante cambio de imagen. Ubuntu se moderniza y deja atrás su color
café. Con una interfaz muy amigable para todo aquel que quiera interiorizarse en en mundo de linux Ubuntu
es un sistema operativo y es una distribución GNU/Linux que está basada en Debian. Es software libre y de
código abierto (open source), lo que viene a decir que es gratis y modificable, pudiéndose distribuir después
de su personalización o modificación.

Guía rápida para novatos

Cómo instalar Ubuntu 10.04 Si decidieron instalar Ubuntu les recomiendo que antes de hacer nada lean
atentamente todo el artículo, ya se que es largo y algunos están impacientes, pero los ayudará a comprender
mejor todo y les evitará tener problemas que luego tendrán difícil solución.

Como siempre que instalemos un Sistema Operativo debemos hacer copia de seguridad de todos nuestros
datos.

Bueno si se animaron a probar Ubuntu, con el cd live poden probarlo, ver si nuestro hardware es reconocido e
instalado sus drivers, ver sus programas y su apariencia, en fín probarlo pero "sin instalar nada". Así si no nos
gusta, simplemente sacamos el disco, lo tiramos a la basura y aquí no ha pasado nada.

INSTALAR UNETBOOTIN

Unetbootin permite la instalación de Ubuntu desde un pendrive o memoria usb para aquellos ordenadores que
no tienen lector de cd.

Para añadir los repositorios e instalar Unetbootin:


Edita el archivo sources.list con el comando:
sudo gedit /etc/apt/sources.list
Añade al final del archivo las siguientes líneas:
deb http://ppa.launchpad.net/gezakovacs/ppa/ubuntu lucid main
deb-src http://ppa.launchpad.net/gezakovacs/ppa/ubuntu lucid main
Nota: Para otras versiones cambiar la palabra lucid por la que tengais (intrepid, karmic...)

Abre una terminal y añade la llave GPG con el comando:


sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FC91AE7E
Actualiza los repositorios con el comando:
sudo apt-get update
Y ya podemos instalar "Unetbootin" con el comando:
sudo aptitude install unetbootin

COMO PARTICIONAR EL DISCO DURO PARA INSTALAR UBUNTU

Antes de instalar Ubuntu Linux, y si además queremos que conviva con otros sistemas operativos,
necesitaremos realizar una serie de particiones. Este es uno de los principales inconvenientes con los que
tropieza un usuario novel y que intentaremos solventar en esta pequeña guía. Uno de los inconvenientes que
nos encontramos es que, cuando preguntamos a alguien cuántas particiones debemos hacer, cada uno nos
dice las que él considera, con el tamaño que cree oportuno, particiones primarias, secundarias (lógicas), etc.
En esta guía se va a tratar de exponer todo para los usuarios principiantes, para que les sea fácil cambiar de
distribución o, si no les gusta Linux, eliminar sus particiones de forma fácil y segura. Recomendamos leer
primero todo el artículo y luego proceder a particionar el disco.

TIPOS DE PARTICIONES Y SISTEMAS DE ARCHIVOS

Particionar un disco duro es realizar una división en él de modo que, a efectos prácticos, el sistema operativo
crea que tienes varios discos duros, cuando en realidad sólo hay un único disco físico dividido en varias
partes. De este modo, se pueden modificar o borrar particiones sin afectar a los demás datos del disco.

Las particiones básicas se llaman primarias y puede haber a lo sumo 4. Esto puede ser suficiente para
nuestros intereses. Como a veces no es así, se crearon las particiones extendidas que pueden albergar otras
particiones dentro, llamadas lógicas.

Los sistemas de archivos indican el modo en que se gestionan los archivos dentro de las particiones. Según
su complejidad tienen características como previsión de apagones, posibilidad de recuperar datos, indexación
para búsquedas rápidas, reducción de la fragmentación para agilizar la lectura de los datos, etc. Hay varios
tipos, normalmente ligados a sistemas operativos concretos. A continuación se listan los más representativos:

* fat32 o vfat: Es el sistema de archivos tradicional de MS-DOS y las primeras versiones de Windows. Por esta
razón, es considerado como un sistema universal, aunque padece de una gran fragmentación y es un poco
inestable.
* ntfs: Es el nuevo sistema de Windows, usado a partir del 2000 y el XP. Es muy estable. El problema es que
es privativo, con lo cual otros sistemas operativos no pueden acceder a él de manera transparente. Desde
Linux sólo se recomienda la lectura, siendo la escritura en estas particiones un poco arriesgada. Hoy por hoy
con Ubuntu es completamente seguro la escritura y lectura.
* ext2: Hasta hace poco era el sistema estándar de Linux. Tiene una fragmentación bajísima, aunque es un
poco lento manejando archivos de gran tamaño.
* ext3: Es la versión mejorada de ext2, con previsión de pérdida de datos por fallos del disco o apagones. En
contraprestación, es totalmente imposible recuperar datos borrados. Es compatible con el sistema de archivos
ext2. Actualmente es el más difundido dentro de la comunidad GNU/Linux y considerado el estándar de facto.
* ext4: nace para implementar algunas nuevas características que el ext3, dado que se hacía imposible
incorporarlas al propio ext3. Lo tenemos como opcional en Jaunty 9.04 y como predeterminado a partir de
Karmic 9.10.
* ReiserFS: Es el sistema de archivos de última generación para Linux. Organiza los archivos de tal modo que
se agilizan mucho las operaciones con éstos. El problema de ser tan actual es que muchas herramientas (por
ejemplo, para recuperar datos) no lo soportan.
* swap: Es el sistema de archivos para la partición de intercambio de Linux. Todos los sistemas Linux
necesitan una partición de este tipo para cargar los programas y no saturar la memoria RAM cuando se
excede su capacidad. En Windows, esto se hace con el archivo pagefile.sys en la misma partición de trabajo,
con los problemas que conlleva.

Ya se ha comentado que las particiones son como discos duros independientes, y así aparece en Windows.
Cabe recordar que en Linux no existe el concepto de unidad (C:, D:, etc.) sino que las particiones se montan
en el árbol de carpetas. Eso no nos debe preocupar mucho. Sólo comentar que la carpeta raíz de ese árbol se
denota con / y que las particiones se suelen montar en la carpeta /media.

TAMAÑO DE LAS PARTICIONES

Tenemos un disco duro con mucho espacio pero no sabemos cómo administrarlo. Puesto que a cada partición
se le va a dar un uso diferente, cada una tendrá un tamaño diferente. En este ejemplo, particionaremos el
disco de tal modo que podamos instalar el sistema operativo Windows en una partición separada, que es la
configuración más habitual.

Para empezar, necesitamos la partición para la memoria de intercambio, que será de tipo swap. Es una
costumbre extendida que ésta sea del doble de tamaño que la memoria RAM disponible. Por ejemplo, si
tenemos 256 MB de memoria RAM, nuestra partición de intercambio será de 512 MB. Sin embargo esto
únicamente es aplicable a tamaños de memoria de hasta 1GB. Si tenemos más memoria (según Russell
Coker) tenemos que utilizar la siguiente regla: entre 2GB y 4GB, utilizaremos como tamaño del swap la mitad
del valor de la RAM; mientras que si tenemos más de 4 GB, utilizaremos una swap de sólo 2GB.

La partición donde instalaremos Ubuntu (/) debe tener al menos 2 GB. Si pretendemos instalar más
programas es recomendable darle un poco más de espacio. Para un uso normal, unos 10 GB estarán bien.
Por otra parte tendremos la partición de Windows. Éste ocupa más o menos 10 GB (sin programas ni nada),
pero si piensa instalar juegos, programas y demás, sea generoso con el tamaño y asígnele unos 20 GB como
mínimo.

Finalmente, es recomendable guardar los archivos personales (documentos, imágenes, películas, etc.) en una
partición aparte. Así, si en algún momento quiere reinstalar Ubuntu desde cero, podrá formatear sin miedo y
sin perder la configuración de sus programas. Esta partición suele montarse en /home. Su tamaño depende
principalmente de cuántos usuarios usen el sistema y del volumen de datos que almacenen.
Un ejemplo es el siguiente (suponiendo que tenemos un disco de 50 Gb de capacidad):

* Windows: 10 Gb, para el Sistema Operativo de Windows.


* /: 10 GB, para el sistema operativo de Ubuntu.
* swap: 512 Mb, suponiendo que tenemos 256 Mb de RAM.
* /home: 14 Gb, para datos, música, configuraciones, etc de Ubuntu.
Y como alternativa:
* Ntfs o Fat32: 15 Gb, para compartir una partición con Windows como vemos ahora.

COMPARTIR UNA PARTICION CON WINDOWS

En esta sección se explica cómo crear una partición de manera que pueda ser montada en Ubuntu y, a la vez,
ser detectada por Windows (ya que windows no detecta las particiones ext y swap de Linux). Para esto,
usaremos el sistema de archivos vfat O NTFS, esto es, el sistema FAT32 de las primeras versiones de
Windows o el NTFS de las actuales. FAT32 es un poco lento y no permite particiones muy grandes, por eso
es recomendable NTFS.

Como ahora necesitamos una partición más, tendremos que hacer uso de las particiones extendidas.
Siguiendo el proceso anterior de particionamiento, ahora el esquema podría ser el siguiente:

* Partición primaria 1: ntfs, para Windows XP


* Partición primaria 2: ext3 o ext4, para la raíz /
* Partición primaria 3: partición extendida
* Partición lógica 4: linux-swap, para la memoria de intercambio
* Partición lógica 5: ext3 o ext4, para los datos personales (/home)
* Partición lógica 6: NTFS, para los datos que queramos compartir entre los dos sistemas operativos.

PREPARACION DE LA INSTALACION Y PARTICIONAMIENTO

Lo primero que debemos hacer antes de instalar Ubuntu (y particionar el disco) es desfragmentar el disco duro
con el sistema operativo que tengamos instalado. Con esta operación conseguiremos que los diferentes
fragmentos de los archivos se junten y sea más improbable su pérdida en el proceso de particionamiento.

A continuación es conveniente realizar copias de seguridad de todos los archivos importantes que tengamos
en el disco duro ya que al particionarlo podemos perder esa información.

Con todo esto ya estamos preparados para instalar Ubuntu Linux junto con otro sistema operativo.

EN QUE MOMENTO PARTICIONAR EL DISCO

El mejor momento para particionar el disco es durante la instalación, ya que la herramienta de particionado
comprueba si existe una partición con la etiqueta / para instalar Ubuntu y otra swap para la memoria de
intercambio. Para hacer las particiones, deberemos seguir con la instalación hasta que tengamos las
siguientes 3 opciones (también es posible ejecutar el programa gParted, ubicado en el menú Sistema-
>Administración->Editor de particiones):
* Formatear todo el disco duro.
* Espacio libre contiguo.
* Particionamiento manual.
La última es la opción que debemos elegir, y una vez allí haremos las particiones del disco duro
(redimensionando la partición que ya tenemos con el otro sistema operativo), elegiremos el sistema de
ficheros (vfat, ext2, ext3, etc.) y el punto de montaje.

Primero crearemos una nueva partición para la raíz. Elegimos el tamaño y el tipo de sistema de ficheros, en
este caso ext3 o ext4. Algunas placas base no pueden arrancar el gestor de arranque si éste se encuentra
ubicado después del cilindro 1024 del disco duro (aproximadamente 4,7 GB), así que crearemos primero esta
partición, ya que es en la que se encuentra el gestor de arranque, y le asignaremos el punto de montaje /.

A continuación realizaremos la misma operación (creando otra partición) para la memoria de intercambio
(swap) y elegiremos el tipo linux-swap'.

Finalmente procederemos de la misma forma creando otra partición para los datos personales. Elegiremos el
tamaño y el tipo, al igual que la anterior, ext3 o ext4 y le asignaremos el punto de montaje /home.

NOTA ADVERTENCIA: Asegúrese de que ha marcado para formatear las nuevas particiones, pero no así las
particiones que quiere conservar.

Una vez hayamos hecho todo esto, al pulsar el botón Finalizar será cuando creemos las particiones, así que
no hay problema en experimentar o equivocarse.

Finalmente debemos mencionar que una vez instalado Ubuntu, si tenemos dos (o más) sistemas operativos,
al iniciar el ordenador el gestor de arranque nos permitirá elegir cuál sistema operativo iniciar. Este gestor de
arranque se llama GRUB, y es instalado automáticamente (para más información, véase GRUB).

NOMBRE DE LAS PARTICIONES Y DISPOSITIVOS EN LINUX

Como nota final vamos a mostrar cómo se puede acceder a las particiones del disco duro desde el sistema de
archivos, es decir, vamos a ver los nombres que tienen asignados las diferentes particiones en Linux (nos
resultará de utilidad conocer estos nombres cuando particionemos):

Disqueteras
* Primera disquetera: /dev/fd0 (en Windows sería la disquetera A
* Segunda disquetera: /dev/fd1

Discos duros
(en general: /dev/hdx#, donde x es el disco y # es la partición)
1. Primer disco duro: (todo el disco) /dev/hda
1.1. Particiones primarias
* Primera partición primaria: /dev/hda1
* Segunda partición primaria: /dev/hda2
* Tercera partición primaria: /dev/hda3
* Cuarta partición primaria: /dev/hda4
1.2. Particiones lógicas
* Primera partición lógica: /dev/hda5
* Segunda partición lógica: /dev/hda6
* Sucesivamente: /dev/hda#
2. Segundo disco duro: (todo el disco) /dev/hdb
2.1. Particiones primarias
* Primera partición primaria: /dev/hdb1
* Segunda partición primaria: /dev/hdb2
* Tercera partición primaria: /dev/hdb3
* Cuarta partición primaria: /dev/hdb4
2.2. Particiones lógicas
* Primera partición lógica: /dev/hdb5
* Segunda partición lógica: /dev/hdb6
* Sucesivamente: /dev/hdb#

Discos SCSI
* Primer disco SCSI: /dev/sda
* Segundo disco SCSI: /dev/sdb
* Sucesivamente ...
* Primer CD-ROM SCSI: /dev/scd0, también conocido como /dev/sr0

Les dejo un video tutorial que encontre en youtube


http://www.youtube.com/watch?v=http://www.youtube.com/watch?v=KoemuPikgYo
http://taringa.net/posts/linux/5463750/MegaPost--Ubuntu-10_04-Lucid-Lynx-+-guia-para-novato-parte-2.html
COMANDOS BÁSICOS PARA UBUNTU

1. INTRODUCCIÓN
Un intérprete de comandos es un programa que toma la entrada del usuario, por ejemplo las órdenes que
teclea, y la traduce a instrucciones.

Podemos compararlo con el COMMAND.COM de MS-DOS, que realiza exactamente la misma tarea.
El intérprete de comandos (Shell) será una de las interfaces con Linux, y el X Window será otra interfaz que
nos permite ejecutar órdenes usando el ratón y el teclado. Cuando accedemos al sistema entramos por
defecto en el entorno gráfico de X Windows, el KDE.

* Para pasar al modo texto (intérprete de comandos) desde el modo gráfico hemos de pulsar las
combinaciones: ctrl+alt+f1 o bien con: f2 f3 f4 f5 f6

Esto hace que el sistema salga del modo gráfico y acceda a alguna de las seis consolas virtuales de Linux, a
las cuales también se puede acceder cuando se arranca en modo de texto.

* Para volver al modo gráfico hay que presionar ctrl+alt+f7 o ctrl+alt+f8 (Según la sesión en modo gráfico a la
que deseemos regresar).

La segunda forma es más cómoda y menos radical, permitiendo acceder al shell desde el mismo entorno
gráfico. Para esto hay que abrir un programa llamado terminal o consola, el kconsole (en el entorno KDE), o
los xterm o gnome-terminal (en GNOME). Si estamos usando el entorno por defecto (GNOME), bastará con
obtener el menú contextual del escritorio y escoger la opción correspondiente.

Además de ser un intérprete interactivo de los comandos que tecleamos, el Shell es también un lenguaje de
programación, el cual nos permite escribir guiones que permiten juntar varias órdenes en un fichero. Similar a
los ficheros batch de MS-DOS.

En Unix existen varios tipos de intérpretes de comandos. Los dos más importantes son:

‡ Sh o Bourne shell: utiliza una sintaxis similar a la usada en los primeros sistemas Unix.
‡ Csh o C shell: utiliza una sintaxis diferente a la de sh, similar al lenguaje de programación C.

En Linux también disponemos de varios intérpretes de comandos, con algunas diferencias respecto a los de
Unix. Los más usados son:

‡ Bash o Bourne Again Shell: es equivalente a Bourne shell, pero con muchas características avanzadas de la
C shell. Cualquier guión (script) escrito para Bourne funcionará en bash.

‡ Tsch (exTended C shell): es una versión extendida del C original.

Sólo aparecerán diferencias entre unos y otros a la hora de escribir guiones. Es decir, en lo que respecta a los
comandos usuales es indiferente el tipo de intérprete de comandos usado.

2. NOCIONES BÁSICAS
En una terminal:
* Las aplicaciones con nombres compuestos se escriben con guión entre las palabras (ej. compizconfig-
settings-manager).
* Para los espacios en blanco se pone un guión inferior (ej. nombre_archivo)
* Cuando queremos poner varios comandos seguidos, para ejecutarlos a la vez, dejamos un espacio entre
ellos, nunca una coma (ej. avidemux k3b kde-i18n-es k3b-i18n).

Cuando tecleamos una orden, el intérprete de comandos sigue una serie de pasos:
1. Busca el nombre de la orden y comprueba si es una orden interna.
2. Comprueba si la orden es un alias, es decir, un nombre sustitutorio de otra orden.
3. Si no se cumple ninguno de los casos anteriores, busca el programa correspondiente y lo ejecuta.
4. Si el intérprete de comandos no puede encontrar la orden que hemos tecleado, muestra un mensaje de
error.

El formato general de una orden en Linux es:


comando [-opciones] [argumentos]

A la hora de introducir los comandos hay que tener en cuenta las siguientes características:
‡ Los comandos hay que teclearlos exactamente.
‡ Las letras mayúsculas y minúsculas se consideran como diferentes (Case Sensitive).
‡ En su forma más habitual (los shells de Bourne o de Korn), el sistema operativo utiliza un signo de $ como
prompt para indicar que está preparado para aceptar comandos, aunque este carácter puede ser fácilmente
sustituido por otro u otros elegidos por el usuario. En el caso de que el usuario acceda como administrador
este signo se sustituye por #.
‡ Cuando sea necesario introducir el nombre de un fichero o directorio como argumento a un comando, Linux,
permite escribir las primeras letras del mismo y realiza un autorrellenado al presionar la tecla del tabulador. Si
no puede distinguir entre diversos casos rellenará hasta el punto en el que se diferencien. Por ejemplo,
supongamos una carpeta con los siguientes directorios:
Programas
Documentos_proyecto
Documentos_privados
Al escribir cd Pr Linux rellenará el resto del contenido hasta escribir cd Programas. Por el contrario al escribir
cd D escribirá cd Documentos_

3. COMANDOS ESPECÍFICOS
* Para reconfigurar las X (gráfica):
sudo dpkg-reconfigure xserver-xorg
y reiniciamos las X con:
sudo reboot
* Para saber que tarjeta gráfica tengo instalada:
lspci | grep -i vga
* Para saber qué modelo de tarjeta de sonido tengo:
lspci | grep -i audio o aplay ±l
* Para saber que modelo de chip tiene la tarjeta de sonido:
cat /proc/asound/card0/codec#* | grep Codec
* Para saber todo el hardware y los controladores que tenemos instalados:
lspci ±vv o sudo lshw
* Para saber el listado de módulos cargados de sonido:
lsmod | grep snd
* Para saber los dispositivos que hay conectados por usb:
lsusb

4. COMANDOS BÁSICOS
* ls -> list: listar. Nos muestra el contenido de la carpeta que le indiquemos después.
Es el primer comando que todo linuxero debe aprender. Por ejemplo. Si queremos que nos muestre lo que
contiene /etc: $ ls /etc. Si no ponemos nada interpretará que lo que queremos ver es el contenido de la
carpeta donde estamos actualmente: $ ls. Además acepta ciertos argumentos que pueden ser interesantes.

Para mostrar todos los archivos y carpetas, incluyendo los ocultos: $ ls -a


Para mostrar los archivos y carpetas junto con los derechos que tiene, lo que ocupa, etc: $ ls -l

Además se pueden solapar los argumentos. Si quisiéramos mostrar los archivos de la misma forma que antes,
pero que muestre también los ocultos: $ ls ±la
* cd -> change directory: cambiar directorio.
Podemos usarlo con rutas absolutas o relativas. En las absolutas le indicamos toda la ruta desde la raíz (/).
Por ejemplo, estemos donde estemos, si escribimos en consola«$ cd /etc/apt «nos llevará a esa carpeta
directamente. Del mismo modo si escribimos« $ cd / «nos mandará a la raíz del sistema de ficheros.

Las rutas relativas son relativas a algo, y ese algo es la carpeta donde estemos actualmente. Imaginad que
estamos en /home y queremos ir a una carpeta que se llama temporal dentro de vuestra carpeta personal.
Con escribir« $ cd tu_carpeta/temporal «nos situará allí. Como véis hemos obviado el /home inicial ya que si
no lo introducimos toma como referencia el directorio donde estamos, que es ese. ¿Y qué sucede si
escribimos tan sólo« $ cd Sí, sólo ³cd´. Esto lo que hace es que te lleva a tu carpeta personal directamente y
estemos donde estemos. Es algo realmente muy práctico, muy simple y que no todos conocen.

* mkdir -> make directory: hacer directorio. Crea una carpeta con el nombre que le indiquemos.
Nuevamente podemos usar rutas absolutas y relativas. Podemos indicarle toda la ruta que le precede al
directorio que queremos crear, o si estamos ya en la carpeta que lo va a contener basta con poner tan sólo el
nombre: $ mkdir /home/tu_cuenta/pepino Si ya estamos en /home/tu_cuenta« $ mkdir pepino

* rm -> remove: borrar. Borra el archivo o la carpeta que le indiquemos.


Como antes se puede indicar la ruta completa o el nombre del archivo. Esto a partir de ahora lo vamos a
obviar, creo que ya ha quedado claro con los dos comandos anteriores.

Para borrar un archivo: $ rm nombre_archivo

Para borrar una carpeta vacía: $ rm nombre_carpeta

Para borrar una carpeta que contiene archivos y/o otras carpetas que pueden incluso contener más:
$ rm -r nombre_carpeta

Otras opciones: ³-f´ no te pide una confirmación para eliminar o ³-v´ va mostrando lo que va borrando.

* cp -> copy: copiar. Copia el archivo indicado donde le digamos.


Aquí podemos también jugar con las rutas, tanto para el fichero origen, como en el del destino. También
podéis poner el nombre que le queréis poner a la copia. Por ejemplo, si estuviéramos en /etc/X11 y
quisiéramos hacer una copia de seguridad de xorg.conf en nuestra carpeta personal:

$ cp xorg.conf /home/tu_carpeta/xorg.conf.backup

* mv -> move: mover.

Es igual que el anterior, sólo que en lugar de hacer una copia, mueve directamente el archivo con el nombre
que le indiquemos, puede ser otro distinto al original:

$ mv /etc/pepino.html /home/tu_carpeta/ese_pepino.html

Otro uso muy práctico que se le puede dar es para renombrar un archivo. Basta con indicar el nuevo nombre
en el segundo argumento con la misma ruta del primero. En este ejemplo suponemos que ya estamos en la
carpeta que lo contiene:

$ mv pepino.html ese_pepino.html

* find -> find: encontrar. Busca el archivo o carpeta que le indiques:


$ find / -name pepino

El comando anterior buscaría en todos los sitios las carpetas y archivos que se llamen pepino. Si tuviéramos
la seguridad de que se encuentra en /var por ejemplo, se lo indicaríamos:

$ find /var -name pepino


Si no estamos muy seguros del nombre podemos indicárselo con comodines. Supongamos que el nombre de
lo que buscamos contiene ³pepi´, en la misma carpeta de antes:

$ find /var -name *pepi*


Tiene otras opciones. Por ejemplo podemos decirle que encuentre los archivos/carpetas de más de 1500 KB:

$ find / -size +1500


O los archivos/carpetas contienen el nombre ³pepi´ y tienen menos de 1000 KB:

$ find / -name *pepi* -size -1000

* clear -> clear: despejar. Limpia la pantalla/consola quedándola como si acabáramos de abrirla.

$ clear

* ps -> process status: estado de los procesos.

Nos muestra lo que queramos saber de los procesos que están corriendo en nuestro sistema. Cada proceso
está identificado con un número llamado PID. Si hacemos«
$ ps -A
«nos mostrará un listado de todos los procesos, su PID a la izquierda y su nombre a la derecha. Si queremos
más información:

$ ps aux

* kill -> kill: matar. Elimina el proceso que le indiquemos con su PID:

$ kill
En ocasiones el proceso no ³muere´ del todo, pero se le puede forzar al sistema para que lo mate con
seguridad del siguiente modo:

$ kill -9

* sudo -> super-user do: hacer como superusuario.

La cuenta de usuario en Ubuntu es relativamente normal. Tiene derechos de administrador a medias. Me


explico, los tiene, pero cada vez que se haga algo importante y de riesgo para el sistema, hay que hacerlo
mediante el prefijo ³sudo´ y escribiendo después la contraseña.
Por ejemplo, algo que hemos hecho muchas veces en los tutoriales es hacer una copia de seguridad del
fichero xorg.conf. Éste está localizado en la carpeta /etc/X11 y ahí ningún usuario puede hacer modificaciones
o borrar nada si no es el administrador o tiene derechos como tal, gracias a sudo. Por eso hacíamos siempre:

$ sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf


Siempre que necesitemos hacer un apt-get/aptitude update o install y acciones de este tipo, tendremos que
poner antes el ³sudo´

* passwd -> password: contraseña.


Con este comando podremos cambiar la contraseña de nuestra cuenta. Primero nos pedirá la contraseña
actual como medida de seguridad. Después nos pedirá que introduzcamos dos veces seguidas la nueva
contraseña.

$ passwd

* su -> super-user: superusuario. (aunque el comando su suele relacionarse con "super user" realmente
parece ser que viene de "switch user" o "substitute user"

Mediante su podremos loguearnos como superusuario. Tras escribirlo nos pedirá la contraseña de root y
estaremos como administrador. Podremos hacer todo lo que queramos.

$ su
Este comando también nos permite hacer login con otra cuenta distinta. Por ejemplo, imaginemos que
tenemos otra cuenta, además de root y la nuestra, llamada ³invitado´. Para hacer login como tal bastaría con
poner:

$ su invitado
y después escribir la contraseña de esa cuenta.

* sudo passwd -> podréis cambiar la contraseña de root (la del super-usuario).

No es un comando propiamente dicho (es la unión de 2) pero es interesante que lo conozcáis.

$ sudo passwd

* apt -> advanced packets tool: herramienta avanzada de paquetes.

Es uno de los comandos más útiles que se han desarrollado en los sistemas GNU/Linux debian o basados en
esta distro. Nos permite comprobar actualizaciones, actualizar todo el sistema. También nos ofrece
funcionalidad para buscar, descargar e instalar paquetes con una sola orden.
Tenemos variantes, las más usadas son las siguientes:

$ apt-cache search nombre_paquete


Busca nombre_paquete para ver si existe literal o aproximadamente ofreciéndonos los paquetes que pudieran
ser en caso de que hayamos puesto un nombre aproximado.

$ apt-get update
Actualiza los repositorios que son los que contienen los paquetes. Los repositorios son como las direcciones
que contienen nuestros paquetes. apt-get update lo que hace es actualizar el listado de todos esos paquetes,
con la dirección de dónde obtenerlos para que a la hora de hacer la búsqueda y su posterior descarga sea
más rápida haciéndolo en nuestro ordenador.

$ apt-get upgrade
Actualiza nuestro sistema con todas las posibles actualizaciones que pudiera haber. La actualización no se
realiza sólo sobre el propio sistema operativo, sino también sobre las aplicaciones que estén contenidas en
los repositorios. Una útil forma de estar siempre al día.

$ apt-get install nombre_paquete


Localizado el nombre del paquete que queremos descargar e instalar, este comando se encargará del
proceso. Buscará en nuestro índice (el que se crea con update) de dónde tiene que descargarse el paquete, lo
hace y posteriormente lo instala.

$ apt-get remove [--purge] nombre_paquete


Elimina el paquete especificado del sistema. Damite el argumento ³±purge´ (corchetes = opcional) para que
borre también los ficheros de configuración.
$ apt-get autoremove
Elimina paquetes que han quedado inservibles tras realizar algún apt-get remove, los llamados huérfanos.
Normalmente tras hacer este último te avisa en un mensaje que lo realices.
Todos estos comandos necesitan tener privilegios de administración, así que si no los usáis como root, debéis
agregar primero el conocido ³sudo´.

* aptitude -> aptitude: aptitud, habilidad. En el fondo juega con las siglas de apt para crear aptitude.

Es una versión mejorada de apt. Si os habéis fijado en todos los manuales y entradas donde había un proceso
de instalación he usado aptitude en lugar de apt. El segundo es quizá el más extendido al ser el que vio la luz
primero.
aptitude nació como un front-end de apt, es decir, como una especie de aplicación gráfica y en modo texto
para realizar todo lo que hace apt. Pero lo cierto es que sus características son mejores.
apt cuando instala algo te puede realizar una sugerencia para que instales algo más que te podría venir bien,
pero no lo hace. Hay programas que a la vez usan otros para algunas de sus funciones u opciones. apt no
instalaría los segundos, como mucho te avisaría. Sin embargo aptitude sí que lo instalará porque sabe que de
alguna forma es indispensable para el que has pedido.
De la misma forma, si con apt instalas luego ese programa que es usado por otro, cuando desinstalas el
principal, no se desinstalará el secundario, aunque éste ya no tenga mucho sentido que esté instalado, y lo
mismo sucede con librerías. aptitude está capacitado para desinstalar lo que él mismo ha instalado como
recomendación. Te deja el sistema más limpio tras las desinstalaciones.
Para abrir el interfaz gráfico de aptitude, tan sólo hay que teclearlo:

$ aptitude
Sin embargo, también se puede usar exactamente igual que apt, pero con las características que he
comentado de aptitude:

$ aptitude search nombre_paquete


$ aptitude install nombre_paquete
$ aptitude remove nombre_paquete
$ aptitude purge nombre_paquete
$ aptitude update
$ aptitude upgrade
Y al igual que antes, necesitaréis usarlo con el sudo delante si no estáis como administrador.

* dpkg -> depackage: despaquetar.

Los paquetes cuando se instalan sufren un proceso de despaquetaje. En el fondo un paquete .deb contiene
una serie de scripts de pre-instalación, post-instalación y los archivos en cuestión del paquete.
Este comando lo usaremos para instalar un paquete .deb que ya tengamos descargados en nuestro sistema.
En muchas ocasiones hay una aplicación que no está en los repositorios y nos hemos bajado el .deb para
instalarlo con el interfaz gráfico que corresponda (GDebi en el caso de GNOME).
En el fondo estas interfaces gráficas están basadas en dpkg. Si queremos instalar un paquete ya descargado
mediante consola usaremos el argumento µ-i¶ (i=install):

$ dpkg -i nombre_paquete
Para desinstalarlo µ-r¶ (r=remove):

$ dpkg -r nombre_paquete
Para desinstalar el paquete y los ficheros de configuración ³±purge´ (purgar):

$ dpkg -r ±purge nombre_paquete

* Alien -> Alien: de otro país, de otro planeta.


Aunque Debian -y por extensión Ubuntu- dispone de una ingente cantidad de paquetes en sus repositorios,
puede que alguien tenga algún problema en encontrar una aplicación específica empaquetada como le
interesa aunque ha visto el paquete que quiere para otras distros.
alien es bastante práctico para estas situaciones ya que nos permite transformar un paquete de un gestor de
paquetes determinado en otro. Por ejemplo podemos pasar de un .deb (Debian) a un .rpm (Red Hat) y
viceversa. Las extensiones soportadas son:
* deb (Debian)
* rpm (Red Hat)
* slm (Stampede)
* tgz (Slackware)
* pkg (Solaris)
Su uso es sencillo. Lo que debemos saber es el argumento que transformará el paquete original en la
extensión objetivo:
* ³±to-deb´ o ³-d´ para transformar a .deb
* ³±to-rpm´ o ³-r´ para transformar a .rpm
* ³±to-tgz´ o ³-t´ para transformar a .tgz
* ³±to-pkg´ o ³-p´ para transformar a .pkg
* ³±to-slp´ para transformar a .slp
Como ejemplo, pasaremos un supuesto paquete de Red Hat llamado ³pepino.rpm´ a ³pepino.deb´:

$ alien -d pepino.rpm

* man -> manual: manual. Es otro de los comandos de gran potencia en linux.

Normalmente queda programa o comando viene con un archivo de ayuda muy completo sobre su uso y sus
argumentos. Cuando desconozcáis cómo se usa y qué argumentos tiene un comando o aplicación tan sólo
tenéis que escribir en consola:

$ man nombre
En ocasiones la información que nos ofrece man puede llegar a ser excesiva. Casi todos los comandos y
aplicaicones aceptan el argumento ³±help´ para que muestre cierta ayuda más resumida. Por ejemplo con
aptitude:

$ aptitude ±help
Todos los comandos que os he mostrado tienen muchos más argumentos. Os he puesto los más usados o
necesarios, así que si hay alguno que os interesa particularmente conocer más de él, tenéis ³man´ o ³±help´
para obtener más detalles.

* passwd - Podemos cambiar la contraseña empleando la orden passwd.

Nos pedirá la contraseña anterior (current) y la nueva. Volverá a pedir una segunda vez la nueva para
validarla. El usuario root podrá cambiar la contraseña de cualquier otro usuario. Sin embargo, los usuarios no
privilegiados solamente podrán cambiar su propia clave. Sintaxis:
passwd

* date - Muestra por pantalla el día y la hora, permitiendo, además, el cambio de la misma. Sintaxis:

date [opcion][formato]

* cal - Muestra el calendario del mes o año actual actual. Sintaxis:

cal [mes][año]
Por ejemplo,
‡ cal muestra el calendario del mes actual.
‡ cal 1949 muestra el calendario del año 1949.
‡ cal 05 1945 muestra el calendario de Mayo de 1949.
* who - Indica qué usuarios tiene el ordenador en ese momento, en qué terminal están y a qué hora iniciaron
la sesión. Sintaxis

who

* whoami - Indica el usuario que está trabajando en la terminal actual. Sintaxis:

whoami

* finger - Presenta una información completa de los usuarios conectados a la red. Sintaxis:

finger [-bfilpqsw][login1 login2]

* uname - Proporciona el nombre del sistema en el que se está trabajando. Sintaxis:

uname [-opciones]
Como opciones principales tenemos:

-a indica, además, la versión, fecha y tipo de procesador.


-m indica, además, el tipo de de procesador.
-r indica, además, la versión.
-v indica, además, la fecha.

* logname - Indica el nombre del usuario conectado al sistema (el que ha hecho login). Sintaxis:

logname

* info - Proporciona ayuda resumida acerca de un comando en cuestión. Sintaxis:

info [comando]

* clear - Este comando se utiliza para limpiar la pantalla. Sintaxis:

clear

* echo - Muestra por pantalla los argumentos que le pasamos. Sintaxis:

echo [argumento1] [argumento2] ... [argumentoN]

* alias - Asigna un nombre o etiqueta a la ejecución de un comando con sus opciones. Sintaxis:

alias etiqueta=¶orden¶
La orden alias solamente, muestra todos los alias que hay creados. La orden unalias elimina el alias
especificado.

5. CARACTERES COMODÍN O WILDCARDS

Una característica importante de la mayoría de los intérpretes de comandos en Linux es la capacidad para
referirse a más de un fichero.
Una forma de hacerlo es utilizando caracteres especiales llamados comodines.
Al igual que en MS-DOS, el comodín * hace referencia a cualquier carácter o cadena de caracteres en el
nombre del fichero. El intérprete de comandos sustituirá el asterisco por todas las combinaciones posibles
provenientes de los ficheros en el directorio al cual nos estamos refiriendo. Se dice que está realizando una
expansión de comodines.
El carácter ? es también comodín, aunque solamente expande un carácter.
Con ambos caracteres existe una excepción. No afectarán a aquellos ficheros que comienzan por un punto, y
que son ocultos para órdenes como ls.
Además, podemos utilizar los corchetes para referirnos a un conjunto de caracteres o
bien un rango de caracteres ASCII.
Ejemplos:
$ls *n* muestra todos los archivos y directorios, del directorio actual, que contienen el carácter n
$ls * muestra todos los archivos y directorios del directorio actual
$ls tm? muestra todos los archivos y directorios del directorio actual que comienzan por tm y contienen tres
caracteres
$ls tabla[123]a muestra todos los archivos y directorios del directorio actual que comienzan por tabla, seguidos
del carácter 1, 2 ó 3, y terminan en a
$ls ??base[A-Z][5-9]* muestra todos los archivos y directorios del directorio actual que comienzan con dos
caracteres cualesquiera, seguidos de la cadena base, a continuación una letra mayúscula, seguida de un
número del 5 al 9 y por último una cadena de caracteres (uno, varios o ninguno)

6. ÓRDENES RELACIONADAS CON DIRECTORIOS

Directorio Personal
Como se ha visto anteriormente el directorio personal es un directorio con un determinado nombre asignado a
un usuario. Los directorios personales habitualmente son subdirectorios de /home (en algunos casos se utiliza
mnt, u otro subdirectorio de orden inferior).
Generalmente el nombre coincide con el del nombre de usuario, aunque puede no ser así, y varios usuarios
pueden estar trabajando en el mismo directorio. Cada usuario de Linux puede crear una estructura en árbol de
subdirectorios y archivos tan compleja como desee bajo su directorio personal pero normalmente nunca fuera
de él.
ls Permite mostrar el contenido de un directorio. ls Muestra los nombres de los ficheros y
subdirectorios contenidos en el directorio en el que se está. Sólo se obtienen los nombres de
los ficheros, sin ninguna otra información. Sintaxis:

ls [-opciones][fichero]
-a Muestra todos los ficheros incluyendo algunos que ordinariamente están ocultos para el usuario (aquellos
que comienzan por un punto). Recordemos que el fichero punto . indica el directorio actual y el doble punto ..
el directorio padre, que contiene, al actual.
-l Esta es la opción de lista larga: muestra toda la información de cada fichero incluyendo: protecciones,
tamaño y fecha de creación o del último ambio introducido,...
-c Muestra ordenando por día y hora de creación.
-t Muestra ordenando por día y hora de modificación.
-r Muestra el directorio y lo ordena en orden inverso.
-R Lista también subdirectorios.
ls subdir Muestra el contenido del subdirectorio subdir.
-l filename Muestra toda la información sobre el fichero filename.
--color Muestra el contenido del directorio coloreado.
Las opciones anteriores pueden combinarse. Por ejemplo:
ls -cr Muestra el directorio ordenando inversamente por fechas. El comando ls admite los caracteres de
sustitución o * y ?. Por ejemplo:
ls *.gif Muestra todos los nombres de ficheros que acaben en .gif, por ejemplo, dib1.gif, a.gif, etc.
ls file? Muestra todos los ficheros cuyos nombres empiecen por file y tengan un nombre de cinco caracteres,
por ejemplo: file1, file2, filea, etc.
mkdir El comando mkdir (make directory) permite a cada usuario crear un nuevo
subdirectorio. Sintaxis:

mkdir subdirectorio
donde subdirectorio es el nombre del directorio que se va a crear.
rmdir Este comando borra uno o más directorios del sistema (remove directory), siempre que estos
subdirectorios estén vacíos. Sintaxis:

rmdir subdirectorio
Por ejemplo, rmdir subdir1, donde subdir es el nombre del directorio que se va a eliminar.
cd Este comando permite cambiar de directorio a partir del directorio actual de trabajo.
Sintaxis:

cd [directorio]
Veamos algunas opciones:
cd ± cambia al último directorio en el que estuvimos antes del actual.
cd.. cambia al directorio padre.
cd. nos deja donde estamos.
cd Nos sitúa nuevamente en el directorio personal del usuario.
cd / cambia al directorio raíz
Nota: al contrario que en MS-DOS en Linux no existe la forma cd.. sin espacio entre cd y los dos puntos.
pwd El comando pwd (print working directory) visualiza o imprime la ruta del directorio en el que nos
encontramos en este momento. Este comando es uno de los pocos que no tiene
opciones y se utiliza escribiendo simplemente pwd.

7. ACCESO A UNIDADES DE DISCO: MONTAJE Y DESMONTAJE

Linux a diferencia de Windows no utiliza letras ("a:", "c:", "d:", ...) para acceder a las distintas unidades de
disco de un ordenador. En Linux para acceder al contenido de una unidad de disco o de un CD-ROM este
tiene que haber sido previamente "montado". El montado se realiza mediante el comando mount, con lo que el
contenido de la unidad se pone a disposición del usuario en el directorio de Linux que se elija. La sintaxis de
este comando es la siguiente:
mount [-t tipo_de_sistema_ficheros] [dispositivo] directorio_de_montaje
Por ejemplo para acceder al CD-ROM se teclearía el siguiente comando:

mount -t iso9660 /dev/cdrom /mnt/cdrom


donde -t iso9660 indica el tipo de sistema que usa la unidad de disco para guardar los ficheros (las más
usuales son: iso9660 en el caso de un CD-ROM, vfat en el caso de Windows, y ext2 (3 o 4) en el caso de
Linux), /dev/cdrom indica el dispositivo que se va a montar. Todos los dispositivos están representados por un
fichero del directorio /dev; por ejemplo, en el caso de un disquete será seguramente /dev/fd0, por último
/mnt/cdrom es el directorio en el que se pondrá a disposición del usuario el contenido del CD-ROM. Para
montar disquetes se suele utilizar el directorio /mnt/floppy (aunque esto depende de la versión de Linux que
utilicemos).
En el caso de Ubuntu, el comando mount admite directamente los directorios /cdrom, /cdrom1, /floppy, ... para
el montaje de nuestras unidades, por lo que lo único que habría que escribir, para montar por ejempo la
disquetera, sería:

mount /floppy
Si omitimos el tipo de sistema de ficheros y/o el dispositivo, Ubuntu toma la información correspondiente del
fichero /etc/fstab, el cual contiene información de los distintos sistemas de ficheros del equipo.
De todas formas el usuario siempre puede crear un directorio vacío con el nombre que el elija para montar las
unidades de disco que desee donde desee.
Cuando el usuario haya dejado de usar ese disco deberá "desmontarlo" mediante el comando umount antes
de sacar el disquete o el CD-ROM. Siguiendo con el ejemplo de la disquetera en Ubuntu, debería escribir:

umount /floppy
En principio, para utilizar el comando mount especificando todos los parámetros hace falta ser administrador o
root. Para que un usuario común pueda utilizar disquetes, CD-ROM, etc. hay que editar el fichero /etc/fstab.
Por ejemplo para que cualquier usuario pueda acceder a un disquete habrá que indicar la siguiente línea:

/dev/fd0 /mnt/floppy vfat user,noauto 0 0


También habrá que asegurarse de que el directorio /mnt/floppy sea accesible por todos los usuarios.
Una vez seguidos los pasos anteriores cualquier usuario podrá "montar" un disquete escribiendo el siguiente
comando:

mount /mnt/floppy
Al igual que antes, el usuario deberá ejecutar el comando umount /mnt/floppy antes de sacar el disquete.
Nota: Existen en la actualidad distribuciones (por ejemplo, SuSE Linux) que realizan este proceso de forma
automática, por lo que las unidades de disquete y CD-ROM quedan accesibles a todos los usuarios de una
forma sencilla, empleando los comandos:

mount /mnt/floppy
umount /mnt/floppy
siempre que /mnt/floppy sea la ruta adecuada.
Para desmontar una partición empleamos el comando "umount":

sudo umount /dev/sdxX


Donde "xX" es la partición que queremos desmontar. Por ej. "sda5" que es la partición "5" del disco duro "a"

8. ÓRDENES RELACIONADAS CON FICHEROS

cp Copia un fichero o ficheros en otro fichero o directorio. Sintaxis:

cp fichero1 [fichero2] ... [ficheroN] destino


donde [ficheroX] es el fichero a copiar y [destino] es el fichero o directorio de destino.
Podemos utilizar . y .. para referirnos al directorio actual y al directorio padre respectivamente.
Así pues, la orden cp file1 file2, hace una copia de file1 y le llama file2. Si file2 no existía, lo crea con los
mismos atributos de file1. Si file2 existía antes, su contenido queda destruido y es sustituido por el de file1. El
fichero file2 estará en el mismo directorio que file1. Tanto file1 como file2 indican el nombre de un archivo, que
puede incluir el la ruta al mismo si alguno de ellos no se encuentra en el directorio actual. Otra posibilidad es:

cp file1 file2 namedir


que hace copias de file1 y file2 en el directorio namedir.
mv Se utiliza para el traslado y cambio de nombre de ficheros. Sintaxis:

cp fichero1 [fichero2] ... [ficheroN] destino


Como vemos, este comando tiene una forma similar al anterior. El comando mv realiza la misma función que
el cp pero además destruye el fichero original.
Así, si ejecutamos la orden

mv file1 file2
en definitiva se traslada el contenido de file1 a file2; a efectos del usuario lo que ha hecho es cambiar el
nombre a file1, llamándole file2. De igual forma,

mv file1 file2 namedir


traslada uno o más ficheros (file1, file2,...) al directorio namedir conservándoles el nombre.
El comando,

mv namedir1 namedir2
cambia el nombre del subdirectorio namedir1 por namedir2.
Hay que recalcar que el comando mv sirve así mismo para cambiar el nombre de los ficheros.
rm Borrado de ficheros. Este comando elimina uno o más ficheros de un directorio en el
cual tengamos permiso de escritura. Sintaxis:

rm file1 [file2]
Con este comando resulta facilísimo borrar ficheros inútiles, y desgraciadamente, también los útiles. Por eso
es conveniente y casi imprescindible emplear lo opción -i, de la forma siguiente:

rm -i file1 file2
Con esta opción, Linux pedirá confirmación para borrar cada fichero de la lista, de si realmente se desea su
destrucción o no. Se recomienda usar siempre este comando con esta opción para evitar el borrado de
ficheros útiles. Por ejemplo, si se teclea, rm -i superfluo aparecerá en pantalla el aviso siguiente: remove
superfluo? y habrá que contestar y (yes) o n (not). En este comando se pueden utilizar los caracteres
comodines (* y ?), como por ejemplo, rm fich* que borraría todos los ficheros del directorio actual que
comiencen por fich. El comando
rm * borrará todos los ficheros del directorio actual.
Otra opción es ±r, que borra directorios recursivamente (borran el directorio y todo su contenido).
file Este comando realiza una serie de comprobaciones en un fichero para tratar de
clasificarlo, mostrando sus características. Sintaxis:

file fichero
Tras su ejecución este comando muestra el tipo del fichero e información al respecto del mismo. Este
comando se puede aplicar también a directorios.
cat Visualización sin formato de un fichero. Este comando permite visualizar el contenido
de uno o más ficheros de forma no formateada. También permite copiar uno o más ficheros
como apéndice de otro ya existente. Algunas formas de utilizar este comando son las
siguientes:
cat filename Saca por pantalla el contenido del fichero filename.
cat file1 file2 Saca por pantalla, secuencialmente y según el orden especificado, el contenido de los ficheros
indicados.
cat >file1 Acepta lo que se introduce por el teclado y lo almacena en file1 (se crea file1). Para terminar se
emplea d
pr Visualización de ficheros con formato. Este comando, a diferencia de cat, imprime por consola el contenido
de los ficheros de una manera formateada, por columnas, controlando el tamaño de página y poniendo
cabeceras al comienzo de las mismas. Está muy en relación con el comando lp de salida por impresora. Las
formas más importantes que admite son las siguientes:
pr file Produce una salida estándar de 66 líneas por página, con un encabezamiento de 5 líneas (2 en blanco,
una de identificación y otras 2 líneas en blanco).
pr -ln file Produce una salida de n líneas por página (cuando el tamaño de papel de impresora, por ejemplo,
tiene un número de líneas distinto de 66)
pr -p file Hace una pausa para presentar la página, hasta que se pulsa para continuar
pr -t file Suprime las 5 líneas del encabezamiento y las del final de página.
pr -wn file Ajusta la anchura de la línea a n posiciones.
pr -d file Lista el fichero con espaciado doble.
pr -h `caracteres` file el argumento o cadena de caracteres `caracteres` se
convertirán en la cabecera del listado.
pr +n file Imprime el fichero a partir de la página n.
Además de los ejemplos anteriores, se pueden combinar varias opciones en un mismo comando, como por
ejemplo en: pr -dt file.
La salida de este comando es por la consola, pero puede redireccionarse a otro fichero, por ejemplo, si
ejecutamos el comando: pr file1 > file2 se crea un fichero nuevo llamado file2 que es idéntico a file1, pero con
formato por páginas y columnas. Comandos more y less
Estos comandos permiten visualizar un fichero pantalla a pantalla. El número de líneas por pantalla es de 23
líneas de texto y una última línea de mensajes, donde aparecerá la palabra more. Cuando se pulsa la barra
espaciadora (el espacio en blanco), se visualizará la siguiente pantalla. Para salir de este comando (terminar
la visualización) se pulsa d o q.
El comando more muestra el contenido de los ficheros indicados, una pantalla cada vez. Sintaxis:

more fichero1 [fichero2] ... [ficheroN]


La teclas que nos permiten movernos por el fichero son: b va a la página anterior, barra espaciadora va a la
página siguiente, flechas de cursor arriba y abajo, q finaliza la ejecución de more.
El comando less es muy similar al anterior pero, además, permite el desplazamiento a lo largo del texto
empleando las teclas de cursores pudiendo desplazarse, además, hacia la izquierda o la derecha. Sintaxis:

less fichero1 [fichero2] ... [ficheroN]


grep El comando grep localiza una palabra, clave o frase en un conjunto de directorios, indicando en cuáles
de ellos la ha encontrado. Este comando rastrea fichero por fichero, por turno, imprimiendo aquellas líneas
que contienen el conjunto de caracteres buscado. Si el conjunto de caracteres a buscar está compuesto por
dos o más palabras separadas por un espacio, se colocará el conjunto de caracteres entre apóstrofes ('). Su
sintaxis es la siguiente:

grep [-opcion] 'conjuntocaracteres' file1 file2 file3


siendo 'conjuntocaracteres' la secuencia de caracteres a buscar, y file1, file2, y file3 los ficheros donde se
debe buscar. Veamos un nuevo ejemplo:

grep 'TRIANGULARIZACION MATRIZ' matrix.f scaling.f


Este comando buscará TRIANGULARIZACION MATRIZ entre las líneas de los ficheros matrix.f y scaling.f.
Las opciones principales del comando son:
c lo único que se hace es escribir el número de las líneas que satisfacen la condición.
i no se distinguen mayúsculas y minúsculas.
l se escriben los nombres de los ficheros que contienen líneas buscadas.
n cada línea es precedida por su número en el fichero.
s no se vuelcan los mensajes que indican que un fichero no se puede abrir.
v se muestran sólo las líneas que no satisfacen el criterio de selección.
A continuación se muestra una serie de ejemplos.
grep µÖd¶ text líneas que comienzan por d.
grep µÖ[Öd]¶ text líneas que no comienzan por d.
grep -v µÖC¶ file1 > file2 quita las líneas de file1 que comienzan por C y lo copia en file2.
head Muestra las primeras líneas del contenido de los archivos especificados; por defecto
muestra las 10 primeras líneas. Sintaxis:

head [-número] ...


Por ejemplo, head -7 texto, escribe por pantalla las 7 primeras líneas del fichero texto.
tail Muestra las primeras líneas del contenido de los archivos especificados; por defecto
muestra las 10 primeras líneas. Sintaxis:

tail [-número] ...

9. OTROS COMANDOS BÁSICOS

9.1. Espacio ocupado en el disco: Comandos du y df

El comando du permite conocer el espacio ocupado en el disco por un determinado directorio y todos los
subdirectorios que cuelgan de él. Para usarlo basta simplemente colocarse en el directorio adecuado y teclear
du.
Este comando da el espacio de disco utilizado en bloques. Para obtener la información en bytes se debe
emplear el comando con la opción ±h:

du -h
El comando df por el contrario informa del espacio usado por las particiones del sistema que se encuentren
montadas.

9.2. Impresión: Comando lpr

El comando lpr se emplea para imprimir una serie de ficheros. Si se emplea sin argumentos imprime el texto
que se introduzca a continuación en la impresora por defecto. Por el contrario,
lpr nombre_fichero
imprime en la impresora por defecto el fichero indicado.

9.3. Búsqueda de ficheros. Comando find

Con find podemos encontrar archivos (y, por tanto, directorios) basando su búsqueda en distintas
características de los mismos. Sintaxis:

find [camino...] [expresión]


El número de opciones de find es muy elevado, por lo que se aconseja acudir al manual para mayor
información (man find).

9.4. Enlaces a ficheros. Comando ln

Los enlaces nos van a permitir realizar copias de los ficheros con otro nombre, para poder acceder a ellos
desde lugares distintos a su ubicación original, con un ahorro de espacio muy importante con respecto al
comando cp.
Nuestro sistema identifica a los ficheros mediante un número denominado inodo, que les asigna en el
momento de su creación.
Es decir, un directorio lo que contiene realmente es una lista de números de inodo con sus correspondientes
nombres de fichero. De esta forma, cada nombre de fichero es un enlace a un inodo particular; por ello, cada
inodo está asociado a un conjunto de información guardada en el disco, que puede tener asignados distintos
nombres, y a la que podremos acceder desde distintos lugares del árbol de directorios si así lo deseamos.
En este sentido, podremos crear dos tipos distintos de enlaces a ficheros: enlaces duros y enlaces simbólicos.
El comando ln nos servirá para crear ambos tipos de enlaces.
ENLACES DUROS (HARD LINKS)
Si utilizamos el comando ln sin especificar ninguna opción, por defecto crearemos un enlace duro. La sintaxis
es la siguiente:

ln [nombre del enlace]


ln ...
Obviamente, el fichero o ficheros para los que deseamos crear un enlace duro deberán existir. Así mismo, si
el último argumento es el nombre de un directorio que existe, crearemos un enlace duro a cada fichero, dentro
del directorio, y con el mismo nombre de fichero.
Si solamente especificamos el fichero que queremos enlazar, y no indicamos ningún nombre para el enlace,
éste se creará con el mismo nombre que el fichero a enlazar.
Los cambios que realicemos en el fichero enlazado o en el enlace, se reflejarán en el resto, ya que todos
tendrán el mismo número de inodo, y por lo tanto hacen referencia al mismo conjunto de información.
La ventaja de utilizar enlaces duros radica en que el comando rm únicamente borrará aquel fichero que le
indiquemos. La información solamente se borrará por completo cuando borremos todos los enlaces a un
inodo.
La desventaja con respecto a los enlaces simbólicos es que sólo permite crear enlaces dentro del mismo
sistema de ficheros.
Los directorios . y .. son enlaces duros al directorio actual y a su directorio padre respectivamente.
Ejemplo:
1 ± Creamos el fichero pruebaln con la orden cat.
$cat > pruebaln
hola
CTRL+ D
2 ± Creamos un enlace a pruebaln que se llame penlace.
$ln pruebaln penlace
3 ± Veamos las características de estos ficheros con la orden ls. Utilizamos la opción ±i
para ver el número de inodo. Ambos tendrán el mismo número de inodo con dos
enlaces.
$ls ±i pruebaln penlace
4 ± Modificamos pruebaln y comprobamos si también se modifica penlace.
$cat >>pruebaln
adios
CTRL+ D
$cat pruebaln
$cat penlace
5 ± Modificamos penlace y comprobamos si también se modifica pruebaln.
$cat >>penlace
otra vez hola
CTRL+ D
$cat penlace
$cat pruebaln
6 ± Eliminamos pruebaln y comprobamos si penlace permanece y contiene la información correspondiente.
$rm pruebaln
$cat penlace
7 ± Si utilizamos la orden ls ±i, vemos que penlace sigue con el mismo número de inodo, que ahora solamente
tendrá un enlace.
ENLACES SIMBÓLICOS
Si utilizamos la opción ±s con el comando ln, es decir ln ±s, crearemos un enlace simbólico. La sintaxis en
este caso es la misma que utilizamos para crear enlaces duros.
Podemos encontrar una similitud entre este tipo de enlaces y los accesos directos que estamos
acostumbrados a crear con los sistemas Windows.
En el caso de los enlaces simbólicos, cada fichero tendrá un número de inodo distinto. Sin embargo, al igual
que con los enlaces duros, todos los cambios que se realicen en uno de los ficheros se verán reflejados en el
resto.
Si borramos el fichero enlazado, el enlace simbólico perderá toda la información, puesto que su inodo apunta
a un número de inodo que ya no existe. Sin embargo, podremos crear enlaces simbólicos a ficheros de otros
sistemas de archivos.
Ejemplo:
1 ± Aún tenemos el fichero penlace. Creamos un enlace duro a penlace que se llame pruebaln.
$ln penlace pruebaln
2 ± Con la orden ls ±li vemos que ambos tienen el mismo inodo, y que este inodo tiene dos enlaces.
$ls -li pruebaln penlace
3 ± Creamos un enlace simbólico a penlace que se llame penlacesim.
$ln ±s penlace penlacesim
4 ± Con la orden ls ±li vemos que tienen distinto número de inodo. Además, el inodo de penlacesim sólo tiene
un enlace, y el inodo de penlace sigue teniendo dos. En la línea correspondiente a penlacesim vemos que
aparece el fichero al que apunta, y la letra l (³ele´) al inicio.
$ls -li pruebaln penlace penlacesim
5 ± Cambiamos penlace y comprobamos si cambia penalcesim.
$cat >>penlace
otra vez adios
CTRL+ D
$cat penlacesim
6 ± Por último borramos penlace. Comprobamos que pruebaln permanece y que no podemos ver el contenido
de penlacesim, el sistema nos dirá que no existe. Para que desaparezca totalmente tenemos que borrarlo.
$rm penlace
$cat pruebaln
$cat penlacesim
$rm penlacesim
$rm pruebaln

Vous aimerez peut-être aussi