我正在运行 Ubuntu 的设备上工作。它的存储容量较小,这是命令的输出df -h
:
Filesystem Size Used Avail Use% Mounted on
/dev/mmcblk0p1 28G 25G 1,3G 96% /
none 3,5G 0 3,5G 0% /dev
tmpfs 3,9G 40K 3,9G 1% /dev/shm
tmpfs 3,9G 30M 3,9G 1% /run
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 3,9G 0 3,9G 0% /sys/fs/cgroup
/dev/loop0 100M 100M 0 100% /snap/cmake/925
/dev/loop1 29M 29M 0 100% /snap/snapd/12886
/dev/loop2 49M 49M 0 100% /snap/core18/2127
tmpfs 786M 12K 786M 1% /run/user/120
tmpfs 786M 140K 785M 1% /run/user/1000
/dev/mmcblk2p1 58G 32K 58G 1% /media/nvidia/SDcard
我插入了 64 GB 的 SD 卡:
/dev/mmcblk2p1 58G 32K 58G 1% /media/nvidia/SDcard
我的目的是扩展根存储:
/dev/mmcblk0p1 28G 25G 1,3G 96% /
是否可以?我可以将 SD 卡挂载到 root / 吗?我该怎么做?抱歉,如果我的问题不好,我是 UNIX 系统的初学者,我更喜欢在做不好的事情之前先问。
答案1
您可以使用 LVM 将根分区扩展到多个设备,但我不推荐这样做。如果您的主要设备是 eMMC,那么相比之下,SD 卡的可靠性可能较差且速度相当慢。
处理这种情况的典型方法是确定需要更多空间的目录,将其移动到 SD 卡并将其挂载到相应的目录。
例如,您在 上有一个大型应用程序/opt
,您可以
mkdir /tmp/mnt
sudo mount /dev/mmcblk2p1 /tmp/mnt
sudo mv /opt/* /tmp/mnt
然后添加类似的东西
/dev/mmcblk2p1 /opt ext4 rw 1 1
以便您/etc/fstab
在启动时自动安装它。您也可以对其他目录执行此操作,但我建议将所有重要内容保留在根分区上,以便系统可以在没有 SD 卡的情况下启动和维护。
答案2
我认为当前的linux技术无法做到这一点,因为linux仍然识别设备中的永久存储位置