以截止到2022.9.22最新的VirtualBox 6.1.38 和 VMware VMware Workstation Pro16.2.4 对比 价格:VirtualBox 首选, VirtualBox 免费开源,VMware player免费但是仅限非商业用途,VMware WorkStation 不便宜(接近2k)。这点是很大的影响决策的因素。当然你用盗版VMware或者VMware player,或者非商业 也没啥。 轻量:VirtualBox是首选,VirtualBox安装后也就战役红260M硬盘 VMware 1G起步 多系统支持:Linux macos Windows都支持 另外VirtualBox支持无图形界面的Linux使用,也有一个基于php的web管理工具phpvirtualbox,VMware不清楚是否有。macos下vmware fusion player也是免费的,但也仅限非商业。 虚拟机文件管理:VirtualBox 就三个文件 vdi(虚拟磁盘) vbox(配置文件) prev(vbox的备份),VMware一堆 虚拟机磁盘管理:VirtualBox 的注册机制麻烦,自行复制虚拟磁盘后,会uuid冲突需要去修改一次。VMware不存在这问题。好像只有VirtualBox 存在虚拟机介质注册这个机制,而且还会检测uuid冲突 虚拟机磁盘格式支持:VirtualBox 支持 vdi vhd vmdk,并自带这三个之外的数种常见磁盘格式的转换。VirtualBox 只支持 vdi磁盘的整理压缩,vhd还是用Windows来。VMware只支持 vmdk但是也其他磁盘格式到vmdk的转换。VirtualBox 对vhd的完美支持,在Windows下管理更方便 共享目录:都支持 2D性能:Windows下VirtualBox 比kvm和VMware的2D性能更强。有物理机的50% 3D性能,VMware性能不错,VirtualBox 凑合。但是VirtualBox 的显卡内存不是网上其他博文说的只可以128M 命令行模式 可以随意改 ,也没有那么不堪。但是VMware的3D性能可以接近物理机60%左右 cpu、内存和硬盘性能: 都一样,所有的虚拟机系统基本上都差不多的性能。 黑苹果:VMware需要unlock后安装,VirtualBox 需要命令行修改后才可以装最新的 maos11-13。VirtualBox 的macos不支持两个核心以上的macos 会出现一些文件。VMware的不存在这个问题。安装后的macos 都是 半斤八两,应急用没啥问题,做吃力的工作都不现实。尤其3D性能都垃圾。 usb3 的支持,都支持。VirtualBox 有一个扩展包,大概几十m,是一个独立在VirtualBox 的扩展包和主版本一起更新。并不存在什么 麻烦的。安装挂载也简单 tpm支持:都支持,VirtualBox 支持tpm直通,VMware支持模拟的,是否可以直通不知。只是安装win11的话,这个没差,都可以绕过 硬盘直通:都支持,VirtualBox 需要做一个vmdk文件映射物理盘 虚拟化嵌套:VirtualBox 支持,VMware应该是不支持的,未测试过。这就导致了虚拟的Windows下 基于hyper-v的wsl docker会有问题吧。 半虚拟化:VirtualBox 支持,VMware应该是不支持的,未测试过。另外 kvm hyper-v xen都支持半虚拟化,性能损耗更少 软虚拟:VirtualBox 支持,VMware应该是不支持的,未测试过。VirtualBox 可以运行arm的安卓。VMware好像是不可以的。网上大量的安卓模拟器都是内置VirtualBox 最新版黑群晖支持:都支持,都一样弄。不存在新版在VirtualBox 装不上的问题,自己弄引导就好了。 动态磁盘:都支持 网络支持:都支持 桥接 nat ,没差别。 命令行启动,注册为Server:都支持 动态内存管理:就是可以释放没占用的内存,hyper-v的很秀,VMware支持 ,VirtualBox 也 技术文章和第三方支持广泛性:国内VMware的文章更多,某一些特殊系统的安装VMware的教程更多。国内企业选择VMware的也更多。培训和教程也多以VMware为主。VirtualBox 通常被说成一种问题多性能差功能少的 其他虚拟机系统缺点 kvm,仅适用于Linux,模拟的Windows 3D 2D都拉跨,但是可以用显卡直通和vgpu来提升。非常适合Linux老手使用。Linux的不二选择。也是unraid pve等系统的默认虚拟机系统,群晖也是 hyper-v,接近免费,支持 vgpu 支持显卡直通,vgpu。可惜usb支持不佳。如果不是大吞吐量usb设备可以用第三方软件,或者 rdp等解决。 ecxi 和基于kvm的unraid pve 群晖等 不在对比之列 可以看到VirtualBox 对VMware相比缺点有: 3D性能VirtualBox 仅支持到DirectX9以及OpenGL3.0,DirectX 11 和 OpenGL 4.1 3D 加速图形支持 虚拟最新黑苹果,不支持2个以上核心,不过VMware的macos性能也很拉跨,半斤八两。 VirtualBox 对比kvm和hyper-v的缺点: 不支持显卡直通和vgpu 怎么选 macos下运行win和macos,不用想 肯定首选是pd虚拟机。如果不玩游戏 自然也可以 VirtualBox 或者vmware fusion Linux下 性能考虑首选kvm,如果不习惯,就选VirtualBox 或者vmware 。无 图形界面的Linux不需要太多3d性能的话,首选VirtualBox win/Linux 需要虚拟化macos,首选VMware,VMware player其实就够了。 需要3D性能,显卡直通,那就 kvm hyper-v,exci unraid pve等 不需要直通,需要vgpu那就 hyper-v kvm 只是需要基本的3D性能,那就VMware 次选VirtualBox macos下运行win,首选Parallels Desktop Linux server下 首选kvm 和VirtualBox win下和Linux 混合商业用途,想省钱,那就首选VirtualBox 了。尤其是运行 不需要3D性能的服务的时候,图形化界面,多格式虚拟磁盘支持。不用usb 还许需要 正版window 不需要usb,或者只是简单u盘 rs232之类的,且不需要VMware的情况下(VMware和hyper共存的情况下,VMware性能超级拉跨),首选hyper-v 我的选择:宿主系统也用来工作,因主要使用的软件不支持Linux winpe后性能拉跨,所以宿主机是Windows。偶尔用macos处理ios签名等问题。有一个Linux server 开发环境但是一直开机的,方便和主linux server 同步以及开发版调试。偶尔替代主力server使用,这个server上有一些敏感内容,且商用。 也就是 最终就1-3个虚拟机而已,而且除了macos均没有3d需求,所以VirtualBox 成了首选

