![在 rc.local 之外设置持久预读缓冲区?](https://linux22.com/image/1121547/%E5%9C%A8%20rc.local%20%E4%B9%8B%E5%A4%96%E8%AE%BE%E7%BD%AE%E6%8C%81%E4%B9%85%E9%A2%84%E8%AF%BB%E7%BC%93%E5%86%B2%E5%8C%BA%EF%BC%9F.png)
我的 MongoDB 服务器需要为包含数据库文件的设备自定义预读设置。我已将以下内容添加到/etc/rc.local
:
blockdev --setra 32 /dev/md127
这可以工作,但由于是/etc/rc.local
在启动过程的后期执行的(具体来说,是在mongod
启动后),mongod
因此会抱怨预读太高。还有其他“正确”的地方可以设置它吗?
答案1
由于这是专门用于数据库的,只需readahead
通过添加 blockdev 命令将其设置为 upstart 脚本的一部分/etc/init/mongodb.conf
- 然后您可以确保在每次启动数据库之前设置它(如果您同时由于某种原因在其他地方更改它,可以避免混淆)。