- Linux Device Driver Development Cookbook
- Rodolfo Giometti
- 216字
- 2021-06-24 13:54:11
How to do it...
Now it's time to see how chroot works:
- Execute an ARM64 bash command by using our x86_64 host, as follows:
$ sudo chroot debian-stretch-arm64/ bash
bash: warning: setlocale: LC_ALL: cannot change locale (en_GB.UTF-8)
root@giometti-VirtualBox:/#
- Then, we can use each ARM64 command as we did on the ESPRESSObin; for example, to list files into the current directory; we can use the following:
# ls /
bin dev home media opt root sbin sys usr
boot etc lib mnt proc run srv tmp var
# cat /etc/hostname
espressobin
However, there are some traps; for instance, we completely miss the /proc and /sys directories and programs, which rely on them and will fail for sure:
# ls /{proc,sys}
/proc:
/sys:
# ps
Error: /proc must be mounted
To mount /proc at boot you need an /etc/fstab line like:
proc /proc proc defaults
In the meantime, run "mount proc /proc -t proc"
To resolve these problems, we can manually mount these missing directories before executing chroot, but this is quite annoying due to the fact that they are so many, so we can try using the schroot utility, which, in turn, can do all of these steps for us. Let's see how.
For detailed information regarding schroot, you can see its man pages with man schroot.
推薦閱讀
- Citrix XenApp Performance Essentials
- Implementing Cisco UCS Solutions
- Linux從零開始學(視頻教學版)
- Hands-On DevOps with Vagrant
- Mobile First Design with HTML5 and CSS3
- Learning Bootstrap
- 注冊表應用完全DIY
- jQuery UI Cookbook
- Linux服務器配置與管理
- Linux基礎使用與案例
- Windows Vista終極技巧金典
- Learning Continuous Integration with Jenkins(Second Edition)
- 電腦辦公(Windows 10 + Office 2016)入門與提高(超值版)
- 應急指揮信息系統設計
- Azure Resource Manager Templates Quick Start Guide