我在本地电脑上运行一个同事的笔记本(她用的是collab)。
在导入之后,这行代码
display = pyvirtualdisplay.Display(visible=0, size=(1400, 900))
_ = display.start()
导致以下错误(缩写,长度为几页):
~/opt/anaconda3/envs/general-ml/lib/python3.8/site-packages/pyvirtualdisplay/abstractdisplay.py in _wait_for_pipe_text(self, rfd)
293 (rfd_changed_ls, _, _) = select.select([rfd], [], [], 0.1)
294 if not self.is_alive():
--> 295 raise XStartError(
296 "%s program closed. command: %s stderr: %s"
297 % (self._program, self._command, self.stderr)
XStartError: Xvfb program closed. command: ['Xvfb', '-br', '-nolisten', 'tcp', '-screen', '0', '1400x900x24', '-displayfd', '67'] stderr: b'_XSERVTransmkdir:
ERROR: euid != 0,directory /tmp/.X11-unix will not be created.
_XSERVTransSocketUNIXCreateListener: mkdir(/tmp/.X11-unix) failed, errno = 2
_XSERVTransMakeAllCOTSServerListeners: failed to create listener for localn_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.
_XSERVTransSocketUNIXCreateListener: mkdir(/tmp/.X11-unix) failed, errno = 2
_XSERVTransMakeAllCOTSServerListeners: failed to create listener for local
_XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created
... AND ON AND ON FOREVER.
我使用conda安装pyvirtualdisplay
包,并从Xquarts安装Xvfb
。
这两个工具对我来说都是全新的,所以我几乎不知道它们是做什么的。我正试着让这个笔记本运行起来,这样我就能学到更多的东西,但我还没开始就被卡住了。
我的M1 MacBook Pro上也有类似的错误,我在网上找不到任何修复方法。我最终通过下载XQuartz并运行它来解决这个问题:
xhost +
我希望它能帮助到大家。