ZYH 开发教程
学习中心/服务器与部署
服务器与部署

Linux 服务器学习指南

命令行、文件、权限、进程、服务、日志、网络、SSH 与排错。

1. 命令行与文件系统#

必须掌握:当前位置、绝对/相对路径、列出/创建/复制/移动文件、查看文本、搜索、管道与重定向的概念。

常用工具:pwd、ls、cd、mkdir、cp、mv、less、head、tail、find、rg/grep、man。不要背所有参数;掌握常用操作和查帮助的方法。

安全原则#

  • 看懂命令目标后再运行,尤其是带管理员权限或递归删除的命令;
  • 不用 root 账号运行网站应用;
  • 修改配置前做带日期的备份;
  • 不把数据库和应用内部端口全部暴露到公网;
  • 私钥只能自己保管,不粘贴到聊天、截图或代码仓库。

2. 用户、权限与软件#

用户/组、文件的读写执行权限、所有者、sudo、最小权限。 软件仓库、安装/更新/卸载、定期安全更新。 重点理解:sudo 是临时提升权限,不是“报错就加 sudo”。权限错误应先确认文件所有者和程序所需权限。

3. 进程、服务与日志#

进程、PID、前台/后台、端口监听;知道如何查看、停止和重启服务。 systemd 服务的启动、状态、开机自启;用日志查失败原因。 CPU、内存、磁盘空间的基本观察。

必须能排查:程序未启动、启动后立即退出、端口被占用、权限不足、磁盘满、环境变量缺失。

4. 网络与 SSH#

IP、子网的基本直觉;端口;TCP;DNS;HTTP/HTTPS。 用 SSH 密钥登录;了解主机指纹;文件传输。 防火墙只开放所需端口:通常 SSH、HTTP、HTTPS。 SSH 安全:普通用户、密钥认证、限制 root 登录、及时更新。

从浏览器到应用的路径#

text
域名 → DNS 得到公网 IP → 防火墙允许 443 → Nginx 完成 TLS
→ 反向代理到 127.0.0.1:3000 → Express 路由 → SQL → PostgreSQL
→ JSON 响应沿原路返回

5. 服务器故障排查顺序#

  1. 域名是否解析到正确 IP;
  2. 云平台安全组和主机防火墙是否放行;
  3. Nginx 是否运行、配置测试是否通过;
  4. 后端是否运行并监听预期地址/端口;
  5. Nginx 能否在服务器本机访问后端;
  6. 后端能否连接数据库;
  7. 查看 Nginx、应用、数据库日志中的同一时间点;
  8. 检查磁盘、内存、证书有效期和环境变量。

不要一上来重装系统。每次只改变一个变量,改变后立即验证。

必做实验#

  • 创建普通部署用户,并解释它拥有哪些权限。
  • 使用 SSH 密钥登录练习服务器。
  • 启动一个监听 3000 端口的 Node.js 服务。
  • 找到该进程、查看日志、停止并重新启动。
  • 配置防火墙,只保留需要的入口。
  • 写一个 systemd 服务,令应用重启后自动运行。
  • 模拟端口冲突、配置错误、磁盘空间不足,记录诊断过程。

阶段验收#

给自己一台新 Ubuntu 环境,在不跟视频逐字操作的情况下:建立用户 → 更新系统 → 配置 SSH → 运行 Web 服务 → 配置防火墙 → 查看日志。每一步都能解释目的和潜在风险。

可搜索标题、说明和正文Esc 关闭
从一个简单词开始试试“HTML”“数据库”“登录”或“部署”
在线练习修改代码并查看结果
运行结果