2021年7月

Linus Torvalds 催促新的 NTFS 驱动合并到内核

Paragon 的 NTFS3 内核驱动为微软的 NTFS 文件系统提供了比现有内核的 NTFS 驱动或 FUSE 方式更好的读写支持。在过去的一年里,新的 NTFS 驱动已经经历了许多轮的审查,并且进入了相当好的状态。但在最近的内核开发周期,包括上周结束的 Linux 5.14 合并窗口都没有看到这个新的驱动向内核主线提交。Torvalds 评论说,如果代码有所有的审查,并将被维护,相关的开发者应该向他发出一个拉取请求。

之前一直积极冲刺内核主线,为什么现在反而不着急了呢?

新图像编码格式 JPEG XL 发布

与旧的 JPEG 格式相比,JPEG XL 提供了明显更好的图像质量和压缩率,以及更广泛的规格。它向后兼容 JPEG 格式。现有的 JPEG 文件可以被无损地转码为 JPEG XL,大大减少了它们的尺寸。它们可以被还原成完全相同的 JPEG 文件。它支持宽色域以及高动态范围和高比特率图像。JPEG XL 还包括动画、阿尔法通道、图层、缩略图、无损和渐进式编码等功能,还增加了对 360 度图像、图像系列、大型全景图/马赛克和打印的支持。

看这些特性,感觉简直是一种全能的图像格式啊。

勒索赎金未果,黑客公开部分 EA 公司机密数据

EA 公司在上个月遭遇黑客攻击,大量机密数据被窃取,其中包括且不仅限于《FIFA 21》的源代码,甚至还有寒霜游戏引擎的源代码和工具。当时,黑客有意在网络上兜售数据,但如今他们决定把数据上传到网络。目前,黑客已经在网络上分享了 1.3GB 的数据,其中包含上文提到的内部工具和 EA Origin 商店数据。如果 EA 不支付赎金的话,他们威胁将继续公开数据。

EA 觉得硬刚到底,但是不是每个企业都有底气硬刚。

age 是一个简单的、易于使用的工具,允许你用一个密码来加密和解密文件。

 title=

文件的保护和敏感文档的安全加密是用户长期以来关心的问题。即使越来越多的数据被存放在网站和云服务上,并由具有越来越安全和高强度密码的用户账户来保护,但我们能够在自己的文件系统中存储敏感数据仍有很大的价值,特别是我们能够快速和容易地加密这些数据时。

age 能帮你这样做。它是一个小型且易于使用的工具,允许你用一个密码加密一个文件,并根据需要解密。

安装 age

age 可以从众多 Linux 软件库中 安装

在 Fedora 上安装它:

$ sudo dnf install age -y

在 macOS 上,使用 MacPortsHomebrew 来安装。在 Windows 上,使用 Chocolatey 来安装。

用 age 加密和解密文件

age 可以用公钥或用户自定义密码来加密和解密文件。

在 age 中使用公钥

首先,生成一个公钥并写入 key.txt 文件:

$ age-keygen -o key.txt
Public key: age16frc22wz6z206hslrjzuv2tnsuw32rk80pnrku07fh7hrmxhudawase896m9

使用公钥加密

要用你的公钥加密一个文件:

$ touch mypasswds.txt | age -r \
    ageage16frc22wz6z206hslrjzuv2tnsuw32rk80pnrku07fh7hrmxhudawase896m9 \
    > mypass.tar.gz.age

在这个例子中,我使用生成的公钥加密文件 mypasswds.txt,保存在名为 mypass.tar.gz.age 的加密文件中。

用公钥解密

如需解密加密文件,使用 age 命令和 --decrypt 选项:

$ age --decrypt -i key.txt -o mypass.tar.gz mypass.tar.gz.age

在这个例子中,age 使用存储在 key.text 中的密钥,并解密了我在上一步创建的加密文件。

使用密码加密

不使用公钥的情况下对文件进行加密被称为对称加密。它允许用户设置密码来加密和解密一个文件。要做到这一点:

$ age --passphrase --output mypasswd-encrypted.txt mypasswd.txt
Enter passphrase (leave empty to autogenerate a secure one): 
Confirm passphrase:

在这个例子中,age 提示你输入一个密码,它将通过这个密码对输入文件 mypasswd.txt 进行加密,并生成加密文件 mypasswd-encrypted.txt

使用密码解密

如需将用密码加密的文件解密,可以使用 age 命令和 --decrypt 选项:

$ age --decrypt --output passwd-decrypt.txt mypasswd-encrypted.txt

在这个例子中,age 提示你输入密码,只要你提供的密码与加密时设置的密码一致,age 随后将 mypasswd-encrypted.txt 加密文件的内容解密为 passwd-decrypt.txt

