web-dev-qa-db-ja.com

Linuxで使用可能な物理メモリの合計に制限を設定する

私はmem=MEMORY_LIMITを設定することになっていることを知っています。しかし、OSが制御する物理メモリの合計に制限を設定するために、実行時または起動時にどこに行くべきかわかりません。

I/Oベンチマークを実行していますが、使用可能な物理メモリ全体の量を制限したいと思います。

15
KZcoding

探していた答えが見つかりました。基本的に、使用可能な物理メモリの合計を設定するパラメータは「mem = MEMORY_LIMIT」です。そして、これはカーネルブートパラメータです。カーネルブートパラメータに最大1GBの使用可能な物理メモリを追加するには、たとえば「mem = 1G」と追加する必要があります。カーネルブートパラメーターを追加する方法の詳細については、 https://wiki.ubuntu.com/Kernel/KernelBootParameters を参照してください

16
KZcoding

lilo.confgrub.confgrub.cfg、またはmenu.lst(特定のディストリビューションとブートローダーによって異なります。詳細についてはディストリビューションのドキュメントを確認してください)でカーネルブートパラメーターを編集して、カーネルパラメータを指定する行に、パラメータmem=512M(またはエミュレートするサイズ)を含めます。

たとえば、Grubの場合、kernel /boot/vmlinuz param1=val1 param2=val2のような行があるはずです。 mem=512Mをパラメーターのリストに追加します。これらの定義全体をコピーして名前を変更し、それぞれに異なるメモリ容量を設定することで、ブートメニューに個別のエントリを作成できるため、異なる設定ですばやく起動できます。

6
Brian Campbell

ブライアンキャンベルのリストに追加するには、BeagleBone/BlackデバイスのuBootブートローダーの場合、/boot/uboot/uEnv.txtのカーネルパラメーターを編集します
行を追加または変更しますmmcargs=setenv bootargs mem=512M [Debianでテスト済み]

[再起動]の前後に> freeを使用して、変更を確認します

3
TekuConcept

KZcodingが言及した このページ の指示に従いました(パート:カーネルブートパラメーターを永続的に追加します)

私のLinuxは(virtualboxのVM):

Linux ubuntu 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

設定する前に:

yavuz@ubuntu:~$ free -m
          total        used        free      shared  buff/cache   available
Mem:           3630         305        3010           6         314        3264
Swap:          3767           0        3767

/etc/default/grubでこの行を変更しました

GRUB_CMDLINE_LINUX_DEFAULT=""

GRUB_CMDLINE_LINUX_DEFAULT="mem=2G"

次にサーバーを再起動します。再起動後:

yavuz@ubuntu:~$ free -m
              total        used        free      shared  buff/cache   available
Mem:           2000         298        1385           4         315        1651
Swap:          3767           0        3767
0
Yavuz Sert

A1:はい、再起動する必要があります。

A2:カーネルはタイプミスに関して寛容ではありません。エラーメッセージはありません。それはあなたの問題でしょうか?例:「mem = 512M」および「mem = 2G」。前のパラメーターに続くスペースを忘れないでください。memは小文字で、K、M、またはGは大文字です。

0
George Rolf