2021年4月

Linux 上有 检查 CPU 信息的方法。最常见的可能是 lscpu 命令,它可以提供大量的系统上所有 CPU 核心的信息。

lscpu command output

你可以在那里找到 CPU 信息,而无需安装任何额外的包。当然这是可行的。然而,我最近偶然发现了一个新的工具,它以一种漂亮的方式显示 Linux 中的 CPU 细节。

处理器制造商的 ASCII 艺术使它看起来很酷。

这看起来很美,不是吗?这类似于 Neoftech 或者 Screenfetch,在 Linux 中用漂亮的 ASCII 艺术来展示系统信息。与这些工具类似,如果你要展示你的桌面截图,可以使用 CPUFetch。

该工具可以输出处理器制造商的 ASCII 艺术,它的名称、微架构、频率、核心、线程、峰值性能、缓存大小、高级向量扩展 等等。

除了它提供的一些主题外,你还可以使用自定义颜色。当你在整理桌面,并希望对 Linux 环境中的所有元素进行颜色匹配时,这给了你更多的自由度。

在 Linux 上安装 CPUFetch

不幸的是,CPUFetch 是一个相当新的软件,而且它并不包含在你的发行版的软件库中,甚至没有提供现成的 DEB/RPM 二进制文件、PPA、Snap 或 Flatpak 包。

Arch Linux 用户可以在 AUR找到 它,但对于其他人来说,唯一的出路是 从源代码构建

不要担心。安装以及删除并不是那么复杂。让我来告诉你步骤。

我使用的是 Ubuntu,你会 需要先在 Ubuntu 上安装 Git。一些发行版会预装 Git,如果没有,请使用你的发行版的包管理器来安装。

现在,把 Git 仓库克隆到你想要的地方。家目录也可以。

git clone https://github.com/Dr-Noob/cpufetch

切换到你刚才克隆的目录:

cd cpufetch

你会在这里看到一个 Makefile 文件。用它来编译代码。

make

CPUFetch Installation

现在你会看到一个新的可执行文件,名为 cpufetch。你运行这个可执行文件来显示终端的 CPU 信息。

./cpufetch

这是我系统的显示。AMD 的徽标用 ASCII 码看起来更酷,你不觉得吗?

如何删除 CPUFetch?这很简单。当你编译代码时,它只产生了一个文件,而且也和其他代码在同一个目录下。

所以,要想从系统中删除 CPUFetch,只需删除它的整个文件夹即可。你知道 在 Linux 终端中删除一个目录 的方法吧?从 cpufetch 目录中出来,然后使用 rm 命令。

rm -rf cpufetch

这很简单,值得庆幸的是,因为从源代码中删除安装的软件有时真的很棘手。

说回 CPUFetch。我想这是一个实用工具,适合那些喜欢在各种 Linux 群里炫耀自己桌面截图的人。既然发行版有了 Neofetch,CPU 有了 CPUFetch,不知道能不能也来个 Nvidia ASCII 艺术的 GPUfetch?


via: https://itsfoss.com/cpufetch/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

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

苹果高管表示,iMessage 是人们不给孩子用安卓手机的原因

在 Epic Games 和苹果之间的法律战相关的法庭文件中,披露了苹果认为 iMessage 只存在于 iOS、iPadOS 和 macOS 平台上对于苹果有多重要。苹果软件工程高级副总裁、负责 iOS 系统的高管表示,“iMessage 移植到安卓上就会消除 iPhone 家庭给孩子使用安卓手机的障碍。”而负责 App Store 的苹果高管称,“将 iMessage 转移到安卓系统对我们的伤害大于帮助。”

可能在国外他们会依赖于 iMessage 吧,在国内,有多少人用这个呢?

微软开源了一个红蓝队网络攻防软件,以培养 AI 来进行网络防御

