菜鸟科技网

VPS常用命令有哪些?

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

VPS常用命令有哪些?-图1
(图片来源网络,侵删)

系统管理命令

系统管理是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 -tulnnetstat的替代工具,速度更快,默认显示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)需通过进程管理命令控制。

VPS常用命令有哪些?-图2
(图片来源网络,侵删)

进程查看与终止

  • ps aux:查看当前进程详细信息(a显示所有进程,u显示用户,x显示无终端进程),例如ps aux | grep nginx过滤出Nginx相关进程。
  • top:动态查看进程资源占用(CPU、内存),按q退出,Shift+M按内存排序,Shift+P按CPU排序。
  • kill [进程ID]:正常终止进程,例如kill 1234(进程ID通过pstop获取)。
  • 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+推荐使用dnfyum的下一代),命令与yum一致,例如dnf install nginx

压缩与备份命令

数据备份是VPS运维的重要环节,常用压缩工具包括tarzip

  • 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_configAllowUsers配置);最后确认网络连通性(ping [VPS_IP]测试是否可达)。

Q2:如何查看VPS的公网IP地址?
A2:可通过以下命令查看:

VPS常用命令有哪些?-图3
(图片来源网络,侵删)
  1. curl ifconfig.mecurl ipinfo.io/ip(直接返回公网IP);
  2. ip a查看网卡信息,找到inet后非内网网段(如x.x.x168.x.x)的IP即为公网IP;
  3. 登录VPS控制台(如阿里云、腾讯云后台),在“实例详情”中查看分配的公网IP。
分享:
扫描分享到社交APP
上一篇
下一篇