news 2026/7/6 6:17:23

Python 后端基础(十六):Linux 部署基础,目录、进程、端口、日志和常用命令讲清楚

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python 后端基础(十六):Linux 部署基础,目录、进程、端口、日志和常用命令讲清楚

学后端不能只会在本机点运行。

真实项目最终要部署到服务器,而服务器大多数是 Linux。你不一定一开始就很精通 Linux,但必须会看目录、查进程、看端口、读日志、启动服务。

【一、为什么后端要学 Linux】

因为项目上线后,很多问题都发生在服务器上:

- 服务有没有启动。

- 端口有没有被占用。

- 日志报了什么错。

- 配置文件路径对不对。

- 磁盘满没满。

- 进程是不是挂了。

- Nginx 有没有转发到后端。

如果完全不会 Linux,项目一部署就卡住。

【二、常见目录】

常见目录含义:

/home 普通用户目录

/root root 用户目录

/etc 配置文件

/var/log 日志文件

/opt 第三方应用安装目录

/usr/bin 常用命令

/tmp 临时文件

项目常放在:

/opt/myapp

/home/ubuntu/myapp

日志常放在:

/var/log/myapp

【三、常用文件命令】

pwd # 查看当前目录

ls -lah # 查看文件列表

cd /opt/myapp # 进入目录

mkdir logs # 创建目录

cp a.txt b.txt # 复制文件

mv a.txt b.txt # 移动或重命名

rm file.txt # 删除文件

删除命令要小心,尤其是:

rm -rf

不要在不确定路径时乱用。

【四、查看日志】

日志排查常用:

tail -f app.log

tail -n 100 app.log

less app.log

grep "ERROR" app.log

`tail -f` 会实时追踪日志,非常适合看接口请求和报错。

如果你项目部署后访问失败,第一反应应该是看日志,而不是盲猜。

【五、进程管理】

查看进程:

ps aux | grep python

查看端口:

netstat -tunlp

或者:

ss -tunlp

杀进程:

kill PID

kill -9 PID

`kill -9` 是强杀,不要随便用,优先正常停止服务。

【六、端口是什么】

端口可以理解成服务器上的服务入口。

常见端口:

22 SSH

80 HTTP

443 HTTPS

3306 MySQL

6379 Redis

8000 常见后端开发端口

如果服务启动失败,可能是端口被占用。

查看 8000 端口:

lsof -i:8000

【七、后台运行服务】

开发时可能这样启动:

uvicorn main:app --host 0.0.0.0 --port 8000

但关闭终端后服务会停。

生产环境通常会用:

- systemd

- supervisor

- Docker

- pm2

systemd 服务示例概念:

systemctl start myapp

systemctl stop myapp

systemctl status myapp

【八、环境变量】

线上配置不要写死在代码里。

常见环境变量:

DATABASE_URL

REDIS_URL

JWT_SECRET

OPENAI_API_KEY

ENV

查看:

echo $DATABASE_URL

临时设置:

export ENV=production

【九、常见坑】

- 本地能跑,服务器路径不对。

- 忘记开放安全组或防火墙端口。

- 服务只监听 `127.0.0.1`,外部访问不到。

- 日志没有写文件,出错无法排查。

- `.env` 没配置,启动时报密钥错误。

- 用 root 跑所有服务,权限风险高。

【十、面试常问】

1. 线上服务访问不了,你怎么排查?

先看服务是否启动,再看端口是否监听,再看 Nginx 配置和安全组,最后看应用日志。排查顺序是进程、端口、网络、配置、日志。

2. 怎么查看某个端口被谁占用?

可以用 `lsof -i:端口`、`netstat -tunlp` 或 `ss -tunlp` 查看监听端口和进程信息。

3. 为什么生产环境不能直接用开发服务器?

开发服务器主要用于本地调试,不适合生产环境的并发、稳定性、进程管理和安全要求。生产一般使用 Gunicorn/Uvicorn workers、Nginx、systemd 或 Docker。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 6:12:25

AI 后端上下文存储:会话历史不是简单追加

AI 后端上下文存储:会话历史不是简单追加 一、上下文会变成后端状态 大模型应用看起来是一次请求一次回答,但只要支持多轮对话、文件分析、任务继续执行,上下文就会变成后端状态。很多系统最初把会话历史简单追加到数据库,等数据…

作者头像 李华
网站建设 2026/7/6 6:10:12

推理延迟与吞吐的数学权衡:Pareto 边界上的最优 Batch Size 搜索

推理延迟与吞吐的数学权衡:Pareto 边界上的最优 Batch Size 搜索 一、在延迟和吞吐之间——不存在"又快又多"的可能 推理系统中存在一条无形的性能边界:延迟与吞吐的 Pareto 前沿。你可以在前沿上的任何点运行(慢但吞吐高&#xff…

作者头像 李华
网站建设 2026/7/6 6:03:58

微信小程序API安全实战:从鉴权缺失到注入漏洞的防御指南

1. 项目概述:为什么小程序安全不再是“可选项”做小程序开发这些年,我见过太多团队把“安全”这件事放在项目排期的最后,甚至上线前才匆匆看一眼。大家普遍的心态是:“小程序跑在微信这个大生态里,有微信官方兜底&…

作者头像 李华
网站建设 2026/7/6 6:03:46

智能网盘直链解析:重新定义文件下载体验

智能网盘直链解析:重新定义文件下载体验 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘 / 迅雷云…

作者头像 李华