Margrop
Articles158
Tags353
Categories21
1password AC AP API AppDaemon Aqara Cron Date Diagrams.net HA HADashboard HomeAssistant IP IPv4 Java LVM‑Thin Linux MacOS MySQL NAS PPPoE PostgreSQL ProcessOn Proxmox VE SSL Shell TTS TimeMachine UML Uptime Kuma Web Windows activate ad adb adblock agent aligenie aliyun alpine annotation aop authy autofs backup baidupan bash bitwarden boot brew browser caddy2 cdn centos cert certbot charles chat chrome classloader client clone closures cloudflare cmd command commit container crontab ctyun ddsm demo dependency deploy developer devtools dll dns docker domain download draw drawio dsm dump dylib edge exception export fail2ban feign firewall-cmd flow frp frpc frps fuckgfw function gcc gfw git github golang gperftools gridea grub gvt-g hacs havcs heap hello hexo hibernate hidpi hoisting homeassistant hosts html htmlparser https idea image img img2kvm import index install intel io ios ip iptables iptv ipv6 iso java javascript jetbrains jni jnilib jpa js json jsonb jupter jupyterlab jvm k8s kernel key kid kms kodi koolproxy koolproxyr kvm lan lastpass launchctl learning lede letsencrypt linux live low-code lvm lxc m3u8 mac macos mariadb markdown maven md5 microcode mirror modem modules monitor mount mstsc mysql n2n n5105 nas network nfs node node-red nodejs nohup notepad++ npm nssm ntp oop openfeign openssl os otp ovz packet capture pat pdf pem perf ping pip plugin png powerbutton print pro proxy pve pvekclean python qcow2 qemu qemu-guest-agent rar reboot reflog remote remote desktop renew repo resize retina root route router rule rules runtime safari sata scipy-notebook scoping scp server slmgr so socks source spk spring springboot springfox ssh ssl stash string supernode svg svn swagger sync synology systemctl tap tap-windows tapwindows telecom template terminal tls token totp tvbox txt ubuntu udisk ui undertow uninstall unlocker upgrade url v2ray vhd vim vlmcsd vm vmdk web websocket wechat windows with worker wow xiaoya xml yum zip 中国电信 云电脑 交换机 光猫 公网IP 内存 内网IP 升级 启动 夏令时 天猫精灵 天翼云 安装 容器 导入 小米 常用软件 广告屏蔽 序列号 应用市场 异常 抓包 描述文件 时区 显卡虚拟化 智能家居 智能音箱 梯子 模块 流程 流程图 浏览器 漫游 激活 火绒 电信 画图 直播源 续期 网关 网络风暴 群晖 腾讯 虚拟机 证书 路由 路由器 软件管家 软路由 运维监控 镜像 镜像源 门窗传感器 防火墙 阿里云 阿里源 集客

Hitokoto

Archive

Proxmox VE 6.4 日常升级命令

Proxmox VE 6.4 日常升级命令

移除未使用的Linux内核

1
pvekclean

更新软件:

1
apt update -y && apt dist-upgrade -y

去掉未订阅的提示,支持 PVE 6.3 / 6.4

1
2
3
4
sed -i_orig "s/data.status === 'Active'/true/g" /usr/share/pve-manager/js/pvemanagerlib.js
sed -i_orig "s/if (res === null || res === undefined || \!res || res/if(/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
sed -i_orig "s/.data.status.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy
Java基于 SpringBoot 的 JNI 本地方法库加载器

Java基于 SpringBoot 的 JNI 本地方法库加载器

由于Java跨平台需要,自行写了一个跨平台的 JNI 本地方法库加载器。

简单实现逻辑

  1. 根据环境变量os.name,判断当前系统属于Windows,Linux还是MacOS
  2. 如果是Linux,继续判断是CentOS还是Debian
  3. 读取 jar 包中的库文件
  4. 根据文件名后缀dllsojnilibdylib,过滤符合当前平台的库文件
  5. 将当前平台的库文件复制到系统临时目录java.io.tmpdir
  6. 使用System.load加载库文件
Spring Boot + Undertow上传文件找不到临时目录

Spring Boot + Undertow上传文件找不到临时目录

问题出现

前2天,公司的 SpringBoot 项目突然出现了,无法上传 Excel 文件的问题。

经过查看 Java 日志,发现出现了大量的异常:java.nio.file.NoSuchFileException: /tmp/undertow.12020.9432679758080410942/undertow17157208698492118168upload

记一次家庭网络的网络风暴故障排查

记一次家庭网络的网络风暴故障排查

3月7日,周日,本来是一个应该好好休息放松的日子。

上午10点左右

家里的小爱同学,突然罢工了,提示『网络连接失败』

本来以为只是个小问题,没想到经过一番检查,发现家里所有联网的设备,网络都挂了???

MySQL中Date,夏令时时间转换引发的错误HOUR_OF_DAY: 0 -> 1,及解决办法

MySQL中Date,夏令时时间转换引发的错误HOUR_OF_DAY: 0 -> 1,及解决办法

做用户导出的功能,代码报错HOUR_OF_DAY: 0 -> 1

  • Exception in thread “main” java.lang.IllegalArgumentException: HOUR_OF_DAY: 0 -> 1
    详细报错内容如下:
HomeAssistant:常用的 HACS,Github 第三方支持库 Repo

HomeAssistant:常用的 HACS,Github 第三方支持库 Repo

HomeAssistant配置:长时间忘记关闭防盗门时,自动提醒

HomeAssistant配置:长时间忘记关闭防盗门时,自动提醒

feign 使用示例:@Body注解,http请求体

feign 使用示例:@Body注解,http请求体

出现接口使用http请求体来传递参数的情况,所以研究了一下feign,发现@Body注解大致可以实现。
虽然说是使用请求体来传递参数,但实质上请求体还是放了json格式的数据。当然,如果不想只局限于json格式,可以将其设置为通用的格式,详见文末。

微信安装旧版本方法,版本过低,请升级最新版本

微信安装旧版本方法,版本过低,请升级最新版本

先安装最新版本微信,并登录。

使用cmd命令行保存用户数据方式卸载应用:

1
adb shell pm uninstall -k com.tencent.mm

重启手机

1
adb root
  • 这一步非常重要,否则会出现错误提示adb: failed to install xxxxxx Failure [INSTALL_FAILED_VERSION_DOWNGRADE]

使用cmd命令安装旧版本apk(后面跟安装包路径):

1
adb install -r -d

在旧版本上登录微信账号。

Python3面向对象编程

Python3面向对象编程

面向对象编程

1
2
3
4
5
6
7
8
class Student(object):

def __init__(self, name, score):
self.name = name
self.score = score

def print_score(self):
print('%s: %s' % (self.name, self.score))