方案是安装lm-sensors包,使用其中的sensors命令读取温度,将sensors的输出传递到PVE前端页面(/usr/share/pve-manager/pvemanagerlib.js),通过前端页面的js脚本的match函数匹配对应的行,提取出温度值进行显示。
但我的温度中有两个temp1,我想要显示第二个,但却没找到实现的办法。

    root@pve:/usr/share/pve-manager/js# sensors
    coretemp-isa-0000
    Adapter: ISA adapter
    Package id 0:  +47.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 0:        +45.0°C  (high = +80.0°C, crit = +100.0°C)
    Core 1:        +47.0°C  (high = +80.0°C, crit = +100.0°C)
    
    acpitz-acpi-0
    Adapter: ACPI interface
    temp1:        +27.8°C  (crit = +119.0°C)
    temp2:        +29.8°C  (crit = +119.0°C)
    
    pch_skylake-virtual-0
    Adapter: Virtual device
    temp1:        +48.5°C

后来灵机一动,通过linux的管道,使用sed将第一个temp1相关部分(第6-10行)删除,即在/usr/share/perl5/PVE/API2/Nodes.pm页面中增加的sensros命令修改成:

    sensors | sed '6-10d'

Snipaste_2020-05-11_21-48-27.png
最终效果:
Snipaste_2020-05-11_21-51-14.png

参考:
PVE显示温度
sed使用方法

前几天在红米K20上用APKPure更新Twitter,MIUI提示安装需要关闭MIUI优化,但关闭后还是无法安装,就想办法试试用电脑安装。
电脑上操作,到APKPure网站上下载安装包之后,发现是个下xapk的包,官方解释是“Multiple APKs”,即多个apk组成的安装包。
这个安装包无法直接用adb安装,解压之后有多个apk,看文件名是一个主程序apk和多个配置用的apk
Snipaste_2020-04-20_22-08-18.png
adb只能安装主程序apk,其他apk无法安装,提示是部分安装包不支持,而已安装的主程序打开闪退,无法使用。
查看adb的帮助,发现有一个install-multiple的新功能,应该是对应这种情况的。google一圈之后终于搞明白了该命令的用法:
用这个命令把主程序apk和需要的配置apk一起安装即可。在Twitter这个例子中,我选择了主程序apk、cpu架构配置apk、高分屏配置apk和中文支持apk一起安装,其他语言配置包不需要就不装了。

     adb install-multiple .\com.twitter.android.apk .\config.armeabi_v7a.apk .\config.xhdpi.apk .\config.zh.apk

Snipaste_2020-04-20_22-18-36.png

原理:来自 Google 的云端优化,这个技巧让你的应用秒开

V2

获取第三方应用包列表,存入变量:

    $PackageList = adb shell pm list packages -3

新建计数变量:

    $Index = 1

遍历每行应用包名,编译:

    foreach($PackageListLine in $PackageList)
    {
        $PackageName = $PackageListLine.Remove(0, 8)
        echo("Compiling " + $Index++ +"/" + $PackageList.Count + " " + $PackageName)
        adb shell cmd package compile -m speed -f $PackageName
    }

输出效果:
Snipaste_2020-04-20_21-40-54.png


V1

获取第三方应用列表:

    adb shell pm list packages -3 > packages.txt

Powershell中运行adb,批量编译第三方应用:

    foreach($line in Get-Content("packages.txt"))
    {
        $PackgeName = $line.Remove(0,8)
        echo("compiling " + $PackgeName)
        adb shell cmd package compile -m speed -f $PackgeName
    }

删除临时文件:

    Remove-Item("packages.txt")

在使用微软双拼的环境下

1.扩展词库

double_pinyin_mspy.custom.yaml(输入法自定义配置文件,其他输入法换为输入法名.custom.yaml)中加入下面代码:

patch:
  # 載入朙月拼音擴充詞庫
  "translator/dictionary": luna_pinyin.extended

luna_pinyin.extended.dict.yamlluna_pinyin.dict.yamlluna_pinyin.hanyu.yamlluna_pinyin.poetry.dict.yamlluna_pinyin.cn_en.dict.yaml五个文件放入用户文件夹。
luna_pinyin.extended.dict.yaml引用了其他四个词库文件。
来源:https://github.com/rime-aca/dictionaries

2.双拼不展开成全拼

double_pinyin_mspy.custom.yawl(输入法自定义配置文件,其他输入法换为输入法名.custom.yawl)中加入下面代码:

patch:
 #不展开成全拼
 translator/preedit_format: []

来源:https://github.com/rime/squirrel/issues/261

3.识别字母+数字的用户名

default.custom.yaml中加入如下代码:

# 輸入 rime 之後,再輸入任意一個數字,則立即識別爲西文輸入
patch:
  recognizer/patterns/rime123: "^rime[0-9]+$"

来源:https://gist.github.com/lotem/3076166

4.某些程序中不使用中文输入法

weasel.custom.yaml中加入如下代码:

patch:
 app_options/bf2cn.exe:  #程序
  ascii_mode: true

来源:rime定制指南

什么值得买上看到一篇文章,群晖VideoStation支持DST、EAC3、TrueHD。这篇文章是从别处抄来的。
但是这个作者要么对linux系统不大熟悉,要么群晖或VideoStation更新了,文章里有不少问题,主要是要替换的文件路径不对,如果按照他的命令操作的话会出问题。
下面说明一下亲测过的正确操作。

