[桓永快讯]2020年秋季毅行

2020年11月14日白天,桓永社组织大家进行本年度的毅行锻炼,自西溪路老和云起出发,至钱塘江边九溪公交站,全程约17公里。社员们参加了并锻炼身体!

[桓永快讯]本社驻英国分社发来节日贺电

【本社讯】(记者 徐永拳)当地时间12月24日下午15时许,本社驻英国分社社员罗永皓向杭州方面发来贺电,向朱老师以及全体社员朋友们致以节日的问候和对我社未来蓬勃发展的良好祝愿。罗永皓指出,12月24日是当地一年一度的平安夜,“每逢佳节倍思亲”——每到佳节临近,他最放心不下的就是他远在杭州的朱老师以及全体社员朋友们。值此佳节之际,他将与室友一同前往餐厅用膳,并与我社洪永宇、徐永拳等社员互致问候。

此外,双方还就洗好pg、室友回家情况以及XT30相机使用情况等双方共同关切的问题深入交换了意见,并就深入落实桓永社官方网站全方位推广事宜达成一致。

双十一前的折腾:某讯遗产加装无线网卡搞homeassistant网关

近期科研划水严重。一天收拾宿舍发现,年初300+买的带斐某讯标的J1800小主机在桌上吃灰已久,遂拿出来上电开机,这才想起这小破主机里插了专门买的msata固态+128G的microSD卡。当时没想好咋用,但也开机运行着了——买都买了。。。后来看见衣柜里的小米蓝牙温湿度传感器,便有了此文的工作。其实之前已经用树莓派搭过HA网关并且运行了几个月的温湿度记录,不过后来树莓派的存储卡坏掉,温湿度传感器也就闲置了。

正文:

J1800小主机买来相当于准系统,是没有硬盘、无线网卡的。为了增加蓝牙功能,我考虑过买专门的USB蓝牙适配器,不过感觉质量不行,也担心Ubuntu驱动有问题,最后选择了mpcie的无线网卡——2.4G/5G WiFi + 蓝牙4.2都有了,很方便。

吃灰半年多的小主机
49元到手的无线网卡

系统用的是Ubuntu 18.04 LTS,关掉了图形界面,4G内存绰绰有余。HA提供了多种安装方式,包括Docker、刷hass.io/hassbian镜像、Python虚拟环境等等。这里我选择了Python虚拟环境的方式,主要是稍微熟悉一点。参考官方教程,首先安装依赖:

sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev

需要注意的是,当前(2019年11月8日)Ubuntu默认的python3是3.6的版本,而一些HA的插件推荐使用python3.7,所以上面涉及python3的地方可以修改为python3.7,安装好后在重新设置系统中python3的符号链接到python3.7(默认指向是3.6)

然后新建名为homeassistant的用户用于HA的运行。其中-rm用于设置home目录的生成。

sudo useradd -rm homeassistant

然后建立目录用于HA的安装。实例的位置是在/srv/homeassistant处,这里由于我们还没有切换到homeassistant的用户,所以还需要chown来修改文件夹的所有者。

cd /srv
sudo mkdir homeassistant
sudo chown homeassistant:homeassistant homeassistant

然后切换到homeassistant用户,启动python虚拟环境

sudo -u homeassistant -H -s
cd /srv/homeassistant
python3 -m venv .
source bin/activate

进入虚拟环境后,bash的命令提示符前会增加”(homeassistant)”字样——代表我们此时处于python虚拟环境中。此时使用pip依次安装wheel、homeassistant以及

(homeassistant) homeassistant@$USERNAME:/srv/homeassistant $ python3 -m pip install wheel
(homeassistant) homeassistant@$USERNAME:/srv/homeassistant $ python3 -m pip install homeassistant

理论上讲,安装至此就结束了。在虚拟环境内输入hass命令就可以启动HA了。首次启动HA时还会安装一些包,耗时会稍长一点。由于众所周知的原因,一些包的安装过程中可能遇到网络中断的问题,如果条件允许请采用科学上网方式安装。

(homeassistant) homeassistant@$USERNAME:/srv/homeassistant $ hass