微软开源了一款软件 CyberBattleSim,可以让机器学习驱动的网络入侵者与虚拟网络内的自动防御者展开对决。该软件设置了装满漏洞和其他弱点的伪装网络,AI 攻击者会学习如何找到并利用漏洞在网络中传播,而 AI 防御者则试图检测恶意活动并缓解攻击。在过去的一年里,微软一直在运行该系统来模拟攻击。

这是一个很有意思的尝试,以后的网络攻击会越来越由 AI 驱动而不是由经验丰富的人类驱动,相应的,防御也会由 AI 接手,我们离科幻小说里面的场景越来越近了。

arm64 成为 FreeBSD 的一级支持架构

FreeBSD 项目宣布,从 FreeBSD 13 起 arm64 升级为一级支持架构,这意味着在 FreeBSD 13 的整个生命期内项目都将为 arm64 架构提供发布镜像、二进制包、安全和勘误更新。FreeBSD 项目最早是在 2014 年启动对 FreeBSD/arm64 的开发,2016 年发布的 FreeBSD 11 中正式引入对 arm64 架构的支持。

ARM 芯片引来前所未有的高光时刻,BSD、Linux 纷纷对它抛出橄榄枝。

每当 GNOME 的一个重要版本到来时,总是很想尽快试用它。但是,要想第一时间进行测试,主要还是得依靠 Fedora Rawhide 开发分支。

然而,开发分支并不总是让人放心的,所以,用来尝试最新的 GNOME 并不是最方便的解决方案。这里,我所说的测试,并不仅仅是指用户的测试,同时也能够用于开发者对设计变更进行测试。

所以,最近来了个大救星 GNOME OS,让测试的过程变得轻松起来。但是,它到底是什么,怎么安装呢?让我们一起来看看吧。

什么是 GNOME OS?

GNOME OS 并不是一个独立完整的 Linux 发行版。事实上,它根本不基于任何东西。它是一个不完整的参考系统,只是为了让 GNOME 桌面工作。它仅仅是一个可启动的虚拟机镜像,在 GNOME 进入任何发行版的仓库之前,为调试和测试功能而量身定做的。

在 GNOME 的博客中,有一篇提到了它:

GNOME OS 旨在通过提供一个用于开发、设计和用户测试的工作系统,来更好地促进 GNOME 的开发。

如果你好奇的话,你可以看看 GNOME 星球上的一篇 博客文章 来了解关于 GNOME OS 的更多信息。

如果它不是一个成熟的 Linux 发行版,那么它是用来干什么的?

值得注意的是,每一次新的提交都可以创建一个新的 GNOME OS 镜像,所以它应该会使测试过程变得高效,并帮助你在开发周期的早期测试并发现问题。

不要忘了,设计者不再需要自己构建软件来测试 GNOME Shell 或任何其他核心模块。这为他们节省了时间和整个 GNOME 开发周期。

当然,不仅限于开发者和技术测试人员,它还可以让记者们拿到最新的和最棒的东西,来报道 GNOME 下一个版本或它是如何成型的。

媒体和 GNOME 团队也得到了一个很好的机会,借助于 GNOME OS,他们可以准备视频、图片两种形式的视觉资料来宣传此次发布。

如何安装 GNOME OS?

要轻松安装 GNOME OS,你需要先安装 GNOME Boxes 应用程序。

安装 GNOME Boxes

Boxes 是一款简单的虚拟化软件,它不提供任何高级选项,但可以让你轻松安装操作系统镜像来快速测试。它是专门针对桌面终端用户的,所以使用起来也很方便。

要在任何 Linux 发行版上安装它,你可以利用 FlathubFlatpak 包。如果你不知道 Flatpak,你可能需要阅读我们的《在 Linux 中安装和使用 Flatpak》指南。

你也可以在任何基于 Ubuntu 的发行版上直接在终端上输入以下内容进行安装:

sudo apt install gnome-boxes

一旦你安装了 Boxes,从这里安装 GNOME OS 就相当容易了。

