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

论Mac电脑和TimeMachine的重要性

论Mac电脑和TimeMachine的重要性

今天是2021年9月14日。

到今天为止,我已经使用 MacOS 作为主力系统,已经有了2年左右的时间。

不得不说,我现在已经深深的爱上了 MacOS。如果我需要购买下一台笔记本,我一定会购买 MacBookPro高配。

黑苹果(Hackintosh)核显或非核显处理器,如何修改 OpenCore 配置文件

黑苹果(Hackintosh)核显或非核显处理器,如何修改 OpenCore 配置文件

注:以下仅针对类似配置机型,即9代Intel的CPU,其他机型请绕道

重要说明

  1. OpenCore里面配置二进制均为倒序,例如下面的platform-id,如果需要修改其他机型的,需要倒序后再填入platform-id
  2. 这里是黑果小兵大神整理的Coffee Lake帧缓冲区补丁及UHD630 Coffee Lake ig-platform-id数据整理

    https://blog.daliansky.net/Coffee-Lake-frame-buffer-patch-and-UHD630-Coffee-Lake-ig-platform-id-data-finishing.html

  3. 这里是黑果小兵大神整理的黑苹果必备:Intel核显platform ID整理及smbios速查表

    https://blog.daliansky.net/Intel-core-display-platformID-finishing.html

通用说明:如何修改三码

下载整包后,如果之前在 Clover 时就使用iMac19,1机型,可直接使用之前的三码,或使用 Clover Configurator (其他工具亦可)选择iMac19,1机型生成新的三码 + ROM,用 ProperTree 打开/EFI/OC/config.plist文件,填入到 PlatformInfo > Generic 位置中(如下图)。

基于 PVE + 软路由 + NAS的家里网络架构梳理(面向技术人员)

基于 PVE + 软路由 + NAS的家里网络架构梳理(面向技术人员)

家庭网络概述

家庭网络,不会像正规的虚拟化平台那样,搞『业务平面』『管理平面』『数据平面』三个平面分离。
家庭网络需要的是方便,那么上面说的三个平面,就需要融合在一起共用网络,才能管理方便。
家庭网络的安全也十分重要,谁也不希望家里的网络大门就一直对外敞开着。

准备硬件设备

  • 电信光猫(目前只有电信宽带,才有可能要到公网IP)
  • 多网口工控机(软路由,性能不要太差)
  • 普通台式机或服务器(能保证7x24小时开机就行)
  • AC + AP(AC 和 AP需要同一个品牌,考虑到 5G WIFI 穿墙性能极差,建议每个房间都配1个5G AP)
  • NAS(建议白裙或黑裙)
  • 网线
  • U盘
  • 可插网线的笔记本电脑(配置网络用)
电信光猫 HGU421N_V3使用

电信光猫 HGU421N_V3使用

NodeRed代码版本控制

NodeRed代码版本控制

问题描述

之前对于node-red代码的备份都是复制~/.node-red/flows_xxx.json文件并保存n个版本,很烦,即使使用Beyond Compare这种对比软件去对比未美化格式的json文件查看更改内容也是一团糟,

解决问题:JSON 格式美化

搜索时发现可以通过更改~/.node-red/settings.js中的设置使flows_xxx.json文件保存时就美化格式。

git删除远程分支报错: remote ref does not exist

git删除远程分支报错: remote ref does not exist

问题描述

在视图删除某个远程分支的时候显示:remote ref does not exist

解决方案

解决方案是首先清除远程分支的本地缓存:git fetch -p origin
可以看到,我们要删除的远程分支其实已经删除了。

解决 Gitlab 仓库数据恢复后,旧仓库无法提交的问题 error: unpack failed: unable to create temporary object directory

解决 Gitlab 仓库数据恢复后,旧仓库无法提交的问题 error: unpack failed: unable to create temporary object directory

问题描述

Gitlab 服务器刚进行完数据恢复

所有的旧仓库无法进行git push操作

错误提示error: unpack failed: unable to create temporary object directory

但是新增的仓库,可以正常进行git push

群晖 Synology Docker Gitlab 套件更新

群晖 Synology Docker Gitlab 套件更新

警告

升级时会清空环境设置
这一点群晖有点。。。

TIPS

基本上只要把

1
2
GITLAB_HTTPS=true
SSL_SELF_SIGNED=true

给加回来

再把端口号从80改为443即可

如何从 Proxmox VE 6.4 升级到 Proxmox VE 7.0?

如何从 Proxmox VE 6.4 升级到 Proxmox VE 7.0?

好久没关注 Proxmox VE 的官网。

直至前几天推荐 PVE 给同事使用时,才惊觉又升级大版本了。

作为升级强迫症患者,当然会选择立即升级到最新版本。

很早之前经历过从 PVE 5.x 升级到 6.0 的过程,现在又要开始 PVE 6.4 升级到 7.0。

总之,老老实实看官方教程就对了。

下面是各个 PVE 大版本升级的官方教程:

Upgrade from Proxmox VE 6.x to 7.0

Upgrade from Proxmox VE 5.x to 6.0

Upgrade from Proxmox VE 4.x to 5.0

Upgrade from Proxmox VE 3.x to 4.0

【转】Android实现系统状态栏的隐藏和显示功能

【转】Android实现系统状态栏的隐藏和显示功能

问题描述

尤其视频类APP,需要实现切换到横屏后,隐藏系统状态栏,全屏显示,以实现看更大画面的视频。当切换回
竖屏后,又显示状态栏。那么如何实现呢?

网上流传着很多种做法

比如
1、在AndroidManifest.xml文件中修改theme

1
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

2、在setContentView方法前执行如下代码:

1
2
requestWindowFeature(Window.FEATURE_NO_TITLE) 
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

3、通过ViewsetSystemUiVisibility方法

4、通过如下代码实现状态栏的隐藏和显示:

1
2
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) //隐藏状态栏 
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) //显示状态栏

在我的项目中是要实现如下需求:在当前Activity中,切换到横屏后,不能销毁Activity再重新初始化,并且实现隐藏系统状态栏,全屏显示;当切换回竖屏后,又显示状态栏。另外,我不需要隐藏标题栏。