Articles of linux

在具有不可预测的能力的情况下,Linux MD RAID的弹性

如果您因为不能控制的原因而必须使用RAID,并且RAID服务器可能没有进行电池备份, 并且该build筑物容易断电,那么您可以做些什么来使RAID在力量立即死亡的情况下更有弹性? 这种情况听起来很有意思,但实际上我现在正处于这种情况,因为我不能进去。 Linux软件RAID支持的任何特定的RAID规范是否比任何其他RAID规范更具弹性处理电力损失,或者是否有任何RAIDconfiguration参数在这里可能会有所帮助? 例如,RAID 10比掉RAID 5或RAID 6等基于奇偶校验的RAIDconfiguration更容易丢失。 另外,有没有RAIDconfiguration设置,试图处理没有一个很好的硬件RAID BBUcaching写入的现实?

启动失败,根目录MD(RAID1)+ LVM:udev事件时序

全新安装的Ubuntu Server 13.10(x64)从位于md + lvm的根卷启动时遇到问题。 现在我已经扼杀了一个解决scheme,但我想更多地了解正在发生的事情以及可能会有哪些更好的解决scheme。 由于这台机器的目的是为了试验Xen(为了更好地理解商用虚拟机托pipe),该机器是由我必须交付的零件组装而成的,特别是:Q6600 + Asus P5QL Pro,1 TB和500 GB SATA光盘(虽然500 GB的光盘在其他地方仍在使用,但稍后会添加。) 1TB光盘有三个分区:sda1与500 GB光盘上的sdb1大小相同,sda2交换,余额为sda3。 md0是由sda1 + sdb1组成的RAID1卷[1],是LVM可用的一个PV。 Ubuntu安装在这个VG(vg_mir)的两个LV(dom0_root和dom0_homes)中,而/ boot则位于dom0_root中。 具体问题在光盘初始化后立即显示以下消息: kernel: [ 3.003506] md: bind<sda1> kernel: [ 3.007705] md/raid1:md0: active with 1 out of 1 mirrors kernel: [ 3.007768] md0: detected capacity change from 0 to 499972440064 kernel: [ 3.047284] md0: unknown […]

在Linux中,如何在启动时根据其IPv4地址自动分配IPv6地址?

在CentOS 6机器上,我有一个服务器有2个网卡,eth0和eth1。 eth0的地址是192.168.0.1。 我想创build一个脚本来分析eth0的IP地址,并在启动的时候为eth1分配一个类似的IPv6地址。 在这种情况下,我想eth1有地址fc00 :: 192:168:0:1/64。 我知道,为了分配这个地址,我必须运行命令 ip address add fc00::192:168:0:1/64 dev eth1 不过,我试图find一种方法来计算基于eth0的IP分配给eth1的IP,并让此脚本在启动时运行。 我这样做的原因,而不是静态分配给这两个接口的地址是我试图把这个服务器变成一个虚拟机模板,并自动部署它与新的IP设置。 不幸的是,我正在使用的工具并没有真正支持IPv6。 所以我想我的问题有两个部分: 如何计算要分配的IPv6地址? 如何在启动时计算并分配给eth1这个地址?

调整用作VMWare NFS数据存储的卷的大小会导致Linux VM问题

我们必须对我们的Netapp上使用的NFS数据存储VMWare使用的实时卷大小进行调整。 所有我们的Windows虚拟机在resize后都很好。 但是,我们的一些Linux VM有问题。 一些Linux VM停止响应。 重新启动这些虚拟机后,我找不到任何指示问题的日志。 但是我在某些虚拟机上find了这样的日志消息: May 29 14:56:02 rhel6-server-1314 kernel: INFO: task jbd2/dm-0-8:382 blocked for more than 120 seconds. May 29 14:56:02 rhel6-server-1314 kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. May 29 14:56:02 rhel6-server-1314 kernel: jbd2/dm-0-8 D 0000000000000000 0 382 2 0x00000000 May 29 14:56:02 rhel6-server-1314 kernel: ffff880037ce9c20 0000000000000046 ffff880037ce9be0 ffffffffa00041fc […]

错误:iptables:没有链/目标/匹配的名称

我正在尝试使用Squid和iptables在RHEL Server 6.5上configuration代理服务器。 以下是我执行的命令和显示的错误消息: vzlptest01 root [root] > iptables -A INPUT -i eth0 -m state –state ESTABLISHED,RELATED -j ACCEPT iptables: No chain/target/match by that name. 一些更多细节: vzlptest01 root [root] > cat /proc/net/ip_tables_matches limit state length ttl tcpmss multiport multiport tos tos dscp icmp udplite udp tcp vzlptest01 root [root] > cat /proc/net/ip_tables_targets DNAT SNAT LOG […]

CVE-2014-0196 CentOS漏洞