安装 GNOME OS

安装好 Boxes 后,你需要启动程序。接下来,点击窗口左上角的 “+” 标志,然后点击 “操作系统下载”,如下图所示。

这个选项可以让你直接下载镜像文件,然后就可以继续安装它。

你所需要做的就是搜索 “GNOME”,然后你应该会找到可用的每夜构建版。这可以确保你正在尝试最新和最优秀的 GNOME 开发版本。

另外,你也可以前往 GNOME OS 每夜构建网站 下载系统镜像,然后在 Boxes 应用中选择 “运行系统镜像文件” 选择该 ISO,如上图截图所示,继续安装。

考虑到你没有单独下载镜像。当你点击后,应该会开始下载,并且会出现一个进度条。

完成后,如果需要,它会要求你自定义配置,让你创建虚拟机,如下图所示。

你可以根据你可用的系统资源来定制资源分配,但应该可以使用默认设置。

点击 “创建”,就会直接开始 GNOME OS 的安装。

选择“使用现有的版本”,然后继续。接下来,你必须选择磁盘(保持原样),然后同意擦除你所有的文件和应用程序(它不会删除本地计算机上的任何东西)。

现在,它将简单地重新格式化并安装它。然后就完成了。它会提示你重启,重启后,你会发现 GNOME OS 已经安装好了。

它会像其他 Linux 发行版一样简单地启动,并要求你设置一些东西,包括用户名和密码。然后,你就可以开始探索了。

如果你想知道它的样子,它基本上就是最新的 GNOME 桌面环境。在 GNOME 40 正式发布之前,我用 GNOME OS 做了一个 GNOME 40 的概述视频。

结束语

GNOME OS 绝对是对开发者、设计师和媒体有用的东西。它可以让你轻松地测试最新的 GNOME 开发版本,而无需投入大量的时间。

我可以很快地测试 GNOME 40,就是因为这个。当然,你要记住,这并不是一个可以在物理设备上安装的完整功能的操作系统。他们有计划让它可以在物理机器上运行,但就目前而言,它只是为虚拟机量身定做的,尤其是使用 GNOME Boxes。

GNOME Boxes 并没有提供任何高级选项,所以设置和使用它变得相当容易。如果体验太慢的话,你可能要调整一下资源,但在我的情况下,总体来说是一个不错的体验。

你试过 GNOME OS 了吗?欢迎在下面的评论中告诉我你的想法。


via: https://itsfoss.com/gnome-os/

作者:Ankush Das 选题:lujun9972 译者:wxy 校对:wxy

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

Git 提供了几种方式可以帮你快速查看提交中哪些文件被改变。

 title=

如果你每天使用 Git,应该会提交不少改动。如果你每天和其他人在一个项目中使用 Git,假设 每个人 每天的提交都是安全的,你会意识到 Git 日志会变得多么混乱,似乎永恒地滚动着变化,却没有任何迹象表明修改了什么。

那么,你该怎样查看指定提交中文件发生哪些变化?这比你想的容易。

查看提交中文件发生的变化

要想知道指定提交中哪些文件发生变化,可以使用 git log --raw 命令。这是发现一个提交影响了哪些文件的最快速、最方便的方法。git log 命令一般都没有被充分利用,主要是因为它有太多的格式化选项,许多用户在面对很多选择以及在一些情况下不明所以的文档时,会望而却步。

然而,Git 的日志机制非常灵活,--raw 选项提供了当前分支中的提交日志,以及更改的文件列表。

以下是标准的 git log 输出:

$ git log
commit fbbbe083aed75b24f2c77b1825ecab10def0953c (HEAD -> dev, origin/dev)
Author: tux <[email protected]>
Date:   Sun Nov 5 21:40:37 2020 +1300

    exit immediately from failed download

commit 094f9948cd995acfc331a6965032ea0d38e01f03 (origin/master, master)
Author: Tux <[email protected]>
Date:   Fri Aug 5 02:05:19 2020 +1200

    export makeopts from etc/example.conf

