VPS(Virtual Private Server,虚拟专用服务器)是云计算时代常见的服务器形式,用户通过命令行对VPS进行管理和操作是基础技能,掌握常用命令不仅能提升效率,还能解决日常运维问题,以下从系统管理、文件操作、网络配置、进程管理、软件安装等维度,详细梳理VPS常用命令及使用场景。

系统管理命令
系统管理是VPS运维的核心,涉及用户、权限、系统信息等基础操作。
用户与权限管理
sudo [命令]:以超级用户权限执行命令,例如sudo apt update(更新软件包列表),首次使用需输入当前用户密码。su - [用户名]:切换用户,su - root切换至超级用户(需root密码),su - username切换至其他用户。useradd -m [用户名]:创建新用户并自动创建家目录(-m参数),例如useradd -m devuser。passwd [用户名]:修改用户密码,passwd devuser修改指定用户密码,仅passwd时修改当前用户密码。userdel -r [用户名]:删除用户及其家目录(-r参数),例如userdel -r devuser。visudo:编辑sudoers文件,精细管理用户权限(需谨慎操作,避免误删导致权限失效)。
系统信息查看
uname -a:查看系统内核及版本信息,例如Linux 5.4.0-91-generic x86_64 x86_64 x86_64 GNU/Linux。lscpu:显示CPU架构、核心数、线程等信息,例如CPU(s): 8(8核逻辑CPU)。free -h:查看内存使用情况(-h以人类可读格式显示,如2GiB)。df -h:查看磁盘空间使用情况,例如/dev/vda1 25G 5G 20G 20% /(根分区使用20%)。uptime:显示系统运行时间及负载,例如15:30:45 up 10 days, 3:15, 1 user, load average: 0.10, 0.20, 0.15。
文件与目录操作命令
文件管理是VPS日常使用的高频操作,涉及创建、复制、删除、编辑等。
基础操作
ls -la:列出目录下所有文件及详细信息(-a显示隐藏文件,-l显示权限、大小、时间等)。cd [目录路径]:切换目录,例如cd /var/www进入网站根目录,cd ..返回上级目录,cd ~返回家目录。pwd:显示当前所在工作目录的完整路径。mkdir [目录名]:创建目录,mkdir -p parent/child可递归创建多级目录(-p避免父目录不存在时报错)。touch [文件名]:创建空文件或更新文件时间戳。cp [源文件] [目标路径]:复制文件,cp -r [源目录] [目标路径]递归复制目录(-r必须)。mv [源文件] [目标路径]:移动文件或重命名,例如mv old.txt new.txt重命名,mv file.txt /tmp/移动文件。rm [文件名]:删除文件,rm -r [目录名]递归删除目录,rm -f [文件名]强制删除(不提示),谨慎使用rm -rf,数据不可恢复。
文件编辑与搜索
nano [文件名]:简单文本编辑器,适合新手,保存按Ctrl+O,退出按Ctrl+X。vim [文件名]:高级文本编辑器,进入后按i进入编辑模式,编辑完成后按Esc,输入wq保存退出,q!强制退出不保存。grep [关键词] [文件名]:在文件中搜索关键词,grep -i "error" log.txt忽略大小写搜索,grep -r "nginx" /var/log/递归搜索目录下所有文件。find [目录] -name [文件名]:按文件名搜索,例如find /home -name "*.log"搜索家目录下所有.log文件。
网络配置与诊断命令
网络问题排查是VPS运维的常见场景,需掌握基础网络命令。
网络状态查看
ip a:查看本机IP地址及网卡信息,例如inet 192.168.1.100/24表示内网IP,inet 203.0.113.1/32表示公网IP。netstat -tuln:查看监听端口及协议(-tTCP,-uUDP,-l仅显示监听端口,-n以数字形式显示地址和端口)。ss -tuln:netstat的替代工具,速度更快,默认显示TCP端口,ss -tuln显示所有监听端口。
网络连通性与测试
ping [域名或IP]:测试网络连通性,例如ping baidu.com,按Ctrl+C停止。traceroute [域名或IP]:跟踪数据包路径,排查网络延迟或中断点,例如traceroute 8.8.8.8。wget [URL]:下载文件,例如wget https://nginx.org/download/nginx-1.20.0.tar.gz,-c参数支持断点续传。curl [URL]:发送HTTP请求或获取网页内容,例如curl -I https://www.example.com仅获取响应头,curl -O [URL]下载文件。ssh [用户名]@[IP]:远程登录VPS,例如ssh root@203.0.113.1,首次登录需输入yes确认主机密钥,再输入密码。
进程管理与服务控制
VPS上运行的服务(如Nginx、MySQL)需通过进程管理命令控制。

