问题标签 [systemd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1293 浏览

bash - 在 systemd 引导期间访问标准输入

我有一个脚本,它在启动计算机时向用户请求数字输入。计算机正在运行 Fedora 16。它在 Fedora 13 上使用过工作,但在升级之后

立即返回,而不捕获任何用户输入。我试过了

但是(可以预见)那也行不通。该脚本从 systemd 服务文件运行(请参阅下面的注释)。它必须以 root 身份运行,并且必须在用户登录之前启动。它目前调用 bash 作为它的解释器,但通过一些努力,可以改变它。谁能帮助这个脚本恢复正常?

额外的功劳:在 F13 中,它曾经停止引导用户输入(根据需要),但在用户键入时输入未显示。有没有办法添加这个功能?

0 投票
2 回答
3292 浏览

linux - 来自非 root 用户的单位(用于命令启动/停止/启用/禁用)

我想在启动时通过systemd(操作系统是 Fedora Core 16)从一些非 root 用户(例如michael)执行我的脚本。

我不需要 root 权限 - 我只想在启动时和关闭时运行我的一些单元在systemd. 而且我不想为此打开root用户。我只想使用systemd单元语法的力量来启动和监视我的进程(当然没有 root 访问权限)。可能吗?

我在文档中没有找到任何帮助。我只发现systemd(1) -> DIRECTORIES -> "User unit directories"

但是/usr/lib/systemd/user是:

drwxr-xr-x。2根根

我无法想象如何以非 root 用户身份使用此目录...

0 投票
4 回答
3032 浏览

perl - 如何重新加载 mojolicious 内置的网络服务器守护进程?

我从 复制了这个systemd service文件lighttpd-package并对其进行了调整以systemd启动 mojolicious 内置服务器守护程序。我可以保留mojolicious 守护进程ExecReload的设置吗?KillSignal

0 投票
2 回答
856 浏览

networking - 如何将 Unix POSIX 文件描述符或标准输入句柄转换为套接字?

inetdsystemd类型的系统中,系统可以绑定套接字并使用已经存在的套接字启动应用程序,例如提供基于套接字的服务启动。我想在我的一个 Haskell 守护程序中利用此功能。

守护进程当前调用 , ,socket来创建一个我以后可以调用的对象。要将其更改为类型系统,我需要将标准输入用作 a ,但到目前为止我能找到的只是, 或- 两者都不是我需要的。bindSocketlistenSocketacceptinetdSocketstdin :: HandlefdToHandle :: CInt -> Handle

我似乎找不到任何类型的东西Handle -> Socket,也找不到任何类似的东西stdin :: Socket。我能找到的最接近的mkSocket是非常低级的,并且大多数其他语言(即Ruby)都提供了将文件描述符转换为套接字的调用,而无需指定各种其他参数。

0 投票
5 回答
83945 浏览

python - Python 守护进程和 systemd 服务

我有一个简单的 Python 脚本作为守护进程工作。我正在尝试创建 systemd 脚本以便能够在启动期间启动此脚本。

当前的 systemd 脚本:

节点.py:

run包含while True循环。

我尝试使用systemctl start zebra-node.service. 不幸的是,服务从未完成说明序列 - 我必须按 Ctrl+C。脚本正在运行,但状态为激活,一段时间后变为停用。现在我正在使用 python-daemon (但在我尝试不使用它并且症状相似之前)。

我应该为我的脚本实现一些附加功能还是 systemd 文件不正确?

0 投票
1 回答
2638 浏览

qt - 使用 systemd 自动启动的 Qt GUI 实例不响应输入

我有一个嵌入式 Linux 板,它使用 systemd 进行启动过程。我还有一个用 Qt 编写的 GUI,我可以从命令行很好地启动它,并使用电路板的触摸屏或按钮进行交互。要启动应用程序,我通常会这样做:

我希望它使用 SystemD 自动启动,所以我编写了一个如下所示的服务文件:

当板子启动时,我在 systemd 日志中看到它在 dropbear SSH 服务之后立即启动我的 gui:

如果我在启动后通过 SSH 连接到主板并运行“ps”,我可以看到我的进程已启动(如果我杀死它,它会按预期从 systemd 重新启动):

systemctl status 的输出对我来说看起来不错,请注意最后一行 'ARM build' 是我的代码中的 qDebug() 打印语句:

但是,我根本无法与使用 systemd 启动的 GUI 实例进行交互!如果我从命令行启动辅助实例,则可以按下按钮或触摸屏,GUI 会在屏幕上弹出并按预期工作。是什么赋予了?我在服务文件中尝试了“Type=forking”,但这也无济于事。关于这里有什么问题的任何想法?我怎样才能让 systemd 启动我的 Qt GUI,就像我从命令行启动它一样?谢谢 -

0 投票
2 回答
6327 浏览

unix - 从 C/C++ 应用程序启动 systemd 服务或调用 D-Bus 服务

我有一个 .service 用于我不想在启动时启动的进程,而是在给定时间从另一个已经运行的应用程序中以某种方式调用它。

另一种选择是将 D-Bus(我在我的应用程序中使用 glib dbus)服务文件放在 /usr/share/dbus-1/services 中,并以某种方式从我的应用程序中调用它。另外,我也无法做到这一点。

假设我的 dbus 服务文件来自/usr/share/dbus-1/servicesiscom.callThis.service 和我的主要服务文件来自/lib/systemd/system is com.startThis.service

如果我从命令行运行一个简单的内省:

D-Bus 服务文件将被调用,它将启动 Exec ( com.starThis ) 中的内容。问题是我想使用 D-Bus glib 从 C/C++ 代码中实现这一点。

0 投票
0 回答
197 浏览

linux - 通过 ConsoleKit 或 systemd 限制登录用户对 D-Bus 的访问

我需要将 D-Bus 服务的客户端限制为仅通过 ConsoleKit 或 systemd 在本地登录系统的用户。我必须如何配置或编写 D-Bus 服务才能做到这一点?

0 投票
3 回答
4694 浏览

virtualbox - Virtualbox Headless: not starting via systemd

Already tried this Topic but doesn't solved it

I have placed a file called vbox.service under /lib/systemd/system/vbox.service with the following content:

If I start and stop it via sudo systemctl start vbox and sudo systemctl stop vbox, everything works fine Then i entered the following: sudo systemctl enable vbox, but it wont start at boot Here is the output

/usr/bin/VBoxHeadless --startvm 4decf7c1-7eda-461c-92aa-835d2405a22e works fine Any ideas, though?

0 投票
1 回答
97377 浏览

linux - Linux 中使用 systemd 的启动脚本

请问下面这个启动服务,运行一次没有报错,但是下面的服务器脚本没有运行!

谢谢

水族馆服务:

这是 server.sh 脚本