在 FreeBSD 中增加 hw.pagesize

在 FreeBSD 中增加 hw.pagesize

我的服务器很不稳定自由BSD 13

文档sysctl可以读到hw.pagesize 不能改变在旅途中。这对我来说很有意义,因为这种类型的参数取决于内核。

我还可以在那里读到:

Some of the variables which cannot  be modified during normal system oper-
ation can be initialized via loader(8) tunables.  This can  for example be
done by setting them in loader.conf(5).  Please refer to loader.conf(5)
for more information on which tunables are  available and how to set them.

遗憾的是,我无法在文档中找到我需要的任何参考资料loader(8)loader.conf(5)

在一次天真的尝试中,我只是将其添加hw.pagesize=...到我的/etc/sysctl配置文件中,但没有成功。现在,当我运行时,pagesize我得到了悲伤的4096字节值:

jose@miner:~ $ pagesize
4096

但是,怎样才能让它变大呢?我想在系统中使用 1GB 页面,但我无法在任何地方找到如何启用它。

答案1

FreeBSD 有相当完善的文档man页面。我对您的链接感到惊讶,sysctl因为您无法找到剩余的信息。使用以下内容阅读有关它们的信息

 man man
 

这将显示不同的部分:

  The sections of the manual are:
       1.   FreeBSD General Commands Manual
       2.   FreeBSD System Calls Manual
       3.   FreeBSD Library Functions Manual
       4.   FreeBSD Kernel Interfaces Manual
       5.   FreeBSD File Formats Manual
       6.   FreeBSD Games Manual
       7.   FreeBSD Miscellaneous Information Manual
       8.   FreeBSD System Manager's Manual
       9.   FreeBSD Kernel Developer's Manual

在您的情况下,您可以找到正确的页面而无需指定部分。

man loader.conf
man loader

但您可以指定这些部分:

man 8 loader
man 5 loader.conf

您也可以在线找到它们:装载机(8) 加载器.conf(5)

您已经接近您的解决方案了。您要查找的文件是:

/boot/loader.conf

如果它不存在,只需创建它。这是在引导期间读取的。您已经掌握了正确的语法。

如果这对您来说是新的,那么请注意以下重要通知:

 BUGS
     The loader(8) stops reading loader.conf when it encounters a syntax er-
     ror, so any options which are vital for booting a particular system
     (i.e., "hw.ata.ata_dma=0") should precede any experimental additions to
     loader.conf.
     

如果您进行了非常糟糕的编辑,/boot/loader.conf您将面临系统无法启动的风险。如果发生这种情况,那么您需要启动到“单用户模式”。启动时按一个键即可进入启动提示符。根据boot:提示输入boot -s.然后您可以挂载您的文件系统/sbin/mount -ruw /并编辑您的配置(vi 是您的朋友!)。

答案2

man loader.conf几乎在开头就有这样一句话:

 All settings have the following format:

       variable="value"

而且没有/etc/sysctl文件,它的名字叫/etc/sysctl.conf.

相关内容