------------------------------------------
- Guía de supervivencia Debian GNU/Linux -
------------------------------------------
Septiembre de 2005
Sistema de Paquetes APT
-----------------------
Debian proporciona un sistema de paquetes software mediante el cual podremos
descargar e instalar un determinado programa con sólo ejecutar un par de
comandos. Así las tareas más comunes realizadas empleando este sistema de
paquetes es:
Búsqueda de paquetes:
Sintáxis: apt-cache search
Ejemplo : apt-cache search mp3 player
Información detallada sobre un paquete:
Sintáxis: apt-cache show
Ejemplo: apt-cache show mozilla-firefox
Descarga de paquetes:
Sintáxis: apt-get install
Ejemplo: apt-get install mozilla-firefox mozilla-thunderbird xmms
Cuando se descarga un paquete puede que éste tenga dependencias con otros,
el sistema de instalación nos advertirá que realizará la instalación de
aquellos paquetes de los cuales depende.
Actualización de la distribución.
Los mantenedores de paquetes están actualizando constantemente éstos con las
últimas versiones de los programas. Para actualizar nuestro sistema tendremos
que actualizar primero la lista de paquetes (update) y después actualizarlo
(upgrade):
apt-get update
apt-get upgrade
Fichero /etc/apt/sources.list
En este fichero se encuentra un listado de los repositorios a los cuales se
conecta el sistema de gestión de paquetes para descargar el nuevo software.
La lista consta de entradas como las que siguen:
deb
Ejemplo:
deb http://toxo.com.uvigo.es/debian/ testing main contrib non-free
En este caso se descargará paquetes de la versión testin (aka Sarge) y los
paquetes que forman parte de las ramas main, contrib y non-free. La fuente
no tiene por qué ser necesariamente una URL de internet, también puede ser
una lectora de CD o un recurso NFS. En general, es más cómoda la primera
opción.
Comandos comunes
----------------
Es conveniente, poco a poco conocer las órdenes que se emplean más comúnmente
en la línea de comandos de un "shell", sobre todo son de especial utilidad
cuando se desea realizar algún tipo de administración remota en el que el
uso de programas gráficos es lento debido a un ancho de banda reducido.
ls, cp, mv -- Listar copiar y mover ficheros
cat, tail, head, less, more -- Muestran el contenido de los ficheros
top - Muestra lista de procesos en ejecución ordenados por carga de CPU
ps, ps -aux -- Lista los procesos del terminal actual y del sistema,respect.
grep -- filtro de palabras/expresiones. Suele usarse junto con un "pipe"
who -- Muestra qué usuarios hay en el sistema actualmente
df -- Muestra la información sobre las particiones (espacio libre, ocupado...)
du -- Muestra información sobre el espacio ocupado por los ficheros del
directorio actual.
tar -xzvf nombrefichero.tar.gz -- Descomprime ficheros gzip
tar -xjvf nombrefichero.tar.bz -- Descomprime ficheros bzip2
ssh -X venus.tsc.uvigo.es -oPort=1922 -l root
Se conecta al puerto 1922 como root con reenvío de comandos X y como usuario
root. El reenvío de comandos X significa que se pueden lanzar programas como
el ethereal. Nótese, que el host al que nos conectamos ha de tener
habilitado el switch XForward en el fichero /etc/ssh/sshd_config y en el
"destktop manager" (léase gdm,kdm o xdm) ha de estar habilitado el XDMCP. En
el caso del gdm, en el fichero /etc/X11/gdm/gdm.conf en la sección [xdmcp]
ha de ponerse a true el switch Enable (Enable=true).
La información sobre los argumentos que recibe un comando se puede obtener
de forma resumida utilizando el argumento --help y de forma extendido usando
su página de manual. Ejemplos:
grep --help
man grep
Perfiles de Conexiones de Red
-----------------------------
En Linux se puede configurar un interfaz de red para que utilice unos
parámetros de configuración específicos de la ubicación. Para ello bastará
con definir una conexión en el fichero /etc/network/interfaces. Este fichero
consta de entradas del estilo:
#para un interfaz ethernet
iface nombre_ubicacion inet static
address 192.168.0.5
netmask 255.255.255.0
gateway 192.168.0.2
#para un interfaz wifi hay que añadir las opciones wireless
# ejemplo interfaz dhcp
iface nombre_wifi inet dhcp
wireless_mode managed
wireless_essid CISCO
wireless_key 01:02:03:04:05
wireless_rate auto
wireless_nick zelin
Hay más información sobre el formato así como ejemplos en el directorio:
/usr/share/doc/ifupdown/examples/
En cuanto a las opciones wireless, símplemente hay que añadir "wireless_" a
las opciones del comando iwconfig. Estas opciones se pueden ver ejecutando:
iwconfig --help
La información sobre el formato de los argumentos se encuentra en la página
del manual de iwconfig.
A la hora de inicializar un interfaz hay que ejecutar el comando ifup
ifup eth0=nombre_ubicación
Si la ubicación se llama como el propio interfaz bastará con
ifup eth0
Para deshabilitar el interfaz basta con ejecutar
ifdown eth0
Los nombres de los interfaces son dependientes del tipo de interfaz,
generalmente suelen llamarse eth0, eth1...para los ethernet y algunas
tarjetas de red inhalámbricas o athX para los interfaces con chip Atheros.
Para ver la información sobre los interfaces que están activos hay que
ejecutar el comando:
ifconfig
Este comando también sirve para modificar los parámetros del interfaz, de
hecho, ifup e ifdown son scripts que emplean este comando a partir del
fichero de configuración. La información que muestra es similar al ipconfig
del WinDoS
Wireless-tools
--------------
Existen unas herramientas incluídas en el paquete wireless-tools, estas
herramientas ofrecen información sobre el estado de las extensiones wireless
de un interfaz wifi. La más importante es iwconfig, con la cuál también se
pueden establecer algunos parámetros del interfaz:
iwconfig
Ejemplo: iwconfig ath0
iwconfig ath0 txpower 99
iwconfig ath0 channel 6
iwconfig ath0 essid pepe
iwconfig ath0 mode monitor
iwconfig ath0
Otras herramientas que también están incluídas:
iwspy -- Estadísticas
iwpriv -- control de las extensiones propias de un módulo concreto
iwlist -- Obtención de información detallada sobre el estado del interfaz.
Los modos en los que se puede configurar el interfaz wifi:
managed
El más común, para conectarse a un AP
ad-hoc
Usado para conectarse a una red Ad-hoc
promiscuous
Modo promíscuo, el usado por los sniffer.Es necesario estar asociado.
monitor
Similar al modo promíscuo, pero además también captura tramas
beacom. No se necesita estar asociado a un AP. Usado por detectores de redes
como el kismet.
El modo de trabajo de la tarjeta se establece con el comando iwconfig:
iwconfig mode
Secuencia de Arranque
---------------------
El sistema de arranque de los sistemas GNU/Linux está basado en el del Unix
System V. Mediante este mecanismo podemos crear varios perfiles o run
levels, por defecto, en Debian se ejecuta el run level 2 (hay 6, aunque el 0
y el 6 son especiales). Estos perfiles ejecutan un conjunto de scripts
ubicados en el directorio /etc/rcX.d/ donde X es el número de runlevel.
Estos scripts tienen un nombre con el siguiente formato:
SXXnombre
Donde XX indica la prioridad, cuanto menor sea el número mayor prioridad y
por tanto se ejecutará antes.
Además estos scripts necesariamente han de aceptar como argumentos start
(será usado durante el arranque), stop (usado al apagar o reiniciar),
restart (reinicia el servicio). Estos scripts ya vienen incluidos en los
paquetes asociados a un servicio (por ejemplo, un servidor web) y se
almacenan en
/etc/init.d/
Así, lo que se hace en realidad es en el directorio del runlevel es crear un
enlace simbico. Por ejemplo:
cd /etc/rc2.d/
ln -s /etc/init.d/apache S20apache
Creando este enlace simbólico se ejecutará el servicio web en el arranque
del sistema.
El runlevel por defecto se establece en el fichero /etc/inittab
Programas libres equivalentes
------------------------------
firefox, konqueror, mozilla - Navegadores Web
kmail, thunderbird - Clientes de Correo
gftp - Cliente de Ftp
komba2, smb4k - Exploradores de Ficheros compartidos Windows
openoffice - Herramientas de Ofimática (textos hojas de cálculo, presentaciones)
emacs, jed - editores de texto (notepad)
gimp - Editor de Imágenes (estilo photoshop)
ethereal, tcpdump - Sniffers
nmap - Escaneador de puertos
kismet - Detector de APs
kpdf - Visor de pdf
ggv - Ghost Viewer (PS)
gtksee - Visor de Imágenes
i2e - Diccionario Inglés - Español
dict - Diccionario en Inglés
xmms - Reproductor de mp3
gmix - Control de Sonido
xine, mplayer, totem - Reproductores de Video/DivX/Xvid
amsn, gaim - Clientes Messenger
octave - Equivalente libre de Matlab
xcdroast - Grabación de CDs
En caso de buscar algún programa que no se encuentre en este listado existe
la página Alternativas Libres en la que introduciendo el nombre del producto
comercial aparece su equivalente libre.
Buscando más información de ayuda
---------------------------------
Además de las páginas manual y de usar el comando --help suele haber
documentación en
/usr/share/doc/nombre_paquete/
que resulta de especial interés cuando el software en cuestión emplea algún
tipo de fichero de configuración, ya que suelen incluirse ficheros de ejemplo.
Cuando se trata de configurar algún tipo de hardware la mejor opción suele
ser buscar alguien que ya haya intentado configurar ese mismo hardware en
Debian. Con poner la marca y model del dispositivo seguido de Debian en un
buscador suele ser suficiente. Tampoco podemos olvidar los conocidos HOW-TOs
(o Cómos)
A la hora de configurar un servicio (ftp, httpd, streaming etc...) la
información suele encontrarse en la propia página del servicio, aunque
también suele ser de ayuda la búsqueda de tutoriales. Una página en la que
suelen encontrarse tutoriales (generalmente para Debian) es BULMA. Usando
google con el nombre del servicio y el argumento bulma es un punto de inicio.