如何使用 GRUB 使用“mem=1024m”参数启动 - Ubuntu 10.04

nic*_*ius 2 memory boot grub command-line

我还在研究这个问题。这个新问题是一个不同的问题,所以我认为发布一个新问题会很好。这是正确的协议还是我应该编辑另一个问题?

我在 Toshiba Satellite 笔记本电脑上运行内核为 2.6.32-22-generic 的 Ubuntu 10.04。当我进入 GRUB 菜单时(我也安装了 Ubuntu 9.10),我可以选择引导哪个内核。我使用向下滚动到我想要的那个并按“e”,我希望能够进入mem=1024m并强制内核使用这么多内存。但是,当我使用cat /proc/meminfo此参数启动后运行或查看进程管理器时,我仍然看到所有 RAM:~2 GB。

我是否错误地使用了这个引导参数?启动配置(在我添加任何内容之前)如下所示:

insmod ext2
set root=(hd0,1)
search --no-floppy --fs-uuid --set 10270f21-1c42-494b-bd3f-813c23f6d\
518
linux /boot/vmlinuz-2.6.32-22-generic root=UUID=10270f21-1c42-494b-b\
d3f-813c23f6d518 ro quiet splash
initrd /boot/initrd.img-2.6.32-22-generic
Run Code Online (Sandbox Code Playgroud)

我这样做的方法是mem=1024m在最后一行之后添加并按下Ctrl+ X(Emacs 保存并启动内核),然后系统启动。

我尝试添加mem=1024m到此列表的末尾和开头,但似乎没有更改 RAM 分配。

qua*_*ote 5

对于使用 Grub2 的基于 Ubuntu 和 Debian 的安装,您不应直接编辑/boot/grub/grub.cfg。该文件是通过运行update-grub命令配置的,该命令会在不同时间(例如安装新内核映像时)自动发生。

相反,您需要向/etc/default/grub 中GRUB_CMDLINE_LINUXGRUB_CMDLINE_LINUX_DEFAULT变量添加内核命令行选项:

# these options don't get added to recovery boot entry
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

# these options get added to both standard and recovery boot entries
GRUB_CMDLINE_LINUX="var1 var2 mem=1024m"
Run Code Online (Sandbox Code Playgroud)

完成编辑后,不要忘记生成带有更改的新 Grub 菜单:

sudo update-grub
Run Code Online (Sandbox Code Playgroud)