Linux中初学日常运维工作之查看内存,注释中文解析版

一、Linux初学者常用什么命令进行日常运维

在这里插入图片描述

📁 文件与目录操作

命令	用途	示例
ls -lh	查看当前目录文件列表(带大小和权限)	ls -lh /home/temp01
cd	切换目录	cd /var/log
pwd	显示当前路径	pwd
mkdir -p	创建目录(自动创建父目录)	mkdir -p /home/temp01/booster/logs
cp -r	递归复制文件或目录	cp -r old_dir new_dir
mv	移动或重命名	mv oldname newname
rm -rf	强制删除(慎用)	rm -rf /tmp/test
find	查找文件	find /home -name "*.log"
du -sh	查看目录总大小	du -sh /var/log(简写df -h)

📊 查看系统状态

命令 用途 示例
df -h 查看磁盘空间 df -h
free -h 查看内存和 Swap free -h(今天示例)
top / htop 实时查看进程、CPU、内存 top(按 q 退出)
ps aux 查看所有进程 ps aux | grep java
uptime 查看系统运行时间和负载 uptime
uname -a 查看内核和系统信息 uname -a
cat /etc/os-release 查看操作系统发行版 cat /etc/os-release

📂 日志查看

命令	用途	示例
tail -f	实时滚动查看日志(重要)	tail -f /var/log/messages
tail -n 100	查看最后 100tail -n 100 catalina.out
head -n 20	查看开头 20head -n 20 /etc/passwd
grep	搜索关键词	grep "ERROR" /var/log/messages
journalctl -u	查看 systemd 服务的日志(systemd 系统)	journalctl -u tomcat -n 50

🖥️ 进程与服务管理

命令	用途	示例
ps -ef	查看所有进程详情	ps -ef | grep tomcat
kill	终止进程(-9 强制)	kill -9 PID
pkill	按名称终止进程	pkill -f running.py
nohup ... &	后台运行程序(退出终端不停止)	nohup python run.py &
systemctl start/stop/restart	管理 systemd 服务	systemctl restart tomcat
service start/stop	管理 SysV init 服务(老系统)	service tomcat start
chkconfig	管理 SysV 服务开机自启	chkconfig tomcat on

🌐 网络相关

命令	用途	示例
ping	测试网络连通	ping 8.8.8.8
netstat -tlnp	查看端口监听(老命令)	netstat -tlnp | grep 8080
ss -tlnp	查看端口监听(新命令,更快)	ss -tlnp | grep 8080
curl	测试接口或页面	curl http://localhost:8080
ifconfig / ip addr	查看 IP 地址	ip addr

👤 用户与权限

命令	用途	示例
whoami	查看当前用户	whoami
passwd	修改当前用户密码	passwd
chmod	修改文件权限	chmod +x script.sh
chown	修改文件所有者	chown temp01:temp01 file
sudo	以 root 权限执行命令	sudo systemctl restart tomcat

📦 软件包管理

命令	用途	示例
yum install/remove	CentOS/RHEL 安装/卸载	sudo yum install nginx
apt install/remove	Ubuntu/Debian 安装/卸载	sudo apt install python3
tar -xzf	解压 .tar.gz	tar -xzf package.tar.gz
wget	下载文件	wget https://example.com/file.tar.gz

二 、示例解释

在这里插入图片描述

在这里插入图片描述

输入free -h后显示
total used free shared buff/cache available
Mem: 3.9G 1.9G 1.6G 95M 281M 1.6G
Swap: 3.9G 421M 3.5G

等等这些都是什么意思

我们收到一个free -h命令的输出,需要解释每一列的含义。
输出:
total used free shared buff/cache available
Mem: 3.9G 1.9G 1.6G 95M 281M 1.6G
Swap: 3.9G 421M 3.5G
需要解释各列的含义,以及整体内存使用情况。

我们逐一解释:

total: 总内存大小。

used: 已使用的内存(包括被进程使用、缓存等,但计算方式可能因系统而异)。

free: 完全未被使用的内存。

shared: 被多个进程共享的内存(如tmpfs等)。

buff/cache: 内核用于缓冲和缓存的内存,这部分可以在需要时被快速回收。

available: 估计可用于启动新应用程序而不需要交换的内存量(更接近实际可用内存)。

对于Swap:总交换分区大小、已用、空闲。

还可以指出,可用内存不是“free”,而是available,因为buff/cache可以释放。另外,swap使用了421M,说明物理内存曾不足。

free -h 的输出展示了系统内存(RAM)和交换分区(Swap)的使用情况。

2.1、Mem(物理内存)

列名 值 含义
total 3.9G 物理内存总大小(约4GB) used 1.9G 已被占用的内存(包括进程、缓存等,但不包含
buff/cache 这部分,这个值是 已用 - buff/cache 后的数值)
free 1.6G 完全空闲、未被任何程序或缓存使用的内存 shared 95M 被 tmpfs
等临时文件系统共享的内存(多个进程共享的内存段)
buff/cache 281M 内核用于缓冲区(buff) 和 页缓存(cache)
的内存。这部分可以在需要时被快速回收给应用程序使用 available 1.6G 真正可用的内存(包括 free 和 buff/cache 中可以立即释放的部分),这是启动新程序时实际可以使用的内存量

注:这些能反馈什么信息于运维人员呢,或者说初学者应该看出这里有哪些隐藏信息。

  • 虽然 used 显示 1.9G,但 available 是 1.6G,说明系统仍有较多可用内存,buff/cache 只有281M,不大,所以 available 约等于 free。

  • 内存使用正常,没有内存压力。

2.2、Swap(交换分区)

列名 值 含义
total 3.9G 交换分区总大小(与内存大小相同,约4GB)
used 421M 已使用的交换空间,说明物理内存曾被用满过,部分数据被交换到磁盘
free 3.5G 交换分区中未使用的部分

注:如何推断该服务器的内存趋势

  • 使用了 421M 的交换,说明物理内存曾在某个时刻(可能过去)不够用,现在虽然物理内存有较多空闲,但交换中的 421M 数据不会自动换回内存(除非再次访问),所以 used 仍保留着。

  • 如果 available 一直充足,这个数字不会继续增长,也不会影响当前性能。
    在这里插入图片描述

三、整体结论

  • 系统物理内存 3.9GB,当前可用(available)1.6GB,内存资源充足。
  • 交换分区使用了 421MB,这通常是因为之前内存紧张时发生的,现在物理内存已经充裕,但交换中的数据尚未换回(Linux倾向于不主动换回),不影响当前性能。

假如你还想节省资源,需要立即回收交换空间,执行 swapoff -a && swapon -a(但是务必谨慎,会消耗CPU和I/O)。如果应用程序运行缓慢,需检查 CPU 或磁盘 I/O,而不是内存这些
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蛋仔编程

老板给个铜板啊!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值