2022年 9月 22日 Read all

先说黑苹果,软件多,主流软件均可使用。但是如果不是一直需要ios调试开发,不太适合我。因为长期使用远程工作,客户端有win ipad 安卓pad等情况,苹果的adr协议客户端很有限,而且多数不怎么好用,有一些不能全屏 有一些右键有问题。xrdp协议 算是阉割版的rdp协议,和真正的xrdp相比不实用 其次说桌面 Linux,输入法的词库问题可以忍。但是hbuilderx wine后功能不全不说(真机调试困难),存在nodejs.exe大量吃cpu的问题 unraid 功能 和性能 以及硬件直通 等 都没问题,以及U盘启动可以方便备份 等优点。而且只需要一个512M的u盘就可以了。(最好是好点的,杂牌U盘自己做好备份) unraid 还有以一个优势就是有一个成熟的apps市场,常见的插件甚至黑果自动安装脚本都有。缺点就是非常依赖github,需要自行解决墙或者hosts的问题,unraid 本身有很多xx版,用的好的话 就去买一个正版硬盘少的话并不贵。 作为主系统而不是nas使用的缺陷有一个硬盘分区格式,以及文件管理的混乱(主要是值得*映射文件,当然做nas的这都不是问题)。以及虚拟磁盘格式 只有img个qcow2 两种,而且qcow2转换后 很多启动问题。 pve 基本上就是unraid 的缺点他都有,而且只自带LXC,优点是 免费 ESXi 个人版免费,因时间有限而且unraid 足够优秀,所以没用使用过。 还一个方案 是linux+虚拟机的方案。 关于虚拟机的选择,我更倾向于virtualbox作为主虚拟机管理,简单方便。cpu和内存 硬盘 对VMware hyper-v等对比更不差,只是显卡直通 和 3d性能孱弱。kvm也是一个好选择,但是既然主系统因为部分常用软件的问题无法做日常使用,又何必。。。 剩下的系统 就只能是Windows了 windowxp 优点:磁盘体积小,几乎不占用多少硬盘。适当精简一下就可以控制到几百M,缺点: 主流软件已经不支持,如果日常系统用虚拟机系统的话,这个不是啥问题 远程桌面不支持3D,ps:virtualbox支持Windows NT 2000 xp win7-11 部分驱动可能有问题 不支持vhd启动,可以用Grub4dos+winvblock解决 Windows 2000 同 WindowsXP ,当年在 xp大行其道的时候,Windows 2000 server做桌面端 别提有多爽,坏念青葱岁月了。 win7 win8 因为支持compact均可控制到8G左右硬盘占用 部分软件已经不支持win7 win10 win11 没啥太大差异,win8 以后系统 可以做主系统使用 也可以做虚拟机server使用 最后的选择 unraid win2000/xp win11 三选一 unraid 也不能说过于折腾吧。只是先有几个虚拟机 还在vbox下 懒得迁移 win2000/xp 驱动问题也懒得弄 还是 win11 来搞,精简压缩一下就好了。不过不精简 也可以轻松控制到12G以内