然而实际的情况总会有些变化——hass命令输入后,HA启动过程中报错,错误的信息为:

...
    import hass_frontend
ModuleNotFoundError: No module named 'hass_frontend'
...

此时HA默认的http://localhost:8123管理页面打开是直接提示404的。查HA的GitHub页面发现此bug可通过手动安装HA前端的方式解决:

(homeassistant) homeassistant@$USERNAME:/srv/homeassistant $ pip install home-assistant-frontend

之后就可以正常打开HA的管理页面了。

现在小米蓝牙温湿度计已经被HA官方支持,添加设备十分方便,参照官方教程即可添加。其实主要就是在HA安装目录的configuration.yaml文件里添加这样一段内容:

# Example configuration.yaml entry
sensor:
  - platform: mitemp_bt
    mac: 'xx:xx:xx:xx:xx:xx'
    name: Kids Room Temp
    force_update: true
    median: 3
    monitored_conditions:
      - temperature
      - humidity
      - battery

由于室内温度变化不会十分剧烈,所以默认的刷新时间是5分钟。HA支持对读书值进行平滑来消除探测器的偶然误差——median的值和取滑动窗口中位数的窗口宽度。也就是说,可能需要最长10分钟,我们才能够取得蓝牙温湿度计的读数(median设为3时)。久久没有读数可检查mac地址是否抄对了,然后耐心等待即可。

最终效果:

网站升级——桓永社粉丝网上线

本站原域名过期,由于站方管理员抠门,无钱续费,特更换全新域名“huanyong.club”,同时作为桓永社粉丝网(筹)上线。

经过数小时的艰难改造,在解决了诸如Wordpress域名修改(数据库里搞搞替换)、CloudFlare重定向次数过多(全站强制https,CloudFlare中亦应设置SSL/TLS为Full(Strict)模式)等问题后,本站正式上线。在此,我特别鸣谢社长赤老师的鼎力支持!同时,我也向关系和支持我社发展的人士表示衷心的感谢!

硬件博物馆级集群维护记-计算节点microSATA硬盘的脱机读取与检测

写在开头:

稀里糊涂大半年没有更新过这个博客了。最近突然觉得记忆力下降的势头开始明显起来了,感觉还是要抓起这个博客,记录一些经验、想法备查。

两个月前,管理计算集群的小伙伴出国交流了,这下集群日常维护的工作一下转到我身上了。这下也终于稍微深入一点地了解了一下集群概况。这个建立于2011年的计算集群硬件构成如下:

管理节点*1+存储管理节点*1(包含一个总容量6T的磁盘阵列,对外以10G InfiniBand互联)+刀片式计算节点*10(每个节点:4路Opteron+64GiB RAM+128GiB SSD)

这样一套系统,除了内存稍大以外,其余的性能其实也并不出彩了。这个计算集群现在主要也就承担学院内Lumerical FDTD计算的使用。长期使用带来的问题是小毛病不断:10个计算节点中,尚能正常工作的节点已经只剩下5~6个了,据说曙光的售后过保后就没啥动力来管了,有问题也就是推荐换新的系统。

1月接手后,尝试启动一些之前因故障关闭的计算节点,看看是什么问题。其中两个节点报错:

ata3.00: status: { DRDY ERR }

mount: error mounting /dev/root on /sysroot as ext3: Invalid argument

查了一下大概是硬盘的问题,分区挂载不上。联想起之前围观过一次工程师来修集群,换了一个固态。嗯,那应该是和硬盘有关系?拆了个硬盘下来,居然长这样:

乍一看右侧是SATA的数据口,可左边的接口又不太对劲,并不是一般硬盘上的那种接口。一查才知道这接口算是有年头:这居然是叫microSATA接口。

这当然难不倒万能的淘宝科研er。很轻松地就找到了这样地转接卡:micro SATA转2.5″ SATA卡:

问题当然不会这样简单地解决的。直接插上这张卡,硬盘还是不能被识别——总不至于这些硬盘都坏掉吧。

后找来硬盘的datasheet(没找到这一款1.8英寸盘的,只有2.5英寸版本的),发现问题是出在硬盘的供电上:

