当我创建一个虚拟网络接口然后将其启动时,它显示处于 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)
更新:
所以看起来这并没有使接口无法操作。经过一些奴隶谷歌搜索后,我发现了 …
主要来自 Windows 背景,在我看来,在 Linux 中更新内核与在 Windows 中修补操作系统本质上是相同的想法。
是这种情况吗?有什么共同点和不同点?
我想阻止一切EXCEPT SSH / FTP / HTTP /字尾和MySQL。
“一切”是指所有其他端口、阻止 ping 等。
我对管理 Linux 和 NFS 有点陌生,所以请耐心等待。
我们正在尝试在工作中设置一个小集群。目前系统只有2台DELL高端工作站,运行CentOS 6.5。为了更轻松地管理用户和文件,我们决定通过 NFS 共享 /home 目录和 /etc 中的四个文件(passwd、group、shadow和gshadow(这是通过将它们移动到一个子目录,并使用链接将它们放回 /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 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 如何在不同的微处理器上运行?每次安装时都会编译Linux内核吗?
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) 我需要配置服务器来处理超过一百万个打开的 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 连接。对于更高的数字,我需要更多的客户:-)
任务 [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”:[]}
我们如何撤消 rm -rf 命令?例如,我有应用程序文件夹。我已经将其删除
rm -rf Application
Run Code Online (Sandbox Code Playgroud)
但这是我的错误,想要恢复或想要那个应用程序文件夹。但它不在垃圾箱文件夹中。我现在该怎么办 ?有没有命令undo rm -rf
linux ×10
linux-kernel ×10
ubuntu ×4
kernel ×3
centos ×1
centos5 ×1
connection ×1
debian ×1
iptables ×1
kubernetes ×1
linuxmint ×1
networking ×1
nfs ×1
ubuntu-20.04 ×1