2022年 9月 22日 Read all

这也不算是bug 附加一个空字符串 就好了

2022年 9月 19日 Read all

原型产品使用的 thinkphp+mysql+redis开发的 纯api,由于并发太大,php吃资源离谱。基于节约成本考虑,直接用go重写 。数据库 依旧是原来数据库。 总共30几个接口,历时一个月从零开始学习go并完成迁移工作。先重写大并发接口,而后逐个线上替换。 go主要用的库 jsonparser 是一个json处理库,比自带的encoding/json速度要快,但encoding/json更灵活一些,所以都使用了 fasthttp 是一个更加高性能的web服务,在多并发的时候 线程复用更强大 但是 依旧使用了 net/http 来处理一些 第三方sdk 感受和优势 1、vscode自带代码校验,大错误小错误都会提示,代码低级失误较少。代码自动格式化 2、不需要搭建环境,golang官方直接下载 安装即可,zip的话添加一个系统变量即可使用 3、可以不依赖nginx,当然基于ssl gzip 日志 等需求,前端还是套一个nginx 简单一些 4、编译速度很快,在vscode可以简单重新编译调试,4秒左右 5、直接导出二进制文件,不用担心源码泄露 尤其是源码里面的一些密码部分。比如md5的二次加密密钥等 6、计划任务 定时任务,可以直接单开一个线程处理,不依赖前台php文件唤起(当然 shell php也可以)go处理起来 很简单只需要一行 go cron_tab() //并发任务 即可 7、宝塔自带守护进程,不需要自己另外守护 8、fmt.Println fmt.Fprint(ctx, "{}") 的日志输出,开发过程中监控运行状态更简单 9、跨平台 依旧有高性能,win linux mac arm均可以搞定 10、可以开发简单的 客户端软件。同语言 搞起来省心 11、包管理和源码文件 管理,没有php方便 ,需要用go mod 或者第三方框架 12、go和php相比,强类型需要时间适应,另外很多函数需要自己复写。go的异常处理 较为啰嗦,原生开发go的话,需要自己写大量简单的函数来封装 以便主流程代码简洁比如 md5 函数 还有 json和map互转 等等 13、字符类型转化 很啰嗦,甚至 int int8 int16 之间转化 代码啰嗦,不过按需使用 可以做到更快的运行速度和极限的更低的资源占用

2022年 9月 19日 Read all

