2022年10月

ISC DHCP 服务器停止维护

上周,ISC 发布了其 DHCP 服务器(dhcpd)的最后的维护版本,并宣布该服务器项目将在今年年底结束。除非发现非常严重的安全漏洞,ISC 没有计划继续发布更新,也同时停止了其代码的维护。发布于 1997 年的 ISC DHCP 是一个动态主机设置协议(DHCP)的服务器程序。ISC 结束这个项目是因为它不是为可测试性设计的,修改代码的风险性非常高,因此过去几年已经很少修改代码了。ISC 也发布了新的名为 Kea 的 DHCP 服务器作为替代。

消息来源:ISC
老王点评:除了 dhcpd,我从未注意过任何其它 DHCP 服务器,这么流行的一个默认级的开源软件就停止维护了,感觉还是很可惜。另外一个 ISC 的知名软件就是 DNS 服务器 BIND 了,不知道以后的下场如何。

VirtualBox 7.0 正式发布

甲骨文今天推出了 VirtualBox 7.0 版本,引入了诸多改进。最值得关注的改进是支持虚拟机完全加密运行,包括加密配置文件以及已保存的状态。不过加密仅支持通过命令行界面解开。此外还支持管理云端虚拟机;支持 DirectX 11 3D 加速;支持安全启动,等等。上一个大版本 VirtualBox 6.0 是 2018 年推出的。

消息来源:VirtualBox
老王点评:我觉得甲骨文还值得称道的开源贡献之一就是 VirtualBox 了,还好还在继续推出大版本更新。

超过四成的电脑仍然无法升级到 Windows 11

资产管理供应商 Lansweeper 称,在其测试的 6 万个组织的约 2700 万台 PC 中,有 42.76% 未能通过 CPU 测试,有 71.5% 没有通过内存测试,14.66% 没有通过 TPM 测试。研究还发现,Windows 11 采用率正在提高,在 1.44% 的计算机上运行,而在 1 月份只有 0.52%。另外,在被调查的商业设备中,约有 4.82% 的设备运行的是没有完整支持的操作系统,0.91% 的服务器已经报废。

消息来源:The Register
老王点评:不如把这些不能升级的电脑装上 Linux 吧~

这份简要指南能够帮助你快速开始使用 Git,以及配置一些选项。

在 Linux 中设置 Git 十分简单,但为了获得完美的配置,我做了以下五件事:

  1. 创建全局配置
  2. 设置默认名称
  3. 设置默认邮箱地址
  4. 设置默认分支名称
  5. 设置默认编辑器

我使用 Git 管理我的代码、命令行脚本以及文档版本。这意味着每次我开始一项新的任务,首先我需要创建一个文件目录并将其添加到 Git 库中:

$ mkdir newproject
$ cd newproject
$ git init

有一些我一直想要的常规设置。不多,但可以避免我每次都进行配置。我喜欢利用 Git 的 全局 配置功能。

Git 提供了进行手动配置的 git config 命令,但这有一些注意事项。例如,通常你会设置邮箱地址。你可以通过运行 git config user.email 你的邮件地址 命令进行设置。然而,这只会在你当前所在的 Git 目录下起作用。

$ git config user.email [email protected]
fatal: not in a git directory

此外,当这个命令在 Git 仓库中运行时,它只会配置特定的一个仓库。在新的仓库中,你不得不重复这个步骤。我可以通过全局配置来避免重复。选项 --global 会指示 Git 将邮箱地址写入全局配置 ~/.gitconfig 文件中,甚至在必要时会创建它:

请记住,波浪线(~)代表你的主文件夹。在我的电脑中它是 /home/alan
$ git config --global user.email [email protected]
$ cat ~/.gitconfig
[user]
        email = [email protected]

这里的缺点是,如果你有大量偏好设置,需要输入很多命令,这将花费大量时间并且很容易出错。Git 提供了更加快捷有效的方式,可以直接编辑你的全局配置文件——这是我列表中的第一项!

1、创建全局配置

如果你刚开始使用 Git,或许你还没有该文件。不用担心,让我们直接开始。只需要用 --edit 选项:

$ git config --global --edit

如果没有该文件,Git 将会创建一个包含以下内容的新文件,并使用你终端的默认编辑器打开它:

# This is Git's per-user configuration file.
[user]
# Please adapt and uncomment the following lines:
#       name = Alan
#       email = alan@hopper
~
~
~
"~/.gitconfig" 5L, 155B                                     1,1           All

现在我们已经打开了编辑器,并且 Git 已经在后台创建了全局配置文件,我们可以继续接下来的设置。

2、设置默认名称