不要丢失你的密钥

无论你是使用密码加密还是公钥加密,你都\_不能\_丢失加密数据的凭证。根据设计,如果没有用于加密的密钥,通过 age 加密的文件是不能被解密的。所以,请备份你的公钥,并记住这些密码!

轻松实现加密

age 是一个真正强大的工具。我喜欢把我的敏感文件,特别是税务记录和其他档案数据,加密到 .tz 文件中,以便以后访问。age 是用户友好的,使其非常容易随时加密。


via: https://opensource.com/article/21/7/linux-age

作者:Sumantro Mukherjee 选题:lujun9972 译者:geekpi 校对:turbokernel

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

在 Box64 模拟器的帮助下,在 ARM 设备上运行 x64 Linux 程序。想试试吗?

Box86 是一个流行的 X86 模拟器,刚进行了一次巨大的升级。发布了 Box64,也就是对应的 ARM64 版本。

可能你还不了解这个模拟器,Box64\_86 允许你在 ARM 系统上运行 32 或 64 位的 X86/64 Linux 程序。换句话说,它能让你在树莓派或者 树莓派替代品 上运行 Linux 桌面程序。

幸运的是,现在我们有 Box86 和 Box64 的支持,无论你的 ARM 系统是什么类型。

Box64 是什么?

你可能听说过苹果的 Rosetta 2,它是一个翻译层,允许为老款 Mac(Intel X86 处理器)设计的应用程序在新的 M1(ARM 处理器)驱动的 Mac 上运行。Box64 与之类似,允许为 X86 设计的应用程序运行在 ARM Linux 设备上。

由于它的 Dynarec 模块,它能够做到这一点,同时又是 100% 开源的、免费的,而且速度惊人。它通过重新编译 ARM 程序来提升速度,这意味着和其他 ARM 原生应用一样快。

但是,即使 Box64 无法重新编译应用,它仍然可以使用即时模拟,也有令人印象深刻的结果。

许多树莓派用户很熟悉 Box86,这是一个大约一年前发布的类似程序。二者最大的区别是 Box86 只兼容 Arm32,而 Box64 只兼容 Arm64。

这就是 Box64,一个非常棒的兼容层,允许你在 ARM 电脑上运行 x86\_64 应用。

总结

如果你问我认为 Box64 怎么样,我会说这是一个绝对的游戏规则改变者。在难以置信的性能和巨大的潜力之间,这个兼容层肯定会在未来的 ARM 电脑中扮演一个重要角色。

如果你想知道它的工作原理,以及如何开始使用它,请查看其 GitHub 页面

就这样吧,现在你自己去潜入其中并测试吧。

你觉得 Box64 怎样?写下你的评论让我知道。


via: https://news.itsfoss.com/box64-emulator-released/

作者:Jacob Crume 选题:lujun9972 译者:zde200572 校对:wxy

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

三分之二的开发者在使用 JavaScript

在 jetbrains 针对近 3.2 万名开发者的调查中,JavaScript 的使用率为 69%,而 39% 的开发者将其作为主要使用语言。Java 则是 32%,PHP 为 22%。

该调查也体现了一些明显的地区差异。Java 在中国和韩国最受欢迎;英国的 JavaScript、PHP 和 Python 的使用高于平均水平;美国的 JavaScript 和 Python;以及印度的 JavaScript、Python 和 C++ 等名列前茅。

没谁会想到一个赶工设计出来的脚本语言已经成为了庞然大物。

DeepMind 开源 AlphaFold

去年底,Google 子公司 DeepMind 宣布取得了一项重大突破:AI 能根据蛋白质的氨基酸序列判断其三维结构。这一突破有望大大加快新药的开发过程。DeepMind 的 AlphaFold 系统能够在数天内提供准确结果,精度在一个原子的宽度以内。本周 DeepMind 在《自然》期刊上发表论文, 宣布 AlphaFold 精度在大部分情况下能与实验室结果相竞争,远超其它方法。并在 GitHub 上采用 Apache 许可证开源了 AlphaFold 。

虽然 OpenAI 解散了机器人团队,但是 AI 的发展依然值得期待。

针对 IoT 设备的攻击在两年间增长了 700%

新冠大流行使得许多企业办公室没有工作人员,但仍有很多工作在进行。各种各样的设备如联网打印机、数字标牌、智能手表和其他物联网设备都被留在了办公室。大多数网络攻击的源头主要来自印度、美国等国,而中国、美国和爱尔兰是 IoT 设备最受攻击的国家。约 98% 的物联网攻击受害者在医疗保健、零售和批发、制造和技术部门工作。研究显示,在 18000 台主机上发现了 900 个不同的载荷,在 70 多个不同制造商的设备上发现了恶意软件。

