普通视图

发现新文章,点击刷新页面。
昨天以前Clark's 尧望 Blog

升级macos15后,Homebrew无法使用,提示Warning: You are using macOS 15.

作者 clark
2024年9月18日 00:25
升级 macos15 后,Homebrew 无法使用,提示 Warning: You are using macOS 15.

使用 brew install XXX,时候提示如下:

Warning: You are using macOS 15.
We do not provide support for this pre-release version.
It is expected behaviour that some formulae will fail to build in this pre-release version.It is expected behaviour that Homebrew will be buggy and slow.
Do not create any issues about this on Homebrew's GitHub repositories.
Do not create any issues even if you think this message is unrelated.
Any opened issues will be immediately closed without response.
Do not ask for help from Homebrew or its maintainers on social media.
You may ask for help in Homebrew's discussions but are unlikely to receive a response.
Try to figure out the problem yourself and submit a fix as a pull request.
We will review it but may or may not accept it.

Error: unknown or unsupported macOS version: :dunno

解决办法

git -C '/opt/homebrew' remote set-url origin https://github.com/Homebrew/brew
brew update

再次执行 install 即可成功

windows11 删除微软账户,改用本地账户

作者 clark
2024年9月1日 17:12

现在电脑基本都升级为 windows11 了,但是微软账户成了一个强制性的关联账户,有时候不小心登录了,这些 onedrive, onenote,edge 浏览器全都被同步了,如果是自己私人电脑还好,公共电脑的话,就是个社死现场……

很多的 windows11 “ 改用本地账户登录 ” 找不到?可以这样解决:

运行注册表

Win+ R 打开运行,在运行输入框输入 regedit,点击确定打开注册表编辑器

windows11 删除微软账户,改用本地账户

定位注册表

位置 1:

计算机 \HKEY_CURRENT_USER\Software\Microsoft\IdentityCRL\UserExtendedProperties

位置 2:

计算机 \HKEY_USERS.DEFAULT\Software\Microsoft\IdentityCRL\StoredIdentities

然后删除你的微软账号文件夹。

注销账户后,重新进入,基本就可以看到已经改为本地账户了,如果还没变过来,继续下一步删除

登录后,显示的是本地账号,但是微软帐户依然存在,继续删除

HKEY_CURRENT_USER\Software\Microsoft\IdentityCRL【完整删除】

windows11 删除微软账户,改用本地账户

HKEY_USERS.DEFAULT\Software\Microsoft\IdentityCRL【完整删除】

windows11 删除微软账户,改用本地账户

再次在开始菜单里注销账户,到这里基本没问题了。

再次登录后,在设置 - 帐户 -【电子邮件和应用帐户】下,微软账户 xxx@xx.com,已经出现了删除,点击“删除”即可。

GIT:fatal: the remote end hung up unexpectedly

作者 clark
2024年8月24日 12:35

git 在 push 过程中,有时候遇到提示:

send-pack: unexpected disconnect while reading sideband packet
Writing objects: 100% (52/52), 1.25 MiB | 2.23 MiB/s, done.
Total 52 (delta 33), reused 0 (delta 0), pack-reused 0
fatal: the remote end hung up unexpectedly

原因是 GIT 缓冲区不够,需要增大缓冲区空间:

git config http.postBuffer 524288000

或者通过 git 配置文件进行修改

[http]  
postBuffer = 524288000
GIT:fatal: the remote end hung up unexpectedly

Navicat Premium 官方免费了

作者 clark
2024年7月1日 18:52
Navicat Premium 官方免费了

Navicat Premium Lite 支持创建连接多种数据库,包括 MySQL、Redis、PostgreSQL、SQL Server、Oracle、MariaDB、SQLite 和 MongoDB,覆盖了当前市场上主流的数据库平台。

根据官方介绍,该软件界面直观、设计完善,提供了数据查看器、对象设计器、SQL 编辑器等核心功能,使用户能够高效地进行数据库管理和开发。

