首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >系统服务“错误:无法初始化GTK+,显示设置是否正确?

系统服务“错误:无法初始化GTK+,显示设置是否正确?
EN

Unix & Linux用户
提问于 2019-07-09 05:56:47
回答 1查看 15.5K关注 0票数 1
代码语言:javascript
运行
复制
/home/matthew/@/Sync/FreeFileSync "/home/matthew/@/Sync/Backup.ffs_batch"

如果我手动运行上面的代码,它就会正常工作,但是如果我通过以下服务运行它,它就不会工作了:

代码语言:javascript
运行
复制
matthew@matthew-pc:~$ cat /lib/systemd/system/Testing1.service
[Service]
ExecStart=/home/matthew/@/Sync/FreeFileSync "/home/matthew/@/Sync/Backup.ffs_batch"

[Install]
WantedBy=multi-user.target

错误如下所示:

代码语言:javascript
运行
复制
matthew@matthew-pc:~$ sudo systemctl status Testing1.service
[sudo] password for matthew: 
● Testing1.service
Loaded: loaded (/lib/systemd/system/Testing1.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2019-07-09 14:14:33 HKT; 1s ago
Process: 10255 ExecStart=/home/matthew/@/Sync/FreeFileSync /home/matthew/@/Sync/Backup.ffs_batch (code=exited, status=25
Main PID: 10255 (code=exited, status=255)

Jul 09 14:14:33 matthew-pc systemd[1]: Started Testing1.service.
Jul 09 14:14:33 matthew-pc FreeFileSync[10255]: 14:14:33: Error: Unable to initialize GTK+, is DISPLAY set properly?
Jul 09 14:14:33 matthew-pc systemd[1]: Testing1.service: Main process exited, code=exited, status=255/n/a
Jul 09 14:14:33 matthew-pc systemd[1]: Testing1.service: Failed with result 'exit-code'.

如何解决"Error:无法初始化GTK+,显示设置是否正确?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-07-13 20:35:33

遵循以下步骤:

  1. 您的服务文件必须进入/etc/systemd/user。为此执行mv /etc/systemd/system/Testing1.service /etc/systemd/user/
  2. 使用systemd的用户模式。从用户帐户(而不是根)执行systemctl --user start Testing1.service来启动服务。

解释系统有两种运行模式,即系统模式和用户模式。系统模式是在用户登录到其会话之前启动的,因此此时没有图形会话。FreeFileSync和ReadTimeSync需要访问图形X11显示,因此它们不能通过系统模式运行。在用户模式下,系统了解并使用用户图形化会话(如果执行命令的shell属于用户及其图形环境,则为<#>only)。更多细节可以找到在ArchWiki中论叠加流

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/529115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档