无论是Web开发,数据处理还是自动化任务,Python都是一个极其有用的工具。在这篇文章中,我们将探讨如何在一个VPS(Virtual Private Server,虚拟私有服务器)上运行Python脚本,并保证它能长期稳定运行。以下内容将涉及到Linux命令行、Python环境的设置,以及screen命令的使用。

上传Python脚本到VPS服务器

首先,我们需要将本地的Python脚本上传到VPS服务器上。我们可以使用SSH(安全外壳协议)和SCP(安全拷贝协议)实现这个目标。在命令行界面,你可以使用以下命令将脚本上传到VPS:

scp /path/to/your_script.py your_username@your_vps_ip:/path/on/vps

这个命令将你的Python脚本从本地计算机复制到VPS服务器上。

在VPS上安装Python和所需的库

接下来,我们需要确保VPS上已经安装了Python环境。如果还没有安装,我们可以在Ubuntu系统中使用以下命令安装Python3:

sudo apt-get update
sudo apt-get install python3 python3-pip

然后,我们需要安装Python脚本所需的库。一种方便的做法是创建一个requirements.txt文件,其中列出了所有需要的库和版本,然后使用以下命令安装:

pip3 install -r requirements.txt

使用nohupscreen来运行脚本

我们需要在VPS服务器上持续运行Python脚本,即使SSH连接断开,程序也不能停止。这可以通过nohupscreen命令来实现。

使用nohup

nohup python3 /path/to/your_script.py &

或者使用screen

screen
python3 /path/to/your_script.py

按下Ctrl+A,然后按D,可以使你的Python脚本在新的screen会话中运行,同时你可以断开SSH连接。

如何使用screen命令

screen是一个在Linux中常用的全屏窗口管理器,它能让你在一个物理终端上运行多个虚拟终端。当你的会话因为网络连接问题断开时,screen可以让你保持程序运行,当你重新连接时,你可以继续你的工作。

以下是一些基本的screen命令:

  • 开始一个新的screen会话:screen -S sessionname
  • 暂离screen会话:Ctrl+A D
  • 恢复screen会话:screen -r sessionname_or_id
  • 结束screen会话:在screen会话中输入exit,或者按下Ctrl+D
  • screen会话中切换窗口:Ctrl+A N(下一个)或P(上一个)
  • 创建新窗口:Ctrl+A C

设置脚本开机自启动

如果你希望你的Python脚本在VPS开机时自动运行,你可以将你的启动命令添加到/etc/rc.local文件中。

最后修改:2023 年 07 月 09 日
如果觉得我的文章对你有用,请随意赞赏