Navicat Premium Lite 支持如下功能:

  • 数据查看器:通过内置的编辑器,在网格视图、树视图和 JSON 视图中无缝地查看、更新和删除记录。
  • 对象设计器:通过一个清晰且响应迅速的界面来管理数据库对象,该界面将查询编写分解为结构化的选项卡。
  • SQL 编辑器:提供无缝的编码环境,使用代码补全、代码段和语法高亮显示加速你的编码过程。
  • 导入和导出:导入和导出各种基于文本的文件(如 TXT、CSV、XML 和 JSON)中的数据。将外部来源的数据导入数据库,以及从数据库中提取数据并将其保存为不同的格式。
  • 协同合作:将连接设置、查询、代码片段和虚拟组信息同步到云服务,随时随地与同事共享。
  • 安全连接:使用 SSH 隧道和 SSL 进行安全连接,以确保数据的机密性、完整性和可用性。先进的身份验证方法包括 PAM、Kerberos、X.509 和 GSSAPI,提供了多层保护,从而防止未经授权的访问。
  • 原生设计:Navicat 是专为特定平台而设计的原生应用。
  • 深色模式:设置深色布景主题,以保护你的眼睛免受电脑传统令人眼花的白色影响。

下载地址:https://www.navicat.com.cn/download/navicat-premium-lite

免ROOT卸载/停用手机内置应用

作者 clark
2024年6月9日 19:31

当前智能手机通常预装了许多应用程序,这些预装软件有时会占用宝贵的存储空间和系统资源,甚至影响设备的性能。尽管某些预装应用可能对部分用户有用,但对于大多数用户而言,这些应用是多余的,甚至会降低用户体验。幸运的是,安卓系统提供了强大的工具——ADB(Android Debug Bridge),使用户能够更好地管理这些预装软件。
本教程将详细介绍如何使用 ADB 命令删除或停用安卓设备上的预装软件,帮助你优化设备性能、释放存储空间,并提供更纯净的操作体验。无论你是想要彻底删除某个应用,还是仅仅希望暂时停用它以减少系统资源的消耗,本文都将为你提供详细的步骤和注意事项。
在开始之前,请确保你具备一定的技术基础,并了解操作过程中可能带来的风险和后果。让我们一起开始,探索如何通过 ADB 命令来掌控你的安卓设备,提升使用体验。

1、安装 ADB 驱动

下载地址:

Windows:点击下载

Mac:点击下载

Linux点击下载

设置环境变量,此处不做介绍,请自行搜寻相关说明。

验证 ADB 驱动是否成功安装,请在命令行输入:

adb --version

若输出正常版本信息则为正确安装,如出现红色报错提示,则需要重新确认安装驱动。

2、执行 adb 命令

在开始前,请根据手机型号,打开自己的手机开发者模式(并在开发者选项中打开 USB 调试模式),并且接入手机收据线,链接至电脑,并选择文件传输模式。

以一加手机为例:

  • 打开  设置  > 底部   关于本机  > 打开   版本信息
  • 多次点击版本号,输入锁屏密码解锁  开发者选项
  • 打开  设置  > 底部   系统设置  > 打开   开发者选项
  • 找到  调试 > 开启  USB 调试
# 查看连接设备
adb devices

# 成功的结果输出
List of devices attached
xxxxxxx        device

ADB 基础操作

# 删除
adb shell pm uninstall -k --user 0 [Package Name]

#停用
adb shell pm disable-user [Package Name]

#启用
adb shell pm enable-user [Package Name]

#恢复 
adb shell pm install-existing --user 0 [Package Name]

#查看应用列表
adb shell pm list package [Package Name]

查看具体的包名,可以通过酷安社区,找到一些玩机工具箱进行查看。

以下以一加手机为例,进行演示部分功能:


#停用速览
adb shell pm disable-user com.coloros.assistantscreen

