ps aux
或 top
查看服务器的运行状态。在管理和监控服务器时,掌握一些基本的运行命令是至关重要的,这些命令不仅可以帮助我们了解服务器的状态,还可以进行故障排查和性能优化,本文将介绍一些常用的服务器查看运行命令,并附上相关示例和解释。
查看服务器基本信息
uname -a
该命令用于显示系统信息,包括操作系统类型、内核版本等。
示例:
$ uname -a Linux example.com 5.4.0-66-generic #74~20.04.1-Ubuntu SMP Wed Jan 20 09:23:08 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
hostname
该命令用于显示或设置系统的主机名。
示例:
$ hostname example.com
查看CPU信息
lscpu
该命令用于显示CPU架构信息,包括型号、核心数等。
示例:
$ lscpu Architecture: x86_64 CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 ...
top
该命令用于实时显示系统中各个进程的资源占用情况,包括CPU使用率。
示例:
$ top
输出结果会动态更新,显示类似以下内容:
top 15:23:45 up 10 days, 3:45, 2 users, load average: 0.05, 0.07, 0.06 Tasks: 123 total, 1 running, 122 sleeping, 0 stopped, 0 zombie %Cpu(s): 1.3 us, 1.0 sy, 0.0 ni, 97.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 2048512 total, 327680 free, 512000 used, 1208912 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 1520960 avail Mem
查看内存信息
free -h
该命令用于显示内存的使用情况,并以人类可读的格式显示(如GB)。
示例:
$ free -h total used free shared buff/cache available Mem: 7.7G 1.1G 5.3G 127M 1.3G 6.3G Swap: 2.0G 0B 2.0G
vmstat
该命令用于显示虚拟内存统计信息。
示例:
$ vmstat 1 procs -----------memory------------swap------io----system-------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 536384 131072 619360 0 0 12 56 0 0 0 0 0 0 0 0
每隔一秒更新一次,按Ctrl+C
停止。
查看磁盘信息
df -h
该命令用于显示文件系统的磁盘空间使用情况,并以人类可读的格式显示(如GB)。
示例:
$ df -h Filesystem Size Used Avail Use% Mounted on udev 7.8G 0 7.8G 0% /dev tmpfs 1.6G 9.7M 1.6G 1% /run /dev/sda1 40G 15G 23G 39% / tmpfs 7.8G 28M 7.8G 1% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
du -sh /path/to/directory
该命令用于显示指定目录的磁盘使用情况,并以人类可读的格式显示(如GB)。
示例:
$ du -sh /var/log 4、0K /var/log
查看网络信息
ifconfig
该命令用于显示网络接口的配置信息和状态。
示例:
$ ifconfig eth0 Link encap:Ethernet HWaddr 52:54:00:xx:xx:xx inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::5054:ff:fexx:xx/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:12345 errors:0 dropped:0 overruns:0 frame:0 TX packets:54321 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1234567 (1.2 MB) TX bytes:543210 (543.2 KB)
netstat
该命令用于显示网络连接、路由表、接口统计等信息。
示例:
$ netstat -tuln Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp6 0 0 :::80 :::* LISTEN udp 0 0 0.0.0.0:123 0.0.0.0:* udp6 0 0 :::123 :::
查看进程信息
ps
该命令用于显示当前活动的进程,常用的选项有aux
。
示例:
$ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 143280 1236 ? Ss 10:23 0:01 /sbin/init user 1234 0.0 0.5 123456 67890 ? Sl 10:23 1:23 /usr/bin/python3 script.py
pgrep
该命令用于查找当前运行的进程,并列出与条件匹配的进程ID。
示例:
$ pgrep python3 1234
查看日志信息
dmesg
该命令用于显示内核环缓冲区的消息,通常用于查看系统启动过程中的信息或硬件相关的错误信息。
示例:
$ dmesg | grep error
journalctl
该命令用于查看系统日志,特别是对于使用systemd的系统。
示例:
$ journalctl -xe -Logs begin at Sat 2021-01-02 10:23:45 UTC, end at Mon 2021-01-04 15:23:45 UTC. -- Jan 04 15:23:45 example.com systemd[1]: Starting Example Service... -Subject: Unit example.service has begun start-up Jan 04 15:23:45 example.com systemd[1]: Started Example Service.
常见问题FAQs
Q1:top
命令中的各列分别代表什么?
A:top
命令的输出中各列的含义如下:
%CPU
: CPU使用率。
%MEM
: 内存使用率。
VIRT
: 进程使用的虚拟内存大小。
RES
: 进程使用的常驻内存大小。
SHR
: 进程使用的共享内存大小。
S
: 进程状态(如R=运行,S=睡眠,D=不可中断的睡眠,Z=僵尸进程,T=停止或追踪)。
%CPU
: CPU使用率。
%MEM
: 内存使用率。
TIME+
: 进程启动后的总CPU时间。
COMMAND
: 启动进程的命令名称。
Q2:ps
命令中的各列分别代表什么?
A:ps
命令的输出中各列的含义如下:
USER
: 进程所有者。
PID
: 进程ID。
%CPU
: CPU使用率。
%MEM
: 内存使用率。
VSZ
: 进程使用的虚拟内存大小。
RSS
: 进程使用的常驻内存大小。
TTY
: 终端名称。
STAT
: 进程状态。
START
: 进程启动时间。
TIME
: 进程使用的CPU时间。
COMMAND
: 启动进程的命令名称。
Q3:df
命令中的各列分别代表什么?
A:df
命令的输出中各列的含义如下:
Filesystem
: 文件系统名称。
Size
: 文件系统总大小。
Used
: 已用空间大小。
Avail
: 可用空间大小。
Use%
: 已用空间百分比。
Mounted on
: 挂载点。
Q4:free
命令中的各列分别代表什么?
A:free
命令的输出中各列的含义如下:
total
: 总计内存大小。
used
: 已用内存大小。
free
: 空闲内存大小。
shared
: 共享内存大小。
buff/cache
: 缓存和缓冲区使用的内存大小。
available
: 应用程序可以使用的内存大小。
小伙伴们,上文介绍了“服务器查看运行命令”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。