在 Git 仓库中，文件究竟被存储在哪里？

Summary: 我们知道它存储在 .git 目录中，但具体到 .git 中的哪个位置，各个版本的历史文件又被存储在哪里呢？

我更喜欢SVN

我更喜欢开源[坏笑]

![](/data/attachment/album/202309/16/230138n1j44qiabgplgbw4.jpg)

大家好！今天我和一个朋友讨论 Git 的工作原理，我们感到奇怪，Git 是如何存储你的文件的？我们知道它存储在 `.git` 目录中，但具体到 `.git` 中的哪个位置，各个版本的历史文件又被存储在哪里呢？

以这个博客为例，其文件存储在一个 Git 仓库中，其中有一个文件名为 `content/post/2019-06-28-brag-doc.markdown`。这个文件在我的 `.git` 文件夹中具体的位置在哪里？过去的文件版本又被存储在哪里？那么，就让我们通过编写一些简短的 Python 代码来探寻答案吧。

### Git 把文件存储在 .git/objects 之中

你的仓库中，每一个文件的历史版本都被储存在 `.git/objects` 中。比如，对于这个博客，`.git/objects` 包含了 2700 多个文件。

```
$ find .git/objects/ -type f | wc -l
2761

```

>
> 注意：`.git/objects` 包含的信息，不仅仅是 “仓库中每一个文件的所有先前版本”，但我们暂不详细讨论这一内容。
>
>
>

