#systemd #service #running #transient #processes #manager #per-user

systemd-run

一个用于将进程作为 Systemd 临时服务运行的 Rust 包

8 个版本 (破坏性更新)

0.7.1 2024年2月22日
0.6.0 2023年12月1日
0.5.0 2023年11月27日
0.4.0 2023年1月29日
0.2.0 2022年7月14日

#310 in Unix APIs

Download history 2/week @ 2024-03-17 9/week @ 2024-03-31 110/week @ 2024-04-07 15/week @ 2024-04-28 1/week @ 2024-05-05 1/week @ 2024-05-26 1/week @ 2024-06-02

每月131次下载

MIT/Apache

70KB
1.5K SLoC

Rust 1K SLoC // 0.0% comments C 136 SLoC // 0.1% comments C++ 37 SLoC

包含 (ELF exe/lib, 18KB) test-aux/setuid

systemd_run

这是一个用于将进程作为 Systemd 临时服务运行的包。

状态:高度不稳定,处于早期开发阶段。

示例代码

此代码以 Systemd 临时服务的方式启动 /bin/true,在您的登录会话的每个用户服务管理器中运行,并等待其完成。

#[async_std::main]
async fn main() -> std::result::Result<(), Box<dyn std::error::Error>> {
	let status = systemd_run::RunUser::new("/bin/true")
		.start()
		.await?
		.wait()
		.await?;
	dbg!(status);
	Ok(())
}

依赖项

~9–20MB
~283K SLoC