其他类型转化为字符串 可以使用strconv包的方法,也可以用fmt,如果数据本身是interface的话就只能用fmt 字符串转byte byte转字符串 字符串转化为其他类型 字符串转化float64 float32 float64转化int int转化float int和int64互转 time转int map[string]interface{} 的一个数字转化为int 需要三步 json 和 map互转 map转化json字符串 json 字符串 转化为map 使用encoding/json库,性能比github.com/buger/jsonparser 要差一些 jsonparser 不知怎么转换 不带数组格式的json转map 数组格式的json转map Sql查询结果转json字符串

2022年 9月 9日 Read all

使用举例

2022年 9月 8日 Read all

方法很多 rclone sshfs-win 都可以,但是图形界面并且配置简单的 还是 sFTPDrive 免费版本 不支持命令行,只支持手动绑定,重启也需要手动启动一次,但是其实也足够了。

2022年 9月 8日 Read all

先在linux下安装增强工具,虚拟机>设备>安装增强功能 没有自动挂载cdrom,手动挂载一下 mount /dev/cdrom /home/centos/rom 然后cd /home/centos/rom 再运行 sh VBoxLinuxAdditions.run 可能要提前安装一些依赖 apt install kernel sources kernel-devel gcc 或者 yum安装 然后添加共享 选择挂载位置,重启虚拟机主机 就可以了 文件权限 是 770 root所有 ,貌似无法修改

2022年 9月 1日 Read all

日常使用环境 win8 win11 + ubuntu linux desktop+ ios设备 vbox 虚拟机已经在跑ubuntu+宝塔 多远程环境使用,笔记本性能拉胯 需求: 自动备份 桌面环境下 某些文件 [只要能挂载 sysnc之类的软件可以简单搞定] 标准目录储存 ios 只要求能访问 ES文件浏览器 支持 smb ftp sftp webdav 等多环境 不是问题 文件实际保存在 windows NTFS分区 ,方便管理维护 可以自动同步到 公用云 阿里云盘 百度云 可以加密储存 视频文件可绕过公用云的 ai 原因你懂的哈 支持在线视频音乐播放 文本文件编辑,md文件编辑 尽可能的替代群晖 抛弃的方案: 群晖:确实好用,但是 无法使用物理机的文件系统作为数据目录,另外黑群晖也存在不稳定的情况 seafile nextcloud 等私有盘系统,过于繁琐,且免费版限制较多 unraid : 也不错,但是多数功能还是需要自行解决,在不嵌套虚拟机docker的情况下,同样没太大意义 最终方案 用来运行宝塔的虚拟机,通过ftp或者smb挂载物理机目录到虚拟机内 基于php+文件系统的 私有云方案 可道云 nextcloud phpEasyVCS 等 虚拟机 linux中挂载本地硬盘 并映射到 虚拟机的指定目录 阿里云 webdav容器+百度云 两种方式 可道云相关功能 kodbox支持 sqlite 支持 mysql 也有一个版本[KodExplorer]可以无数据库运行,但是不支持webdav[可以用phpEasyVCS 解决] kodbox的redis 不支持密码连接 [小事情] 自己用访问量不大,也可以用文件缓存 或者Memcached 免费版本 除了用户数限制之外,定时备份不支持文件备份[可以用linux shell 解决] 支持在线编辑md 文本 没找到 文件加密储存方法, 视频文件可以用自定义后缀名绕过公用云 机密文件 自行用zip加密算了 经过简单测试 KodExplorer 可以保持原目录结构保持文件 KodBox拆分日期保存。 也就是 KodBox 反而集合了seafile的缺点,还自带了owncloud 和nexcloud的php低效缺点 。不符合我需求,KodExplorer 不错,但是不支持 oss和百度云云挂载,也不支持webdev 不过这些都可以解决。KodExplorer 更像是一个加强版的在线文件管理器。KodExplorer完全开源,版权可以修改,但是会有一个修改提示。 最后的选择 在线文件关联 简单编辑 音影视频播放 KodExplorer webdav 使用php 或者apache/nginx功能搞定 手机ios访问,es文件管理器 用sftp 或webdav Windows系统访问,sftp挂载 或者 webdav挂载 公用云备份功能:阿里云盘目前可以用webdav暂时先用,百度云盘也尽量搞定防止阿里云盘失效,坚果云虽支持webdav但是免费版限制太多,收费版速度一般般,阿里oss 储存其他一些文件 远程下载功能:远程桌面直接迅雷,后期单独搭建一个Aria 公有云备份功能1:宝塔自带的备份到oss功能 公有云备份功能2:rclone挂载

