首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将/etc从磁盘安装到squashfs

将/etc从磁盘安装到squashfs
EN

Unix & Linux用户
提问于 2013-03-19 15:26:06
回答 1查看 741关注 0票数 3

我已经创建了一个应该从CF卡引导的gentoo实时系统。整个文件系统都在一个squashfs中。我创建了一个定制的initrd,它首先将CF卡挂载,然后将压缩后的文件系统装入将成为/的文件系统。

我希望/etc是可写的,所以我把它复制到CF卡上,添加了一个绑定。然而,这似乎行不通。系统启动,但/etc没有挂载。

我想知道我的方法是否正确,我能做些什么来修复它,或者如果不是,什么是实现这一目标的正确方法。

这是我的init-script initrd

代码语言:javascript
复制
#!/bin/busybox sh
mount -t proc none /proc
mount -t sysfs none /sys

mount /dev/sda1 /mnt/flash
mount -o loop /mnt/flash/filesystem.squashfs /mnt/root
mount -B /mnt/flash/etc /mnt/root/etc
mount -o remount,rw /mnt/root/etc

umount /proc
umount /sys

exec switch_root /mnt/root /sbin/init

这是cat /proc/mounts的缩短输出:

代码语言:javascript
复制
rootfs / rootfs rw 0 0
/dev/sda1 /mnt/flash ext2 rw,relatime,errors=continue,user_xattr,acl 0 0
/dev/loop0 / squashfs ro,relatime 0 0
...
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2013-03-19 16:47:40

BusyBox的内置mount命令不识别-B;您必须使用-o bind

代码语言:javascript
复制
mount -o bind /mnt/flash/etc /mnt/root/etc

而且,如果/mnt/flash已经是可写的,我认为重新安装是不必要的。但是试着先修复绑定安装。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/68457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档