jueves, 31 de marzo de 2011

Agregar paquetes

Si hemos agregado un repositorio será porque queremos unos paquetes determinados, para eso usaremos anadir-paquete.php, donde pondremos el nombre del paquete en el lugar correspondiente, la linea que se genere al dar guardar se reflejará en nuestro script de paquetes,

Agregar repositorios de terceros II

Existen paquetes que no se encuentran en los repositorios oficiales de nuestra distribución, para poder instalar estos paquetes mediante la herramienta de gestión de cada distribución, debemos de añadir el repositorio al sources.list. Este proceso lo podremos hacer accediendo o modificando ese archivo durante el proceso de chroot, antes de instalar nada, claro. Después de modificar este archivo debemos de actualizar las fuentes con un update, para que tenga efecto y sepa donde buscar nuestro sistema.
En concreto, en la aplicación tenemos la carpeta repositorios con los repositorios de cada distribución disponible, en los cuales iremos agregando líneas correspondientes a repositorios necesarios; posteriormente ese archivo sustituirá al sources.list de la distro modificada para que tengamos nuestros repositorios.

Cada fichero consta de: repositorios oficiales + repositorios que añado.

Hay otra forma de añadir repositorios, y es: add-apt-repository ppa:
Por ejemplo: add-apt-repository ppa:sun-java-community-team/sun-java6

martes, 29 de marzo de 2011

Agregar repositorios de terceros I

Se tiene que poder en mi aplicación meter repositorios de terceros, a mano, esto lo haré con un típico cuadro en blanco (donde escribiremos la dirección) y de ahí, al dar aceptar, se añada esa línea a un archivo de texto; posteriormente ese archivo de texto (con un histórico de enlaces, ya que nuca se borra) se añadirá al sources.list de la distro.

Usaremos algo así:




Y lo que escribamos aquí irá a un archivo de texto...

lunes, 21 de marzo de 2011

Remasterizando Fedora

La idea de solucionar algunas cosas diferentes las he sacado de este foro. Continuaré mis tareas...

domingo, 20 de marzo de 2011

Ubuntu finalizado

Ya puedo dar por finalizada la creación de la live personalizada de Ubuntu (maverick).

Splash personalizado.
Ahora voy a hacer la de Debian (lenny).

viernes, 18 de marzo de 2011

Ya soy capaz de instalar paquetes...

¡Sí!!, ya instalo paquetes en Ubuntu utilizando mi aplicación. He instalado Dia, Gimp y Vim, para probar.

Y es que tenía un problema, no se me ejecutaba un cacho de código, he hecho dos funciones diferentes.

También he conseguido modificar el fondo de pantalla y el fondo de inicio con motivos de la UBU, se puede ver aquí cómo lo he hecho.

lunes, 14 de marzo de 2011

Ejecutar usando sudo con exec();

El usuario que usa Apache en Linux es www-data, entonces necesitaremos decir al sistema que este usuario puede ejecutar sudo, incluo le podemos especificar los comandos.
Esto lo haremos en el archivo /etc/sudoers, deberemos añadir al final esta línea:

www-data ALL=NOPASSWD: ALL

Y ya podremos ejecutar un script con comandos sudo, en mi caso:
shell_exec("./scripts/creaUbuntu.sh");


La idea la he sacado, tras muchas vueltas, de aquí.

Os dejo como queda mi /etc/sudoers.

También deberemos de dar permisos a todos los scripts que se ejecutan y no son creados por www-data.

domingo, 13 de marzo de 2011

Servidor virtual con Apache

Es una tarea recomendable tomarse su tiempo en hacer esto, ya que nos agilizará el trabajo... Yo, la verdad, desconocía esto, tenía algunas nociones sobre Apache, pero desconocía esta opción.

Gracias a quenerapu.com.

componer.php

Esta última página solo contará con código php para realizar los scripts y las ejecuciones necesarias. A lo sumo puede sacar un mensaje de proceso exitoso o un error, indicando el final del proceso.

He pensado que se puede colocar un enlace para descargar la iso final.

Creando Knoppix

Este usa el sistema Cloop, también usa APT, y me lo descargaré de su página.

Con lo cual, trabajaré en un principio con:
  • Ubuntu.
  • Debian.
  • Knoppix.
  • Fedora.

Modificaciones en la aplicación: index.php

Antes contábamos con index.html pero pienso que es mejor que sea php, nos ahorraremos hacer páginas y lo solucionaremos todo con unos if ya que index.php será un formulario también.

Un formulario de tipo:
Ubuntu

Tal

Y tal

Pascual

Los se llaman radio.

Al dar enviar iremos a selecionar.php, donde seleccionaremos nuestros paquetes.

sábado, 12 de marzo de 2011

Creando un formulario en PHP para elegir los paquetes a instalar: seleccion.php

Un formulario a base de checkbox que posteriormente dando a un botón mande la información que queramos y cree el script.

Añadir componente 01

Añadir componente 02

Añadir componente 03

Añadir componente 04



Algo así nos quedará, al dar enviar iremos a una página, componer.php, la cual nos generará lo que deseamos.

