Crouton: Montaje cíclico del sistema de archivos cuando se ejecuta chroot desde un dispositivo USB extraíble

Creado en 18 feb. 2015  ·  4Comentarios  ·  Fuente: dnschneid/crouton

Sistema:

HP Chromebook 11 (ARM)

Condiciones previas:

Crea picatostes con:

sudo sh crouton -p /media/removable/MyDrive/ -r trusty -t xfce

donde MyDrive es un dispositivo USB extraíble.

Pasos de reproducción:

sudo sh -e / media / removable / MyDrive / startxfce4
...
dejar el chroot (cerrar sesión)
intento de expulsar la unidad en la aplicación "Archivos" - sin éxito
intentar desmontar la unidad a través de shell

Resultado Esperado:

Conducir desmonta

Resultado actual:

Desde la aplicación Archivos, ChromeOS muestra un cuadro de diálogo que indica que debe esperar a que finalice una operación de unidad
Desde el shell, umount dice que el dispositivo está ocupado, lo que indica esta ruta:

/run/crouton/media/removable/MyDrive/chroots/trusty/var/host/media/removable/MyDrive/chroots/trusty/var/host/media/removable/MyDrive

todavía está en uso. Como resultado, la unidad no se puede quitar del sistema de manera segura, y quitarla de manera insegura causa daños en el sistema de archivos que hacen que el chroot no funcione. Tenga en cuenta el hermoso ciclo del sistema de archivos.

Solución alterna

Monte la unidad en una ubicación no predeterminada que no se monte automáticamente en el chroot.

Pensé en informar esto, es un problema interesante con las unidades USB, pero se puede evitar con bastante facilidad.

bug

Comentario más útil

Extraño, no estoy seguro de por qué los puntos de montaje se reflejan en /media ... ese es el objetivo del directorio de sombra / run / crouton. Gracias por plantear esto.

Todos 4 comentarios

Extraño, no estoy seguro de por qué los puntos de montaje se reflejan en /media ... ese es el objetivo del directorio de sombra / run / crouton. Gracias por plantear esto.

Creo que / media es el soporte predeterminado para / dev / [dispositivos extraíbles] y, al igual que la administración de energía y las redes, el sistema operativo del host puede saber si algo está enchufado o eliminado, pero dado que el chroot también puede, o incluso apagarse, el el host cree que puede que no esté en un estado seguro para expulsarlo.

¿Desmontar el chroot puede forzar la expulsión de los dispositivos / media? Además, ¿cómo funcionarán las tarjetas usb y sd con varios usuarios de Chrome conectados al mismo tiempo, y el primer usuario de escritorio también tendrá un chroot? ¿Quién es el propietario y qué son las permanentes?

Tengo el mismo problema con el último crouton en Acer C720:

crouton: versión 1-20151013174138 ~ master: 488c9e21

La solución temporal (como se sugiere) es cambiar el nombre del directorio / media / removable / [card] / chroots
a otra cosa, por ejemplo:
/ media / removable / kingusb3 / chroots_new

y luego inicie el chroot con:

sudo sh / media / removable / kingusb3 / bin / enter-chroot -c / media / removable / kingusb3 / chroots_new -n trusty

Sin embargo, esto tiene el inconveniente de que cuando intento actualizar el chroot con el comando:

sudo sh ~ / Descargas / crouton -u -n trusty -p / media / removable / kingusb3 / chroots-new /

el script crouton busca siempre un directorio chroots "estándar":

/ media / removable / kingusb3 / chroots-new / chroots

y sale con un error:

/ media / removable / kingusb3 / chroots-new / chroots / trusty no existe; no se puede actualizar.

Creo que sería muy útil solucionar este problema de montaje cíclico.

Encontré este problema con la última versión de Crouton con la ruta de almacenamiento "/ media / removable / PNY64". La solución alternativa prescrita por kiorpesc fue efectiva, y la transcripción de shell a continuación muestra los pasos que tomé.

chronos<strong i="6">@localhost</strong> /usr/local/bin $ sudo sh ./crouton -V
Downloading latest crouton installer...
######################################################################## 100.0%
crouton: version 1-20170315143304~master:95589555

chronos<strong i="7">@localhost</strong> /usr/local/bin $ sudo mkdir -pv /var/run/mount/PNY64
mkdir: created directory ‘/var/run/mount/PNY64’

chronos<strong i="8">@localhost</strong> /usr/local/bin $ sudo mount -v /dev/sdc2 /var/run/mount/PNY64
mount: /dev/sdc2 mounted on /run/mount/PNY64.

chronos<strong i="9">@localhost</strong> /usr/local/bin $ cd /var/run/mount/PNY64/bin/

chronos<strong i="10">@localhost</strong> /var/run/mount/PNY64/bin $ sudo ./startxfce

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

jvschiavo picture jvschiavo  ·  4Comentarios

wymby picture wymby  ·  6Comentarios

tedm picture tedm  ·  3Comentarios

aarwdc picture aarwdc  ·  5Comentarios

jbaum98 picture jbaum98  ·  4Comentarios