2022年 8月 31日 Read all

docker 再跑一个mysql 是最简单的了哈 docker pull mysql:latest docker run -itd --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql 如果还要自定义配置文件的话 用-v mkdir /www/wwwroot/leiyanhui.com/docker-mysql-cnf docker run -itd --name mysql -v /www/wwwroot/leiyanhui.com/docker-mysql-cnf:/etc/mysql/conf.d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql 然后在宝塔面板 添加远程服务器

2022年 8月 30日 Read all

除去用ramdisk redis 内存表等方法,比较靠谱的方案 还是 仔细优化mysql 手动缓存mysql 查询 query_cache_type有3个值 0代表关闭查询缓存OFF,1代表开启ON,2(DEMAND)代表当sql语句中有SQL_CACHE关键词时才缓存 建议用 2select SQL_CACHE user_name from users where user_id = '100';query_cache_size = 64M ,不宜设置过大,否则在数据更新的时候,会有较大的性能开支用于标注失效。 每个表 创建一个 InnoDB FILE: innodb_file_per_table=1 ,为了防止 ibdata1 过大失控 ibdata1 想要瘦身,最好的办法,还是重建表,即为,复制表>删除原表>新表改名 innodb_buffer_pool_size 最好和目标数据库内容差不多大,这样 就可以完全从内存中读取数据另外innodb_buffer_pool_size 在mysql启动的时候,里面没有数据的,需要查询一下常用记录以便预热,在整库备份之前,最好也预热一下,以免占用太多时间。如果数据较少,这步骤也可以忽略。 修改硬盘写入频率:innodb_flush_log_at_trx_commit,默认1代表实时写入,0 是1秒一次 2也是1秒一次。修改0 就好。当然非正常关闭的情况下有概率会丢失1秒的数据 打开慢查询日志,记录查询超过1秒的数据【生产服务器,注意硬盘】long_query_time=1log-slow-queries=/var/log/mysql/log-slow-queries.log 关闭服务器端 SWAP 所有查询 最后还是要 LIMIT

2022年 8月 30日 Read all

redis很强很轻量,但是对于结构化数据 mysql具有天然优势。 这里只记录 使用mysql内存表替代redis的一个方案,只适用于某些特殊情况 但是 mysql 内存表有几个天然缺陷 Memory不支持行锁只支持表锁,只有InnoDB支持行锁。这就导致了大并发的时候,尤其是并发写入的时候 mysql的Memory引擎效率并不高 另外Memory不支持持久化储存,在宕机重启的情况下,虽然可以导入新数据。但是如果配置了主从同步会出现更多复杂问题。 为了规避这些问题,可以在以下场景式 使用。 最后采取的理想方式: 1、分库处理,库A 所有表使用InnoDB,配置好主从同步并用户储存所有数据。库B 只有部分表从库A复制的表,且全部是内存表,不进行主从同步。 2、mysql启动的时,库A部分表数据 完整复制到库B,或者应用端在查询不到数据的时候,自动复制数据过来。 3、定时同步库B数据到库A 以持久化保存 其他要注意的: 1、频繁写入的数据,依旧还是使用redis,这是redis的天然优势 2、关闭库B的 查询缓存(没有太大必要使用) 3、大量数据非经常查询的数据,放在 先看一个创建一个表 和复制一个表的基本语法 另外一个简单的解决方法 是使用 ramdisk (tmpfs),然后使用InnoDB 或者 MyISAM即可 然后定时备份 ramdisk(最好关停mysql后备份) 其实需要的是 优化mysql 频繁查询 较少写入的表的查询操作 开启查询缓存 这个比较好理解

2022年 8月 30日 Read all