jueves, 10 de marzo de 2011

apt-get -h

apt 0.8.3ubuntu7 para i386 compilado en Oct  5 2010 14:07:36
Uso: apt-get [opciones] orden
     apt-get [opciones] install|remove paq1 [paq2 ...]
     apt-get [opciones] source paq1 [paq2 ...]
apt-get es una sencilla interfaz de línea de órdenes para descargar e
instalar paquetes. Los comandos más frecuentemente usados son update
e install.
Comandos:
   update - Actualizar la lista de paquetes
   upgrade - Realizar una actualización
   install - Instalar nuevos paquetes (libc6 es un paquete, no libc6.deb)
   remove - Desinstalar paquetes
   autoremove - Desinstalar automáticamente paquetes en desuso
   purge - Desinstalar paquetes y sus archivos de configuración
   source - Descargar las fuentes de paquetes
   build-dep - Configurar la dependencias de generación de paquetes fuente
   dist-upgrade - Actualizar la distribución, ver apt-get(8)
   dselect-upgrade - Seguir las selecciones de dselect
   clean - Borrar los archivos descargados
   autoclean - Borrar los antiguos archivos descargados
   check - Comprobar que no existen dependencias incumplidas
   markauto - Marca los paquetes indicados como instalados automáticamente
   unmarkauto - Marca los paquetes indicados como instalados manualmente
Opciones:
  -h  Este texto de ayuda.
  -q  Salida para registros - sin indicador de progreso
  -qq Sin salida salvo que haya errores
  -d  Sólo descargar - No se instalan ni desempaquetan archivos
  -s  No actúa. Realiza una simulación
  -y  Asume como Sí la respuesta a todas las preguntas y no pregunta nada
  -f  Intenta corregir un sistema las dependencias incumplidas
  -m  Intenta continuar aunque haya archivos ilocalizables
  -u  Muestra también la lista de paquetes actualizados
  -b  Construye el paquete fuente después de descargarlo
  -V  Muestra los números de versión en la forma extendida
  -c=? Leer este archivo de configuración
  -o=? Establecer alguna opción de configuración, ej. -o dir::cache=/tmp
Ver las páginas del manual de apt-get(8), sources.list(5) y apt.conf(5)
para más información y opciones.
                       Este APT tiene poderes de Super Vaca.


A veces en Linux está lo que buscamos, sólo hay que mirar la ayuda...

miércoles, 9 de marzo de 2011

Repositorios en Ubuntu

Un repositorio es un lugar, ordenado, donde encontraremos el software necesario para una distribución, y para Ubuntu tenemos esto.

Nuestro /etc/sources.list tendrá las rutas a estos repositorios.
Después haremos apt-get install <paquete>, y ese paquete estará en el repositorio.

qemu

Una herramienta muy util que nos permitirá ejecutar nuestra live desde la iso, o el binario que sea.

sudo apt-get install qemu
qemu -cdrom imagen.iso
o
qemu - hda imagen.img

Así nos ahorraremos unos cuantos CD'S...

Creando Ubuntu, Debian y Fedora

Usan el sistema Squash, nos descargaremos la iso y accederemos al squashfs para usar chroot.

El Squash es un sistema de compresión (para un sistema de archivos) que nos permite reducir el tamaño para grabar un CD.

Ubuntu lo descargo desde su página oficial y Debian lo descargo con live helper, ambos usan APT.

Fedora también lo descargo de su página, y tendré en cuenta que usa YUM como herramienta de gestión de paquetes.

Haciendo la lista de los paquetes a instalar

Ya vimos algunas soluciones, creo que la más óptima a usar es el comando apt-get install, ya que te puedes olvidar de las dependencias de cada paquete y no te vuelves loco; si no te empieza a fallar y no terminas nunca.

martes, 8 de marzo de 2011

chroot

¿Qué es chroot??

Es un comando, en los sistemas Unix, que nos permite cambiar la raíz / del sistema, creando una jaula, en la cual podremos instalar, actualizar o lo que queramos hacer sobre ese sistema de ficheros. Aquí hay más info.

Este comando me daba un fallo, no fallo, no hacía lo que quería, aquí hayé la solución.


Uso: chroot NEWROOT [ORDEN [ARG]...]
  o:  chroot OPCIÓN
Ejecuta ORDEN siendo NUEVO_RAÍZ el directorio raíz.
  --userspec=USER:GROUP  especifica usuario y grupo (ID o nombre) a usar
  --groups=G_LIST        especifica grupos suplementarios como g1,g2,..,gN
      --help     muestra esta ayuda y finaliza
      --version  informa de la versión y finaliza
Si no se especifica ninguna orden, ejecuta «${SHELL} -i»
(predeterminado: /bin/sh).

miércoles, 2 de marzo de 2011

Software que usaré para la aplicación


Eclipse.
Kompozer.
...más un server (Apache), el editor de Ubuntu para los scripts, Gedit y Gimp para tratar imágenes.

Debemos saber de que todo lo que usaremos en este proyecto nunca tendrá una licencia comercial.