#停用手机管家(影响:杀毒无,垃圾清理无,安全支付不显示,安全事件不显示)adb shell pm disable-user com.coloros.phonemanager

#删除手机管家(影响:需要用指令恢复安装)adb shell pm uninstall -k --user 0 com.coloros.phonemanager

#停用支付保护(影响:没有支付安全提示)adb shell pm disable-user com.coloros.securepay

#停用数据服务平台
adb shell pm disable-user com.coloros.sceneservice

#停用健康数据平台(运动健康 app 服务)adb shell pm disable-user com.oplus.healthservice

#停用融合搜索服务
adb shell pm disable-user com.oplus.dmp

#删除快应用
adb shell pm uninstall -k --user 0 com.nearme.instant.platform

#删除移动服务
adb shell pm uninstall -k --user 0 com.heytap.htms

#删除自带浏览器
adb shell pm uninstall -k --user 0 com.heytap.browser

#钱包
adb shell pm uninstall -k --user 0 com.finshell.wallet

#删除 Oppo 后台广告
adb shell pm uninstall -k --user 0 com.opos.ads

#删语音助手
adb shell pm uninstall -k --user 0 com.heytap.speechassist

#删除 Color 视频
adb shell pm uninstall -k --user 0 com.heytap.yoli

#乐滑锁屏
adb shell pm uninstall -k --user 0 com.heytap.pictorial

#用户体验计划
adb shell pm uninstall -k --user 0 com.oplus.statistics.rom

#删除 Color 音乐
adb shell pm uninstall -k --user 0 com.heytap.music


#删除设备快连
adb shell pm uninstall -k --user 0 com.heytap.accessory

#删除儿童空间
adb shell pm uninstall -k --user 0 com.coloros.childrenspace

#删除耳机返听
adb shell pm uninstall -k --user 0 com.coloros.karaoke

#删除远程守护服务(影响:color 系手机远程协助不能用)adb shell pm uninstall -k --user 0 com.coloros.remoteguardservice
#停用
adb shell pm disable-user com.coloros.remoteguardservice

#删除跨屏互联
adb shell pm uninstall -k --user 0 com.oplus.synergy

#删除小布扫一扫
adb shell pm uninstall -k --user 0 com.coloros.ocrscanner

#删除小布扫一扫服务后台
adb shell pm uninstall -k --user 0 com.coloros.colordirectservice

#删除小布识屏
adb shell pm uninstall -k --user 0 com.coloros.karaokedirectui
adb shell pm uninstall -k --user 0 com.coloros.directui

#删除安全事件
adb shell pm uninstall -k --user 0 com.coloros.securityguard

#删除全局搜索
adb shell pm uninstall -k --user 0 com.heytap.quicksearchbox

#删除智能驾驶
adb shell pm uninstall -k --user 0 com.coloros.smartdrive

#删除屏幕共享
adb shell pm uninstall -k --user 0 com.coloros.sharescreen

#删除应用时间使用
adb shell pm uninstall -k --user 0 com.coloros.digitalwellbeing

#删除扫一扫服务后台
adb shell pm uninstall -k --user 0 com.coloros.colordirectservice

#删除车联
adb shell pm uninstall -k --user 0 com.oplus.ocar

#删除数据服务平台
adb shell pm uninstall -k --user 0 com.coloros.sceneservice

#删除健康数据平台
adb shell pm uninstall -k --user 0 com.oplus.healthservice

#删除融合搜索服务
adb shell pm uninstall -k --user 0 com.oplus.dmp

#删除反馈工具箱
adb shell pm uninstall -k --user 0 com.oplus.logkit

#删除智慧能力服务
adb shell pm uninstall -k --user 0 com.oplus.deepthinker

#删除支付保护
adb shell pm uninstall -k --user 0 com.coloros.securepay

#删除 omoji
adb shell pm uninstall -k --user 0 com.oplus.omoji