这里是一个简短的 Python 程序（[find-git-object.py](https://gist.github.com/jvns/ff884dceef7660402fe1eca697cfbf51)），它可以帮助我们定位在 `.git/objects` 中的特定文件的具体位置。

```
import hashlib
import sys

def object_path(content):
    header = f"blob {len(content)}\0"
    data = header.encode() + content
    sha1 = hashlib.sha1()
    sha1.update(data)
    digest = sha1.hexdigest()
    return f".git/objects/{digest[:2]}/{digest[2:]}"

with open(sys.argv[1], "rb") as f:
    print(object_path(f.read()))

```

此程序的主要操作如下：

* 读取文件内容
* 计算一个头部（`blob 16673\0`），并将其与文件内容合并
* 计算出文件的 sha1 校验和（此处为 `e33121a9af82dd99d6d706d037204251d41d54`）
* 将这个 sha1 校验和转换为路径（如 `.git/objects/e3/3121a9af82dd99d6d706d037204251d41d54`）

运行的方法如下：

```
$ python3 find-git-object.py content/post/2019-06-28-brag-doc.markdown
.git/objects/8a/e33121a9af82dd99d6d706d037204251d41d54

```

### 术语解释：“内容寻址存储”

这种存储策略的术语为“<ruby> 内容寻址存储 <rt>  content addressed storage </rt></ruby>”，它指的是对象在数据库中的文件名与文件内容的哈希值相同。

内容寻址存储的有趣之处就是，假设我有两份或许多份内容完全相同的文件，在 Git 的数据库中，并不会因此占用额外空间。如果内容的哈希值是 `aabbbbbbbbbbbbbbbbbbbbbbbbb`，它们都会被存储在 `.git/objects/aa/bbbbbbbbbbbbbbbbbbbbb` 中。

### 这些对象是如何进行编码的？

如果我尝试在 `.git/objects` 目录下查看这个文件，显示的内容似乎有一些奇怪：

```
$ cat .git/objects/8a/e33121a9af82dd99d6d706d037204251d41d54
x^A<8D><9B>}s<E3>Ƒ<C6><EF>o|<8A>^Q<9D><EC>ju<92><E8><DD><9C><9C>*<89>j<FD>^...

```

这是怎么回事呢？让我们来运行 `file` 命令检查一下：

```
$ file .git/objects/8a/e33121a9af82dd99d6d706d037204251d41d54
.git/objects/8a/e33121a9af82dd99d6d706d037204251d41d54: zlib compressed data

```

原来，它是压缩的！我们可以编写一个小巧的 Python 程序—— `decompress.py`，然后用 `zlib` 模块去解压这些数据：

```
import zlib
import sys

with open(sys.argv[1], "rb") as f:
    content = f.read()
    print(zlib.decompress(content).decode())

```

让我们来解压一下看看结果：

```
$ python3 decompress.py .git/objects/8a/e33121a9af82dd99d6d706d037204251d41d54
blob 16673---
title: "Get your work recognized: write a brag document"
date: 2019-06-28T18:46:02Z
url: /blog/brag-documents/
categories: []
---
... the entire blog post ...

```

结果显示，这些数据的编码方式非常简单：首先有 `blob 16673\0` 标识，其后就是文件的全部内容。

### 这里并没有差异性数据（diff）

这里有一件我第一次知道时让我感到惊讶的事：这里并没有任何差异性数据！那个文件是该篇博客文章的第 9 个版本，但 Git 在 `.git/objects` 目录中存储的版本是完整文件内容，而并非与前一版本的差异。

尽管 Git 实际上有时候会以差异性数据存储文件（例如，当你运行 `git gc` 时，为了提升效率，它可能会将多个不同的文件封装成 “打包文件”），但在我个人经验中，我从未需要关注这个细节，所以我们不在此深入讨论。然而，关于这种格式如何工作，Aditya Mukerjee 有篇优秀的文章 《[拆解 Git 的打包文件](https://codewords.recurse.com/issues/three/unpacking-git-packfiles)》。

### 博客文章的旧版本在哪？

你可能会好奇：如果在我修复了一些错别字之前，这篇博文已经存在了 8 个版本，那它们在 `.git/objects` 目录中的位置是哪里？我们如何找到它们呢？

首先，我们来使用 `git log` 命令来查找改动过这个文件的每一个提交：

```
$ git log --oneline  content/post/2019-06-28-brag-doc.markdown
c6d4db2d
423cd76a
7e91d7d0
f105905a
b6d23643
998a46dd
67a26b04
d9999f17
026c0f52
72442b67

```

然后，我们选择一个之前的提交，比如 `026c0f52`。提交也被存储在 `.git/objects` 中，我们可以尝试在那里找到它。但是失败了！因为 `ls .git/objects/02/6c*` 没有显示任何内容！如果有人告诉你，“我们知道有时 Git 会打包对象来节省空间，我们并不需过多关心它”，但现在，我们需要去面对这个问题了。

那就让我们去解决它吧。

### 让我们开始解包一些对象

现在我们需要从打包文件中解包出一些对象。我在 Stack Overflow 上查找了一下，看起来我们可以这样进行操作：

```
$ mv .git/objects/pack/pack-adeb3c14576443e593a3161e7e1b202faba73f54.pack .
$ git unpack-objects < pack-adeb3c14576443e593a3161e7e1b202faba73f54.pack

```

这种直接对库进行手术式的做法让人有些紧张，但如果我误操作了，我还可以从 Github 上重新克隆这个库，所以我并不太担心。

解包所有的对象文件后，我们得到了更多的对象：大约有 20000 个，而不是原来的大约 2700 个。看起来很酷。

```
find .git/objects/ -type f | wc -l
20138

```

### 我们回头再看看提交

现在我们可以继续看看我们的提交 `026c0f52`。我们之前说过 `.git/objects` 中并不都是文件，其中一部分是提交！为了弄清楚我们的旧文章 `content/post/2019-06-28-brag-doc.markdown` 是在哪里被保存的，我们需要深入查看这个提交。

首先，我们需要在 `.git/objects` 中查看这个提交。

### 查看提交的第一步：找到提交

经过解包后，我们现在可以在 `.git/objects/02/6c0f5208c5ea10608afc9252c4a56c1ac1d7e4` 中找到提交 `026c0f52`，我们可以用下面的方法去查看它：

```
$ python3 decompress.py .git/objects/02/6c0f5208c5ea10608afc9252c4a56c1ac1d7e4
commit 211tree 01832a9109ab738dac78ee4e95024c74b9b71c27
parent 72442b67590ae1fcbfe05883a351d822454e3826
author Julia Evans <julia@jvns.ca> 1561998673 -0400
committer Julia Evans <julia@jvns.ca> 1561998673 -0400

brag doc

```

我们也可以用 `git cat-file -p 026c0f52` 命令来获取相同的信息，这个命令能起到相同的作用，但是它在格式化数据时做得更好一些。（`-p` 选项意味着它能够以更友好的方式进行格式化）

### 查看提交的第二步：找到树

这个提交包含一个**树**。树是什么呢？让我们看一下。树的 ID 是 `01832a9109ab738dac78ee4e95024c74b9b71c27`，我们可以使用先前的 `decompress.py` 脚本查看这个 Git 对象，尽管我不得不移除 `.decode()` 才能避免脚本崩溃。

```
$ python3 decompress.py .git/objects/01/832a9109ab738dac78ee4e95024c74b9b71c27

```

这个输出的格式有些难以阅读。主要的问题在于，该提交的哈希（`\xc3\xf7$8\x9b\x8dO\x19/\x18\xb7}|\xc7\xce\x8e…`）是原始字节，而没有进行十六进制的编码，因此我们看到 `\xc3\xf7$8\x9b\x8d` 而非 `c3f76024389b8d`。我打算切换至 `git cat-file -p` 命令，它能以更友好的方式显示数据，我不想自己编写一个解析器。

```
$ git cat-file -p 01832a9109ab738dac78ee4e95024c74b9b71c27
100644 blob c3f76024389b8d4f192f18b77d7cc7ce8e3a68ad	.gitignore
100644 blob 7ebaecb311a05e1ca9a43f1eb90f1c6647960bc1	README.md
100644 blob 0f21dc9bf1a73afc89634bac586271384e24b2c9	Rakefile
100644 blob 00b9d54abd71119737d33ee5d29d81ebdcea5a37	config.yaml
040000 tree 61ad34108a327a163cdd66fa1a86342dcef4518e	content <-- 这是我们接下来的目标
040000 tree 6d8543e9eeba67748ded7b5f88b781016200db6f	layouts
100644 blob 22a321a88157293c81e4ddcfef4844c6c698c26f	mystery.rb
040000 tree 8157dc84a37fca4cb13e1257f37a7dd35cfe391e	scripts
040000 tree 84fe9c4cb9cef83e78e90a7fbf33a9a799d7be60	static
040000 tree 34fd3aa2625ba784bced4a95db6154806ae1d9ee	themes

```

这是我在这次提交时库的根目录中所有的文件。看起来我曾经不小心提交了一个名为 `mystery.rb` 的文件，后来我删除了它。

我们的文件在 `content` 目录中，接下来让我们看看那个树：`61ad34108a327a163cdd66fa1a86342dcef4518e`

### 查看提交的第三步：又一棵树

```
$ git cat-file -p 61ad34108a327a163cdd66fa1a86342dcef4518e
040000 tree 1168078878f9d500ea4e7462a9cd29cbdf4f9a56    about
100644 blob e06d03f28d58982a5b8282a61c4d3cd5ca793005    newsletter.markdown
040000 tree 1f94b8103ca9b6714614614ed79254feb1d9676c    post <-- 我们接下来的目标！
100644 blob 2d7d22581e64ef9077455d834d18c209a8f05302    profiler-project.markdown
040000 tree 06bd3cee1ed46cf403d9d5a201232af5697527bb    projects
040000 tree 65e9357973f0cc60bedaa511489a9c2eeab73c29    talks
040000 tree 8a9d561d536b955209def58f5255fc7fe9523efd    zines

```

还未结束……

### 查看提交的第四步：更多的树……

我们要寻找的文件位于 `post/` 目录，因此我们需要进一步探索：

```
$ git cat-file -p 1f94b8103ca9b6714614614ed79254feb1d9676c
.... 省略了大量行 ...
100644 blob 170da7b0e607c4fd6fb4e921d76307397ab89c1e    2019-02-17-organizing-this-blog-into-categories.markdown
100644 blob 7d4f27e9804e3dc80ab3a3912b4f1c890c4d2432    2019-03-15-new-zine--bite-size-networking-.markdown
100644 blob 0d1b9fbc7896e47da6166e9386347f9ff58856aa    2019-03-26-what-are-monoidal-categories.markdown
100644 blob d6949755c3dadbc6fcbdd20cc0d919809d754e56    2019-06-23-a-few-debugging-resources.markdown
100644 blob 3105bdd067f7db16436d2ea85463755c8a772046    2019-06-28-brag-doc.markdown <-- 我们找到了！！！

```

在此，`2019-06-28-brag-doc.markdown` 之所以位于列表最后，是因为在发布时它是最新的博文。

### 查看提交的第五步：我们终于找到它！

经过努力，我们找到了博文历史版本所在的对象文件！太棒了！它的哈希值是 `3105bdd067f7db16436d2ea85463755c8a772046`，因此它位于 `git/objects/31/05bdd067f7db16436d2ea85463755c8a772046`。

我们可以使用 `decompress.py` 来查看它：

```
$ python3 decompress.py .git/objects/31/05bdd067f7db16436d2ea85463755c8a772046 | head
blob 15924---
title: "Get your work recognized: write a brag document"
date: 2019-06-28T18:46:02Z
url: /blog/brag-documents/
categories: []
---
... 文件的剩余部分在此 ...

```

这就是博文的旧版本！如果我执行命令 `git checkout 026c0f52 content/post/2019-06-28-brag-doc.markdown` 或者 `git restore --source 026c0f52 content/post/2019-06-28-brag-doc.markdown`，我就会获取到这个版本。

### 这样遍历树就是 git log 的运行机制

我们刚刚经历的整个过程（找到提交、逐层遍历目录树、搜索所需文件名）看似繁琐，但实际上当我们执行 `git log content/post/2019-06-28-brag-doc.markdown` 时，背后就是这样在运行。它需要逐个检查你历史记录中的每一个提交，在每个提交中核查 `content/post/2019-06-28-brag-doc.markdown` 的版本（例如在这个案例中为 `3105bdd067f7db16436d2ea85463755c8a772046`），并查看它是否自上一提交以来有所改变。

这就是为什么有时 `git log FILENAME` 会执行的有些缓慢 —— 我的这个仓库中有 3000 个提交，它需要对每个提交做大量的工作，来判断该文件是否在该提交中发生过变化。

### 我有多少个历史版本的文件？

目前，我在我的博客仓库中跟踪了 1530 个文件：

```
$ git ls-files | wc -l
1530

```

但历史文件有多少呢？我们可以列出 `.git/objects` 中所有的内容，看看有多少对象文件：

```
$ find .git/objects/ -type f | grep -v pack | awk -F/ '{print $3 $4}' | wc -l
20135

```

但并不是所有这些都代表过去版本的文件 —— 正如我们之前所见，许多都是提交和目录树。不过，我们可以编写一个小小的 Python 脚本 `find-blobs.py`，遍历所有对象并检查是否以 `blob` 开头：

```
import zlib
import sys

for line in sys.stdin:
    line = line.strip()
    filename = f".git/objects/{line[0:2]}/{line[2:]}"
    with open(filename, "rb") as f:
        contents = zlib.decompress(f.read())
        if contents.startswith(b"blob"):
            print(line)

```

```
$ find .git/objects/ -type f | grep -v pack | awk -F/ '{print $3 $4}' | python3 find-blobs.py | wc -l
6713

```

于是，看起来在我的 Git 仓库中存放的旧文件版本有 `6713 - 1530 = 5183` 个，Git 会为我保存这些文件，以备我想着要恢复它们时使用。太好了！

### 就这些啦！

在 [这个 gist](https://gist.github.com/jvns/ff884dceef7660402fe1eca697cfbf51) 中附上了全部的此篇文章所用代码，其实没多少。

我以为我已经对 Git 的工作方式了如指掌，但我以前从未真正涉及过打包文件，所以这次探索很有趣。我也很少思考当我让 `git log` 跟踪一个文件的历史时，它实际上有多大的工作量，因此也很开心能深入研究这个。

作为一个有趣的后续：我提交这篇博文后，Git 就警告我仓库中的对象太多（我猜 20,000 太多了！），并运行 `git gc` 将它们全部压缩成打包文件。所以现在我的 `.git/objects` 目录已经被压缩得十分小了：

```
$ find .git/objects/ -type f | wc -l
14

```

*（题图：MJ/319a396c-6f3f-4891-b051-261312c8ea9a）*

---

via: <https://jvns.ca/blog/2023/09/14/in-a-git-repository--where-do-your-files-live-/>

作者：[Julia Evans](https://jvns.ca/) 选题：[lujun9972](https://github.com/lujun9972) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


如何在 Linux 中扩展 Veritas 文件系统（VxFS）

Summary: 扩展 VxFX 文件系统是 Linux/Unix 管理员的一项日常任务

sdfsdf

sdfsdf

扩展 VxFX 文件系统是 Linux/Unix 管理员的一项日常任务

![](/data/attachment/album/202309/17/095154jxqizcscc3xjuzrl.jpg)

扩展 VxFX 文件系统是 Linux/Unix 管理员的一项日常任务，可以通过以下文章中描述的几个步骤在线完成此任务：

在此，磁盘组没有足够的可用空间，因此我们将在现有磁盘组（DG）中添加新磁盘，然后调整其大小。

**相关文章：**

* **[如何在 Linux 中创建 VxVM 卷和文件系统](https://www.2daygeek.com/create-vxvm-volume-vxfs-filesystem-linux/)**
* **[如何在 Linux 上创建共享 VxFS 文件系统](https://www.2daygeek.com/create-veritas-shared-vxfs-file-system-linux/)**

### 步骤 1：识别文件系统

使用 [df 命令](https://www.2daygeek.com/linux-check-disk-space-usage-df-command/) 检查要增加/扩展的文件系统，并记下以下输出中的磁盘组（DG）和卷名称，稍后在运行 `vxdg` 和 `vxresize` 命令时将使用这些名称。

```
# df -hP /data

Filesystem                  Size  Used Avail Use% Mounted on
/dev/vx/dsk/testdg/testvol  9.0G  8.4G 0.6G  95%  /data

```

根据上面的输出，VxFS 文件系统大小为 9.0 GB，我们希望额外扩展 5 GB 并发布此活动，VxFS 大小将为 14 GB。

在本例中，DG 名称为 `testdg`，卷名称为 `testvol`。

### 步骤 2：获取新磁盘/LUN

新磁盘必须由存储团队映射到主机，这可能需要 CR 批准，因此提出 CR 并向相关团队添加必要的任务，并且还包括此活动的回滚计划。

### 步骤 3：扫描磁盘/LUN

存储团队将新 LUN 映射到主机后，获取 LUN id 并将其保存。

使用以下命令扫描 LUN 以在操作系统级别发现它们。

```
for disk_scan in `ls /sys/class/scsi_host`; do
    echo "Scanning $disk_scan…Completed"
    echo "- - -" > /sys/class/scsi_host/$disk_scan/scan
done

```

```
Scanning host0...Completed
Scanning host1...Completed
.
.
Scanning host[N]...Completed

```

扫描完成后，使用以下命令查看是否在操作系统级别找到给定的 LUN。

```
lsscsi --scsi | grep -i [Last_Five_Digit_of_LUN]

```

### 步骤 4：在 VxVM 中查找磁盘

默认情况下，所有可用磁盘对 Veritas 卷管理器（VxVM）都是可见的，可以使用 `vxdisk` 命令列出这些磁盘，如下所示。

```
# vxdisk -e list

DEVICE       TYPE           DISK        GROUP        STATUS               OS_NATIVE_NAME   ATTR
emc_01       auto:cdsdisk   disk1       testdg       online               sdd              -
emc_02       auto:cdsdisk   disk2       testdg       online               sde              -
emc_03       auto:none      -           -            online invalid       sdf              -
sda          auto:LVM       -           -            LVM                  sda              -
sdb          auto:LVM       -           -            LVM                  sdb              -

```

磁盘 `sdf` 的状态显示为 `Online invalid` 表示该磁盘不受 VxVM 控制。但是，请使用 `smartctl` 命令仔细检查 LUN id，以确保你选择了正确的磁盘。

```
smartctl -a /dev/sd[x]|grep -i unit

```

如果磁盘未填充到 VxVM，请执行以下命令扫描操作系统设备树中的磁盘设备。

```
vxdisk scandisks

```

### 步骤 5：在 VxVM 中初始化磁盘

当磁盘在**步骤 4** 中对 VxVM 可见，那么使用 `vxdisksetup` 命令初始化磁盘，如下所示：

```
vxdisksetup -i sdf

```

上面的命令将磁盘 `sdf` 带到 Veritas 卷管理器（VxVM），并且磁盘状态现在更改为 `online`。

![](/data/attachment/album/202309/17/095225ffh9ss4encczrejz.jpg)

### 步骤 6：将磁盘添加到 VxVM 中的磁盘组（DG）

`vxdg` 命令对磁盘组执行各种管理操作。在此示例中，我们将使用它向现有磁盘组（DG）添加新磁盘。

```
vxdg -g [DG_Name] adddisk [Any_Name_to_Disk_as_per_Your_Wish=Device_Name]

```

```
vxdg -g testdg adddisk disk3=emc_03

```

运行上述命令后，磁盘名称为 `disk3` 且磁盘组名称为 `testdg` 已针对 `emc_03` 设备进行更新 如下所示：

```
# vxdisk -e list

DEVICE       TYPE           DISK        GROUP        STATUS               OS_NATIVE_NAME   ATTR
emc_01       auto:cdsdisk   disk1       testdg       online               sdd              -
emc_02       auto:cdsdisk   disk2       testdg       online               sde              -
emc_03       auto:none      disk3       testdg       online               sdf              -
sda          auto:LVM       -           -            LVM                  sda              -
sdb          auto:LVM       -           -            LVM                  sdb              -

```

### 步骤 7：检查磁盘组（DG）中的可用空间

要确定连接卷有多少可用空间，请运行：

```
vxassist -g testdg maxsize

```

### 步骤 8：扩展 VxVM 卷和 VxFS 文件系统

我们为此活动添加了 5GB LUN，因此额外扩展了 VxVM 卷和 VxFS 文件系统 `5GB`，如下所示：

```
vxresize -b -g [DG_Name] [Volume_Name] +[Size_to_be_Increased]

```

```
vxresize -b -g testdg testvol +5g

```

这里：

* `vxresize`：命令
* `-b`：在后台执行调整大小操作（可选）。
* `-g`：将命令的操作限制为给定磁盘组，由磁盘组 ID 或磁盘组名称指定。
* `testdg`：我们的磁盘组（DG）名称
* `test`vol`：我们的卷名称
* `+5g`：此卷将额外增加 5GB。

### 步骤 9：检查扩展 VxFS 文件系统

最后，使用 `df` 命令检查 `/data` 的扩展 VxFS：

```
# df -hP /data

Filesystem                  Size  Used Avail Use% Mounted on
/dev/vx/dsk/testdg/testvol  14G   8.4G 5.6G  68%  /data

```

### 总结

在本教程中，我们向你展示了如何向现有磁盘组（DG）添加新磁盘，以及如何通过几个简单步骤在 Linux 中扩展 VxVM 卷和 VxFS 文件系统。

如果你有任何问题或反馈，请随时在下面发表评论。

*（题图：MJ/3fe4fdb7-99da-4b8f-a818-0ae232e6fbcc）*

---

via: <https://www.2daygeek.com/extend-increase-vxvm-volume-vxfs-filesystem-linux/>

作者：[Jayabal Thiyagarajan](https://www.2daygeek.com/author/jayabal/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1127 中国超算海洋之光的性能已达 1.5E

Summary:
? 中国超算海洋之光的性能已达 1.5E
? 内核级 SMB 服务器 Ksmbd 进入稳定状态
? 人工智能生成的艺术“通过”图灵测试
»
»

![](/data/attachment/album/202309/17/174804o0bpnfw2pxph0co2.jpg)

![](/data/attachment/album/202309/17/174816gdtr3geooo55eoe5.jpg)

### 中国超算海洋之光的性能已达 1.5E

美国计算机协会（ACM）发布消息称，由中国科学家投稿的《涡轮机械流动的精确计算》论文入围 2023 年戈登·贝尔奖，该奖项被誉为“超级计算应用领域的诺贝尔奖”。这篇论文将于 11 月份的 SC23 会议之前正式发布，是基于 1.5 ExaFlops（百亿亿次）超级计算机“神威·海洋之光”完成的，它是“神威·太湖之光”升级版。据该论文，海洋之光拥有超过 10 万个定制的 SW26010 Pro 处理器节点，分布在 105 个机柜中，其理论峰值性能为 1.5 E。据预测，如果将该超级计算机规模扩大到 120 个机柜，在 FP64 精度下的峰值将达到 1.72 E，这将超过美国橡树岭国家实验室的 1.68 E 的 Frontier 超算。而在 160 个机柜的条件下，FP64 峰值性能将接近 2.3 E，将有望击败已经安装完成的美国能源部阿贡国家实验室的 Aurora 超算。

>
> **[消息来源：Next Platform](https://www.nextplatform.com/2023/09/15/chinas-1-5-exaflops-supercomputer-chases-gordon-bell-prize-again/)**
>
>
>

>
> 老王点评：我们只是懒得参加 TOP500 排名而已。
>
>
>

![](/data/attachment/album/202309/17/174830dmrbf4dhod1rddbf.jpg)

### 内核级 SMB 服务器 Ksmbd 进入稳定状态

在 Linux 内核 6.6 候选发布版中，包含了一个 Ksmbd 稳定版，它是三星开发的内核级服务器，通过 SMB 协议提供文件和打印机的网络共享服务。Linux 一直以来都在使用用户空间的 Samba 解决方案，但由于性能、内存占用和复杂度等问题并不理想。Ksmbd 是与 Samba 项目合作开发的，其目标是成为比 Samba 性能更强、重点更突出的解决方案。现在它经过了大量的安全测试，被认为达到了稳定状态，计划进入 Linux 内核 6.6。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/11/linux_6_6_ksmbd/)**
>
>
>

>
> 老王点评：虽然说是已经达到了稳定状态，但是我对 SMB 服务进入内核空间总觉得不太放心。
>
>
>

![](/data/attachment/album/202309/17/174850fuaztc46aqpi11pi.jpg)

### 人工智能生成的艺术“通过”图灵测试

有人在网上发布了一些使用人工智能生成的图片，用螺旋或棋盘纹理展示了中世纪村庄。这些图片因其非凡的几何特质迅速在社交媒体上获得广泛赞誉。它们是使用稳定扩散和控制网引导技术创建的。之前也有人采用相同的技术来创建图片式的二维码。Y-Combinator 联合创始人 Paul Graham 甚至将之比喻为：“对我来说，这是人工智能生成的艺术通过图灵测试的时刻。”

![](/data/attachment/album/202309/17/175058enar0ah09kvet80j.jpg)

![](/data/attachment/album/202309/17/175107knd2uufd9a5b8zvd.jpg)

>
> **[消息来源：Ars Technica](https://arstechnica.com/information-technology/2023/09/dreamy-ai-generated-geometric-scenes-mesmerize-social-media-users/)**
>
>
>

>
> 老王点评：虽然是夸张的说法，但是人工智能生成的图片已经开始超过简单的模仿了。
>
>
>


Linux 如何挽救老旧电脑（和地球）

Summary: 请不要丢弃你的旧电脑。让我们跳过填埋场，利用 Linux 为它注入新的活力。

目前：Dell  OptiPlex Xe2 sff，2014年产。

配置：CPU:E3-1246v3，内存:16G，硬盘:256G SSD，显示器:19寸E1911 x3，显卡:集显

阻止大部分人使用LINUX的根本原因是学习成本和软件生态，大部分普通用户不愿意花费一周来学习一个操作系统（使用linux，总的来说，包括各种意外情况，是需要这么多时间的）大部分用户连驱动都不会安装，对于他们来说，换一个新电脑更划算。硬件和LINUX 还是极客的玩具

显示器已花，怎么救？

毛线，我不是极客，我还是一样的用linux工作，而且我还不是IT从业者。

毛线，我不是极客，我还是一样的用linux工作，而且我还不是IT从业者。

非it从业者。但是，应付日常上网需求足矣。关键是我的帝盟MX300插上后还能照常使用，而不用苦恼于Win下面的驱动问题

换一个，这个手工操作不来

07年的笔记本显示器底部大宽变色横条（且一直有变宽趋势），如何破？

来自223.104.246.180的 SeaMonkey 2.53|GNU/Linux 用户

朋友用同款浏览器哈，握爪

为什么您显示的是ubuntu而我们都是gnu linux？

因为这个识别 OS 的库其实是不完善的，识别不了那么准确。

请不要丢弃你的旧电脑。让我们跳过填埋场，利用 Linux 为它注入新的活力。

![](/data/attachment/album/202309/17/234009rn8fijpb68z658yb.jpg)

>
> 请不要丢弃你的旧电脑。让我们跳过填埋场，利用 Linux 为它注入新的活力。
>
>
>

我的两位孙子，Mint 和 Kasen，请求我帮助他们搭建游戏电脑。他们的请求让我感到非常欣喜。这不仅给了我一个与他们共度时光的美好机会，也让我能够帮助他们了解科技。同时，我能深入探讨电脑对环境产生的影响。

等一下！这似乎有些离题，对吧？其实并非如此，本文就是为了阐述这个问题。

### 旧电脑的命运是什么？

关于旧电脑的处理（以及处理的原因）是我们讨论的核心。首先，普通电脑通常在提供服务五年左右后被替换。理由何在？

我在一个名为《CHRON》的面向小企业的刊物的在线文章中找到 [这样一篇文章](https://smallbusiness.chron.com/life-span-average-pc-69823.html)，电脑的寿命被建议在三至五年。这个建议的部分原因是，假定电脑在生命周期的这个阶段开始变慢。这篇文章，以及其他的一些文章，都在鼓励人们在大约同样的时间段内更换更新、速度更快的电脑。当然，这些压力主要来源于电脑和芯片的厂商，他们想要保持收入的增长。

再者，美国国税局也通过规定电脑所能完全折旧的时间是五年，以此间接强化了这个服务寿命的观念。

我们首先来讨论一下关于电脑会变慢的迷思。电脑实际上是不会变慢的，恒定的时钟速度一直在运作。无论是 2.8GHz 还是 4.5GHz，当电脑忙碌时，它们总是以那个速度运行。当然，当电脑闲置或事情不多时，将会有意识地降低它的时钟速度以节省电力。

电脑变慢并不是因为它们变老了。装有 Windows 系统的电脑在使用过程中，会积累大量的恶意软件、间谍软件、广告软件和恐吓软件。这些垃圾软件拖慢了电脑的运行。电脑用户逐渐认为这是正常的，安于电脑性能下降的境况。

### Linux 驰骋救援

作为朋友和熟人心目中的电脑专家，人们有时会将他们不再需要的旧电脑送给我。他们认为电脑运行速度慢，因此选择交给我，并让我在将它们带到我家附近几个街区的电子设备回收中心之前清除硬盘数据。我总是建议他们，那些三到五年的老电脑其实仍然可用，但他们似乎更倾向于花费金钱换新，而非学习一个新的操作系统。

我已经收到过几台他人赠送的旧电脑。其中一个十分特别的是一台 Dell Optiplex 755，它配备了一个 2.33 GHz 的 Core 2 Duo 处理器以及 8GB 的 RAM。它的 BIOS 日期为 2010 年，所以现在大约应有 12 岁。这是我拥有的最老的电脑，我总是让它忙个不停。我已经使用它好几年了，且它从未变慢，这是因为我在它上面运行的是 Linux —— 如今是 Fedora 35。

如果你认为那是例外，那么我给你更多例子。十年前的 2012 年，我为自己组装了三台电脑，然后在它们所有上安装了 Fedora。至今，它们还在顺利运行，速度一如往昔。

这里没有例外，只有 Linux 系统在旧电脑上的正常运作。

使用 Linux 至少可以将电脑的使用寿命延长一倍，同时不需要任何额外花费。这就使得这些电脑在进入垃圾填埋场（最差情况）或回收中心（最好情况）之前，可以额外使用五到七年或更久。

只要我能找到这些电脑的替换零件，就可以使它们继续运行，远离任何垃圾处理或回收途径。有些电脑的问题在于找到合适的零部件。

### 非标准硬件

让我们讨论一下非标准硬件，以及你能在一些知名公司买到的电脑。正如我之前提到的，我有一台旧电脑是 Dell 的。Dell 是一家历史悠久的企业。尽管我不会购买 Dell 的台式机或塔式电脑，但是我会接受捐赠或者作为礼物赠予的 Dell 电脑。我可以在这些旧电脑上安装 Linux，去除 Windows，让它们重新发挥作用。它们在我的家庭实验室里作为测试计算机使用，等等。

然而，Dell 使用了一些你无法轻松替换的非标准零部件。当你能找到零部件（如电源和主板）时，它们并不便宜。原因在于，这些制造商设计了搭载非标准电源和主板的系统，只适配他们自家的非标准机箱。这是一种保持收入增长的策略。如果你在市场上找不到这些零部件，你就得去原厂买，并且价格通常非常高。

举例来说，我拥有的那台 Dell Optiplex 就使用了不符合通用标准的主板、机箱和电源。换句话说，Dell 的主板或电源可能无法适配我在当地电脑店或亚马逊上购买的标准机箱。这些部件也不适合我孙子们会使用的游戏机箱。主板和电源的安装孔不会与标准机箱对齐。电源适配器不符合标准机箱中可用的空间。而主板上的 PCI 插槽和后板接口在标准机箱中的位置会不对，电源的连接器也与标准主板上的不匹配。

最后，那些非标准部件中的一个或多个终究会出现故障，你可能完全找不到替代品，或者至少找不到价格合理的替代品。在这种情况下，处理旧电脑并采购新电脑就变得合情合理了。

### 标准件组装

让我们探讨一下使用标准化部件进行电脑组装，以及它们的长寿耐用如何适用于我正在帮助孙子们制造的游戏电脑。

大部分主板采用的设计是标准化的，包括微型 ATX、ATX，以及扩展版的 ATX。这些主板在规定的位置上设置了安装孔。许多孔位是重叠的，也就是说 ATX 主板上的孔位会和扩展版 ATX 主板的许多孔位对齐。这就意味着你可以在任何预钻了用于标准主板孔位的机箱中安装这些主板。这些主板都有标准的电源连接器，这意味着你可以配套使用任何标准电源。

在他们生日那天，我两个孙子都送给了一款有标准主板安装孔位的游戏电脑机箱。这些孔位的螺纹是标准的，因此他们可以使用任何主板配套提供的黄铜支架螺丝在这些主板安装孔位中。支架螺丝锁定入主板，并且自身设有适配标准主板锁定螺丝的标准螺纹孔。

这一切的结果就是他们可以在任何标准电脑机箱内，使用标准固定件和标准电源，安装任何标准主板。

需要注意的是，内存、处理器以及插卡设备都是标准化的，但是它们需要和主板兼容。所以旧款主板配套的内存可能已经买不到了。在这种情况下，你需要新的主板、内存和处理器。然而，电脑的其他部分仍然可以完好使用。

如我所告诉 Mint 和 Kasen 的那样，用全套标准部件组装（或购买）电脑就意味着你永远不需要买新电脑。我送给他们的这款优质机箱永远不必更换。随着时间的推移，可能有一些部件会出故障，但他们只需要换掉那些有缺陷的部件。这样一来，通过不断更新换代的标准部件，这些电脑将能经久耐用，且维护成本极低。如果有一个部件出故障，只需更换这一个部件，然后将故障部件回收。

这也极大地减少了你需要回收或者填入垃圾场的材料总量。

### 回收旧电脑配件

我很幸运，生活在一个提供路边回收服务的地方。这个服务虽然不包含电子设备，但周围的多个地方都可以接受电子设备回收，我便住在其中一个地方附近。我已经把很多旧的、不能使用的电子设备送去回收，包括出了故障的电脑配件，但我从未送过整机。

我会将这些出了故障的部件分类，用旧的纸箱存起来。按类别分类——一箱是电子设备，另一箱是金属，第三箱是电池，等等。这些箱子的内容与回收中心的分类相对应。等到一两个箱子满了，我就会送去回收。

### 结语

即使在为这篇文章和我之前的自我教育做了大量的研究，仍难以确定回收的电脑和电脑配件最终会去哪里。我所在附近的回收中心的网站指出，每种回收物料的运用都会依据它的经济价值来决定。电脑含有大量有价值的金属和稀土元素，因此总会被回收。

而这种回收是否以一种健康、环保的方式进行，这就是另一个话题了。到现在为止，我还无法追踪到送去回收的电子设备最后都去了哪里。我决定让自己尽自己的一份力，同时也要尽量保证回收链的其他环节也要设置得当，高效运行。

为了地球，我们最好让电脑尽可能长地运行。只更换故障的部件，能让一台电脑比目前承认的寿命还要运行得更久，这显著减少了我们需要填埋或回收的电子垃圾量。

当然，还要使用 Linux，这样你的电脑就不会变慢了。

*（题图：MJ/7ac9becc-f966-49f4-86a9-29fb41a5fd38）*

---

via: <https://opensource.com/article/22/4/how-linux-saves-earth>

作者：[David Both](https://opensource.com/users/dboth) 选题：[lkxed](https://github.com/lkxed) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


Librem 11：Purism 推出注重隐私的 Linux 平板电脑

Summary: 一款昂贵的 Linux 平板电脑，注重安全和隐私。让我们拭目以待。

Nice!

一款昂贵的 Linux 平板电脑，注重安全和隐私。让我们拭目以待。

![](/data/attachment/album/202309/18/111844o8q8qggdqf0iqwqc.png)

>
> 一款昂贵的 Linux 平板电脑，注重安全和隐私。让我们拭目以待。
>
>
>

[Purism](https://puri.sm/) 是一家日益流行的计算机硬件产品制造商，专门提供配备注重隐私的开源 Linux 发行版的笔记本电脑、台式机和移动设备。

最近，他们发布了一款新产品 **Librem 11** 平板电脑，配备了一些非常简洁的硬件。

让我们看看它能提供什么！

>
> ? 这不是赞助文章或认可。在订购之前，你应该从它的官方网站上研究有关该产品的更多信息（包括运输查询）。
>
>
>

### Librem 11 有什么？

![](/data/attachment/album/202309/18/111844otctpt2tp0eot2to.jpg)

Librem 11 被称为**安全平板电脑**，由其自用 Linux 发行版 [PureOS](https://www.pureos.net/) 以及 **[PureBoot](https://puri.sm/projects/pureboot/)** 提供支持，提供非常安全和专注隐私的体验。

**Purism 确保了设备的安全和隐私**，这要归功于他们采取的各种措施：

第一个是**安全启动过程**，得益于 PureBoot，它可以与 [Librem Key](https://puri.sm/products/librem-key/) 结合在一起，以进一步增强安全性，并在与 PureBoot 一起使用时以加密方式识别篡改。

第二个是 **Purism 承诺不监视用户**，避免任何监视或数据挖掘。

最后一项是 Librem 11 附加的“[反拦截](https://puri.sm/posts/anti-interdiction-services/)”服务，确保设备在制造和运输过程的之前、期间或之后不会被篡改。

你可能想知道，所有这些都在谈论安全和隐私，但是，**它的配置如何？**

![](/data/attachment/album/202309/18/111845y3eig0fdgcgr9rgx.jpg)

Librem 11 由 [英特尔 N5100](https://www.intel.com/content/www/us/en/products/sku/212329/intel-celeron-processor-n5100-4m-cache-up-to-2-80-ghz/specifications.html) CPU 以及 **8 GB LPDDR4 RAM** 和 **高达 1 TB 的 NVMe 存储**提供支持。

至于显示屏，该平板电脑配备多点触控 **60hz 11.5 英寸 AMOLED 显示屏**，分辨率为 **2560×1600。**

>
> ? 出于安全考虑，CPU 上的英特尔管理引擎（IME）默认处于禁用状态。
>
>
>

它还预装了一个带有倾斜支持，具有 4096 级压力的笔，以及一个**可拆卸键盘**，在平板电脑折叠时**还可用作保护套**。

其他一些亮点包括：

* 指纹识别器。
* 英特尔超高清显卡。
* 1 个 USB Type-C 3.1 端口。
* 借助 [英特尔 AX201](https://www.intel.com/content/www/us/en/products/sku/130293/intel-wifi-6-ax201-gig/specifications.html) 芯片支持 Wi-Fi 6。
* 支持 Bluetooth 5，由 [英特尔 9460](https://www.intel.com/content/www/us/en/products/sku/99446/intel-wirelessac-9560/specifications.html) 芯片提供。
* 3.5 毫米音频插孔（麦克风输入和耳机输出组合）。
* 前置 2MP 摄像头，后置 5MP 自动/手动对焦摄像头。

你可以浏览其 [公告博文](https://puri.sm/posts/purism-launches-new-secure-librem-11-tablet/) 以了解有关这款注重安全的平板电脑的更多信息。

### ? 获取 Librem 11

Purism 的 Librem 11 平板电脑现已发售，**价格为 999 美元**，交货期长达 10 天。

但是，如果你居住在美国，你很可能会比其他地区更早收到它。

>
> **[Librem 11](https://shop.puri.sm/shop/librem-11/)**
>
>
>

---

via: <https://news.itsfoss.com/librem-11-tablet/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


Linux 爱好者线下沙龙：LLUG 2023 深圳硬核来袭

![](/data/attachment/album/202309/18/151703dr7r1rr1sllmsw3z.jpg)

经历过 [6 月北京场](/article-15929-1.html)、[7 月上海场](/article-16052-1.html)，一个月的休整之后，这次 LLUG 来到大陆的南端，美丽的鹏城。

**2023 年 9 月 24 日下午，我们将在深圳举行 LLUG 2023 · 深圳场**，欢迎大家来到现场，和我们一起交流技术，分享自己工作过程中的所思所想。

本次活动依然由 Linux 中国和龙蜥社区（OpenAnolis）联合主办，电子工业出版社博文视点、《Linux 就该这么学》的刘遄老师提供了支持。

> 龙蜥社区（OpenAnolis）是国内的顶尖 Linux 发行版社区，我们希望在普及 Linux 知识的同时，也能让中国的 Linux 发行版，为更多人知晓，推动国产发行版的发展和进步。

### 活动议程

| 时间 | 议题 | 分享者 |
| --- | --- | --- |
| 14:00 ~ 14:30 | 现场签到 |
| 14:30 ~ 15:00 | 《简单聊聊 BPF》 | Locez，Linux 中国翻译组（LCTT）核心译者、开发者 |
| 15:00 ~ 15:30 | 《coolbpf 在阿里云应用实践》 | 廖肇燕，龙蜥社区 eBPF 技术探索 SIG Maintainer，拥有十余年 Linux 操作系统开发、问题定位和调优经验。 |
| 15:30 ~ 16:00 | 茶歇 |
| 16:00 ~ 16:30 | 《如何高效参与开源？》 | 老王（wxy），Linux 中国技术社区负责人 |
| 16:30 ~ 17:00 | 闪电演讲 |

### 议程介绍

#### 《简单聊聊 BPF》

![](/data/attachment/album/202309/18/145401axxr9mem9bfr5rmf.jpg)

*Locez，Linux 中国翻译组（LCTT）核心译者、开发者*

简单介绍 BPF 起源和一些基于 BPF 的工具使用。

#### 《coolbpf 在阿里云应用实践》

![](/data/attachment/album/202309/18/145409g2zz7q6rdrgh3zdg.jpg)

*廖肇燕，龙蜥社区 eBPF 技术探索 SIG Maintainer*

介绍 coolbpf 如何通过对 Linux 内核和 eBPF 技术的探索，降低使用门槛实现大规模落地并解决用户问题。

#### 《如何高效参与开源》

![](/data/attachment/album/202309/18/145415gaezeh3hoaezjsee.jpg)

*老王（wxy），Linux 中国技术社区创始人*

老王的经典分享，聊聊作为一个社区新人，应该如何参与到开源社区当中，并逐步成长为社区的中坚力量的。

### ⚡闪电演讲

本次线下活动依旧保留闪电演讲环节，作为最受欢迎的线下活动，本次活动依旧继续举办闪电演讲。每位演讲者有 5 分钟时间参与现场活动，可以提前报名，也可即兴上台演讲。时间一满，马上结束～强制大家控制自己的分享时间，用最短的时间，向大家发出你的声音～

上海场闪电演讲照片

![](/data/attachment/album/202309/18/145429qi1bf5bd9b5fy6vb.jpg)![](/data/attachment/album/202309/18/145435ylj6dgw5wd6wj81l.jpg)

### 活动地点及到达信息

南山区科苑南路3331号 深圳阿里中心（由于阿里中心需要登记才能进入，请务必填写表单报名。现场直接空降可能是进不来的哦～）

![](/data/attachment/album/202309/18/145754hz3j693fuflg6106.jpg)

抵达方式：

【自驾】

* 导航到“南山区科苑南路3331号深圳阿里中心”，按照入园指引图办理入园。

【公共交通】

* 地铁：乘坐2号线登良站C出口（步行7分钟到达）；地铁11号线后海站G出口（步行15分钟到达）。
* 公交：乘坐B737、B817、M409、M474、M506、M507、M528在后海滨路口下车（步行15分钟到达)。

如果你因为有事，没办法来到线下，那也没问题，我们的活动也会在 Linux 中国视频号/B 站账号、龙蜥社区社群/B 站账号等开启同步直播。

当然，我们更希望你能亲自来到线下，和我们一起畅聊 BPF， 看看 BPF 在你的企业中是如何被应用的～

[填写问卷即可报名活动](https://jinshuju.net/f/uxTekt)，并在活动前收到我们的提醒～此外，也可以在问卷中反馈你想听的内容，我们将竭尽所能，邀请行业专家，针对大家感兴趣的话题进行分享。

由于阿里中心需要登记才能进入，请务必填写表单报名。现场直接空降可能是进不来的哦～

*（题图：MJ/eb08b3a2-161b-4fc2-8d1f-3cb3384d1131）*


硬核观察 #1128 有一个软件用了 32 年版本号才变成 6.6

Summary:
? 有一个软件用了 32 年版本号才变成 6.6
? 看起来 ChatGPT 不会抢走你的编程工作
? AI 专家认为构建出真正反映人类集体自我的 AI 是可能的
»
»

![](/data/attachment/album/202309/18/174057b21xbqua71mfappw.jpg)

![](/data/attachment/album/202309/18/174105a2q5nnw1xn8m5j5w.jpg)

### 有一个软件用了 32 年版本号才变成 6.6

2023 年 9 月 17 日，Linus Torvalds 发布了 Linux 6.6-rc2，他写道，“我认为，6.6-rc2 最值得注意的一点是，它距 0.01 版本发布整整 32 年。如果你是计算机专业人士，这就是一个整数。”不过，除了这个日期之外，这个版本没有什么特别的，“到处都有随机修复，但没有一个看起来特别奇怪”。

>
> **[消息来源：Phoronix](https://www.phoronix.com/news/Linux-6.6-rc2-Released)**
>
>
>

>
> 老王点评：之前我曾经觉得 Linux 内核的版本号变得太快了，但要是放到 32 年这个跨度上来说，倒也不算快，虽然近些年快的有点晕车。
>
>
>

![](/data/attachment/album/202309/18/174115hf22p39246b34bn3.jpg)

### 看起来 ChatGPT 不会抢走你的编程工作

《连线》发布了一篇评论文章说，在功能开发受阻的情况下，解雇工程师并投入人工智能很可能会导致灾难，随后很快就会重新雇佣这些工程师。更合理的做法是，大型语言模型可以取代工程设计中的一些枯燥工作。如果提示词正确，它们可以提供自动完成建议或数据排序方法。计算的历史已经证明，试图减少开发人员的存在或简化他们的角色，最终只会增加工作的复杂性，使这些工作人员变得更加必要。如果说 ChatGPT 能够消除编码工作的枯燥乏味的话，那就像编译器终结了二进制工作的繁琐一样，它能让开发人员更轻松地专注于构建其作品的实际架构。

>
> **[消息来源：连线](https://www.wired.com/story/chatgpt-coding-software-crisis/)**
>
>
>

>
> 老王点评：每一个新的技术进步都淘汰了一些不能跟上的人，并创造了更多新的工作机会。
>
>
>

![](/data/attachment/album/202309/18/174127afk08bogpfpyvfpa.jpg)

### AI 专家认为构建出真正反映人类集体自我的 AI 是可能的

DeepMind 联合创始人 Mustafa Suleyman 在 2022 年创办了 AI 公司 Inflection， 获得了 15 亿美元的投资。他认为构建出真正反映人类集体自我的 AI 是可能的，能代表人类做出更好的权衡、更一致且更公平。他长期以来一直坚信对话是未来的界面，你将与 AI 进行交流，而不是点击按钮和打字。他认为 AI 的第一阶段是分类，深度学习表明可以训练计算机对不同类型的输入数据分类；第二阶段是生成式 AI，即当前大热的 ChatGPT 之类的 AI；第三阶段是交互式 AI：机器人可以通过调用其他软件和其他人来完成你为它们设定的任务。

>
> **[消息来源：Technology Review](https://www.technologyreview.com/2023/09/15/1079624/deepmind-inflection-generative-ai-whats-next-mustafa-suleyman/)**
>
>
>

>
> 老王点评：虽然结合上一条看起来人类总会有事情做，但是可能最终的结果就是被 AI 养起来，干一些很轻松而 AI 干不了的事情。
>
>
>

### 回音

* Unity [道歉](https://www.ign.com/articles/unity-has-apologized-for-its-install-fee-policy-and-says-it-will-be-making-changes-to-it)，并承诺修改之前公布的定价政策。之前，由于受到死亡威胁，Unity 甚至关闭了两处办公室。


10 个在 Linux 终端中生成有趣的 ASCII 字符画的工具

>
> 以为 Linux 终端都是严肃的工作？想多了。以下是你可以在终端中使用字符画做的几件趣事。
>
>
>

Linux 终端其实没有想象中的那样 [可怕](https://itsfoss.com/basic-terminal-tips-ubuntu/)。

当然啦，一开始它可能会令人望而却步，但是当我们更 [了解](https://itsfoss.com/love-thy-terminal/) 它的时候，我们就会喜欢上它的。

你可能会使用终端来做一些严肃的工作。不过，你也可以在终端中做很多有趣的事情。

其中的一项就是试一试 <ruby> ASCII 字符画 <rt>  ASCII art </rt></ruby>。你可以在 Linux 终端中用各种命令行工具以 ASCII 的形式显示一些预定义的或是随机的消息、玩游戏，抑或是播放动画。

我的同事 Sreenath 喜欢探索此类不寻常的命令行工具并将他的发现分享给我。现在，我也将他的发现与你分享。

![ascii art tools linux](/data/attachment/album/202309/19/152425sdv3l7hydh9sl9i6.png)

你的 Linux 发行版的仓库中应该已经有这些程序中的大多数了。你可以用系统的包管理器安装它们。为了使文章简洁，下文的安装指南均以 Ubuntu 为例。

### 1、lolcat：向终端加入缤纷色彩

虽然 `lolcat` 与 ASCII 字符画没有任何关系，至少，没有直接关系。

但是，我还是在文章开头就列出了它，因为它可以与其他的 ASCII 工具组合使用。

所以，它能做什么呢？它与 `cat` 指令很相似，但是它向输出内容加入随机的渐变色彩。

![lolcat](/data/attachment/album/202309/19/152426qe656pim6t9uve2z.png)

目前它看起来可能没什么用，但当其他 ASCII 工具通过 `lolcat` 输出时，你会看到它的效果。

用 `apt` 安装 `lolcat`：

```
sudo apt install lolcat

```

### 2、Aewan：漂亮地显示 ASCII 字符

Aewan 是一个多层 ASCII 图形、动画编辑器。它可以生成独立的，可被 `cat` 命令查看的 ASCII 字符画文件和便于命令行工具集成与解析的格式。

它包括两个工具：ASCII 编辑器 `aewan`，和文件查看器 `aecat`。

这里不讨论编辑器部分。

![aewan 的初始状态布局](/data/attachment/album/202309/19/152426kzrf2xtksf6fes9f.png)

用 `aecat` 命令以 ASCII 格式漂亮地显示任何文本。注意下面的截屏中字母的使用方式。

![aewan output](/data/attachment/album/202309/19/152427cs2ytdwatqx29jqb.png)

用下面的命令安装 `aewan`：

```
sudo apt install aewan

```

然后这样使用：

```
aecat hello

```

### 3、Cowsay：让 ASCII 牛复述你想说的话

这头牛在说什么？你想什么就让它说什么。

`cowsay` 是经验丰富的 Linux 用户中流行的工具。它显示了一个 ASCII 格式的牛，会重复你提供的文本。

![cowsay](/data/attachment/album/202309/19/152427tgs83hee8egt9hps.png)

但不仅限于牛。你也可以将其更改为其他的角色。比如，一条龙（火龙君临）：

![cowsay](/data/attachment/album/202309/19/152427an4lo8743smuu7cx.png)

你注意到截图中的色彩了吗？这正是上文提到过的 `lolcat` 命令的魔力所在。

用下列命令安装 `cowsay`：

```
sudo apt install cowsay

```

装好之后，这样使用：

```
cowsay hello

```

你可以参考它的 [手册](https://itsfoss.com/linux-man-page-guide/)，浏览其他配置和选项。

### 4、jp2a：图片转 ASCII 字符画

`jp2a` 是一个在 Linux 终端中将图像转换为 ASCII 字符画的命令行工具。它适用于 JPEG 和 PNG 文件，允许彩色输出和用你选定的字符显示 ASCII 字符画。

![jp2a](/data/attachment/album/202309/19/152427wbffqbzgzmxfn1fj.png)

用下列命令安装它：

```
sudo apt install jp2a

```

你可以像这样得到彩色的输出，并且保存到文件。

```
jp2a --output=ascii.txt --colors input.png

```

它并不是这类工具中的唯一一种，比如，`ascii-image-converter` 和几个其他的工具也可以达成相同的效果。在这里不再一一讨论了。

### 5、linuxlogo：用 ASCII 格式显示 Linux 发行版的徽标

正如起名，它 [用 ASCII 格式显示 Linux 发行版的标志](https://itsfoss.com/display-linux-logo-in-ascii/)。

不，不是我们 [喜爱的 Linux 标志 Tux](https://itsfoss.com/tux-trivia/)，而是你的 Linux 发行版的徽标。它还显示一些其他信息，比如 Linux 内核版本、CPU、RAM、主机名等等。

![linux logo](/data/attachment/album/202309/19/152428zaqjfkg8fk8g9mdk.png)

用 `apt` 安装：

```
sudo apt install linuxlogo

```

输入 `linuxlogo` 就可以用啦。

### 6、Neoftech：显示 Linux 标志和系统信息

上面的 Linux 标志有点太简化了。你可以用 Neofetch 放大它。

它以更漂亮的方式显示发行版以及一些系统信息，如内核、运行时间、桌面环境、主题和图标等等。

![neofetch](/data/attachment/album/202309/19/152428e1sdsesux7e78x7z.png)

你还可以通过 `lolcat` 解析它，获得彩虹色的输出。

用这行命令安装 Neofetch：

```
sudo apt install neofetch

```

然后，输入 `neofetch` 就可以运行啦。

还有一个与 Neofetch 很像的工具，`screenfetch`。用哪个都行。

### 7、fortune：看看命运如何

开玩笑啦。这样的事情根本就不存在。

不过，幸运饼干仍然很流行，所以显然，人们喜欢阅读随机的预测或说法。

你可以在 Linux 终端中用 Fortune 命令达到类似效果：

![fortune cookie linux](/data/attachment/album/202309/19/152428pdhvefk3efaf0akw.png)

你可以用下面的命令安装它。

```
sudo apt install fortune

```

装好之后，在终端中输入 `fortune` 来得到一条随机消息。

### 8、pv：让一切动起来

这是非预期使用 Linux 命令的典型例子。`pv` 命令本来用于通过管道监控数据的进度。

但你可以使用它来对显示任何命令的输出加入动画效果。将其与上述的命令结合起来，你就可以看到 ASCII 字符画逐渐显现在屏幕上，就像正在输入一样。

不太明白？看看这个：

用下面的命令安装：

```
sudo apt install pv

```

然后按这样使用：

```
neofetch | pv -qL 200 | lolcat

```

数字越大，速度越快。

### 9、cmatrix：类似黑客帝国的 ASCII 动画

还记得 “黑客帝国” 吗？下落的绿色代码是黑客帝国和黑客的象征。

你可以使用 `cmatrix` 命令在 Linux 终端用 ASCII 模拟运行下落代码。

我在这里用一张图片代替视频。

![cmatrix](/data/attachment/album/202309/19/152429qm7vy9e1e1nh1z0h.png)

你可以用 `apt` 安装它：

```
sudo apt install cmatrix

```

安装好之后，用它运行：

```
cmatrix

```

它会立即启动，并不断生成随机的绿色文本，带着从屏幕上落下后消失的动画效果。该命令会持续运行。使用 `Ctrl+C` 停止运行程序。

### 10、cbonsai：在你的终端种植盆景

有没有园艺的天赋？在终端中种植一棵 ASCII 盆景树怎么样？

`cbonsai` 是一个可让你以 ASCII 格式运行盆景树生长动画的有趣 Linux 命令。

几天前我发了一条关于 `cbonsai` 命令的 YouTube 短视频。

你可以用下面的命令安装 `cbonsai`：

```
sudo apt install cbonsai

```

用这行命令运行：

```
cbonsai -l

```

### 试试更多

还有很多这样的有趣的命令行工具，甚至还有 [ASCII 游戏](https://itsfoss.com/best-ascii-games/)。有时，看着它们给周围的人带来欢乐真的很有趣。

这些命令能派上用场吗？我不确定是否可用，但你可以在 `.bashrc` 文件中添加其中一些，这样一旦打开终端会话，命令就会立即运行。

许多系统管理员在共享的 Linux 系统上都会这样做。像 `cowsay` 或 `figlet` 这样的程序可以用来以漂亮的方式显示消息或系统概况。

你也可以在你的 Bash 脚本中使用其中的一些程序，尤其是当你需要突出显示某些内容时。

ASCII 字符画在 Linux 中可能还会有其他用途。你可以与我们分享。

---

via: <https://itsfoss.com/ascii-art-linux-terminal/>

作者：[Abhishek Prakash](https://itsfoss.com/author/abhishek/) 选题：[lkxed](https://github.com/lkxed) 译者：[泠知落汐](https://github.com/CoWave-Fall) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1129 SaaS 公司退云节省了 100 万美元

Summary:
? SaaS 公司退云节省了 100 万美元
? 英伟达显卡的开源 Nouveau 驱动维护者辞职
? 微软发布了 WSL 2 的 2.0.0 版本
»
»

不买N卡就对了

确实，到了开源世界，啥RTX都没有几年前的老A卡中用

来自湖南益阳的 Chrome Mobile 116.0|Android 13 用户

![](/data/attachment/album/202309/19/191825sdnssd3esdjx3ynj.jpg)

![](/data/attachment/album/202309/19/191840k4e4l46ffq0fx66e.jpg)

### SaaS 公司退云节省了 100 万美元

SaaS 项目管理公司 37 Signals 的 CTO 此前表示，他的公司每年在云计算上花费 320 万美元，其中大部分花在 AWS 上。由于高昂的云服务费用，该公司推动了云遣返计划，花费了 60 万美元购买了 8 台大型服务器，每台服务器包含 256 个虚拟 CPU，并将它们托管。该公司 CTO 称，“我们的云计算支出已经下降了 60%，从每月约 18 万美元降至不到 8 万美元。”他补充说：“按年增长率计算，这相当于节省了 100 万美元，而且我们将在 9 月份再次大幅降低成本。”此外，该公司的运维团队的规模在此期间保持不变。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/18/37_signals_cloud_repatriation_savings/)**
>
>
>

>
> 老王点评：云计算并不仅仅是节省成本的。
>
>
>

![](/data/attachment/album/202309/19/191851w4a344q44oia3jaj.jpg)

### 英伟达显卡的开源 Nouveau 驱动维护者辞职

Nouveau 刚刚发布了一个大型补丁系列，使 Nouveau 内核驱动程序能够使用英伟达的 GSP 来改进对 RTX 20/30 系列硬件的支持，并最终在 RTX 40 GPU 上实现加速图形支持。几个小时之后，它的核心维护者辞职了。长期以来，红帽公司的 Ben Skeggs 一直是 Nouveau DRM 内核驱动程序的主要维护者，在很大程度上一直领导着 Nouveau 内核驱动程序部分。他发布消息称，“我已经辞去了在红帽的职务，并将退出 Nouveau 开发”。

>
> **[消息来源：Phoronix](https://www.phoronix.com/news/Nouveau-Maintainer-Resigns)**
>
>
>

>
> 老王点评：虽然红帽在努力地封闭 RHEL 源代码，并且说了一些不中听的话。但无论如何，红帽养活了很多开源开发者，一旦他们离开了红帽，其贡献也很有可能就戛然而止。
>
>
>

![](/data/attachment/album/202309/19/191906vxfqeq7a3deeeap7.jpg)

### 微软发布了 WSL 2 的 2.0.0 版本

这是 Windows Subsystem for Linux 的一次重大更新，以 WSL v2.0.0 的形式发布在 GitHub 上。不要把它与 WSL 2 混淆，它实际上是 WSL 2 的 2.0.0 版（上一个版本是 1.3.17）。这个版本有许多更新，WSL 软件包中的所有二进制文件现在都已正确签名，WSL 内核已针对 Linux 5.15.123 进行了更新，WSLg 1.0.57 捆绑了最新的图形/用户界面支持。此外，还包括一些实验性功能，比如，可以减少 WSL 虚拟机回收缓存内存时的内存使用、可以改变 DNS 请求的解析方式、可以将 Windows 的防火墙规则应用到 WSL、自动使用 Windows 的网络代理信息等。

>
> **[消息来源：Phoronix](https://www.phoronix.com/news/WSL-Big-September-Update)**
>
>
>

>
> 老王点评：微软真是不遗余力地将 Linux 中的好东西都收罗到它的 Windows 中啊。
>
>
>

### 回音

* Unity 在 [讨论](https://www.ign.com/articles/unity-has-apologized-for-its-install-fee-policy-and-says-it-will-be-making-changes-to-it) 新的政策，预计将对收费设定上限，对达到门槛的安装量不会追溯，对安装量的跟踪改为由客户自行报告。


Fedora 39 新特性抢先看

Summary: Fedora 39 即将热门登场！在你进行安装前，先在这里了解一下新的功能。

Fedora的中文字体看起来就是不如ubuntu，你们换的啥字体

Fedora 39 即将热门登场！在你进行安装前，先在这里了解一下新的功能。

![](/data/attachment/album/202309/19/232440e647ygv46o4gychy.png)

>
> Fedora 39 即将热门登场！在你进行安装前，先在这里了解一下新的功能。
>
>
>

[Fedora 38](https://news.itsfoss.com/fedora-38/) 的升级引人瞩目，带来了全新的定制版，同时可以无限制地访问 Flathub。

如今，我们再次迎来升级，也就是 **Fedora 39**。

如果一切按计划进行，Fedora 39 将在 **2023 年 10 月 17 日** 正式发布。然而，这次有何新奇特性呢？

一起来探索一下！

![](/data/attachment/album/202309/19/232440zk4qlnyqe73m4p5d.jpg)

### Fedora 39：重要亮点

在 Fedora 39 中，你能期待一些值得关注的更新和变化，以及其他一些内容。

其主要改进包括：

* GNOME 45
* Fedora Onyx 定制版
* 彩色 Bash 提示符
* 应用程序更新
* 性能优化

### 彩色 Bash 提示符

![](/data/attachment/album/202309/19/232441dfzaptx6v7mmamn5.png)

Bash 提示符有了微小修改，改变了默认配色。

过往的单色默认配色与长命令的输出在视觉上容易混淆，现在，这种区分就容易多了。

当然，你也可以根据个人喜好，随意更改提示符的颜色。

### GNOME 45

GNOME 45 是本次升级的一大亮点。

与 [Ubuntu 23.10](https://news.itsfoss.com/ubuntu-23-10/) 一样，Fedora 39 也将是首批搭载 GNOME 45 的发行版之一。

GNOME 45 带来了大量实用的改动，以及一些微妙的视觉整改。

一些关键亮点包括：

* 新增的核心应用
* 系统设置新增的“<ruby> 关于 <rt>  About </rt></ruby>”面板
* 系统设置中的隐私中心
* 对 Nautilus 文件管理器的改善

对文件管理器的性能优化应会带来显著提升。

重新设计的简洁的侧边栏使得文件与文件夹区域的区分比以往更为明显。

![左侧(GNOME 44)，右侧(GNOME 45)](/data/attachment/album/202309/19/232441eqyb9hw0b9uymxz0.png)

引入的核心应用，如 “<ruby> 放大镜图像查看器 <rt>  Loupe Image Viewer </rt></ruby>” 和 “<ruby> 快照 <rt>  Snapshot </rt></ruby>”，应当大有用处。这是一个简单且极简的图片查看器，以及一款网络摄像头应用。然而，Fedora 39 仍坚持使用较为经典的 “<ruby> 茄子 <rt>  Cheese </rt></ruby>” 网络摄像头应用。

![](/data/attachment/album/202309/19/232441kbmggqn3q6rqq38b.png)

不仅新增了应用，已有的核心应用也进行了很多优化，例如“<ruby> 日历 <rt>  Calendar </rt></ruby>”应用有了新的应用图标，“<ruby> 控制台 <rt>  Console </rt></ruby>”应用和“<ruby> 天气 <rt>  Weather </rt></ruby>”应用的用户体验也得到了提升。

“<ruby> 设置 <rt>  Settings </rt></ruby>”菜单在呈现信息方式上也进行了升级，目的在于更好地为最终用户呈现信息。

在 “<ruby> 关于 <rt>  About </rt></ruby>” 面板，新增了一个 “<ruby> 系统详情 <rt>  System Details </rt></ruby>”，在此你可以获取到你正在运行的系统详细信息以及其硬件规格。

![](/data/attachment/album/202309/19/232441w5sg5325ivz5sh3s.jpg)

尽管在 Fedora 等 Linux 发行版中，隐私保护已经非常可靠，但 GNOME 45 给我们带来了更深一步的改进。

这些选项既便于快速访问，对于初次接触 Linux 的用户来说，也易于理解。

![](/data/attachment/album/202309/19/232442fi292t662eti6aea.png)

当然，GNOME 45 还有更多的亮点，你可以在我们的 [GNOME 45 特性](https://news.itsfoss.com/gnome-45/) 专题文章中详细略览：

>
> **[GNOME 45 带来令人兴奋的升级： 新功能介绍](https://news.itsfoss.com/gnome-45/)**
>
>
>

### Fedora Onyx

Fedora 提供的 Silverblue 变体，被公认为 [最优秀的不可变发行版](https://itsfoss.com/immutable-linux-distros/) 之一，其桌面环境采用的是 GNOME。

为了拓宽其产品线，Joshua Strobl 提出新增一款采用 Budgie 桌面环境的不可变版本，以此补充 Budgie 定制版，即 [Fedora Onyx](https://news.itsfoss.com/fedora-onyx-official/)。

在 Fedora 39 的新版本发布时，你应可以找到这个全新的版本。

>
> **[11 个面向未来、不可改变的 Linux 发行版](https://itsfoss.com/immutable-linux-distros/)**
>
>
>

### 默认废弃 fedora-repos-modular

Fedora 带有几个已预先启用的存储库，让你可以顺畅地安装软件包。

然而，根据开发者的观察，现在大多数用户并不使用模块化的存储库。因此，移除这些存储库将有助于提升 DNF 的性能。

>
> ? DNF 是 Fedora 的 [软件包管理器](https://itsfoss.com/package-manager/)。
>
>
>

因此，预计在默认不再包含 fedora-repos-modular 存储库的情况下，DNF 特别是在网络环境较差的情况下，其性能会得到一些改善。

### 应用和软件包更新

以下是最主要的应用程序更新：

* [LibreOffice 7.6](https://news.itsfoss.com/libreoffice-7-6/)
* Python 3.12
* RPM 4.19
* Vagrant 2.3
* Perl 5.38
* LLVM 17
* Golang 1.21
* FontAwesome6

### 其它改进

虽然安装程序基本无变化（Anaconda Web UI 的 [目标](https://fedoraproject.org/wiki/Changes/AnacondaWebUIforFedoraWorkstation) 是 Fedora 40），但是新的“<ruby> 欢迎屏 <rt>  Welcome Screen </rt></ruby>”在帮助你开始使用时会提供些许便利。

![](/data/attachment/album/202309/19/232442hunk13y5k23zrryu.jpg)

为了提供更好的用户体验，Fedora 39 加入了多项改进。

其中包括：

* **Fedora Workstation 不再对 Qt 进行定制主题设计**：Qt 应用将遵循 Qt 上游的默认主题设置。
* **Fedora Kinoite 变体启用自动更新**
* **改变 Fedora 中的 Flatpak 构建方式（不用模块）**

更多细节改进，你可以在其 [官方变更集维基](https://fedoraproject.org/wiki/Releases/39/ChangeSet) 上查看。

? 你对 Fedora 39 有怎样的期待？这是否对你将是一个重要的升级，或者只是类似常规新版本发布？

---

via: <https://news.itsfoss.com/fedora-39-features/>

作者：[Ankush Das](https://news.itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


我是如何在科技领域找到第一份工作并帮助其他人做到同样的事情

Summary: 没有我的导师，就没有我的今天。现在，我在开源领域找到了梦寐以求的工作。

没有我的导师，就没有我的今天。现在，我在开源领域找到了梦寐以求的工作。

![](/data/attachment/album/202309/20/105501j7sl7s3zksod3zhs.jpg)

>
> 没有我的导师，就没有我的今天。现在，我在开源领域找到了梦寐以求的工作。
>
>
>

两年前，当 Sauce Labs 在 <ruby>   开源项目办公室  <rt>  Open Source Program Office </rt></ruby>（OSPP）开设实习岗位时，我参加了它的面试。当时竞争十分激烈，而我并不具备一个技术公司青睐的技术背景。彼时的我正忙于从艺术领域寻求一个出路，参加了一系列技术课程，努力学习 Python 和 JavaScript 等技能。我下定决心要把握住这次可以在开源领域工作的面试机会，因为这是我踏上新的职业道路的入口。

在 [柏林的 PyLadies](https://berlin.pyladies.com/) 社区中，我认识了 [Eli Flores](https://www.linkedin.com/in/elifloresch/)，她和我亦师亦友，也正是她最终内推了我。如果不是因为 Eli，我可能根本不会有机会在 Sauce Labs 参加面试。

但我的简历真的很差。

我试图为自己包装一些我没有的技术能力，努力猜测面试官希望看到的内容。当然，面试筛选的过程也很困难。必须有人从成堆的简历中挑选出专业技能对口、适应工作角色的投递者，同时期待着有能够为团队带来新理念的创新人才。一方面，公司提供了一个面试的机会，对自己信任的人的判断有信心；另一方面，这也会使大家有很多的相似之处。

这正是内推计划的妙处所在，也是我在技术领域赢得 [第一份工作的故事](https://opensource.com/article/21/4/my-first-tech-job)。

但是，为别人内推就足够了吗？很多帮助他人内推的人认为自己已经完成这一年的“善事”，但 Eli 并不这样想。

Eli 是 Sauce Labs 在德国雇佣的第一位女性软件工程师。当我来到公司时，一共有三位女性员工：Eli，我自己以及 Elizabeth —— 她是在一年前入职的一位初级工程师。基于 Eli 自己的奋力历程，她关注了我的发展，邀请我参加定期的工作检查，同时根据公司的考察体系，为我提供了很多关于如何制定职业规划的有实际意义的信息。Eli 从不会只是甩给我一个链接然后离开，她会耐心的给我解释其中的含义以及系统中内置的一些“陷阱”。那时候，领导层还没有接受过认识自己偏见的培训，这对 Eli 的职业道路产生了影响。

除此之外，她还是制定正式文件的人——一份向决策层解释为什么当我的实习结束时，公司需要给我提供正式初级岗位的文件。在我合同结束前 Eli 准备了数月，她在我的同事中收集信息，找出了具有最后招聘权力的人，最重要的，教给了我捍卫自己岗位所需要的的洞察力。

我也做好了我的分内之事。

当我的合同续约前景不明朗时，我向一位朋友和导师咨询了要采取什么行动，以及对我的期望是什么。我也询问了最近正处于相同处境的同事。我创建了一个文档，里面记录了这几个月来我取得的进展，确保我的成果所展示的职业发展路线和公司所定义的充分吻合。有了这份文件，我可以证明 Eli 是对的：他们有充分的理由来留下我——基于客观事实而非主观臆断。

### 定义我的角色

然而，在这一过程中，仍然存在一个重要问题—— Sauce 想要留住我，但他们不知道该如何留下我。初级职位需要指导，以及一个渐进式的知识积累过程。我已经在开源项目办公室（OSPO）找到了自己的热爱，在这里我可以积极地和开源社区进行合作。但是 OSPO 可能是公司里最复杂的部门之一。它收集开源和业务信息，需要主动地去将业务需求和开源需求联系起来。我的同事大多是资深工程师，负责对业务至关重要的开源项目——这些工作都非常复杂。

我的一位同辈，[Christian Bromann](https://bromann.dev/)，也在寻求提高自己的管理技能，所以他关照了我。我们开始定期的一对一研讨，讨论在商业环境中开展开源项目的意义。他邀请我更进一步了解了他所参加的基金会和项目，并且进行了几次结对编程的活动，来帮助我学习对于一个工程师来说，在遇到特殊需求时该如何处理。他丝毫没有顾虑的为我在公司桌子旁准备了一把椅子，带我融入了业务。得益于此，我在公司中的角色定位变得清晰而明确。

在作为一个职场人争取转正并成长的过程中，我得了来自不同部门同事的帮助。他们向我展示了很多企业世界中我不了解的事情，包括在业务上最纯粹也是最重要的事情：我们的工作是如何让生活变得更好。我们拥有 <ruby> 多元、公平和包容 <rt>  diversity, equity, and inclusion </rt></ruby>（DEI）小组，环境、职工资源小组，非正式导师制度以及跨部门合作支持。Sauce Labs 最棒的地方就是它拥有的每一个人——充满智慧、满腔热情，我也努力做到见贤思齐。

不久之后，我决定是时候回馈了。

我回顾过往，思绪中涌现出了所有帮助我找到喜爱的工作并且极大改善了我的生活的前辈，我有了一个强烈的感觉：有必要在桌子旁边为他人再准备一把椅子。我开始寻找如何让一个盈利组织设立奖学金计划变得有意义。

### 一项来自盈利组织的奖学金项目

我现在正式担任了连接 OSPO 和社区部门的职位。我的主要任务是建立开源社区的开发者关系（我认为这是一份梦幻的工作！）。

在开源领域，尤其是 [基础设施](https://www.redhat.com/en/topics/cloud-computing/what-is-it-infrastructure?intcmp=7013a000002qLH8AAM) 相关（这是业务之本），贡献和消耗之间的不平衡一直是开源生态中的风险。所以问题成了：一个公司和一个开源项目有什么共同之处？

答案就是：人。

有许多法律上的条例限制着一家盈利性公司维持一个奖学金计划。这因国家而异，因为每个国家的法律也不尽相同。德国为工人提供了许多保障措施。我的人力资源部门同事告诉过我：“如果你觉得这是一份工作，那么它就是。”当然这通常也和税收和支出联系在一起，成本开销一直都是启动新项目的主要决定因素之一。

对于公司来说，实习意味着培训一位将来会被雇佣的人，因此需要有一个预先批准的包含一年工资的预算。但是奖学金不同于此。它是一种更加宽松的合约，类似于助学金，只涵盖一定的时间。这对于一个开源项目以及类似的活动比如 <ruby>   谷歌编程之夏  <rt>  Google Summer of Code </rt></ruby>（GSoC）和 Outreachy 来说再合适不过了。

我提出的计划模型是以人为中心的。我希望为有抱负的本地技术人员们提供进入该领域的机会。我已经经历过类似的项目，也明白它们可能有多么令人沮丧。这些项目的竞争非常激烈，如果想被选中，还必须在申请之前承诺几个月的无薪工作。

通过举办几个小型的当地活动，我深信整个开源生态系统都将受益。我觉得通过减少竞争，简化申请流程可以降低入门门槛，这一定会吸引更多的人——尤其是那些无法承诺数月无薪工作的人。

### 奖学金

[开源社区奖学金](https://saucelabs.com/resources/blog/sauce-labs-community-fellowship-program-open-source) 是一个为期六个月的带薪项目，旨在连接盈利组织和开源项目，促进开源中贡献和治理的多样性。

将员工转变为导师降低了项目的成本，同时也为公司带来了巨大的价值，因为这样有助于将员工培养为更好的导师。多项研究证明了在公司内部建立正式的、非正式的导师制度的优势，其中包含增强员工归属感，减少公司的人才流失。很多公司表示需要员工具备承担导师制度的技能以达到高级职称水平，但这是一种需要实践的技能。通过每周提供 2 小时来培训相关技能，公司可以在长期内获益颇丰，而付出的工作量很少。

一个与业务紧密相关的开源项目需要对业务至关重要。如果你打算雇佣一定数量的人在六个月内专门完成一个项目，那么就需要从这笔支出中取得回报。我鼓励奖学金成为一个跨学科、跨专业的项目，因为大多数开源项目需要文档编写、翻译、设计和社区支持等多方面的帮助。

并且，奖学金项目应该设置为六个月——不能再少。诸如一些为期三个月的项目，也许有津贴，但对于一个合理的入职申请来说是不够的。未来的项目维护者应该现在就融入到社区，这是需要时间的。

最后，这必须是一个带薪项目。我们不仅仅需要导师制度，还需要资助。尽管导师制度可以帮助你扩展人脉，但我们还需要支出薪水。向获奖者支付薪水可以让他们全身心地投入到项目中。

Sauce Labs 首次赞助了这个项目并于 2022 年 12 月在全美招募了 5 名获奖者。我们希望这个项目成为 [自由软件运动中的典范][]，这样的话，所有人都可以在其基础上创建分支、修改并重新分发。

### 每个人都有优点

我们时常面临这样的问题：“我能做什么？”与其对永远存在的困难感到挫败，不如积极地发掘自己的优点。以下是一些基于我自身经历的想法：

* 成为社区的组织者。附近没有找到组织？那就创建属于你自己的团队并招贤纳士，要知道，你需要支持。
* 成为导师。加入一些倡议组织，或是在你的公司创建正式的亦或是非正式的导师项目。
* 关心你的同事，并主动提供帮助。即使你的工作十分稳定，你仍然需要他人的帮助来成长。和同事搞好关系，并利用这个优势，让每一种声音得到倾听。
* 接受一个属于你自己的奖学金项目。这是一个可重复，易实施的模型，同时也为开源生态系统带来了无尽的帮助。

我们一直可以为我们周围的世界更加美好而做出贡献，而你是其中重要的一环。

*（题图：MJ/994ad9ce-29e3-438b-959c-84fb4e037eb5）*

---

via: <https://opensource.com/article/23/3/my-first-job-tech>

作者：[Paloma Oliveira](https://opensource.com/users/discombobulateme) 选题：[lkxed](https://github.com/lkxed/) 译者：[lyxwest](https://github.com/lyxwest) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1130 二季度英伟达 H100 GPU 出货超过 900 吨

Summary:
? 二季度英伟达 H100 GPU 出货超过 900 吨
? MariaDB 公司或被风投收购
? AI 编程助手有时候会替你填上别人的密钥
»
»

大家训练人工智能不对数据和结果进行审核的吗？

![](/data/attachment/album/202309/20/155840kbio48z83482oi4y.jpg)

![](/data/attachment/album/202309/20/160007ve5res9xvu1y9r2p.jpg)

### 二季度英伟达 H100 GPU 出货超过 900 吨

据报告，二季度有 30 多万台 H100 GPU 进入了服务器制造商的装配线，按每台 GPU 连同散热器的重量约为 3 千克，约计 900 吨！此外，为人工智能处理工作配备 8 个 GPU 的服务器推高了服务器平均价格，涨幅超过了 30%。据预测，8 个 GPU 的服务器的持续部署将导致服务器市场收入在 2024 年上半年同比增长 51%，预计将有一百万个 H100 GPU 进入服务器。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/19/900_tons_nvidia_servers/)**
>
>
>

>
> 老王点评：我从来不知道芯片也可以按吨来计算，这一比喻令人直观地感受到现在 GPU 芯片有多火。
>
>
>

![](/data/attachment/album/202309/20/160019ajdux2e4u1s43wgw.jpg)

### MariaDB 公司或被风投收购

MariaDB 公司于 2022 年 12 月进行了首次公开募股（IPO），获得了 1.04 亿美元的资金。今年 3 月，MariaDB 公司表示，预计通过数据库订阅和服务筹集的资金将不足以满足其预计的营运资金和运营需求，“正在寻求额外的资金，以满足 2023 年 9 月 30 日之后的预计营运资金、运营和债务偿还需求”。7 月，纽约证券交易所通知 MariaDB，该公司在 30 天内股价跌破 1 美元，不符合其上市手册的规定，面临退市风险。风险投资公司 Runa Capital 提出收购 MariaDB 已发行普通股的 100% 的非承诺要约。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/19/vc_makes_bid_for_mariadb/)**
>
>
>

>
> 老王点评：开源软件公司不好干啊，可能不上市还更好一些。
>
>
>

![](/data/attachment/album/202309/20/160046inrrrqm333nh8r1f.jpg)

### AI 编程助手有时候会替你填上别人的密钥

不小心的开发人员可能会在代码库中硬编码证书，甚至提交到 GitHub 等公共源代码托管服务。研究人员对 GitHub Copilot 和亚马逊 CodeWhisper 等 AI 编程助手生成的代码中是否会出现泄露的 API 密钥进行了研究。他们让 AI 补完代码中空白的密钥值，研究发现，这些 AI 编程助手给出的密钥中，Copilot 有 3.6%，CodeWhisperer 有 5.4% 都是 GitHub 上的有效硬编码凭据。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/19/github_copilot_amazon_api/)**
>
>
>

>
> 老王点评：也就是说你泄露的密钥，不仅仅能在 GitHub 上搜到，而且会被 AI 编程助手告诉别人。
>
>
>


Beaver Notes：一款开源的私人记事本应用

Summary: 这是一款以隐私保护为重点，能在各平台上运行的记事本应用。一起来了解一下吧！

这是一款以隐私保护为重点，能在各平台上运行的记事本应用。一起来了解一下吧！

![](/data/attachment/album/202309/20/231046ah0ehdhf8x1uqt88.jpg)

>
> 这是一款以隐私保护为重点，能在各平台上运行的记事本应用。一起来了解一下吧！
>
>
>

你是否正在寻找一款以隐私保护为核心的记事本应用？

那么，我们可能为你找到了合适的东西！

Beaver Notes 是一个**跨平台的开源记事本应用**，它将**笔记数据存储本地**，从而避免了数据泄露的风险，并允许用户在离线时访问已存储的笔记。

我认为它很快就可以登上我们的 [最佳 Linux 记事本应用](https://itsfoss.com/note-taking-apps-linux/) 列表了。

以下我将带你了解这款应用，同时我也会分享我的初步印象。

### Beaver Notes：概况 ⭐

![](/data/attachment/album/202309/20/231140x3zeelfte3ean5nr.jpg)

Beaver Notes 使用了 **Vue** 和 **JavaScript** 构建，作为一款以隐私为主导的记事本应用，它提供了简洁而直观的用户界面。

它有许多让人赞赏的功能，使它成为一款理想的记事应用。一些突出的特点包括：

* 专注模式
* 笔记标签系统
* Markdown 编辑支持
* 导出/导入笔记的功能

推荐阅读：

>
> **[Linux 上 16 个最好的记事本应用](https://itsfoss.com/note-taking-apps-linux/?ref=news.itsfoss.com)**
>
>
>

#### 初步使用体验 ??

我在我的 [Ubuntu 22.04](https://news.itsfoss.com/ubuntu-22-04-release/) 系统上安装了 Beaver Notes，并且添加了一些随机的笔记以及它自带的两份介绍笔记。

当我打开 Beaver Notes 时，我首先看到的是其主页，上面展示了各种信息。其中包括一个**整齐地组织了的我的笔记的区块**，以及它旁边的**配有笔记分类功能的搜索菜单**。

此外还有一个**侧边栏菜单**，其中**列出了创建/编辑新笔记、浏览所有/归档笔记、切换深色模式和设置菜单等重要选项**。

![](/data/attachment/album/202309/20/231140p7mzgp1iw3dwhatz.jpg)

随后，我尝试了下 **笔记编辑体验**。

如前所述，**Beaver Notes 支持** [Markdown](https://en.wikipedia.org/wiki/Markdown) 格式，而且我发现使用它编辑非常直观，而且它拥有我期待中的所有常用选项。

![](/data/attachment/album/202309/20/231140s4uc6ebyxpxnm4uy.jpg)

>
> **[Linux 上 11 个最好的 Markdown 编辑器](https://itsfoss.com/best-markdown-editors-linux/)**
>
>
>

值得注意的是，它有一个 “<ruby> 专注模式 <rt>  Focus Mode </rt></ruby>”。启用后，所有的菜单元素都被隐藏起来，让我可以全屏进行更专注的编辑。

>
> ? 尽管该特性带我进入了全屏模式，但我为了能够以下面的截图，还是选择了退出全屏模式。
>
>
>

![](/data/attachment/album/202309/20/231140jr3vo7nlmngsru73.jpg)

另外一个吸引我眼球的功能是 “<ruby> 标题树 <rt>  Headings Tree </rt></ruby>” 特性。这使得在大型的，由多个标题组成的笔记中轻松导航成为可能。

![](/data/attachment/album/202309/20/231140xsk4nno0zk3okrw9.jpg)

Beaver Notes 还有一个 **笔记标签系统**，这让你更有效地管理你的笔记。只需要输入 `#` 和标签名，即可创建新的标签。

之后，你可以通过搜索栏邻近的标签排序菜单，或点击主页上的标签进行排序。

![](/data/attachment/album/202309/20/231140x3gsk9ykz1ki849i.jpg)

你还可以 **归档笔记**。我可以将笔记归档而不是删除它，并以后在侧边栏中的 “<ruby> 归档 <rt>  Archive </rt></ruby>” 选项中查看。

![](/data/attachment/album/202309/20/231141eq28cgv5xfxg98ng.jpg)

那如何改变它的外观配置呢？

“<ruby> 设置 <rt>  Settings </rt></ruby>” 菜单中包含了常规的选项，允许你在浅色模式、深色模式和系统模式之间切换。

在这里还可以对数据导出设置密码，同时也能导入笔记。

![](/data/attachment/album/202309/20/231141xq5oqcvo34zmoqnu.jpg)

最后，还有 “<ruby> 快捷键 <rt>  Shortcuts </rt></ruby>” 菜单，这里列出了在 Beaver Notes 中可用的所有键盘快捷键。

![](/data/attachment/album/202309/20/231141nqfxfkwrnhkwto4m.jpg)

在我短暂的使用体验中，Beaver Notes 给我留下了深刻的印象，尤其针对不需要进行云同步的情况，这是一个非常理想的记事本应用。

我建议你也试试看，它提供了许多有价值的功能。

### ? 下载 Beaver Notes

由于 Beaver Notes 是 **一款跨平台应用**，因此它可以在 **Linux**、**Windows** 和 **macOS** 上运行。你可以在 [官方网站](https://beavernotes.com/download) 下载你需要的安装包。

>
> **[Beaver Notes](https://beavernotes.com/download)**
>
>
>

如果你对源码感兴趣，也可以访问它的 [GitHub 仓库](https://github.com/Daniele-rolli/Beaver-Notes) 查看。

? 你对 Beaver Notes 有什么看法？它是你一直在寻找的吗？

---

via: <https://news.itsfoss.com/beaver-notes/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lujun9972](https://github.com/lujun9972) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


Linux 内核支持周期即将发生一项重大变革！

Summary: 从文字描述上看，它对用户产生的影响将如何呢？你有何看法呢？

感觉应该少出lts 而不是减少lts维护时间。<br />
要不然lts的意义是什么。

来自河南驻马店的 Chrome Mobile 90.0|Android 11 用户

从文字描述上看，它对用户产生的影响将如何呢？你有何看法呢？

![](/data/attachment/album/202309/21/085832oy6xi3jqrm44s9xg.jpg)

>
> 从文字描述上看，它对用户产生的影响将如何呢？你有何看法呢？
>
>
>

<ruby> <a href="https://events.linuxfoundation.org/open-source-summit-europe/">  欧洲开源峰会 </a> <rt>  Open Source Summit Europe </rt></ruby> 刚刚开幕，我们开始看到围绕 Linux 和开源软件的一些有趣动态。

其中一项新闻是关于未来将如何处理 Linux 内核的 [长期支持](https://itsfoss.com/long-term-support-lts/)（LTS）版本。

我们来看一下即将进行的更迭。

**新变化：** 在峰会上，Linux 开发者和 [LWN](https://lwn.net/) 执行编辑 Jonathan Corbett 宣布，**Linux 内核的 LTS 周期即将从原先的六年缩短至两年**！

目前，有 **六个 LTS 版本的 Linux 内核**，即 4.14、4.19、5.4、5.10、5.15 和 6.1。

在将来，继 4.14 之后，当 LTS 状态的下两个版本被淘汰时，**它们将不会被其他内核版本所取代**。

>
> ? 你可以查阅 [Linux 内核归档](https://kernel.org/category/releases.html) 来了解目前 LTS 版本 Linux 内核预计的终止支持日期。
>
>
>

长期支持内核：

| 版本 | 维护者 | 发布于 | 计划终止日期 |
| --- | --- | --- | --- |
| 6.1 | Greg Kroah-Hartman & Sasha Levin | 2022-12-11 | 2026 年 12 月 |
| 5.15 | Greg Kroah-Hartman & Sasha Levin | 2021-10-31 | 2026 年 10 月 |
| 5.10 | Greg Kroah-Hartman & Sasha Levin | 2020-12-13 | 2026 年 12 月 |
| 5.4 | Greg Kroah-Hartman & Sasha Levin | 2019-11-24 | 2025 年 12 月 |
| 4.19 | Greg Kroah-Hartman & Sasha Levin | 2018-10-22 | 2024 年 12 月 |
| 4.14 | Greg Kroah-Hartman & Sasha Levin | 2017-11-12 | 2024 年 1 月 |

**时机选择：**Jonathan 提到的理由之一是，**并不是很多人使用旧版本的 Linux 内核**，因此这些版本没必要继续进行维护。

我对此表示同意。然而，肯定有些人对此举动感到不满。

但是，这个决策的推进主要是由于 **Linux 代码维护人员过度劳累的大问题**。

你看，对于一个 LTS 版本的代码进行检查和改善是一项重任务，需要消耗大量的时间和精力，而问题就出在这里。

据 Jonathan 所说，维护人员面临的 **两个大挑战** 分别是：大部分 **维护人员并未得到酬劳以维护 Linux 内核**，以及采用 “[Fuzzing](https://en.wikipedia.org/wiki/Fuzzing)” 技术寻找问题，虽然有所帮助，但有时也可能揭示出许多小问题，需要维护人员花费更多的精力。

看到这样的情况，维护人员容易感到疲劳，对吧？?

当被问及 **维护人员如何得到帮助？** 时，Jonathan 建议他们与雇主进行沟通，把 Linux 内核维护工作转为付费工作。

他还补充说，

>
> 如果公司希望继续从 Linux 中获益，就需要意识到他们必须向 Linux 回馈。
>
>
>

总的来说，此次变革将减轻维护人员的负担，但依赖于旧版本 Linux 内核的系统可能会承受不获得关键更新的风险。

这可能会对大部分用户产生影响，或可能不会，但对某些组织来说，可能会带来些许不便。

? 你怎么看？在下方评论区分享你的想法吧。

*新闻来源：[ZDNET](https://www.zdnet.com/article/long-term-support-for-linux-kernel-to-be-cut-as-maintainence-remains-under-strain/)*

*（题图：MJ/47a40c0f-3a3c-4534-98fe-3c986e9a881c）*

---

via: <https://news.itsfoss.com/linux-kernel-support/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lujun9972](https://github.com/lujun9972) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


用 Rust 编码？这是 JetBrains 的新 IDE

Summary: Rust 开发者，你们有新的东西可以尝试了！

Rust 开发者，你们有新的东西可以尝试了！

![](/data/attachment/album/202309/21/105704plqhnljnw255huaw.jpg)

>
> Rust 开发者，你们有新的东西可以尝试了！
>
>
>

在最近宣布基于 IntelliJ 的 IDE [将支持](https://news.itsfoss.com/intellij-wayland-support/) Wayland [显示服务器](https://itsfoss.com/display-server/) 协议之后，JetBrains 推出了**面向 Rust 开发人员的新 IDE**。

它被称为 “**RustRover**”，目的成为**一个功能丰富的独立 Rust IDE**，并将接收定期更新、快速支持和“开箱即用的体验”。

请允许我向你展示它所提供的内容。

>
> ? 这是一个早期使用工具，目前不适合生产使用。
>
>
>

### RustRover：可以期待什么？

![](/data/attachment/album/202309/21/105717u71gwykgyowwm47y.png)

>
> ? RustRover 不是自由开源软件。
>
>
>

RustRover 从头开始开发，**取代了现已弃用的 [IntelliJ Rust](https://intellij-rust.github.io/) 插件**，该插件用于提供 JetBrains 平台上的 Rust 支持。

它是根据 JetBrains 的其他 IDE 构建的，用于提供**专用的 Rust 开发环境**，而这是以前所缺少的。

>
> ? RustRover 还使用 IntelliJ Rust 插件作为组成部分。
>
>
>

在当前状态下，RustRover 支持诸如 **Rust** 、 **Cargo** 、 **TOML** 、 **web** 和**数据库**等语言和技术。具有来自 **[IntelliJ IDEA](https://www.jetbrains.com/idea/)** 的附加功能，包括 **[VCS 集成](https://www.jetbrains.com/help/youtrack/cloud/Integration-with-Version-Control-Systems.html)**。

而且，说到它的功能，还不少呢！ ?

**对于编码**，它支持**代码补全**、**代码生成**、**智能重构**、**实时模板**等。RustRover 旨在帮助用户更快、更准确地编写代码。

它还具有一些基本功能，例如**语法高亮显示**、**宏扩展**、**跨语言操作**等，以帮助更好地理解代码库。

**对于测试**，RustRover 具有测试运行器、调试器、对运行配置、运行目标、分析和性能分析的支持。

**对于项目管理**，它支持 Cargo 和 `Cargo.toml`、构建脚本、依赖项声明中的代码补全，并且可以轻松访问 Crate 文档。

RustRover 还**具有一些简洁的实时协作功能**，例如**支持 [VCS](https://en.wikipedia.org/wiki/Version_control)**（[Git](https://git-scm.com/) 和 [GitHub](https://github.com/)）、**配置共享** 和 **[code with me](https://www.jetbrains.com/code-with-me/)**。

你可能想知道**它的许可和定价模式怎么样？**

鉴于 **RustRover 不是开源的**，JetBrains **计划将其作为商业产品以订阅方式出售**，与其他 IDE 产品类似。

定价结构尚未最终确定，但预计会与他们的 IDE 产品定价类似。

你可以通过他们的[公告博客](https://blog.jetbrains.com/rust/2023/09/13/introducing-rustrover-a-standalone-rust-ide-by-jetbrains/)来了解更多关于 RustRover 的信息。

>
> ? 既然我们正在讨论 Rust 的话题，为什么不尝试一下我们的 [Rust 基础系列](https://itsfoss.com/tag/rust-basics/)呢？它应该作为 Rust 世界的一个很好的介绍。
>
>
>

**想要试一试么？**

RustRover 已提供 **tar.gz 包**、**JetBrains Toolbox App** 和 \*\* Ubuntu Snap 包\*\* 提供。你可以从 [官方网站](https://www.jetbrains.com/rust/download/) 获取你选择的包。

>
> **[RustRover](https://www.jetbrains.com/rust/download/)**
>
>
>

对于 Ubuntu，你还可以运行以下命令：

```
sudo snap install jetbrains rustrover --classic

```

请注意，在撰写本文时，**Snap 包未按预期运行**，在使用上述命令时在安装过程中引发错误。

JetBrains **计划在 2024 年 9 月之前对 RustRover 保持公共预览版**，并在此之前发布稳定版本。

? 你有兴趣使用这样的 IDE 进行 Rust 编码吗？在下面的评论中分享你的想法！

---

via: <https://news.itsfoss.com/rust-ide-jetbreains/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1131 大模型“深吸一口气”后会更聪明

Summary:
? 大模型“深吸一口气”后会更聪明
? 亚马逊将为 Alexa 添加人工智能
? 统一加速基金会成立，英伟达缺席
»
»

Nvidia缺席不奇怪，因为它和Linux的关系不好，但是没有AMD就很奇怪了。

来自广东广州的 Chrome Mobile 116.0|Android 10 用户

![](/data/attachment/album/202309/21/163053nc45035s3zac0i5c.jpg)

![](/data/attachment/album/202309/21/163102x7dat5fgo7tfzxwe.jpg)

### 大模型“深吸一口气”后会更聪明

DeepMind 的研究人员开发了一种技术，可以通过使用人工智能模型来改进提示词，以提高其它人工智能语言模型的数学能力。利用这种被称作“通过提示进行优化（OPRO）”的技术，他们发现，使用“深吸一口气，一步步解决问题”的提示词，能大幅提升数学测试得分。对 PaLM 2 使用该提示，它在小学数学应用题数据集 GSM8K 中的正确率达到了 80.2%，而不使用该提示正确率只有 34%。为什么这能奏效呢？大模型显然不会呼吸，也不像人类那样思考和推理。它所做的“推理”都源自从书籍和互联网上抓取的短语数据集。这些内容中往往在“深呼吸”，“一步步思考”等短语后跟着更合理的推理方案。这些短语可能有助于大模型产生更好的答案。

>
> **[消息来源：Ars Technica](https://arstechnica.com/?p=1969012)**
>
>
>

>
> 老王点评：要想让人工智能像人类一样思考，就得把它当成人类一样对待。
>
>
>

![](/data/attachment/album/202309/21/163114dzyd99cfeaduiadm.jpg)

### 亚马逊将为 Alexa 添加人工智能

亚马逊展示了由其全新的 Alexa 大语言模型驱动的全新 Alexa 语音助手。这款全新的 Alexa 可以理解对话短语并做出适当的回应，更有效地解释上下文，并通过一个命令完成多个请求。他们表示，Alexa LLM “是一个真正可通用的大型语言模型，针对 Alexa 的用例进行了优化；它与 Bard 或 ChatGPT 或任何这些东西都不同”。想参加测试的美国用户，可以对 Echo 设备 说“Alexa，我们聊聊吧”，就有可能被加到预览测试名单中。

>
> **[消息来源：The Verge](https://www.theverge.com/2023/9/20/23880764/amazon-ai-alexa-generative-llm-smart-home)**
>
>
>

>
> 老王点评：语音助手是最应该有人工智能的设备，而之前它们只是简单的问答机和搜索引擎而已。
>
>
>

![](/data/attachment/album/202309/21/163128a6zuua1j1u88bcun.jpg)

### 统一加速基金会成立，英伟达缺席

Linux 基金会本周宣布成立统一加速（UXL）基金会。该组织的使命是提供 “一个开放标准的加速器编程模型，简化高性能、跨平台应用程序的开发”。该基金会的创始成员包括 Arm、富士通、谷歌云、英特尔、高通、三星等公司。但英伟达公司缺席，英伟达提供了自己的 CUDA 编程模型，用于使用其 GPU。这个新的基金会的核心是 oneAPI 计划的演进，其目的也是创建一个新的编程模型，使开发人员更容易支持各种加速器，无论它们是 GPU、FPGA 还是其他专用加速器。

>
> **[消息来源：Tech Crunch](https://techcrunch.com/2023/09/19/the-unified-acceleration-foundation-wants-to-create-an-open-standard-for-accelerator-programming/)**
>
>
>

>
> 老王点评：那就看看自己玩还是大家玩，那个更好玩。
>
>
>

### 回音

* 之前，由于不满 HashiCorp 修改 Terraform 的许可证，社区创建了 [OpenTF](/article-16137-1.html) 分支。在 HashiCorp 大为不满，向许多支持的公司发送了“停止侵权”的通告后，为了避免商标侵权，OpenTF 改名为 OpenTofu —— 开源豆腐。他们有意选择了一个幽默的名字。


在 Linux 的 VirtualBox 中从 USB 驱动器启动

![](/data/attachment/album/202309/22/101826lcduo6etry9ep2rb.jpg)

>
> 你可以在 VirtualBox 中的虚拟机上使用立付 Linux USB。这样可以省去重新启动主机的麻烦。
>
>
>

你有一个 <ruby> 立付 <rt>  Live </rt></ruby> Linux USB 吗？在当前系统上测试它的常用方法是重新启动，并在系统重新启动时选择从立付 USB 启动。

但这很烦人，因为你需要停止计算机上的工作并重新启动它。

一种干扰较小的方法是使用虚拟机。

是的，你可以使用 VirtualBox 从虚拟机中的 USB 启动。这样，你不必为了尝试而在 VM 中安装发行版，而是改用立付会话。

在本教程中，我将展示在 Linux 系统使用 VirtualBox 从 USB 驱动器启动的步骤。这需要花费一些时间和精力，但可以让你免于重启系统。

### 在 Linux 的 VirtualBox 中从 USB 驱动器启动

由于这是针对高级用户的教程，因此我省略了你事先需要的几个步骤：

* 在 Linux 系统上 [安装 VirtualBox](https://itsfoss.com/install-virtualbox-ubuntu/)
* 创建立付 Linux USB，最好 [使用 Ventoy](https://itsfoss.com/use-ventoy/)

本指南分为三个部分：

* 创建虚拟机磁盘文件
* 在 VM 中使用 USB 启动
* 删除虚拟机磁盘（可选）

那么让我们从第一个开始。

#### 步骤 1：创建虚拟机磁盘文件（VMDK）

首先，你需要识别 USB 驱动器的磁盘名称，为此，你需要 [列出系统的驱动器](https://linuxhandbook.com/linux-list-disks/)。

为此，我将使用 lsblk 命令：

```
lsblk

```

![](/data/attachment/album/202309/22/101904kr5vh5wqwtahavrd.png)

>
> ? 确保使用不带任何数字的磁盘名称。就我而言，Ventoy 以 sdb1 命名，但我仍然只能使用 sdb。
>
>
>

从上图中，你可以看到，Ventoy 列出了 `sdb11`，但你必须使用不带任何数字的名称。这意味着我必须只使用 `sdb`，否则，它会抛出错误。

找到驱动器名称后，使用以下命令中的 `VBoxManage` 命令来创建：

```
sudo VBoxManage createmedium disk --filename=/path/to/rawdisk.vmdk --variant=RawDisk --format=VMDK --property RawDrive=/dev/sda

```

在上面的命令中，将 `/path/to/rawdisk.vmdk` 替换为要保存文件的路径 ，将 `/dev/sda` 替换为目标驱动器。

就我而言，我想在我的主目录中创建一个名为 `IF.vmdk` 的文件，并且我的目标驱动器是 `/dev/sdb`，然后，我将使用以下命令：

>
> ? 你需要提供绝对路径来创建 vmdk 文件！
>
>
>

```
sudo VBoxManage createmedium disk --filename=/home/sagar/IF.vmdk --variant=RawDisk --format=VMDK --property RawDrive=/dev/sdb

```

![](/data/attachment/album/202309/22/101904ar55zyyg2yiwwdrw.png)

最后，使用 `chmod` 命令更改权限：

```
sudo chmod 777 Filename.vmdk

```

![](/data/attachment/album/202309/22/101905anqp9tqdbsavqpbp.png)

#### 步骤 2：在 Linux 的 VirtualBox 中从 USB 启动

首先，从系统菜单中打开 VirtualBox，然后单击 “<ruby> 新建 <rt>  New </rt></ruby>” 按钮。

在那里，为你的虚拟机命名并选择操作系统类型及其版本：

![](/data/attachment/album/202309/22/101905b683bmvv8xm8b3z8.png)

现在，单击 “<ruby> 下一步 <rt>  Next </rt></ruby>” 按钮，它会要求你为虚拟机分配硬件资源：

![](/data/attachment/album/202309/22/101906czcobzoqbfvmi9cd.png)

完成硬件资源分配后，单击“下一步”按钮。

在这里，你将找到创建或添加虚拟磁盘的选项。现在，请执行 3 个简单步骤：

* 选择第二个选项 “<ruby> 使用现有虚拟硬盘文件 <rt>  Use an Existing Virtual Hard Disk File </rt></ruby>”。
* 点击“文件”图标。
* 点击“<ruby> 添加 <rt>  Add </rt></ruby>”按钮并选择你最近创建的以 `.vmdk` 结尾的文件。

![](/data/attachment/album/202309/22/101906iv3fjgvf33a8gq0h.png)

选择文件后，它将显示文件的名称，选择它并点击 “<ruby> 选择 <rt>  Choose </rt></ruby>” 选项：

![](/data/attachment/album/202309/22/101907xp94wku9c4y4mwp6.png)

它将向你显示已选择从中启动的文件。单击下一步，它将显示你所做的选择的摘要。

点击 “<ruby> 完成 <rt>  Finish </rt></ruby>” 按钮：

![](/data/attachment/album/202309/22/101907kw0k5obbp823yz88.png)

就是这样！ 虚拟机已创建。

要启动虚拟机，首先选择虚拟机并单击启动按钮：

![](/data/attachment/album/202309/22/101908f3vkon8o9d58755o.png)

由于我的 USB 有 Ventoy，你可以看到，此处列出了多个发行版：

![](/data/attachment/album/202309/22/101908y1ygen1sbf25aeuo.png)

很酷。是么？

#### 步骤 3：使用删除虚拟机及 vmdk 文件（可选）

当我在删除虚拟机后尝试删除 vmdk 文件时，当然，它被删除了，但每当我尝试创建具有相同名称的新文件时，它都会给我一个错误，说该文件已经存在！

因此，在这里，我将引导你了解如何删除虚拟机及 vmdk 文件。

首先，关闭虚拟机并将其删除。

![](/data/attachment/album/202309/22/101909e24905v53g1ztr0m.png)

现在，如果你尝试 [使用 rm 命令](https://linuxhandbook.com/remove-files-directories/) 并提升权限删除 vmdk 文件，你可以删除它（但这就是幻觉的开始）。

例如，在这里，我删除了 `IF.vmdk` 文件：

```
sudo rm IF.vmdk

```

![](/data/attachment/album/202309/22/101909p8udwzdvzd6w40j0.png)

现在，如果我尝试创建一个具有相同名称的新 vmdk 文件，则会出现错误，指出该文件已存在：

![](/data/attachment/album/202309/22/101909k3oz1y5j7b73a39b.png)

要删除 vmdk 文件，首先，你必须使用以下命令取消注册该文件：

```
sudo VBoxManage closemedium disk /path/to/MyDrive.vmdk

```

![](/data/attachment/album/202309/22/101910wqc9hs4afpe9j9tn.png)

完成后，你可以使用 `rm` 命令删除该文件，它将轻松删除：

```
sudo rm Filename.vmdk

```

然后，如果你尝试创建具有相同文件名的 vmdk 文件，你可以这样做：

![](/data/attachment/album/202309/22/101910hhkqu4tq25x5qfho.png)

这就行了！

### 更多虚拟机技巧

如果你正在寻找最快的 VM，可以使用 Qemu + KVM 的组合。我知道这听起来很复杂。

但为了更简单一些，我们制作了一份关于如何在 Ubuntu 上安装和使用 Qemu 的专门指南，包括启用共享文件夹、剪贴板和自动调整大小：

>
> **[如何在 Ubuntu 上安装和使用 Qemu](https://itsfoss.com/qemu-ubuntu/)**
>
>
>

我希望本指南对你有所帮助。

*（题图：MJ/f74a3b33-2bcf-445b-8868-1dfc420f5b9d）*

---

via: <https://itsfoss.com/virtualbox-boot-from-usb/>

作者：[Sagar Sharma](https://itsfoss.com/author/sagar/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


GNOME 45 发布，弃用“活动”按钮

Summary: GNOME 桌面的最新版本已经发布。

GNOME 桌面的最新版本已经发布。

![](/data/attachment/album/202309/22/160637a5eeghw50ej20hwh.jpg)

>
> GNOME 桌面的最新版本已经发布。
>
>
>

我们见证了 GNOME 的不断演化，每次重大更新都会带来新的功能及改进。

在上一个版本中，[GNOME 44](https://news.itsfoss.com/gnome-44-release/) 推出了许多酷炫的特性，如今，GNOME 45 也紧跟其后，推出许多有益的优化。

下面让我们一探究竟。

### GNOME 45：有何新变化？

尽管我们已经单独详述过 [GNOME 45 的亮点特性](/article-16150-1.html)，我还是简洁回顾一下这次发布的所有相关详情。

* 系统设置的调整
* 新的工作空间指示器
* 新的或者更新的核心应用程序的引入
* Nautilus 的用户界面优化

>
> **[GNOME 45 引入激动人心的更新](/article-16150-1.html)**
>
>
>

#### 新的工作空间指示器

![](/data/attachment/album/202309/22/160945taqzg7roj8zgqj8g.gif)

根据我们 [之前的报道](https://news.itsfoss.com/gnome-activities-indicator/)，GNOME 45 让 “<ruby> 活动 <rt>  Activities </rt></ruby>” 按钮走向了历史。

如今，我们已经有了一个药丸状的动态指示器，能明了当前处于活动状态的工作空间，以及工作空间的数量。

这是一个微小但整齐的设计改动！

#### 系统设置的调整

![](/data/attachment/album/202309/22/160945hcxb4xiii6xseg5e.png)

在 GNOME 45 中，设置应用下方出现了全新的 “<ruby> 隐私 <rt>  Privacy </rt></ruby>” 子菜单，现在各类选项展示得更有序。

“<ruby> 关于 <rt>  About </rt></ruby>” 子菜单也被优化，现已通过 “<ruby> 系统详细信息 <rt>  System Details </rt></ruby>” 菜单显示技术数据。除此之外，线上账户设置也在可用性上得到了提升。

#### 引入了新的核心应用

![Loupe 图片查看器](/data/attachment/album/202309/22/160945cvqrsrszvysixxy0.jpg)

GNOME 45 版本告别了 “<ruby> GNOME 之眼 <rt>  Eye of GNOME </rt></ruby>” 图片查看器，转而采用 “<ruby>   放大镜  <rt>  Loupe </rt></ruby>” 应用，并摒弃了 “<ruby> 茄子 <rt>  Cheese </rt></ruby>” 相机应用，全新引入了 “<ruby>   快照  <rt>  Snapshot </rt></ruby>” 应用。

**原有的核心应用也得到了更新。**

就 “<ruby> 地图 <rt>  Maps </rt></ruby>” 应用而言，出现了一些微小变动，如缩放按钮的调整以及侧边栏的重塑。

同样地， “<ruby> 天气 <rt>  Weather </rt></ruby>” 应用的默认窗口大小被扩大，以便为所有温度计部件提供空间。

别忘了，“<ruby> 计算器 <rt>  Calculator </rt></ruby>” 应用现已支持更多种类的货币，以及 “<ruby> 连接 <rt>  Connections </rt></ruby>” 应用 可以在 RDP 连接中复制 / 粘贴文本、图片和文件。

#### ? Nautilus 的用户界面优化

![](/data/attachment/album/202309/22/160946tr3vj0yrmjjjjs70.png)

Nautilus 文件管理器已 **做了一些轻微的界面优化**，新的左侧边栏汉堡菜单使得侧边栏看起来比以前更醒目。

#### ? 其他改动与优化

除了我们述及的重点，下面还有一些其他值得注意的变化；

* 文档扫描应用已迁移到 GTK4。
* 数个应用新增了视觉效果并改进了自适应表现。
* 在快速设置中新增了一个控制键盘背光的切换。
* 在 Shell 中新增了一个指示器，用于显示相机何时在活动状态。

如果你感兴趣，可参阅官方 [发布公告](https://release.gnome.org/45/) 了解更多详情。

### 如何开始使用 GNOME 45

你可期待 GNOME 45 将在 [Fedora 39](https://news.itsfoss.com/fedora-39-features/) 及 [Ubuntu 23.10](https://news.itsfoss.com/ubuntu-23-10/) 上首次亮相。

在那之前，你可以通过在 [GNOME OS](https://os.gnome.org/) 上使用 [Boxes](https://wiki.gnome.org/Apps/Boxes) 或在你的 Arch 发行版上手动安装（当它在仓库中可用时）来尝试 GNOME 45。

请注意，GNOME OS 的主要目的是用于测试。

>
> **[GNOME](https://www.gnome.org/getting-gnome/)**
>
>
>

? 对于这次发布，你有何看法？是否还有其他期待？

*（题图：MJ/f559d170-e20a-45a5-8d38-cd655ce7a955/）*

---

via: <https://news.itsfoss.com/gnome-45-release/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[ChatGPT](https://linux.cn/lctt/ChatGPT) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1132 OpenAI 宣布 DALL-E 3，让提示工程过时

Summary:
? OpenAI 宣布 DALL-E 3，让提示工程过时
? 谷歌用 “iPager” 广告嘲讽苹果
? 苹果和谷歌不完全披露的 libwebp 漏洞造成大麻烦
»
»

RCS好像对Android版本有要求，以安卓手机的碎片化程度，尤其是国内，可能都做不到全面铺开

![](/data/attachment/album/202309/22/183446f89qxl1xsgmgl0y9.jpg)

![](/data/attachment/album/202309/22/183518opn4nq64zadz66dd.jpg)

### OpenAI 宣布 DALL-E 3，让提示工程过时

OpenAI 发布了 DALL-E 3，其可以与 ChatGPT 完全集成在一起。从提供的样本来看，DALL-E 3 在图像合成方面的能力似乎比现有的任何其他模型都要强，能更有效地完善手部等小细节。它可以将 ChatGPT 作为头脑风暴伙伴对图像进行会话完善，在 “无需魔改或提示工程” 的情况下默认创建引人入胜的图像。也就是说，你无需像对 MidJourney 那样输入一些反直觉的提示词，而 ChatGPT 会很好的理解你意图，并生成符合意图的图像。

>
> **[消息来源：Ars Technica](https://arstechnica.com/information-technology/2023/09/openai-announces-dall-e-3-a-next-gen-ai-image-generator-based-on-chatgpt/)**
>
>
>

>
> 老王点评：想起了国内某过气的技术大佬曾经说 10 年后全世界有 50% 的工作会是提示工程。这话颇像当年他们嘲笑云计算就是新瓶装旧酒一样。
>
>
>

![](/data/attachment/album/202309/22/183528p8nvqvyqntvl8xhx.jpg)

### 谷歌用 “iPager” 广告嘲讽苹果

长期以来，谷歌一直试图公开向苹果施压，迫使其采用 RCS（富通信服务）消息协议，但苹果的库克回应是，消费者“应该给他们的妈妈买一部 iPhone”。谷歌最近发布了一则尖刻的广告，这则名为 “iPager” 的广告模仿了苹果的营销语言，展示了一个复古风格的传呼机（BP 机），表明苹果选择的信息平台已经落后于时代。广告称，iPager 使用 “过时的短信技术” 来 “与安卓手机发短信”，并列举了在与安卓手机通信时坚持使用短信技术的许多明显缺点。实际上，有 30 年历史的短信技术确实可以追溯到老式的传呼机。

>
> **[消息来源：Engadget](https://www.engadget.com/google-takes-a-snarky-shot-at-apple-over-rcs-in-its-latest-ad-181313519.html)**
>
>
>

>
> 老王点评：用传呼机收短信，这是个好主意~ ?
>
>
>

![](/data/attachment/album/202309/22/183550kuzytzidjq2yqiw5.jpg)

### 苹果和谷歌不完全披露的 libwebp 漏洞造成大麻烦

两周前，苹果公司报告称，威胁者正在积极利用 iOS 系统中的一个零点击漏洞来安装间谍软件。几天后，谷歌报告了其 Chrome 浏览器中的一个 WebP 堆缓存区溢出漏洞，并且该漏洞已经被利用。这两个漏洞的相似之处，让安全研究人员认为它们极有可能源自同一个漏洞，特别是 libwebp，它是应用程序、操作系统和其他代码库用于处理 WebP 图像的代码库。由于这两个漏洞是单独披露的，拥有不同的 CVE，并没有追溯到根源，很有可能数百万个使用了 libwebp 的应用程序都存在该漏洞。这包括各种 Linux 操作系统、各种浏览器、各种使用 Electron 框架的的应用。

>
> **[消息来源：Ars Technica](https://arstechnica.com/security/2023/09/incomplete-disclosures-by-apple-and-google-create-huge-blindspot-for-0-day-hunters/)**
>
>
>

>
> 老王点评：难道报告漏洞也要各扫门前雪了么？
>
>
>

### 回音

* [米高梅酒店](/article-16194-1.html) 的计算机系统在 10 天后 [恢复](https://apnews.com/article/vegas-mgm-resorts-caesars-cyberattack-shutdown-a01b9a2606e58e702b8e872e979040cc)。据称，该公司支付了要求的 3000 万美元赎金的一半，以换取数据不被泄露。


Tagger 的新更新可让你更好地组织和标记音乐

Summary: 使用 Tagger 来标记你的音乐？ 现在，它增加了新功能和修复。

使用 Tagger 来标记你的音乐？ 现在，它增加了新功能和修复。

![](/data/attachment/album/202309/22/224653c080ssjgi8ba808c.jpg)

>
> 使用 Tagger 来标记你的音乐？ 现在，它增加了新功能和修复。
>
>
>

Tagger 已发布新版本，其中包含大量有用的改进！

对于那些不知道的人来说，Tagger 是**一款专注于流行音乐文件类型的开源 [标签编辑器应用](https://en.wikipedia.org/wiki/Tag_editor)**，支持 MP3、OGG、FLAC、WAV 等音乐文件。

它可用于**向音乐文件添加重要的元数据**，例如专辑封面、艺术家/发行商信息、发行年份，甚至自定义属性。

让我们看看这个新版本的 Tagger 能提供什么。

### ? Tagger V2023.9.1：有什么新变化？

![](/data/attachment/album/202309/22/224657o2wkosx9daaojgxh.png)

Tagger 采用 C# 语言编写，**它出现自 2021 年底**，并且一直在定期进行改进。

在 **Tagger V2023.9.1** 版本中添加了多项改进。

首先，它包括了**更新的翻译**，要感谢 [Weblate](https://weblate.org/en/) 上的用户。

然后还有**新添加的功能**，可以在 Tagger 中**打开、管理和创建播放列表**。这是为了更容易地同时处理许多音乐文件，从而“<ruby> 音乐文件夹 <rt>  Music Folder </rt></ruby>”现在被称为“<ruby> 音乐库 <rt>  Music Library </rt></ruby>”。

接下来，**同步歌词时间戳现在以 “mm:ss.xx” 格式显示**，遵循 [LRC](https://en.wikipedia.org/wiki/LRC_(file_format)) 规范，并且可以指定 “**hh:mm:ss**” 和 “**mm:ss.xx**” 格式，允许 Tagger 对其进行转换。

此外，Tagger 现在在排序时**在音乐文件列表中显示标题**，为了获得更有条理的文件视图，**主窗口大小在应用重新启动时不会丢失**，并且 **LRC 文件现在可以正确导入**。

有关更多技术细节，你可以参考其 [发行说明](https://github.com/NickvisionApps/Tagger/releases/tag/2023.9.1)。

### ? 下载Tagger V2023.9.1

你可以通过选择可用的软件包之一来获取最新版本的 Tagger，如下所示：

* [Snap](https://snapcraft.io/tagger)
* [Flatpak](https://flathub.org/apps/org.nickvision.tagger)
* [AUR 包](https://aur.archlinux.org/packages/tagger)

对于 Ubuntu，你还可以运行以下命令来安装它：

```
sudo snap install tagger

```

>
> ? 当我们谈论添加元数据的应用时，还有 [元数据清理器](https://itsfoss.com/metadata-cleaner/)。它允许你清除最流行的文件类型中的元数据，这与 Tagger 完全相反。
>
>
>

? 你以前用过 Tagger 吗？ 你对此的体验如何？ 在评论区分享你的观点。

*（题图：MJ/02d910b8-80d1-4802-8125-11ebc45287bf）*

---

via: <https://news.itsfoss.com/tagger-2023-9-release/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


Linux 上的最佳白板应用程序

有没有能完全替代希沃白板的？

LibreOffice

![](/data/attachment/album/202309/22/234542niviqp0tqutnvi56.jpg)

>
> 我们将介绍几款可在 Linux 系统中使用的白板应用程序。我相信，这些信息对你将大有帮助。请继续阅读！
>
>
>

一般而言，数字白板是一种大型互动显示面板的工具。比如：平板、大屏手机、触控笔记本和表面显示设备等，就是一些常见的白板设备类型。

假设教师使用了白板，你就可以使用触控笔、手写笔、手指甚至鼠标在设备屏幕上进行绘画、书写或操作元素。这意味着，你可以在白板上进行拖动、点击、删除和绘画，就如同用笔在纸上一样。

但是，要做到这一切，就需要一款软件来支持这些功能，即实现触控和显示之间的精细协调。

现在的市面上，有很多商业应用都能完成这项工作。然而，在这篇文章中，我们将会重点介绍一些自由且开源的、并且可在 Linux 系统中运行的白板应用程序。

### Linux 系统白板应用程序佳选

#### 1、Xournal++

在我们的推荐名单上，第一个就是 [Xournal++](https://xournalpp.github.io/)。我认为，这是此列表中最好的应用程序。它十分稳定，而且已经存在了一段时间。

Xournal++ 允许你进行书写、绘画，以及其他常见的在纸上进行的各种事情。它支持手写、自定义荧光笔、橡皮擦等工具。此外，它还有其他诸多功能，例如：支持图层，支持添加外部图像，支持添加音频，具有多页特性等。

该应用程序兼容几乎所有的压敏输入设备，例如 Wacom、Huion 和 XP-Pen。我曾在触摸板笔记本上进行过测试，经过少量设置修改后，它就可以正常工作了。因此，你可以开始使用任何你手头上的触控设备。

Xournal++ 是使用 C++ 和 GTK3 进行编写的。

![Linux 下的 Xournal++ 白板应用程序](/data/attachment/album/202309/22/234707oi47v8lbvbgbwv9v.jpg)

对于 Linux 系统，你可以按下述步骤进行安装。此程序是完全免费的，且适用于 Linux、macOS 和 Windows 系统。如果你想在移动设备上尝试，也提供了 BETA 版本。

安装步骤：

该应用程序可以通过 AppImage、Snap、Flatpak 和 deb 包进行安装。同时，也可以通过 PPA 的方式，安装至基于 Ubuntu/Debian 的系统。

特别的是，还为 Fedora、SUSE 和 Arch 提供了专用的安装包。你只需要点击下方的链接，就可以按你所需的格式，下载相应的执行程序。

>
> **[下载 Xournal++](https://xournalpp.github.io/installation/linux/)**
>
>
>

更多信息：

* [首页](https://xournalpp.github.io/)
* [文档](https://xournalpp.github.io/guide/overview/)
* [源代码](https://github.com/xournalpp/xournalpp/)

#### 2、OpenBoard

我们接下来想要重点介绍的是 [OpenBoard](https://openboard.ch/)。这是一个简洁易用的白板绘画应用，它不会通过过多的选项干扰你的使用体验。

该软件非常适合初学者以及在线课程的初级学生来使用进行笔记。

OpenBoard 内置了丰富的功能，包括颜色、画刷、文本、简单的绘图形状，页面支持等等。此应用基于 Qt 技术构建。

![OpenBoard](/data/attachment/album/202309/22/234717u1722712x4p49c1j.jpg)

安装步骤：

此应用仅为 Ubuntu 提供独立的 deb 包。你可以通过以下链接下载。

>
> **[下载 OpenBoard](https://openboard.ch/download.en.html)**
>
>
>

更多信息：

* [主页](https://openboard.ch/)
* [文档](https://openboard.ch/support.html)
* [源代码](https://github.com/OpenBoard-org/OpenBoard)

#### 3、Scrivano

Scrivano 是一款新推出的基于 Qt 技术的白板应用。其设计理念强调易用性，能在记笔记和其他绘画活动中提供高效的功能表现。

它提供了一些独特的功能，如吸附到网格、创建自定义贴纸、填充笔触、激光选项等等。

此外，你还可以在此工具中导入 PDF 文件，并利用各种功能对其进行批注。

以下是一些值得关注的功能。

你可以在我们关于 [该应用官方评述](https://www.debugpoint.com/scrivano/) 中了解更多关于 Scrivano 的信息。

![Scrivano 中的贴纸](/data/attachment/album/202309/22/234729eaxgwigogifhhh78.jpg)

你可以 [对你的系统进行 Flatpak 配置以使用 Flathub](https://www.debugpoint.com/how-to-install-flatpak-apps-ubuntu-linux/)，然后点击下面的按钮，通过 [Flathub](https://flathub.org/apps/details/com.github.scrivanolabs.scrivano) 进行安装。

>
> **[下载并安装 Scrivano](https://dl.flathub.org/repo/appstream/com.github.scrivanolabs.scrivano.flatpakref)**
>
>
>

更多信息：

* [主页](https://scrivanolabs.github.io/)
* [Scrivano 评价](https://www.debugpoint.com/scrivano/)

#### 4、Notelab

[NoteLab](http://java-notelab.sourceforge.net/) 是一款具有十年历史的老牌白板应用。它是一个自由开源的应用，内含丰富的功能集，因此你可以理解这款应用的稳定性和广受欢迎的程度。

以下是其中的部分特性：

* 此应用支持所有常用的图片格式作为导出选项，例如 SVG、PNG、JPG、BMP 等。
* 提供了可配置的笔和纸的自定义选项
* 内建的内存管理器，用于指定 NoteLab 所使用的内存量。
* 不同格式的纸张可供选择，如宽格式、大学格式和图形纸。
* 含所有标准绘图工具。
* 对任何笔记部分都可以进行调整大小、移动、删除、改变颜色等多种操作。

![NoteLab](/data/attachment/album/202309/22/234740a6e6ce55e483w5dk.jpg)

然而，这是一个由 Java 编写并以 .jar 文件形式发布的应用，所以你需要 Java 运行环境来运行它。你可以参考我们的指南在 Linux 系统中安装 Java 或 JRE。

* [在基于 Ubuntu 的系统中安装 Java/JRE 的方法](https://www.debugpoint.com/2016/05/how-to-install-java-jre-jdk-on-ubuntu-linux-mint/)
* [在 Arch Linux 中安装 Java/JRE 的方法](https://www.debugpoint.com/2021/02/install-java-arch/)

如何安装：

NoteLab 提供了独立的可执行 .jar 文件，可以通过下方链接从 SourceForge 下载。请记住，要运行此应用，你需要 JRE。

>
> **[下载 NoteLab](https://sourceforge.net/projects/java-notelab/files/NoteLab/)**
>
>
>

更多信息：

* [主页](http://java-notelab.sourceforge.net/)
* [文档](http://java-notelab.sourceforge.net/features.html)

#### 5、Rnote

我们此次要介绍的第五款应用叫做 [Rnote](https://github.com/flxzt/rnote)。Rnote 是一款在触屏设备上进行手写笔记的绝佳应用程序。这款应用基于矢量图像技术，不仅便于进行绘图和注释图片，还方便对 PDF 文件进行标注。它支持本地的 .rnote 文件格式，并提供了 png、jpeg、SVG 和 PDF 的导入/导出选项。

Rnote 最酷的一项特性是它支持 Xournal++ 的文件格式（即本列表的首款应用程序），这使它成为必备的工具。

Rnote 使用 GTK4 和 Rust 进行开发，非常适合在 GNOME 桌面以及各类 Linux 系统上运行。

需要注意的是，该应用程序目前仍在开发中。

![基于 GTK4 和 Rust 的 Linux 白板应用 Rnote](/data/attachment/album/202309/22/234752ui5ol5igvo0f4oor.jpg)

如何安装：

此应用以 Flatpak 包的形式提供。你可以使用 [此指南](https://flatpak.org/setup/) 为你的 Linux 系统安装 Flatpak，然后点击下方的按钮进行安装。

>
> **[安装 Rnote](https://dl.flathub.org/repo/appstream/com.github.flxzt.rnote.flatpakref)**
>
>
>

更多信息：

* [主页和源代码](https://github.com/flxzt/rnote)

#### 6、Lorien

[Lorien](https://github.com/mbrlabs/Lorien) 是一个能让你利用多种工具创造个性化笔记的理想数字笔记本软件。Lorien 是一个基于 Godot 游戏引擎的跨平台、自由开源的“无限画布绘图/笔记”应用。这款应用十分适合于快速记取头脑风暴会议中的笔记。

其工具箱相当标准，拥有自由手绘刷、橡皮擦、直线工具和选择工具等。你可以移动或删除你的笔划部分——这些在运行时会被视为点的集合进行渲染。

![Lorien 白板应用程序 for Linux](/data/attachment/album/202309/22/234801ecc0jze3zz41nknf.jpg)

如何安装：

使用 Lorien 不需要安装。你可以从下面的链接下载一个自我包含的可执行文件（下载 tar 文件）。下载后，解压文件并双击即可运行。

>
> **[下载 Lorien](https://github.com/mbrlabs/Lorien/releases)**
>
>
>

更多信息：

* [主页和源代码](https://github.com/mbrlabs/Lorien)

#### 7、Rainbow Board

Rainbow Board 是一款基于 Electron 和 React 的自由开源白板应用。通常，由于性能和臃肿的问题，人们并不喜欢 Electron 应用。但考虑到我们正在列出这个分类的应用，我认为值得一提。

它提供了一个标准的画布，支持触控和手写输入。工具箱包括刷子大小、颜色、填充颜色、字体以及撤销和重做操作。你可以将你的绘制结果导出为 PNG 或 SVG 文件。

![Rainbow Board 白板应用 for Linux](/data/attachment/album/202309/22/234808kn3dmv23mrrvzfge.jpg)

如何安装：

此应用可以作为 Snap、Flatpak 或独立的 deb 安装程序下载。你可以从下面的链接中得到它们。

>
> **[下载 Rainbow Board](https://www.electronjs.org/apps/rainbow-board)**
>
>
>

更多信息：

* [主页](https://harshkhandeparkar.github.io/rainbow-board/)
* [源代码](https://github.com/HarshKhandeparkar/rainbow-board)

### 特别推荐

在这里，我想额外提到的两款绘图应用分别是 Vectr 和 Excalidraw。这两款应用都是基于网络的白板绘图应用。它们被单独归类是因为它们并非传统意义上的桌面应用。

因此，如果你不愿安装其他应用，或者你使用的学校或工作系统中无法进行安装，你可以选择在浏览器中使用这些网络应用。下面是它们的网址。

>
> **[Vectr](https://vectr.com/)**
>
>
>

>
> **[Ecxalidraw](https://excalidraw.com/)**
>
>
>

### 结束语

以上是一些适用于 Linux 及其他操作系统的现代白板 [绘图](https://www.debugpoint.com/tag/digital-drawing) 应用。由于大流行病和居家工作环境的影响，你们许多人可能在使用笔和纸进行在线课程或会议的笔记记录。我相信这些软件会在你的学习和工作中提供帮助。

试一试这些软件，你肯定能找到最适合你的。对此清单如有任何评论或反馈，请在下方的留言区域告诉我。

干杯。

*（题图：MJ/373801b1-50f2-4078-8961-fcea78623f2f）*

---

via: <https://www.debugpoint.com/top-whiteboard-applications-linux/>

作者：[Arindam](https://www.debugpoint.com/author/admin1/) 选题：[lkxed](https://github.com/lkxed) 译者：[ChatGPT](https://linux.cn/lctt/ChatGPT) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1133 Valve 对开源和 Linux 做出了贡献

Summary:
? Valve 对开源和 Linux 做出了贡献
? 中国人工智能大模型数量约占全球数量 40%
? DuckDuckGo CEO 说摆脱谷歌“需要很多步”
»
»

DuckDuckGo也是一个不存在的网站。。。

总是跟风..

![](/data/attachment/album/202309/23/183813inraslzlava66vst.jpg)

![](/data/attachment/album/202309/23/183834evwq4k5j9mv8whw0.jpg)

### Valve 对开源和 Linux 做出了贡献

在最近举行的欧洲开源峰会上，介绍了游戏平台公司 Valve 对开源和 Linux 的贡献。Valve 的掌机 Steam Deck 运行的操作系统 SteamOS 是基于 Arch Linux 的，其桌面采用了 KDE Plasma，因此，Valve 资助了相关程序的改进。Valve 的 Steam Play/Proton 借助了 Wine 项目，也对它做出了贡献，尤其是对 Linux 游戏和爱好者有重大价值。此外，Valve 在 Linux 图形驱动上的贡献让整个 Linux 桌面生态系统都受益。

>
> **[消息来源：Phoronix](https://www.phoronix.com/news/Valve-Upstream-Everything-OSS)**
>
>
>

>
> 老王点评：虽然不乏吹嘘成分，但是只有这种切实使用并改善 Linux 的商业产品和服务，并回馈给社区的企业，对 Linux 和开源的贡献才是实实在在的。
>
>
>

![](/data/attachment/album/202309/23/183919hw1eap1lllcdeq2m.jpg)

### 中国人工智能大模型数量约占全球数量 40%

中国对人工智能的狂热引发了初创企业和科技巨头几乎每天都有大量的产品发布。据里昂证券称，中国目前至少有 130 种大型语言模型，占全球总数的 40%，仅次于美国的 50%。各公司还宣布了数十种与其核心模型相关联的 “特定行业语言模型”。然而，投资者和分析师表示，大多数公司尚未找到可行的商业模式，彼此过于相似，而且目前正面临成本激增的问题。

>
> **[消息来源：路透社](https://www.reuters.com/technology/chinas-ai-war-hundred-models-heads-shakeout-2023-09-21/)**
>
>
>

>
> 老王点评：最后能剩下几家，或者说最后能有几个真正有所开创呢？
>
>
>

![](/data/attachment/album/202309/23/183941u667agdggtr5ap7g.jpg)

### DuckDuckGo CEO 说摆脱谷歌“需要很多步”

DuckDuckGo 是一家以隐私为中心的搜索引擎，成立于 2008 年，其创始人在对谷歌的反垄断审查中表示，由于谷歌是电脑上的默认选项，消费者从谷歌转向其他搜索引擎“比想象中要难得多，……需要很多步”，因此 DuckDuckGo 的市场份额一直很小。DuckDuckGo 目前在美国搜索市场的份额约为 2.5%，每天的全球搜索量约为 1 亿次。相比之下，谷歌每天的搜索量为几十亿次。

>
> **[消息来源：彭博社](https://www.bloomberg.com/news/articles/2023-09-21/duckduckgo-ceo-says-too-many-steps-to-switch-from-google)**
>
>
>

>
> 老王点评：其实，只需要一步，就是这一步太难了。
>
>
>

### 回音

* Unity 公布了修改后的 [收费方案](https://blog.unity.com/news/open-letter-on-runtime-fee)，事实上放弃了按安装量收费的模式。


在 Ubuntu 上安装 VSCodium

VSCodium跟VS Code还有一点不同，它不能从MS扩展市场安装扩展，只能安装OpenVSI的扩展，或者安装打包好的vsix扩展。

![](/data/attachment/album/202309/23/210544rez2940i0z590669.jpg)

>
> 不满意 VS Code 中的遥测功能？安装 VSCodium，它是 VS Code 的 100% 开源克隆。
>
>
>

[VSCodium](https://itsfoss.com/vscodium/) 是微软 VS Code 的“完全开源版本”。

它基本上是 [VS Code](https://code.visualstudio.com/) 的克隆，并去除了所有遥测痕迹。[遥测是用于收集有关应用使用情况的数据](https://code.visualstudio.com/docs/getstarted/telemetry)。许多开发人员使用它来深入了解改进他们的应用。

从外观和功能来看，这两个编辑器是相同的。

![VSCodium 与 VS Code 相同](/data/attachment/album/202309/23/210610yaraknw5kipz3d5e.png)

在 Ubuntu 上安装 VSCodium 有三种方法：

1. 从发布页面下载 deb 文件进行安装。缺点是你无法轻松更新它，因为你必须再次下载新的 deb 文件。
2. 将第三方开发者仓库添加到你的系统中（[VSCodium](https://vscodium.com/) 推荐的方式）。这样，你还可以获得 VSCodium 新版本的定期更新。
3. 使用 snap 版本。如果你不厌恶 Snap 软件包，这也许是最简单的方法。

我不会讨论第一种方法，因为它只是从 [发布页面](https://github.com/VSCodium/vscodium/releases) 下载并 [安装 deb 文件](https://itsfoss.com/install-deb-files-ubuntu/)。

我们来看看另外两种方法。

### 方法 1：通过添加外部仓库来安装 VSCodium

VSCodium 官方文档引用了 [Pavlo Rudy 的 GitLab 仓库](https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo)，它为你提供了 VSCodium 的持续更新版本。

>
> ? 虽然我在这里使用 Ubuntu，但这些步骤应该适用于 Debian 和其他基于 Debian 和 Ubuntu 的发行版。
>
>
>

以下是步骤。

[在 Ubuntu 中打开终端](https://itsfoss.com/open-terminal-ubuntu/) 并使用以下命令获取开发者的 GPG 签名密钥并将其添加到你的系统中。这样，你的 Ubuntu 系统将信任该开发人员签名的软件包。

```
sudo wget https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg -O /usr/share/keyrings/vscodium-archive-keyring.asc

```

![Adding the GPG signature key for VSCodium repository](/data/attachment/album/202309/23/210610soifdjqd3q3m3pz3.png)

下一步是将仓库添加到 [你系统的 sources.list 文件](https://itsfoss.com/sources-list-ubuntu/)。这样，你的 Ubuntu 系统就会知道应该从哪里获取包。

```
echo 'deb [signed-by=/usr/share/keyrings/vscodium-archive-keyring.asc ] https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs vscodium main'| sudo tee /etc/apt/sources.list.d/vscodium.list

```

![Adding the VSCodium repo to sources.list](/data/attachment/album/202309/23/210611ojj3jjq67rfbfsqq.png)

正如你所看到的，该条目中的仓库是由你在其上方添加的密钥签名的。

更新本地包缓存，以便你的系统能够识别新添加的仓库中的包。

```
sudo apt update

```

现在你已准备好在 Ubuntu 上安装 VSCodium：

```
sudo apt install codium

```

是的，该软件包名为 `codium`，而不是 `vscodium`。

![](/data/attachment/album/202309/23/210611mj4jgpq1ffb7b6qj.png)

很好！ 现在你可以在菜单中查找 “VSCodium” 并从那里启动应用：

![](/data/attachment/album/202309/23/210611q6pho6pbmhv1pbvp.png)

现在你可以在 VSCodium 中享受编码的乐趣。

#### 更新 VSCodium

好处是你已将仓库添加到系统中。当新的 VSCodium 发布时，仓库维护者会将新版本推送到仓库，你应该在系统更新程序中看到新版本。

换句话说，[保持你的 Ubuntu 系统更新](https://itsfoss.com/update-ubuntu/)，你就会拥有更新版本的 VSCodium。

#### 删除 VSCodium

如果你出于某种原因不想再使用它，可以使用以下命令将其删除：

```
sudo apt remove codium

```

你可以将仓库和签名添加到你的系统中。

>
> ? 如果你对这些东西很在意，你也可以将它们从系统中删除。使用 sudo [在 Linux 终端中删除文件](https://itsfoss.com/delete-files-folders-linux/) 时要小心一些。
>
>
>

```
sudo rm /usr/share/keyrings/vscodium-archive-keyring.asc

```

接下来，你还可以从 `sources.list` 中删除仓库：

```
sudo rm /etc/apt/sources.list.d/vscodium.list

```

你的主目录中应该有一些与应用相关的本地文件，你可能还想删除它们：

```
rm -r ~/.config/VSCodium

```

### 方法2：使用 Snap 安装 VSCodium

>
> ? Snap 方法适用于任何 Linux 发行版，而不仅仅是 Ubuntu，只要 [你在系统上启用了 Snap 支持](https://itsfoss.com/install-snap-linux/)。
>
>
>

Snap 安装方法比较简单，步骤也较少。

打开终端并使用以下命令安装 VSCodium Snap 包：

```
sudo snap install codium --classic

```

等待几秒钟，它会下载 Snap 软件包，然后进行安装。你将在屏幕上看到进度。

![](/data/attachment/album/202309/23/210612ht773dkqd6bxz36d.png)

**你如何 [更新 Snap 版本的 VSCodium](https://itsfoss.com/snap-update/)**？Snap 应用每天自动更新多次。但是，如果应用正在运行，那么不会更新。

因此，你也可以关闭任何正在运行的 VSCodium 实例并运行此命令来强制更新（如果有任何新版本）：

```
sudo snap refresh codium

```

如果你不喜欢它，可以使用以下命令轻松删除它：

```
sudo snap remove codium

```

### VS Code VS. VSCodium

主要区别在于，VSCodium 从 VS Code 中移除了遥测部分。除此之外，它就是这个微软项目的克隆版，在外观和功能上与著名的 VS Code 完全相同。

对于某些人来说，遥测可能是一个障碍，因此这个项目在开源社区中颇受欢迎。

下面是一篇关于 [VS Code 遥测问题](https://www.roboleary.net/tools/2022/04/20/vscode-telemetry.html)的好文章。

>
> **[VS Code - 遥测技术是怎么回事？](https://www.roboleary.net/tools/2022/04/20/vscode-telemetry.html)**
>
>
>

如果你能接受遥测部分，你可以 [在 Ubuntu 上轻松安装 VS Code](https://itsfoss.com/install-visual-studio-code-ubuntu/)。这确实可以是你的选择。

希望本教程对你在 Ubuntu 和其他基于 Debian 的发行版上安装 VSCodium 有所帮助。请在评论区留下你的反馈意见。

*（题图：MJ/352e50f1-3ae2-4fe2-9a32-b75d1b5f0c73）*

---

via: <https://itsfoss.com/install-vscodium-ubuntu/>

作者：[Abhishek Prakash](https://itsfoss.com/author/abhishek/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


如何在 Linux 下使用 WebP 图像

![](/data/attachment/album/202309/23/221007y1kza44qxd68fq6t.jpg)

本文将详细介绍如何在 Ubuntu 和其他 Linux 发行版中转换和查看 WebP 图像，主题内容涵盖了你所需知道的全部信息。

### WebP 图像格式的定义

2010 年 9 月，谷歌提出了 WebP 图像格式，其愿景是完全替代 JPEG、PNG 和 GIF 文件格式。就如你所见，WebP 是一个全能型的格式，继承了先前压缩算法的所有特性，支持有损和无损的动画以及透明度。

除此以外，WebP 基于块预测技术，它是互联网上推荐使用的图像格式。由于其文件大小明显更小、图象质量更好，WebP 已经成为了为网站提供图像的现代化标准。

### 现状简述

现在，几乎所有的主流 Web 浏览器都开始支持 WebP，也就是说你可以在包括 Chromium、Chrome、Firefox、Brave、Vivaldi、Safari 和 Edge 在内的热门浏览器中查看这种格式的图像。

然而，要从现有的 JPG 和 PNG 文件创建 WebP 图像，你需要安装谷歌开发的 [WebP](https://developers.google.com/speed/webp) 库。另外，Linux 发行版的文件管理器暂时还不能直接显示该格式的图像。

为了与 WebP 实现无缝集成和提供良好的用户体验，各个组件必须协同工作。操作系统需要的是 WebP 的核心库。此外，文件管理器和图像查看器则需要能识别 `*.webp` 文件类型并进行加载。

这些为用户提供了一致的体验。由于 WebP 是新的标准，正在广泛施行和应用，你可能需要在 Linux 下执行一些额外的步骤以便运用这种技术。

另一方面，Windows 10 和 11 现在已经默认支持 WebP，包括其新的图像查看器功能。

因此，本篇文章将探讨如何在 Linux 系统下浏览、创建以及转换 WebP 图像的问题。

### 如何查看 WebP 图像

#### 针对 Ubuntu、Linux Mint 及相关发行版

要查看图像，首先需要一个加载器。文件管理器或图像查看器会使用这个加载器库来实现 WebP 图像的显示。然而，在 Ubuntu Linux 中，默认情况下并未提供 WebP 图像加载器。因此，你需要通过下列指令安装 `webp-pixbuf-loader` 库，此库能帮助 Ubuntu 中的 GTK 应用程序显示 WebP 图像。

```
sudo add-apt-repository ppa:helkaluin/webp-pixbuf-loadersudo apt updatesudo apt install webp-pixbuf-loader

```

如果你有兴趣了解 GDK 库如何在显示服务器（例如 [X.Org](http://X.Org)）和 GTK 组件间进行协作，可以参考 [这个页面](https://docs.gtk.org/gdk-pixbuf/)。

#### openSUSE

Leap 和 Tumbleweed 的软件包在 [这里](https://software.opensuse.org/package/webp-pixbuf-loader) 提供。访问页面并点击 “<ruby> 专家下载 <rt>  Expert Download </rt></ruby>” 进行安装即可。

#### Arch Linux

在 Arch Linux 中，这个软件包在 [社区仓库](https://archlinux.org/packages/community/x86_64/webp-pixbuf-loader/) 里有提供。因此，你可以通过以下的命令方便地进行安装：

```
sudo pacman -S webp-pixbuf-loader

```

#### Fedora Linux 以及 RHEL

对于 Fedora 以及其他相关的发行版，可以使用如下的指令进行安装：

```
sudo dnf install webp-pixbuf-loader

```

安装完成以后，你可以选择**重新启动你的计算机**。

现在，我们来到了最有趣的部分。只要导航到任何包含 WebP 图像的目录，通过缩略图或者默认的图像查看器，你应该就能看到这些图像了。

以下是一个示例，展示了在 Ubuntu 22.04 LTS 中带有 WebP 图像的 Nautilus 文件管理器在之前和之后的界面。

![GNOME Files (Nautilus) with WebP file - before](/data/attachment/album/202309/23/221114af9s4he02646wv0s.png)

![GNOME Files (Nautilus) with WebP file - after](/data/attachment/album/202309/23/221114ygzy1v1hdgsvs0sq.png)

### 在文件管理器/图像查看器中查看 WebP 图像

#### GNOME & Nautilus

对于 GNOME 桌面环境，Nautilus 文件管理器可以配合我在之前章节针对 Ubuntu/Fedora 等系统所解释的步骤正常工作。

#### Thunar 桌面（基于 Xfce 的发行版）下的 WebP 图像查看

尽管 Thunar 在 Xfce 桌面环境下默认就可展示缩略图，但默认的图像查看器 Ristretto 不能打开 WebP 格式的文件。因此，你首先需要安装我在先前章节中提及的一些软件包（例如针对 Ubuntu/Fedora 或 Arch 的包）并重启。然后，你可以通过改变默认的 .webp 文件类型关联，使用 Ristretto 查看器打开这些图像。

![Thunar and Ristretto Image Viewer shows webp image](/data/attachment/album/202309/23/221311nw2w0n7ne75wccn8.jpg)

#### KDE Plasma - Dolphin 文件管理器及 Gwenview 图像查看器

KDE 默认的图像查看器 Gwenview 原生支持 WebP 格式，因此，你无需额外的安装步骤就可以查看 WebP 图像。另外，Dolphin 文件管理器也可以很好地展示 WebP 格式的缩略图。

![Dolphin and Gwenview displaying a sample WebP image on KDE Plasma](/data/attachment/album/202309/23/221319vu1uui5kzuku5azi.jpg)

#### PCManFMQt（基于 LXQt 的发行版）下的 WebP 图像查看

如果你使用的是 Lubuntu，那你应该可以使用 LXImage 查看器打开 WebP 图像，因为这款查看器默认就支持 WebP。同样，PCManFMQt 文件管理器也能默认展示 WebP 图像的缩略图。

![PCManFM-Qt and LXImage](/data/attachment/album/202309/23/221327gwji408w9g90zlww.jpg)

#### Nemo 文件管理器

从 [Linux Mint](https://www.debugpoint.com/linux-mint/) 的 [Mint 21 “Vanessa”](https://debugpointnews.com/linux-mint-21-systemd-oom/) 版本开始，Nemo 文件管理器也将支持 WebP。你也可以通过上述的 PPA 方案在 Linux Mint 中查看 WebP 图像，直到新的 Mint 正式版本发布。

### 使用其它应用程序查看 WebP 图像（推荐方式）

首先，著名的光栅图形编辑器 **GIMP** 在 2.10 版本及以后的版本中，已经支持打开和保存 WebP 格式的图像（目前在所有的 Linux 发行版中都已经可用）。

其次，除了你的桌面环境自带的图像查看器外，还有一些其他支持 WebP 图像格式的查看器，如：

* [Qview](https://interversehq.com/qview/download/) — 一款极简的图像查看器
* [gThumb](https://flathub.org/apps/details/org.gnome.gThumb) — 一款基于 GTK 的图像查看器，同时也提供 [Flatpak 版本](https://flathub.org/apps/details/org.gnome.gThumb)

最后，[LibreOffice 7.4](https://www.debugpoint.com/libreoffice-7-4/) 为其所有的组件（比如 Writer、Calc、Draw 和 Impress）带来 [对 WebP 格式的原生支持](https://cgit.freedesktop.org/libreoffice/core/commit/?id=60eaa424c5e213f31227008e1ed66a646491a360)，支持这类图像的导入和导出。

### 如何将 WebP 图像转换为 JPG 或 PNG 格式

现在，你已经知道了如何查看 .webp 格式的文件，再来学习如何转换这类文件应该会很有用。

首先，使用以下命令为 Ubuntu 或 Fedora Linux 系统，包括其他相关的发行版安装 webp 包。如果你需要一个不需要安装就能在所有发行版和操作系统上执行的预编译版本，可以访问 [这个页面](https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html) 并下载最新的 zip 文件。

对于 Ubuntu 和相关的发行版：

```
sudo apt install webp

```

对于 Fedora 和相关的发行版：

```
sudo dnf install libwebp

```

**安装完成后**，使用以下命令可以将 WebP 格式的图像转换为 JPG 或 PNG 格式。记得根据你的实际情况，修改文件名和路径。

```
dwebp image1.webp -o image1.png

```

### 把 JPEG 或 PNG 图像转换为 WebP 格式

如果需要把一张 JPEG 或 PNG 格式的图像转化为 WebP 格式，你可以使用 `cwebp``（WebP 编码器）命令如下：

```
cwebp -q <压缩因数> <输入图像> -o <输出图像>

```

例如，你可以使用下面的示例命令，它将 `image1.png` 转换为使用 80 的压缩因子的 `image1.webp`：

```
cwebp -q 80 image1.png -o image1.webp

```

### 把 GIF 图像转换为 WebP 图像

一个在 WebP 格式中常被忽视的特点是它支持动画。因此，可以轻松将 WebP 格式用来保存具有动画效果的 GIF 文件。使用下面的命令就能把一个已有的 GIF 文件转换为 WebP 文件。

```
gif2webp input_file.gif -o output_file.webp

```

你可以访问 [这个页面](https://developers.google.com/speed/webp/download) 以获取更多关于上述工具和其他选项的信息。

### 结语

虽然 WebP 格式自首次发布以来已经有十年的时间了，Linux 桌面环境适应并支持 WebP 图像格式却并没有那么快。我相信以后 WebP 格式的支持应该会变成基本的，你甚至可能不需要进行额外的调整就能查看或保存 WebP 文件了。

我希望这篇文章可以帮你了解并掌握如何在工作流程中更好地使用 WebP 格式。

那么，你现在是怎么处理 WebP 格式图像的呢？欢迎在下方评论区分享你的经验。

*（题图：MJ/2541dab1-f071-4836-a34e-81c085c4d1ff）*

---

via: <https://www.debugpoint.com/view-webp-ubuntu-linux/>

作者：[Arindam](https://www.debugpoint.com/author/admin1/) 选题：[lkxed](https://github.com/lkxed) 译者：[ChatGPT](https://linux.cn/lctt/ChatGPT) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1134 英特尔 CTO 建议使用 AI 将 CUDA 代码移植到英特尔芯片

Summary:
? 英特尔 CTO 建议使用 AI 将 CUDA 代码移植到英特尔芯片
? 2017 年以来近 500 个智能手机品牌退出市场
? 加州利用人工智能提前发现 40% 的野火
»
»

Apple拒绝给NVIDIA驱动签名，主要就是对抗CUDA,让自家Metal发展。如果Intel支持了CUDA，很可能大家采购NVIDIA GPU的热情会降低，大概率NVIDIA是不会支持Intel额。当然格局打开就不一样了，但NVIDIA比较调皮，看看Linux下之前逆向，和Wayland的支持。现在好点了，被骇客威胁怕了，开始采用GBM了。

![](/data/attachment/album/202309/24/201749pmfq5fq5amfntzx6.jpg)

![](/data/attachment/album/202309/24/201757f2nzg0zk2ml0lwdj.jpg)

### 英特尔 CTO 建议使用 AI 将 CUDA 代码移植到英特尔芯片

英特尔、AMD 和其他加速器制造商在推动采用其人工智能硬件时面临的挑战之一是，为英伟达的 CUDA 运行时编写的大量代码必须经过重构才能在其他平台上使用。SYCL 是英特尔打破 CUDA 对人工智能软件生态系统束缚的最新举措之一。SYCL 处理了将 CUDA 代码移植到可在非英伟达加速器上运行的格式的大部分繁重工作（据称高达 95%），但通常还需要进行一些微调和调整。英特尔 CTO 认为，LLM 模型可以进一步自动化这种微调。他建议，“让我们使用 LLM 和 Copilot 等技术来训练一个机器学习模型，将你所有的 CUDA 代码转换为 SYCL”。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/21/intel_ai_cuda/?td=rt-9cp)**
>
>
>

>
> 老王点评：用人工智能解决人工智能需要的问题，这真是一个好主意。就是不知道英伟达怎么想。
>
>
>

![](/data/attachment/album/202309/24/201811en4b343848wyw0na.jpg)

### 2017 年以来近 500 个智能手机品牌退出市场

报告显示，在 2017 年的高峰期，有 700 多个智能手机品牌提供了 15 亿部的年销量。2023 年，手机品牌数量将减少三分之一，降至近 250 个。过去五年中关闭的品牌几乎都是印度、中东、非洲、中国、日本和韩国等地的本土品牌。但三星等全球品牌的数量一直保持在 30 个以上。

>
> **[消息来源：Tech Spot](https://www.techspot.com/news/100249-nearly-500-smartphone-brands-have-left-market-since.html)**
>
>
>

>
> 老王点评：这些消失的手机都是安卓手机，同质化严重的手机必然会逐渐被淘汰。
>
>
>

![](/data/attachment/album/202309/24/201824v7x0wp2wbpzzz722.jpg)

### 加州利用人工智能提前发现 40% 的野火

加州消防局与加州大学圣迭戈分校的 “警报加州” 项目及其遍布全州的 1000 多个摄像头网络合作，正在使用这项技术及早发现火灾。该试点项目非常成功，加州消防局表示，自 7 月 10 日以来，已有 40% 的火灾在接到 911 报警电话之前被人工智能检测到，而且该技术还在不断学习和改进。

>
> **[消息来源：CNN](https://www.cnn.com/2023/09/23/us/fighting-wildfire-with-ai-california-climate/index.html)**
>
>
>

>
> 老王点评：“你在新闻中没有听到火灾就是最大的成功。”
>
>
>


在 Linux 上的 VirtualBox 中从虚拟机访问 USB

![](/data/attachment/album/202309/25/002722v04rbi1g34084gf1.jpg)

>
> 你完全可以从虚拟机内部访问 USB 存储器。如果你使用的是 Linux 上的 VirtualBox，下面将介绍如何做到这一点。
>
>
>

当你插入 USB 时，你的宿主操作系统可以轻松访问它并使用其中的文件。这并不奇怪。

如果你在 Linux 上使用带有 VirtualBox 的虚拟机，那么可以付出一些努力并从虚拟机访问插入物理机的 USB。

让我逐步引导你了解如何在 VirtualBox VM 中访问 USB 磁盘。

### 如何在 VirtualBox VM 中访问 USB 驱动器

默认情况下，你无法使用 VirtualBox 访问 USB 驱动器，因为你必须安装扩展包管理器，此外，还有一些配置部分。

这就是我将本教程分为三个简单步骤的原因。那么让我们从第一步开始。

#### 步骤 1：安装 VirtualBox 扩展包（在主机上）

这是本教程中最重要的一步，因为你将安装 VirtualBox 的扩展，这将使你能够在虚拟机中使用 USB 驱动器。

>
> ? 你应该安装与你安装的 VirtualBox 版本相同版本的扩展包。
>
>
>

要安装 VirtualBox 扩展包，只需访问 [VirtualBox 官方下载页面](https://www.virtualbox.org/wiki/Downloads)，向下滚动一点，你将找到下载扩展包的选项：

![](/data/attachment/album/202309/25/002742hqro4rbjz0vvr0z8.png)

下载完扩展包后，请执行 3 个简单步骤：

* 转到 “<ruby> 文件 <rt>  File </rt></ruby>” > “<ruby> 工具 <rt>  Tools </rt></ruby>” > “<ruby> 扩展包管理器 <rt>  Extension Pack Manager </rt></ruby>”
* 点击 “<ruby> 安装 <rt>  Install </rt></ruby>” 按钮
* 从文件管理器中选择下载的文件：

![](/data/attachment/album/202309/25/002743tolba6zq977e6w7g.png)

它将打开一个新的提示来安装扩展包，你所要做的就是点击“安装”按钮并接受条款和条件：

![](/data/attachment/album/202309/25/002744w3npgcf9ag2i3fau.png)

我们就完成了扩展包的安装。

#### 步骤 2：将用户添加到 vboxusers 组（在宿主机上）

要在 VirtualBox 中使用 USB 驱动器，你的当前用户需要位于 `vboxusers` 组中。

我知道这听起来有点复杂，但 [将用户添加到组](https://learnubuntu.com/add-user-group/) 是一个命令过程，将用户添加到 `vboxusers` 组可以通过以下方式完成：

```
sudo usermod -aG vboxusers $USER

```

**完成这两个步骤后，重启系统以使这些步骤生效。**

#### 步骤 3：将 USB 驱动器添加到虚拟机

>
> ? 在为特定虚拟机添加 USB 之前，请确保其已关闭（未保存），否则你将无法按照给定的说明进行操作。
>
>
>

要为虚拟机添加 USB，你必须遵循以下简单步骤：

* 选择你想要使用 USB 的虚拟机并点击 “<ruby> 设置 <rt>  Settings </rt></ruby>”
* 转到 “USB” 选项卡
* 选中 “<ruby> 启用 USB 控制器 <rt>  Enable USB Controller </rt></ruby>” 框并单击 “+” 按钮选择 “USB”：

![](/data/attachment/album/202309/25/002744pyri44afzafxfhy6.png)

这就好了！现在你可以启动虚拟机，并且 USB 驱动器应该出现在文件管理器中。就我而言，它是 Ubuntu，所以它看起来像这样：

![](/data/attachment/album/202309/25/002745bfgkfokfyqxyfodd.png)

### 更多 USB 和 VM 技巧

如果你在虚拟机中使用 USB 看起来很酷，那么在虚拟机中从 USB 启动就更酷了！这里有一个关于 [如何在 VirtualBox 中从 USB 驱动器启动](https://itsfoss.com/virtualbox-boot-from-usb/) 的详细指南：

>
> **[如何在 VirtualBox 中从 USB 驱动器启动](https://itsfoss.com/virtualbox-boot-from-usb/)**
>
>
>

我希望本指南对你有所帮助。

*（题图：MJ/d9a1b4b5-30ec-4019-979f-b258a1fc075f）*

---

via: <https://itsfoss.com/virtualbox-access-usb/>

作者：[Sagar Sharma](https://itsfoss.com/author/sagar/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


arm vs AArch64 vs amd64 vs x86_64 vs x86：有什么区别？

Summary: 当涉及到 CPU 的时候，有许多术语：AArch64、x86_64、amd64、arm 等等。了解它们是什么以及它们之间的区别。

补充一些知识

架构            特点                                    代表性的厂商                  运营机构              发明时间

X86            性能高，速度快，兼容性好         英特尔，AMD                 英特尔                       1978年

ARM            成本低，低功耗                  苹果，谷歌， IBM，华为         英国ARM公司              1983年

RISC-V            模块化，极简，可拓展                  三星，英伟达，西部数据         RISC-V基金会          2014年

MIPS            简洁，优化方便，高拓展性         龙芯                           MIPS科技公司              1981年

除了x86，其他的很难以低廉价格在市场上买到，即使是二手的也是。

![](/data/attachment/album/202309/25/092727ilaax5z7dexxhxop.jpg)

>
> 当涉及到 CPU 的时候，有许多术语：AArch64、x86\_64、amd64、arm 等等。了解它们是什么以及它们之间的区别。
>
>
>

当你查看数据表或软件下载页面时是否被 `ARM`、`AArch64`、`x86_64`、`i386` 等术语混淆？这些被称为 CPU 架构，我会帮你深入了解这个计算话题。

以下的表将为你总结每个字符串所代表的意义：

| CPU 架构 | 描述 |
| --- | --- |
| **`x86_64`** /`x86`/`amd64` | 64 位 AMD/英特尔 CPU 的别称 |
| **`AArch64`** /`arm64`/`ARMv8`/`ARMv9` | 64 位 ARM CPU 的别称 |
| **`i386`** | 32 位 AMD/英特尔 CPU |
| **`AArch32`** /`arm`/`ARMv1` 到 `ARMv7` | 32 位 ARM CPU 的别称 |
| **`rv64gc`** /`rv64g` | 64 位 RISC-V CPU 的别称 |
| **`ppc64le`** | 64 位 PowerPC CPU，**小端字节序存储** |

从左到右是使用该术语来描述 CPU 架构超过其右侧其他可选用术语的偏好。

从左到右是使用该术语描述 CPU 架构的优先级，使用左侧的而不是其右侧的其他可供选择的术语。

如果你像我一样是个极客，并想要更深入地解释，请继续阅读！

### 概述：CPU 架构

通常来说，我之前列出的术语是描述 CPU 架构的。但严格讲，它们被计算机工程师视为 CPU 的 <ruby> 指令集架构 <rt>  Instruction Set Architecture </rt></ruby>（ISA）。

CPU 的指令集架构定义了 CPU 如何解析二进制代码中的 1 和 0。

这些 CPU 的 ISA 有几个主要的类别：

* x86（AMD/英特尔）
* ARM
* RISC-V
* PowerPC（IBM 仍在使用）

当然，还有更多种类的 CPU ISA，比如 MIPS、SPARC、DEC Alpha 等等。但我列出的这些至今仍然被广泛使用（以某种形式）。

上述列出的 ISA 主要根据 *内存总线的宽度* 分为至少两个子集。内存总线的宽度指的是 CPU 和 RAM 一次能传输的位数。内存总线有很多种宽度，但最常见的是 32 位和 64 位。

>
> ? 32 位的 CPU ISA 要么是已经过时的历史产物，被留下来要么只是为了支持旧的系统，要么只运用在微控制器中。可以说，**所有新的硬件都已经是 64 位的了**，特别是那些面向消费者的硬件。
>
>
>

### x86（AMD/英特尔）

x86 CPU 的指令集架构主要源于英特尔，因为英特尔是最初搭配 8085 微处理器创建了它。8085 微处理器的内存总线宽度为 16 位。而后来，AMD 加入了这个领域，并且一直紧随英特尔的步伐，直到 AMD 创建出了自己的超集 64 位架构，超过了英特尔。

x86 架构的子集如下：

* `i386`：如果你拥有的是 2007 年之前的 CPU，那么这可能就是你的 CPU 架构。它是现在使用的 AMD/英特尔的 x86 架构的 32 位“版本”。
* `x86_64`/`x86`/`amd64`：这三个术语在不同的项目中可能会被交替使用。 但它们都是指 x86 AMD/英特尔架构的 64 位“版本”。无论如何，`x86_64` 这个字符串比 `x86` 和 `amd64` 使用得更广泛（也更受欢迎）。例如，FreeBSD 项目称 64 位的 x86 架构为 `amd64`，而 Linux 和 macOS 则称之为 `x86_64`。

>
> ? 由于 AMD 在创造 64 位 ISA 上超越了英特尔，所以一些项目（比如 FreeBSD）把 x86 的 64 位版本称为 `amd64`。**但更被广泛接受的术语还是 x86\_64**。
>
>
>

对于 CPU ISA，“x86” 这个字符串是一种特殊的情况。你要知道，在从 32 位的 x86（`i386`）到 64 位的 x86（`x86_64`）的过渡过程中，CPU 制造商确保了 CPU 能够运行 32 位 *和* 64 位指令。所以，有时你可能会看到 `x86` 也被用来意指“这款产品只能运行在 64 位的计算机上，但如果该计算机能运行 32 位指令，那么你也可以在它上面运行 32 位的用户软件”。

这种 x86 的模糊性——也就是诸如能同时运行 32 位代码的 64 位处理器——其主要用于和存在于运行在 64 位处理器上的，但是允许用户运行 32 位软件的操作系统，Windows 就通过这种被称作“兼容模式”的特性运用了这种方式。

汇总一下，由 AMD 和 英特尔 设计的 CPU 有两种架构：32 位的（`i386`）和 64 位的（`x86_84`）。

#### 其它的英特尔

`x86_64` ISA 实际上有几个子集。这些子集都是 64 位，但它们新添加了诸如 SIMD（<ruby> 单指令多数据 <rt>  Single Instruction Multiple Data </rt></ruby>）指令等功能。

* `x86_64-v1`：这是大多数人都熟知的基础 `x86_64` ISA。当人们谈论 `x86_64` 时，他们通常指的就是 `x86_64-v1` ISA。
* `x86_64-v2`：此版本新增了更多如 SSE3（<ruby> 流式 SIMD 扩展版本 3 <rt>  Streaming SIMD Extensions 3 </rt></ruby>）之类的指令扩展。
* `x86_64-v3`：除了基础指令外，还新增了像 AVX（<ruby> 高级矢量扩展 <rt>  Advance Vector eXtensions </rt></ruby>）和 AVX2 等指令。这些指令可以**使用高达 256 位宽的 CPU 寄存器**！如果你能够有效利用它们，就能大规模并行处理计算任务。
* `x86_64-v4`：这个版本在 `x86_64-v3` ISA 的基础上，迭代了更多的 SIMD 指令扩展，比如 AVX256 和 AVX512。其中，AVX512 可以**使用高达 512 位宽的 CPU 寄存器**！

### ARM

ARM 不仅是一家为 CPU ISA 制定规范的公司，它也设计并授权给其他厂商使用其 CPU 内核，甚至允许其他公司使用 ARM CPU ISA 设计自己的 CPU 内核。（最后那句话听起来就像是个 SQL 查询似的！）

你可能因为如树莓派这类的 <ruby> 单板计算机 <rt>  Single Board Computer </rt></ruby>）（SBC）听说过 ARM。但其实 ARM 的 CPU 还广泛应用于手机中。最近，苹果从使用 `x86_64` 处理器转向了在其笔记本和台式机产品中使用自家设计的 ARM 处理器。

就像任一种 CPU 架构一样，ARM 基于内存总线宽度也有两个子集。

官方认定的 32 位和 64 位 ARM 架构的名称分别是 `AArch32` 和 `AArch64`。这里的 `AArch` 字符串代表 “<ruby> Arm 架构 <rt>  Arm Architecture </rt></ruby>”。这些是 CPU 执行指令时可切换的**模式**。

实际符合 ARM 的 CPU ISA 的指令规范被命名为 `ARMvX`，其中 `X` 是规范版本的代表数字。目前为止，已经有九个主要的规范版本。规范 `ARMv1` 到 `ARMv7` 定义了适用于 32 位 CPU 的架构，而 `ARMv8` 和 `ARMv9` 是适用于 64 位 ARM CPU 的规范。（[更多信息在此](https://en.wikipedia.org/wiki/ARM_architecture_family#Cores)）

>
> ? 每个 ARM CPU 规范又有进一步的子规范。例如 ARMv8，我们有 ARMv8-R、ARMv8-A、ARMv8.1-A、ARMv8.2-A、ARMv8.3-A、ARMv8.4-A、ARMv8.5-A、ARMv8.6-A、ARMv8.7-A、ARMv8.8-A 和 ARMv8.9-A。 其中 -A 表示“应用核心”，-R 表示“实时核心”。
>
>
>

你可能会觉得困惑，为什么在 `AArch64` 正式被 ARM 认定为 64 位 ARM 架构后，有些人仍然称其为 `arm64`。原因主要有两点：

1. `arm64` 这个名称在 ARM 决定采用 `AArch64` 之前就已经广为人知了。（ARM 的一些官方文档也将 64 位的 ARM 架构称为 `arm64`…… ?）
2. [Linus Torvalds 对 `AArch64` 这个名称表示不满。](https://lore.kernel.org/lkml/CA+55aFxL6uEre-c=JrhPfts=7BGmhb2Js1c2ZGkTH8F=+rEWDg@mail.gmail.com/) 因此，Linux 的代码库主要将 `AArch64` 称为 `arm64`。然而，当你在系统中运行 `uname -m` 时，输出仍然是 `aarch64`。

因此，对于 32 位 ARM CPU，你应该寻找 `AArch32` 这个字符串，但有时也可能是 `arm` 或 `armv7`。相似的，对于 64 位 ARM CPU，你应该找 `AArch64` 这个字符串，但有时也可能会是 `arm64`、`ARMv8` 或 `ARMv9`。

### RISC-V

RISC-V 是 CPU 指令集架构（ISA）的一个开源规范。\*\*但这并不意味着 CPU 自身是开源的！\*\*这有点像以太网的情况。以太网规范是开源的，但你需付费购买网线、路由器和交换器。同样，RISC-V CPU 也要花钱购买。 ?

尽管如此，这并没有阻止人们创建并在开源许可下提供免费获取（**设计上的获取**，并非物理核心/SoC）的 RISC-V 核心。[这是其中的一项尝试](https://github.com/openhwgroup)。

>
> ? 总结一下：如果你在寻找运行于 RISC-V 消费级 CPU 上的软件，你应该寻找 “**rv64gc**” 这一字符串。这是许多 Linux 发行版所公认的。
>
>
>

像所有 CPU 架构一样，RISC-V 拥有 32 位和 64 位 CPU 架构。但由于 RISC-V 是非常新的描述 CPU ISA 的方式，大部分主流消费端或客户端的 CPU 核心一般都是 64 位的。大部分 32 位的设计都是微控制器，用于非常具体的用例。

它们的区别在于 CPU 的扩展。被称为 RISC-V CPU 的最低要求即实现“<ruby> 基本整数指令集 <rt>  Base Integer Instruction Set </rt></ruby>”（`rv64i`）。

下表列出了一些扩展及其描述：

| 扩展名称 | 描述 |
| --- | --- |
| `rv64i` | 64 位基本整数指令集（**必须的**） |
| `m` | 乘法和除法指令 |
| `a` | 原子指令 |
| `f` | 单精度浮点指令 |
| `d` | 双精度浮点指令 |
| `g` | 别名；一组运行**通用**操作系统所需的扩展集（包括 `imafd`） |
| `c` | 压缩指令 |

在 `rv64i` 这一字符串中，`rv` 表示 RISC-V，`64` 指的是 64 位 CPU 架构，而 `i` 指的是**强制性的**基本整数指令集扩展。 `rv64i` 之所以是一体的，因为即使 `i` 被认为是一种“扩展”，**但它是必须的**。

约定俗成的，扩展名称按上述特定顺序排列。因此，`rv64g` 展开为 `rv64imafd`，而不是 `rv64adfim`。

>
> ? 还有其他一些像 Zicsr 和 Zifencei 这样的扩展，它们位于 `d` 和 `g` 扩展之间，但我故意不列出，以避免令你感到害怕。
>
>
> 因此，严格说来，（在写这篇文章的时候）`rv64g` 实际上是 `rv64imafdZicsrZifencei`。**恶魔般的笑声**
>
>
>

### PowerPC

PowerPC 曾是苹果、IBM 以及，摩托罗拉早期合作时代的一种流行 CPU 架构。在苹果转向英特尔的 x86 架构之前，它一直被应用于苹果的全部消费品产品线。

最初，PowerPC 采取的是大端字节序的内存排序。后来随着 64 位架构的引入，增加了使用小端字节排序的选项。这么做的目的是为了与英特尔的内存排序保持兼容（以防止软件错误），因为英特尔自始至终都一直采用的是小端字节序。有关字节序的更多内容，我可以唠叨很久，不过你可以通过阅读 [这篇 Mozilla 的文档](https://developer.mozilla.org/en-US/docs/Glossary/Endianness) 来了解更多。

由于字节序在此也起到了一定的作用，PowerPC 共有三种架构：

* `powerpc`：表示 32 位的 PowerPC 架构。
* `ppc64`：表示拥有**大端字节序内存排序**的 64 位 PowerPC 架构。
* `ppc64le`：表示拥有**小端字节序内存排序**的 64 位 PowerPC 架构。

目前，**`ppc64le` 是被广泛使用的架构**。

### 结论

市面上有各种各样的 CPU 架构。对于每一种架构，都有 32 位和 64 位的子集。在现有的 CPU 中，我们可以找到 x86、ARM、RISC-V 和 PowerPC 等架构。

其中，x86 是最广泛和易于获取的 CPU 架构，因为英特尔和 AMD 都采取了这种架构。此外，ARM 提供的产品几乎在手机和易于获取的单板计算机中被独占使用。

RISC-V 正在努力使硬件更广泛地被使用。我就有一款带有 RISC-V CPU 的单板计算机。 ?

而 PowerPC 主要用于服务器，至少当前如此。

*（题图：MJ/634ac7ea-b344-443a-b041-3bb3b31a956f）*

---

via: <https://itsfoss.com/arm-aarch64-x86_64/>

作者：[Pratham Patel](https://itsfoss.com/author/pratham/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[ChatGPT](https://linux.cn/lctt/ChatGPT) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #1135 Netflix 准备寄出最后的 DVD

Summary:
? Netflix 准备寄出最后的 DVD
? 英特尔因付费阻止 AMD 进入市场而被罚 4 亿美元
? 微软为其 AI 数据中心寻找核电专家
»
»

“老王点评：我有个担心，要是有一天 AI 能控制自己所需要的能源供给怎么办。”

——供电设施增加一个机械倒计时断路器。。。只能人工手动复位操作的那种。。。如果没人，一段时间后自动断开供电。。。

“英特尔因付费阻止 AMD 进入市场而被罚 4 亿美元”

——当地菜市场如果不加入某些协会，就会频繁收假币/遭小偷/遇无赖/被投诉/涨房租。。。所以商品涨价都是统一时间/幅度。。。

“老王点评：一个时代的结束象征。你有多久没有看过 DVD 碟片了？”

——即使是B站最高码率，看一些动作片也会卡/掉帧。。。

——碰到勒索病毒的时候，你就会怀念只读的DVD刻录盘了。。。

我还收藏着几张动画BD和CD，虽然我没有播放机。到时打算再买一些。

![](/data/attachment/album/202309/25/200440bgn66l3n2e2keh5n.jpg)

![](/data/attachment/album/202309/25/200516uiiotijl93ki9k9k.jpg)

### Netflix 准备寄出最后的 DVD

Netflix 成立于 1997 年，最初的主业就是以邮寄方式出租 DVD 和蓝光碟片。在高峰期，它每周处理 120 万张 DVD，雇佣了 50 名员工。如今它只剩下 6 名员工筛选 DVD 碟片，而这一切也将在周五结束，停止邮寄其标志性的红色包裹。在鼎盛期，Netflix 是邮政服务的第五大客户，经营着 58 家邮寄设施，128 个运输车队，能为其 98.5% 的客户提供一日送达服务。这项业务仍然有 100 万客户，为了缓和忠诚客户的强烈反应，Netflix 允许客户保留最后租借的碟片。

>
> **[消息来源：Las Vegas Sun](https://lasvegassun.com/news/2023/sep/23/netflix-prepares-to-send-its-final-red-envelope/)**
>
>
>

>
> 老王点评：一个时代的结束象征。你有多久没有看过 DVD 碟片了？
>
>
>

![](/data/attachment/album/202309/25/200527fik3tks5g54vkbvv.jpg)

### 英特尔因付费阻止 AMD 进入市场而被罚 4 亿美元

2009 年，欧盟就英特尔的反垄断行为开出了创纪录的 11.3 亿美元罚款。虽然英特尔的隐藏回扣等行为因缺乏伤害证据而在上诉中驳回，但欧盟委员会维持了英特尔向 PC 厂商付费以推迟或限制产品使用 AMD 处理器的指控，对其罚款 4 亿美元。具体而言，欧盟委员会举例说明，2002 年到 2005 年，英特尔向惠普付费要求其不要通过直销渠道向中小企业提供采用 AMD CPU 的电脑；英特尔付费给联想公司，要求其将 AMD 笔记本电脑的推出时间推迟六个月。英特尔没有对这一裁决提出异议，而欧盟委员会已经对被驳回的回扣部分提起了上诉。

>
> **[消息来源：Neo Win](https://www.neowin.net/news/eu-fines-intel-400-million-for-blocking-amds-market-access-through-payments-to-pc-makers/)**
>
>
>

>
> 老王点评：这竞争手段也是绝了。
>
>
>

![](/data/attachment/album/202309/25/200540x9z8nlh26gg6y9p6.jpg)

### 微软为其 AI 数据中心寻找核电专家

微软正在招聘一名 “核技术首席项目经理”，负责“全球小型模块化反应堆（SMR）和微反应器能源战略的成熟和实施”，为微软云和人工智能所在的数据中心提供动力。SMR 是一种小型、模块化的核裂变发电厂，它可以由生产线制造，而且非常便于携带，可以放置在许多环境中。微反应器比 SMR 更小，甚至可以移动。据估计，为一个数据中心供电可能需要四个 SMR。

>
> **[消息来源：The Register](https://www.theregister.com/2023/09/25/microsoft_nuclear_energy_manager_job/)**
>
>
>

>
> 老王点评：我有个担心，要是有一天 AI 能控制自己所需要的能源供给怎么办。?
>
>
>