commit 76b7b46dc53ec13316abb49cc7b37914215acd47
Author: Tux <[email protected]>
Date:   Sun Jul 31 21:45:24 2020 +1200

    fix typo in help message

即使作者在提交消息中指定了哪些文件发生变化,日志也相当简洁。

以下是 git log --raw 输出:

$ git log --raw
commit fbbbe083aed75b24f2c77b1825ecab10def0953c (HEAD -> dev, origin/dev)
Author: tux <[email protected]>
Date:   Sun Nov 5 21:40:37 2020 +1300

    exit immediately from failed download

:100755 100755 cbcf1f3 4cac92f M        src/example.lua

commit 094f9948cd995acfc331a6965032ea0d38e01f03 (origin/master, master)
Author: Tux <[email protected]>
Date:   Fri Aug 5 02:05:19 2020 +1200

    export makeopts from etc/example.conf
   
:100755 100755 4c815c0 cbcf1f3 M     src/example.lua
:100755 100755 71653e1 8f5d5a6 M     src/example.spec
:100644 100644 9d21a6f e33caba R100  etc/example.conf  etc/example.conf-default

commit 76b7b46dc53ec13316abb49cc7b37914215acd47
Author: Tux <[email protected]>
Date:   Sun Jul 31 21:45:24 2020 +1200

    fix typo in help message

:100755 100755 e253aaf 4c815c0 M        src/example.lua

这会准确告诉你哪个文件被添加到提交中,哪些文件发生改变(A 是添加,M 是修改,R 是重命名,D 是删除)。

Git whatchanged

git whatchanged 命令是一个遗留命令,它的前身是日志功能。文档说用户不应该用该命令替代 git log --raw,并且暗示它实质上已经被废弃了。不过,我还是觉得它是一个很有用的捷径,可以得到同样的输出结果(尽管合并提交的内容不包括在内),如果它被删除的话,我打算为它创建一个别名。如果你只想查看已更改的文件,不想在日志中看到合并提交,可以尝试 git whatchanged 作为简单的助记符。

查看变化

你不仅可以看到哪些文件发生更改,还可以使用 git log 显示文件中发生了哪些变化。你的 Git 日志可以生成一个内联差异,用 --patch 选项可以逐行显示每个文件的所有更改:

commit 62a2daf8411eccbec0af69e4736a0fcf0a469ab1 (HEAD -> master)
Author: Tux <[email protected]>
Date:   Wed Mar 10 06:46:58 2021 +1300

    commit

diff --git a/hello.txt b/hello.txt
index 65a56c3..36a0a7d 100644
--- a/hello.txt
+++ b/hello.txt
@@ -1,2 +1,2 @@
 Hello
-world
+opensource.com

在这个例子中,“world” 这行字从 hello.txt 中删掉,“opensource.com” 这行字则添加进去。

如果你需要在其他地方手动进行相同的修改,这些 补丁 patch 可以与常见的 Unix 命令一起使用,例如 diff 与 patch。补丁也是一个好方法,可以总结指定提交中引入新信息的重要部分内容。当你在冲刺阶段引入一个 bug 时,你会发现这里的内容就是非常有价值的概述。为了更快地找到错误的原因,你可以忽略文件中没有更改的部分,只检查新代码。

用简单命令得到复杂的结果

你不必理解引用、分支和提交哈希,就可以查看提交中更改了哪些文件。你的 Git 日志旨在向你报告 Git 的活动,如果你想以特定方式格式化它或者提取特定的信息,通常需要费力地浏览许多文档来组合出正确的命令。幸运的是,关于 Git 历史记录最常用的请求之一只需要一两个选项:--raw--patch。如果你不记得 --raw,就想想“Git,什么改变了?”,然后输入 git whatchanged


via: https://opensource.com/article/21/4/git-whatchanged

