0

我有一个 2018 年的 samsung chromebook pro,我在上面安装了 crouton。我只使用 crouton 安装了一个 chroot。一切都很顺利,除了我似乎在 rootfs 上没有空间。这是输出sudo df -h

chronos@localhost / $ sudo df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/root                1.7G  1.7G   41M  98% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmp                      1.9G  3.0M  1.9G   1% /tmp
run                      1.9G  688K  1.9G   1% /run
shmfs                    1.9G   29M  1.9G   2% /dev/shm
/dev/mmcblk0p1            53G  8.7G   41G  18% /mnt/stateful_partition
/dev/mmcblk0p8            12M   28K   12M   1% /usr/share/oem
/dev/mapper/encstateful   16G   81M   16G   1% /mnt/stateful_partition/encrypted
media                    1.9G     0  1.9G   0% /media
none                     1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/loop1               450M  450M     0 100% /opt/google/containers/android/rootfs/root
/dev/loop2               4.0K  4.0K     0 100% /opt/google/containers/arc-removable-media/mountpoints/container-root
/dev/loop3               4.0K  4.0K     0 100% /opt/google/containers/arc-sdcard/mountpoints/container-root
/dev/loop4               4.0K  4.0K     0 100% /opt/google/containers/arc-obb-mounter/mountpoints/container-root
imageloader              1.9G     0  1.9G   0% /run/imageloader
tmpfs                    1.9G  4.0K  1.9G   1% /run/arc/oem
tmpfs                    1.9G     0  1.9G   0% /run/arc/sdcard
tmpfs                    1.9G     0  1.9G   0% /run/arc/obb
tmpfs                    1.9G     0  1.9G   0% /run/arc/media
tmpfs                    1.9G     0  1.9G   0% /run/arc/adbd
passthrough              1.9G     0  1.9G   0% /run/arc/media/removable
/dev/fuse                 53G  8.7G   41G  18% /run/arc/sdcard/default/emulated
/dev/fuse                 53G  8.7G   41G  18% /run/arc/sdcard/read/emulated
/dev/fuse                 53G  8.7G   41G  18% /run/arc/sdcard/write/emulated
tmpfs                    128K   12K  116K  10% /var/run/crw

如您所见,我的 rootfs 几乎已满,还有一大堆其他垃圾,这对于 chromeos 来说显然是正常的。我已经阅读了类似的问题,但我的一些困惑仍然没有得到解答。

这是我目前的理解(如果我错了,请纠正我):

  1. chromeos 挂载Downloadsstateful_partition,这意味着 google 用户在下载文件时没有写入 rootfs。
  2. 这意味着 rootfs 实际上只用于内核文件,因此应该很小。
  3. Crouton 将 chroot 安装到stateful_partition,这意味着 chroot 不会占用 rootfs 中的任何分区空间。

悬而未决的问题:

  1. 究竟是/mnt/stateful_partition为了什么?具体来说,为什么它必须在/mnt
  2. 为什么我没有home分区?
  3. 我的磁盘使用情况看起来正常吗?
  4. 奇怪的事情:在 chroot 中,如果我首先释放空间,我只能有wget足够大的文件。这是面包片施加的空间限制吗?或者 chroot 是否以某种方式写入完整的 rootfs?
  5. 这些额外的分区有什么用?我的存储容量是 32GB,但 SD 插槽似乎有 53G * 3 的容量。这只是一个准备接受和安装可变大小 SD 的分区方案吗?

这是sudo df -h来自chroot内部的:

Filesystem               Size  Used Avail Use% Mounted on
/dev/mmcblk0p1            53G  8.7G   41G  18% /
devtmpfs                 1.9G     0  1.9G   0% /dev
shmfs                    1.9G   36M  1.9G   2% /dev/shm
tmp                      1.9G  3.0M  1.9G   1% /tmp
tmpfs                    385M   12K  385M   1% /run
tmpfs                    5.0M     0  5.0M   0% /run/lock
run                      1.9G  688K  1.9G   1% /var/host/dbus
/dev/mapper/encstateful   16G   81M   16G   1% /var/host/timezone
/dev/root                1.7G  1.7G   41M  98% /lib/modules/3.18.0-17866-g4dfef3905aba
media                    1.9G     0  1.9G   0% /var/host/media
none                     1.9G     0  1.9G   0% /sys/fs/cgroup
none                     1.9G  4.0K  1.9G   1% /sys/fs/selinux
  1. 为什么mmcblk0p1我只有 32GB 可用存储空间时是 53GB?
  2. /dev/root安装在/lib/modules/3.18.... 这似乎是chromeos中的rootfs。为什么烤面包片要使用这个,它是做什么用的?
4

1 回答 1

0

rootfs 是只读的,这意味着它永远不会被写入,所以它几乎一直都是满的,这是正常的,不是问题。大部分存储在设计上处于有状态分区中。

crouton 通常安装在有状态分区上的 /usr/local 中,这意味着它可以访问所有可用存储。

df输出显示挂载,而不是分区。如果要查看分区,则需要运行类似cgpt show /dev/mmcblk0.

df使用绑定挂载时,输出可能会令人困惑,因此您将看到原始设备,而不是绑定挂载的子路径。这就是为什么您会看到/dev/root专门为子目录创建绑定挂载的原因/lib/modules/...

于 2019-01-01T16:05:33.533 回答