Linux 基础与运维(兜底方向)

用大白话说:这一页帮你搞懂——怎么把你的视频检测系统稳稳地跑在服务器上,出了毛病自己能查、能救。

目标:服务器几乎都跑 Linux(说人话:一种常用的服务器操作系统,像 Windows,但更适合作服务器)。你部署 TensorRT / ffmpeg / agent 服务,最终都落在 Linux 上。这一章让你不止会写代码,还能把东西稳稳跑起来、出问题能查——这是运维/管理岗的兜底能力,也方便你日常使用。

学习原则:别背命令表,按「场景」学——「我要看 GPU 占用」「我要让服务开机自启」「端口被占了我怎么查」。每个场景记 2–3 条命令就够用。就像记菜谱:你不用背整本字典,只要记住「今晚做番茄炒蛋需要哪几步」。

一、必会基础命令(日常 80% 用这些)

这部分就像你的「常用工具箱」。下面每张表左边是你想干的事,右边是对应的命令,照着抄就行。

你想干啥命令说明
看当前在哪pwd打印工作目录(说人话:告诉我现在站在哪个文件夹里)
列文件ls -lh-l 详情,-h 人类可读大小
进目录cd /path / cd ..进/退回上级
看文件内容cat a.txt / less a.txtless 可翻页(q 退出)
看头尾head -n 20 / tail -n 20看前/后 N 行
实时跟日志tail -f app.log持续刷新,查线上问题神器
搜内容grep "error" app.log配合 -i 忽略大小写、-n 行号(说人话:在一大堆文字里找带「error」的那几行)
找文件find /path -name "*.py"按名搜
复制/移动/删cp / mv / rm⚠️ rm -rf / 灾难,慎用
建目录/文件mkdir dir / touch a.txt

二、权限与用户(运维基本功)

权限就像家里门锁:谁(主人/家人/外人)能对某个东西做啥(看/改/用)。Linux 把文件权限分成三类人。

三、进程与资源(查卡顿/查占用)

进程就是「正在跑的程序」。电脑卡了,多半是某个进程吃光了 CPU 或内存。下面几条帮你抓出「罪魁祸首」。

四、网络(查端口/连通)

端口(说人话:程序对外开门的「门牌号」)。两个程序抢同一个门牌,就会「端口被占」。下面帮你查谁占了门。

五、让服务跑起来(部署核心)

部署(说人话:把你写好的程序放到服务器上,让它一直干活、别人能访问)。下面几种方式,从简单到正式。

六、远程与同步

远程(说人话:你坐家里,敲键盘却能操作机房里的那台服务器)。同步就是「让两台机器的文件保持一致」。

七、定时任务与容器(进阶)

定时任务就是「让电脑每天自动帮你干一件事」,像定闹钟。容器(说人话:把程序和它要的环境打包成一个「随身行李箱」,到哪台机器都能原样跑,不挑环境)。

八、和你项目的结合(直接能用)

上面那些命令,落到你的视频检测系统上,就是下面这些活。照表对号入座就行。

你要做的事命令
看 GPU 是否够跑模型nvidia-smi
查推流端口被谁占ss -ltnp | grep 1935
让视觉服务开机自启写 systemd service + systemctl enable
实时看 agent 日志tail -f /var/log/myagent.log
更新代码不中断rsync 同步 + systemctl restart
安全第一:生产机慎用 rm -rf、慎用 sudo;改配置前先备份;端口别裸奔公网。运维的底线是「别把服务搞挂、别把数据删了」。

九、🔧 练习(部署兜底能力)

  1. 在一台 Linux(或 WSL / 虚拟机)上,用 nohup 起一个 Python 服务并 curl 通。
  2. 把它改成 systemd 服务,实现重启/开机自启。
  3. tail -f + grep 模拟查一次线上报错。