环境:

  1. 硬件:蜗牛星际,黑群晖DS 918+
  2. 软件:DSM 6.2.1-23824 Update 6,VideoStation版本 2.4.7 - 1603

思路:

VideoStation中的ffmpeg不支持DST、EAC3、TrueHD,用支持DST、EAC3、TrueHD的ffmpeg替换掉。

操作步骤:

安装支持DST、EAC3、TrueHD的ffmpeg

安装包在https://github.com/th0ma7/synology/tree/master/packages,下载下来对应的安装包,DS918+对应的是ffmpeg_apollolake-6.1_4.2.2-28.spk
登录DSM,套件中心,手动安装,上传并安装。

备份、替换文件

SSH登录DSM,并用下面命令切换到root:

    sudo -i

切换到VideoStation目录,备份文件:

    cd /var/packages/VideoStation/target/
    sed -i'-BACKUP' -e 's/eac3/ZAAP/' -e 's/dts/ZAP/' -e 's/truehd/ZAPZAP/' lib/libsynovte.so
    mv bin/ffmpeg bin/ffmpeg.orgi
    mv bin/ffprobe bin/ffprobe.orgi
    mv bin/vainfo bin/vainfo.orgi

替换文件:

    echo "H4sICEoigl4AA2ZmbXBlZwCtU8tOwzAQvO9XLEmkPlAwrRCHVokqBOILOEUVctN1YtE8FFumEvDvOA9KSQInfEhsZ2ZnPN64F2wnc7bjKgWws8ChI8XIDK9YyeMXnpBiQmQlJUzzKiHd4NsdB8DF+4e7p0egOC3Q8TYOhiEynZUd5OpQJACWqILpDF5TeSCMIvRc9BON17jdwr6AmCuy7IWDMge0wzdlVQgLnjVLO1Qqhf5a1PUug6njH5e3Nx3SaQqc8Ot1V0iMl3CNCLxpZ9sKv6OiPfqEE3veosq4DnKzWF7NVcwP9Gw4LyU7nyeTDu2x1RmBTU56jUyXT7cciGoi9Hk/sf9zAz/ttNJGrDDyjNiO3lY/YyPqaO1zkK0cjzYrjKSgPuCgluzdUi+e1l7Lj7zm/afHzsh81hfqdQIpHkPrcV/kBKBIo+9bL281I9psP/q97Nk2/7WhG8TI/jdpGYaDv8A9fYZPjqtrMXcDAAA=" | base64 -d | gunzip > bin/ffmpeg
    ln -s /var/packages/ffmpeg/target/bin/ffprobe bin/
    ln -s /var/packages/ffmpeg/target/bin/vainfo bin/
    sudo sed -i'-BACKUP' -e 's/eac3/ZAAP/' -e 's/dts/ZAP/' -e 's/truehd/ZAPZAP/' lib/libsynovte.so

说明一下,ffmpeg替换成了一个脚本,脚本里带有输出日志,便于调试,而ffprobe和vainfo则直接建立符号连接。

调整权限:

    cd /var/packages/VideoStation/target/
    chmod +x bin/ffmpeg
    chmod +s bin/ffmpeg
    chown root:VideoStation bin/ffmpeg

测试

DSM中打开VideoStation,播放带DST、EAC3、TrueHD音频的视频。
SSH中打开日志文件,查看输出:

    tail -f /tmp/ffmpeg.log

Snipaste_2020-04-04_16-27-08.png
实测打开1080P的高码率DTS或EAC3的视频,CPU占用率约20%。

http://downloads.pangubox.com:6380/lintel/R619AC/

  1. 最好用的也就是2020-01-05或2020-03-10这版了,后面的版本性能有问题;
  2. ipv6设置
  1. Q:固件能支持IPv6吗?
    A:支持IPv6,默认没有打开,需要IPv6请在接口->LAN->DHCP服务器->IPv6设置:
    路由器通告模式->改为服务器模式.
    DHCPv6服务->改为服务器模式
    NDP代理->禁用
    总是通告默认路由->勾选
  1. README值得仔细看看

1. 下载安装RIME|中州韵输入法

2. 输入法设定->获取更多输入方案,输入double-pin,下载安装

Snipaste_2020-03-14_18-45-02.png
Snipaste_2020-03-14_18-45-49.png

3. 回到输入法设定,选择MSPY双拼

Snipaste_2020-03-14_18-46-10.png

4. 打字状态下按F4,在弹出的菜单中设置为简体中文

Snipaste_2020-03-14_18-46-33.png
Snipaste_2020-03-14_18-46-43.png

5. 不同电脑间同步配置

Rime使用sync文件夹下的uuid子文件夹来保存每个用户的个性配置,在用户配置文件夹下的installation.yaml中可以设置sync文件夹的位置。比如我把配置保存到NAS中syncthing的一个文件夹中,这样我另一台电脑使用syncthing同步数据时顺便把Rime的配置也一并同步,再用Rime的导入工具导入即可。

sync_dir: '\\192.168.31.195\Sync\Syncthing\owncloud\RimeSync'

Snipaste_2020-03-14_21-56-35.png
Snipaste_2020-03-14_21-57-04.png