Articles of linux

Linux:允许/限制用户的IP绑定权限

我在运行多个IP地址的RHEL(CentOS 6.3)上运行一台专用的机器。 多个用户也可以访问非超级用户帐户上的计算机。 我想阻止他们绑定到某些地址。 我知道Linux可以限制非root用户使用的端口,就像目前为小于或等于1024的端口所做的那样。如果我想阻止访问某个特定的IP地址(如0.0.0.0 )或范围(如127.0.0.0/8 ,这样做是可能的,如果是这样,那么怎么做呢? 或者相反,我将如何拒绝所有访问绑定到任何IP地址,并授予访问个人地址由用户?

内存使用率很高,但没有被任何进程声明?

在我们的Debian服务器上对LVM进行压力testing的时候,我遇到了这个问题,内存会占用大量内存,但是没有任何进程需要内存。 请参阅http://i.imgur.com/cLn5ZHS.png ,并参阅https://serverfault.com/a/449102/125894了解htop中使用的颜色。 为什么发生这种情况? 有没有什么办法可以看到什么进程正在使用内存? Htopconfiguration为不隐藏任何进程,那么htop缺失的是什么? 在这个特殊情况下,我可以肯定地说,这是由lvmcreate,lvmremove或dmsetup直接或间接造成的,因为我正在进行压力testing。 请注意,这个问题不是解决LVM问题,而是解释为什么内存不被任何进程所要求。 停止所有LVM命令确实将内存降低到<600MB。 free -m输出: total used free shared buffers cached Mem: 32153 31958 194 0 52 3830 -/+ buffers/cache: 28075 4077 Swap: 975 0 975 顶部,由于它的长度在pastebin的输出: http : //pastebin.com/WchrpF7W

现场Linux监控电子邮件处理

是否有一个应用程序可以将所有的邮件处理步骤从连接链接到交付,从而显示整个过程和决策的实际情况? 我知道可以使用tail -f /var/log/mail.log,但是当连接和内部步骤(客户端授权,收件人授权,中继,反弹等等)变成大量的时候,这个日志会变得相当耗时,消耗和容易缺less步骤。 我在想有点像“顶”,但电子邮件。 例如 从1.2.3.4连接 客户端拒绝/接受,邮件来自,到 收件人地址已validation/退回 政策检查,反垃圾邮件,防病毒。 转达/传递给… 然后可以像顶部一样显示: CONNECT FROM TO POLICY DELIVERY RESULT example.com [1.2.3.4] [email protected] [email protected] OK Maildir 2.5.0 OK spam.com [1.2.4.5] [email protected] [email protected] SBL Fail Reject 5.7.1 Deny 1.2.4.6 NO_FQDN Reject 4.7.1 Retry (不要过分简化) 此外,这可以用来build立/存储邮件接受/拒绝的统计数据,这可以反过来用来发现意外的错误configuration。 有没有人看过像这样的东西?

以最小的数据重复存储多个版本的大型二进制文件(最好是Linux)

我需要在具有本地存储的Linux服务器上存储〜150 GB二进制文件(qcow2)的多个版本,并且希望有一些解决scheme,只需保留可根据需要合并的差异,以便不必创build另一个当只有4Gigs改变时,一个150GB文件的副本。 这是一个存储问题,而不是关于KVM / qcow2特定function的问题。 我已经探讨了其中的一些select。 目前使用CentOS 6.3和EXT4。 这些文件需要无限期存储,并且在恢复时必须完整无缺。 我愿意改变文件系统等,如果一个解决scheme是值得的。

LACP有2个网卡,当任何一个出现故障时,两个网卡都不能运行

我遇到了使LACP主干在Ubuntu 12.04.2 LTS上正常运行的问题。 我的设置是一个主机连接两个10Gbe接口到两个独立的Nexus 5548交换机,configurationvPC以启用多机箱LACP。 Nexus的configuration是根据思科的指导方针,Ubuntu的configuration按照https://help.ubuntu.com/community/UbuntuBonding 服务器连接到每个Nexus交换机上的端口Ethernet1 / 7,端口configuration完全相同,位于端口通道15中。端口通道15configuration为VPC 15,VPC输出看起来不错。 这些是简单的接入端口,即没有涉及801.1q中继。 图: +———-+ +———-+ +———-+ +———-+ | client 1 |——| nexus 1 |——| nexus 2 |——| client 2 | +———-+ +———-+ +———-+ +———-+ | | | +——–+ | +—-| server |—-+ eth4 +——–+ eth5 当任一链路断开时,客户端1和2都能够到达服务器。 但是,当我将辅助链路接通时,与新启用的链路连接的交换机无法到达服务器。 有关状态转换和结果,请参阅下表: port states (down by means of "shutdown") nexus […]

AWS Linux EC2:yum不会运行插件

简短版本:我的Amazon Linux EC2 AMI上的yum命令仅适用于–noplugins 。 长的版本:几天前,我运行在SSHloginMoTD的遗产yum update告诉我我有更新安装。 关于更新的中途(特别是在更新内核时),更新突然结束(138个项目中的79个已完成)。 我在EC2上主持的网站有几分钟的怪异,但最终似乎稳定了(也许EC2重新启动了自己?),我没有进一步的问题(除了MySQL开始内存不足,但我认为这是可能与此无关)。 今天,我去安装gcc-c ++(用yum install gcc-c++ )。 当我这样做时,我收到以下消息: 加载的插件:优先级,安全性,更新motd,升级帮手configuration错误:命令“updateinfo”已经定义 我可以认为我可以使用yum来运行任何命令。 但是,如果我抛出–noplugins标志,那么神奇的是它似乎工作。 要清楚的是,当我一个星期前安装了一个不同的软件包时,它的工作是完全正确的,所以yum update是我能想到的唯一改变。 我在Google上找不到任何"updateinfo" already defined (有和没有引号)。 我试着运行yum update –noplugins ,吐出一条消息,告诉我应该运行yum-complete-transaction ,而是继续尝试更新自己的东西。 当完成时,我尝试了yum-complete-transaction但是这给了我一个关于事务没有正确排队的消息,所以它删除了旧的事务(可能因为我应该在尝试再次更新之前完成了第一个事务,如果我有已知的)。 基于SF的问题“ Linux的EC2碎百胜 ”,我也试过yum clean all –noplugins (失败与插件相同),只是给我 清理仓库:amzn-main amzn-updates rpmforge 清理一切 我也试过了 package-cleanup –problems 加载的插件:优先级,更新motd,升级帮手 没有发现问题 和 package-cleanup –dupes 给了很多模糊,所以我把它们粘贴在这里: http : //pastebin.com/VVFQEkTT而不是内联。 在这一点上,我不知道还有什么要检查。

grep不一致默认为grep -P?

我有一个脚本,当从交互式shell调用时,它可以完美地工作,但是在被cron调用时什么也不做。 为了解决这个问题,我使用以下命令启动了一个带有“空白”环境的shell: env -i /bin/bash –noprofile –norc 使用这个空白的env我挖了我的脚本,发现下面的grep将不匹配任何文件: grep -il "^ws_status\s*=\s*[\"']remove[\"']$" 但是,从交互式shell运行时,该命令将返回匹配文件的文件名。 注意,expression式是匹配的行如: WS_STATUS = "remove" 通过反复试验,我发现在选项[Perl regex]中join-P ,命令开始在'空白'shell中正常工作。 但是,我不知道为什么我的loginshell似乎默认为grep -P 。 只有一个grep二进制文件/bin/grep 没有为grep=pgrep或grep="grep -P"定义别名 没有定义envvariablesGREP_OPTIONS 。 这里的交易是什么? 注意:OS是RHEL v5.10,Bash是v3.2.25,grep是v2.5.1

在Hyper-V(VHDX)中的Linux guest虚拟机上优化XFS

在我们公司,我们使用Hyper-V(Windows Server 2012)pipe理程序和VM来在我们的数据中心中组织我们的公司内服务。 我应该为我们的主数据库(Postgresql)设置Ubuntu 12.04 LTS来宾。 我的系统pipe理员给了我一个SSH连接做虚拟机(Ubuntu已经在那里)。 磁盘是可dynamicresize的VHDX文件。 XFS文件系统有很多创build和安装选项。 我已经阅读了大量有关XFS可能性的资料,但是它们基本上是所谓的裸机准则(取决于RAID和磁盘参数以及物理布局)。 我不知道哪一个与我有关。 特别是有两件事困扰我: 在VM环境中分区alignment是否重要? 我应该问我的系统pipe理员关于物理RAID参数(磁盘数量,条带大小)? 并根据他们设置我的XFS? 分配组(AG)和xfs并行I / Ofunction 。 就我所理解的概念而言:我们将文件系统分为两部分,FS可以尝试执行两个并行的写入,如果它们进入两个不同的AG。 我真的可以实现dynamicresize的VHDXs,因为它不是真正的空间分割的物理设备? 由于虚拟化,我认为它真的是云计算。 我没有任何保证VHDX驻留的地方,还有多长时间(这是我的pipe理程序pipe理员的工作)。 所以,在Hyper-V环境下为DB设置存储空间时,也许我完全在看错误的问题? 如果是这样,你可以请我推荐我应该检查的主题

WMI:wmic linux代理查询错误:NTSTATUS:NT_STATUS_ACCESS_DENIED

我自己新的wmic,并继续与默认的代理查询方法很长一段时间的尝试。 wmic是基于Linux的WMI工具,可以与Windows WMI代理交谈。 在尝试从nt(运行WMI服务的win7)获取wmic的数据时,它显示所有情况下拒绝访问。 问题是可能的原因是什么,防火墙端口,WMI组,文件或用户权限还是其他? 任何types的提示都将非常有帮助。 [root@rhel6 wmic]# wmic -U nt-login-name% //nt-primary-ip "select caption, name, parentprocessid, processid from win32_process" [librpc/rpc/dcerpc_util.c:1290:dcerpc_pipe_auth_recv()] Failed to bind to uuid 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57 – NT_STATUS_NET_WRITE_FAULT [librpc/rpc/dcerpc_connect.c:790:dcerpc_pipe_connect_b_recv()] failed NT status (c0000022) in dcerpc_pipe_connect_b_recv [wmi/wmic.c:196:main()] ERROR: Login to remote object. NTSTATUS: NT_STATUS_ACCESS_DENIED – Access denied

iozone:5个并发线程随机读取300K块比只使用一个线程做更多的操作,可能是什么原因?

该分区使用软件RAID在RAID1中。 Command line used: iozone -s 190g -r 300k -O -b test_file OPS Mode. Output is in operations per second. random random bkwd record stride KB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 199229440 300 240 234 254 253 58 127 100 6539 91 234 234 254 254 […]