Назад | Перейти на главную страницу

как найти память в моей системе

Давным-давно на моем производственном сервере я создал несколько виртуальных машин. На 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 имеет следующую запись, которая, как мне кажется, является правильной строкой для спецификации RAM

 <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

Для другой виртуальной машины free -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

Сколько памяти у хоста и сколько отдано гостю - вот что я хочу знать.

У вашего хоста 8 ГБ оперативной памяти:

Mem:   8181868k total

Для вашей первой виртуальной машины выделено 1 ГБ оперативной памяти. В вашем файле конфигурации vm указано 1048576, а единицы измерения указаны в килобайтах (я предполагаю, что это не имеет никакого смысла ни в каких других единицах). Это подтверждается выводом top, показывающим 1026868k, что также достаточно близко к 1 ГБ, чтобы его резервировать.

Это сбивает с толку, потому что эти числа не совпадают. Вероятно, это связано с тем, что ОЗУ зарезервировано для сопоставления адресного пространства PCI и BIOS - это происходит даже внутри KVM, поскольку KVM представляет собой поддельный BIOS, который должен зарезервировать некоторую память для BIOS и псевдо-PCI-пространства.

Для второй виртуальной машины также выделено 2 ГБ оперативной памяти.

Есть хороший ответ Вот о том, как правильно интерпретировать вывод «free», стоит прочитать. Я не буду повторять это здесь

Как написал Сирекс, в случае, если вы используете Xen, попробуйте использовать команду

xm list

который покажет вам ваши виртуальные машины с выделенной вами памятью.

РЕДАКТИРОВАТЬ: Я заметил, что вы используете KVM. Попробуйте использовать команду virsh следующим образом:

virsh dommemstat DOMAIN_ID

Чтобы узнать ID вашего домена, используйте:

virsh list

Я надеюсь, что это помогает.

Предполагая, что вы используете xen, попробуйте «grep mem [xen config files]», мои файлы конфигурации находятся в / etc / xen / configs /, так что это будет «grep mem / etc / xen / configs / *»

Чтобы найти память в вашей системе (хосте), попробуйте «бесплатно -m»