#删除 metis
adb shell pm uninstall -k --user 0 com.oplus.metis

#删除多端设备协同 onet
adb shell pm uninstall -k --user 0 com.oplus.onet

#删除第三方云端解决方案 thirdkit
adb shell pm uninstall -k --user 0 com.oplus.thirdkit

#删除 crashbox
adb shell pm uninstall -k --user 0 com.oplus.crashbox

#删除 shelper
adb shell pm uninstall -k --user 0 com.daemon.shelper

# 删除主题商店(需要在,恢复出厂或者新开始不登陆账号的情况下,才可操作)(影响:无法下载第三方主题壁纸字体。自带的不受影响)
adb shell pm uninstall -k --user 0 com.heytap.themestore
# 建议停用
adb shell pm disable-user com.heytap.themestore

Unable to negotiate with XXXX : no matching host key type found.

作者 clark
2024年1月19日 02:13

ssh root@XXXXX 时候报错:

Unable to negotiate with 192.168.1.1 port 22: no matching host key type found. Their offer:

可以在命令行后面添加:

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-dss -oCiphers=+3des-cbc root@xxxxxx

SQLSTATE[HY000]: General error: 1366 Incorrect string value

作者 clark
2024年1月12日 19:48

对于处理数据当中包含:emoji 表情包,或者其他特殊字符时候,系统会报错:

SQLSTATE[HY000]: General error: 1366 Incorrect string value

此时需要修改 mysql 表字符集格式为:utf8mb4 即可解决:

SQLSTATE[HY000]: General error: 1366 Incorrect string value

有的可视化软件,虽然把整张表的字符集都改了,依然没有效果,那是因为字段的字符集依然还是旧版的格式,需要再次将对应字段的字符集也进行修改才可以

你的浏览器插件安全吗

作者 clark
2023年11月6日 01:29

浏览器插件通常受到浏览器的权限控制和沙盒安全机制的限制,以确保插件不能执行危险的操作,也不能在用户的电脑上执行恶意操作。但是我们通常会通过手动导入安装一些插件,它可能会导致一些潜在的安全问题:

读取浏览历史和书签:插件可以请求访问用户的浏览历史和书签,以提供相关功能。但如果滥用这一权限,它可能会泄露用户的隐私。

访问和修改网页内容:插件通常可以访问并修改当前打开的网页内容。这可以用于广告拦截、网页翻译等有用的目的,但也可能被恶意插件滥用。

发送网络请求:插件可以发送网络请求,这对于一些在线服务和功能是必要的。然而,如果插件发送恶意请求,它可能导致安全漏洞,如跨站请求伪造 (CSRF) 攻击。

访问本地文件系统:某些插件可能需要访问用户的本地文件系统,如云存储同步插件。但如果恶意插件获得了这一权限,它可能会访问和修改用户的敏感文件。

执行远程脚本:一些插件可能会下载和执行远程脚本,这可能导致恶意代码的注入和执行,从而危害用户的安全和隐私。

也就是说,浏览器插件可以控制你网页上任何的操作和内容展示,这也就是为什么很多插件安装上之后,你可以在页面看到以前看不到的很多按钮,提示信息等等,一旦被坏人利用,你的账号密码信息,以及很多敏感的隐私信息都可能被泄露。

little-rat

这个名为 little-rat 的插件,它也是个浏览器插件,但是他能监控所有浏览器插件的请求信息,这样你就能清楚的知道,这些插件,是不是安守本分,或者是偷偷摸摸干坏事了。

你的浏览器插件安全吗

开源地址:https://github.com/dnakov/little-rat

Git初始化上手教程

作者 clark
2023年10月8日 20:59

很多人操作 git 版本库时候,经常会卡在第一步,如何拉取代码如何将当前现有代码同步到远程,经常遇到有人先把要同步的代码重命名或者挪出去,本地先 clone 一个空仓库,再把要同步的文件拖进来,反反复复,而且很多老手也经常这么操作。

