Crouton: Montagem cíclica do sistema de arquivos ao executar o chroot a partir de um dispositivo USB removível

Criado em 18 fev. 2015  ·  4Comentários  ·  Fonte: dnschneid/crouton

Sistema:

HP Chromebook 11 (ARM)

Pré-condições:

Crie crouton com:

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

onde MyDrive é um dispositivo USB removível.

Etapas de reprodução:

sudo sh -e / media / removable / MyDrive / startxfce4
...
deixe o chroot (logoff)
tentativa de ejetar a unidade no aplicativo "Arquivos" - sem sucesso
tentativa de desmontar a unidade via shell

Resultado esperado:

Desmontagem do drive

Resultado atual:

No aplicativo Arquivos, o ChromeOS mostra uma caixa de diálogo informando que você precisa aguardar a conclusão de uma operação do drive
No shell, umount diz que o dispositivo está ocupado, indicando este caminho:

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

ainda está em uso. Como resultado, a unidade não pode ser removida com segurança do sistema, e removê-la sem segurança causa danos ao sistema de arquivos que tornam o chroot inoperante. Observe o belo ciclo do sistema de arquivos.

Gambiarra

Monte a unidade em um local diferente do padrão que não seja montado automaticamente no chroot.

Pensei em relatar isso, é um problema interessante com drives USB, mas pode ser evitado facilmente.

bug

Comentários muito úteis

Estranho, não sei por que os pontos de montagem estão refletindo de volta para /media ... esse é todo o ponto do diretório shadow / run / crouton. Obrigado por levantar isso.

Todos 4 comentários

Estranho, não sei por que os pontos de montagem estão refletindo de volta para /media ... esse é todo o ponto do diretório shadow / run / crouton. Obrigado por levantar isso.

Eu acho que / media é a montagem padrão para / dev / [dispositivos removíveis] e como gerenciamento de energia e rede, o sistema operacional host pode dizer se algo está conectado ou removido, mas como o chroot também pode, ou mesmo desligar, o o host acha que pode não estar em um estado seguro para ejetar.

A desmontagem do chroot pode forçar uma ejeção de dispositivos / media? Além disso, como o usb e o sdcards funcionarão com vários usuários do Chrome conectados ao mesmo tempo, com o primeiro usuário de desktop também tendo um chroot? Quem é o proprietário e o que são permanentes?

Estou tendo o mesmo problema com o pão torrado mais recente no Acer C720:

crouton: versão 1-20151013174138 ~ master: 488c9e21

A solução temporária (como sugerido) é renomear o diretório / media / removable / [cartão] / chroots
para outra coisa, por exemplo:
/ media / removable / kingusb3 / chroots_new

e então inicie o chroot com:

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

No entanto, isso tem a desvantagem de quando tento atualizar o chroot com o comando:

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

o crouton do script procura sempre um diretório chroots "padrão":

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

e sai com um erro:

/ media / removable / kingusb3 / chroots-new / chroots / trusty não existe; não pode atualizar.

Acho que seria muito útil corrigir esse problema de montagem cíclica

Eu encontrei esse problema com a versão mais recente do Crouton com caminho de armazenamento "/ media / removable / PNY64". A solução alternativa prescrita por kiorpesc foi eficaz, e a transcrição do shell abaixo mostra as etapas que executei.

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

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

Jacquelinemarie picture Jacquelinemarie  ·  3Comentários

jbaum98 picture jbaum98  ·  4Comentários

harryprince picture harryprince  ·  3Comentários

wymby picture wymby  ·  6Comentários

Joshua10115 picture Joshua10115  ·  4Comentários