标签: linux-kernel

Linux 中的虚拟网络接口

当我创建一个虚拟网络接口然后将其启动时,它显示处于 UNKNOWN 状态:

root@5b8dd2855a9c:# ip l a boom type dummy
root@5b8dd2855a9c:# ip l show boom
58: boom: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT
    link/ether 1e:f6:4b:60:ff:1a brd ff:ff:ff:ff:ff:ff
root@5b8dd2855a9c:# ip l set boom up
root@5b8dd2855a9c:# ip l show boom
58: boom: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state **UNKNOWN** mode DEFAULT
    link/ether 1e:f6:4b:60:ff:1a brd ff:ff:ff:ff:ff:ff
root@5b8dd2855a9c:#
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么?我尝试为其分配 IP 地址,但这并没有解决问题。

我在以下机器上对此进行了测试:

root@5b8dd2855a9c:# uname -a
Linux 5b8dd2855a9c 3.16.1-tinycore64 #1 SMP Fri Aug 22 05:53:09 UTC 2014 x86_64 GNU/Linux
root@5b8dd2855a9c:#
Run Code Online (Sandbox Code Playgroud)

更新:

所以看起来这并没有使接口无法操作。经过一些奴隶谷歌搜索后,我发现了 …

networking linux kernel linux-kernel

2
推荐指数
1
解决办法
5509
查看次数

升级内核是否类似于在 Windows 中打补丁?

主要来自 Windows 背景,在我看来,在 Linux 中更新内核与在 Windows 中修补操作系统本质上是相同的想法。

是这种情况吗?有什么共同点和不同点?

linux kernel linux-kernel

1
推荐指数
1
解决办法
104
查看次数

如何使用 IPTABLES 阻止一切?

我想阻止一切EXCEPT SSH / FTP / HTTP /字尾和MySQL。

“一切”是指所有其他端口、阻止 ping 等。

linux iptables linux-kernel

1
推荐指数
1
解决办法
987
查看次数

Linux NFS 在大约 15 分钟后挂起

我对管理 Linux 和 NFS 有点陌生,所以请耐心等待。

我们正在尝试在工作中设置一个小集群。目前系统只有2台DELL高端工作站,运行CentOS 6.5。为了更轻松地管理用户和文件,我们决定通过 NFS 共享 /home 目录和 /etc 中的四个文件(passwdgroupshadowgshadow(这是通过将它们移动到一个子目录,并使用链接将它们放回 /etc))

这些文件在服务器上的 /etc/exports 中与此共享:

/home/  x.x.x.0/24(rw,sync,no_root_squash,no_all_squash)  
/etc/sub_dir/   x.x.x.0/24(rw,sync,no_root_squash,no_all_squash)  
Run Code Online (Sandbox Code Playgroud)

这些文件在客户端的 /etc/fstab 中安装:

server_name:/home/          /home/          nfs rw,sync,hard,intr 0 0
server_name:/etc/sub_dir/           /etc/sub_dir/           nfs rw,sync,hard,intr 0 0
Run Code Online (Sandbox Code Playgroud)

设置完所有这些后,系统运行了大约一个月。只要服务器打开,当客户端启动时,服务器的所有用户都是可见的,所有文件也是可见的。

然而,大约5天前,它开始行动了。启动客户端后,它可以正常工作约 15 分钟(给予或接受)。用户可以在本地或通过 SSH 登录。在最初的 15 分钟之后,系统几乎完全锁定。新用户无法登录,已登录的用户无法执行任何操作。(移动鼠标等基本操作仍然有效)。让系统再次运行的唯一方法是关闭客户端并重新打开。不幸的是,这也意味着在客户端上调试非常困难。

我们已将问题缩小到与上述文件的 NFS 共享有关的问题。(我们知道这是因为禁用 /etc/fstab 中的挂载允许客户端返回到它自己的本地文件,并且一切正常)