今天来整理几个初始化时候,常用的场景:

1、克隆仓库

git clone https://codeup.test.com/clark/project/test.git
cd test
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

2、提交已有文件夹或仓库

cd existing_folder
git init
git remote add origin https://codeup.test.com/clark/project/test.git
git add .
git commit
git push -u origin master

3、导入第三方仓库

git clone --bare https://git.example.com/your/project.git your_path
cd your_path
git remote set-url origin https://codeup.aliyun.com/test/project/test.git
git push origin --tags && git push origin --all

npm ERR! red ECONNRESET

作者 clark
2023年9月22日 19:27

npm install 时候提示:

% npm install
npm ERR! read ECONNRESET
npm ERR! syscall read
npm ERR! errno -54
npm ERR! network read ECONNRESET
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network 
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'

根据提示,好像是代理什么的问题,但是刚安装的 node 环境也没有配置过,此时只需要清理一下本地缓存即可:

% npm config rm proxy
% npm config rm https-proxy

再次执行 npm install 就安装成功了

Neo4J图数据库Docker快速上手

作者 clark
2023年8月22日 09:28

Neo4j 是一个高性能、可扩展且具备图数据库特性的开源图数据库管理系统。它以图形数据模型为基础,允许存储和处理大规模的连接数据,并且在许多场景下,比传统的关系型数据库更适合处理复杂的关系和查询。以下是 Neo4j 的应用简介:

应用领域:

1、社交网络分析:Neo4j 非常适合构建和分析社交网络,可以轻松地处理用户之间的友谊、关注、粉丝关系等复杂关系。
2、推荐系统:由于图数据库的能力,Neo4j 在构建个性化推荐系统方面表现出色,能够根据用户之间的关系提供更准确的推荐。
3、知识图谱:Neo4j 在构建和查询知识图谱方面非常强大,可以表示实体、属性和实体之间的关系,用于知识图谱的建模和查询。
4、网络分析:用于分析网络拓扑、流量、节点的关系,如电信网络、物流网络、计算机网络等。
5、生物信息学:在分析基因、蛋白质和生物分子之间复杂的相互作用关系时,Neo4j 能够提供强大的支持。
6、金融领域:用于进行交易分析、欺诈检测、风险管理以及客户关系管理。

Dcoker 上手

编写 docker-compose.yml 文件

version: '3.9'
services:
 
  neo4j:
    image: neo4j
    volumes:
      - ./conf:/var/lib/neo4j/conf
      - ./import:/var/lib/neo4j/import
      - ./plugins:/plugins
      - ./data:/data
      - ./logs:/var/lib/neo4j/logs
    restart: always
    ports:
      - 7474:7474
      - 7687:7687
    environment:
      - NEO4J_AUTH=neo4j/0123456789 #修改默认用户密码
      

以上命令当中,image 可以根据使用版本进行替换,Vokumes 是挂在目录,避免容器重启导致数据丢失

端口一共有两个,7474 为 web 可视化管理界面,7687 为 bolt 协议端口

执行命令:

docker compose up -d

命令行安装

如果上述 compose 安装容易出错,或者不成功,可以尝试下面这个命令:

docker run -d --name neo4j \
 -p 7474:7474 -p 7687:7687 \
 -v /home/neo4j/data:/data \
 -v /home/neo4j/logs:/logs \
 -v /home/neo4j/conf:/var/lib/neo4j/conf \
 -v /home/neo4j/import:/var/lib/neo4j/import \
 --env NEO4J_AUTH=neo4j/password \
 neo4j

访问数据

通过 IP 地址加端口号 7474:

Neo4J 图数据库 Docker 快速上手

laravel 时间差间隔计算方法

作者 clark
2023年8月19日 20:44

Laravel 能够方便的利用 Carbon 类库来处理各类时间差问题:

1、天数间隔:

