如何在个人服务器上运行python文件,首先我们需要准备的一些东西:

  • 有自己的云服务器,可以在腾讯云或者阿里云等商户租借服务器
  • 能够使用xshell等ssh连接工具软件连接到自己的服务器
  • 下载Linux版本的Anaconda用来运行python文件的安装环境

详细步骤

一,在服务器安装Anaconda

第二,找到我们要下载的安装包,注意是Linux版本,可以根据自己需求安装所需版本

下载可能有点慢,建议使用迅雷下载。

上传文件到服务器

下载完安装包后打开Xshell,连接自己的服务器。

可以跳转到指定文件夹下安装(cd /test),也可以新建文件夹用来安装(mkdir test)

跳转到安装文件夹下后输入命令rz,找到安装包上传文件。

上传成功后输入命令ls,可以看到当前文件是白色的,没有执行权限,输入命令修改权限

1

chmod u+x Anaconda3-2022.05-Linux-x86_64.sh

输入ls查看,安装包显示绿色就ok。

安装环境

上传完成后就可以执行安装命令

1

sh Anaconda3-2022.05-Linux-x86_64.sh

输入python进行测试是否安装完成。出现如下即为成功安装。

然后退出python,输入exit();

接下来我们需进行以下环境配置

1

vim ~/.bashrc

输入O;

在配置文件空白处添加如下配置,按“i”进入编辑模式:

1

2

3

4

#为了避免与其他服务器用户产生命令冲突,使用自己的英文名+Python替代python

alias namePython='/root/anaconda3/bin/python'  

#这里写anaconda的安装路径

export PATH="/root/anaconda3/bin:$PATH"

完成后按“Esc”,退出编辑模式;紧接着按“:”,输入“wq!”保存退出。

激活文件

1

source ~/.bashrc

再次验证

1

conda

conda命令可以使用,这样我们就安装完成了。

二,创建虚拟环境

创建环境

1

conda create -n py39 python=3.9.12

创建完成后查看当前存在哪些虚拟环境

1

conda env list

激活虚拟环境,这里是你自己的环境名字

1

source activate your_env_name

查看安装了哪些包。自带的包较少,有些程序需要的包需要自己额外导入。

1

conda list

1

conda install package_name(包名)

一些其他命令:

1

2

3

4

5

6

7

conda update conda:               检查更新当前conda

conda search XXX                   搜索包,查看可安装版本

conda remove -n py36 --all         删除环境

conda deactivate                   退出虚拟环境,conda4之前版本:source deactivate

  

pip install --upgrade <包的名字>     更新包

pip install python_igraph          (import igraph包)

三,测试执行python文件

执行python文件
  • 我们在当前环境下输入rz命令上传.py文件。
  • 上传成功后输入执行python文件命令:

1

nohup python3 -u main.py >> my.log 2>&1 &

查看进程状态
  • 在使用nohup启动python时,会生成一个进程ID
  • 可以使用 jobs -l 来查看当前终端的全部进程(该命令只适用于该终端窗口,若再开一个窗口需适用ps命令查看全局进程,如下命令)

Running说明程序正在成功运行。

  •  还可以对改python程序进行暂停、恢复、杀死等操作

    1

    2

    3

    4

    5

    6

    jobs -l              (当前终端查看全部进程)

    ps -aux|grep 进程号  (全局各个新终端查看指定进程)

    ps -ef              (全局全部进程)

    kill -STOP  进程号 (命令可以直接暂停一个后台任务)

    kill -CONT 进程号  (命令可以直接恢复一个后台任务)

    kill -9 进程号         (杀死进程)

附:解决在服务器上运行python程序报错no module

在服务器上运行Python程序,遇到"no module"的错误说明Python解释器无法找到需要导入的模块。

以下是一些可能的解决方法:

  • 确认所需的模块是否已经安装:在命令行中使用pip list命令,查看已安装的Python模块。如果缺少所需的模块,使用pip install命令安装它们。

  • 检查Python解释器的版本:某些模块可能依赖于特定版本的Python解释器。确保已经安装了正确版本的Python解释器,并使用python --version命令确认当前使用的Python版本。

  • 检查Python路径设置:在服务器上,可能存在多个Python解释器或多个Python路径。确保程序中使用的Python解释器与服务器上的Python路径相匹配。

  • 检查sys.path:Python解释器使用sys.path变量来查找模块。在程序中,可以使用import sys; print(sys.path)语句输出当前的sys.path值。确保所需的模块的路径包含在sys.path中。

  • 添加模块路径:如果模块不在默认的sys.path中,可以使用sys.path.append()命令将所需的模块路径添加到sys.path中,以使Python解释器能够找到它。

  • 检查模块命名冲突:某些模块的名称可能与Python标准库或其他已安装的模块名称冲突。请确保您的程序中没有使用与其他模块相同的名称。

  • 重新部署程序:如果以上方法都没有解决问题,尝试重新部署程序。确保所有依赖的模块都正确安装,并且程序文件正确地放置在服务器上。


 

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