No se puede iniciar la unidad flash USB Live de Ubuntu con una partición persistente casper-rw


11

Entonces, pasé el último día analizando preguntas similares, y puedo confirmar primero que esto no es un duplicado de:

Con eso fuera del camino: he creado un Ubuntu 14.04.03 Live USB Flash Drive (32GB) usando UNetbootin, así como Ubuntu Startup Disk Creator. En ambos casos, pude implementar con éxito mi ISO de Ubuntu ( que he confirmado que está intacto a través del md5sumanálisis ). En ambos casos, la persistencia funcionó con éxito (tuve que habilitarla manualmente al usar Ubuntu Startup Disk Creator, pero UNetBootin agrega -persistentautomáticamente el argumento del kernel syslinux.cfg), no hay problemas.

Necesito tener un archivo de persistencia de más de 4 GB , ya que estoy creando un montón de estas unidades flash para ingenieros de aplicaciones de campo (FAE), y necesitan poder usarlas en el camino para diagnosticar instalaciones para sistemas personalizados de mi empresa. Actualmente apoya. Está bien si se agotan debido a ciclos de escritura excesivos, y cada FAE obtiene una docena de ellos si es necesario para cada viaje.

Además, necesitamos mantener la primera partición en el disco como una partición FAT en caso de que el FAE necesite soltar archivos en el disco desde Windows, Mac, Linux, etc., ya que las máquinas Windows se niegan a montar particiones FAT en una unidad flash a menos que son la primera y única partición FAT en el disco.

He intentado los pasos en los siguientes artículos:

Las instrucciones fueron claras:

  1. Cree una unidad flash USB en vivo con Ubuntu, dejando espacio para una partición adicional.
  2. Elimine el casper-rwarchivo loopback en la primera partición FAT en la unidad flash.
  3. Úselo gpartedpara crear una ext2/ext3/ext4partición después de la partición FAT, y dele una etiqueta de volumen de casper-rw.

Seguí todos los pasos recomendados, pero el arranque falla. Cuando intento arrancar desde mi unidad flash recién creada, me dirigen a un mensaje en lugar de que Ubuntu arranque correctamente, aunque veo brevemente la animación gráfica de la pantalla de inicio de Ubuntu .

dmar: IOMMU: failed to map dmar0
ACPI PCC probe failed.

BusyBox v1.12.1 (Ubuntu 1:21.0-1ubuntu1) built-in shell (ash)
Enter 'help' for a list of built-in commands.

(initramfs) _

He revisado el rastreador de errores de Ubuntu, y parece que este problema ha sido observado por muchos otros:

Y que se ha resuelto, por lo que debería esperar que la solución ya esté en mi imagen de Ubuntu 14.04.03:

También he intentado actualizar mis parámetros de arranque del kernel, insertando LIVE-MEDIA=/dev/sdd1(en mi caso) en el momento del arranque presionando TAB, es decir:

kernel /casper/vmlinuz.efi initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper LIVE-MEDIA=/dev/sdd1 -- persistent

Esta vez al menos encuentra la partición de arranque y comienza a intentar arrancar el disco USB en vivo, pero parece fallar en el camino, con un montón de advertencias relacionadas con "casper". Sin embargo, parece que no puedo guardar esos registros, así que no puedo proporcionarlos en este momento. Mis argumentos de kernel predeterminados actuales son:

label ubnentry1
menu label ^Try Ubuntu without installing
kernel /casper/vmlinuz.efi
append initrd=/casper/initrd.lz file=/cdrom/preseed/ubuntu.seed boot=casper  quiet splash -- persistent

¿Cómo puedo resolver este problema?

Gracias.


Intente usar:unetbootin
SudoSURoot

@SudoSURoot Mencioné que he usado esta herramienta en la publicación anterior.
Nube

2
¿Estás utilizando una placa base Gigabyte? Requieren la configuración de IOMMU en UEFI / BIOS y / o parámetros de arranque para funcionar. ubuntuforums.org/showthread.php?t=2292025
oldfred

1
Tengo el mismo problema e intenté arrancar en diferentes computadoras (Intel NUC y Thinkpad). Finalmente, recreé el archivo casper-rw y etiqueté la partición adicional home-rw. Esta vez, parece funcionar bien ...
vmalep

1
Desde 14.04, home-rw solo parece guardar datos en carpetas de inicio, incluidos Desktop, Documentos, Descargas, Música, etc. Si es la primera partición persistente en arrancar, también guardará el fondo del escritorio pero no la contraseña inalámbrica, etc. home-rw es no es equivalente a / home en una instalación completa.
CSCameron

Respuestas:


8