名字是该文件中的首要条目,让我们先从它开始。用命令行设置我的名称是 git config --global user.name "Alan Formy-Duval"。不用在命令行中运行该命令,只需要在配置文件中编辑 name 条目就行:

name = Alan Formy-Duval

3、设置默认邮箱地址

邮箱地址是第二个条目,让我们添加它。默认情况下,Git 使用你的系统提供的名称和邮箱地址。如果不正确或者你想要更改,你可以在配置文件中具体说明。事实上,如果你没有配置这些,Git 在你第一次提交时会友好的提示你:

Committer: Alan <alan@hopper>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate....

在命令行中运行 git config --global user.email "[email protected]" 会设置好我的邮箱。同样,我们在配置文件中编辑 email 条目,提供你的邮箱地址:

email = [email protected]

我喜欢设置的最后两个设置是默认分支名称和默认编辑器。当你仍在编辑器中时,需要添加这些指令。

4、设置默认分支名称

目前有一种趋势,即不再使用 master 作为默认分支名称。事实上,在新存储库初始化时,Git 将通过友好的消息提示更改默认分支名称:

$ git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint:   git config --global init.defaultBranch <name>

这个名为 defaultBranch 的指令需要位于一个名为 init 的新部分中。现在普遍接受的是,许多程序员使用 main 这个词作为他们的默认分支。这是我喜欢使用的。将此部分后跟指令添加到配置中:

[init]
            defaultBranch = main

5、设置默认编辑器

第五个设置是设置默认的编辑器。这是指 Git 将使用的编辑器,用于在你每次将更改提交到存储库时输入你的提交消息。不论是 nanoemacsvi 还是其他编辑器,每个人都有他喜欢的。我喜欢用 vi。添加 core 部分,并设置 editor 指令为你喜欢的编辑器。

[core]
            editor = vi

这是最后一项。退出编辑器。Git 在主目录下保存全局配置文件。如果你再次运行编辑命令,将会看到所有内容。注意配置文件是明文存储的文本文件,因此它可以很容易使用文本工具查看,如 cat 命令。这是我的配置文件内容:

$ cat ~/.gitconfig
[user]
        email = [email protected]
        name = Alan Formy-Duval
[core]
        editor = vi
[init]
        defaultBranch = main

这是一个简单的指南,可以让你快速开始使用 Git 和它的一些配置选项。


via: https://opensource.com/article/22/9/git-configuration-linux

作者:Alan Formy-Duval 选题:lkxed 译者:Donkey-Hao 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

使用 changedetection.io 在网站发生变化或更新时获得提醒。

那一年是 2020 年,关于大流行病的消息迅速涌来,每个人都感到完全被类似的新闻文章所淹没,提供了不同程度的更新。

但我需要知道的是,我们的官方准则何时改变。最后,这就是对我来说最重要的事情。

无论关注的是大流行病还是最新的科技新闻,提前了解网站内容的变化都至关重要。

changedetection.io 项目为网站变更检测和通知提供了一个简单但强大的开源解决方案。它很容易设置,而且可以通知 70 多个(还在不断增加)不同的通知系统,如 Matrix、Mattermost、NextcloudSignalZulipHome Assistant、电子邮件等等。它还能通知专有应用,如 Discord、Office365、Reddit、Telegram 和许多其他应用。

但 changedetection.io 并不只是局限于观察网页内容。你也可以监视 XML 和 JSON 源,它将建立一个 RSS 馈送,记录变化的网站。

由于其内置的 JSON 简单存储系统,不需要设置复杂的数据库来接收和存储信息。你可以 使用 Docker 镜像运行 或用 pip 安装它。该项目有一个 全面的维基帮助页,大多数常见的问题都有涵盖。

对于使用复杂 JavaScript 的网站,你可以用内置的 Playwright 内容获取器 将你的 changedetection.io 连接到 Chromium 或 Chrome 浏览器。

