Articles of linux

如何在centos中禁止usbdisk?

在胜利,我们可以使用组策略,但是我的公司使用centos6.5 destop作为os。 我的老板想避免信息泄漏。 那么,有没有办法在centos中禁止usbdisk?

NFS家用于多台计算机

我在这里要问一些花费我很多时间的东西,现在我不知道如何继续下去,这是一个非常大的社区。 那么问题是我正在为学校和大学做一个分布式的Linux系统,它从Apache服务器获取SquashFS,通过TFTP加载initrd和内核,当它启动时,它将所有系统加载到RAM中。 这个想法是尽可能的安全,当计算机closures时,系统的所有数据都是干净的,但问题是与主文件夹… 主文件夹是在一个NFS服务器,我试图为每个用户做不同的文件夹,使用计算机的MAC地址在NFS服务器中创build一个文件夹并连接到它,但我不知道如何在启动时传递MAC地址以在第一次创build文件夹,并且如果该MAC的主文件夹存在,则连接到它,使用fstab就像现在使用用户validation文件夹一样。 提前致谢!

Apache – 高可用性

我正在寻找一种方法来将Apache设置为高可用性。 这个想法是有一个服务于相同网站的2个Apache服务器集群。 我可以使用循环DNS设置每台服务器的IP地址,以便将每个请求随机发送到群集中的一台服务器(我不太在意负载平衡,尽pipe可能会出现这种情况稍后播放)。 我已经build立并使用了多个Apache VM服务器(分布在多个物理服务器上)服务于网站,并且使用循环DNS,并且工作正常。 SQL数据库是在高可用性集群中使用MariaDB设置的,Web数据(HTML,JS,PHP脚本,图像,其他资源)存储在LizardFS中,会话也存储在共享位置。 这一切都运行良好,直到群集中的某个服务器因为任何原因而变得不可访问。 然后,一个百分比的请求(大致上是服务器被closures的次数除以集群中的服务器总数)是没有答案的。 以下是我考虑的选项: 自动DNS更新 有一些过程来监视Web服务器的function,并从DNS中删除任何closures的服务器。 这有两个问题: 首先,尽pipe我们可以将TTL设置为一些非常低的数字(比如5秒),但是我听说less数DNS服务器会强制实现比我们更高的TTL。 而且,有些浏览器(即Chrome)会将DNScaching不less于60秒,而不pipeTTL设置如何。 所以,即使我们做得好,在DNS更新的情况下,一些客户可能无法访问站点一段时间。 其次,监控集群function的程序 并更新DNSlogging成为新的单点故障。 我们 可以通过将多个监视器分布在多个监视器上来解决这个问题 系统,因为如果他们都检测到问题,他们都做出相同的DNS更改,那么不应该导致任何问题。 uCarp /心跳 使被访问的IP地址在循环DNS虚拟中,并且在服务器closures的情况下将它们重新分配给从服务器中断下来的服务器。 例如,server1的VIP是192.168.0.101,server2的VIP是192.168.0.102。 如果server1发生故障,则192.168.1.102将成为server2上的附加IP。 这有两个问题: 首先,就我所知,uCarp / Heartbeat特别监视对等设备,以便无法访问,例如,如果对等设备无法被ping通。 当这种情况发生时,它接pipe被击落的对等体的IP。 这是一个问题,因为Web服务器可能无法为请求提供服务的原因更多,而不仅仅是在networking上不可访问。 Apache可能已经崩溃,可能存在configuration错误或其他原因。 我想要的标准是“服务器不按要求提供页面”,而不是“服务器不能ping通”。 我不认为我可以在uCarp / Heartbeat中定义。 其次,跨数据中心不起作用,因为跨数据中心的每组服务器都有不同的IP地址块。 我不能在数据中心之间有一个虚拟IP浮动。 跨数据中心运行的要求(是的,我的分布式文件系统和数据库集群可以跨数据中心使用)不是必需的,但是这将是一个很好的补充。 题 那么,关于如何处理这个问题的任何想法? 基本上,高可用性的圣杯:没有单点故障(无论是在服务器,负载平衡器还是数据中心),并且在切换时几乎不存在停机时间。

如何在/ etc / hosts中确定优先级?

