ubuntu22 设置开机自动运行程序

专栏总目录

一、准备测试程序

(一)用python写一个TCP服务器端程序

import socket

import threading



s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

s.bind(('127.0.0.1', 9999))

s.listen(1000)

print('start listening')



def handler(conn):

	data = conn.recv(1024)

	print(data.decode())

	



while True:

	conn, addr = s.accept()

	if conn:

		p = threading.thread(target= handler, args=(conn,))

		p.start()

(二)验证程序

        执行后,打开新的shell,输入下列命令,检查9999端口是否开启了侦听

netstat -pantu

         当看到了127.0.0.1:9999这一行内容,说明以上程序成功执行

 二、设置开机自动运行

(一)使用 systemd 服务(已验证)

        systemd 是 Ubuntu 22.04 的默认启动系统和服务管理器。你可以创建一个 my_service.service 文件来定义你的服务,并将其放置在 /etc/systemd/system/ 目录下。

sudo vi /etc/systemd/system/my_service.service

         将/path/to/your/script.py替换为你要执行程序的路径

# /etc/systemd/system/my_service.service
[Unit]
Description=My Custom Service

[Service]
Type=idle
ExecStart=/usr/bin/python3 /path/to/your/script.py

[Install]
WantedBy=multi-user.target

        接下来,启用并启动服务:

sudo systemctl enable my_service.service
sudo systemctl start my_service.service

        这将在系统启动时自动启动你的服务。

        当不想开启自动执行的时候,可以关闭该自动运行服务,命令如下:

sudo systemctl disable my_service.service

(二)使用 rc.local(未验证)

        编辑 /etc/rc.local 文件。这个文件在系统启动时会自动执行。

        首先,编辑 /etc/rc.local 文件

sudo vi /etc/rc.local

        在rc.local文件中添加以下内容:

#!/bin/bash
# /etc/rc.local

#这里可以添加你在shell中执行的代码
python3 /home/t/test01.py

exit 0

        赋予rc.local文件可执行权限

sudo chmod +x /etc/rc.local

三、验证

        验证方式,与上面程序运行的验证方式一致,此处省略

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静候光阴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值