Obre el menú principal

Diferència entre revisions de la pàgina «Creació d'un paquet deb»

(Es crea la pàgina amb « Veamos un ejemplo muy simple, pero que sentara las bases para que cualquiera pueda “fabricarse” su .deb a medida. Por ejemplo, yo tengo un script llamado “ex...».)
 
Línia 1: Línia 1:
 Veamos un ejemplo muy simple, pero que sentara las bases para que cualquiera pueda “fabricarse” su .deb a medida.
+
 Veamos un ejemplo muy simple, pero que sentara las bases para que cualquiera pueda “fabricarse” su .deb a medida.  
  
 
Por ejemplo, yo tengo un script llamado “execute.sh” que quiero instalar en /usr/bin del sistema mediante un fichero .deb. Los pasos a ejecutar serian:  
 
Por ejemplo, yo tengo un script llamado “execute.sh” que quiero instalar en /usr/bin del sistema mediante un fichero .deb. Los pasos a ejecutar serian:  
  
 
1. Creamos un directorio nuevo en el directorio donde tengamos los ficheros que queremos usar. Podemos usar cualquier nombre, pero luego mantener esa referencia. En el ejemplo yo uso “deb”  
 
1. Creamos un directorio nuevo en el directorio donde tengamos los ficheros que queremos usar. Podemos usar cualquier nombre, pero luego mantener esa referencia. En el ejemplo yo uso “deb”  
 
+
<pre>mkdir deb</pre>
mkdir deb
 
 
 
2. Sobre ese directorio recien creado, tenemos que recrear la estructura destino que queremos utilizar. Como yo quiero copiar mi script sh en /usr/bin, entonces creo el directorio /deb/usr/bin:
 
 
 
mkdir -p ./deb/usr/bin
 
 
 
3. Ahora copiamos el script a ese directorio (o los ficheros que quiera añadir). Si quisiera copiar a otro directorio tendriamos que reconstruir a partir de “deb” esos directorios nuevos.
 
 
 
cp ./execute.sh ./deb/usr/bin
 
 
 
4. Ahora creamos un subdirectorio llamado DEBIAN, que contendra el fichero de paquete de control. Este es un fichero con un determinado formato y que proporciona informacion del contenido del paquete .deb.
 
 
 
mkdir ./deb/DEBIAN
 
 
 
5. Creamos un fichero de control con el siguiente comando:
 
 
 
touch ./deb/DEBIAN/control
 
 
 
6. Abrimos el fichero de control y copiamos el siguiente texto. Modificando las partes que sean necesarias.
 
 
 
Package: Aquielnombredelpaquete (cuidado, no se permiten espacios o caracteres _ ) <br>Priority: optional <br>Section: misc <br>Maintainer: aquielnombredelcreadorysuemail <br>Architecture: all <br>Version: 1.0 <br>Depends: package1, package2, ......... (si tiene alguna dependencia por aqui el nombre) <br>Description: aqui_una_descripcion_corta_del_paquete <br>Y aqui una descripcion larga (Ojo, no elimines el espacio inicial al comienzo de esta linea) <br>(y por ultimo elimina esta linea y deja una linea vacia)
 
 
 
¿Lioso?, Tranquilo, aqui te dejo un ejemplo de mi fichero de control:
 
 
 
Package: SCRIPTS <br>Priority: optional <br>Section: misc <br>Maintainer: piwi <br>Architecture: all <br>Version: 1.0 <br>Depends: <br>Description: Pack de scripts con utilidades varias <br>Contiene scripts de utilidad general para administrar el sistema, utilidades como son ssh remoto, <br>telnet remoto, scp, matar procesos, etc...
 
 
 
7. Vale, ahora cambiamos el propietario de ese directorio:
 
 
 
sudo chown -R root.root ./deb
 
 
 
8. Y por ultimo creamos el paquete en formato .deb:
 
 
 
dpkg -b ./deb /ruta/donde/quieres/dejar/el/nombre_paquete.deb
 
 
 
Por ejemplo: dpkg -b ./deb /home/jose/SCRIPTS.deb me generaria mi paquete .deb con mi script listo para instalar.
 
 
 
¿Complicado?. Pues tranquilo otra vez, en el siguiente post veremos como hacer todo esto de manera grafica. <br>Pero queria enseñarlo primero de manera manual, para que cualquiera pudiera comprender las bases minimas de la anatomia de un fichero .deb.
 
 
 
en particular me gusta los paquetes rpm,pero bueno hay de gustos a gustos
 
 
 
fuente:http://ubuntuforums.org/showthread.php?t=545380
 
 
 
