我已经在64g内存的服务器上安装了Oracle Enterprise Linux 64bit。 但系统只检测到32b的内存,这里是详细信息:
[root@oracle-node2 ~]# uname -a Linux oracle-node2.ra.gov.ge 2.6.18-194.el5xen #1 SMP Mon Mar 29 22:22:00 E DT 2010 x86_64 x86_64 x86_64 GNU/Linux [root@oracle-node2 ~]# uname -r 2.6.18-194.el5xen [root@oracle-node2 ~]# uname -m x86_64 [root@oracle-node2 ~]# head /proc/meminfo MemTotal: 33554432 kB MemFree: 28984540 kB Buffers: 35612 kB Cached: 1912284 kB SwapCached: 0 kB Active: 1620324 kB Inactive: 1212660 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 33554432 kB [root@oracle-node2 ~]# cat /etc/grub.conf # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title Enterprise Linux (2.6.18-194.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-194.el5 module /vmlinuz-2.6.18-194.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet module /initrd-2.6.18-194.el5xen.img title Enterprise Linux-base (2.6.18-194.el5) root (hd0,0) kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00 rhgb qui et initrd /initrd-2.6.18-194.el5.img
我怎样才能把这个限制改成64g? 注意:BIOS在内存部分显示64g。
附加信息:
[root@oracle-node1 ~]# dmesg | grep -i memory Memory: 32782304k/33562624k available (2512k kernel code, 771444k reserved, 1396k data, 184k init) Non-volatile memory driver v1.2 [root@oracle-node1 ~]# dmidecode -t 16 # dmidecode 2.10 SMBIOS 2.5 present. Handle 0x002B, DMI type 16, 15 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Single-bit ECC Maximum Capacity: 192 GB Error Information Handle: Not Provided Number Of Devices: 18
是的,正如我猜测的那样,这是xen内核的限制。 到目前为止,你所使用的内核似乎只能检测到dom0的32 GiB的内存。 然而,32 GiB的其余部分可以分配给domU。
我无法find正在search的文档,但稍后可以查看。 你看,在dmesg中它告诉内核正在检测只有32GB的RAM,这也是你在/proc/meminfo看到的。
这个线程也说相同。
http://xen.1045712.n5.nabble.com/memory-quesion-td2609396.html
它说
This is a limitation of the Xen kernel; only 32GB will be visible to Dom0. The "missing" 32GB can still be allocated to DomU's, however.
如果你能坚持下去,我也可以检查来源或更权威的文章。
检查Xen虚拟机pipe理程序是否正在查看您的所有内存:
xm info | grep memory
如果Xen虚拟机pipe理程序看到所有的64GB内存,检查有多less内存分配给Dom0:
xm list
如果Xen虚拟机pipe理程序看到所有的64GB内存,但只有32GB分配给域0,我会尝试在pipe理程序命令行上明确设置dom0_mem 。
如果Xen虚拟机pipe理程序没有看到你所有的64GB的内存,我真的不知道在哪里看:)但是我会尝试使用更新版本的Xen虚拟机pipe理程序和/或dom0 Linux内核/系统。