硬盘要求5V供电,而这里的microSATA转接卡提供的是3.3V的电压,5V的供电脚直接就是一个空脚,自然是不能够直接驱动这个固态的了。考虑到USB-SATA的转接板那么多,转接板总是得有5V供电的吧。查阅转接卡使用的LDO供电芯片AMS1117,其输入脚正好与5V电压连接的的,所以从SATA口电源一侧的P7~P9飞一根线到LDO的5V供电脚就解决问题了。

然后顺利抢救出一个系统的镜像,后面再有硬盘坏也是可以抢救的了。毕竟,红帽5的系统,我是没本事也不打算重装或升级的。

一颗螺丝导致的血案-NVMe固态螺丝松动导致的离奇故障

故障症状:

  1. 开机登陆后长时间黑屏,仅鼠标可见。桌面显示后卡顿。
  2. 点开始菜单关机按钮无反应,之后会黑屏假死。
  3. 只能使用任务管理器用shutdown命令关机/重启
  4. 系统无故卡死,尤其是在移动笔记本电脑的过程中
  5. 事件记录器中查看到来源为Disk的错误记录:“设备 \Device\Harddisk0\DR0 有一个不正确的区块。”,数量上万条(图片是很多天后的,)。以及来源于stornvme的错误记录。

解决历程:

1.查资料,黑屏只见鼠标的症状

有人说是Intel处理器ME驱动与固件版本不对应的问题。恰逢电脑安装过一次更新后出现上述故障,怀疑是ME固件太老导致不匹配。

尝试:Intel官网下载ME固件刷新程序,刷新固件;HP官网下载BIOS固件刷新

结果:问题未解决

2.查事件记录器,发现24小时内大量Disk来源的故障

5月份的时候在狗东买了一根HP的NVMe固态给电脑换上。这个固态买得确实也有一点不值。似乎是电脑的问题,这支号称读速2000M+的固态在我这个笔记本上并不能跑满速,只有1200+左右。本来想无理由退货换个低一档的型号,可是装系统麻烦,也就作罢。

这次看到出现这么多错误,直接怀疑是固态不行了。说实话,HP这个EX 920固态实在。。。这个固态发售几个月了,官网也没有提供固件更新、驱动下载之类,甚至让人怀疑,这到底还是不是HP找工厂代工的产品了。

3.偶然拆机,发现固定NVMe固态的螺丝松脱,硬盘完全是靠笔记本D面固定。说来也是,当时安装这块硬盘时需要M3的螺丝,但找不到合适长度的,于是使用了一根更长的螺丝、用钳子剪掉一小截后安装的,可能确实有影响。换用合适长度的螺丝后,电脑恢复正常。

简单快捷-Certbot快速开启Let’s Encrypt全站HTTPS

虽然是个小博客,但敝博还是十分重视站点的安全的。今天主要是打开全站的HTTPS加密。

站点加密主要是需要证书,而用于HTTPS的证书需要由专门的机构颁发。当然,证书的颁发机构也不止一家。我选择的证书机构是Let’s Encrypt,原因是这家的证书对个人站点是免费的,至于有没有什么硬伤我还不知道,毕竟刚开始。

言归正传,打开Let’s Encrypt的官网,点击大大的“Get started”就会跳转到这样的界面:

此处主要是询问你的站点是否能用Shell,这个按实际情况选,比如有Shell的话就会让你去Certbot的网站

网站很友好,选择你用的Web服务器类型(Apache, nginx, etc.)以及服务器的操作系统,之后就有详细的说明操作。

然后就能够打开全站的HTTPS了。(我之前以为还需要Wordpress配如何设置,不过好像并不需要)

 

就是这些

2018.6.24

阿希德首个部落格上线啦 Acid’s first blog is online now

越过长城,我们走向世界。

Across the Great Wall, we can reach every corner in the world.

— 中国对外发出的第一封电子邮件

— The first email sent from P. R. China

 

经过一天多的尝试,我终于可以说我的这一个博客已经成功建立起来了。我也希望用上面这句话来作为这个博客的开篇,因为我想我现在也有相同的心情。

希望我能够坚持把这个博客写下去,尽管只买了一年的域名[捂脸]

定位:技术日常

2018.6.23