无论你用的是云服务器还是物理主机,日常运维 90% 的操作都集中在 SSH 登录、文件管理、系统状态查看、服务管理和权限设置这五类 Linux 命令上。
掌握这些指令不需要背诵成百上千条,把高频命令用熟,足够应对个人博客、私人网盘、自动化脚本、游戏服务器等绝大多数使用场景,下面我按实际使用频率和场景,把个人服务器最常用的指令拆开讲清楚。
个人服务器指令有哪些?新手先掌握这组基础命令
从 SSH 登录开始:你和服务器的“见面方式”
个人服务器几乎都是远程操作,第一步就是登录,最常见的登录指令是:
ssh root@你的服务器IP
如果改了默认端口(2222),加上 -p 参数:
ssh -p 2222 root@你的服务器IP
登录后,你面对的是一个命令行界面,这时候最该记住的不是复杂参数,而是几个“保命”指令:
pwd查看当前所在目录whoami确认当前登录用户df -h看磁盘还剩多少空间free -h看内存占用情况uptime看系统运行了多久,负载高不高
我刚接触服务器时,每次登录第一件事就是敲 df -h 和 free -h。 这俩指令能让你在磁盘写满、内存耗尽之前发现问题,比什么都管用。
文件和目录操作:服务器上的“资源管理器”
个人服务器上免不了要上传网站文件、备份数据、清理日志,这些指令和 Windows 里的“复制粘贴”一样基础:
ls -lh列出当前目录文件,带大小和权限cd /var/www进入指定目录mkdir -p 域名/日志一次性创建多层目录cp -r 旧目录 新目录复制整个文件夹mv 文件1 文件2重命名或移动文件rm -rf 目录删除目录(慎用,没有回收站)
遇到压缩包解压,记住这两个:
tar -zxvf 文件.tar.gz # 解压 .tar.gz 格式 unzip 文件.zip # 解压 .zip 格式
压缩则反过来:
tar -zcvf 备份名.tar.gz /要备份的目录
权限和用户:多人共用服务器时最容易出乱子的地方
个人服务器虽然多数时候只有你自己用,但如果你开了网站给朋友用,或者找别人帮忙维护,权限问题就躲不开了。
chmod 755 文件名设置文件权限(755 表示所有者可读写执行,其他人只读执行)chown -R 用户名:用户组 目录修改目录归属useradd -m 新用户名新建用户并创建家目录passwd 用户名给用户设置密码visudo编辑 sudo 权限文件,让普通用户能用管理员权限
个人服务器安全设置里,第一步永远是禁用 root 直接登录,改用普通用户 + sudo。 这句话说出来容易,做起来也就几个指令的事,但能帮你挡掉网上绝大多数无差别扫描攻击。
个人服务器用什么系统?指令差异与选择建议
很多人第一次买服务器,会纠结选 Ubuntu、CentOS 还是 Debian。行业共识认为,个人服务器首选 Ubuntu LTS 版本或 Debian,因为资料多、指令通用、包管理器简单。
这三者在日常指令上的差异比想象中小得多,看下面这张表就明白:
| 操作场景 | Ubuntu / Debian | CentOS / Rocky Linux |
|---|---|---|
| 安装软件 | apt install 软件名 |
yum install 软件名 |
| 更新系统 | apt update && apt upgrade |
yum update |
| 启动服务 | systemctl start 服务名 |
systemctl start 服务名 |
| 查看日志 | journalctl -u 服务名 |
journalctl -u 服务名 |
看到没,除了软件包管理器不一样,服务管理、日志查看这些核心操作完全相通,所以不需要在系统选择上花太多时间,你真正要花精力的是把 systemctl 和 journalctl 用熟。
服务管理:让网站和程序在后台稳定跑
个人服务器上跑得最多的也就是 Nginx、MySQL、Docker 这类服务,相关指令集中记这一组:
systemctl start nginx # 启动 systemctl stop nginx # 停止 systemctl restart nginx # 重启 systemctl enable nginx # 设置开机自启 systemctl status nginx # 查看运行状态
日志排错看这个:
journalctl -u nginx --since "1小时前" # 查看最近一小时的日志 tail -f /var/log/nginx/error.log # 实时滚动查看错误日志
个人服务器安全设置:防入侵、防挖矿的必备指令
个人服务器被黑的事例每年都有,大多数不是被人盯上,而是被自动化脚本扫到的。多数情况下,做好下面几件事就能挡住绝大部分恶意扫描。
修改 SSH 默认端口和禁用密码登录
vim /etc/ssh/sshd_config
找到 Port 22 改成如 Port 2288,把 PasswordAuthentication yes 改成 no,然后执行 systemctl restart sshd,重启服务后你用密码登录会被拒绝,只能靠密钥登录。
用防火墙做基础过滤
以 UFW 为例(Ubuntu 自带),指令很直白:
ufw allow 80/tcp # 开放网站端口 ufw allow 443/tcp # 开放 HTTPS 端口 ufw allow 2288/tcp # 放行你改过的 SSH 端口 ufw enable # 启用防火墙
核心原则是只放行你明确要用的端口,其他一律禁止。
看谁在连你的服务器
last -n 20 # 20 个登录记录 grep "Failed password" /var/log/auth.log | wc -l # 统计失败登录次数
如果发现有大量陌生 IP 在暴力破解,直接封掉:
ufw deny from 某个IP地址
个人服务器运维教程:从故障排查到自动化操作
网站打不开了,按什么顺序查?
个人服务器最让人头疼的就是“昨晚好好的,今天打不开了”,按照这个顺序排查,大概率能自己解决:
- 先看进程:
ps aux | grep nginx,确认服务还在不在 - 再看端口:
ss -tlnp | grep 80,确认端口有没有被监听 - 最后看日志:
tail -f /var/log/nginx/error.log,根据报错找答案
这三个指令连环用,能解决个人服务器上八成以上的“没响应”问题。 还有个隐蔽的坑是磁盘满了,所以排查时顺手看一眼 df -h。
定时任务:让服务器替你干活
想每天自动备份数据库、定期清理日志?用 crontab:
crontab -e # 编辑当前用户定时任务
写入如下格式:
0 3 /root/backup.sh # 每天凌晨 3 点执行备份脚本
格式解释:分钟 小时 日 月 周 + 要执行的命令。
网络排查:连不上了怎么办
ping 域名测本机到目标地址通不通curl -I 网址看 HTTP 响应头,判断网站是否正常traceroute 域名看数据包走了哪条路
个人服务器哪个便宜?指令上有没有区别
经常有人问个人服务器哪个便宜,这类问题的核心其实是:便宜机器的性能瓶颈在哪里,以及对应指令是什么。 便宜的入门配置通常集中在 1 核 2G 或 2 核 2G,这类机器上跑 Linux 系统做轻量用途完全够用,指令层面上,便宜和贵的机器没有任何区别,差别只在性能表现上,如果你在低价机器上部署了几个服务,最需要熟练的是下面几个查看资源占用的命令:
top # 实时看 CPU 和内存占用 ps aux --sort=-%cpu | head -10 # 找出 CPU 占用最多的前十个进程 free -m # 以 MB 为单位看内存使用量
如果跑的是个人网站,再掌握一个 Nginx 缓存配置,能帮你省下不少内存。低配机器不是不能买,关键在于你会不会用指令去定位资源瓶颈。
Q&A:关于个人服务器指令的常见疑问
个人服务器指令难记怎么办?
不需要硬背,把最常用的 10 条写在本地备忘录里,用两周就会形成肌肉记忆,真忘了也没关系,Linux 自带指令说明,man 指令名 就能查看详细帮助手册,国内服务器用户常用的一个做法是安装 cheat 工具,查指令用例比翻文档快得多。
个人服务器用的系统和家用电脑一样吗?
完全不一样,个人家用电脑通常是 Windows 或 macOS,而个人服务器绝大多数跑的是 Linux 发行版,Ubuntu、Debian、CentOS,简米云、酷番云这些国内平台提供的公共镜像里,Linux 系统占比远超 Windows Server,两者的操作逻辑差别很大,Linux 靠命令行,Windows Server 靠图形界面加远程桌面,如果你买的是云服务器,选镜像时优先选 Ubuntu 或 Debian,资料最全,遇到问题最好搜到答案。
云服务器和物理服务器在指令上有差异吗?
没有任何差异,无论你用的是酷番云、简米云的云服务器,还是自己组装的物理机,只要系统都是 Linux,操作指令就完全通用,区别只在于云服务器可以通过控制台进行重启、重置系统等操作,物理服务器则需要亲自到机器前处理,对于个人用户来说,云服务器、物理服务器在指令层面没有门槛差异,选哪个取决于你是想省事还是想省钱,以及个人服务器哪个便宜对你更敏感。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/782020.html