carbon::parse ('2020-12-10')->diffInDays('2020-12-28', false); // 为正负数
 
carbon::parse ('2020-12-10')->diffInDays('2020-12-28', true);// 为正负数的绝对值
 

2、计算相差小时数、相差秒数等

$date = '2023-12-11 12:59:59';
 
$carbon = carbon::parse ($date); // 格式化一个时间日期字符串为 carbon 对象
 
$int = (new Carbon)->diffInSeconds ($carbon, false); // $int 为正负数
 
or $int = (new Carbon)->diffInSeconds ($carbon, true); // $int 为正负数的绝对值

3、获取当前时间

echo Carbon::now();//2023-08-17 09:27:49
echo Carbon::now(‘America/Los_Angeles’);// 设置时区

4、日期和时间加减

$date = Carbon::now();
$date->addDays(7);
echo $date;

宝塔安装Nginx,PHP等失败解决

作者 clark
2023年8月7日 18:04
宝塔安装 Nginx,PHP 等失败解决

缺少了 libxml2、libxslt 库导致的,复制下面的命令到终端中执行,安装这两个库,安装成功后再去安装 nginx

apt-get update
apt-get install libxml2 libxml2-dev libxslt-dev

安装 PHP8 以上版本时候,报错:

checking how to use *nroff to get plain text from man pages... -man
checking for pkg-config... (cached) /bin/pkg-config
checking for libcares options with pkg-config... no
checking that c-ares is good and recent enough... no
configure: error: c-ares library defective or too old
========================================================
Ubuntu 22.04.2 LTS
\l
Bit:64 Mem:3588M Core:2 gcc:11.4.0 cmake:3.22.1
Linux 5.15.0-73-generic x86_64
ERROR: php-8.1.21 install failed.
Please submit to https://forum.aapanel.com for help

解决办法:

sudo apt-get update
sudo apt-get install libc-ares-dev

免费云端Stable Diffusion部署体验

作者 clark
2023年7月30日 14:57

阿里云 GPU 免费算力体验,简单 5 -10 分钟部署热门的 Stable Diffusion 在线工具,新手入门,一步一步教你成功上手。

Stable Diffusion是一款功能异常强大的 AI 图片生成器。它支持文字生成图片,图片转图片,使用各种各样的模型来达到你想要的效果,还能训练你自己的专属模型。简单来说,即使你没有绘画功底,只要文笔叙说的够详细准确也可以画出自己想要的图片,甚至超乎你的想象。

免费云端 Stable Diffusion 部署体验

1、领取体验资格

点击下方链接,获取机器学习 PAI-DSW 资格,选择下图的体验资格,点击【立即试用】

点击获取体验资格

注意:如果你是第一次使用阿里云,请打开页面后,根据提示先完成账号注册以及实名认证。

阿里云销售可能会拨打推销电话,如果接到推销电话,告知客服帮你屏蔽广告,说清楚你不购买任何服务器即可。有时候资源紧张,不一定能体验到,可以第二天早点尝试。

免费云端 Stable Diffusion 部署体验

这里都选择默认,然后开通:

免费云端 Stable Diffusion 部署体验

2、进入控制台

免费云端 Stable Diffusion 部署体验

如图进入 DSW 之后,点击创建实例:

注意:实例选择 GPU 类型,并且备注是可以用资源包抵扣的,否则会收费,如图选择:

免费云端 Stable Diffusion 部署体验

接着,选择镜像:官方已经提供了默认的版本,下拉勾选 Stable Diffusion 版本即可:

免费云端 Stable Diffusion 部署体验

3、配置环境

免费云端 Stable Diffusion 部署体验

点击启动模型,有时候可能会因为使用人数过多,需要等待,能启动的就直接启动,并点击打开:

在 DSW 页面选择 Tool-DSW Gallery

免费云端 Stable Diffusion 部署体验

接着找到 Stable Diffusion WebUI 使用示例,点击在 DSW 中打开:

