最近买个腾讯云服务器,不久之后使用数据库就非正常的卡,使用xshell连接使用命令也非常卡,看了下内存使用量发现kswapd0进程占了太多内存,而且swap竟然是0,关机重启不能解决问题,只能手动添加swap交换分区了。使用的是买的默认的服务器
调整swap好像并不能解决kswapd0进程占用大量内存的问题,还要研究下
调整linux内核尽量用内存,而不用swap
终于找到怎么解决这个问题了,腾讯云总报异常登录,还说有木马文件,并没有太当回事,可是top查看内存一直时接近100%,自己部署的应用用不了,只能先解决下问题了
清除病毒做法:
解决swap占用太多做法:https://blog.csdn.net/m0_37886429/article/details/78487324?locationNum=10&fps=1
密码不管自己设置的多复杂都能暴力破解,用密钥安全点:
https://www.runoob.com/w3cnote/set-ssh-login-key.html
[root@VM_0_3_centos etc]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
- 首先查看已挂载的分区信息
df -T 只可以查看已经挂载的分区和文件系统类型。
fdisk -l 可以显示出所有挂载和未挂载的分区,但不显示文件系统类型。
parted -l 可以查看未挂载的文件系统类型,以及哪些分区尚未格式化。
lsblk -f 也可以查看未挂载的文件系统类型。
[root@VM_0_3_centos dev]# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
devtmpfs devtmpfs 930108 0 930108 0% /dev
tmpfs tmpfs 941028 28 941000 1% /dev/shm
tmpfs tmpfs 941028 672 940356 1% /run
tmpfs tmpfs 941028 0 941028 0% /sys/fs/cgroup
/dev/vda1 ext4 51473868 6097968 43178656 13% /
tmpfs tmpfs 188208 0 188208 0% /run/user/1001
tmpfs tmpfs 188208 0 188208 0% /run/user/1000
tmpfs tmpfs 188208 0 188208 0% /run/user/0
可以看到/dev/vda1 是我们使用的硬盘,文件系统类型是ext4
2. 使用dd命令创建/home/swap这么一个分区文件。文件的大小是512000个block,一般情况下1个block为1K,所以这里空间是512M。
[root@VM_0_3_centos ~]# dd if=/dev/zero of=/home/swap bs=1024 count=512000
512000+0 records in
512000+0 records out
524288000 bytes (524 MB) copied, 2.6457 s, 198 MB/s
- 接着再把这个分区变成swap分区
[root@VM_0_3_centos ~]# /sbin/mkswap /home/swap
Setting up swapspace version 1, size = 511996 KiB
no label, UUID=50c11182-d99b-40c5-87d6-0b33fe6da9f4
- 再接着使用这个swap分区。使其成为有效状态
[root@VM_0_3_centos ~]# /sbin/swapon /home/swap
swapon: /home/swap: insecure permissions 0644, 0600 suggested.
[root@VM_0_3_centos ~]# free -m
total used free shared buff/cache available
Mem: 1837 362 598 0 877 1306
Swap: 499 0 499
- 修改文件使它永久生效
[root@VM_0_3_centos ~]# echo "/home/swap swap swap defaults 0 0">> /etc/fstab
不放心可以cat下文件,完成