当前位置: 首页 > news >正文

chroot: failed to run command ‘/bin/bash’: No such file or directory

1. 问题描述及原因分析

在busybox的环境下,执行

cd rootfs
chroot .

报错如下:

chroot: failed to run command ‘/bin/bash’: No such file or directory

根据报错应该rootfs文件系统中缺少/bin/bash,进入查看确实默认是sh,换成

chroot . /bin/sh

依然报错

chroot: failed to run command ‘/bin/sh’: No such file or directory

通过查阅资料发现,/bin/sh链接/bin/busybox,busybox为动态执行文件,直接进入缺少动态链接库,如下:
在这里插入图片描述

需要拷贝相应的动态到rootfs文件系统,如下:

cd rootfs
cp /lib/ld-linux-aarch64.so.1 lib/
mkdir -p lib64
cp /lib64/libc.so.6 lib64/
cp /lib64/libresolv.so.2 lib64/
cp /lib64/libm.so.6 lib64/

然后再执行chroot . /bin/sh就正常了。


2. 解决方案:

拷贝相应的动态链接库到rootfs中,如下:

cd rootfs
cp /lib/ld-linux-aarch64.so.1 lib/
mkdir -p lib64
cp /lib64/libc.so.6 lib64/
cp /lib64/libresolv.so.2 lib64/
cp /lib64/libm.so.6 lib64/

然后再chroot采用sh解释器,如下:

chroot . /bin/sh
export PATH=$PATH:/bin:/sbin
ls

在这里插入图片描述

3.参考文献

https://unix.stackexchange.com/questions/58074/how-to-chroot-into-busybox-environment

http://www.lryc.cn/news/288713.html

相关文章:

  • 蓝桥杯备战——2.矩阵键盘
  • Docker部署思维导图工具SimpleMindMap并实现公网远程访问
  • 机器学习实验2——线性回归求解加州房价问题
  • 宝塔+nextcloud+docker+Onlyoffice 全开启https
  • 呼吸机电机控制主控MCU方案
  • gitlab备份-迁移-升级方案9.2.7升级到15版本最佳实践
  • redis面试题合集-基础
  • (Unity)C# 中的字符串格式化
  • 【项目日记(五)】第二层: 中心缓存的具体实现(上)
  • 使用PSIM软件生成DSP28335流水灯程序
  • 【iOS ARKit】人脸检测追踪基础
  • ES的一些名称和概念总结
  • Javaweb之SpringBootWeb案例之阿里云OSS服务集成的详细解析
  • 【GitHub项目推荐--不错的 Go 学习项目】【转载】
  • 【Git】windows系统安装git教程和配置
  • 办公技巧:PPT制作技巧分享,值得收藏
  • Google Chrome RCE漏洞 CVE-2020-6507 和 CVE-2024-0517 流程分析
  • 前端怎么监听手机键盘是否弹起
  • 本地生活服务平台加盟前景与市场分析
  • 蓝桥杯备战——7.DS18B20温度传感器
  • 黑盒测试用例的具体设计方法(7种)
  • docker镜像管理命令
  • 深入理解STM32中断处理机制
  • 基于机器学习的地震预测(Earthquake Prediction with Machine Learning)
  • 《30天自制操作系统》 第一周(D1-D7) 笔记
  • SQL注入:报错注入
  • K8s 安装部署-Master和Minion(Node)文档
  • OpenAI 降低价格并修复拒绝工作的“懒惰”GPT-4,另外ChatGPT 新增了两个小功能
  • springboot+value静态属性获取配置文件中的值的操作方法
  • Prometheus 架构全面解析