免费云端 Stable Diffusion 部署体验

依次运行,点击步骤前面的小三角,等待程序自动安装
①下载 stable-diffusion-webui 开源库及其它依赖
②安装常用插件
③下载模型
④启动 WebUI

最后一步启动之后,会提示 web 页面的网址,如图:

免费云端 Stable Diffusion 部署体验

点击即可打开快乐的使用了。

4、使用体验

免费云端 Stable Diffusion 部署体验

5、注意事项

使用结束后,记得手动关闭服务,关机不会扣量。系统有赠送的体验包请自行关注使用量,避免额外扣费:

阿里云用户中心 (aliyun.com)

6、参考平台

新手不会写口令的,可以参考这些平台的口令:

炼丹阁:炼丹阁 – 官网, 专业全面的模型平台社区, 高手 AI 作者都在这∩•ﻌ•⊃ (liandange.com)

liblibai:LiblibAI·哩布哩布 AI- 中国领先原创 AI 模型分享社区

Monibuca开源流媒体服务框架

作者 clark
2023年7月15日 02:22

在短视频,直播行业如火如荼的今天,流媒体服务技术需求越来越大,今天推荐一个基于 `Golang` 语言开发的开源流媒体服务框架。

该框架的有点是:基于 Golang 语言开发,此外并无任何其他依赖构建,并提供了一套插件式的二次开发模型,使用相当灵活,开销低。

流媒体服务器是一种用于分发流媒体的服务器端软件,可用于直播、监控、会议等需要实时观看音视频的场景。流媒体服务器区别于传统 Web 服务器对于实时性要求极高,需要使用各种传输协议,而 Web 服务器则主要以 http/https 协议为主。

Monibuca 由三部分组成:引擎、插件、实例工程。

  • 引擎提供一套通用的流媒体数据缓存以及转发的机制,本身不关心协议如何实现
  • 插件提供其他所有的功能,并可以无限扩展
  • 实例工程是引入引擎和插件并启动引擎的项目工程,可以完全自己编写

主要功能

引擎方面

  • 提供插件机制,对插件的启动,配置解析,事件派发等进行统一管理
  • 提供 H264、H265、AAC、G711 格式的转发
  • 提供可复用的 AVCC 格式、RTP 格式、AnnexB 格式、ADTS 格式等预封装机制
  • 提供多 Track 机制,支持大小流,加密流扩展
  • 提供 DataTrack 机制,可用于实现房间文字聊天等功能
  • 提供时间戳同步机制,限速机制
  • 提供 RTP 包乱序重排机制
  • 提供订阅者追帧跳帧机制(首屏秒开)
  • 提供发布订阅对外推拉的基础架构
  • 提供鉴权机制的底层架构支持
  • 提供内存复用机制
  • 提供发布者断线重连机制
  • 提供按需拉流机制
  • 提供 HTTP 服务端口公用机制
  • 提供 HTTP API 接口自动注册机制
  • 提供 HTTP 接口中间件机制
  • 提供结构化日志
  • 提供流信息统计和输出
  • 提供事件总线机制,可以对所有插件广播事件
  • 提供配置热更新机制

插件方面

  • 提供 RTMP 协议的推拉流,对外推拉流(支持 RTMPS)
  • 提供 RTSP 协议的推拉流,对外推拉流
  • 提供 HTTP-FLV 协议的拉流,对外拉流,读取本地 FLV 文件
  • 提供 WebSocket 协议的拉流
  • 提供 HLS 协议的拉流,对外拉流
  • 提供 WebRTC 协议的推拉流
  • 提供 GB28181 协议的推流, 提供 dump 回放分析能力
  • 提供 Onif 协议的支持
  • 提供 WebTransport 协议的拉流
  • 提供 fmp4 协议的拉流
  • 提供边缘服务器功能,实现级联拉流
  • 提供录像功能,支持 flv、mp4、hls、raw 格式
  • 提供日志持久化功能,支持按天、按小时、按分钟、按秒、按大小、按文件数等多种方式
  • 提供截屏功能
  • 提供 HTTP 回调功能
  • 提供预览功能(集成 Jessibuca Pro)
  • 提供房间功能(可实现视频会议)
  • 提供对接 Prometheus 的功能

