我想设置一个在系统启动时自动在 tty4 中运行的程序(如果可能的话,如果不可能,则可以在任何其他 tty 中运行)。
我的 python 脚本位于 /home/vakus/main.py
我没有 GUI,只有控制台。
我找不到任何可以解决我的问题的东西
对不起我的英语不好。
答案1
我没有 ubuntusystemd,但我有一台 Fedora 20,所以我假设它们类似。您可能需要稍微更改文件名。
/lib/systemd/system/
首先创建一个 systemd 服务文件。您应该在或类似目录中找到很多此类文件。
sudo bash <<\!eof
cat > /lib/systemd/system/mystuff.service <<\!
[Unit]
Description=Run my stuff from systemd
After=syslog.target network.target
[Service]
Type=simple
ExecStart=/usr/bin/python /home/vakus/main.py <>/dev/tty4
Restart=no
[Install]
WantedBy=multi-user.target
!
!eof
我曾经<>
让 shell 打开 /dev/tty4 作为 stdin 和 stdout。检查是否没有盖蒂在 tty4 上运行,如果有的话,停止并禁用它。
systemctl status [email protected]
sudo systemctl stop [email protected]
sudo systemctl disable [email protected]
然后启用你的服务在启动时启动,并让 systemd 现在注意到它:
sudo systemctl enable mystuff.service
sudo systemctl daemon-reload
立即激活该服务以查看其是否有效,并检查状态:
sudo systemctl start mystuff.service
systemctl status mystuff.service