尝试修补CVE-2014-0196漏洞,但yum找不到软件包更新 CentOS 6.5(最终)面板版本:11.0.9更新#61 # uname -r 2.6.32-358.11.1.el6.x86_64 # yum update kernel Loaded plugins: fastestmirror Determining fastest mirrors epel/metalink | 23 kB 00:00 epel: mirror.fraunhofer.de base | 3.7 kB 00:00 epel | 4.4 kB 00:00 epel/primary_db | 6.2 MB 00:00 extras | 3.4 kB 00:00 updates | 3.4 kB 00:00 updates/primary_db | 3.7 MB 00:00 Setting […]

设置IPTables

我试图从我们的产品中删除路由器,并使用iptablesreplace所有function。 系统需要执行一般的stream量控制以及将数据转发到局域网后面的特定服务器。 当前设置是 – eth0 – 外部 eth1 – 内部 eth2 – 内部 eth3 – 内部 eth0通过DHCP获取IP。 eth1,eth2和eth3构成一个具有10.0.1.1静态地址的网桥(br0)的一部分。 有一个服务器坐在10.0.1.2谁需要服务器的HTTP和MySQLstream量。 无法保证将服务器插入(eth1 / 2/3)但IP是静态的。 我试图设置iptables规则,这似乎很容易跟随只有一个eth设备,但是当需要转发的时候,我被捆绑在一起。 这是我迄今为止所尝试的: # clear and flush everything iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -t raw -F iptables -t […]

drbd服务无法启动/ WFConnection

我最近把我的drbd设置从Ubutnu迁移到了centos 7,我得到了一个奇怪的错误: 我可以正常地加载和卸载模块,整个事情似乎工作 #>modprobe drbd #>lsmod | grep drbd drbd 373504 2 … 我现在可以发出drbdadm up drbdres命令,查看资源的状态,似乎一切正在运行。 我也可以卸载模块 #>rmmod drbd #>lsmod | grep drbd #>drbdadm cstate all 0: Failure: (127) Device minor not allocated … #> lsmod | grep drbd drbd 373504 2 … 所以我可以加载模块,drbdadm能够加载它,但不提供任何资源,而文档声称init脚本会这样做,所以drbd显然不会以这种方式初始化模块。 正常情况下,在/etc/init.d/drbd init脚本启动时,/etc/drbd.conf中configuration的所有资源都会自动启用。 (来源: http : //www.drbd.org/users-guide-8.3/s-enable-disable.html ) 如果我尝试运行init.d脚本,我得到一个奇怪的错误: #>/etc/init.d/drbd start script […]

rsync很多带有长文件名的小文件需要很多的带宽

我有一个文件存储服务器,它使用文件sha256散列作为文件名,连同文件扩展名,以及三级目录,例如带有sha256散列的PDF文件,将文件存储在AABB1F1C6FC86DB2DCA6FB0167DE8CF7288798271EA24B68D857CBC5CF8DC66A将存储在如下所示的子目录中: <root>/AA/BB/AABB1F1C6FC86DB2DCA6FB0167DE8CF7288798271EA24B68D857CBC5CF8DC66A.pdf 文件将被添加到目录结构中,但不会被删除或修改。 我使用每10分钟运行一次的使用rsync将文件推送到远程服务器的cron作业来保存此文件结构的实时副本。 由于文件一旦添加就不会被删除或更改,实际上只会发送新文件。 我发现rsync用于比较两个目录(即没有变化)的带宽大约是11 MB,随着文件总数的增加(此时为148 207)。 这是有道理的 – rsync实际上必须发送一个所有的文件名列表到远程服务器,以找出远程服务器上缺less的。 所以我的问题是: 有没有办法减less使用的带宽? 它不一定是一个基于rsync的解决scheme,但它会更好。 我正在考虑将rsync查看的文件限制为最近修改的文件,即在上次同步之后进行了修改,但似乎并不推荐: rsync只是在date和时间之后创build或修改的文件 还有其他build议吗?

可能通过KerberosvalidationSamba,但没有域join?

使用Kerberosconfiguration文件… [realms] DOMAIN.COM = { kdc = dc1.domain.com admin_server = dc1.domain.com } … Linux可能会与Active Directory进行密码validation,而不必是AD域成员: $ kinit jdoe Password for [email protected]: $ klist Ticket cache: FILE:/tmp/krb5cc_0 Default principal: [email protected] Valid starting Expires Service principal 01/12/15 15:36:16 01/13/15 01:36:25 krbtgt/[email protected] renew until 01/19/15 15:36:16 此时,您可以使用PAM在/ etc / passwd中定义本地Linux用户,但通过Active Directoryvalidation其TTY会话。 通过krb5的Authn是作为每个login上下文完成的: auth sufficient pam_krb5.so use_first_pass 但是,如果krb5已经作为PAM全局默认值的一部分来实现,那么为什么Samba也没有select呢? 我看到/etc/pam.d/samba包含了Kerberized […]