分类 linux 下的文章

cntools的各个组件,主要指配置文件 $CNODE_HOME/env 会经常性的自动更新到和服务器上的最新版本
由于众所周知的网络原因经常会发生更新下载不完整或者下载失败,配置文件不完整导致 cnode在定期自检重启的时候会启动失败
查看运行状态

systemctl status cnode

systemctl status cnode
● cnode.service - Cardano Node
     Loaded: loaded (/etc/systemd/system/cnode.service; enabled; vendor preset: enabled)
     Active: inactive (dead) (Result: exit-code) since Fri 2021-06-25 17:02:08 UTC; 298ms >
    Process: 574350 ExecStart=/bin/bash -l -c exec /opt/cardano/cnode/scripts/cnode.sh (code exited 128 ...

以上是注册为后台服务的方式,检测到服务掉线还会自动执行重启
下面还会有个自动重启次数,当我发现的时候已经尝试重启已经达到 1万7千多次

...
手动执行 cnode.sh 启动,得到错误提示:

./cnode.sh
InvalidYaml (Just (YamlException "Yaml file not found: "))

cardano-node: YAML exception:
Yaml file not found: 

事实上并不是什么 yaml的问题,检查 env 文件,发现被自动替换成了一个5k字节的新文件。淦
幸好env更新的时候会自动备份,把最后一个备份恢复替换env文件即可启动成功

mv env env.bak
cp env_bkp1624640864 env
ls -l

-rw-r--r--  1 root root  41980 Jun 25 17:07 env
-rwxr-xr-x  1 root root   5314 Jun 23 19:43 env.bak*
-rwxr-xr-x  1 root root   5314 Jun 23 20:00 env.bak20210501*
-rwxr-xr-x  1 root root  12146 Jun 23 20:00 env.bak202105121559*
-rwxr-xr-x  1 root root  24802 Jan 29 10:35 env_bkp1611916514*
-rwxr-xr-x  1 root root  27506 Jan 29 16:23 env_bkp1611937427*
-rwxr-xr-x  1 root root  27932 Feb 12 04:38 env_bkp1613104707*
-rwxr-xr-x  1 root root  27896 Mar  2 14:04 env_bkp1614693852*
-rwxr-xr-x  1 root root  29011 Mar  2 14:16 env_bkp1614694618*
-rwxr-xr-x  1 root root  29743 Mar 16 21:53 env_bkp1615931614*
-rwxr-xr-x  1 root root  29744 Mar 20 11:52 env_bkp1616241170*
-rwxr-xr-x  1 root root  29828 Mar 20 17:24 env_bkp1616261083*
-rwxr-xr-x  1 root root  29825 Apr  7 17:04 env_bkp1617815073*
-rwxr-xr-x  1 root root  31870 Apr  8 03:10 env_bkp1617851419*
-rwxr-xr-x  1 root root  31910 Apr 11 17:08 env_bkp1618160924*
-rwxr-xr-x  1 root root  32049 Apr 11 17:59 env_bkp1618163989*
-rwxr-xr-x  1 root root  32049 Apr 15 21:42 env_bkp1618522974*
-rwxr-xr-x  1 root root  32091 Apr 30 17:08 env_bkp1619802511*
-rwxr-xr-x  1 root root  32091 May  3 21:08 env_bkp1620076095*
-rwxr-xr-x  1 root root  40064 May 12 07:56 env_bkp1620806177*
-rwxr-xr-x  1 root root  40064 May 17 14:08 env_bkp1621260538*
-rwxr-xr-x  1 root root  40140 May 24 01:32 env_bkp1621819973*
-rwxr-xr-x  1 root root  40190 May 25 10:37 env_bkp1621939057*
-rwxr-xr-x  1 root root  40355 Jun 17 16:27 env_bkp1623947272*
-rwxr-xr-x  1 root root  40355 Jun 23 19:39 env_bkp1624477188*
-rwxr-xr-x  1 root root  40355 Jun 23 19:43 env_bkp1624477402*
-rwxr-xr-x  1 root root  40355 Jun 25 17:07 env_bkp1624640864*

此时再次被提示是否升级新版本,输入 yes
检查更新后的新文件依然有 41k 大小,应该是完整的。
执行节点重启

systemctl restart cnode

成功没有问题,故障解决。

没什么技术含量的一篇,纯备忘。ll

节点最近负载升高,需要的内存量激增。偶尔在压力高峰会出现 OOM而闪退。
在硬件内存到货升级之前,折中方案增大swap把峰值内存压力给抗下来。

下面是流水账:

创建8G 大小 swap文件

cd /
mkdir swap && cd swap
dd if=/dev/zero of=/swap/swapfile bs=1G count=8
chmod 600 swapfile
mkswap -f swapfile

启用swap

swapon /swap/swapfile

开机自启

vi /etc/fstab
#增加一行
/swap/swapfile            none            swap    sw         0       0

或在启动脚本或cron内在开机时再执行一次 启用swap的命令均可。

参考文: https://blog.51cto.com/moerjinrong/2376788

一台比较老旧的centos6机器,因为有比较细碎分散的业务在跑,不宜大刀阔斧升级或更换操作系统版本怕有遗漏后续的运维风险高。
熟悉centos6的都知道原生python是 2.7环境,yum最高支持到 python3.45,没有pip3 导致很多额外的模块安装不便,同样基于上述生产环境理由,不想用手动编辑安装的方式强行升级到python3.7。

今天用到一个脚本需要xlrd处理excel文档。
下文简要备忘安装经过



- 阅读剩余部分 -

内网两台linux的设备之间传大约100G的文件,以前的土法是win10上分别打开两台机的 SMB目录,然后复制黏贴。
得到的网速大约是 50M/s左右。

photo_2020-08-29_04-17-52.jpg

那么我在想,是不是因为经过我win中间转发上下行让速度折半了呢?
如果让两台linux直接对传,是不是速度会更接近千兆局域网的100M/s 理想速度呢?



- 阅读剩余部分 -

在谷歌云部署一个项目,建议编译环境是 ubuntu20 第一次安装这个版本
用 SecureCRT 新建一个链接的时候提示

Key exchange failed. No compatible key exchange method.

直接说结论:
因为 SCRT 版本是 6.5 太旧,而 Ubuntu20 默认要求的交换公钥加密算法版本比较新(加密位数更长)不能支持。

解决办法:
重新安装了 SCRT 8.7版本,把服务端支持的key exchange方法勾选上(懒就全选)就可以连上了。
QQ截图20200729074021.png