我已经修改了net.core.rmem_maxwith的值sysctl,现在我想将它设置回它的默认值。
如果我重新启动,net.core.rmem_max将返回到它的默认值(因为它没有被覆盖/etc/sysctl.conf),但是我可以在不重新启动的情况下知道这个值吗?
理想情况下,我应该sysctl net.core.rmem_max在修改之前运行读取该值,但我忘记了......
我的 Linux 内核在构建时必须使用user_namespaces进行配置,但它们的使用在启动后受到限制并且必须显式启用。我应该使用哪个 sysctl?
(如果它被打开,这将允许运行像 一样的隔离命令unshare --user --map-root-user --mount-proc --pid --fork,然后在chroot没有 root身份的情况下执行——这是 Linux 备受期待的特性。)
最近几天我一直在想它到底是如何工作的。我们可以使用 sysctl 设置内核运行时参数,echo boolen 1> /proc/sys/module/exactParameter但/sys/modules/module/parameters/parameter我们也可以设置值。
模块的参数是否/proc/sys/仅与硬编译到内核相关?或者也可以有可加载内核模块的参数?
LKM 加载到运行内核后,在/sys/modules/module/paraeter/params. 这是否意味着编译到内核中的模块没有参数?
两个目录有什么区别。
我已经阅读了两种增加允许打开文件数的不同方法(如果重要的话,我正在尝试为 root 进行修改)。
一种方法是使用以下内容更新设置/etc/security/limits.conf:
* soft nofile 500000
* hard nofile 500000
root soft nofile 500000
root hard nofile 500000
Run Code Online (Sandbox Code Playgroud)
要为活动 shell 进行设置,看起来您只需执行ulimit -n 500000,这不需要重新启动或注销/登录,但可能需要重新启动服务 (?)。
另一种选择是更新/etc/sysctl.conf:
echo 'fs.file-max = 500000' >> /etc/sysctl.conf
Run Code Online (Sandbox Code Playgroud)
要对活动 shell 进行设置,我们可以执行sysctl -p,并使用 进行验证sysctl fs.file-max。
所以我的问题是,有什么区别?有吗?我上线了Ubuntu 14.04.2 LTS
我想启用反向路径过滤以防止我的服务器上的源 ip 欺骗。我注意到我目前有以下设置:
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.lo.rp_filter = 0
net.ipv4.conf.p4p1.rp_filter = 1
net.ipv4.conf.eth0.rp_filter = 1
Run Code Online (Sandbox Code Playgroud)
设置 inall和 one indefault不一样。我的/etc/sysctl.conf文件没有明确的设置。我想知道设置之间对其余配置有什么影响
net.ipv4.conf.all.rp_filter = 1
Run Code Online (Sandbox Code Playgroud)
和
net.ipv4.conf.default.rp_filter = 1
Run Code Online (Sandbox Code Playgroud)
我必须设置两者还是只设置其中之一?
Ubuntu 存在一个尚未修复的问题,当它复制到 U 盘时,PC 会死机或变得非常慢(请参阅为什么我的 PC 在我将文件复制到 Pendrive 时会死机?,http: //lwn.net/Articles/572911/和https://askubuntu.com/q/508108/234374)。
一种解决方法是以 root 身份执行以下命令(请参阅此处的说明)以 root身份执行以下命令:
echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytes
echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes
Run Code Online (Sandbox Code Playgroud)
如何还原这些更改?当我重新启动我的 PC 时,它会回滚到默认值吗?
我的服务器有一些虚拟机,但虚拟机无法与服务器正常通信,因为服务器有多个接口,并且它响应错误的接口。
问:我们知道有一个内核参数可以确保 ARP 响应仅来自请求到达的那个接口。那是什么sysctl设定?
服务器是Debian机器。
我需要运行一个二进制文件,它使用bind零端口参数,从系统中获取一个随机的空闲端口。有没有办法限制允许内核选择的端口范围?
这个问题与安装了 abrt-hook-cpp 的核心文件在哪里有关?.
当我试图为一个故意崩溃的程序生成一个核心文件时,起初核心文件的生成似乎受到 abrt-ccpp 的阻碍。所以我尝试/proc/sys/kernel/core_pattern用vim手动编辑:
> sudo vim /proc/sys/kernel/core_pattern
Run Code Online (Sandbox Code Playgroud)
当我尝试保存文件时,vim 报了这个错误:
"/proc/sys/kernel/core_pattern" E667: Fsync failed
Run Code Online (Sandbox Code Playgroud)
我认为这是一个权限问题,所以我尝试更改权限:
> sudo chmod 666 /proc/sys/kernel/core_pattern
chmod: changing permissions of '/proc/sys/kernel/core_pattern\': Operation not permitted
Run Code Online (Sandbox Code Playgroud)
最后,基于这篇文章,我尝试了这个:
>sudo bash -c 'echo /home/user/foo/core.%e.%p > /proc/sys/kernel/core_pattern'
Run Code Online (Sandbox Code Playgroud)
这奏效了。
基于工作解决方案,我也尝试了这些,但失败了:
> echo "/home/user/foo/core.%e.%p" > /proc/sys/kernel/core_pattern
-bash: /proc/sys/kernel/core_pattern: Permission denied
>
> sudo echo "/home/user/foo/core.%e.%p" > /proc/sys/kernel/core_pattern
-bash: /proc/sys/kernel/core_pattern: Permission denied
Run Code Online (Sandbox Code Playgroud)
问题:
为什么编辑、编辑chmod和重定向echo输出到文件/proc/sys/kernel/core_pattern都失败了,只有注意到的调用sudo bash...才能覆盖/编辑文件? …
我尝试查看/proc/sys/vm/max_map_countvm.max_map_count=16777216文件,它显示“空”,我在etc/sysctl.config中添加了一行,并想查看是否应用了更改。
我有一定的问题,需要放大它来修复应用程序中的内存崩溃,但它们仍然会发生,所以我想把这个问题划掉。