Como se mencionó en el comentario anterior, esto está relacionado con el error https://bugs.launchpad.net/ubuntu/+source/casper/+bug/1489855 "la secuencia de montaje cambió de partición raíz y luego partición persistente (15.04) a Primera partición persistente y luego raíz (16.04) por cualquier razón ".

Hay una solución actualizada recientemente en el hilo para el error, que detallaré a continuación ya que el otro hilo no parece tener tanta visibilidad (aparece más abajo en la búsqueda de google cuando estaba tratando de resolverlo) .

  1. Crear particiones casper-rw y OS

  2. Use el instalador USB universal, etc. para configurar la partición del sistema operativo con un archivo casper-rw lo suficientemente grande como para poder realizar cambios, necesarios para el paso posterior para solucionar el error (lo hice con 2 gb, pero seguramente requiere menos)

  3. Arranca con el nuevo USB. Abrir /usr/share/initramfs-tools/scripts/caspercon root para editar (sudo). Cambie la función setup_unionfs () a lo siguiente: https://launchpadlibrarian.net/258626969/casper%20function.txt

  4. sudo update-initramfs -u (Tuve que desinstalar cryptsetup para hacer esto)

  5. Copie el archivo initrd.img generado desde /boototra ubicación.

  6. Desde otro sistema operativo, elimine el archivo casper-rw en el USB. Copie initrd.img de nuevo a la partición en vivo y cambie el elemento del menú para usar initrd.img recién creado.

La próxima vez que inicie desde USB, ahora debería iniciarse desde la partición casper-rw .

¡Esto funcionó para mí el 16.04 después de un largo y frustrante tiempo buscando la solución!


1
Agregue más detalles en el quinto paso. ¿Dices que lo eliminas y luego lo inicias?
userDepth

@userDepth arranca en Windows u otro sistema operativo (no el nuevo USB en vivo que estás creando) y conecta tu nuevo USB. Elimine el archivo casper-rw. Luego apague y arranque desde el nuevo usb, debería guardar automáticamente los cambios en la partición casper-rw de ahora en adelante.
yujia21

Hola Yu, he intentado esto en la imagen de 16.04 de 64 bits y no funciona. ¿Puedes explicar a qué te refieres con tener que desinstalar cryptsetup para hacer esto ?
kirtan403

El Paso 4 me dio un par de advertencias ... Pero no las
capturé

Sin advertencias ... No funcionó ... De nuevo atascado en la pantalla de BusyBox ...
kirtan403

4

Actualizaciones a la respuesta de Yu Jia ... Gracias Yu Jia por señalar la dirección correcta.

1) Use el archivo casper-rw primero para evitar el problema de partición casper-rw. 500 MB o menos es lo suficientemente bueno.

2) Arrancar con el nuevo USB. Abra / usr / share / initramfs-tools / scripts / casper con root para editar (sudo). Cambie la función setup_unionfs () a lo siguiente: https://launchpadlibrarian.net/258626969/casper%20function.txt

3) sudo update-initramfs -u (advertencia de cryptsetup, pero puede ignorarse de forma segura)

4) Copie el archivo "initrd.img.4.4 .... generic" generado desde / boot a otra ubicación. Cámbiele el nombre a initrd.img.

5) Desde otro sistema operativo, elimine el archivo casper-rw en el USB.

6) Copie initrd.img de nuevo a la partición en vivo y cambie el elemento del menú para usar initrd.img recién creado. p.ej

label ubnentry1
menu label ^Ubuntu 16.04
kernel /casper/vmlinuz.efi
append initrd=/newly_generated_initrd.img file=/cdrom/preseed/ubuntu.seed boot=casper  quiet splash -- persistent

Hmm, tu respuesta es lo suficientemente similar a la de Yu Jia que creo que deberías sugerir una edición de su respuesta en lugar de escribir tu propia respuesta.
edwinksl

4

mkusb versión 11 classic y versión 12 alias mkusb-dus puede crear una unidad en vivo persistente automáticamente con todas las versiones y sabores actuales de Ubuntu, así como con Debian Jessie.

mkusb usa una casper-rwpartición

mkusb también funciona con algunas distribuciones de Linux derivadas de Ubuntu. No he probado con las versiones más recientes de Linux Mint, pero funciona con versiones anteriores porque la estructura de arranque es / era lo suficientemente similar a Ubuntu.

ingrese la descripción de la imagen aquí

Instale mkusb con las siguientes líneas de comando en Ubuntu y versiones de Ubuntu (Kubuntu, Lubuntu ... Xubuntu).

Si ejecuta Ubuntu estándar, necesita una instrucción adicional para obtener el repositorio Universe. (Kubuntu, Lubuntu ... Xubuntu tiene el repositorio Universe activado automáticamente).