官方网址:

Monibuca – GO 语言开源插件式流媒体服务器开发框架 | Monibuca (m7s.live)

Linux当中提权sudo和su有什么区别?

作者 clark
2023年6月16日 18:19

sudo 和 su 都是在 Linux 系统中用于切换用户身份或执行特权操作的命令,但它们有一些区别:

  1. 用户切换:su 命令(切换用户)用于切换到其他用户账户,包括 root 账户。当使用 su 命令时,需要输入目标用户的密码。而 sudo 命令(以超级用户权限执行命令)允许普通用户以 root 权限执行指定的命令,而无需切换到 root 用户账户。当使用 sudo 命令时,需要输入当前用户的密码。
  2. 授权方式:su 命令需要目标用户的密码,因此只有知道目标用户密码的人才能切换到相应的用户账户。而 sudo 命令则是基于授权文件(如 /etc/sudoers)中的配置,授权特定的用户或用户组以 root 权限执行命令。这样,系统管理员可以更精细地控制用户的特权操作。
  3. 权限范围:su 命令切换到目标用户账户后,可以执行该用户账户具有的所有权限,包括 root 权限。而 sudo 命令执行特权命令时,只有通过配置授权的特权命令才能以 root 权限执行,其他命令仍以普通用户权限运行。

关于密码输入的问题,当使用 su 命令切换到 root 用户时,需要输入 root 用户的密码。而使用 sudo 命令执行特权命令时,通常需要输入当前用户的密码。系统管理员可以通过配置 sudoers 文件,允许某个用户或用户组以 root 权限执行命令时,无需输入密码。这样可以提高系统安全性,并减少密码泄露的风险。

需要注意的是,使用 sudo 和 su 命令时,请谨慎操作,确保在必要的情况下以及授权的用户才执行特权操作,以避免意外或滥用权限导致系统安全问题。

PS智能版-Windows

作者 clark
2023年6月13日 11:47

Photoshop AI 版本来袭,类似 Midjourney,只需要输入口令,即可让图片按照你的想法随意更改,而且成图效果非常惊艳。

与 MJ 不同的是,PS AI 是可以对图片进行局部细节修改,而且都是适量分层的图。

PS 智能版 -Windows

下载地址:

https://url40.ctfile.com/f/43628340-869646621-a4589e?p=5799

(访问密码:5799)

【注:尊重正版,该软件仅供学习交流使用】

laravel 跨域问题解决

作者 clark
2023年6月4日 20:28

laravel 的接口有时候会遇到跨域问题,报错:

blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed

查阅资料,网上说的各种中间件,添加 header 方法等等的,均不起任何作用。

后来发现配置文件有一个 cors.php 的配置,进去查阅:

/*
    |--------------------------------------------------------------------------
    | Cross-Origin Resource Sharing (CORS) Configuration
    |--------------------------------------------------------------------------
    |
    | Here you may configure your settings for cross-origin resource sharing
    | or "CORS". This determines what cross-origin operations may execute
    | in web browsers. You are free to adjust these settings as needed.
    |
    | To learn more: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
    |
    */

基本可以判断,这里就是控制跨域了,下面第一行,有个 path 的参数, 只需要将你的 url 参数加进来就可以了。
'paths' => ['api/*','sanctum/csrf-cookie'],  // 这里增加路由参数

    'allowed_methods' => ['*'],

    'allowed_origins' => ['*'],

    'allowed_origins_patterns' => [],

    'allowed_headers' => ['*'],

    'exposed_headers' => [],

    'max_age' => 0,

    'supports_credentials' => false,
❌
❌