作者:Seth Kenlon 选题:lujun9972 译者:DCOLIVERSUN 校对:wxy

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

近三分之一的英国人使用宠物或家庭成员的名字作为密码

英国国家网络安全中心对一千多名英国成年人的调查显示,15% 的人使用宠物的名字,而 14% 的人使用家庭成员的名字作为密码。而 “123456” 和 “password” 仍然各占英国人使用的登录短语的 6%。英国国家网络安全中心说,“我们可能是一个动物爱好者的国家,但使用你的宠物的名字作为密码,可能会使你很容易成为冷酷的网络罪犯的目标。”他们建议使用由三个随机词组成的密码。

当然,我觉得最好的实践还是使用密码管理器。

DuckDuckGo 发布扩展程序阻止谷歌 FLoC 跟踪

隐私搜索引擎 DuckDuckGo 刚刚更新了面向 Chrome 浏览器用户的 Privacy Essentials 扩展,以阻止谷歌新推出的基于 FLoC 的跟踪方法。FLoC 的全称为“ 联合队列学习 Federated Learning of Cohorts ”,但这套旨在取代第三方 Cookie 的追踪系统还是引发了极大的争议。DuckDuckGo 称,“这种不经过任何人同意就强加上去的追踪机制根本不利于隐私,因为 FLoC 会在默认情况下开展行为跟踪。”不过,该扩展目前仍在等待谷歌扩展商店的审批才能被用户下载。

本质上,谷歌就是一个广告商,所以,这个会“伤害”谷歌的 FLoC 的扩展能不能得到通过,还尚未可知。

Linux 5.13 考虑为每次系统调用引入随机化的内核堆栈偏移量

该功能可以增强内核安全性、以阻止依赖内核堆栈确定性的漏洞利用。该功能已经经历了十轮的代码审查,预计会在 Linux 5.13 中发布。若这项功能顺利完成交付,那未来针对 Linux 内核堆栈的攻击将变得更加困难。不过在默认情况下,这项特性仍处于关闭的状态。因为即便在 x86\_64 平台上,该选项仍会造成约 1% 的系统资源开销。

相对于在安全方面更激进的 FreeBSD 内核,以及一些专门针对 Linux 内核安全强化的项目,Linux 内核在安全方面的举措更加保守。

Linux 的一大优点是多样化选择,选择激发了用户之间自由分享想法和解决方案。Linux 将如何激发你为这个社区做出贡献呢?

 title=

到了 2021 年,人​​们比以往任何时候都更有理由喜欢 Linux。在本系列中,我将分享 21 个使用 Linux 的理由。本文讨论选择 Linux 带来的好处。

选择 是 Linux 中被误解最深的特性之一。这种误解从可被选择的 Linux 发行版数量就开始了。Distrowatch.org 报告了数百种可用的和活跃的 Linux 发行版。当然,在这些发行版当中,许多都是业余爱好项目或者针对某些晦涩需求的特别版。因为是开源的,所以实际上,任何人都可以“重新设计”或“重新混搭”现有的 Linux 发行版,赋予一个新名称,提供一个新的默认墙纸,然后称其为自己的作品。尽管这些修改似乎微不足道,但我认为这显示了 Linux 的一些特别之处。

灵感

Linux 似乎一直在启迪着人们,从了解它的那一刻起,到创造出自己的版本。

有数十家公司花费数百万美元来从他们自己的产品中获取灵感。商业技术广告试着强硬地说服你,只要你购买某种产品,你就会与所关心的人建立更多的联系,更具创造力、更加充满活力。这些广告用 4k 视频拍摄,焦点柔和,并在欢快振奋的音乐节奏下播放,试图说服人们不仅购买而且还要支持和宣传该公司的产品。

当然,Linux 基本没有营销预算,因为 Linux 是个形形色色的大集合,没有固定实体。然而,当人们发现它的存在时候,他们似乎就被启发着去构建属于自己的版本。