php终于支持jit了,而1996年java已经支持jit php8.0 默认情况下 和php7.4性能基本接近,但是开启jit后 在cpu密集计算的情况下可以提升92%左右的性能,比php5 性能提升5-7倍 PHP 8 的 JIT(Just In Time)编译器将作为扩展集成到 php 中 Opcache 扩展 用于运行时将某些操作码直接转换为从 cpu 指令,大概来说就是之前版本的Opcache 可以跳过编译解释直接机器码到zend,而jit跳过zend 直接到cpu指令 。PHP 的 JIT 使用了名为 DynASM (Dynamic Assembler) 的库,该库将一种特定格式的一组 CPU 指令映射为许多不同 CPU 类型的汇编代码。 因此,编译器只需要使用 DynASM 就可以将 Opcodes 转换为特定结构体的机器码。 JIT编译原理 1、检查opcodes是否缓存 2、zend compiler编译器进行编译生成opcodes 3、optimizer优化器生成优化后的opcodes 4、把优化后的opcodes放入opcodes cache缓存 5、jit编译器把optimized opcodes再次编译成汇编机器码machine codes 6、进入zend vm虚拟前先检查是否开启jit引擎 7、如果已经开启了jit引擎则直接读取机器码中的jit buffer代码片段 8、送入x86 cpu架构进行执行 其他要明白的 1、Opcache会做opcode层面的优化,比如图中的两条opcode合并为一条 2、PHP8的JIT目前是在Opcache之中提供的 3、JIT在Opcache优化之后的基础上,结合Runtime的信息再次优化,直接生成机器码 4、JIT不是原来Opcache优化的替代,是增强 5、目前PHP8只支持x86架构的CPU arm还要等着 当然如果php只是处理一些io操作,那么你用php5 还是php8 都差不多,因为性能瓶颈在io上而不是cpu上。如果是IO 密集型操作的 应用,开启jit反而可能会有10%左右的性能消耗 ,尤其是Laravel。 在密集计算的情况下,对比php7.4 和 未开机jit的php8 性能提升差不多是92%-120% ,也就是1倍左右。 当然 即便是开启了 jit,在密集计算上,php的性能依旧被 node.js java C# go C++ 吊打 至于为什么使用php 这个各取所需的话题没啥可说的 所以还是尽快升级到php8 刚刚在宝塔中查看,已经支持到8.1.9 性能再提升4%左右 新项目不用考虑 直接上了。 在php.ini 中看到 opcache.jit_buffer_size=128mopcache.jit=1205 宝塔默认帮开启了,opcache.jit这个配置由4个独立的数字组成,分别代表 是否使用AVX指令 寄存器分配策略 JIT触发策略 JIT优化策略 具体查看php8手册 值得注意的时php8.1.9下 部分扩展可能尚未支持 libssh2 【依赖关系如下:PECL/ssh2 –> libssh2 –> openssl】 sg11 常用的扩展 swoole redis之类的肯定都是没问题的

2022年 8月 29日 Read all