sudo add-apt-repository universe  # only for standard Ubuntu

sudo add-apt-repository ppa:mkusb/ppa  # and press Enter
sudo apt-get update
sudo apt-get install mkusb mkusb-nox usb-pack-efi

Ver estos enlaces,

mkUSB-quick-start-manual.pdf

help.ubuntu.com/community/mkusb

help.ubuntu.com/community/mkusb/persistent

help.ubuntu.com/community/mkusb/install-to-debian

La descarga y el uso de mkusb-installer funciona con varias otras distribuciones de Linux. Use uno de los siguientes enlaces (y métodos),

help.ubuntu.com/community/mkusb/gui#from_phillw.net

help.ubuntu.com/community/mkusb/gui/tarball


1
+1 mkusb solo tiene una casilla de verificación para hacer que el disco vivo usb sea persistente, es decir, lo que configuró en la sesión de hoy todavía está allí cuando reinicia.
WinEunuuchs2Unix

Sí, mkusb funciona. Intenté con Ubuntu 17.10 y no tuve mucho éxito con www.pendrivelinux.com para más de 4 GB de almacenamiento persistente (es realmente necesario para obtener actualizaciones, etc. (al menos para el almacenamiento temporal durante el proceso de actualización)). En una unidad flash USB de 16 GB, / cow tiene aproximadamente 10.5 GB ( partición casper-rw , no archivo) y actualmente tiene un 36% de uso después de una actualización y otro uso.
Peter Mortensen el

2

No tuve ningún problema para crear el pendrive y arrancarlo ... ¿Creó el perndrive de la siguiente manera?

El proceso implica 3 pasos:

  1. Particionando el pendrive.
  2. Hacer un pendrive de arranque con el instalador universal USB .
  3. Agregar banderas a la partición UUI y completar el proceso de partición.

Paso 1:

Abra GParted y particione el pendrive de la siguiente manera:

ingrese la descripción de la imagen aquí

La partición no asignada se agrega más adelante en el paso 3, sdc2 es para Ubuntu y sdc3 es para persistencia. Como se trata de un pendrive de 8 GB, utilicé 3.32 GB como unidad persistente, pero funcionaré con cualquier tamaño. Etiquete esta partición como casper-rw .

Paso 2:

Inserte el pendrive en una máquina con Windows. Se detectará la segunda unidad (es decir, label-OS). Instale Ubuntu en esta unidad utilizando Universal USB Installer.

ingrese la descripción de la imagen aquí

Establecer un pequeño archivo persistente, utilicé 204 MB. El tamaño no importa, ya que lo eliminaremos en el paso 3 de todos modos. Presione Crear .

Paso 3:

Inserte el pendrive en un sistema Ubuntu y modifique la tabla de particiones de la siguiente manera:

ingrese la descripción de la imagen aquí

Ahora para la parte final, haga clic derecho en la segunda partición y seleccione Administrar banderas . Compruebe Boot y lba .


Ahora tiene un pendrive cuya primera partición se detectará en Windows y una unidad persistente de más de 4 GB.

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí


2
Las particiones persistentes funcionan bien con instalaciones SDC / Unetbootin de 32 bits, pero no con instalaciones de 64 bits para 14.04 y posteriores. 64 bit grub2 / iso, (tipo multiboot), instala trabajos con particiones persistentes casper-rw.
CSCameron


2

Me las arreglé para lograr esto con MUCHA ayuda de este conjunto de respuestas muy útil.

Como referencia, estaba configurando un Kingston Data Traveler de 16 GB con una imagen ISO personalizada que había creado previamente usando SystemBack.

El sistema operativo en el que estoy trabajando es Lubuntu, y mi ISO personalizado tuvo muchos cambios en el paquete de software (eliminé muchas gumpf e instalé algunas utilidades necesarias).

Comencé usando las muy útiles instrucciones de araghuteja y configuré mi dispositivo con tres particiones:

  • 4 GB para la partición FAT32 accesible de Windows ( /dev/sdc1)
  • 2 GB para el sistema operativo ( /dev/sdc2)
  • El resto (menos de 8 GB, pero aproximadamente eso) como la partición casper-rw ( /dev/sdc3)

Desafortunadamente, esto no funcionó, ya que solo eliminar el archivo casper-rw de la partición del sistema operativo no es suficiente.

La verdadera ayuda fue de Yu Jia Cheong y StarBloom, donde explicaron cómo restablecer el gestor de arranque GRUB para 'ver' la partición casper-rw .