灵感的数量很难量化,但是它显然很有价值,要不然那些公司不会花钱来尝试创造灵感。

革新

灵感,无论给它标价有多难,它都因它的生产创造而有价值。许多 Linux 用户受启发来为各种奇怪问题定制解决方案。我们解决的大多数问题,对于其他大部分人而言,似乎微不足道:也许你使用 Seeed 微控制器 来监控番茄植株土壤的水分含量;或者你使用脚本来搜索 Python 软件包的索引,因为你总是会忘记每天导入的库的名称;或者设置了自动清理下载文件夹,因为将文件图标拖进回收站这个活儿干太多了。不管你在使用 Linux 的过程中,为自己解决过什么问题,都是这个平台包含的特性之一,你被这个正在运行中的开放的技术所启发,使其更好地服务于你自己。

开放策略

诚然,不论是灵感,还是创新,都不能算 Linux 独有的属性。其他平台也确实让我们激发灵感,我们也以或大或小的方式进行创新。运算能力已在很大程度上拉平了操作系统的竞争领域,你在一个操作系统上可以完成的任何事,在另一个操作系统上或许都能找到对应的方法来完成。

但是,许多用户发现,Linux 操作系统保留了坚定的开放策略,当你尝试可能无人想到过的尝试时,Linux 不会阻挡你。这种情况不会也不可能发生在专有的操作系统上,因为无法进入系统层级的某些区域,因为它们本身就是被设计为不开放源码的。有各种独断的封锁。当你完全按照操作系统的期望进行操作时,你不会碰到那些看不见的墙,但是当你心里想着要做一些只对你有意义的事情的时候,你的系统环境可能变得无从适应。

小小的选择,大大的意义

并非所有创新都是大的或重要的,但总的来说,它们带来的变化并不小。如今,数百万用户的那些疯狂想法在 Linux 的各个部分中愈发显现。它们存在于 KDE 或 GNOME 桌面的工作方式中,存在于 31 种不同的文本编辑器 中 —— 每一种都有人喜爱,存在于不计其数的浏览器插件和多媒体应用程序中,存在于文件系统和扩展属性中,以及数以百万行计的 Linux 内核代码中。而且,如果上述功能中的哪怕仅其中一项,能让你每天额外节省下一小时时间,陪家人、朋友或用在自己的业余爱好上,那么按照定义,套用一句老话就是,“改变生活”。

在社区中交流

开源的重要组成部分之一是共享工作。共享代码是开源软件中显而易见的、普遍流行的事务,但我认为,分享,可不仅仅是在 Gitlab 做一次提交那么简单。当人们彼此分享着自己的奇思妙想,除了获得有用的代码贡献作为回报外,再无其他动机,我们都认为这是一种馈赠。这与你花钱从某公司购买软件时的感觉非常不同,甚至与得到某公司对外分享他们自己生产的开源代码时的感觉也有很大不同。开源的实质是,由全人类创造,服务于全人类。当知识和灵感可以被自由地分享时,人与人之间就建立了连接,这是市场营销活动无法复制的东西,我认为我们都认同这一点。

选择

Linux 并不是唯一拥有很多选择的平台。无论使用哪种操作系统,你都可以找到针对同一问题的多种解决方案,尤其是在深入研究开源软件的时候。但是,Linux 明显的选择水准指示了推动 Linux 前进的因素:诚邀协作。在 Linux 上,有些创造会很快消失,有些会在你家用电脑中保留数年 —— 即便只是执行一些不起眼的自动化任务,然而有一些则非常成功,以至于被其他系统平台借鉴并变得司空见惯。没关系,无论你在 Linux 上创作出什么,都请毫不犹豫地把它加入千奇百怪的选择之中,你永远都不知道它可能会激发到谁的灵感。


via: https://opensource.com/article/21/2/linux-choice

作者:Seth Kenlon 选题:lujun9972 译者:max27149 校对:wxy

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