1、VirtualBox 免费开源 2、cpu 内存 和 硬盘 性能并不比vmware差 3、支持vdi vhd vmdk分区格式,自带命令行版本万能转化工具 4、轻巧 5、支持macos 可以支持到13版本[2022-08-29] 6、支持usb 7、VirtualBox 做的vhd或者vdi 可以在物理机直接启动 8、VirtualBox 在多数情况下 运行linux 或者win 在不需要3d的情况下,不管直接运行还是docker 并不比vmware性能差,VirtualBox +linux+docker 的性能,也只是略逊于 wsl+docker   Windows vhd的话用BOOTICE.exe之类的的工具直接附加到bcd即可  也可以用ventoy 启动 linux的话 可以用ventoy 启动 详情参考ventoy官网   比vmware 或者 hyper-v差的地方 1、教程较少 如果是玩特殊系统新手上手难度较大,比如 最新版黑群晖的教程 就几乎没有,虽然不难,但是新手可能懵逼 2、3d性能比vmware拉胯,当然比hyper-v更拉跨 3、不支持硬件直通,vmware也不支持,exsi pve unraid之类的支持 hyper-v也可以支持   什么情况下选择 hyper-v? hyper-v不支持usb这是很多人 感觉最蛋疼的,可以用 USB Over Network 解决这个问题,其他情况下 hyper-v 性能最优,而且支持vgpu 但是 hyper-v 安装黑苹果 非常麻烦:大致流程是 开启vgpu 或者硬件直通后,以及嵌套虚拟化后 在hv 安装pve 或者unraid 再行安装黑苹果。unraid app市场带一个自动安装工具不过只支持双核cpu   什么情况下选择hyper-v 有正版Windows、对性能要求高,完全不玩虚拟macos、不喜欢在虚拟机跑docker   什么情况下选择vmware 完全不玩vhd  可以接受vmware player 或 盗版sn  对VirtualBox不感冒,对3d要求略高一些   什么情况下选择VirtualBox 不会在虚拟机里面打游戏,对3D性能要求不太高,有能力搞定一些特殊的需求   我选择 VirtualBox  + vmware 是因为我需要使用vmware跑黑苹果,另外一些商用服务器性质的内容丢到VirtualBox  运行,和hyper-v 以及物理机 之间来回迁移方便。

2022年 8月 29日 Read all

群晖磁盘使用btrfs文件格式 Windows下不容易访问 简单方法 就是安装一个驱动 https://github.com/maharmstone/btrfs 解压后 右键 btrfs.inf 安装 如果系统开了 安全启动 驱动会无法加载 需要改一下注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CI\Policy 新建一个 DWORD value called UpgradedSystem and set to 1 然后重启 另外一个软件 UFS Explorer,但是网上破解版 基本都是假的 有文件大小限制。

2022年 8月 29日 Read all

在虚拟机中运行了一个 alpine 然后运行了docker宝塔 遇到一个问题 就是 使用sftp挂载文件到本地硬盘的时候,经常出现一些莫名其妙的权限问题SFTPDrive.exe 这个软件 在win下也不是很稳定,经常莫名其妙卡死 所以 干脆还是 在虚拟机的 alpine下 共享 wwwroot目录出来 更省事一些 参考 https://wiki.alpinelinux.org/wiki/Setting_up_a_samba-server 差不多要用掉300M硬盘 另外 也可以在宝塔里面安装ftp来解决

2022年 8月 26日 Read all

新版Edge,输入edge://flags, 在右上角搜索框搜索Parallel downloading,选择Enable,然后重启edge

2022年 8月 24日 Read all

