在无头模式下运行Chrome

Exp*_* be 1 google-chrome google-chrome-headless

为了在无头模式下运行chrome,我做到了

alias chrome ="/ Applications/Google\Chrome.app/Contents/MacOS/Google\Chrome"

chrome --remote-debugging-port = 9222 --disable-gpu --headless

在控制台,但是,我收到此错误,

[0305/140111.481537:错误:xattr.cc(64)] setxattr org.chromium.crashpad.database.initialized on file/var/folders/m3/92mmh21n0cx4ppf8c3bcns38hd4_kk/T /:不允许操作(1)[0305/140111.484254:错误:xattr.cc(64)] setxattr org.chromium.crashpad.database.initialized on file/var/folders/m3/92mmh21n0cx4ppf8c3bcns38hd4_kk/T /:不允许操作(1)[0305/140111.484254:INFO:crashpad_client_mac.cc(292) )]在0.983s中重新启动处理程序[0305/140111.513641:错误:gpu_process_transport_factory.cc(1009)]丢失UI共享上下文.[0305/140111.513709:错误:instance.cc(49)]无法找到度量标准的服务清单[0305/140111.513733:错误:service_manager.cc(890)]无法解析服务名称:metrics [0305/140111.514229:错误:socket_posix .cc(142)] bind()返回错误,errno = 48:地址已在使用中(48)

DevTools监听ws:// [:: 1]:9222/devtools/browser/c46563ca-1891-48bd-bdd6-e6122f3f3b5d [0305/140112.484141:ERROR:xattr.cc(64)] setxattr org.chromium.crashpad.database .initialized on file/var/folders/m3/92mmh21n0cx4ppf8c3bcns38hd4_kk/T /:不允许操作(1)[0305/140112.484641:INFO:crashpad_client_mac.cc(292)]重新启动0.985s中的处理程序[0305/140113.489618:错误:xattr. cc(64)] setxattr org.chromium.crashpad.database.initialized on file/var/folders/m3/92mmh21n0cx4ppf8c3bcns38hd4_kk/T /:不允许操作(1)[0305/140113.490274:INFO:crashpad_client_mac.cc(292)]重新启动处理程序在0.979s [0305/140114.484881:错误:xattr.cc(64)] setxattr org.chromium.crashpad.database.initialized on file/var/folders/m3/92mmh21n0cx4ppf8c3bcns38hd4_kk/T /:不允许操作(1)[0305 /140114.485349:INFO:crashpad_client_mac.cc(292)]重启处理程序在0.985s [0305/140115.489188:ERROR:xattr.cc(64)] setxattr org.chromium.crashpad.database.initialized on file/var/folders/m3/92mmh2 1n0cx4ppf8c3bcns38hd4_kk/T /:不允许操作(1)[0305/140115.489638:INFO:crashpad_client_mac.cc(292)]在0.985s中重启处理程序

我也试过了,

/ Applications/Google\Chrome.app/Contents/MacOS/Google\Chrome --remote-debugging-port = 9222 --disable-gpu --headless

但我得到了同样的错误.

这有什么解决方案吗?

小智 11

我从xattr上的Chrome崩溃崩溃中得到了答案

只需在启动Chrome时为"崩溃转储"提供不同的目录,如下所示:

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --disable-gpu --headless --crash-dumps-dir=/tmp
Run Code Online (Sandbox Code Playgroud)

  • 为了清楚起见,使用这个额外的标志解决:`--crash-dumps-dir=/tmp` (4认同)

tnt*_*tl3 -6

更新 3/6
我在自己的 MacBook 上检查了解决方案,它有效。


我今天遇到了同样的问题,在搜索了一些文档后,我怀疑这是由于MacOS中的SIP(系统完整性保护)功能造成的,有了这个限制,你不能修改下面的文件/var文件夹下的文件。

所以是禁用该功能的方法:

  1. 关闭 Mac(Apple > 关机)。
  2. 按住 Command-R 并按下电源按钮。按住 Command-R 直至出现 Apple 徽标。
  3. 等待 OS X 启动进入 OS X 实用程序窗口。
  4. 选择实用程序 > 终端。
  5. 输入 csrutil 禁用。
  6. 输入重启。