随着 AI 技术的流行,越来越多的工具被提供了出来,但是众所周知的是,很多是 Python 的,在 windows 平台上就不得不提到长路径。尽管这是一个历史遗留问题,而且很多软件的安装包在安装的时候,也提供选项可以快速启用这个功能。
但是,很多时候,我们还是需要手动来打开。
网上基本上有注册表和组策略这两种方式,相比而言,衣服自己洗这里更偏爱注册表的方式,绿色干净。
- 打开注册表编辑器
- 找到如下路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSytem
- 找到如下键值:LongPathsEnabled。将值修改为1即可。默认是0不启用
如果对于有的软件还提示这个,可以重启系统后再试一试。
我的老爷机一直用的是 win10,以前有发现系统经常用着用着,CPU占用就上去了。后面发现是系统自带是杀毒软件在搞鬼,就不能挑个不用电脑的时候来扫描么。
后来,有看到一个方式是使用工具完整地卸载内置的杀毒软件,但是感觉可能会导致系统不稳定,没有采用。
后面实在是困扰的不行,只好把整个硬盘都放到例外文件夹里。
今天,在网上发现了一个新的方法,感觉满足自己的要求:不卸载,但是又对其进行控制。
运行 gpedit.msc,打开组策略,计算机配置-管理模板-Windows 组件-Microsoft Defender 防病毒-扫描,在右边有一个默认未配置的“指定扫描期间 CPU 使用率的最大百分比”,双击打开,启用并设置百分比为 2%,其默认的 50% 实在是吓人。
去年的这个时候,大家都在床上发烧,小区显得格外安静。现在疫情放开已经差不多将近一年了,在最近的时候呢,发现身边的很多人都和医院杠上了。
看到一个消息是说在医院挂急诊的号,排到了24小时后。很多小朋友都因为高烧在医院里排队,一些家长跑好几个医院没有号。
甲流、支原体、合胞病毒都非常猖獗,加上冬季感冒,大家可得千万小心,出门在外也尽量带上口罩。
对于每一波都没有逃过的人,实在是太痛苦了。
在前面的文章中,我们使用了PM 2这个软件来做任务管理。今天再给大家推荐supervisor。
supervisor是一个进程管理工具,,同时,它也是一个客户端/服务器系统,允许用户在类unix操作系统上控制多个进程。
supervisor是用 Python 开发的一套通用的进程管理程序,具有下面的特点:
1、能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。
2、当进程中断的时候supervisor能自动重新启动它
3、为supervisord或者每个子进程,设置一个非root的user,这个user就可以管理它对应的进程
安装:
pip install supervisor
默认会生成下面路径
# supervisord 路径
/usr/local/bin/supervisord
# supervisorctl 路径
/usr/local/bin/supervisorctl
# echo_supervisord_conf 路径
/usr/local/bin/echo_supervisord_conf
最近在搜索使用C#来实现文件扩展模块,即右键属性对话框里的设置,这个基本上是 com 实现的,当然就是支持 C++,这个东西对我来说过于复杂了,全网搜索了下,最后发现了一个项目满足自己的需求,这里推荐给大家,希望大家喜欢。
https://github.com/dwmkerr/sharpshell#property-sheet-extensions
今天有收到一个问题,描述是 Angular 项目本地可以通过 http://localhost:4200 访问,但是 http://127.0.0.1:4200 却无法访问。开始以为是 DNS 解析的问题,清理了 host 文件后并更新缓存,问题还是存在。
后来经过搜索,用 ng serve –host 0.0.0.0 –disable-host-check 启动 Angular,问题解决。应该是升级到新版本后,基于安全策略给禁止了。
最近是有一个需求而不得不使用 PowerShell 来操作注册表,搜索了一下,有提供常规的命令方式,也有使用 .net framework 的实现,最后看到一个比较简单的方式,像使用文件系统的文件夹一样,比较适合我这样的懒人。
即我们可以以 PSDrive 的形式来访问注册表。
首先,输入 Get-PSDrive 命令可以获取当前提供的 PSDrive,感觉好厉害的样子。
我们可以像文件夹一样,一级级地进入,当然根目录别忘记了分号,例如 cd hklm: 。到达我们指定的路径后,就可以使用 New-Item 和 Set-ItemProperty 命令来新增项和键值了。
Set-ItemProperty .\FileLogger -name AllLogs -value Trace
意思就是说,为 FileLogger 这个项,创建一个键,名称为 AllLogs,值是 Trace。
够简单,够直接。
最近发现 docker 里的一个应用无法启动,总是报告 “failed to initialize logging driver”提示,在网上搜索了一下,找到了解决方法。对于我的这个案例来说,就是由于 lock 文件导致的。
来,直接上步骤:
1、在 docker 里开启 22 端口,然后远程 ssh 连上去。
2、输入 sudo -i 切换到管理员权限
3、输入 docker ps -a 可以查询到所有的容器,这一步可以获取到容器的 ID
4、输入 docker inspect –format='{{.LogPath}}’ <容器ID>,可以获取到该容器的日志路径
5、cd 命令进入到该目录下,然后 ls 显示所有的文件
6、删除 log 文件,对于我的案例,删除 log.db 文件
7、输入 docker start <容器ID>
至此,该应用就启动起来了。
网上的说法是由于多个终端曾经操作容器,造成容器日志被锁。而容器的日志作为启动必须加载项,被锁造成启动失败。庆幸的是容器日志可被清空删除,删除后会重新创建。
因此移除异常的日志数据库,重启容器后恢复正常。
我的台式机,也不清楚是在系统升级后还是在卸载 SourceTree 后,再次使用 git 时,报告了 permission denied (publickey),一时之间也无法确认具体是发生了什么。
按照网上的说法,第一步是要生成新的 ssh key,由于我已经确认在目录下存在 id_rsa 和 id_rsa.pub 文件,所以这个问题肯定不是 ssh key 的问题。
我也检查了 pub 文件里的内容,和 bitbucket 里的是一样的,所以这个也可以排除。
有说要把 ssh key 添加到 keychain 里,输入命令 ssh-add “私钥的文件路径例如id_rsa”
发现还是不行,只好把 SourceTree安装回来,导入证书,并在选项里设置使用 OpenSSH,SourceTree 可以正常使用了。
重启系统后,发现 git 也可以使用了。所以,莫名其妙又好了。
在 chrome 的帮助菜单里经常可以看到 您的浏览器由所属组织管理,不管是否真的受组织管理,这个就让人特别不舒服。
本文提供一些思路:
1、打开浏览器,输入 chrome://management, 回车即可检查到当前电脑上安装的所有相关扩展程序。
2、输入 chrome://policy,回车即可检查到当前电脑上的组策略情况。
3、直接打开注册表,进入到 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist 路径,可以将里面的键值给删除咯。
既然不守规矩,那么大家都不要吃了,掀桌子。