Como lograr persistencia en lives usb de Debian o derivados?
Moderador: frank
- GhOsT14105
- Mensajes: 87
- Registrado: Vie, 08 Abr 2011, 11:28
- Contactar:
Como lograr persistencia en lives usb de Debian o derivados?
Saludos de antemano.
Necesito encarecidamente si alguien sabe como lograr tener un live usb de Debian o derivados de dicha distro y que a la ves este tenga persistencia, se que en ubuntu eso se puede por que lo he hecho, pero en Debian, no se, ni me imagino como se hace.
Aclaro que no tengo acceso al mas alla (internet).
Necesito encarecidamente si alguien sabe como lograr tener un live usb de Debian o derivados de dicha distro y que a la ves este tenga persistencia, se que en ubuntu eso se puede por que lo he hecho, pero en Debian, no se, ni me imagino como se hace.
Aclaro que no tengo acceso al mas alla (internet).
Nacimos esclavos del software privativo y moriremos libres de el.
Escucha a tu disco duro y ve que tiene que decirte:
sudo cat /dev/sda | aplay -fdat
PD: Sirve para otros dispositivos, como USB, CD, etc.
Escucha a tu disco duro y ve que tiene que decirte:
sudo cat /dev/sda | aplay -fdat
PD: Sirve para otros dispositivos, como USB, CD, etc.
Re: Como lograr persistencia en lives usb de Debian o deriva
Suponiendo que tienes un live CD ya creado, montas la imagen iso:
Copias el contenido a la memoria usb:
Renombras el fichero isolininux.cfg a syslinux.cfg y lo copias en la raíz de la memoria es decir afuera. Luego desmontas la memoria y sin quitarla realizaras esto:
si tu memoria es por ejemplo /dev/sdb1 realizas este paso:
Luego con el gparted te fijas que este marcada como booteable, de lo contrario le das un clic en Gestionar Opciones y das un clic en boot.
Hasta aquí el proceso típico de crear un live USB, ahora veremos como crear la persistencia:
Ahora abrimos el fichero syslinux.cfg con el editor de texto de tu preferencia y copiaremos las siguientes lineas:
Las lineas más importantes que inician la memoria en modo peristente son estas
noprompt cdrom-detect/try-usb=true persistent locale=es_ES
Espero esto te sirva, si tienes alguna duda postealo.
Código: Seleccionar todo
mkdir $HOME/media
Código: Seleccionar todo
fuseiso -p /direccion/imgen.iso $HOME/media
Código: Seleccionar todo
cp -r $HOME/media/* /media/memoria-montada
Código: Seleccionar todo
sudo fdisk -l
Código: Seleccionar todo
su
# cat /usr/lib/syslinux/mbr.bin > /dev/sdb
[b]Ojo: no deben ponerle el 1 después de /dev/sdb[/b]
# syslinux --install /dev/sdb1
Hasta aquí el proceso típico de crear un live USB, ahora veremos como crear la persistencia:
Código: Seleccionar todo
cd /media/memoria-montada
dd if=/dev/zero of=casper bs=1M count=100
mkfs.ext2 ./casper
Código: Seleccionar todo
label live-persistent
menu label live - boot the Live System - Guardar Cambios - Unsecure
kernel /casper/vmlinuz
append noprompt cdrom-detect/try-usb=true persistent locale=es_ES file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.gz --
noprompt cdrom-detect/try-usb=true persistent locale=es_ES
Espero esto te sirva, si tienes alguna duda postealo.
- GhOsT14105
- Mensajes: 87
- Registrado: Vie, 08 Abr 2011, 11:28
- Contactar:
Re: Como lograr persistencia en lives usb de Debian o deriva
Todavia no he probado, en cuanto lo tenga lo hare, pero te dire que esas lineas las he estudiado y he visto algo parecido en lineas creadas por unetbooting y te cuento que solo funcionan solo para distribuciones hechas a partir de ubuntu, de todas formas estoy probando con algo que encontro un socio en internet para sistemas debian, mas adelante les comentare como se hace, cuando este casi 100% de que funcione bien..
Nacimos esclavos del software privativo y moriremos libres de el.
Escucha a tu disco duro y ve que tiene que decirte:
sudo cat /dev/sda | aplay -fdat
PD: Sirve para otros dispositivos, como USB, CD, etc.
Escucha a tu disco duro y ve que tiene que decirte:
sudo cat /dev/sda | aplay -fdat
PD: Sirve para otros dispositivos, como USB, CD, etc.
- GhOsT14105
- Mensajes: 87
- Registrado: Vie, 08 Abr 2011, 11:28
- Contactar:
Re: Como lograr persistencia en lives usb de Debian o deriva
Bueno les expongo lo que encontro el socio con respecto al tema.
A nuestro rescate sale Ben Armstrong explicando cómo lograrlo con la última versión de Debian.
Traducción
Desde wheezy, Debian ya no ofrece descargas de imágenes live listas de hdd (conocido anteriormente como usb-hdd) que, en squeeze, eran necesarias si deseaba utilizar persistencia. Las buenas noticias son que, debido a que las nuevas imágenes iso-hybrid utilizan xorisso, puede copiar la imagen a una memoria USB y reparticionarla para agregar una partición de persistencia. Desafortunadamente, el sistema de archivos en sí mismo es sólo de lectura, por lo que debe agregar manualmente el parámetro de arranque persistence cada vez que inicie la imagen. Si esto no le molesta, puede evitar todo este tutorial y simplemente seguir las http://live.debian.net/manual/stable/ht ... ersistence para agregar la partición de persistencia y ya.
Este tutorial explica cómo extraer el contenido de una imagen live iso-hybrid de wheezy en una memoria USB y modificarla para arrancar con este parámetro habilitado permanentemente. Lo estoy escribiendo sólamente como una forma de esquivar el problema y no considero que ésta sea una forma de personalizar imágenes Debian Live en general. Me encantaría ayudar a crear una forma más conveniente y oficial de lograr lo mismo para una versión futura. Mientras tanto, la forma recomendada y oficial de realizar cualquier cambio a una imagen Debian Live es crearla desde cero utilizando live-build, como se describe en http://live.debian.net/manual/stable
Si lo prefiere, se encuentra disponible un servicio web Debian Live Images Autobuilder: http://live-build-cgi.debian.net/ simplificado que funciona bien para muchas personalizaciones comunes. Utilice uno de estos métodos si desea hacer esta u otras personalizaciones de la forma oficial. De lo contrario, continúe leyendo.
Prerequisitos
Necesita descargar una imagen live iso-hybrid de Debian. Para este tutorial utilizaremos la imagen live de Debian wheezy amd64 LXDE: http://cdimage.debian.org/debian-cd/cur ... esktop.iso
Tenga en cuenta el tamaño de la imagen. Con ls -lh debian-live-7.0.0-amd64-lxde-desktop.iso puede ver que el tamaño de la imagen para este ejemplo es 854M.
Más tarde, utilizará este espacio más 5% como el tamaño de la partición que la contendrá.
Necesita una memoria USB lo suficientemente grande para la imagen en sí y su partición de persistencia. Para esta imagen podría inclusive utilizar una memoria de 1G, aunque le quedaría muy poco espacio para persistencia. En este tutorial, la memoria de prueba es de 8G por lo que sobra mucho espacio en la misma para crecer.
Asumo para este ejemplo que está preparando la memoria en un sistema Debian o Linux que monta automáticamente los medios extraíbles cuando se los conecta, una configuración bastante usual.
Este tutorial también utiliza las siguientes herramientas, que necesitará instalar si no las tiene: parted, mbr, dosfstools, p7zip, syslinux
Identificación del dispositivo de la memoria USB
Precaución: siempre revise y controle que está escribiendo al dispositivo correcto para evitar perder datos importantes. Puede hacer dos cosas para protejerse. La primera es no escribir la memoria USB como root. La segunda es siempre utilizar ls -l /dev/disk/by-id primero para identificar qué dispositivo es la memoria USB deseada.
Como puede ver, mi SanDisk Cruzer Countour es /dev/sdb. Durante el tutorial haré referencia a este dispositivo como /dev/sdX para evitar desastres lamentables si copia y pega del mismo. Cuando lo siga, recuerde reemplazar dicho dispositvo con el correcto para la memoria USB en su sistema.
Inicialización de la memoria USB
Comience conectando la memoria y desmontando cualquier partición que haya sido montada automáticamente para asegurarse que nada es accesible en el dispositivo. Por ejemplo:
Ahora realice los cambios a la tabla de particiones. Utilice parted porque puede ejecutarlo como un usuario normal y tiene cierta funcionalidad avanzada más allá de las herramientas básicas como fdisk.
Sepa que cuando lo ejecute como un usuario normal, si sólo tiene conectado un dispositivo extraíble (que podría incluir reproductores mp3, cámaras y lectores electrónicos), parted inmediatamente selecciona dicho dispositivo. Pero sólo para asegurarse, utilice print devices para enumerar los dispositivos y seleccionar el correcto como se mostró en el ejemplo anterior.
Reparticionado de la memoria USB
Una vez que verificó que tiene el dispositivo correcto, comience el reparticionado. Escriba una nueva tabla de particiones con mklabel msdos para eliminar todas las particiones anteriores en el mismo. Puede saltear este paso y adaptar las instrucciones restantes si tiene particiones que desea mantener. Esta es su última oportunidad de evitar errores si el dispositvo es el incorrecto, por lo que asegúrese que es el adecuado antes de continuar.
El error es normal y aparece cuando se ejecuta parted como un usuario normal, por lo que está bien presionar «i» para ignorarlo cada vez que aparece. En el resto del tutorial, omitiré estos errores de las salidas mostradas por cuestiones de brevedad.
Cree tres particiones, una partición fat32 para la imagen en sí que sea 5% más grande que el tamaño del archivo ISO, una partición ext4 de 1G para persistencia y una partición fat32 adicional con el resto del espacio. Ubique como primera la partición adicional para que los otros sistemas operativos en los que utilice la memoria puedan utilizarla. Utilice posicionamiento relativo desde el final del dispositivo para hacer más sencillo el utilizar todo el espacio restante en la primer partición. Por último, active la marca de arranque en la partición de la imagen live.
Desconecte la memoria USB y conéctela nuevamente para que el núcleo vuelva a leer la tabla de partición actualizada. Si algún sistema de archivos preexistente es montado automáticamente, desmóntelos nuevamente. Ahora estamos listos para crear los nuevos sistemas de archivo.
Marca de arranque de la memoria USB
Utilice install-mbr para instalar un MBR en la memoria y syslinux para instalar el gestor de arranque que iniciará su la imagen de su partición live.
Montaje de las particiones
Desconecte la memoria USB y conéctela nuevamente para que se monten automáticamente las nuevas particiones.
Revise dónde se montaron las particiones con df.
Extracción del contenido del archivo ISO a la memoria
Para continuar con la preparación de la memoria como un usuario normal, utilice p7zip para descomprimir el archivo ISO. Una alternativa es montar el archivo ISO como «loopback» y extraerlo de esa forma, pero para ello necesitará permisos de root.
Cuando se descomprima live/filesystem.sqashfs (justo después de live/filesystem.packages-remove), será el archivo que más demore ya que contiene el sistema de archivos live completo. Tenga paciencia y eventualmente finalizará la extracción de éste y todos los demás archivos en la imagen.
Modificación de los archivos de configuración del gestor de arranque
En la instalación de un archivo ISO, el directorio de configuración del gestor de arranque syslinux y los archivos en él, poseen el nombre isolinux. Necesita cambiar el nombre de este directorio y dos archivos de isolinux a syslinux para que el gestor de arranque los encuentre en la partición fat32 de la imagen live.
Activación de la persistencia permanente
A continuación, agrege « persistence» a los parámetros de arranque y active la persistencia permanente creando un archivo llamado persistence.conf con el contenido «/ union» en la partición de persistencia.
Reinicio en el sistema live
Ahora su memoria USB está lista para iniciar con la persistencia permanentemente activada.
Artículo original: http://syn.theti.ca/2013/06/22/tutorial ... ce-on-usb/
A nuestro rescate sale Ben Armstrong explicando cómo lograrlo con la última versión de Debian.
Traducción
Desde wheezy, Debian ya no ofrece descargas de imágenes live listas de hdd (conocido anteriormente como usb-hdd) que, en squeeze, eran necesarias si deseaba utilizar persistencia. Las buenas noticias son que, debido a que las nuevas imágenes iso-hybrid utilizan xorisso, puede copiar la imagen a una memoria USB y reparticionarla para agregar una partición de persistencia. Desafortunadamente, el sistema de archivos en sí mismo es sólo de lectura, por lo que debe agregar manualmente el parámetro de arranque persistence cada vez que inicie la imagen. Si esto no le molesta, puede evitar todo este tutorial y simplemente seguir las http://live.debian.net/manual/stable/ht ... ersistence para agregar la partición de persistencia y ya.
Este tutorial explica cómo extraer el contenido de una imagen live iso-hybrid de wheezy en una memoria USB y modificarla para arrancar con este parámetro habilitado permanentemente. Lo estoy escribiendo sólamente como una forma de esquivar el problema y no considero que ésta sea una forma de personalizar imágenes Debian Live en general. Me encantaría ayudar a crear una forma más conveniente y oficial de lograr lo mismo para una versión futura. Mientras tanto, la forma recomendada y oficial de realizar cualquier cambio a una imagen Debian Live es crearla desde cero utilizando live-build, como se describe en http://live.debian.net/manual/stable
Si lo prefiere, se encuentra disponible un servicio web Debian Live Images Autobuilder: http://live-build-cgi.debian.net/ simplificado que funciona bien para muchas personalizaciones comunes. Utilice uno de estos métodos si desea hacer esta u otras personalizaciones de la forma oficial. De lo contrario, continúe leyendo.
Prerequisitos
Necesita descargar una imagen live iso-hybrid de Debian. Para este tutorial utilizaremos la imagen live de Debian wheezy amd64 LXDE: http://cdimage.debian.org/debian-cd/cur ... esktop.iso
Tenga en cuenta el tamaño de la imagen. Con ls -lh debian-live-7.0.0-amd64-lxde-desktop.iso puede ver que el tamaño de la imagen para este ejemplo es 854M.
Más tarde, utilizará este espacio más 5% como el tamaño de la partición que la contendrá.
Necesita una memoria USB lo suficientemente grande para la imagen en sí y su partición de persistencia. Para esta imagen podría inclusive utilizar una memoria de 1G, aunque le quedaría muy poco espacio para persistencia. En este tutorial, la memoria de prueba es de 8G por lo que sobra mucho espacio en la misma para crecer.
Asumo para este ejemplo que está preparando la memoria en un sistema Debian o Linux que monta automáticamente los medios extraíbles cuando se los conecta, una configuración bastante usual.
Este tutorial también utiliza las siguientes herramientas, que necesitará instalar si no las tiene: parted, mbr, dosfstools, p7zip, syslinux
Identificación del dispositivo de la memoria USB
Precaución: siempre revise y controle que está escribiendo al dispositivo correcto para evitar perder datos importantes. Puede hacer dos cosas para protejerse. La primera es no escribir la memoria USB como root. La segunda es siempre utilizar ls -l /dev/disk/by-id primero para identificar qué dispositivo es la memoria USB deseada.
Código: Seleccionar todo
lrwxrwxrwx 1 root root 9 Jun 22 11:58
usb-SanDisk_Cruzer_Contour_0000184CA87406BC-0:0 -> ../../sdb
Inicialización de la memoria USB
Comience conectando la memoria y desmontando cualquier partición que haya sido montada automáticamente para asegurarse que nada es accesible en el dispositivo. Por ejemplo:
Código: Seleccionar todo
$ umount /dev/sdX1
Código: Seleccionar todo
$ /sbin/parted
WARNING: You are not superuser. Watch out for permissions.
GNU Parted 2.3
Using /dev/sdX
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print devices
/dev/sdX (8221MB)
(parted) select
New device? [/dev/sdX]?
Using /dev/sdX
(parted)
Reparticionado de la memoria USB
Una vez que verificó que tiene el dispositivo correcto, comience el reparticionado. Escriba una nueva tabla de particiones con mklabel msdos para eliminar todas las particiones anteriores en el mismo. Puede saltear este paso y adaptar las instrucciones restantes si tiene particiones que desea mantener. Esta es su última oportunidad de evitar errores si el dispositvo es el incorrecto, por lo que asegúrese que es el adecuado antes de continuar.
Código: Seleccionar todo
(parted) mklabel msdos
Warning: The existing disk label on /dev/sdX will be destroyed and all data
on this disk will be lost. Do you want to continue?
Yes/No? y
Error: Partition(s) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 on
/dev/sdX have been written, but we have been unable to inform the kernel of
the change, probably because it/they are in use. As a result, the old
partition(s) will remain in use. You should reboot now before making further
changes.
Ignore/Cancel? i
(parted)
Cree tres particiones, una partición fat32 para la imagen en sí que sea 5% más grande que el tamaño del archivo ISO, una partición ext4 de 1G para persistencia y una partición fat32 adicional con el resto del espacio. Ubique como primera la partición adicional para que los otros sistemas operativos en los que utilice la memoria puedan utilizarla. Utilice posicionamiento relativo desde el final del dispositivo para hacer más sencillo el utilizar todo el espacio restante en la primer partición. Por último, active la marca de arranque en la partición de la imagen live.
Código: Seleccionar todo
(parted) mkpart primary fat32 1 -1897M
(parted) mkpart primary ext4 -1897M -897M
(parted) mkpart primary fat32 -897M -0
(parted) set 3 boot on
(parted) quit
Information: You may need to update /etc/fstab.
Código: Seleccionar todo
$ umount /dev/sdX1
$ /sbin/mkdosfs -nEXTRA /dev/sdX1
mkdosfs 3.0.16 (01 Mar 2013)
$ /sbin/mkfs.ext4 -q -Lpersistence /dev/sdX2
$ /sbin/mkdosfs -nLXDE /dev/sdX3
mkdosfs 3.0.16 (01 Mar 2013)
Utilice install-mbr para instalar un MBR en la memoria y syslinux para instalar el gestor de arranque que iniciará su la imagen de su partición live.
Código: Seleccionar todo
$ /sbin/install-mbr /dev/sdX
$ syslinux -i /dev/sdX3
Desconecte la memoria USB y conéctela nuevamente para que se monten automáticamente las nuevas particiones.
Revise dónde se montaron las particiones con df.
Código: Seleccionar todo
$ df
...
/dev/sdX1 6204568 4 6204564 1% /media/EXTRA
/dev/sdX3 831888 4 831884 1% /media/LXDE
/dev/sdX2 944120 1204 894124 1% /media/persistence
Para continuar con la preparación de la memoria como un usuario normal, utilice p7zip para descomprimir el archivo ISO. Una alternativa es montar el archivo ISO como «loopback» y extraerlo de esa forma, pero para ello necesitará permisos de root.
Código: Seleccionar todo
$ cd /media/LXDE
$ 7z x ~/debian-live-7.0.0-amd64-lxde-desktop.iso
...
Extracting live/filesystem.packages-remove
...
Código: Seleccionar todo
...
Everything is Ok
Folders: 245
Files: 370
Size: 892183367
Compressed: 895483904
En la instalación de un archivo ISO, el directorio de configuración del gestor de arranque syslinux y los archivos en él, poseen el nombre isolinux. Necesita cambiar el nombre de este directorio y dos archivos de isolinux a syslinux para que el gestor de arranque los encuentre en la partición fat32 de la imagen live.
Código: Seleccionar todo
$ mv isolinux syslinux
$ mv syslinux/isolinux.cfg syslinux/syslinux.cfg
$ mv syslinux/isolinux.bin syslinux/syslinux.bin
A continuación, agrege « persistence» a los parámetros de arranque y active la persistencia permanente creando un archivo llamado persistence.conf con el contenido «/ union» en la partición de persistencia.
Código: Seleccionar todo
$ sed -i 's/\(append boot=.*\)$/\1 persistence/' syslinux/live.cfg
$ cd /media/persistence
$ echo / union > persistence.conf
Ahora su memoria USB está lista para iniciar con la persistencia permanentemente activada.
Artículo original: http://syn.theti.ca/2013/06/22/tutorial ... ce-on-usb/
Nacimos esclavos del software privativo y moriremos libres de el.
Escucha a tu disco duro y ve que tiene que decirte:
sudo cat /dev/sda | aplay -fdat
PD: Sirve para otros dispositivos, como USB, CD, etc.
Escucha a tu disco duro y ve que tiene que decirte:
sudo cat /dev/sda | aplay -fdat
PD: Sirve para otros dispositivos, como USB, CD, etc.