我们能想到的最远的就是系统启动、挂载所有东西并运行。然后,连接断开,下次客户端需要访问文件(例如 passwd)时,它找不到它,系统挂起等待连接。

计算机位于同一个 1000 Mbps 交换机上,负载相当轻。

任何帮助将非常感激。

更新

我一直在做更多的挖掘。我发现这个类似的问题在这里对服务器故障,但它也没有得到解决。
我也尝试切换到UDP,但这也没有解决问题。
我遇到了解释如何查找和解决过时的 NFS 的文章(但我不确定这就是问题所在)。

更新 …

linux nfs linux-kernel

1
推荐指数
1
解决办法
8970
查看次数

为什么我在全新的 Ubuntu 16.04 安装上升级内核时遇到问题?

我注册了一个 Linux VPS。这个 VPS 带有一个较旧的 Linux 内核,我想升级它,因为我想运行的一些软件需要更新的版本。这是输出uname -a

Linux florence 2.6.32-042stab120.11 #1 SMP Wed Nov 16 12:05:45 MSK 2016 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

这是一个全新的 Ubuntu 16.04 镜像。(主机是http://ssdnodes.com)。这些是我以 root 身份按顺序运行的所有命令(是我试图遵循的教程):

apt-get update
apt-get upgrade -y
apt-get autoremove -y

mkdir kernel_update
cd kernel_update/
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
dpkg -i linux-*.deb
Run Code Online (Sandbox Code Playgroud)

前两个包安装正常。当我尝试选择第三个包时,出现此错误:

Unpacking linux-image-4.8.15-040815-generic (4.8.15-040815.201612151231) ...
Setting up linux-headers-4.8.15-040815 (4.8.15-040815.201612151231) ...
Setting up linux-image-4.8.15-040815-generic (4.8.15-040815.201612151231) ...
Running depmod.
update-initramfs: deferring update (hook will be called …
Run Code Online (Sandbox Code Playgroud)

linux ubuntu debian kernel linux-kernel

1
推荐指数
1
解决办法
1072
查看次数

Linux 如何在不同的微处理器上运行?

Linux 如何在不同的微处理器上运行?每次安装时都会编译Linux内核吗?

linux cpu-architecture linux-kernel

0
推荐指数
1
解决办法
678
查看次数

如何确认我的 CentOS 服务器是否支持多个 CPU?

CentOS 5.8 | 虚拟机

我有一台运行强化版 CentOS 5.8 的服务器。我一直在使用一个 CPU,并计划添加另一个(通过 vmware)。

当我运行 uname 时,我看到 SMP 这让我相信系统已经在使用多 CPU 内核:

[root@foobox ~]# uname -a
Linux box.foo.int 2.6.18-308.1.1.el5 #1 SMP Wed Mar 7 04:17:30 EST    
2012 i686 i686 i386 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

但是,如果我检查, /boot/grub/grub.conf 我看到:

default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-308.1.1.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-308.1.1.el5 ro root=LABEL=/ clocksource=tsc noapic nolapic
        initrd /initrd-2.6.18-308.1.1.el5.img
title CentOS (2.6.18-308.1.1.el5PAE)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-308.1.1.el5PAE ro root=LABEL=/ clocksource=tsc noapic nolapic
        initrd /initrd-2.6.18-308.1.1.el5PAE.img
title CentOS-base (2.6.18-308.1.1.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-308.1.1.el5 ro root=LABEL=/ …
Run Code Online (Sandbox Code Playgroud)

linux centos linux-kernel centos5

0
推荐指数
1
解决办法
2644
查看次数

打开 100 万个连接最高可达 469K

我需要配置服务器来处理超过一百万个打开的 websocket 连接(最好是两百万)。

我使用了这篇博文中的配置:

sysctl -w fs.file-max=12000500
sysctl -w fs.nr_open=20000500
ulimit -n 20000500
sysctl -w net.ipv4.tcp_mem='10000000 10000000 10000000'
sysctl -w net.ipv4.tcp_rmem='1024 4096 16384'
sysctl -w net.ipv4.tcp_wmem='1024 4096 16384'
sysctl -w net.core.rmem_max=16384
sysctl -w net.core.wmem_max=16384
Run Code Online (Sandbox Code Playgroud)

但是,我的应用程序在达到 469219 个连接后停止应用新连接。我错过了什么?我真的认为操作系统配置中缺少某些东西。我们的主要应用程序是用 Java 编写的(使用 Tomcat 服务器),但我使用 NodeJS 服务器也得到了非常相似的结果。

我们使用 16GB RAM 的 Ubuntu。

编辑:在高峰期系统使用大约 12Gb 的 14.7Gb。

更新

所以最后我有了 32GB 的工作站。通过增加 RAM 空间解决了问题。目前使用 18GB Java 堆,我能够处理 567K WS 连接。对于更高的数字,我需要更多的客户:-)

linux ubuntu connection linux-networking linux-kernel

0
推荐指数
1
解决办法
1133
查看次数

modprobe:致命:在目录中找不到模块 nf_conntrack_ipv4

任务 [kubernetes/节点:Modprobe nf_conntrack_ipv4] ********************************************* ********************************************** 致命:[节点1]:失败的!=> {“已更改”:false,“msg”:“modprobe:致命:在目录/lib/modules/5.4.0-91-generic\n中找不到模块nf_conntrack_ipv4”,“name”:“nf_conntrack_ipv4”,“params ": "", "rc": 1, "state": "present", "stderr": "modprobe: 致命: 在目录 /lib/modules/5.4.0-91-generic\n 中找不到模块 nf_conntrack_ipv4\n", "stderr_lines": ["modprobe: FATAL: 在目录 /lib/modules/5.4.0-91-generic 中找不到模块 nf_conntrack_ipv4"], "stdout": "", "stdout_lines": []} ...忽略致命:[节点2]:失败!=> {“已更改”:false,“msg”:“modprobe:致命:在目录/lib/modules/5.4.0-91-generic\n中找不到模块nf_conntrack_ipv4”,“name”:“nf_conntrack_ipv4”,“params ": "", "rc": 1, "state": "present", "stderr": "modprobe: 致命: 在目录 /lib/modules/5.4.0-91-generic\n 中找不到模块 nf_conntrack_ipv4\n", "stderr_lines": ["modprobe: FATAL: 在目录 /lib/modules/5.4.0-91-generic 中找不到模块 nf_conntrack_ipv4"], "stdout": "", "stdout_lines": []} ...忽略致命: [node3]: 失败!=> {“已更改”:false,“msg”:“modprobe:致命:在目录/lib/modules/5.4.0-91-generic\n中找不到模块nf_conntrack_ipv4”,“name”:“nf_conntrack_ipv4”,“params ": "", "rc": 1, "state": "present", "stderr": "modprobe: 致命: 在目录 /lib/modules/5.4.0-91-generic\n 中找不到模块 nf_conntrack_ipv4\n", “stderr_lines”:[“modprobe:致命:在目录/lib/modules/5.4.0-91-generic中找不到模块nf_conntrack_ipv4”],“stdout”:“”,“stdout_lines”:[]}

linux ubuntu linux-kernel kubernetes ubuntu-20.04

-2
推荐指数
1
解决办法
5705
查看次数

如何撤消rm -rf?

我们如何撤消 rm -rf 命令?例如,我有应用程序文件夹。我已经将其删除

rm -rf Application
Run Code Online (Sandbox Code Playgroud)

但这是我的错误,想要恢复或想要那个应用程序文件夹。但它不在垃圾箱文件夹中。我现在该怎么办 ?有没有命令undo rm -rf

linux ubuntu command-line-interface linux-kernel linuxmint

-5
推荐指数
1
解决办法
3068
查看次数