Documente Academic
Documente Profesional
Documente Cultură
En el ejemplo se muestran 5 sistemas de archivos montados en los directorios /, /proc, /dev/pts, /var y
/home. Tres de ellos son de tipo ext2 y residen en tres particiones del disco rgido (/dev/hda1, /dev/hda2 y
/dev/hda3), los otros dos son virtuales, es decir, no residen en dispositivo de almacenamiento alguno (son creados
por el kernel). Las opciones de montaje de todos indican que pueden leerse y escribirse ( rw), el sistema montado en la
raz en caso de fallas ser montado con permiso de slo lectura ( errors=remount-ro) y el sistema montado en
/dev/pts tendr todos sus archivos como pertenecientes al grupo 5 ( tty) y permisos de escritura y lectura para el
dispositivoFisico dispositivoVirtual
Donde dispositivoFisico es el nombre del dispositivo que contiene el sistema de archivos (ej: /dev/hda1
o /dev/fd0), tipo es el tipo del sistema de archivos y dispositivoVirtual es la ruta donde se quiere
acceder la raz del sistema montado, es un directorio (si el directorio donde se monta contiene datos, estos
sern escondidos mientras el nuevo sistema de archivos permanezca montado).
Por esta razn se debe cumplir la condicin de que el directorio donde se efectuar el montaje, est
vaco. Las opciones de mount pueden ser:
-a
Monta todos los sistemas de archivos listados en /etc/fstab.
-t tipo-de-sistema-archivo
Especifica el tipo de sistema de archivos que se montar por
ejemplo: FAT, VFAT, FAT32, ISO9660, ext2.
-o opciones
Especifica opciones al proceso mount.
ro
Monta la particin como solo lectura.
rw
Monta la particin como lectura y escritura.
exec
Permite la ejecucin de binarios (por defecto).
noatime
Deshabilita la actualizacin de la fecha de acceso a los i-nodos.
Para particiones donde la fecha de acceso no es importante
noauto
/etc/fstab).
nosuid
sb=n
para montar el sistema de archivos en el directorio especificado por dispositivoVirtual (el resto de
informacin debe estar en /etc/fstab) . Adems, por defecto, los sistemas de archivos especificados en ese
archivo sern montados automticamente durante el arranque del sistema. Ms adelante nos dedicaremos a este
archivo.
Ejemplo:
# mount /dev/hda1 /win -t vfat
Esta lnea lo que hace es montar mi dispositivo fsico, que es una parte de disco rgido, la particin1, en un
dispositivo virtual, que es el directorio /win y le digo que lo monte como filesystem vfat para que me tome los
nombres largo de windows.
Nota: El sistema de archivos por default es ext2. Para los tipos de filesystem
con que se crearon las particiones Linux-native (82) no es necesario
especificarlo.
Si tengo configurado el archivo /etc/fstab con las opciones para este filesystem, puedo escribir el comando
simplificado
# mount /win
Aqu estamos diciendo que el formato del disco que insertamos en la lectora, que se llama /dev/fd0 es
MSDOS.
Nota: Tenga cuidado porque el formato de MSDOS no permite nombres de
archivo muy largos como es el caso de Linux y Windows95. Por lo tanto si
desea copiar un sistema de archivos a un floppy es mejor crear un disco del
tipo ext2 (Linux) y luego montarlo. Para esto introduzca un disco formateado
MSDOS en la lectora y haga:
# mke2fs /dev/fd0 1440
con lo cual estamos dando un formato especial (Linux native 82) al disco de
1.44 Mb, luego lo montamos con:
#
con:
# mount /mnt/floppy
Tenga en cuenta que los directorios usados para montar dispositivos (particiones) deben de existir y estar vacos
antes de pretender usarlos. Cuando el sistema arranca inicialmente lee un archivo llamado /etc/inittab que a
su vez lee el archivo /etc/rc.d/rc.S, el cual contiene una lnea para montar automticamente todos los
dispositivos que se encuentren en el archivo /etc/fstab, as que despreocpese, el sistema lo har por usted,
pero es bueno saber quin lo hace.
Para desmontar un filesystem haga:
# umount dispositivo
donde dispositivo puede ser /dev/hda1 para desmontar la particin de 400 Megas del directorio /win,
Veamos otro ejemplo:
# mount t iso9660 /dev/cdrom /mnt/cdrom
# mount /mnt/cdrom
# mount /media/cdrom
# umount /mnt/cdrom
# umount /media/cdrom
El archivo /etc/fstab
El archivo fstab contiene informacin que describe los diferentes filesystems. Los programas slo pueden leer
el fstab ; por ejemplo, es el archivo que utiliza mount cuando queramos montar usando alias (vamos a hablar
de esto mas adelante). El administrador del sistema es responsable de la creacin y mantenimiento de este
archivo. Cada lnea describe un sistema de archivos; los campos en cada lnea estn separados por tabs o
espacios. Este archivo contiene una lista de todas las particiones conocidas del sistema. Durante el proceso de
arranque se lee esta lista y sus elementos se montan de forma automtica si corresponde y el sistema de
archivos es estable, es decir que no contenga errores irreparables.
Ejemplo:
alexa:/etc# cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>
<type> <options>
<dump> <pass>
/dev/hda1
/
ext3
defaults,errors=remount-ro
0
1
/dev/vg00/swap none
swap
sw
0
0
proc
/proc
proc
defaults
0
0
/dev/fd0
/floppy
auto
defaults,user,noauto
0
0
/dev/cdroms/cdrom0
/mnt/cdrom0
auto
defaults,ro,user,noauto 0
0
/dev/cdroms/cdrom1
/mnt/cdrom1
auto
defaults,ro,user,noauto 0
0
/dev/vg00/usr
/usr
ext3
defaults
0
2
/dev/vg00/var
/var
ext3
defaults
0
2
/dev/vg00/home
/home
ext3
defaults
0
2
/dev/vg00/usr_local
/usr/local
ext3
defaults
0
2
tmpfs
/tmp
tmpfs
defaults
0
0
\\alexa-vm\kazaa
/mnt/smbfs/alexa-vm
smbfs
defaults
0
2
/dev/sg0
/mnt/mp3player
vfat
defaults,noauto,sync
alexa:/etc#
La primera columna describe el dispositivo fsico, puede ser de bloque o un sistema de archivos remoto.
La segunda columna describe el punto de montaje para el sistema de archivos, lo que antes llam
dispositivo virtual. Para particiones de intercambio (swap), este campo debe decir none.
La tercera columna describe el tipo de filesystem. Linux soporta muchos filesystems, solo para
mencionar algunos, ext3, reiserfs, jfs, ntfs, smbfs, etc.
La cuarta columna describe las opciones de montaje asociadas con el sistema de ficheros. Algunas
opciones (comunes a todo sistema de archivos) son:
o ro para montar en modo de slo lectura
o rw para montar en modo lectura y escritura
o user que indica que un usuario puede montar el sistema de archivos (por defecto slo el
administrador puede hacerlo)
noauto para indicar que el sistema no debe montarse durante el arranque ---note que los
La quinta columna lo utiliza el comando dump para determinar qu sistemas de archivos necesitan ser volcados
(dumped), es decir con cuanta frecuencia se necesita hacer copia de seguridad del sistema de archivos. Si el
quinto campo estuviera vaco, dump asume que el sistema de ficheros no necesita ser volcado.
La sexta columna lo usa el programa fsck para determinar el orden en el cual se van a chequear los sistemas de
archivos cuando el sistema arranca. Observe que todos los archivos se comprueban antes de montarse. El
nmero que controla el chequeo con fsck indica el orden en el cual hacer chequeos, 0 (cero) indica que no se
debe chequear el sistema, otros nmeros positivos especifican una prioridad (los menores son ms prioritarios y
los nmeros con el mismo nmero de ser posible son chequeados en paralelo). Es conveniente emplear 1 con el
sistema de archivos montado en la raz y 2 para los dems que requieran chequeo.
Entonces con este archivo correctamente configurado por el administrador, un usuario solo tendr que hacer un
mount /mnt/cdrom para acceder al mismo. De esta forma, el mount lee el fstab y busca la lnea que hace
referencia el /mnt/cdrom y toma los parametros y dispositivos asociados correspondientes sin tener que completar
totalmente el comando con los switchs que haran falta para montarlo sin haber creado el alias en el
/etc/fstab
Instalacin de Software
Luego de tener nuestro sistema instalado y funcionando correctamente, vamos a querer actualizarlo con nuevos
programas. O puede ser que tengamos que instalar un driver para algn dispositivo problemtico, o nos guste
bajar software de Internet que queramos probar. Cmo actualizo, instalo o desinstalo software?
Existen varios mtodos que dependern del formato utilizado para empaquetar los programas. En este captulo
veremos la descripcin de los posibles mtodos y algunos ejemplos.
La manera ms fcil de instalar software en Linux es mediante paquetes. En el mundo de Linux existen varios
tipos de paquetes: .deb (distribuciones basadas en Debian), .rpm (basadas en Red Hat) y .tgz
.tar.gz (usados por Slackware y Gentoo). Aos atrs era ms difcil instalar software en Linux. Al principio
tenamos el cdigo fuente y tenamos que compilarlo. Cmo lo compilamos? En este captulo veremos como
hacerlo. Compilar el cdigo fuente tiene sus ventajas, el software es optimizado para nuestro hardware pero la
instalacin no siempre es fcil.
Crear
el
archivo
concatenando
los
archivos
file1, file2
que le hemos
pasado y aplica
una
compresin de
tipo
bzip2
creando as un
archivo
de
salida
files.tar.bz
2.
# tar xvzf
files.tar.gz
Realiza
una
descompresin
de tipo gunzip
para despus
extraer
los
archivos que se
encontraban
concatenados
dentro
de
files.tar.gz.
Tambin puedo
utilizar tar con
la
extensin
.tgz.
# tar xvjf
files.tar.bz2
Realiza una
descompresi
n de tipo
bz2 para
despus
extraer los
archivos que
se
encontraban
concatenado
s dentro de
files.tar.
bz2.
Comando gzip
Utilidad de compresin de
archivos. El archivo comprimido
tendr la extensin .gz. A
diferencia de lo que estamos
acostumbrados a ver en windows
con este comando slo no
podemos realizar la compresin
de varios ficheros en un solo,
para eso necesitaremos la ayuda
de un segundo comando de
concatenacin de ficheros que es
el tar que vimos anteriormente.
N
ot
a:
g
z
i
p
n
o
si
rv
e
p
ar
a
c
o
m
pr
i
m
ir
di
re
ct
or
io
s.
Por ejemplo:
$ gzip
terminator.sgml
Esto devuelve:
terminator.s
gml.gz
Comando gunzip
Utilidad para descompresin de
archivos. Realiza la accin
contraria
que
gzip.
Descomprime archivos .gz
devolvindolos a su tamao
original.
N
o
t
a
:
E
s
e
q
u
i
v
a
l
e
n
t
e
a
e
j
e
c
u
t
a
r
g
z
i
p
d
a
r
c
h
i
v
o
.
$
g
u
n
z
i
p
t
e
r
m
i
n
a
t
o
r
.
s
g
m
l
.
g
z
y
$
g
z
i
p
d
t
e
r
m
i
n
a
t
o
r
.
s
g
m
l
.
g
z
s
o
n
e
q
u
i
v
a
l
e
n
t
e
s
$ gunzip -cd
blackbox.tar.gz
L
u
e
g
o
d
e
a
pl
ic
ar
el
c
o
m
a
n
d
o
n
o
s
q
u
e
d
a
c
o
n
el
si
g
ui
e
nt
e
n
o
m
br
e:
b
l
a
c
k
b
o
x
.
t
a
r
A
h
or
a
d
e
b
o
ut
ili
z
ar
el
c
o
m
a
n
d
o
t
a
r
p
ar
a
a
br
ir
o
d
es
a
gr
u
p
ar
di
c
h
o
ar
c
hi
v
o.
$ tar xvf
blackbox.tar
El comando unzip
Otro comando de descompresin
que resulta muy til, ya que nos
permite descomprimir todos
aquellos .zip que los amigos de
windows nos envan a travs de
su winzip.
$ unzip
pantallazul.zip
Existe
un
comando
de
compresin zip, pero no resulta
til ya que con los formatos de
compresin .gz y .bz2 nos
basta incluso si queremos
mandrselo a algn amigo de
windows ya que se podrn abrir
sin problemas con cualquier tipo
de utilidad de compresin como
puede ser el winzip o winrar.
Comando bzip2
Utilidad de compresin de
archivos ms potente que gzip.
El modo de funcionamiento es el
mismo. bzip2 archivo para
comprimir.
bzip2 -d archivo
para descomprimir.
Paquetes DEB
c
e
s
.
l
i
s
t
#
D
e
b
i
a
n
o
f
f
i
c
i
a
l
r
e
p
o
s
i
t
o
r
y
d
e
b
h
t
t
p
:
/
/
f
t
p
.
d
e
b
i
a
n
.
o
r
g
/
d
e
b
i
a
n
/
s
i
d
m
a
i
n
n
o
n
f
r
e
e
c
o
n
t
r
i
b
#
D
e
b
i
a
n
n
o
n
u
s
o
f
f
i
c
i
a
l
r
e
p
o
s
i
t
o
r
y
de
b
ht
tp
:/
/n
on
us
.d
eb
ia
n.
or
g/
si
d/
no
nUS
ma
in
no
nfr
ee
co
nt
ri
b
#D
eb
ia
n
se
cu
ri
ty
up
da
te
s
deb
http://s
ecurity.
debian.o
rg/
stable/u
pdates
main
non-free
contrib
#Mplayer
official
reposito
ry
deb
ftp://ftp.nerim.net/debi
an-marillat/ unstable
main
H
i
t
h
t
t
p
:
/
/
m
e
n
t
o
r
s
.
d
e
b
i
a
n
.
n
e
t
u
n
s
t
a
b
l
e
/
m
a
i
n
P
a
c
k
a
g
e
s
I
g
n
h
t
t
p
:
/
/
m
e
n
t
o
r
s
.
d
e
b
i
a
n
.
n
e
t
u
n
s
t
a
b
l
e
/
m
a
i
n
R
e
l
e
a
s
e
H
i
t
h
t
t
p
:
/
/
m
e
n
t
o
r
s
.
d
e
b
i
a
n
.
n
e
t
u
n
s
t
a
b
l
e
/
c
o
n
t
r
i
b
P
a
c
k
a
g
e
s
I
g
n
h
t
t
p
:
/
/
m
e
n
t
o
r
s
.
d
e
b
i
a
n
.
n
e
t
u
n
s
t
a
b
l
e
/
c
o
n
t
r
i
b
R
e
l
e
a
s
e
H
i
t
h
t
t
p
:
/
/
s
e
c
u
r
i
t
y
.
d
e
b
i
a
n
.
o
r
g
s
t
a
b
l
e
/
u
p
d
a
t
e
s
/
m
a
i
n
P
a
c
k
a
g
e
s
H
i
t
h
t
t
p
:
/
/
s
e
c
u
r
i
t
y
.
d
e
b
i
a
n
.
o
r
g
s
t
a
b
l
e
/
u
p
d
a
t
e
s
/
m
a
i
n
R
e
l
e
a
s
e
Hit
http
://s
ecur
ity.
debi
an.o
rg
stab
le/u
pdat
es/n
onfree
Pack
ages
Hit
http
://s
ecur
ity.
debi
an.o
rg
stab
le/u
pdat
es/n
onfree
Rele
ase
Hit
http
://s
ecur
ity.
debi
an.o
rg
stab
le/u
pdat
es/c
ontr
ib
Pack
ages
Hit
http
://s
ecur
ity.
debi
an.o
rg
stab
le/u
pdat
es/c
ontr
ib
Rele
ase
Hit
http
://f
tp.d
ebia
n.or
g
sid/
main
Pack
ages
Hit
http://ftp.debian.org
sid/main Release
H
i
t
h
t
t
p
:
/
/
f
t
p
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
f
r
e
e
P
a
c
k
a
g
e
s
H
i
t
h
t
t
p
:
/
/
f
t
p
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
f
r
e
e
R
e
l
e
a
s
e
H
i
t
h
t
t
p
:
/
/
f
t
p
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
c
o
n
t
r
i
b
P
a
c
k
a
g
e
s
H
i
t
h
t
t
p
:
/
/
f
t
p
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
c
o
n
t
r
i
b
R
e
l
e
a
s
e
H
i
t
h
t
t
p
:
/
/
n
o
n
u
s
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
U
S
/
m
a
i
n
P
a
c
k
a
g
e
s
H
i
t
h
t
t
p
:
/
/
n
o
n
u
s
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
U
S
/
m
a
i
n
R
e
l
e
a
s
e
H
i
t
h
t
t
p
:
/
/
n
o
n
u
s
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
U
S
/
n
o
n
f
r
e
e
P
a
c
k
a
g
e
s
H
i
t
h
t
t
p
:
/
/
n
o
n
-
u
s
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
U
S
/
n
o
n
f
r
e
e
R
e
l
e
a
s
e
H
i
t
h
t
t
p
:
/
/
n
o
n
u
s
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
U
S
/
c
o
n
t
r
i
b
P
a
c
k
a
g
e
s
H
i
t
h
t
t
p
:
/
/
n
o
n
u
s
.
d
e
b
i
a
n
.
o
r
g
s
i
d
/
n
o
n
-
U
S
/
c
o
n
t
r
i
b
R
e
l
e
a
s
e
R
e
a
d
i
n
g
P
a
c
k
a
g
e
L
i
s
t
s
.
.
.
D
o
n
e
azrael:~#
#
a
p
t
g
e
t
u
p
g
r
a
d
e
u
R
e
a
d
i
n
g
P
a
c
k
a
g
e
L
i
s
t
s
.
.
.
D
o
n
e
B
u
i
l
d
i
n
g
D
e
p
e
n
d
e
n
c
y
T
r
e
e
.
.
.
D
o
n
e
Th
e
f
o
l
l
o
w
i
n
g
p
a
c
k
a
g
e
s
h
a
v
e
b
e
e
n
k
e
p
t
b
a
c
k
:
k
v
i
m
v
i
m
The following packages
will be upgraded:
abiword-common
abiword-gnome
abiword-plugins
abiword-pluginsgnome consolecommon consoledata consoletools dash
debconf debconfi18n debconfutils e2fslibs
e2fsprogs gnomecontrol-center
gnome-pilot
ksensors
libaudiofile0
libblkid1
libcomerr2
libconsole
libgal2.2-0
libgal2.2-common
libgnome-pilot2
libkdegst0.6
libnet-perl
libpcre3 libpq3
libss2 libstdc+
+2.10-glibc2.2
libtag1 libuuid1
libxfce4util-1
libxfcegui4-1
libxml2
libxrender1
portmap ssh sshaskpass-gnome
xfprint4
39
upg
rad
ed,
0
new
ly
ins
tal
led
, 0
to
rem
ove
and
4
not
upg
rad
ed.
Nee
d
to
get
995
4kB
of
arc
hiv
es.
A
f
t
e
r
u
n
p
a
c
k
i
n
g
6
3
0
2
k
B
d
i
s
k
s
p
a
c
e
w
i
l
l
b
e
f
r
e
e
d
.
D
o
y
o
u
w
a
n
t
t
o
c
o
n
t
i
n
u
e
?
[
Y
/
n
]
da motivos. Seguramente no puede actualizar esas aplicaciones porque necesita a su vez paquetes que no estan
disponibles todavia porque estamos usando unstable y las dependencias no se satisfacen de inmediato.
La otra posiblidad es que para instalar esas aplicaciones, haya que instalar mas cosas que no tenemos. Con lo
cual el switch de upgrade no nos permite instalar nuevas aplicaciones, sino solo actualizarlas. Para solucionar
esto, tendriamos que paquete por paquete pedirle que los instale, de la siguiente forma:
azrael:~# apt-get install kvim
vim Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be
installed: vim-common
Suggested packages:
cscope vim-doc ctags
De esta forma, solucionamos el problema de paquetes que no podia actualizar porque en la misma operacin
tenia que tambien instalar paquetes que no tenia antes.
Como instalar una aplicacin? Bueno, ya vimos algo antes, para instalar una aplicacin es relativamente
sencillo, el apt-get tiene varios switchs y uno de ellos es install. Luego tiene que figurar el nombre del paquete a
instalar.
azrael:~# apt-get install nmap
Reading Package Lists... Done
Building Dependency Tree... Done
Listo, no mas nmap. El switch adicional --purge le avisa al apt -get que queremos que desintale tambien los
archivos de configuracion de la aplicacin, sino, por defecto no los borra.
Como sabemos que paquetes tenemos disponibles? Como buscamos un paquete?
azrael:~# apt-cache search apt-get
apt - Advanced front-end for dpkg
De esta forma, buscamos entre las bases de datos que bajamos con el apt -get update y nos muestra todas las
posibles respuestas. Entre ellas, podemos ver que encontro front-ends para el apt como el gnome-apt y el
synaptic. Ambas aplicaciones, son para administrar los paquetes de forma grafica, ideales para actualizar,
instalar y desinstalar todo desde el modo grafico. No tiene mucho valor entrar a ver estos programas en detalle
porque son bastante intuitivos por estar hechos para el modo grafico, pero si conviene que hablemos un poco
del aptitude. El aptitude es un front-end para consola muy bueno. Para instalarlo, ya saben, apt- get install
aptitude y con aptitude alcanza para arrancarlo. La interfaz es en consola, basada en ncurses y tiene menues,
metodos de busqueda, actualizacion de paquetes, sugerencia de paquetes, etc. Una herramienta que se vuelve
fundamental a corto plazo para la administracion de paquetes.
Por otro lado, se nos puede presentar la necesidad de saber mas informacion del paquete que buscamos. Por hay
necesitamos saber que version es o algo mas basico como averiguar para que sirve. Bueno, esto se hace de la
siguiente forma.
azrael:~# apt-cache show
aptitude Package: aptitude
Priority: optional
Section: admin
Installed-Size: 2646
Finalmente, no podemos dejar de mencionar el dpkg. En sus principios, el Debian no tenia el apt -get, tenia el
dpkg. Cumple funciones similares a las que el comando rpm de RedHat, pero sigue solucionando el problema
de las dependencias. La limitacion que tiene el dpkg, es que no puede acceder a internet o buscar en los
repositorios de Debian que definamos en el /etc/apt/sources.list como hace el apt-get. Entonces, para instalar
algo tenemos que bajarlo de internet y decirle donde lo dejamos.
kernel-image-2.4.24-azrael
(from
kernel-image-2.4.24-azrael_1.1_i386.deb)
...
Setting up kernel-image-2.4.24-azrael (1.1) ...
A new kernel image has been installed, and usually that means
that some action has to be taken to make sure that the new
kernel image is used next time the machine boots. Usually,
this entails running a ``bootloader'' like SILO, loadlin,
LILO, ELILO, QUIK, VMELILO, ZIPL, or booting from a floppy.
(Some boot loader, like grub, for example, do not need to be
run on each new image install, so please ignore this if you
are using such a boot loader).
A new kernel image has been installed at /boot/vmlinuz-2.4.24azrael (Size: 904kB)
Symbolic links, unless otherwise specified, can be found in /
LILO sets up your system to boot Linux directly from your
hard disk, without the need for booting from a boot floppy.
WARNING
If you are keeping another operating system or another version of
Linux on a separate disk partition, you should not have LILO
install a boot block now. Wait until you read the LILO
documentation. That is because installing a boot block now might
make the other system un-bootable. If you only want to run this
version of Linux, go ahead and install the boot block here. If it
does not work, you can still boot this system from a boot floppy.
Would you like to create a boot floppy now? [No]
You already have a LILO configuration in /etc/lilo.conf
Install a boot block using the existing /etc/lilo.conf? [Yes]
Testing lilo.conf ...
Testing successful.
Installing the partition boot sector...
Installation successful.
azrael:/usr/src#
El proceso de instalacion, no es solo desempaquetar y compiar archivos. En una gran cantidad de paquetes
luego de desarmar el deb el paso siguiente es un mini wizard con preguntas para darle una configuracion
minima a la aplicacin. En el caso del ejemplo, estamos instalando una imagen de un kernel, entonces como
paso siguiente modifica el lilo y lo ejecuta para que tome los cambios.
Para terminar, nos quedan un par de aclaraciones. En el /etc/apt/sources.list se configura tambien la version del
Debian que estamos usando, recuerdan el stable, testing y unstable? Bueno en este archivo le definimos que
version usamos. Fijense en el ejemplo siguiente.
azrael:/etc/apt# cat sources.list
#Debian official repository
En el ejemplo, estamos usando las fuentes oficiales de Debian, paquetes non-us y actualizaciones de seguridad.
Las actualizaciones de seguridad no se puede cambiar la version, estamos usando stable y solo hay
actualizaciones de seguridad para stable. En cambio en los dos primeros casos, podriamos cambiar de stable por
otra version de Debian, de la siguiente forma:
azrael:/etc/apt# cat sources.list
#Debian official repository
Luego de hacer modificaciones, recuerden de actualizar la base de datos con apt -get update. Ahora el paso
natural seria hacer apt-get update pero tengan presente que esto que vamos a hacer es actualizar TODO el
sistema con todas sus aplicaciones. Entonces para hacer este tipo de procedimientos especiales hay un switch
dedicado a mudarnos de una version a otra y es el apt-get dist-upgrade y asi tenemos actualizado nuestro
sistema sin reiniciar el equipo y sin downtime de servicios. Obviamente, cuando le llegue el turno a un servicio,
va a haber que reiniciarlo. Pero nada mas que reiniciar ese servicio y lo va a hacer automaticamente el apt-get
previo consultarnos.
El apt-get es una herramienta muy poderosa, hay muchas cosas que puede hacer y junto con el dpkg y el
aptitude la administracion de los paquetes se hace muy sencilla. Podemos ver los archivos de configuracion a
instalar en lugar de pisar los que ya hay, podemos ver que archivos instalo el paquete nuevo, tenemos un control
de cambios, podemos programar actualizaciones de seguridad diariamente para estar al dia, hasta se puede
hacer un proxy de los paquetes deb si tenemos muchos Debian instalados en nuestra red y de esta forma ahorrar
ancho de banda y ganar velocidad. Todo esto y mucho mas lo vamos a poder encontrar en la documentacion en
la pagina de Debian en varios idiomas por de mas explayado y con muchos ejemplos.
Paquetes RPM
RPM quiere decir Redhat Package Manager, o sea, que RPM es el programa administrador de paquetes de
Redhat. El formato RPM guarda dentro de cada paquete informacin suficiente para que el programa de gestin
conozca todo sobre l, lo que incluye la versin y los archivos y directorios donde se instala, una descripcin
del mismo, y la lista de otros paquetes que son requeridos. La extensin de los paquetes es: .rpm.
Note que los paquetes rpm , aparte de la extensin rpm en su nombre, tambin tienen un nmero, i386, i586
i686. Esto depende de su PC y la distribucin de Linux que use. Ese nmero corresponde al procesador en que se
-v
-q
--force
Para instalar
De update, actualizar
Viene de hash, tiene que ver con la base de datos donde se guardan los paquetes, guarda
una marca del progreso de la instalacin.
Conviene usarla con la opcin v
Le dice a RPM que haga una salida en formato extendido (verbose)
De query, para hacer consultas. Se puede combinar con ms opciones. Vea ms abajo.
Para forzar la instalacin de un paquete
Instalacin
# rpm vhi package.rpm
Instala package.rpm, si encuentra otra versin no hace nada. La opcin i lo que hace es
instalar el paquete, v muestra los archivos y directorios en la pantalla y h hace un hash.
Nota: Los paquetes RPM pueden depender de otros paquetes, lo cual
significa que otros paquetes deben ser instalados para funcionar
correctamente. Si intenta instalar un paquete para el cual existe una
dependencia no satisfecha, usted ver:
# rpm -ivh package-1.01.i386.rpm failed dependencies:
yoyo is needed by package-1.0-1
Para arreglar este error debemos instalar los paquetes requeridos. Si deseara
forzar la instalacin de todas maneras (una mala idea ya que el paquete
probablemente no funcionar correctamente), hay que usar --nodeps en la
lnea de comandos.
Actualizacin
# rpm Uvh package.rpm
La opcin U nos permite actualizar el paquete. Actualiza o instala package.rpm. Sirve si tenemos otra versin
inferior.
# rpm -Uvh yoyo-2.0-1.i386.rpm
yoyo
####################################
Lo que usted ve es la instalacin, lo que no ve es el hecho de que RPM desinstala automticamente cualquier
versin antigua del paquete yoyo. De hecho, usted quiz quiera usar siempre -U para instalar paquetes, ya que
funciona bien incluso cuando no hay ninguna versin anterior del paquete instalada.
Dado que RPM realiza actualizaciones inteligentes de los paquetes con archivos de configuracin, quizs vea
un mensaje como:
saving /etc/yoyo.conf as /etc/yoyo.conf.rpmsave
Esto significa que sus cambios al archivo de configuracin puedan no ser reversiblemente compatibles con el
nuevo archivo de configuracin en el paquete, por lo que RPM salva su archivo original, e instala uno nuevo.
Usted debera investigar y resolver las diferencias entre los dos archivos tan pronto como sea posible para
asegurarse de que su sistema contina funcionando adecuadamente. Dado que actualizar es realmente una
combinacin de desinstalacin e instalacin, usted puede encontrar los errores de los dos modos, y uno ms: Si
RPM piensa que est intentando actualizar un paquete con una versin antigua, veremos:
# rpm -Uvh yoyo-1.0-1.i386.rpm
yoyo
Para obligar a RPM a actualizar de todas maneras, use --oldpackage en la lnea de comandos
Consulta
Consultar la base de datos de paquetes instalados se realiza mediante la opcin rpm
-q. Ejemplo:
#rpm -q yoyo
yoyo-2.0-1
-a
-f <file>
-p <packagefile>
-i
En lugar de especificar el nombre del paquete, puede usar las siguientes opciones con -q
-l
-d
-c
Desinstalar un paquete
# rpm e package.rpm
Nota: Hemos usado el nombre yoyo para el paquete, no el nombre del paquete
original yoyo-1.0-1.i386.rpm.
Usted puede encontrar un error de dependencias cuando intente desinstalar el paquete si algn otro paquete
instalado depende del que est intentando borrar. Por ejemplo:
# rpm -e yoyo
removing these packages would break dependencies: yoyo
is needed by package-1.0-1
Para hacer que RPM ignore el error y desinstale el paquete de todas maneras (que es una mala idea porque el
paquete que depende de ste probablemente falle y no funcione correctamente), use --nodeps en la lnea de
comandos.
Verificacin
Verificar un paquete es comparar la informacin sobre los archivos instalados desde un paquete con la misma
informacin del paquete original. Entre otras cosas, verificar compara el tamao, chequeo MD5, permisos, tipo,
usuario y grupo de cada archivo.
# rpm -V yoyo
Verifica un paquete. Es decir verifica que todas los archivos el paquete yoyo estn como cuando fueron
originalmente instaladas. Se puede usar combinada con algunas de las opciones listadas para consultar. Por
ejemplo:
Para verificar que un paquete contiene un archivo en particular:
# rpm -Vf /bin/vi
Esto puede ser til si sospecha que su base de datos de paquetes RPM esta corrupta.
Si todo es verificado adecuadamente no habr ninguna salida en pantalla. Si hay alguna discrepancia s habr
informacin presentada. El formato de la salida es una cadena de 8 caracteres, una posible letra c denotando un
archivo de configuracin, y despus el nombre del archivo. Cada uno de los 8 caracteres denota el resultado de la
comparacin de un atributo del archivo con el valor de ese atributo en la base de datos RPM. Un solo . (punto)
significa que el test ha sido pasado. Los siguientes caracteres denotan fallo de ciertos tests:
5
S
L
T
D
U
G
M
Chequeo MD5
Tamao del archivo
Enlace simblico
Modificacin de la fecha del archivo
Dispositivo
Usuario
Grupo
Modo (incluye permisos y tipos de archivo)
Si tenemos alguna salida en pantalla, debo decidir si me conviene borrar o reinstalar el paquete, o alguna manera
de resolver el problema.