这些没人管理、没有升级的 IoT 设备会是一个大的隐患。

从 Rust 标准库学习一些有用的关键字。

 title=

我使用 Rust 已经有几个月了,写的东西比我预期的要多——尽管随着我的学习,我改进了所写的代码,并完成了一些超出我最初意图的更复杂的任务,相当多的东西已经被扔掉了。

我仍然喜欢它,并认为谈论一些在 Rust 中反复出现的重要关键字可能会有好处。我会提供我个人对它们的作用的总结:为什么你需要考虑如何使用它们,以及任何其他有用的东西,特别是对于刚接触 Rust 的新手或来自另一种语言的人(如 Java;请阅读我的文章 为什么作为一个 Java 程序员的我喜欢学习 Rust)。

事不宜迟,让我们开始吧。获取更多信息的好地方总是 Rust 官方文档 —— 你可能想从 std 标准库开始。

  1. const – 你可以用 const 来声明常量,而且你应该这样做。虽然这不是造火箭,但请一定要用 const ,如果你要在不同的模块中使用常量,那请创建一个 lib.rs 文件(Rust 默认的),你可以把所有的常量放在一个命名良好的模块中。我曾经在不同模块的不同文件中发生过 const 变量名(和值)的冲突,仅仅是因为我太懒了,除了在不同文件中剪切和粘贴之外,我本可以通过创建一个共享模块来节省大量的工作。
  2. let – 你并不 总是 需要用 let 语句声明一个变量,但当你这样做时你的代码会更加清晰。此外,如果可以,请一定要添加变量类型。Rust 会尽最大努力猜测它应该是什么类型的变量,但它不一定总能在运行时做到这一点(在这种情况下,编译器 Cargo 会提示你),它甚至可能做不到你期望的那样。在后一种情况下,对于 Cargo 来说,抱怨你所赋值的函数(例如)与声明不一致,总比 Rust 试图帮助你做错事,而你却不得不在其他地方花费大量时间来进行调试要简单。
  3. matchmatch 对我来说是新鲜事物,我喜欢使用它。它与其他编程语言中的 switch 没有什么不同,但在 Rust 中被广泛使用。它使代码更清晰易读,如果你做了一些愚蠢的事情(例如错过一些可能的情况),Cargo 会很好地提示你。我一般的经验法则是,在管理不同的选项或进行分支时,如果可以使用 match,那就请一定要使用它。
  4. mut – 在声明一个变量时,如果它的值在声明后会发生变化,那么你需要声明它是可变的(LCTT 译注:Rust 中变量默认是不可变的)。常见的错误是在某个变量 没有 变化的情况下声明它是可变的,这时编译器会警告你。如果你收到了 Cargo 的警告,说一个可变的变量没有被改变,而你认为它被 改变 了,那么你可能要检查该变量的范围,并确保你使用的是正确的那个。
  5. return – 实际上我很少使用 return,它用于从函数中返回一个值,但是如果你只是在函数的最后一行提供值(或提供返回值的函数),通常会变得更简单,能更清晰地阅读。警告:在很多情况下,你 忘记省略这一行末尾的分号(;),如果你这样做,编译器会不高兴的。
  6. unsafe – 如其意:如果你想做一些不能保证 Rust 内存安全的事情,那么你就需要使用这个关键字。我绝对无意在现在或将来的任何时候宣布我的任何 Rust 代码不安全;Rust 如此友好的原因之一是它阻止了这种黑客行为。如果你真的需要这样做,再想想,再想想,然后重新设计代码。除非你是一个非常低级的系统程序员,否则要 避免 使用 unsafe
  7. use – 当你想使用另一个 crate 中的东西时,例如结构体、变量、函数等,那么你需要在你要使用它的代码的代码块的开头声明它。另一个常见的错误是,你这样做了,但没有在 Cargo.toml 文件中添加该 crate (最好有一个最小版本号)。

我知道,这不是我写过的最复杂的文章,但这是我在开始学习 Rust 时会欣赏的那种文章。我计划在关键函数和其他 Rust 必知知识方面编写类似的文章:如果你有任何要求,请告诉我!


本文最初发表于 Alice, Eve, and Bob 经作者许可转载。


via: https://opensource.com/article/20/10/keywords-rust

作者:Mike Bursell 选题:lujun9972 译者:mcfd 校对:wxy

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

Windows 11 正在为全球的桌面用户制造新闻。它会影响 Linux 发行版走向桌面用户吗?

