记一次分配虚拟内存的经历
在阿里云上买了台1G内存,单核的云服务器平时玩玩,和朋友一起开发几个小项目。在某次同时运行Jenkins和几个网站的情况下,在Centos系统运行yum install git,yum报出了一个内存不足的错,而且系统确实也是卡卡的。查看linux内存命令free和top都可以查看内存情况。free查看的挚友内存信息,top则就像windows里的控制面板。除此之外,/proc/meminf
·
在阿里云上买了台1G内存,单核的云服务器平时玩玩,和朋友一起开发几个小项目。在某次同时运行Jenkins和几个网站的情况下,在Centos系统运行yum install git
,yum报出了一个内存不足的错,而且系统确实也是卡卡的。
- 查看linux内存
命令free和top都可以查看内存情况。free查看的挚友内存信息,top则就像windows里的控制面板。
除此之外,/proc/meminfo文件也记录有内存情况
[root@~]# free -m
total used free shared buff/cache available
Mem: 992 765 71 0 155 81
Swap: 0 0 0
[root@iZbp1aiejzadfq9do06acaZ ~]# top
top - 21:42:15 up 21:46, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 61 total, 2 running, 59 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.7 us, 0.0 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1016412 total, 72560 free, 783892 used, 159960 buff/cache
KiB Swap: 1048572 total, 821984 free, 226588 used. 82828 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
9338 root 20 0 2608740 678916 6392 S 0.3 66.8 11:17.35 java
892 mysql 20 0 1146768 37060 5240 S 0.0 3.6 0:24.99 mysqld
18361 root 20 0 143388 5420 4136 S 0.0 0.5 0:00.05 sshd
893 root 20 0 124076 5116 1948 S 0.0 0.5 2:19.63 AliYunDun
333 root 20 0 45008 3324 3204 S 0.0 0.3 0:00.35 systemd-journal
18366 root 20 0 115516 2192 1684 S 0.0 0.2 0:00.02 bash
18671 root 20 0 157576 2136 1536 R 0.0 0.2 0:00.00 top
[root@iZbp1aiejzadfq9do06acaZ ~]# cat /proc/meminfo
MemTotal: 1016412 kB
MemFree: 72528 kB
MemAvailable: 83164 kB
Buffers: 17004 kB
Cached: 110144 kB
SwapCached: 46080 kB
Active: 432064 kB
Inactive: 452212 kB
Active(anon): 369412 kB
Inactive(anon): 387764 kB
Active(file): 62652 kB
Inactive(file): 64448 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1048572 kB
...
2.分配虚拟内存
万万没想到,阿里云默认是不分配虚拟内存的。只能自己动手分配了。
虚拟内存swap的概念就不细说了,需要提的一点是,虚拟内存搞起来就是个文件!!大概的操作就是,划出一块空闲硬盘空间用来创建一个文件,这个文件一般放在/swap目录下,然后执行mkswap命令,这个文件就变成swap了,swapon命令使swap生效,reboot重启分配虚拟内存就完成了。
将/dev/vda1的1024*1024000byte空间,分配到/swap/swap文件。
[root@iZbp1aiejzadfq9do06acaZ ~]# df
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/vda1 41152832 6738928 32300420 18% /
devtmpfs 498536 0 498536 0% /dev
tmpfs 508204 0 508204 0% /dev/shm
tmpfs 508204 328 507876 1% /run
tmpfs 508204 0 508204 0% /sys/fs/cgroup
tmpfs 101644 0 101644 0% /run/user/0
dd if=/dev/vda1 of=/swap/swap bs=1024 count=1024000
创建linux交换文件
mkswap /swap/swap
立即激活/swap/swap交换文件
swapon /swap/swap
重启系统
reboot
更多推荐
已为社区贡献1条内容
所有评论(0)