Beruflich Dokumente
Kultur Dokumente
-GESTIN DE SOFTWARE
La gran variedad de distribuciones de GNU/Linux dirigidas a distintos fines y
usuarios, tambin est haciendo que se desarrollen nuevos sistemas de
distribucin de software, que aunque con una base comn, difieren en la forma de
organizar y relacionar el software entre s
Analizaremos los sistemas de distribucin y compresin tradicionales, de forma
individual y en conjuncin, para posteriormente estudiar los dos principales
sistemas de distribucin, rpm y deb, entrando no slo en su manejo, sino en su
creacin.
Conocer los principales front-ends o software grfico de gestin de paquetes para
acercarnos ms a la realidad existente.
$ mkdir /curso/modelamiento
$ cd /curso/modelamiento
Para llenarlo rpidamente de ficheros, podemos hacer:
$ cp /dev/null /curso/modelamiento/examen
$ cp -r /curso/modelamiento/ /curso/modelamiento/notas
$ chmod 400 /curso/modelamiento/examen
$ ls -l /curso/modelamiento total 0
$ cd /curso
$ tar cvf /curso/modelamiento.tar modelamiento
modelamiento/
modelamiento/notas/
modelamiento/notas/examen
modelamiento/examen
$ ls -l /curso/modelamiento.tar
-rw-r--r-- 1 user user 10240 nov 17 18:03 /curso/modelamiento.tar
Si ahora borrsemos el directorio modelamiento:
$ rm -rf /curso/modelamiento
$ ls modelamiento
ls: modelamiento: No such file or directory
1.2.-COMPRIMIENDO: GZIP
toda informacin puede ser codificada de forma que se reduzca el espacio que
ocupa sin perder parte de la misma, se trata de ficheros de texto, ejecutables o de
cualquier otro tipo, puesto que siempre aparecen en ellos secuencias de bytes que
se repiten y son susceptibles de ser comprimidas (simplificadas).
Una herramienta muy til para la compresin y descompresin de distintos
formatos basados en la codificacin Lempel-Ziv es la utili-dad gzip/gunzip.
La sintaxis bsica es muy simple (en orden: comprimir, descomprimir):
gzip nombre_fichero
gunzip nombre_fichero.gz
Debido a este funcionamiento y a la capacidad de compresin secuencial, es el
complemento ideal para tar.
Normalmente,
esto
no
supone
un
problema
con
ficheros
de
tamao
$ ls -l /curso/modelamiento.tar
-rw-r--r-- 1 user user 10240 Nov 17 18:03 /curso/modelamiento.tar $
gzip /curso/modelamiento.tar
Y obtendremos un fichero comprimido:
$ ls -l /curso/modelamiento.tar.gz
-rw-r--r-- 1 user user 191 Nov 17 18:03 /curso/modelamiento.tar.gz
1.3.-RPM
Con nombre autorreferente RPM Package Manager (Gestor de Paquetes RPM), es
un formato para la distribucin y gestin de paquetes de software entendidos en
el sentido de mdulos funcionales indivisibles. La distribucin que lo desarroll e
implement en primer lu-gar fue Red Hat Linux, a la que siguieron Suse y
Mandrake entre otras.
La ventaja de utilizar RPM en vez de ficheros .tar (o .tar.gz) consiste en las
opciones adicionales que RPM permite especificar, a la perso-na que crea el
paquete, para ser ejecutadas automticamente en la instalacin, desinstalacin,
etc. del mismo. De esta forma se simpli-fica al mximo la tarea al usuario final y,
si el paquete est creado correctamente, mantiene una lista de los paquetes
instalados y las relaciones entre ellos para evitar que aparezcan conflictos entre
los ficheros instalados, o pendientes de instalar.
Las fases del sistema RPM se pueden dividir en tres partes:
1) El creador del paquete .rpm
2) Una base de datos de paquetes instalados en el sistema del usuario
3) El programa rpm en s
1.3.1.-INSTALACIN DE UN RPM
La instalacin de un paquete en versin ejecutable no supone mayor dificultad con
la opcin -i de rpm:
La opcin v (minscula) hace que se muestren los pasos que se van dando. La h
muestra las barras de progreso (#).
##################### [100%]
Junto con la base de datos listando los paquetes instalados, esto hace que al
instalar un paquete sea posible detectar la falta de alguna dependencia (otro
paquete) necesaria para que funcione correctamente:
$ rpm -ivh gaim-1.0.3-1mdk.i586.rpm
error: Failed dependencies:
libgaim-remote = 1:1.0.3-1mdk is needed by gaim-1.0.3-1mdk
Para resolverlas ser necesario descargar el paquete que falta e instalarlo antes o
junto al paquete que lo necesita:
$ rpm -ivh gaim-1.0.3-1mdk.i586.rpm \
> libgaim-remote0-1.0.3-1mdk.i586.rpm
Preparing...
1:libgaimremote0
2:gaim
################
##### [100%]
############# [ 50
######## %]
############# [100
######## %]
##################### [100%]
$ echo $?
0
Si no es posible instalar el paquete aparece el error
$ rpm -ivh --test gaim-1.0.3-1mdk.i586.rpm error: Failed
dependencies:
libgaim-remote = 1:1.0.3-1mdk is needed by gaim-1.0.3-1mdk
libgaim-remote.so.0 is needed by gaim-1.0.3-1mdk
$ echo $?
1
Si fallan las dependencias, tambin se puede elegir ignorar este fallo e instalar el
paquete de todas formas con la opcin --nodeps, aunque probablemente luego no
funcione:
$ rpm -ivh --nodeps gaim-1.0.3-1mdk.i586.rpm
Preparing...
2:gaim
##################### [100%]
##################### [100%]
Preparing...
2:gaim
###################
## [100%]
###################
## [100%]
################
##### [100%]
############# [ 50
######## %]
############# [100
######## %]
################
##### [100%]
############# [ 50
######## %]
############# [100
######## %]
Para ver una lista de todos los paquetes instalados, podemos usar la opcion a
(All = todos):
$ rpm -qa libltdl31.5.6-4mdk termcap11.0.1-8mdk libofx0.6.6-2mdk
...
Para consultar los datos de un paquete -i (informacin):
$ rpm -qi gaim
A
La lista de ficheros contenidos en el paquete puede consultarse con
-l. Aadiendo -v se muestran tambin los datos de cada fichero:
$ rpm -qlv
gaim
Tambin se puede solicitar slo determinado tipo de ficheros,
como documentacin -d:
$ rpm -qld coreutils
1.3.4.-DESINSTALACIN DEL RPM
La desinstalacin de un paquete se lleva a cabo con la opcin -e.
$ rpm -ev libgaimremote0 error:
Failed
dependencies:
libgaim-remote = 1:1.0.3-1mdk is needed by (installed)
gaim-1.0.3-1mdk libgaim-remote.so.0 is needed by
(installed) gaim-1.0.3-1mdk
es suficiente con especificar a la vez todos los paquetes que se van a desinstalar
$ rpm -ev libgaim-remote0 gaim
1.4DEB
El formato de paquetes utilizado por Debian y distribuciones deriva-das es el
Documentacin de programa:
Ayuda en lnea
Pgina de manual (man)
Documentacin de usuario:
Manual de uso
Libros y tutoriales
Guas de enseanza o autoaprendizaje
2.3.- EL PROBLEMA DE DOCUMENTAR SOFTWARE LIBRE
Nos encontramos ante el problema de que estamos documentando un software
potencialmente realizado por muchas personas, que puede ser libremente
modificado y mejorado. Es obvio, entonces, que la documentacin del software
libre debe po-der ser libremente modificada y mejorada para acompaar la evolucin del software libre. De hecho, se considera que software libre sin
documentacin libre no es un software libre, ya que el desarrollo libre del software
se puede ver perjudicado por la falta de un acceso libre a su documentacin
2.5.- FORMATOS
LIBRES Y PROPIETARIOS
Tan
importante
como
tener
las
libertades
para
la
documentacin,
es
2.6.-CREACIN
DE PGINAS DE MANUAL
2.7.- TEX
LATEX
2.8.- SGML
SGML son las siglas de standard generalized markup language y es un sistema
para organizar y etiquetar elementos en un documento
SGML es utilizado en grandes documentos que son objeto de fre-cuentes
revisiones y requieren ser impresos en diferentes formatos. Como SGML es un
sistema complejo y amplio, no es utilizado en forma masiva. No obstante, el
estndar HTML para el World Wide Web es una implementacin de SGML; es decir,
DE CDIGO FUENTE
3.- COMUNIDADES
Con el actual crecimiento de la red y los nuevos lenguajes de desarrollo web, hemos llegado a
un punto en el que la cantidad de ser-vicios ofrecidos en portales para los desarrolladores e
ingenieros de software es enorme, y no slo abarca herramientas que ayudan a stos en su
desarrollo diario, sino que ponen en contacto a patrocina-dores de proyectos con
desarrolladores, de modo que el software libre pueda crecer y expandirse
3.1.-RECURSOS
DOCUMENTALES
PARA
EL
INGENIERO
EN
SOFTWARE LIBRE
En este punto tratamos de mostrar los recursos documentales ms conocidos a
travs de los que el ingeniero de software libre dispondr no slo de manuales,
sino de cursos, guas, normativa, tipos de licencia e incluso en algunos casos
proyectos completos de los que tomar ejemplo para elaborar el nuestro
http://www.tldp.org/
Desde ste podemos acceder a mucha
documentacin libre:
1.-guias
2.-Pginas de manual Linux
3.-Manuales
4.-Cursos
http://www.freestandards.org
Esta
organizacin
(Free
Standards
Group)
http://www.unix.org
Este producto, as como la pgina, pertenecen a una
empresa denominada Open Group, que est especializada
en el desarrollo de estndares globales e integracin de
informacin para una interaccin global. UNIX es el sistema
operativo predecesor de Linux. Muchas de las caractersticas de
Linux se
heredan
de
UNIX
(sistema
robusto,
esta-ble,
multiusuario, multitarea, multiplataforma, etc.). Por ello esta pgina proporciona informacin de gran
inters dentro del entorno del software libre. Desde estndar, certificaciones hasta consultas y noticias
relacionadas con el sistema operativo.
http://www.opensource.org
1) Libre redistribucin.
2) Acceso al cdigo fuente.
3) Permiso de realizar trabajos derivados.
http://standards.ieee.org/
Esta pgina se dedica por completo a la
definicin de estndares bajo la normativa IEEE
(Institute
of
Engineering).
Electrical
and
Concretamente
Electronic
de
estndar
POSIX.
POSIX son las iniciales de portable operating system interface. Es un estndar que pretende
conseguir la portabilidad del software al nivel del cdigo fuente. En otras palabras: un
programa escrito para un SO que sea compatible con POSIX ha de poderse compilar y
ejecutar sobre cualquier otro "POSIX", aunque sea de otro fabricante distinto
3.2.- COMUNIDAD
Con la presentacin de stos, intentamos dar nicamente una referencia a la gran cantidad de
foros sobre distintos temas relaciona-dos con el software libre
http://www.mail-archive.com
http://www.advogato.org/
Advogato, segn su mission statement es un sitio para
la comunidad de desarrolladores Open Source. El sitio,
con un diseo muy simple. La opcin ms interesante
del sitio consiste en crear un diario pblico que otros
pueden leer y comentar, donde los desarrolladores
pueden compartir su da a da. Otras opciones son crear proyectos, establecer relaciones entre
proyectos y usuarios, certificar usuarios y postear artculos (se requiere un cierto nivel de
certificacin).
3.3.- ALBERGAR
La operativa, tanto de creacin de proyecto como las utilidades que nos dan,
son similares. La nica barrera puede ser el idioma, para la que presentamos la
alternativa hispanohablante, software-libre.org.
Sourceforge.net
HTTP://WWW.SOFTWARELIBRE.ORG.PE/
proyectos
pero
en
espaol.
Es
hisel idioma ingls.