小编Dan*_*der的帖子

在 Bash 中,通配符扩展是否保证有序?

Bash 中通配符的扩展是否保证按字母顺序排列?我被迫将一个大文件分成 10 Mb 的部分,以便我的 Mercurial 存储库可以接受它们。

所以我想我可以使用:

split -b 10485760 Big.file BigFilePiece.
Run Code Online (Sandbox Code Playgroud)

然后代替:

cat BigFile | bigFileProcessor
Run Code Online (Sandbox Code Playgroud)

我可以:

cat BigFilePiece.* | bigFileProcessor
Run Code Online (Sandbox Code Playgroud)

在它的位置。

但是,我找不到任何可以保证星号(又名通配符,又名*)的扩展始终按字母顺序排列的任何地方,因此.aa出现在之前.ab(而不是时间戳顺序或类似的东西)。

另外,我的计划有什么缺陷吗?cat将文件放在一起的性能成本有多大?

files bash wildcard large-data

65
推荐指数
2
解决办法
2万
查看次数

iptables 数据包根据来源转发到两个网关之一

鉴于以下安装:

old router  192.168.1.1     with NAT forward of tcp port 80 to 192.168.1.10:80
new router  192.168.1.2     with NAT forward of tcp port 80 to 192.168.1.10:80
web server  192.168.1.10    with default gateway 192.168.1.1
Run Code Online (Sandbox Code Playgroud)

目前,我的服务的 DNS 条目指向旧路由器的外部地址。路由器将流量端口转发到 Web 服务器,Web 服务器将响应返回给旧网关。

为了无缝迁移到新路由器(使用另一个外部 IP),我想先设置一个新路由器,在两个连接都处于活动状态的情况下测试整个过程,然后将 DNS IP 更改为新的外部地址。

现在,通过上述设置,旧路由器仍然可以工作。但是寻址到新路由器的 tcp 连接也会响应无法处理它们的旧路由器。

我想过将 nat 与伪装一起使用,但随后所有发送到新路由器的流量看起来都像本地流量。这会欺骗基于服务器 ip 的过滤器和日志记录。

现在,我的计划是使用带有 Debian 和 iptables 的辅助 PC 作为临时解决方案:

old router  192.168.1.1     with NAT forward of tcp port 80 to 192.168.1.10:80
new router  192.168.1.2     with NAT forward of tcp port 80 …
Run Code Online (Sandbox Code Playgroud)

routing iptables port-forwarding

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

在 Zabbix 被动检查中提交 NULL 值

最近我在 Zabbix 中配置了一些被动检查。现在,我看到一些检查在某些时间段内失败了,但是在查看图表时并不清楚。上周该值似乎稳定,但实际性能下降,没有人意识到这一点。

有没有办法将 NULL 发送到 Zabbix 以指示数据获取失败?并为这种情况添加触发器?我目前正在使用命令行工具zabbix_sender上传结果,但可以更改为替代方法。

相比之下,munin 在收到最后一个值后 10 分钟停止绘图,缺失值也不影响平均值的计算。

在这里您可以看到“缺失数据”的显示方式:

在图表中(我标记了“缺失数据”): 在此处输入图片说明

在“上次数据”表中(该行变灰,但值“上次检查”几乎显示当前时间) 在此处输入图片说明

顺便说一句:同样的问题在icmppingsec[]检查中,如果出现错误,它只会返回 0。对绘图不是很有帮助,但至少这避免了假阴性。

passive graph zabbix

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