Articles of linux

为什么htop显示430%的CPU?

我很困惑这个multithreading程序的CPU%值。 430%是所有线程的总和吗? 如果是这样,我怎么找出主线程本身的CPU%(1776)? PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command 1776 forge 20 0 4686M 101M 10616 R 430. 0.6 2:03.66 /srv/backend/backend –conf-file /srv/backend/join.conf 1892 forge 20 0 4686M 101M 10616 R 9.9 0.6 0:00.85 /srv/backend/backend –conf-file /srv/backend/join.conf 1895 forge 20 0 4686M 101M 10616 R 7.9 0.6 0:00.83 /srv/backend/backend […]

文件系统设置为只读模式,哪个驱动器有问题?

我今天醒来发现我的CentOS服务器的文件系统已经设置为只读模式。 我正在这台服务器上运行RAID 1。 # mkdir test mkdir: cannot create directory `test': Read-only file system 我做了一些研究,发现这通常是由硬件问题引起的,即硬盘即将失效。 我如何确定这是硬件问题而不是软件问题? 如果是硬件问题:如何找出两个驱动器中哪一个发生故障,需要更换? Smartctl为两个驱动器显示“PASSED”,尽pipe显示了678个重新分配的扇区,另一个显示了33个重新分配的扇区。 (我再次使用RAID 1) dmesg输出 ata2.00: exception Emask 0x0 SAct 0x4000000 SErr 0x0 action 0x0 ata2.00: irq_stat 0x40000008 ata2.00: failed command: READ FPDMA QUEUED ata2.00: cmd 60/08:d0:58:11:38/00:00:01:00:00/40 tag 26 ncq 4096 in res 51/40:02:5e:11:38/00:00:01:00:00/40 Emask 0x409 (media error) <F> […]

尽pipe调整,仍然显示从接收队列修剪的数据包

我已经做了下面的调整,试图消除packets pruned from receive queue中删除的packets pruned from receive queue ,我看到在netstat中,但我仍然看到每隔几分钟几百修剪: net.core.rmem_max增加到33554432 将net.core.rmem_default增加到12582912 net.core.wmem_max增加到16777216 net.ipv4.tcp_rmem增加到4096 12582912 33554432 net.core.netdev_max_backlog增加到5000 net.core.dev_weight增加到256 net.ipv4.tcp_max_syn_backlog增加到8192 把net.core.netdev_budget增加到400 启用rps和rfs,将rps_sock_flow_entries设置为32768,将rps_flow_cnt设置为8192(4个接收队列),并将rps_cpus与ff(所有内核) net.core.somaxconn增加到8192 将应用程序的rcv_buf大小设置为33554432 设置应用程序的tcp连接监听积压为4096 这是一个在i3.2xlarge实例上运行碳caching,carbon-c-relay,httpd和memcached的石墨系统,networking吞吐量约为2.5亿字节/分钟。 CPU使用率是合理的,闲置在1%到30%之间波动,平均I / O等待约10%。 iostat -mx 1显示40%到95%的利用率波动。 vmstat显示等待运行时间的进程数在1和12之间波动。 free -m total used free shared buffers cached Mem: 61444 60976 467 0 7442 40391 -/+ buffers/cache: 13142 48302 Swap: 0 0 0 […]

networkingUPS工具(NUT)导致UPS重新启动?

我在运行Armbian 5.25(这是Debian jessie)的OrangePi One上安装了NUT upsmon 2.7.2。 它设置为使用usbhid-ups驱动程序监视我的Tripp Lite SmartOnline SU3000RTXLCS2U,并在服务器关机或通电时与服务器通信。 我可以成功地获得运行upsc命令的UPS信息,所以我认为一切正常。 我不知道的一个问题是,为什么我的UPS重新启动(并切断连接到它的所有东西)当我发出一个重新启动命令的OrangePi。 我可以发送一个关机命令,并closuresUPS而不会造成干扰。 当我运行upsc命令时,我可以看到: ups.timer.reboot: 0 ups.timer.shutdown: -1 ups.timer.start: 0 ups.vendorid: 09ae ups.watchdog.status: 0 我的猜测是,upsmon服务器在服务停止之前向UPS发送重启命令。 我看到ups.timer.shutdown: -1这让我认为UPS设置为忽略closures命令, ups.timer.reboot: 0意味着UPS设置为在收到重新启动命令时立即重新启动。 它是否正确? 我需要设置ups.timer.reboot: -1什么的? 那怎么做?

在同一台服务器上添加多个证书

我想问一个关于在同一台服务器上部署多个证书的问题。 我们使用证书在代理与主应用程序服务器之间进行通信。 目前代理已经部署到近4000多个客户端。 相同的证书已经部署到客户端的所有代理。 截至9月底,所有客户端以及主服务器上的证书都已经过期。 随着时间的推移,我们需要尽快规划一些东西并进行testing。 初步讨论后,我们提出了2个计划 计划1: 一个。 使用相同的密钥和相同的名称(server.pem)更新服务器中的证书 湾 使用相同的密钥和相同的名称(client.pem)创build一个新的证书,并将其部署到所有服务器。 一旦我们部署证书,它将覆盖当前的证书。 如果一切顺利,代理商将开始与服务器通信。 C。 如果由于某种原因,代理不能接受新的证书或者由于某种错误,它仍然使用旧的证书与服务器进行通信。 (我希望来自客户端的旧证书仍然能够与具有新证书的服务器进行通信) 计划2: 一个。 使用新名称server1.pem更新服务器 湾 使用相同的密钥和新名称client1.pem创build一个新的客户端证书 请更正我的理解是否在这里,如果我们把两个证书放在同一个文件夹中,说client.pem和client1.pem,client1.pem将开始工作,如果由于任何原因,如果我们不能部署client1.pem旧的还会继续工作到期日吗? 我们希望有4000个客户,如果我们能够获得至less95%的准确度,那么我们很less有系统担心。 我们会得到足够的时间来解决剩下的问题。 注意:应用程序有自己的能力来部署证书和其他应用程序。 所以在这里,我们不会使用任何puppet模块/ SCCM或组策略进行部署。 我们基本上使用TLS相互authentication来进行服务器和代理之间的通信。 虽然这些服务都不能被外部访问,但是证书不是CA签名而是自签名的。 通信是在代理和服务器之间进行的(例如,类似于连接到主备份服务器的备份代理)。 没有应用程序的用户界面。 我的问题是如何在当前所有4000+以上的代理人到期之前部署新的证书。请告诉我,如果您需要进一步的说明。

