Crouton: 从可移动 USB 设备运行 chroot 时的循环文件系统挂载

创建于 2015-02-18  ·  4评论  ·  资料来源: dnschneid/crouton

系统:

惠普 Chromebook 11 (ARM)

先决条件:

创建面包丁:

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

其中 MyDrive 是可移动 USB 设备。

繁殖步骤:

须藤 sh -e /media/removable/MyDrive/startxfce4
...
离开 chroot(注销)
尝试在“文件”应用程序中弹出驱动器 - 不成功
尝试通过 shell 卸载驱动器

预期结果:

驱动器卸载

实际结果:

在文件应用程序中,ChromeOS 显示对话框,说明您需要等待驱动器操作完成
从 shell 中,umount 表示设备正忙,指示此路径:

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

仍在使用中。 因此,驱动器无法安全地从系统中移除,并且不安全地移除它会导致文件系统损坏,从而使 chroot 无法运行。 注意漂亮的文件系统循环。

解决方法

将驱动器挂载到 chroot 中未自动挂载的非默认位置。

只是想我会报告这个,这是 USB 驱动器的一个有趣问题,但可以很容易地避免。

最有用的评论

奇怪的是,我不确定为什么挂载点会反射回 /media...这就是 /run/crouton shadow 目录的全部意义所在。 谢谢你提出这个。

所有4条评论

奇怪的是,我不确定为什么挂载点会反射回 /media...这就是 /run/crouton shadow 目录的全部意义所在。 谢谢你提出这个。

我认为 /media 是 /dev/[removable devices] 的默认挂载,就像电源管理和网络一样,主机操作系统可以判断是否插入或删除了某些东西,但是由于 chroot 也可以,甚至关闭,主机认为弹出可能不安全。

卸载 chroot 可以强制弹出 /media 设备吗? 另外,usb 和 sdcards 如何与同时登录的多个 chrome 用户一起使用,第一个桌面用户也有一个 chroot? 谁是所有者,什么是烫发?

我在 Acer C720 上使用最新的面包丁时遇到了同样的问题:

面包丁:版本 1-20151013174138~主人:488c9e21

临时解决方案(如建议)是重命名目录 /media/removable/[card]/chroots
到别的东西,例如:
/media/removable/kingusb3/chroots_new

然后使用以下命令启动 chroot:

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

但是,这有一个缺点,即当我尝试使用以下命令更新 chroot 时:

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

脚本 crouton 总是寻找“标准”chroots 目录:

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

并以错误退出:

/media/removable/kingusb3/chroots-new/chroots/trusty 不存在; 无法更新。

我认为解决这个周期性安装问题会非常有用

我在存储路径为“/media/removable/PNY64”的最新版本的 Crouton 中遇到了这个问题。 kiorpesc 规定的解决方法是有效的,下面的 shell 记录显示了我采取的步骤。

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

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

BRFNGRNBWS picture BRFNGRNBWS  ·  3评论

anonymouseprogrammer picture anonymouseprogrammer  ·  4评论

Joshua10115 picture Joshua10115  ·  4评论

Epowerj picture Epowerj  ·  6评论

jbaum98 picture jbaum98  ·  4评论