Articles of linux

将子域redirect到同一服务器的不同端口上的服务

我有一个拥有1个IP的VPS。 如果我运行两个套接字服务器,一个在端口8080,另一个在端口8081,有没有一种方法可以将service1.mydomain.com映射到端口8080上的套接字服务器,将service2.mydomain.com映射到端口8081上的套接字服务器? 我没有运行Web服务器,而是运行在8080端口上的websocket服务器和8081上的套接字服务器。 我之前看到过这个问题,但似乎总是关于Apache,我可以在其中编辑VirtialHosts文件。 由于我没有使用Apache,我不能这样做。 是否有可能做到这一点? 或者我将不得不继续使用mydomain.com:8080和mydomain.com:8081? 该服务器正在运行Debian 8。 谢谢

查找设备的IPv4广播地址

我需要使用shell脚本来确定设备的IPv4广播地址(如果有的话)。 如果有几个,请select一个(例如首先按/ sbin / ip命令)。 我有一个解决scheme,但我不喜欢它,因为它作出/ sbin / ip的输出格式的假设,我不知道如何稳定输出格式跨系统。 DEV=eth0 BROADCAST=`ip address show $DEV | grep 'inet .* brd ' | head -1 | sed -e 's/^.* brd \([0-9\.]*\) .*$/\1/'` echo $BROADCAST 在/ proc /或/ sys /中没有东西可以简单地使用猫吗? 为什么不? 我需要该解决scheme可靠地工作,至less在整个Debian / Ubuntu Linux系列中。 编辑:这不是一个关于sed / awk / grep魔术的问题。 问题是: 我可以期望跨越架构和Linux风格的ip ( ifconfig的事)具有相同的输出格式,这样我可以可靠地parsing,例如从它的接口的IPv4广播地址? 如果没有:是否有另一种方式以更可预测的方式输出接口的IPv4广播地址? 为什么没有/ proc / […]

尾巴,grep和计数在一个命令中find的实例?

我正在拖尾文件输出和grepping行与某些数据。 我不想将数据输出到屏幕上,而是计算它find的实例的数量并将其发送到屏幕。 实例的数量可以滚动和递增,也可以覆盖现有的,只显示它,因为它增加更高。 这部分并不重要,我只需要find一个运行的实例。 我现在的命令是 tail -f logfile | grep'我想要的数据' 我曾尝试使用grep -c和wc -l,但没有任何结果给我。 这个特定的Linux发行版没有PV,也无法获得它。 有什么办法可以做到这一点?

如何将日志文件输出redirect到networking套接字?

我正在使用商业Java应用程序,它使用log4j写入日志文件。 我想将这些日志文件条目放入系统日志,我们有特定的filter设置来触发系统事件。 Log4j没有直接将输出传递给系统日志的方法。 我运行的两个方法涉及黑客“catalina.sh”(无论是否需要;还没有查看)脚本,另一个是编译一个自定义的Java类与log4j接口。 看起来像一个更简单的解决scheme可能是将log4j输出文件符号链接到一个FIFO或pipe道,将发送内容到syslogd侦听networking端口(或可能是netcat)。 有关如何连线的想法?

在转发区中插入mxlogging

使用bind9将MXlogging添加到转发区域的正确方法(以及为什么)是什么? 选项A @ IN MX 10 mx1.example.com. @ IN MX 20 mx2.example.com. mx1.example.com. IN A abcd mx2.example.com. IN A abcd 选项B example.com. IN MX 10 mx1.example.com. example.com. IN MX 20 mx2.example.com. mx1.example.com. IN A abcd mx2.example.com. IN A abcd 还是有另一种select?

iptables的ip地址块被忽略?

在我们的服务器上运行top给我们 平均负载:68.67,63.48,60.30 我们怀疑这是来自太多的httpd连接。 运行: netstat -tun 2>/dev/null | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr 给我们(所有IP转换为私人地址): 418 176 192.168.1.1 41 192.168.1.2 8 192.168.1.3 5 192.168.1.4 5 192.168.1.5 4 192.168.1.6 2 192.168.1.7 2 192.168.1.8 2 192.168.1.9 2 127.0.0.1 1 servers) 1 Address 1 192.168.1.10 1 192.168.1.11 正如你可以看到192.168.1.1 (从广域网地址转换,就在这里),它似乎有176连接到我们的服务器。 […]

如何缩小原始虚拟机磁盘映像(kvm)的大小?

假设我有linux-vm-image.raw ,大小为10GB。 里面有一个主要的(使用类似MS-DOS的分区表,不是GPT) etx4分区(不使用LVM),扩展到整个卷。 而在该分区上分配的实际数据例如是3GB。 该映像准备用于某些虚拟化环境(在我的情况下为kvm + OpenStack),并且根据用户的select,从该映像创build的所有虚拟机都将调整自己的大小以指向虚拟磁盘大小。 所以没有理由在磁盘映像中保留任何空闲的磁盘空间。 我怎么能把这个原始磁盘映像的大小缩小到最小(从10GB到〜3GB)? 有一些 qcow2磁盘映像的说明,但我只能使用raw映像 – 不是qcow ,而不是OVF而不是其他。 我的猜测是有点像 将此映像作为块设备挂载到某个位置 做一些维护,让ext4分区内的所有文件移动到“开始”,换句话说 – 做一个自由空间碎片整理 卸载图像 将文件系统的大小缩小为图像(以匹配其内部数据的大小) 缩小图像大小(以匹配其内部文件系统的大小) 将分区表更新为映像以匹配新的分区大小 但是我不试着发明一辆自行车吗? 是否有一些单行命令或特殊软件来做我想要的?

负载均衡器安装在数据库服务器虚拟机

我有一个简单的我的站点布局,一个负载均衡器坐在3个应用程序服务器的前面,请求数据库。 我有4个虚拟机可用,3个虚拟机用于3个应用程序服务器,以及一个虚拟机用于数据库。 将负载平衡器安装在与数据库相同的VM上是否明智? 或者它应该在一个完全分离的虚拟机? 问题与成本有关。

PHP升级失败,CentOS 6.7

系统信息 操作系统 CentOS Linux 6.7 在x86_64上的内核和CPU Linux 2.6.32-042stab108.1 yum repolist enabled 只有我手动添加的 基地 – CentOS-6 – 基础epel – 用于Enterprise Linux 6的额外软件包 – x86_64 额外 – CentOS-6 – 其他 ius – 适用于Enterprise Linux 6的IUS社区软件包 – x86_64 mod-pagespeed – mod-pagespeed remi-safe – 用于Enterprise Linux 6的安全Remi的RPM存储库 – x86_64 rhscl-php55-epel-6-x86_64 – PHP 5.5.21 – epel-6-x86_64更新 – CentOS-6 – 更新 […]

为什么用chattr + a删除目录内容?

在一个ext4文件系统上,我有一个base目录,它本身有三个airs, b和c ,每个目录里面有不同的内容。 我设置了chattr +a base ,然后执行rm -r base 。 然后我发现a , b , c还在那儿。 尼斯。 然后我发现他们都变得空虚了。 我哭了。 发生了什么?