HIT-oslab遇到的问题
Error: Can’t open display:
windows下用cmd或者powshell都会出现debug1: X11 forwarding requested but DISPLAY not set
,stackoverflow上的方法都试了,还是无法解决!
- 用putty连接!!!,putty里设置:
- 似乎在windows上添加了系统环境变量之后,ps或者cmd直接连接也可以xclock了
GDB调试出现无法正常停在main函数的情况
猜测可能是直接用apt安装的gdb的版本问题,我从https://gitee.com/cn-guoziyang/oslab/下载了他的gdb,然后出现缺少动态库,这个gdb是32位的,所需的库也都是32位的。所以要开启32位软件源的支持:
sudo dpkg --add-architecture i386 && sudo apt update
apt install libexpat-dev:i386 lib32ncurses5 lib32z1
依旧还是:
Program received signal SIGTRAP, Trace/breakpoint trap.
0xffff0000 in ?? ()
(gdb)
Continuing.
Program received signal SIGTRAP, Trace/breakpoint trap.
0xffff0000 in ?? ()
(gdb)
Continuing.
6.6更新:直接用apt下载的gdb也可以,但是需要设置 调试模式是32位,"targetArchitecture":"x86"
,这是vscode的设置方法,直接gdb设置没有找。
挂载minix镜像:
$ mount -t minix -o loop,offset=1024 ./hdc-0.11.img ./hdc
mount: ./hdc: mount failed: Operation not permitted.
losetup -f
查看loop device
发现没有
$ losetup -f
losetup: cannot find an unused loop device: No such device
Solution:
docker 访问系统的device时需要加上特殊权限:
docker启动的时候加上--privileged=true
加上之后,在Ubuntu虚拟机中的Docker里,可以成功挂载了,但是Windows下的Docker里还有新的错误:
$ ./mount-hdc
mount: unknown filesystem type 'minix'
听说wsl2不支持挂载minix镜像,so,还没有解决。