运行后,在你的浏览器(默认情况下是 http://localhost:5000)中访问该应用。如果你的电脑可以从外部网络访问,你可以在 设置 Settings 中设置一个密码。

change detection watch list

提交你想监控的页面的 URL。有几个与如何过滤该网页有关的设置。例如,你很可能不想知道一家公司在其网站页脚列出的股票价格何时发生变化,但你可能想知道他们在其博客上发布的新闻文章。

监控一个网站

想象一下,你想添加你最喜欢的网站 Opensource.com 进行监控。你只想知道主要标注文章何时包含 “python” 一词,并且通过 Matrix 收到通知。

要做到这点,首先要使用“ 视觉选择器 Visual Filter Selector ”工具。(这需要连接 playwright 浏览器界面)。

Find an element to monitor

该工具会自动计算出针对内容的最佳 Xpath 或 CSS 过滤器。否则,你会从每天的页面更新中得到大量的噪音。

接下来,访问“ 过滤器和触发器 Filters & Triggers ”标签。

Filters and triggers

在 “ CSS/JSON/XPATH 过滤器 CSS/JSON/XPATH Filter ”区域(蓝色圆圈),你可以看到上一步自动生成的 CSS 过滤器。

有几个有用的过滤器,比如“ 移除元素 Remove elements ”(适合移除嘈杂的元素)、“ 忽略文本 Ignore text ”、“ 触发/等待文本 Trigger/wait for text ”,和“ 如果文本匹配则阻止变化检测 Block change-detection if text matches ”(用于等待一些文本消失,如“售罄”)。

在“ 触发/等待文本 Trigger/wait for text ”(红色圆圈)中,输入你想监测的关键词。(在这个例子中是 “python”)。

最后一步是在“ 通知 Notifications ”选项卡中,你要在那里配置你想收到的通知。下面我使用 Matrix API 添加了一个 Matrix 房间作为通知目标。

Notifications tab

通知的 URL 的格式是 matrixs://username:[email protected]/#/room/#room-name:matrix.org

然而,t2Bot 格式也支持。这里有更多的 Matrix 通知选项

就是这些了! 现在只要内容有变化,你就会通过 Matrix 收到信息。

还有更多

changedetection.io 还有很多东西。如果你喜欢调用一个自定义的 JSON API,你不需要使用通知的 API(使用 jsons:// )。你还可以创建一个自定义的 HTTP 请求(POST 和 GET),在检查前执行 JavaScript(也许是为了预先填充一个用户名和密码的登录字段),以及更多有趣的功能,更多的功能将陆续推出。

不要再浏览网站,而是开始监测网络吧!

图片提供:(Leigh Morresi, CC BY-SA 4.0)


via: https://opensource.com/article/22/9/changedetection-io-open-source-website-changes

作者:Leigh Morresi 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

谷歌 AI 引入了一个用于数组存储的高性能开源库 TensorStore。

谷歌开发的开源 C++ 和 Python 框架 TensorStore 旨在加速大型多维数组的读写设计。覆盖单一大型坐标系的多维数据集通常用于当代计算机科学和机器学习应用程序中。使用这些数据集具有挑战性,因为客户经常希望进行涉及多个工作站并行操作的调查,并且可能会以不可预测的间隔和不同的规模接收和输出数据。

谷歌研究院开发了 TensorStore,该库为用户提供了一个可以管理巨大数据集的 API,而无需复杂的硬件,以解决数据存储和操作问题。该库支持许多存储系统,包括本地和网络文件系统、谷歌云存储等。

为了加载和处理大量数据,TensorStore 提供了一个简单的 Python API。任何任意大小的基础数据集都可以加载和更新,而无需将数据集完整存储在内存中,因为在需要精确切片之前不需要在内存中读取或保存实际数据。

这是通过索引和操作语法实现的,它与 NumPy 操作的语法非常相似。除了虚拟视图、广播、对齐和其他复杂的索引功能,TensorStore 还支持如数据类型转换、降低取样和随意创建的数组这些功能。

此外,TensorStore 包含一个异步 API,可以并发进行读取或写入操作。在执行其他工作时,软件可以进行内存缓存处理(可配置),从而减少在访问常用数据时处理较慢存储系统的需要。

大型数值数据集需要大量的处理能力来检查和分析。实现这一点的常用方法是在分散在许多设备上的大量 CPU 或加速器内核之间并行化任务。在保持出色速度的同时并行分析单个数据集的能力一直是 TensorStore 的关键目标。 PaLM、脑图和其他复杂的大规模机器学习模型是 TensorStore 应用案例的一些例子。


via: https://www.opensourceforu.com/2022/10/google-ai-unveils-a-new-open-source-library-for-array-storage/

作者:Laveesh Kocher 选题:lkxed 译者:KevinZonda 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Linux 之父的 PC 挂了,恐影响 Linux 6.1 发布

两年前我们 报道 过,Linus Torvalds 攒了一台新电脑,一晃两年半过去了,如今,这台电脑的内存条坏了,频繁出现机器不稳定甚至编译器损坏的情况。当时,Torvalds 本来想买 ECC 内存,但是又嫌太贵,于是买了 4 条便宜的 16GB DDR4-2666 的内存。目前,Torvalds 使用他外出携带的 MacBook Pro 工作,但是拖慢了他的工作进度。他说,“我正在我的笔记本电脑上进行合并(非常缓慢),同时在等待新的 ECC 内存条的到来。”。

消息来源:The Register
老王点评:谁能想到,整个 Linux 世界的进步瓶颈就卡在几条内存上。?

龙架构已初步支持开源鸿蒙操作系统

龙芯中科宣布,开源鸿蒙(OpenHarmony)操作系统与龙芯 2K0500 开发板完成适配验证,龙架构(LoongArch)平台对于开源鸿蒙已形成初步支持。龙芯 2K0500 是基于 64 位 LA264 处理器核设计的高集成度处理器芯片,该芯片主要面向工控互联网应用、打印终端、BMC 等应用场景。

消息来源:龙芯中科
老王点评:这对于龙芯和鸿蒙都是一小步,但是或许会带来更多想象空间。

英特尔确认 Alder Lake BIOS 源代码被泄露

英特尔 Alder Lake BIOS 源代码被泄露到 4chan 和 Github,这个 6GB 的文件包含用于构建和优化 BIOS/UEFI 镜像的工具和代码。但英特尔“不认为这暴露了任何新的安全漏洞”,英特尔称,“这段代码属于我们的‘断路器项目’中的漏洞赏金计划,我们鼓励任何可能发现潜在漏洞的研究人员通过该计划告知我们。”

消息来源:Tom's Hardware
老王点评:这件事或许没有英特尔说的那么轻描淡写,如果真的无关紧要,何不开源呢?

在最小安装的服务器中设置互联网或网络非常容易。本指南将解释如何在最小安装的 CentOS、RHEL 和 Rocky Linux 中设置互联网或网络。

当你安装了任何服务器发行版的最小安装环境,你将没有任何 GUI 或桌面环境来设置你的网络或互联网。因此,当你只能访问终端时,了解如何设置互联网非常重要。NetworkManager 工具提供了必要的工具,辅以 systemd 服务来完成这项工作。以下是方法。

在最小安装的 CentOS、RHEL、Rocky Linux 中设置互联网

在你完成了服务器的安装后,启动进入服务器终端。理想情况下,你会看到一个终端提示符。使用 root 或管理员账户登录。

首先,尝试使用 nmcli 检查网络接口的状态和详细信息。nmcli 是用于控制 NetworkManager 服务的命令行工具。使用以下命令进行检查。

nmcli device status

这将显示设备名称、状态等。

nmcli device status

运行工具 nmtui 来配置网络接口。

nmtui 是 NetworkManager 工具的一部分,它为你提供了一个友好的用户界面来配置网络。

这是 NetworkManager-tui 包的一部分,在你完成最小服务器安装后默认安装。

nmtui

单击 nmtui 窗口中的“ 编辑连接 Edit a connection ”。

nmtui - 选择选项

选择接口名称

选择要编辑的接口

在“ 编辑连接 Edit Connection ”窗口中,为 IPv4 和 IPv6 选择“ 自动 Automatic ”选项。并选择“ 自动连接 Automatically Connect ”。完成后按 “OK”。

nmtui - 编辑连接

使用以下命令通过 systemd systemctl 重启 NetworkManager 服务。

systemctl restart NetworkManager

如果一切顺利,你可以在最小安装的 CentOS、RHEL 和 Rocky Linux 服务器中连接到网络和互联网。前提是你的网络有互联网连接。你可以使用 ping 来验证它是否正常工作。

设置最小化服务器互联网 - CentOS Rocky Linux RHEL

附加技巧:在最小化服务器中设置静态 IP

当你将网络配置设置为自动时,接口会在你连接到互联网时动态分配 IP。在你设置局域网的某些情况下,你可能希望将静态 IP 分配给你的网络接口。这非常容易。

打开你的网络配置脚本。将 ens3 改为为你自己的设备名。

vi /etc/sysconfig/network-scripts/ifcfg-ens3

在上面的文件中,使用 IPADDR 属性添加所需的 IP 地址。保存文件。

IPADDR=192.168.0.55

/etc/sysconfig/network 中为你的网络添加网关。

NETWORKING=yes
HOSTNAME=debugpoint
GATEWAY=10.1.1.1

/etc/resolv.conf 中添加任意公共 DNS 服务器。

nameserver 8.8.8.8
nameserver 8.8.4.4

然后重启网络服务。

systemctl restart NetworkManager

这就完成了静态 IP 的设置。你还可以使用 ip addr 命令检查 IP 详细信息。

总结

我希望本指南可以帮助你在最小化安装的服务器中设置网络、互联网和静态 IP。如果你有任何问题,请在评论区告诉我。


via: https://www.debugpoint.com/setup-internet-minimal-install-server/

作者:Arindam 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出