【发布时间】:2013-04-10 22:39:52
【问题描述】:
如何在 Ubuntu 上默认启用透明大页面?
~$ uname -a
Linux yoda 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
~$ cd /sys/kernel/mm/transparent_hugepage/
/sys/kernel/mm/transparent_hugepage$ ls
defrag enabled khugepaged
/sys/kernel/mm/transparent_hugepage$ cat enabled
always [madvise] never
/sys/kernel/mm/transparent_hugepage$ sudo echo always > enabled
-bash: enabled: Permission denied
/sys/kernel/mm/transparent_hugepage$ sudo ls
[sudo] password for <...>:
defrag enabled khugepaged
/sys/kernel/mm/transparent_hugepage$ sudo ls
defrag enabled khugepaged
/sys/kernel/mm/transparent_hugepage$ sudo echo always > enabled
-bash: enabled: Permission denied
/sys/kernel/mm/transparent_hugepage$ cat enabled
always [madvise] never
【问题讨论】:
-
在
sudo echo always > enabled中,I/O 重定向以当前用户身份运行,而不是 root。试试sudo bash -c "echo always > enabled"。 -
@DrKitty 我希望你把这个作为官方答案,这样我就可以投票了!
-
您也可以使用
echo always | sudo tee /sys/kernel/mm/transparent_hugepage/enabled。不记得我在哪里看到它以这种方式使用,但它胜过sudo su -c "..."恕我直言。我添加为评论是因为这是一个运行时设置,Rancor 提供了将其设置为默认值的正确答案。 -
@DrKitty 如果你让你回答一个答案,我会支持它
-
命令行“sudo echo always > enabled”应该是:sudo sh -c "echo always > enabled"
标签: ubuntu huge-pages