ubuntu 自启 python

文章介绍了如何通过gnome-session-properties添加启动应用首选项,具体操作是添加一个命令行脚本/home/tuya18/startpy.sh,该脚本会启动一个新终端并运行python3./testpy.py。通过gnome-terminal--bash-c命令实现终端的启动和Python程序的自动化运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

终端输入

gnome-session-properties

 启动应用首选项添加

命令如

/home/tuya18/startpy.sh

添加启动项名称,注释

startpy.sh

gnome-terminal -- bash -c "python3 ./testpy.py ; exec bash"

启动一个新的终端,并启动python程序

### 设置 Python 程序开机自动启动并以守护进程方式运行 #### 使用 `nohup` 和 `crontab` 为了使 Python 程序Ubuntu 中作为守护进程运行并在系统重时自动启动,可以通过组合使用 `nohup` 和 `crontab` 来实现这一目标。 对于确保程序能在后台持续工作而不受终端关闭影响的部分,可以利用 `nohup` 命令来启动应用程序[^1]: ```bash nohup python3 /path/to/your_script.py & ``` 此命令会忽略挂起信号(SIGHUP),即使用户注销或断开连接也能继续执行指定的脚本文件。符号&表示该任务将在后台执行。 为了让上述操作于每次计算机重新引导之后自行触发,则需编辑系统的定时作业表单即 crontab 文件,在其中加入特定条目用于定义何时以及怎样调用我们的无中断处理指令。具体做法如下所示[^2]: ```bash sudo crontab -e ``` 随后向文档内追加一行描述计划任务的内容: ```text @reboot nohup python3 /home/user/path_to_your/python_program.py >/dev/null 2>&1 & ``` 这里 `/home/user/path_to_your/python_program.py` 应替换为你实际想要调度的那个 Python 脚本的位置;而重定向部分 (`>/dev/null 2>&1`) 的作用在于丢弃标准输出与错误流的信息以免填满磁盘空间。 #### 使用 Systemd Service Unit File 方法 另一种更为推荐的方法是创建 systemd service unit file, 这样不仅能够保证服务随机器一同唤醒而且提供了更精细的服务管理选项比如日志记录、依赖关系解析等功能[^3]. 首先进入 `/etc/systemd/system/` 目录下新建一个 .service 结尾的新文件用来保存新建立的服务单元配置信息: ```bash sudo nano /etc/systemd/system/myscript.service ``` 接着按照下面模板填写相应字段完成整个文件编写过程: ```ini [Unit] Description=My Script as a Service After=network.target [Service] ExecStart=/usr/bin/python3 /full/path/to/script.py WorkingDirectory=/working/directory/of/the/script/ Restart=always User=nobody Group=nogroup Environment=PATH=/usr/bin:/usr/local/bin Environment=PYTHONUNBUFFERED=1 [Install] WantedBy=multi-user.target ``` 请注意将 ExecStart 行中的路径调整至匹配本地环境的具体情况,并根据需求修改其他参数如 User 或 Group 字段所代表的身份权限等属性。完成后记得用这个新的服务以便其能够在下次启动期间被激活: ```bash sudo systemctl enable myscript.service sudo systemctl start myscript.service ``` 通过这种方式设置后,每当操作系统进入多用户模式 (通常是图形界面登录之前的状态),就会尝试加载并维持所提供的 Python 程序处于活动状态直至再次关机为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值