Lo anterior está muy bien, pero… y si quiero crear un .deb personalizado para por ejemplo copiar mis scripts bash en alguna ruta, o copiar alguna imágen en alguna otra ruta (por ejemplo: un .deb que me instale fondos de pantalla nuevos en /usr/share/backgrounds). ¿Como lo hariamos?.
 
 
 
Veamos un ejemplo muy simple, pero que sentara las bases para que cualquiera pueda “fabricarse” su .deb a medida.
 
 
 
Por ejemplo, yo tengo un script llamado “execute.sh” que quiero instalar en /usr/bin del sistema mediante un fichero .deb. Los pasos a ejecutar serian:
 
 
 
1. Creamos un directorio nuevo en el directorio donde tengamos los ficheros que queremos usar. Podemos usar cualquier nombre, pero luego mantener esa referencia. En el ejemplo yo uso “deb”
 
 
 
mkdir deb
 
 
 
 
2. Sobre ese directorio recien creado, tenemos que recrear la estructura destino que queremos utilizar. Como yo quiero copiar mi script sh en /usr/bin, entonces creo el directorio /deb/usr/bin:  
 
2. Sobre ese directorio recien creado, tenemos que recrear la estructura destino que queremos utilizar. Como yo quiero copiar mi script sh en /usr/bin, entonces creo el directorio /deb/usr/bin:  
 
+
<pre>mkdir -p ./deb/usr/bin</pre>
mkdir -p ./deb/usr/bin  
 
 
 
 
3. Ahora copiamos el script a ese directorio (o los ficheros que quiera añadir). Si quisiera copiar a otro directorio tendriamos que reconstruir a partir de “deb” esos directorios nuevos.  
 
3. Ahora copiamos el script a ese directorio (o los ficheros que quiera añadir). Si quisiera copiar a otro directorio tendriamos que reconstruir a partir de “deb” esos directorios nuevos.  
 
+
<pre>cp ./execute.sh ./deb/usr/bin</pre>
cp ./execute.sh ./deb/usr/bin  
 
 
 
 
4. Ahora creamos un subdirectorio llamado DEBIAN, que contendra el fichero de paquete de control. Este es un fichero con un determinado formato y que proporciona informacion del contenido del paquete .deb.  
 
4. Ahora creamos un subdirectorio llamado DEBIAN, que contendra el fichero de paquete de control. Este es un fichero con un determinado formato y que proporciona informacion del contenido del paquete .deb.  
 
+
<pre>mkdir ./deb/DEBIAN</pre>
mkdir ./deb/DEBIAN  
 
 
 
 
5. Creamos un fichero de control con el siguiente comando:  
 
5. Creamos un fichero de control con el siguiente comando:  
 
+
<pre>touch ./deb/DEBIAN/control</pre>
touch ./deb/DEBIAN/control  
 
 
 
 
6. Abrimos el fichero de control y copiamos el siguiente texto. Modificando las partes que sean necesarias.  
 
6. Abrimos el fichero de control y copiamos el siguiente texto. Modificando las partes que sean necesarias.  
  
Package: Aquielnombredelpaquete (cuidado, no se permiten espacios o caracteres _ ) <br>Priority: optional <br>Section: misc <br>Maintainer: aquielnombredelcreadorysuemail <br>Architecture: all <br>Version: 1.0 <br>Depends: package1, package2, ......... (si tiene alguna dependencia por aqui el nombre) <br>Description: aqui_una_descripcion_corta_del_paquete <br>Y aqui una descripcion larga (Ojo, no elimines el espacio inicial al comienzo de esta linea) <br>(y por ultimo elimina esta linea y deja una linea vacia)  
+
Package: Aquielnombredelpaquete (cuidado, no se permiten espacios o caracteres _ ) <br>Priority: optional <br>Section: misc <br>Maintainer: aquielnombredelcreadorysuemail <br>Architecture: all <br>Version: 1.0 <br>Depends: package1, package2, ......... (si tiene alguna dependencia por aqui el nombre) <br>Description: aqui_una_descripcion_corta_del_paquete <br>Y aqui una descripcion larga (Ojo, no elimines el espacio inicial al comienzo de esta linea) <br>'''(y por ultimo elimina esta linea y deja una linea vacia)'''
  
 
¿Lioso?, Tranquilo, aqui te dejo un ejemplo de mi fichero de control:  
 
¿Lioso?, Tranquilo, aqui te dejo un ejemplo de mi fichero de control:  
 
+
<pre>Package: SCRIPTS
Package: SCRIPTS <br>Priority: optional <br>Section: misc <br>Maintainer: piwi <br>Architecture: all <br>Version: 1.0 <br>Depends: <br>Description: Pack de scripts con utilidades varias <br>Contiene scripts de utilidad general para administrar el sistema, utilidades como son ssh remoto, <br>telnet remoto, scp, matar procesos, etc...  
+
Priority: optional
 
