摘要:我创建了一个可启动的 USB 驱动器,上面有一个实时 Bridge Linux(基于 ARCH)。一切正常。实时系统将一个名为 /dev/mapper/arch_root-image 的设备挂载为其 ext4 根分区(/ 挂载点)。问题是我不知道如何控制这个分区的大小。这不是 Bridge 特有的问题(Archbang 也会发生这种情况)
详细信息:我的 USB 驱动器有一个 dos 分区表,其中有两个 ext2 分区
$ fdisk -l /dev/sdb
Disk /dev/sdb: 29,8 GiB, 32006733824 bytes, 62513152 sectors
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0x0007b7e2
Périphérique Amorçage Début Fin Blocs Id Système
/dev/sdb1 * 2048 2002943 1000448 83 Linux
/dev/sdb2 2002944 32258047 15127552 83 Linux
sdb1 大约为 1GB,sdb2 为 14GB。实时系统位于 sdb1 上。sdb2 为空。
现在,当我启动实时系统时,它的文件系统如下所示:
$ mount
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sys on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
dev on /dev type devtmpfs (rw,nosuid,relatime,size=505272k,nr_inodes=126318,mode=755)
run on /run type tmpfs (rw,nosuid,nodev,relatime,mode=755)
/dev/sda1 on /run/archiso/bootmnt type ext2 (ro,relatime)
cowspace on /run/archiso/cowspace type tmpfs (rw,relatime,size=772468k,mode=755)
/dev/loop0 on /run/archiso/sfs/root-image type squashfs (ro,relatime)
/dev/mapper/arch_root-image on / type ext4 (rw,relatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
mqueue on /dev/mqueue type mqueue (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=36,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
tmpfs on /tmp type tmpfs (rw)
tmpfs on /etc/pacman.d/gnupg type tmpfs (rw,relatime,mode=755)
我们可以看到,根分区来自设备/dev/mapper/arch_root-image
,我的问题是实时系统将其安装为 3.9GB 驱动器
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/arch_root-image 3.9G 1.9G 2.1G 48% /
dev 494M 0 494M 0% /dev
run 503M 23M 481M 5% /run
/dev/sda1 962M 590M 324M 65% /run/archiso/bootmnt
cowspace 755M 32M 723M 5% /run/archiso/cowspace
/dev/loop0 520M 520M 0 100% /run/archiso/sfs/root-image
tmpfs 503M 132K 503M 1% /dev/shm
tmpfs 503M 0 503M 0% /sys/fs/cgroup
tmpfs 503M 360K 503M 1% /tmp
tmpfs 503M 896K 503M 1% /etc/pacman.d/gnupg
aitab
我的问题是这个大小是如何控制的?我怀疑这与Bridge iso 映像的一部分文件的内容有关:
$ cat aitab
# <img> <mnt> <arch> <sfs_comp> <fs_type> <fs_size>
root-image / i686 xz ext4 50%
我读过了https://wiki.archlinux.org/index.php/archiso#aitab但没有找到任何线索。fs_size
选项应该控制可用空间的数量,但更改它对已挂载的根分区大小没有影响。