mount --bind 的妙用
2015-10-13 14:39
127 查看
在固件开发过程中常常遇到这样的情况:为测试某个新功能,必需修改某个系统文件。而这个文件在只读文件系统上(总不能为一个小小的测试就重刷固件吧),或者是虽然文件可写,但是自己对这个改动没有把握,不愿意直接修改。这时候mount --bind就是你的好帮手。
假设我们要改的文件是/etc/hosts,可按下面的步骤操作:
1. 把新的hosts文件放在/tmp下。当然也可放在硬盘或U盘上。
2. mount --bind /tmp/hosts /etc/hosts
测试完成了执行 umount /etc/hosts 断开绑定。
如果我需要在/etc下面增加一个exports文件怎么办?原来没有这个文件,不能直接bind。我们有两个方法:
方法1:绑定整个/etc目录,绑定前先复制/etc
# cp -a /etc /tmp
# mount --bind /tmp/etc /etc
此时的/etc目录是可写的,所做修改不会应用到原来的/etc目录,可以放心测试。
方法2:挂载ramfs到/etc,同样要先复制/etc
挂载ramfs
# mkdir /tmp/etc
# mount -t ramfs none /tmp/etc
复制/etc,这里我们不能用cp -a,改用tar
# cd /etc
# tar cf - . |(cd /tmp/etc; tar xf -)
# cd /
覆盖/etc
# mount --move /tmp/etc /etc
测试完了记着 umount /etc
相关文章推荐
- 创建Car类,实例化并调用Car类计算运输的原料量是否足够
- X-shell、putty秘钥登录方式整理、普通用户密钥登录
- 面向对象编程,面向服务架构,基于组件开发三种编程模式有什么区别?
- Gesture手势、触碰
- CommonTableCollectView:使用例子,增删cell,以及label解析html
- 有米Android SDK开发者文档
- Shell编程实现Kill线程
- MySQL分表方法
- DevExpress GridControl 控件点滴
- c++ template 多层继承下找不到纯虚拟函数实现 报错:undefined reference to "xxx"
- Nginx 反向代理 分配方式 防攻击真实Ip
- 【网络安全】Cuckoo Sandbox Realistic Application
- PHP实现连接设备、通讯和发送命令的方法
- android背景选择器总结
- Android签名总结
- 编码的发展史
- assign copy retain
- linux 64 位和32 系统的关于类型的不同
- 超链接的target属性
- UIBezierPath2