在傀儡存在迪尔

我想检查“如果目录存在”条件与木偶如何做到这里如何做一个文件/目录存在条件在Puppet? 但是,如果我写 exec { 'check_presence': command => "true", path => ["/usr/bin","/usr/sbin", "/bin"], onlyif => "test -d /test" } file { '/test/123': ensure => directory, mode => '0644', require => Exec['check_presence'] } 从exec我得到alwyas true ,傀儡总是试图创build/testing/ 123 Debug: Exec[check_presence](provider=posix): Executing check 'test -e /test' Debug: Executing 'test -e /test' Error: Cannot create /test/123; parent directory /test does […]

Linux服务器两个networking接口

我正在configuration一个带有两个networking接口(enp3s0f0和enp3s0f1)的本地服务器。 我喜欢在同一个子网(192.168.178。*)上拥有不同IP地址(192.168.178.4 | 192.168.178.5)的两个接口(可以在两个设备上具有相同的地址映射)来归档以下: 服务器应该可以通过两个1GBit接口运行2个地址但域名相同。 这样,我想我可以拆分连接DNS-RR,并提供2GBit的function。 服务器被configuration为KVM主机,并且应该能够桥接到客户端的两个接口。 这可以让客户也从2GBit连接中受益。 这是我目前的主机的/ etc / network / interfaces # Loopback device: auto lo iface lo inet loopback # device: br0 auto br0 iface br0 inet static address 192.168.178.4 dns-nameservers 8.8.8.8 netmask 255.255.255.0 gateway 192.168.178.1 bridge_ports enp3s0f0 bridge_stp off bridge_fd 0 bridge_maxwait 0 up route add -host 192.168.178.6 dev br0 […]

lftp连接挂(而不是失败)

我有一个使用lftp连接到服务器并下载文件的自动脚本。 我已经有脚本成功运行了好几次(所以我知道在理论上是有效的)。 最近,我怀疑我们有问题连接到远程服务器(我们不拥有它,所以我不能validation它是“上”还是“下”)。 我知道lftp通过SSH连接。 当我运行lftp程序时,它只是不断尝试重新连接。 /bin/lftp -d -e 'set sftp:connect-program "ssh -a -x -i /home/username/.ssh/id_rsa -o "ConnectionAttempts=1" -o "ConnectTimeout=10" -o "BatchMode=yes" -o "ServerAliveInterval=15""; set cmd:fail-exit on; set dns:max-retries 3; set dns:fatal-timeout 20; set net:max-retries 3; set net:timeout 25; set ssl:key-file /home/username/.ssh/id_rsa; set xfer:clobber on; get OUT/remote_filename.txt -o remote_filename.txt; bye' -uremoteusername,xyz sftp://sftp.remoteserver.com —- Running connect program […]

在OpenAFS上保留主目录是否可行?

我是一个交易系统pipe理员,我在家里工作,也是为了好玩。 我有一台Gentoo Linux笔记本电脑,运行Raspian的Raspberry Pis,一台Gentoo服务器,运行Debian的ARM设备以及各种Android设备。 我总是摔跤和担心在备份设备之间备份和同步我自己的主目录,同时保持合理安全而不被窥探。 我在80年代在CMU有过与Andrew的经验,这就像魔术一样。 我会考虑NFS,如果它有一些机制来处理断开的访问,并不假定一个恒定的networking连接。 OpenAFS会是pipe理员可能考虑处理同步现代用户的“轻微连接”主机的数据吗? 我也考虑过像Lustre这样的东西。 我正在寻找一些需要在初始设置后进行适度维护的东西。 看起来OpenAFS也可能是有趣的,因为我可以将家庭划分成不同的pipe理子目录,这些子目录可能以不同的方式分布到不同的设备上。 (例如,对于必须存在于我的手机和平板电脑上的文件,对于树莓派文件,〜/ pi等) OpenAFS为此目的而死路一条?

如何共享一个zfs文件系统,包括通过nfs的子文件系统? 尝试的方法未能共享子文件系统

如何通过nfs共享整个zpool(包括子文件系统)? 使用belowzfs文件系统: NAME USED AVAIL REFER MOUNTPOINT backup 7.22T 6.83T 3.94T /backup backup/compressed 3.28T 6.83T 3.28T /backup/compressed 当使用nfs-kernel-server直接共享backup ,它的内容可以从nfs-clients获得。 不幸的是,'压缩文件夹'( backup/compressed )显示,但它的内容不。 如果使用sudo zfs set sharenfs=on backup/compressed或nfs-kernel-server sudo zfs set sharenfs=on backup/compressed共享sudo zfs set sharenfs=on backup/compressed ,则该文件夹仍然无法访问。 我已经确认这两个文件系统已被共享: showmount -e Export list for node1: /backup/compressed * /backup * 如何使用nfs共享zfs文件系统及其子文件系统? 更新: cat /proc/fs/nfsd/exports返回: # Version 1.1 […]