磁盘空间清理

目录

0. 将/home目录压缩成/root/home.zip文件

1.查看当前文件目录各个文件夹大小

2. 查看当前目录下所有目录及子目录大小

3.快速清空 truncate 命令,清空该文件 ,既不需要重启,又不需要切换配置文件

4.删除子目录下 所有.o后缀文件

3.磁盘空间清理

 查看磁盘空间 

 查出系统中消耗内存最多的程序

查看垃圾文件的方法

清空 /var/log/journal 文件的方法

Linux下如何查看哪个进程占用CPU或内存最多?

一、Linux下如何查看哪个进程占用CPU资源最多?

二、Linux下如何查看哪个进程占用内存资源最多?


0. 将/home目录压缩成/root/home.zip文件

        -r 将指定目录下的所有子目录及文件一起处理

[root@rhel~]#zip -r /root/home.zip /root/home

1.查看当前文件目录各个文件夹大小

du -h --max-depth=1

查看指定目录

du -h --max-depth=1 /path

查看文件夹下的文件个数(当前目录的文件数)//包含子目录

find ./company -type f | wc -l 

2. 查看当前目录下所有目录及子目录大小

du -h - .

“.”代表当前目录下。也可以换成一个明确的路径

-h表示用K、M、G的人性化形式显示

3.快速清空 truncate 命令,清空该文件 ,既不需要重启,又不需要切换配置文件

truncate -s 0 access.log

备注: truncate命令可以将一个文件缩小或者扩展到某个给定的大小,可以利用该命令和-s选项来特别指定文件的大小

如删除access.log 文件 可能存在重启服务

4.删除子目录下 所有.o后缀文件

原理:通过管道命令来操作,先find出主目录 下想删除的文件,然后通过“xargs”这个构造参数列表并运行命令。

实例1:删除当前目录 包括当前目录的子目录下 所有 后缀是 o 的文件

  1. find . -name "*.o" | xargs rm -f

实例2: 删除 /root 下 所有 bak 后缀文件 包括子目录中的

  1. find /root -name *.bak | xargs rm -f

3.磁盘空间清理

Linux 系统也会在使用很长一段时间后出现硬盘空间开始不够的情况,而这并不一定是正常使用的文件占用,而是像 Windows 系统一样,在系统的运行和使用中会出现垃圾日志,就像 CentOS 系统中有两个日志服务,分别是传统的 rsyslog 和 systemd-journal 就会自动生成一些系统日志,久而久之就造成了服务器存储空间的浪费。

systemd-journald 是一个改进型日志管理服务,可以收集来自内核、系统早期启动阶段的日志、系统守护进程在启动和运行中的标准输出和错误信息,还有 syslog 的日志。

systemd-journal 日志服务仅仅把日志集中保存在单一结构的日志文件/run/log 中,由于日志是经历过压缩和格式化的二进制数据,所以在查看和定位的时候很迅速。

默认情况下并不会持久化保存日志,只会保留一个月的日志。一些 rsyslog 无法收集的日志也会被 journal 记录到。

rsyslog 作为传统的系统日志服务,把所有收集到的日志都记录到/var/log/目录下的各个日志文件中。

 查看磁盘空间 

[root@centos8-guorui-4-8 oa]# df -h

文件系统        容量  已用  可用 已用% 挂载点
devtmpfs        3.8G     0  3.8G    0% /dev
tmpfs           3.9G     0  3.9G    0% /dev/shm
tmpfs           3.9G  540K  3.9G    1% /run
tmpfs           3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/vda1        40G   15G   26G   36% /                ## 查看磁盘空间
tmpfs           781M     0  781M    0% /run/user/0

 查出系统中消耗内存最多的程序

cat <(ps aux | head -1) <(ps aux | grep -v PID | sort -rn -k +4 |head)

[root@centos8-guorui-4-8 oa]# cat <(ps aux | head -1) <(ps aux | grep -v PID | sort -rn -k +4 |head)
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       6997  183 16.3 1591180 1335932 pts/2 Sl+  00:38  45:38 fastp --thread 1 -i test3_1_clean.fq.gz -I test3_2_clean.fq.gz -o our.R1.fq.gz -O out.R2.fq.gz
root       2547  0.9  4.4 2083028 360828 ?      Sl   Jul23   3:30 /usr/bin/gnome-shell
root       1386  0.0  0.6 281780 56016 tty1     Ssl+ Jul23   0:06 /usr/bin/Xorg :0 -background none -verbose -auth /run/gdm/auth-for-gdm-CBn3PU/database -seat seat0 -nolisten tcp vt1

常见的日志文件如下:

1
2
3
4
5
/var/log/messages      绝大多数的系统日志都记录到该文件
/var/log/secure          所有跟安全和认证授权等日志都会记录到此文件
/var/log/maillog       邮件服务的日志
/var/log/cron             crond 计划任务的日志
/var/log/boot.log       系统启动的相关日志

查看垃圾文件的方法

未清理前发现硬盘根分区空间告急,用 du -t 100M /var/log/ 或 journalctl –disk-usage 命令查看。

最近子凡发现我们泪雪网服务器的/var/log/journal 日志文件占用了 4G 空间,每个日志文件体积在 8-128M 左右,这些日志文件记录了很长时间以来的 systemd 情况,对于我们实际的网站运营来说没有任何价值。

清空 /var/log/journal 文件的方法

1、用 echo 命令,将空字符串内容重定向到指定文件中

1
echo "" > system.journal

说明:此方法只会清空一次,一段时间后还要再次手动清空很麻烦,这里可以用以下命令让 journalctl 自动维护空间

2、journalctl 命令自动维护文件大小

1)只保留近一周的日志

1
journalctl --vacuum-time=1w

2)只保留 500MB 的日志

1
journalctl --vacuum-size=500M

问题与分析解决

如果执行 journalctl –vacuum-time=1w 命令时报错:Error was encountered while opening journal files: Input/output error 则表示日志文件损坏。

解决方法:删除之前的日志,并使用 systemctl restart systemd-journald.service 命令重启 journalctl 服务即可。

**************** Linux下如何查看哪个进程占用CPU或内存最多? *****************

Linux下如何查看哪个进程占用CPU或内存最多?

最近发现服务器的CPU和内存突然很高,时不时服务器上运行命令都非常的卡。想看一下是为什么?哪些程序占了CPU或内存最高?是不是有挖矿程序?......

一、Linux下如何查看哪个进程占用CPU资源最多?

第一种方法:

语法:ps -aux | sort -k3nr | head -K

说明:如果是10个进程,K=10;如果是最高的三个,K=3

例如:

查看CPU占用最多的前10个进程:

[root@localhost /]# ps -aux | sort -k3nr | head -10

第二种方法:

用命令组合查看CPU占用最多的前10个进程:

[root@localhost /]# ps auxw | head -1;ps auxw | sort -rn -k3 | head -10 

[root@localhost /]# ps aux | head -1;ps aux | grep -v PID | sort -rn -k +3 | head

二、Linux下如何查看哪个进程占用内存资源最多?

第一种方法

语法:ps -aux | sort -k4nr | head -K

说明:如果是10个进程,K=10;如果是最高的三个,K=3

例如:

查看内存占用最多的前10个进程:

[root@localhost /]# ps -aux | sort -k4nr | head -10

第二种方法

用命令组合查看CPU占用最多的前10个进程:

[root@localhost /]# ps aux | head -1;ps aux | grep -v PID | sort -rn -k +4 | head

[root@localhost /]# ps aux | head -1;ps aux | grep -v PID | sort -rn -k +4 | head
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

oh LAN

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值