我既不担心 RAM 使用情况(因为我已经足够了),也不担心在意外关闭的情况下丢失数据(因为我的电源有保障,系统是可靠的,数据并不重要)。但是我做了很多文件处理并且可以使用一些性能提升。
这就是为什么我想将系统设置为使用更多 RAM 进行文件系统读写缓存,积极预取文件(例如,预读应用程序访问的整个文件,以防文件大小合理或至少否则,请提前读取其中的一大块)并减少刷新写入缓冲区的频率。如何实现这一目标(可能)?
我在 XUbuntu 11.10 x86 上使用 ext3 和 ntfs(我经常使用 ntfs!)文件系统。
在小牛队之前,我可以使用/etc/launchd.conf文件来改变最大系统资源消耗,例如:
limit maxfiles 16384 unlimited
limit maxproc 16384 unlimited
Run Code Online (Sandbox Code Playgroud)
它不再适用于小牛队。
在最新版本的 OS X 中,正确的做法是什么?
我们正在RAID机器中安装 SAP HANA 。作为安装步骤的一部分,提到,
To disable the usage of transparent hugepages set the kernel settings
at runtime with echo never > /sys/kernel/mm/transparent_hugepage/enabled
Run Code Online (Sandbox Code Playgroud)
因此,如果我想让它成为永久更改,而不是运行时,我应该在/proc/vmstat文件中添加上面的行吗?
在的sysctl,所述/proc/sys/net/ipv[46]/conf/键具有以下子项:all,default,和每个网络接口的密钥。例如,在具有单个网络接口 eth0 的机器上,它将如下所示:
iserv ~ # ll /proc/sys/net/ipv[46]/conf/
/proc/sys/net/ipv4/conf/:
insgesamt 0
dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 lo/
/proc/sys/net/ipv6/conf/:
insgesamt 0
dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/
dr-xr-xr-x 0 root root 0 12. …Run Code Online (Sandbox Code Playgroud) 我不明白设置的最佳方法fs.inotify.max_user_watches有sysctl。事实上,除了我需要设置特定进程可以查看的文件数量这一事实之外,我对这里发生的事情并不了解。
我相信我可以通过运行以下命令查看最大用户数:
cat /proc/sys/fs/inotify/max_user_watches
Run Code Online (Sandbox Code Playgroud)
我的理解是,有些人建议/proc/sys/fs/inotify/max_user_watches通过/etc/sysctl.conf在编辑器中打开并将其添加到其中来进行更改:
fs.inotify.max_user_watches=524288
Run Code Online (Sandbox Code Playgroud)
然后运行sudo sysctl -p- 大概 - 处理对文件所做的更改。
其他人建议运行这样的命令:
sudo sysctl -w fs.inotify.max_user_instances=1024
sudo sysctl -w fs.inotify.max_user_watches=12288
Run Code Online (Sandbox Code Playgroud)
我知道这-w代表 write,但是正在写什么,写在哪里?只是这个命令改变了/proc/.../max_user_watches吗?
上面概述的两种方法中哪一种最好?我知道524288和12288是不同的数字,但是我不明白运行-p和-w.
由于最近 Debian 更改了默认行为dmesg,我不能简单地从本地用户使用它。
% dmesg
dmesg: read kernel buffer failed: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
同样适用于:
% cat /dev/kmsg
cat: /dev/kmsg: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
以错误跟踪器为主角,这导致:
如何将此行为改回前一个行为,其中允许本地用户使用 dmesg。我找不到它的特定组(例如 sudoers 或类似的东西)。
执行以下命令禁用 ping 回复后:
# sysctl net.ipv4.icmp_echo_ignore_all=1
# sysctl -p
Run Code Online (Sandbox Code Playgroud)
我从 ping localhost 与 127.0.0.1 获得不同的结果
# ping -c 3 localhost
PING localhost(localhost (::1)) 56 data bytes
64 bytes from localhost (::1): icmp_seq=1 ttl=64 time=0.029 ms
64 bytes from localhost (::1): icmp_seq=2 ttl=64 time=0.035 ms
64 bytes from localhost (::1): icmp_seq=3 ttl=64 time=0.101 ms
--- localhost ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2042ms
rtt min/avg/max/mdev = 0.047/0.072/0.101/0.022 ms
Run Code Online (Sandbox Code Playgroud)
Ping 127.0.0.1 失败:
ping -c 3 127.0.0.1 …Run Code Online (Sandbox Code Playgroud) 在我的 Ubuntu 机器上,在/etc/sysctl.conf文件中,我默认注释掉了反向路径过滤选项,如下所示:
#net.ipv4.conf.default.rp_filter=1
#net.ipv4.conf.all.rp_filter=1
Run Code Online (Sandbox Code Playgroud)
但在/etc/sysctl.d/10-network-security.conf它们中(同样,默认情况下)没有注释掉:
net.ipv4.conf.default.rp_filter=1
net.ipv4.conf.all.rp_filter=1
Run Code Online (Sandbox Code Playgroud)
那么是否启用了反向路径过滤?哪个配置位置优先?如何检查这些和其他内核选项的当前值?
更新到内核 5.10.119 后,/proc/sys/kernel/random/entropy_avail卡在 256 并且移动鼠标时不会改变。以前是3000多。
# cat /proc/sys/kernel/random/entropy_avail
256
Run Code Online (Sandbox Code Playgroud)
另外,/proc/sys/kernel/random/poolsize下降到 256。以前是 4096。
这是一个错误吗?你能相信这个内核的新随机数生成器只有 256 个可用熵吗?
在 Debian 5 和 6 之间, kernel.printk 中的默认建议值/etc/sysctl.conf从 更改kernel.printk = 4 4 1 7为kernel.printk = 3 4 1 3。我知道第一个值对应于控制台的内容。接下来的 3 个值是什么?
数值是否与系统日志日志级别具有相同的含义?或者他们有不同的定义?
我是否在搜索中遗漏了一些文档,或者是找出内核源代码的唯一位置。