原文
原文中是使用自己编写的 python 脚本 myscript 时,出现了这个错误
sudo python myscript.py
而我是在运行自己编写的运行程序时出现了这个错误,但解决方法是一致的
如果在使用linux 时, 遇到了下面这个错误
Putty X11 proxy: Authorisation not recognised
(Imagen Combinada:3642) : Gtk-Warning **: cannot open display: localhost:10.0
解决方法
1.方法一
sudo -E python myscript.py
加 -E 后会加载root用户环境下的 ~/.Xauthority
但是这个方法存在一定的安全风险不是很推荐
2.方法二
pi@RPi-Dev:~$ xauth list
RPi-Dev/unix:10 MIT-MAGIC-COOKIE-1 5cxxxxxxxxxxxxxxxxxxxxxxxxxxx3d3
pi@RPi-Dev:~$ sudo -s
root@RPi-Dev:/home/pi# xauth add RPi-Dev/unix:10 MIT-MAGIC-COOKIE-1 5c5cxxxxxxxxxxxxxxxxxxxxxxxxxxxd3
先使用xauth list 列出所有转发端口
切换为root用户
再使用xauth add 将需要的端口进行添加
因为上文中报错是 localhost:10.0,所以这里添加的就是 RPi-Dev/unix:10
Gtk-Warning **: cannot open display: localhost:10.0
添加完后就可以不添加 -E 直接运行成功了