+
Section: misc
 +
Maintainer: piwi
 +
Architecture: all
 +
Version: 1.0
 +
Depends:
 +
Description: Pack de scripts con utilidades varias
 +
Contiene scripts de utilidad general para administrar el sistema, utilidades como son ssh remoto,
 +
telnet remoto, scp, matar procesos, etc...</pre>
 
7. Vale, ahora cambiamos el propietario de ese directorio:  
 
7. Vale, ahora cambiamos el propietario de ese directorio:  
 
+
<pre>sudo chown -R root.root ./deb</pre>
sudo chown -R root.root ./deb  
 
 
 
 
8. Y por ultimo creamos el paquete en formato .deb:  
 
8. Y por ultimo creamos el paquete en formato .deb:  
 
+
<pre>dpkg -b ./deb /ruta/donde/quieres/dejar/el/nombre_paquete.deb</pre>
dpkg -b ./deb /ruta/donde/quieres/dejar/el/nombre_paquete.deb  
 
 
 
 
Por ejemplo: dpkg -b ./deb /home/jose/SCRIPTS.deb me generaria mi paquete .deb con mi script listo para instalar.  
 
Por ejemplo: dpkg -b ./deb /home/jose/SCRIPTS.deb me generaria mi paquete .deb con mi script listo para instalar.  
  
¿Complicado?. Pues tranquilo otra vez, en el siguiente post veremos como hacer todo esto de manera grafica. <br>Pero queria enseñarlo primero de manera manual, para que cualquiera pudiera comprender las bases minimas de la anatomia de un fichero .deb. <br>
+
fuente:http://ubuntuforums.org/showthread.php?t=545380<br>

Revisió del 06:29, 7 maig 2011

 Veamos un ejemplo muy simple, pero que sentara las bases para que cualquiera pueda “fabricarse” su .deb a medida.

Por ejemplo, yo tengo un script llamado “execute.sh” que quiero instalar en /usr/bin del sistema mediante un fichero .deb. Los pasos a ejecutar serian:

1. Creamos un directorio nuevo en el directorio donde tengamos los ficheros que queremos usar. Podemos usar cualquier nombre, pero luego mantener esa referencia. En el ejemplo yo uso “deb”

mkdir deb

2. Sobre ese directorio recien creado, tenemos que recrear la estructura destino que queremos utilizar. Como yo quiero copiar mi script sh en /usr/bin, entonces creo el directorio /deb/usr/bin:

mkdir -p ./deb/usr/bin

3. Ahora copiamos el script a ese directorio (o los ficheros que quiera añadir). Si quisiera copiar a otro directorio tendriamos que reconstruir a partir de “deb” esos directorios nuevos.

cp ./execute.sh ./deb/usr/bin

4. Ahora creamos un subdirectorio llamado DEBIAN, que contendra el fichero de paquete de control. Este es un fichero con un determinado formato y que proporciona informacion del contenido del paquete .deb.

mkdir ./deb/DEBIAN

5. Creamos un fichero de control con el siguiente comando:

touch ./deb/DEBIAN/control

6. Abrimos el fichero de control y copiamos el siguiente texto. Modificando las partes que sean necesarias.

Package: Aquielnombredelpaquete (cuidado, no se permiten espacios o caracteres _ )
Priority: optional
Section: misc
Maintainer: aquielnombredelcreadorysuemail
Architecture: all
Version: 1.0
Depends: package1, package2, ......... (si tiene alguna dependencia por aqui el nombre)
Description: aqui_una_descripcion_corta_del_paquete
Y aqui una descripcion larga (Ojo, no elimines el espacio inicial al comienzo de esta linea)
(y por ultimo elimina esta linea y deja una linea vacia)

¿Lioso?, Tranquilo, aqui te dejo un ejemplo de mi fichero de control:

Package: SCRIPTS
Priority: optional
Section: misc
Maintainer: piwi
Architecture: all
Version: 1.0
Depends:
Description: Pack de scripts con utilidades varias
Contiene scripts de utilidad general para administrar el sistema, utilidades como son ssh remoto,
telnet remoto, scp, matar procesos, etc...

7. Vale, ahora cambiamos el propietario de ese directorio:

sudo chown -R root.root ./deb

8. Y por ultimo creamos el paquete en formato .deb:

dpkg -b ./deb /ruta/donde/quieres/dejar/el/nombre_paquete.deb

Por ejemplo: dpkg -b ./deb /home/jose/SCRIPTS.deb me generaria mi paquete .deb con mi script listo para instalar.

fuente:http://ubuntuforums.org/showthread.php?t=545380