notepad++ 这个软件,还是卸载了吧。vscode 因为要处理一些常规项目,还是需要一个轻量级的文本编辑器工具来用。notepad2 不错,但是不支持多标签。notepad3 也不支持。 atom体积太大 还有一个notepad next 开源 支持mac和win Linux可选的很多,这个值得试试 https://github.com/dail8859/NotepadNext/releases/ 实际使用发现,添加到邮件菜单后,对路径里面有空格的文件处理有问题 EverEdit 试用了一下 还不错,有单独的文件关联工具,不过正版要158元 而且只有win版 有破解版 可以正常使用。有一些插件 下载速度也可以。 但是EverEdit 自带的文件关联工具,会导致reg文件关联失效,注意,不要选中 不介意用盗版的话,其实sublime text 更舒服 附带右键打开 reg代码 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\NotepadNext] @="Open with NotepadNext" "Icon"="F:\\GreenSoft\\Dev\\NotepadNext\\NotepadNext.exe,0" [HKEY_CLASSES_ROOT\*\shell\NotepadNext\Command] @="F:\\GreenSoft\\Dev\\NotepadNext\\NotepadNext.exe %1" bat处理方 @ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) VER|FINDSTR "5\.[0-9]\.[0-9][0-9]*" > NUL && ( ECHO.&ECHO 当前版本不支持WinXP &PAUSE>NUL&EXIT) rd/s/q "%AppData%\Sublime Text" 2>NUL :MENU ECHO.&ECHO 1、添加系统右键 Sublime Text 打开项 ECHO.&ECHO 2、删除系统右键 Sublime Text 打开项 IF EXIST "%WinDir%\System32\CHOICE.exe" CHOICE /C 12 /N >NUL 2>NUL IF EXIST "%WinDir%\System32\CHOICE.exe" IF "%ERRORLEVEL%"=="2" GOTO RemoveMenu IF EXIST "%WinDir%\System32\CHOICE.exe" IF "%ERRORLEVEL%"=="1" GOTO AddMenu IF NOT EXIST "%WinDir%\System32\CHOICE.exe" ECHO.&SET /p choice=输入数字项敲回车键: IF NOT EXIST "%WinDir%\System32\CHOICE.exe" IF NOT "%choice%"=="" SET choice=%choice:~0,1% IF NOT EXIST "%WinDir%\System32\CHOICE.exe" IF /I "%choice%"=="1" GOTO AddMenu IF NOT EXIST "%WinDir%\System32\CHOICE.exe" IF /I "%choice%"=="2" GOTO RemoveMenu IF NOT EXIST "%WinDir%\System32\CHOICE.exe" ECHO.&ECHO 输入无效 &PAUSE&CLS&GOTO MENU :AddMenu reg add "HKCR\*\shell\Sublime Text" /f /v "" /d "用 &Sublime Text 打开" >NUL 2>NUL reg add "HKCR\*\shell\Sublime Text" /f /v "Icon" /d "%~dp0sublime_text.exe" >NUL 2>NUL reg add "HKCR\*\shell\Sublime Text\command" /f /v "" /d "%~dp0sublime_text.exe \"%%1\"" >NUL 2>NUL IF EXIST "%WinDir%\System32\CHOICE.exe" ( ECHO.&ECHO 已添加 &TIMEOUT /t 2 >NUL & CLS & GOTO MENU ) ELSE ( ECHO.&ECHO 已添加,任意键返回 &PAUSE>NUL&CLS&GOTO MENU) :RemoveMenu reg delete "HKCR\*\shell\Sublime Text" /f >NUL 2>NUL reg delete "HKLM\*\shell\Sublime Text" /f >NUL 2>NUL IF EXIST "%WinDir%\System32\CHOICE.exe" ( ECHO.&ECHO 已删除 &TIMEOUT /t 2 >NUL & CLS & GOTO MENU ) ELSE ( ECHO.&ECHO 已删除,任意键返回 &PAUSE>NUL&CLS&GOTO MENU)

2022年 8月 24日 Read all

:: 用户变量 :: GOPATH C:\Users\Yanhui\go G:\Go_lang\C_go_path\go :: Path 添加 C:\Users\Yanhui\go\bin G:\Go_lang\C_go_path\go\bin :: 系统变量 :: Path 添加 :: C:\Program Files\Go\bin G:\Go_lang\go_bin\bin :: C:\Program Files\Git\cmd G:\Go_lang\Git\cmd @ echo off %1 %2 ver|find "5.">nul&&goto :Admin mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :Admin","","runas",1)(window.close)&goto :eof :Admin set mypath=%~dp0 echo %mypath% :: 在你的bat开头加上上面的命令即可 :: 下面是你需要执行的命令 setx GOPATH "%mypath%C_go_path\go" :: C:\Windows;C:\Windows\System32 setx PATH %PATH%;"%mypath%Git\cmd";"%mypath%go_bin\bin" /m   ECHO 按任意键继续... PAUSE >nul

2022年 8月 23日 Read all

网络情况: A电脑  笔记本电脑,没有开发环境 usb转接com口 到单片机  win11系统 B电脑  24小时开机低功耗台式机 win8.1 路由器: OpenWrt k2p 有公网ip 经过测试是不需要第三方软件,只需要 在远程桌面 本地资源  勾选上 端口 即可。但是在B电脑的设备管理器 里面看不到 用第三方串口工具可以看到 在 vmware 也可以看到[即com口可以直接在vmware的ard里面操作] 还一个方法 是用 usb over network 可以把usb转com的设备 共享出去

2022年 8月 23日 Read all
123456