Как найти память в моей системе
Давным-давно на своем производственном сервере я создал несколько виртуальных машин. В Ubuntu, использующем virt-manager, я забыл их конфигурации, т. Е. Сколько оперативной памяти я выделил этим виртуальным машинам, кто-то может помочь мне понять это. Я понятия не имею, как обнаружить эту часть.
редактировать после некоторых ответов я использую KVM не Xen
free -m имеет следующий вывод
total used free shared buffers cached
Mem: 1002 956 45 0 30 151
-/+ buffers/cache: 774 228
Swap: 2015 0 2015
и файл конфигурации virtual_machine.xml имеет следующую запись, которая, я думаю, является правильной строкой для спецификации ОЗУ
<memory>1048576</memory>
<currentMemory>1048576</currentMemory>
но я не могу понять, что такое, что нет в ГБ, равном. Вот вывод команды top на виртуальной машине
Mem: 1026868k total, 980080k used, 46788k free, 31508k buffers
Swap: 2064376k total, 104k used, 2064272k free, 155040k cached
Для другой виртуальной машины бесплатно -m имеет следующее
total used free shared buffers cached
Mem: 2009 1848 161 0 235 792
-/+ buffers/cache: 820 1189
Swap: 5847 1 5846
и его конфигурационный файл имеет
<memory>2097152</memory>
<currentMemory>2097152</currentMemory>
Теперь вывод top -b -d 1 > top.txt
Команда на хосте, где работают все такие гости,
top - 14:40:43 up 8 days, 4:01, 1 user, load average: 0.68, 0.58, 0.55
Tasks: 259 total, 2 running, 256 sleeping, 0 stopped, 1 zombie
Cpu(s): 1.3%us, 4.2%sy, 0.0%ni, 94.4%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 8181868k total, 8059876k used, 121992k free, 388564k buffers
Swap: 15624184k total, 63012k used, 15561172k free, 1596052k cached
Сколько памяти имеет Хост и сколько дается гостю, это то, что я хочу знать.
3 ответа
Ваш хост имеет 8 ГБ оперативной памяти:
Mem: 8181868k total
Вашей первой виртуальной машине выделено 1 ГБ оперативной памяти. В вашем конфигурационном файле vm указано 1048576, а единицы измерения указаны в килобайтах (я предполагаю, что в других единицах измерения это не имеет никакого смысла). Это подтверждается выводом top, показывающим 1026868k, что также достаточно близко к 1 ГБ, чтобы подтвердить это.
Это сбивает с толку, потому что эти цифры не совпадают. Вероятно, это связано с тем, что оперативная память зарезервирована для сопоставлений адресного пространства PCI и BIOS - это происходит даже внутри KVM, поскольку KVM представляет собой поддельный BIOS, которому необходимо зарезервировать некоторую память для BIOS и psuedo PCI.
Второй виртуальной машине также выделено 2 ГБ оперативной памяти.
Здесь есть хороший ответ о том, как правильно интерпретировать вывод "free", который стоит прочитать. Я не буду повторять это здесь
Как писал Sirex, если вы используете Xen, попробуйте использовать команду
xm list
который покажет вам ваши виртуальные машины с памятью, которую вы им присвоили.
РЕДАКТИРОВАТЬ: я заметил, что вы используете KVM. Попробуйте использовать команду virsh следующим образом:
virsh dommemstat DOMAIN_ID
Чтобы узнать идентификатор вашего домена, используйте:
virsh list
Я надеюсь, что это помогает.
Если вы используете xen, попробуйте "grep mem [файлы конфигурации xen]", мои файлы конфигурации находятся в /etc/xen/configs/, поэтому это будет "grep mem /etc/xen/configs/*"
Чтобы найти память в вашей системе (хосте), попробуйте "free -m"