进程查看与终止
ps aux:查看当前进程详细信息(a显示所有进程,u显示用户,x显示无终端进程),例如ps aux | grep nginx过滤出Nginx相关进程。top:动态查看进程资源占用(CPU、内存),按q退出,Shift+M按内存排序,Shift+P按CPU排序。kill [进程ID]:正常终止进程,例如kill 1234(进程ID通过ps或top获取)。kill -9 [进程ID]:强制终止进程(不推荐,可能导致数据丢失),仅在进程无响应时使用。
服务管理(Systemd系统)
systemctl start [服务名]:启动服务,例如systemctl start nginx。systemctl stop [服务名]:停止服务。systemctl restart [服务名]:重启服务。systemctl enable [服务名]:设置服务开机自启,例如systemctl enable nginx。systemctl status [服务名]:查看服务状态,例如systemctl status nginx显示是否运行及最近日志。journalctl -u [服务名]:查看服务日志,例如journalctl -u nginx查看Nginx服务日志,-f参数实时跟踪日志。
软件包管理命令
不同Linux发行版使用不同的软件包管理工具,以下以Debian/Ubuntu(apt)和CentOS/RHEL(yum/dnf)为例。
Debian/Ubuntu(apt)
apt update:更新软件包列表(需定期执行,获取最新可用版本)。apt upgrade:升级已安装的软件包(安全补丁和版本更新)。apt install [包名]:安装软件包,例如apt install nginx安装Nginx。apt remove [包名]:卸载软件包(保留配置文件),apt purge [包名]完全卸载(删除配置文件)。apt autoremove:自动清理不再依赖的软件包(释放空间)。
CentOS/RHEL(yum/dnf)
yum check-update:检查可更新的软件包。yum update:升级所有软件包。yum install [包名]:安装软件包,例如yum install httpd安装Apache。yum remove [包名]:卸载软件包。dnf [命令]:CentOS 8+推荐使用dnf(yum的下一代),命令与yum一致,例如dnf install nginx。
压缩与备份命令
数据备份是VPS运维的重要环节,常用压缩工具包括tar、zip。
tar -czvf [压缩包名.tar.gz] [目录/文件]:创建.tar.gz压缩包,例如tar -czvf backup.tar.gz /var/www备份网站目录。tar -xzvf [压缩包名.tar.gz]:解压.tar.gz文件,例如tar -xzvf backup.tar.gz -C /tmp解压至/tmp目录。zip -r [压缩包名.zip] [目录/文件]:创建.zip压缩包(跨平台兼容),例如zip -r website.zip /var/www/html。unzip [压缩包名.zip]:解压.zip文件,例如unzip website.zip -d /backup解压至/backup目录。
相关问答FAQs
Q1:VPS连接不上SSH怎么办?
A1:首先检查VPS安全组/防火墙是否开放22端口(sudo ufw status查看防火墙规则,ufw allow 22开放端口);其次确认SSH服务是否运行(systemctl status ssh,未运行则systemctl start ssh);再检查IP是否被禁止登录(cat /var/log/auth.log | "Failed password"查看登录失败日志,若IP被禁止,修改/etc/hosts.deny或/etc/ssh/sshd_config的AllowUsers配置);最后确认网络连通性(ping [VPS_IP]测试是否可达)。
Q2:如何查看VPS的公网IP地址?
A2:可通过以下命令查看:

curl ifconfig.me或curl ipinfo.io/ip(直接返回公网IP);ip a查看网卡信息,找到inet后非内网网段(如x.x.x、168.x.x)的IP即为公网IP;- 登录VPS控制台(如阿里云、腾讯云后台),在“实例详情”中查看分配的公网IP。