Tuve que hacer algunos detalles que pueden hacer que las instrucciones de Yu Jia sean un poco más claras. (Tenga en cuenta que estas instrucciones pueden no ser completamente apropiadas para la imagen ISO predeterminada de Ubuntu, ya que creo que algunas de las ubicaciones de los archivos pueden verse alteradas por la configuración de Systemback).

Específicamente, en la Parte 5, el archivo generado por

sudo update-initramfs -u

fue nombrado initrd.img-4.4.0-47-generic .

Entonces, copié este archivo en mi partición 'casper-rw', pero luego me di cuenta de que mi menú de arranque de GRUB parecía hacer referencia a /casper/initrd.gz (en cuatro lugares) que reside dentro de / boot / grub en la partición UUI.

Entonces, cambié el nombre de mi initrd.img-4.4.0-47-generic a initrd.gz , y reemplacé el archivo en UUI / boot / grub / casper / (¡obviamente conservando una copia del archivo antiguo por si acaso!).

Arrancado con esa memoria USB en particular y usando df -hen la carpeta raíz 'máquina' obtengo lo siguiente:

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             16G  4.0K   16G   1% /dev
tmpfs           3.2G  1.6M  3.2G   1% /run
/dev/sdb1       2.0G  1.3G  729M  65% /cdrom
/dev/loop0      1.3G  1.3G     0 100% /rofs
/cow            8.2G  118M  7.7G   2% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
tmpfs            16G  4.0K   16G   1% /tmp
none            5.0M     0  5.0M   0% /run/lock
none             16G     0   16G   0% /run/shm
none            100M   16K  100M   1% /run/user
/dev/sdb3       4.0G  4.0K  4.0G   1% /media/silver/DATA
/dev/sdb2       8.2G  118M  7.7G   2% /media/silver/casper-rw

Supongo que / cow es la partición en vivo casper, y muestra el tamaño correcto.

Encuentro interesante poder ver la partición casper-rw como / dev / sdb2 cuando estoy usando la máquina, ¿es esto correcto?

Tampoco estoy convencido de la partición de 3 vías. En Windows (10) solo puedo ver la partición del sistema operativo , no la partición de datos .

¡Muchas gracias a todos, y espero que mi experiencia ayude a alguien más! (Nota: soy lo suficientemente nuevo en el uso de Stack Exchange que no puedo comentar, por lo tanto, mi respuesta es nueva, en lugar de un comentario sobre Yu Jia).

Actualizar

Intento esto de nuevo para crear otra 'Pen-Machine' y me di cuenta de que cuanto más grande sea su imagen ISO, más espacio necesita crear para el archivo casper-rw cuando ejecuta UUInstaller.

Mi última imagen ISO es algo así como 3.8 GB (es un Ubuntu 16.04 personalizado) y después de tres intentos tengo que crear la partición inicial del sistema operativo a 5 GB y usar una configuración de persistencia de 1 GB en el instalador; de lo contrario, se queda sin almacenamiento al actualizar Las funciones initramfs.

Nota: ¡finalmente recurrí a configurar la partición del sistema operativo en 8 GB, solo para asegurarme de que tenía espacio!


1

Parece ser el proceso de arranque interrumpido justo después de cargar el disco RAM inicial. Esto se debe a la falla al montar el sistema de archivos raíz (filesystem.squashfs). Como todo funciona bien antes de editar la partición, uno o más de los siguientes pueden ser el motivo del error.

  • Cambio de UUID.
  • Archivos dañados (filesystem.squashfs, vmlinuz)
  • Sistema de archivos dañado

Tratar:

  • Formatee la partición de arranque (con ext3) (ahora tiene tres particiones como antes).
  • Recree el sistema en vivo usando UNetbootin con la opción de persistencia.
  • Elimine el archivo de persistencia (para que use la partición de persistencia)

1

He tenido un problema similar con la imagen ISO Lubuntu 14.04.3 i386 y me di por vencido. Luego probé la imagen ISO Lubuntu 15.04 AMD64 (anteriormente me había dado por vencido en 15.04 debido a un error que ocurre en el arranque, pero resulta ser solo un pequeño problema * ).

La casper-rwpartición funciona bien con el sistema posterior (siguiendo las instrucciones habituales), por lo que parece que el problema no tiene nada que ver con el proceso, sino con un problema específico de algunas imágenes ISO 14.04.

Anteriormente había instalado con éxito un sistema Lubuntu 14.04 con una casper-rwpartición persistente, por lo que sé que el 14.04 original funcionó. Entonces, ¿puede ser solo 14.04.3 ese es el problema?

* Si utiliza 15.04 y encuentra el problema "Falta parámetro en el archivo de configuración ..." en el arranque, escriba "live" e ingrese.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.