微软的 Windows11 终于发布了。有些人将其与 macOS 进行比较,另一些人则比较其细枝末节发现与 GNOME 和 KDE 的相似之处(这没有多大意义)。

但是,在所有的热议当中,我对另一件事很好奇—— 微软的 Windows 11 能影响桌面 Linux 发行版未来的决策吗?

在这里,我将提到一些我的想法,即如果它以前发生过,为什么会发生?以及 Linux 发行版未来会怎样。

一些 Linux 发行版已经关注类似 Windows 的体验:但是,为什么呢?

微软的 Windows 是最受欢迎的桌面操作系统,因其易操作、软件支持和硬件兼容占据了 88% 的市场分额。

相反, Linux 占有 大约 2% 的市场分额, 即使 Linux 比 Windows 有更多的优势

那么 Linux 能做什么来说服更多的用户将 Linux 作为他们的桌面操作系统呢?

每个桌面操作系统的主要关注点应该是用户体验。当微软和苹果设法为大众提供舒适的用户体验时,Linux 发行版并没有设法在这方面取得巨大的胜利。

然而,你将会发现有几个 Linux 发行版打算取代 Windows 10。这些 Linux 发行版试图提供一个熟悉的用户界面,鼓励 Windows 用户考虑切换到 Linux 。

而且,由于这些发行版的存在,在 2021 年切换到 Linux 比以往任何时候都更有意义。

因此,为了让更多的用户跳转到 Linux ,微软 Window 多年来已经影响了许多发行版。

Windows 11 在某些方面比 Linux 好?

用户界面随着 Windows 的发展而不断的发展。即使这是主观的,它似乎是大多数桌面用户的选择。

所以我要说 Windows 11 在这方面做了一些有吸引力的改进。

不仅仅局限于 UI/UX ,比如在任务栏中集成微软团队的聊天功能,可以方便用户与任何人即时联系。

虽然 Linux 发行版没有自己成熟的服务,但是像这样定制的更多开箱即用的集成,应该会使新用户更容易上手。

并且这让我想起了 Windows 11 的另一个方面——个性化的新闻和信息提要。

当然,微软会为此收集数据,你可能需要使用微软账号登录。但这也减少了用户寻找独立应用程序来跟踪天气、新闻和其他日常信息的摩擦。

Linux 不会强迫用户做出这些选择,但是像这样的特性/集成可以作为额外的选项添加,可以以选择的形式呈现给用户。

换句话说,在与操作系统集成的同时,使事物更容易访问,应该可以摆脱陡峭的学习曲线。

而且,可怕的微软商店也在 Windows 11 上进行了重大升级。

不幸的是,对于 Linux 发行版,我没有看到对应用中心进行多少有意义的升级,来使其在视觉上更吸引人,更有趣。

elementaryOS 可能正努力专注于 UX/UI ,并不断发展应用中心的体验,但对于大多数其他发行版,没有重大的升级。

Linux Mint 20.1 中的软件管理器

虽然我很欣赏深度 Linux 在这方面所做的,但它并不是许多用户第一次尝试 Linux 时的热门选择。

Windows 11 引入了更多的竞争:Linux 必须跟上

随着 Windows 11 的推出,作为桌面选择的 Linux 将面临更多的竞争。

虽然在 Linux 世界中,我们确实有一些 Windows 10 经验的替代品,但还没有针对 Windows 11 的。

但这让我们看到了来自 Linux 社区的明显反击—— 一个针对 Windows 11 的 Linux 发行版

不管是讨厌还是喜欢微软最新的 Windows 11 设计方案,在接下来的几年里,大众将会接受它。

并且,为了使 Linux 成为一个引人注目的桌面替代品,Linux 发行版的设计语言也必须发展。

不仅仅是桌面市场,还有笔记本专用的设计选择也需要对 Linux 发行版进行重大改进。

Pop!\_OS\_System 76 这些选择一直试图为 Linux 提供这种体验,这是一个良好的开端。

我认为 Zorin OS 可以作为一个引入 “Windows 11” 布局的发行版,作为让更多用户尝试 Linux 的一个选择。

别忘了,在 Windows 11 将 Android 应用程序支持作为一项功能推向市场之后,深度 Linux 就引入了 Android 应用程序支持。

所以,你看,当微软的 Windows 采取行动时,对 Linux 也会产生连锁反应。而深度 Linux 的 Android 应用支持只是一个开始……让我们看看接下来还会出现什么。

你对 Windows 11 影响 Linux 桌面的未来有什么看法?我们也需要进化吗?或者我们应该继续与众不同,不受大众选择的影响?


via: https://news.itsfoss.com/can-windows-11-influence-linux/

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

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