Virtual Box的Alpine系统挂载ISO光盘文件和共享目录

发布于:
其他(计算机)

在给虚拟机内的alpine系统与宿主机做文件共享时,要安装 Virtual Box 官方提供的增强功能。网上说,
Virtual Box 安装目录中,有个 VBoxGuestAdditions.iso 光盘文件。可以挂载到虚拟机的Linux系统中执行。

Virtual Box 挂载光盘后,虚拟机内找不到。

df -h

以上命令发现光盘设备并未自动挂载。

进入/dev目录查找光驱,一般是cdrom或其他。如果没找到,说明光驱没有挂载或者没被系统识别。

chcon命令详解

发布于:
服务器技术
语法
chcon [选项]... 环境 文件... 
chcon [选项]... [-u 用户] [-r 角色] [-l 范围] [-t 类型] 文件... 
chcon [选项]... --reference=参考文件 文件...
选项
-h, --no-dereference:影响符号连接而非引用的文件。
 --reference=参考文件:使用指定参考文件的安全环境,而非指定值。 
-R, --recursive:递归处理所有的文件及子目录。 
-v, --verbose:为处理的所有文件显示诊断信息。 
-u, --user=用户:设置指定用户的目标安全环境。
-r, --role=角色:设置指定角色的目标安全环境。
-t, --type=类型:设置指定类型的目标安全环境。 
-l, --range=范围:设置指定范围的目标安全环境

使用ingress-nginx时后端 获取客户端真实IP

发布于:
kubernetes

我用的 ingress-nginx-controller 0.44.0

kubectl patch svc ingress-nginx-controller -n ingress-nginx -p '{"spec":{"externalTrafficPolicy":"Local"}}'

 

cat > ConfigMap.yaml << EOF
apiVersion: v1
kind: ConfigMap
metadata:
  name: ingress-nginx-controller
data:
  compute-full-forwarded-for: "true"
  # X-Forwarded-For 本来就是默认值
  forwarded-for-header: "X-Forwarded-For"
  use-forwarded-headers: "true"
EOF
kubectl apply -f ConfigMap.yaml
kubectl rollout restart deploy/ingress-nginx-controller -n ingress-nginx

ffmpeg 视频转ts切片并生成m3u8播放列表文件

发布于:
Script

一 首先将视频文件转为视频编码h264,音频编码aac格式的mp4文件

可以预先使用ffprobe查看文件编码方式

ffprobe input.mkv

如果得到音视频编码为h264/aac则执行

ffmpeg -i input.mkv -acodec copy -vcodec copy out.mp4

否则执行

ffmpeg -i input.mkv -acodec libfaac -vcodec libx264 out.mp4

ngrx学习资料

发布于:
Script

Store

Strore是Angular基于Rxjs的状态管理,保存了Redux的核心概念,并使用RxJs扩展的Redux实现。使用Observable来简化监听事件和订阅等操作。
在看这篇文章之前,已经假设你已了解rxjs和redux。
官方文档 有条件的话,请查看官方文档进行学习理解。

EFcore使用EFCore.BulkExtensions 批量增加、删除、修改

发布于:
Python

EFCore.BulkExtensions 简介

  • EntityFrameworkCore扩展:批量操作(插入,更新,删除,读取,更新,同步)和批处理(删除,更新)。
  • 库是轻量级的,并且非常高效,具有所有最常用的CRUD操作。
  • 在Microsoft推荐的EFcore扩展 Top 20。
  • 当前版本使用的是EF Core 3.1,目前支持Microsoft SQL Server(2008+)和SQLite。
  • 它针对NetStandard 2.0,因此可以用于针对NetCore(2.0+)或NetFramework(4.6.1+)的项目。
  • 3.1.0和3.0.0之间的版本使用的是EF Core 3.0,并且以NetStandard 2.1为目标,因此只能在NetCore(3.0+)上使用。
  • 3.0之前的版本(最后2.6.4)针对NetStandard 2.0,可以与NetCore(2.2)或NetFramework(4.6.1+)一起使用。
  • EFCore / v.Nuget:EFCore2.1 / v2.4.1 EFCore2.0 / v2.0.8,对于EF Core 1.x,请使用1.1.0(以NetStandard 1.4为目标)
  • 请使用SqlBulkCopy进行插入,更新/删除合并具有原始Sql的 MERGE BulkInsert 。
  • 对于SQLite,没有BulkCopy,而是库将普通SQL与UPSERT结合使用。
  • 批量测试不能具有UseInMemoryDb,因为InMemoryProvider不支持特定于关系的方法。

WordPress支持WebP格式图片上传方法

发布于:
WordPress

之前我写过一篇压缩图片的文章——PhotoShop高度压缩图片技巧,虽然这种方式已经可以大幅度压缩图片体积,但WebP格式的图片相较于这种方式图片体积还要小2倍!

在浏览器支持方面,现在主流的浏览器也都支持WebP格式,况且像微信公众号这样的大平台早已开始使用WebP图片,因此没有理由不将博客的插图换成WebP了。

默认情况下,WordPress不支持上传WebP格式的图片,在主题的functions.php里添加以下代码即可:

探索更轻量的Electron替代品来托管Blazor桌面应用程序

发布于:
Microsoft.Net

我们能否以更少的资源消耗,获得 Electron 的利用 web 技术构建的桌面应用程序的优势?

Electron 在 2014 首次开源,作为一种使用 Web 技术(HTML+CSS+JS)构建桌面应用程序的方式,它迅速流行起来。其设计的核心思想是将可预测的环境捆绑在一起:

它捆绑了自己的 Chromium 副本, 因此,你可以确定你的 HTML/CSS 将如何被渲染,不必担心 IE 浏览器(等) 随机的旧版本。

它捆绑了自己的 Node.js 副本, 因此,你拥有已知的一个可移植编程平台的版本,它超越了浏览器沙箱,可以直接与本机系统交互。

这些选择在五年前很有价值,但到了 2019 年底,你可能会做出不同的选择。这些选择也是为什么 Electron 对资源极度渴求却也会闻名的关键。默认的空白 Electron 8.0.0 应用程序需要下载 164MB(压缩后 66MB),并作为 4 个单独的进程运行,总共消耗 150MB。

这些数字在您看来完全可以满足您的场景。如果是这样,那太好了!这篇文章并不是要抨击 Electron,它是一个运行良好的项目,人们显然已经成功地使用了它。在这篇文章中,我只是想思考一下我们还有什么其他的选择。