由于在这里详细说明的原因,我尝试了将一个域的两个条目添加到CentOS-7服务器上的/etc/hosts文件中。 为了使一个软件能够愉快地运行,需要有一个条目: 192.168.1.z otherserver 但是,我真的希望该域名parsing为不同的IP: 10.wxy otherserver 我的理解(备份类似的问题,例如分配多个IP到主机文件中的1条目 )是第一个匹配的条目将被使用。 所以这个文件: 192.168.1.z otherserver 10.wxy otherserver 应该导致域名parsing为192.168.1.z ; 而这个文件: 10.wxy otherserver 192.168.1.z otherserver 应该导致它parsing为10.wxy 。 但是,无论我使用什么命令(以及添加的许多重复条目),域总是会parsing为192.168.1.z除非我完全删除该条目。 那么是否有任何方法可以包含这两行,但确保10.wxy优先?

为什么不在Linux上运行.htaccess规则(ubuntu 14.04)

我已经从运行WAMP的Windows机器上复制了一个站点到一个带有标准LAMP栈的Linux机器上。 除了.htaccess中的规则之外,一切工作都很好。 我已经确认.htaccess正在testing一个简单的规则,所以我知道它与Apacheconfiguration无关。 这些规则在我的Windows机器上工作得非常好。 这里是我的.htaccess文件规则的一个副本。 RewriteRule ^admin/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/$ index.php?admin=1&class=$1&id=$2&method=$3 [L,QSA] RewriteRule ^admin/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/$ index.php?admin=1&class=$1&method=$2 [L,QSA] RewriteRule ^(.*)/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/$ index.php?class=$1&id=$2&method=$3 [L,QSA] RewriteRule ^admin/([A-Za-z0-9-]+)/$ index.php?admin=1&class=$1 [L,QSA] RewriteRule ^(.*)/([A-Za-z0-9-]+)/$ index.php?class=$1&method=$2 [L,QSA] RewriteRule ^download/([A-Za-z0-9-]+.*) index.php?class=downloads&method=download&target=$1 [L,QSA] RewriteRule ^stream/([A-Za-z0-9-+]+.*) index.php?class=downloads&method=download&target=$1 [L,QSA] RewriteRule ^(.*)/$ index.php?class=$1 [L,QSA] 有什么理由为什么这些不会在Linux上工作。 编辑: 我请求的URL是http://domain.com/access所以我创build了这个规则RewriteRule access index.php?class=access它的工作。

Dockerfile中的“ip route”命令生成错误

我创build一个像这样的Docker容器: $sudo docker build -t "logstash-collector" ~/logging/logstash/ $sudo docker run -d \ –user=root \ –name="logstash-collector-01" \ –net=logging \ –cap-add=NET_ADMIN \ logstash-collector 从那里我可以改变它的默认网关到一个nginx容器(为了透明的负载平衡): $sudo docker exec -it logstash-collector-01 ip route delete default $sudo docker exec -it logstash-collector-01 ip route add default via 172.18.0.10 它的工作,一切都很好: $sudo docker exec -it logstash-collector-01 ip route default via 172.18.0.10 dev eth0 […]

删除systemd未find的服务

我的服务器显示多个丢失的服务 我怎样才能从Systemd中删除它们? 他们没有被发现。 systemctl -a显示:多个未find systemctl reset-failed显示:仍然显示 这些(它们都不在/ etc / systemd /或/ lib / systemd中): exim4.service – 我使用后缀,我从来没有安装 apache2.service – 我使用nginx 谢谢!

我如何知道是否需要运行systemctl守护进程重新加载

有没有办法知道当前运行的configuration是否过时? 有没有办法查看当前正在运行的configuration并将其与文件进行比较? 在运行重装之前,知道运行configuration是什么是非常有用的。 如果该命令会告诉我它是否实际更新了configuration,这也很有价值。

禁用所有节点上的透明页面?

我将mongo基础结构从2.6升级到3.0(到3.4),当我通过本地mongo客户端login到第二个时,我看到一个关于透明巨大页面的警告。 经过一番研究,我决定实施他们的build议。 我要伪装init.d脚本mongobuild议在mongo服务器上禁用THP,但是后来我开始思考,是否应该禁用所有节点? 在其他节点(nginx,nfs)上禁用THP是否有任何退化?

什么是Grub-install实际上在做什么?

我有一个客户端意外地把他们的一个Linux系统的分区表从DOS转换到了GPT。 不幸的是,GRUB版本是2,系统没有BIOS引导分区来存放额外的引导加载程序代码。 然后使用以下步骤来解决它: 将BIOS启动分区添加到启动磁盘。 重新安装磁盘的grub应用程序。 之后,系统现在可以正常启动。 有一点,我不明白,请帮助。 我第一次尝试添加一个BIOS启动分区到引导磁盘,但系统也没有工作。 一旦GRUB重新安装,它可以启动… 请问有人重新安装是否需要将部分GRUB 2代码存储到BIOS引导分区中? 谢谢。