linux内存free理解
- total:是总的物理内存
- used:使用中的内存
- free:完全空闲的内存
- shared:多个进程共享的内存
- buffers:写缓存,在写入磁盘之前,先把数据缓存一段时间,可以释放
- cache:读缓存,读取过的文件,会缓存一段时间。可以释放
- -buffers/cache:应用程序实际使用中的内存大小,等于used-buffers-cached
- +buffers/cache:可供使用的内存总量,等于free+buffers+cached
- Swap:不解释,都能看懂的
所以,可以供程序使用的内存,应该看+buffers/cache,而不是free,这是新手最容易犯的错误之一。那位可能要问了,明明已经开始使用swap了,怎么能说内存还充足呢?照我的理解是,系统在分配内存的时候,如果发现内存不足,会释放一批旧的cache,把空间腾出来给新申请的进程用,有时候释放不充分或者不及时,于是开始使用到swap了!
系统启动自运行脚本
使用rc.local
sudo chmod +x /etc/rc.d/rc.local
sudo vim /etc/rc.d/rc.local
sh /home/admin/script.sh &
使用Crontab
crontab -e
@reboot (sleep 90; sh \home\admin\script.sh)