今天晚上on-call,遇到一个Solaris 10 server在重启之后不能创建ramdisk的问题,
输入命令:
# ramdiskadm -a l1cache 50g
出现提示:
ramdiskadm: couldn't create ramdisk "l1cache": Resource temporarily unavailable
临时资源不足,这台机器有128G内存,当时有79G可用内存,那既然提示临时资源不足,于是便停下jboss,重启机器之后,再次create ramdisk,但是这次依旧提示 Resource temporarily unavailable!
我手动测试,最大只能创建25G的ramdisk,这说明ramdisk是正常的,google之后找到解决办法。
1)# vi /etc/system
在末尾添加:set ramdisk:rd_percent_physmem=80
set ramdisk:rd_percent_physmem=<百分比>
这行参数的意思是创建的ramdisk最大不能超过系统内存的80%
这个参数生效需要重启系统,Linux下对sysctl.conf修改只要sysctl -p就生效,但是Unix更为谨慎。需要重启
2. 重启系统
# reboot
或者
# shutdown -y -g0 -i6
3. 重启完毕之后再次创建
ramdiskadm -a l1cache 50g 一切ok。