![loading..](https://img.elmagnifico.tech/static/upload/elmagnifico/202308302121359.png)
![loading..](https://img.elmagnifico.tech/static/upload/elmagnifico/202308302121359.png)
UBNT的一些基础配置指南
Foreword 记录一些折腾UniFi时遇到过的奇奇怪怪的问题 UniFi和RouterOS比起来,感觉贼难用,特别是采用,发现设备响应非常慢,急死个人。 经常会出现站点文件里的设备采用失败,对不上了。 虽然UniFi的AC设计的非常高大上,但是真正需要配置的东西却都隐藏起来,他面向的更多的是小型环境,小白环境。而他的易用程度如果和国内的比,那简直惨不忍睹,不知道为啥国外的设计思路都非常繁琐,不够直接。想做到易用却又端着自己的设计风格和程序框架上的思路,自我矛盾,而想要专业却又远不及真正专业的大厂。这也导致了UniFi处于市场中不上不下的位置。 采用 UniFi的AP设备新版本采用必须把设备连接到有dhcp的网络中才能正常采用,否则大概率采用会失败。 最老的设备恢复出厂设置以后是自带DHC..
更多![loading..](https://img.elmagnifico.tech/static/upload/elmagnifico/202308292327684.png)
![loading..](https://img.elmagnifico.tech/static/upload/elmagnifico/202308292327684.png)
RouterOS配置WireGuard
Foreword RouterOS 从7版本开始加入了WireGuard,方便用户做异地组网,当然如果有Zerotier,也能组网,作为RouterOS 力推的组网方式,试一试看效果如何。 SD-WAN 做异地组网还有一种方案就是使用SD-WAN,不过这个技术随便查查就知道了,基本是天价,运营商给的价格非常高,带宽又特别小,很不实用。 WireGuard https://www.wireguard.com/ WireGuard最早听说是用来当VPN,翻墙用的,各种工具,UI封装以后拿来翻墙。不过随着封锁力度逐步增大,WireGuard也变得可以精准识别了,同时由于WireGuard本身是UDP,很容易被QOS,所以也没尝试过。由于他本身的一些特性,非常适合用来做异地组网,所以如果是国内..
更多![loading..](https://img.elmagnifico.tech/static/upload/elmagnifico/202308292327684.png)
![loading..](https://img.elmagnifico.tech/static/upload/elmagnifico/202308292327684.png)
RouterOS配置WireGuard和ZeroTier
Foreword RouterOS 从7版本开始加入了WireGuard,方便用户做异地组网,当然如果有ZeroTier,也能组网,作为RouterOS 力推的组网方式,试一试看效果如何。 SD-WAN 做异地组网还有一种方案就是使用SD-WAN,不过这个技术随便查查就知道了,基本是天价,运营商给的价格非常高,带宽又特别小,很不实用。 WireGuard https://www.wireguard.com/ WireGuard最早听说是用来当VPN,翻墙用的,各种工具,UI封装以后拿来翻墙。不过随着封锁力度逐步增大,WireGuard也变得可以精准识别了,同时由于WireGuard本身是UDP,很容易被QOS,所以也没尝试过。由于他本身的一些特性,非常适合用来做异地组网,所以如果是国内..
更多一日一技:在Scrapy中如何拼接URL Query参数?
我们知道,在使用Requests发起GET请求时,可以通过params参数来传递URL参数,让Requests在背后帮你把URL拼接完整。例如下面这段代码:12345678910111213# 实际需要请求的url参数为:# https://www.kingname.info/article?id=1&doc=2&xx=3import requestsparams = {'id': '1','doc': '2','xx': '3'}requests.get('https://www.kingname.info/article', params=params)那么在Scrapy中,发起GET请求时,应该怎么写才能实现这种效果呢?我知道很多同学是通过字符串的format操作来拼接URL的:12..
更多![loading..](https://www.nosuchfield.com/images/20230826/1.png)
![loading..](https://www.nosuchfield.com/images/20230826/1.png)
ANTLR4从入门到实践
ANTLR(ANother Tool for Language Recognition)是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文档。它被广泛用于构建语言、工具和框架。ANTLR根据语法定义生成解析器,解析器可以构建和遍历解析树。安装以Linux系统为例,我们首先安装Java17~ java -versionjava version "17.0.6" 2023-01-17 LTSJava(TM) SE Runtime Environment (build 17.0.6+9-LTS-190)Java HotSpot(TM) 64-Bit Server VM (build 17.0.6+9-LTS-190, mixed mode, sharing)随后我们下载antlr4的完整依..
更多生成式模型相关记录
最近在做生成式模型的一些工作,至今算是能有些总结的了,趁着还有些能记住的地方,赶紧记录下来,后面想到了再补充。 前期调研1. 相关工作目前我们在做的算是业界独创的,搜了一圈,没有相关的工作,所以我把PaddleNLP中generation相关的任务给看了一遍,比如question_generation,用T5预训练模型或unimo-text项目,machine_translation中的transformer部分,对于大致的实现思路以及各自在解码时采用的策略都作了些了解,所以整理实现起来并不复杂。 2. 预训练模型选择这里反而是比较头疼和纠结的地方,从类型选择上有两大类:decoder和encoder-decoder。对于这部分在huggingface course上是怎么解释或者区分的呢,如果你用于文本..
更多![loading..](https://blog.est.im/images/2023/stdin-10-01.webp)
![loading..](https://blog.est.im/images/2023/stdin-10-01.webp)
为啥Linux下病毒比较少
最近下载了一个Linux的病毒,把它解包了。 尝试用root身份运行,发现啥也没有。 Google了俩小时,发现这病毒没解包到 /usr/local/bin 而是解压到了 malware 用户没有写入权限的 /usr/bin,于是病毒创建不了进程文件。 从某个中文论坛里找到了修改过的 .configure 和 .make 文件,重新编译重新运行了一下。 病毒说它需要 cmalw-lib-2.0,结果发现这玩意是 CentOS 里的,Ubuntu 里没有。Google 了好几个小时找到了从源码构建 .deb 包的方法。 这病毒总算开始跑了,然后打出来几行日志,吐了个 core dump 就 crash 了。翻了一个小时日志发现这病毒假定自己跑在 ext4 文件系统上然后调用了 ext4 的加密 API。..
更多![loading..](https://kingname-1257411235.cos.ap-chengdu.myqcloud.com/20230820152921.png)
![loading..](https://kingname-1257411235.cos.ap-chengdu.myqcloud.com/20230820152921.png)
一日一技:Scrapy最新版不兼容scrapy_redis的问题
有不少同学在写爬虫时,会使用Scrapy + scrapy_redis实现分布式爬虫。不过scrapy_redis最近几年更新已经越来越少,有一种廉颇老矣的感觉。Scrapy的很多更新,scrapy_redis已经跟不上了。大家在安装Scrapy时,如果没有指定具体的版本,那么就会默认安装最新版。这两天如果有同学安装了最新版的Scrapy和scrapy_redis,运行以后就会出现下面的报错:1TypeError: crawl() got an unexpected keyword argument 'spider'如下图所示:遇到这种情况,解决方法非常简单,不要安装Scrapy最新版就可以了。在使用pip安装时,绑定Scrapy版本:1python3 -m pip install scrapy==2.9..
更多![loading..](https://iitii.github.io/images/macos/bmac/rx580/Untitled.png)
![loading..](https://iitii.github.io/images/macos/bmac/rx580/Untitled.png)
蓝宝石 RX580 2048sp 刷 vbios 降级 RX570 记录
刷机有风险, 后果自行承担因为这个卡黑苹果支持有问题, 所以需要降级为 RX570, 才能正常黑苹果. 要不然显存只有几兆或者十几兆之所以选择刷 RX570 的 vBios, 是因为 RX580 2048sp 是 RX570 的马甲检查当前型号和显存编号备份 vBios点击 BIOS Version 旁边的 箭头即可导出查找 vBios打开Google,为了方便,直接输入以下信息检索1“RX 570” “Sapphire” K4G80325FC +site:techpowerup.comhttps://www.techpowerup.com/vgabios/235048/sapphire-rx570-8192-191031寻找适合自己的 vBIOS,查看 vBIOS 的信息,确保显存大小和显存颗粒跟你显卡..
更多![loading..](https://kingname-1257411235.cos.ap-chengdu.myqcloud.com/20230813142830.png)
![loading..](https://kingname-1257411235.cos.ap-chengdu.myqcloud.com/20230813142830.png)
一日一技:如何对Python代码进行混淆
目前市面上没有任何方法能够完全避免你的程序被人反编译。即便是3A游戏大作,发布出来没多久也会被人破解。现在只能做到增大反编译的难度,让程序相对无法那么快被破解。我们知道,Python代码默认是公开的。当你要把一个Python项目给别人运行的时候,一般来说别人就能看到你的全部源代码。我们可以使用Cython、Nuitka对代码进行打包,编译成.so文件、.dll文件或者是可执行文件,从而在一定程度上避免别人看到你的源代码。我在字节的时候,内部的一个系统就是使用Cython打包的,然后部署到客户的服务器上。Cython、Nuitka在打包大型项目时,需要写大量的配置文件甚至是额外的程序,有一定的使用成本。如果你对安全的要求并没有那么高,那么其实你只需要对Python代码进行混淆,就能防止自己的代码被人轻易看到..
更多