Merge branch 'LCTT:master' into 1

This commit is contained in:
yjacks 2022-09-10 07:53:52 +08:00 committed by GitHub
commit 326e7df68c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
170 changed files with 17265 additions and 3259 deletions

View File

@ -0,0 +1,91 @@
[#]: subject: "Introduce the different Fedora Linux editions"
[#]: via: "https://fedoramagazine.org/introduce-the-different-fedora-linux-editions/"
[#]: author: "Arman Arisman https://fedoramagazine.org/author/armanwu/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15003-1.html"
Fedora Linux 的各种版本
======
![Introduce the differenct Fedora Linux editions][1]
我们在使用 Fedora Linux 时有不同的偏好。例如,有些人选择 Fedora Linux是因为 Fedora Workstation 默认使用 GNOME 作为其桌面环境。但也有一些人想使用 Fedora Linux 但想使用不同的桌面环境。或者也有一些人使用 Fedora Linux 有特定的需求,但不想被系统配置和应用安装所困扰。甚至有些人想根据自己的需要自由安装 Fedora Linux。因此 Fedora Linux 根据你的需要提供了多个版本。本文将介绍不同的 Fedora Linux 版本。
### Fedora 官方版本
我们从 Fedora Linux 的 <ruby>官方版本<rt>Edition</rt></ruby> 开始,即 Fedora Workstation、Fedora Server 和 Fedora IoT。 Fedora Workstation 是 Fedora Linux 的官方版本,可以安装在笔记本电脑和台式电脑上。此版本附带 GNOME 作为默认桌面环境和各种标准应用,因此 Fedora Linux 已为日常使用做好准备。而 Fedora Server 专门用于服务器用途提供邮件服务器、DNS 等的安装。最后一个是 Fedora IoT用于物联网和边缘设备生态系统。
在 Fedora 项目网站主页上你可以找到另外两个版本Fedora CoreOS 和 Fedora Silverblue。Fedora CoreOS 是一个自动更新的操作系统,旨在安全、大规模地运行容器化工作负载。而 Fedora Silverblue 是一个不可变的桌面操作系统,旨在支持以容器为中心的工作流。
![Introduce the different Fedora Linux editions: Fedora Workstation][4]
更多信息可在此链接获得:
> **[https://getfedora.org/][5]**
### Fedora 定制版:可选桌面
Fedora <ruby>定制版<rt>Spin</rt></ruby> 很受那些非常在意桌面外观的人的欢迎。大多数人都知道 Fedora Linux 只有 GNOME 作为默认桌面环境。即使你真的想使用 GNOME 以外的桌面环境,也有几个替代桌面选项。使用 Fedora 定制版,你可以在安装 Fedora Linux 时立即获得你最喜欢的桌面环境。你可以从 KDE Plasma、XFCE、LXQt、MATE、Cinnamon、LXDE 和 SoaS 中进行选择。此外对于喜欢平铺窗口管理器的人Fedora Linux 还提供了 Fedora i3 定制版,其中 i3 作为默认窗口管理器,并附带了几个标准应用。
![Introduce the different Fedora Linux editions: Fedora Plasma][6]
![Introduce the different Fedora Linux editions: Fedora Cinnamon][7]
更多信息可在此链接获得:
> **[https://spins.fedoraproject.org/][8]**
### Fedora 实验室:功能包
Fedora <ruby>实验室<rt>Lab</rt></ruby> 是根据特定需求打包的 Fedora Linux 软件包集合。因此这些版本的安装包都根据其功能提供了应用和必要的内容。Fedora 实验室提供多种软件包选择,例如<ruby>天文学<rt>Astronomy</rt></ruby><ruby>计算神经学<rt>Comp Neuro</rt></ruby><ruby>设计套件<rt>Design Suite</rt></ruby><ruby>游戏<rt>Games</rt></ruby>、JAM、<ruby>Python 教室<rt>Python Classroom</rt></ruby><ruby>安全实验室<rt>Security Lab</rt></ruby><ruby>机器人套件<rt>Robotics Suite</rt></ruby><ruby>科学<rt>Scientific</rt></ruby>。如果你想使用 Fedora Linux 进行设计工作,那么设计套件是你的正确选择。但是如果你喜欢玩游戏,你可以选择游戏版。
![Introduce the different Fedora Linux editions: Fedora Design Suite][9]
![Introduce the different Fedora Linux editions: Fedora Games][10]
更多信息可在此链接获得:
> **[https://labs.fedoraproject.org/][11]**
### Fedora 的其它下载
Fedora 的<ruby>其它下载<rt>Alt Download</rt></ruby> 集合了特定目的的可选 Fedora Linux 安装程序,例如用于测试或用于特定架构。还有其他可选格式,例如网络安装程序或种子下载等格式。在这里你可以找到<ruby>网络安装程序<rt>Network Installer</rt></ruby><ruby>种子下载<rt>Torrent Downloads</rt></ruby><ruby>可选架构<rt>Alternative Architectures</rt></ruby><ruby>云基础镜像<rt>Cloud Base Images</rt></ruby><ruby>所有内容<rt>Everything</rt></ruby><ruby>测试镜像<rt>Testing Images</rt></ruby> 和 Rawhide。
更多信息可在此链接获得:
> **[https://alt.fedoraproject.org/][12]**
### 总结
你可以自由选择适合你偏好的 Fedora Linux 版本,而不是官方版本。但是,如果你想获得具有各种桌面外观的 Fedora Linux那么 Fedora 定制版适合你。如果你希望 Fedora Linux 根据你的需要包含应用和软件包,你可以选择 Fedora 实验室。但是,如果你是专家并且想要更自由地安装 Fedora Linux你可以在 Fedora 其它下载处浏览替代选项。希望本文可以帮助你选择合适的 Fedora Linux并请在评论中分享你使用 Fedora Linux 的经验。
(题图由 [Frédéric Perez][2] 发布在 [Unsplash][3]
--------------------------------------------------------------------------------
via: https://fedoramagazine.org/introduce-the-different-fedora-linux-editions/
作者:[Arman Arisman][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://fedoramagazine.org/author/armanwu/
[b]: https://github.com/lkxed
[1]: https://fedoramagazine.org/wp-content/uploads/2021/11/FedoraMagz-FedoraEditions-Intro-816x345.png
[2]: https://unsplash.com/@fredericp?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
[3]: https://unsplash.com/s/photos/blue-abstract?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
[4]: https://fedoramagazine.org/wp-content/uploads/2021/11/g-monitor-overview.png
[5]: https://getfedora.org/
[6]: https://fedoramagazine.org/wp-content/uploads/2021/11/screenshot-kde-1024x640.jpg
[7]: https://fedoramagazine.org/wp-content/uploads/2021/11/screenshot-cinnamon-1024x576.jpg
[8]: https://spins.fedoraproject.org/
[9]: https://fedoramagazine.org/wp-content/uploads/2021/11/Fedora-Design-1024x792.png
[10]: https://fedoramagazine.org/wp-content/uploads/2021/11/Fedora-Games-1024x792.png
[11]: https://labs.fedoraproject.org/
[12]: https://alt.fedoraproject.org/

View File

@ -0,0 +1,209 @@
[#]: subject: "Ubuntu vs Manjaro: Comparing the Different Linux Experiences"
[#]: via: "https://itsfoss.com/ubuntu-vs-manjaro/"
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "Return7g"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15006-1.html"
Ubuntu 和 Manjaro比较两种不同的 Linux 发行版体验
======
![](https://img.linux.net.cn/data/attachment/album/202209/06/215515o89v2xu8v05rv759.jpg)
Ubuntu 是基于 Debian 最流行的桌面和服务器 Linux 发行版。
Manjaro 是基于 Arch 量身定制的 Linux 发行版。
两者在用户体验以及功能上都大相径庭。
然而,将 Manjaro 的 GNOME 版和 Ubuntu 放到一起比较时,其中一个共同点是 [桌面环境][1]。
但它们到底有什么不同Manjaro 的包管理器会更好用吗Ubuntu 和 Manjaro 上的软件生态怎么样?
接下来,我们来看看两个 Linux 发行版在某些关键问题上的差异。
### 发行周期
Ubuntu 根据你选择的版本不同提供了两个发行周期。如果你选择的是<ruby>长期支持版本<rt>Long Term Support</rt></ruby>LTS那么你在至少未来五年内都会收到安全维护更新。
假如你安装了 Ubuntu 22.04 ,那么你在 **2027 年 4 月** 之前都能获取更新。
![ubuntu22 04 lts about][2]
因此,我们更推荐普通桌面用户使用 LTS 版本。
如果你想要更新更好的体验,你可以选择每**九个月**更新一次的非 LTS 版本。例如 Ubuntu 21.04、 Ubuntu 21.10、Ubuntu 22.10。
需要注意的是,非 LTS 版本涉及的更改可能会影响你的工作流程以及用户体验。因此并不推荐所有人都去使用非 LTS 版本。
选择 Manjaro Linux 时你将会获得滚动发布的更新,因此你不必担心对你使用版本的支持过期。它会通过定期更新升级到最新的可用版本。
![manjaro about][3]
由于滚动发行周期的原因你可以快速获取到最新的软件包。因此如果你想使用某个软件的历史版本Manjaro 或许并不适合你。
### 桌面环境
Ubuntu 特别提供了一个定制版的 GNOME 桌面。它可能不是最新的,但如果你使用较新的 Ubuntu 版本,它基本上包含的就是最新的 GNOME 桌面环境。
![ubuntu 22 04 wallpaper][4]
CanonicalUbuntu 背后的公司)并不提供其它桌面环境。
但如果你想在 Ubuntu 上使用其它桌面环境,你可以选择包含了 KDE、Budgie、LXQt、MATE 以及 XFCE 等桌面环境的 Ubuntu 官方 <ruby>[风味版][5]<rt>Flavour</rt></ruby>。与提供了其他桌面环境的非官方版或更新的<ruby>特色版<rt>Spin</rt></ruby>的 Ubuntu 相比,它们是经过良好测试且稳定的 Ubuntu Linux 发行版。
但是这些 Ubuntu 风味版没有五年的软件支持;相反,你只能受限地得到对 LTS 版本的三年支持。
如果使用 Manjaro你可以选择官方提供的三个版本XFCE、KDE 和 GNOME。 无论桌面环境如何,你都会使用滚动发布模式。
![manjaro gnome 42][6]
当然你也可以使用 Manjaro 的一些社区版本,如 Budgie、MATE、LXQt。
### 包管理器以及软件生态
在上述这两类发行版中,找到大多数必要的 Linux 应用是没问题的。
不过Manjaro Linux 使用 Pamac 作为其包管理器而获得了更快速的体验。
![manjaro package manager][8]
与 Ubuntu 上的应用商店相比Manjaro Linux 在快速安装/更新软件方面提供了更好的体验。而且,它还支持开箱即用的 Flatpak/Snap如果你只需一键即可启用它们。
Ubuntu 比较重视 Snap 软件包,你会发现一些应用程序预装为 Snap 软件包(如 Firefox 浏览器)。
![firefox as snap][9]
对于 Manjaro Linux 来说,你可以根据自身需求决定是否启用 Flatpak/Snap。
在使用 Ubuntu 时,其应用商店提供的 Linux 应用并不是最好的。取决于你的系统配置和使用年限,它会变得越来越慢。
![ubuntu 22 04 software center][10]
除此之外Manjaro Linux 还可以访问 [AUR][11],它可以获得你在 Ubuntu 应用商店中可能找不到的几乎所有软件。
因此就软件生态系统和包管理器而言Manjaro Linux 的确要比 Ubuntu 有更多的优势。
### 易用性和目标用户
Ubuntu 桌面主要是为了易于使用而量身定制的。它专注于提供最佳的软件和硬件兼容性组合,让所有计算机用户都可以使用 Ubuntu Linux而无需了解 Linux 世界中的大部分内容。
即使有人不知道 Linux 上的“包管理器”是什么,在他们使用它时也可以完全把它作为 Windows/macOS 的完美替代品。
当然,我们也有一个指南来帮助你 [安装最新的 Ubuntu 后要做的事情][12]。
Manjaro Linux 也是为桌面用户使用量身定制的。但是它并不适合首次使用 Linux 的用户使用。
它旨在简化 Arch Linux 的操作。因此主要面向想要使用 Arch Linux 的 Linux 用户,但是增加了一些便利性。
### 稳定性
![stability tux][13]
Ubuntu LTS 版本主要关注稳定性和可靠性,因此你也可以在服务器上部署它们。
相比之下Manjaro Linux 可能没有提供现成的的稳定性。你在 Manjaro Linux 中安装软件包时需要更加仔细,同时密切注意你的配置,以确保更新不会破坏你的系统。
对于 Ubuntu 用户来说则无需担心软件更新,尤其是在考虑 LTS 版本时,更新通常不会破坏你的系统。
### 个性化
Ubuntu 特别提供了一个由 Canonical 为最终用户设置的定制 GNOME 桌面。虽然你可以自由定制你的 Linux 发行版的各个方面,但 Ubuntu 开箱即用提供定制很少。
Ubuntu 多年来一直在改进,最近增加了 [在 Ubuntu 22.04 LTS 中添加强调色][14] 的能力。 但是它仍然还有很长的路要走。
如果你想获得个性化的桌面体验,你只能借助 [GNOME Tweak][15] 等软件来实现。
对比 Manjaro GNOME你也只能使用相同的工具来自定义桌面。
Manjaro 还对外观进行了一些自定义调整。但是它提供了更多组件来更改布局和其他一些选项。
![manjaro layout][16]
在个性定制方面,你在 Manjaro 和 Ubuntu 上的体验大致相同。
如果你想要更多自定义选项Manjaro Linux 可能是一个不错的选择。但是如果你只想要个性化体验而不需要太多的改变Ubuntu 应该就足够了。
### 臃肿的软件
这对每个人来说可能都不是什么大问题。但如果你不喜欢预装许多应用程序,那么 Ubuntu 可能会令你感到麻烦。
![ubuntu 22 apps][17]
虽然可以随时删除不需要的应用程序。但是你会发现随 Ubuntu 一起安装的软件和服务还有很多。
使用 Manjaro 时你在安装时只需要安装最基础的内容即可。它们坚持使用最基础的实用程序最大限度地减少预装的软件包数量。因此Manjaro 很少会和软件臃肿联系到一起。
但是你在默认安装的 Manjaro 上可能找不到你最喜欢的 Linux 软件。因此如果你想在安装后立即使用一些你喜欢的软件Ubuntu 可能是一个不错的选择。
### 性能
![ubuntu 22 04 neofetch lolcat][18]
虽然 Ubuntu 改进了其系统表现,甚至可以在 2 GB 内存的树莓派上运行,但它仍然不是性能最好的 Linux 发行版。
当然,性能确实取决于你选择使用的桌面环境。
但是与 Manjaro 的 GNOME 版本相比Manjaro 提供了更快捷的体验。
需要注意的是性能和动画首选项的用户体验还取决于你的系统配置。例如Manjaro 的推荐系统要求1GB 内存和 1GHz 处理器)给了你使用旧电脑的机会。
但是,对于 Ubuntu在撰写本文时你至少需要 4GB 内存 和 2GHz 双核处理器,才能获得理想的桌面体验。
### 文档
考虑到 Ubuntu 的受欢迎程度Ubuntu 更易于使用,并且对新用户来说可能更舒适。
[Ubuntu 的文档][19] 即使不是最好也足够好了。
谈到 Manjaro Linux他们有一个 [维基][20],其中包含基础信息和深入的指南来帮助你入门。
总的来说,[Arch Linux 的文档][21] 非常细致,几乎每个人(甚至是老手)都会参考它来寻求帮助。
Arch Linux 的文档在很大程度上也适用于 Manjaro Linux因此在文档方面使用 Manjaro Linux 比 Ubuntu 更有优势。
### 结束语
作为两个完全不同的 Linux 发行版,它们服务于各种类型的用户。你可以选择你感兴趣的任意一个并尝试去使用它来判断它是否适合你。
但是,如果你想避免对系统进行任何更改,并专注于你的工作,那么 Ubuntu 应该是一个明智的选择。
而如果 Ubuntu 的性能对你的体验有相当大的影响,你应该去尝试 Manjaro。 你可以阅读我的 [关于从 Ubuntu 切换到 Manjaro 的初步想法][22]。
--------------------------------------------------------------------------------
via: https://itsfoss.com/ubuntu-vs-manjaro/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[Return7g](https://github.com/Return7g)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/what-is-desktop-environment/
[2]: https://itsfoss.com/wp-content/uploads/2022/05/ubuntu22-04-lts-about.png
[3]: https://itsfoss.com/wp-content/uploads/2022/05/manjaro-about.png
[4]: https://itsfoss.com/wp-content/uploads/2022/04/ubuntu-22-04-wallpaper.jpg
[5]: https://itsfoss.com/which-ubuntu-install/
[6]: https://itsfoss.com/wp-content/uploads/2022/05/manjaro-gnome-42.png
[7]: https://itsfoss.com/essential-linux-applications/
[8]: https://itsfoss.com/wp-content/uploads/2022/05/manjaro-package-manager.png
[9]: https://itsfoss.com/wp-content/uploads/2022/04/firefox-as-snap.jpg
[10]: https://itsfoss.com/wp-content/uploads/2022/04/ubuntu-22-04-software-center.jpg
[11]: https://itsfoss.com/aur-arch-linux/
[12]: https://itsfoss.com/things-to-do-after-installing-ubuntu-22-04/
[13]: https://itsfoss.com/wp-content/uploads/2022/05/stability-tux.png
[14]: https://itsfoss.com/accent-color-ubuntu/
[15]: https://itsfoss.com/gnome-tweak-tool/
[16]: https://itsfoss.com/wp-content/uploads/2022/05/manjaro-layout.png
[17]: https://itsfoss.com/wp-content/uploads/2022/05/ubuntu-22-apps.jpg
[18]: https://itsfoss.com/wp-content/uploads/2022/04/ubuntu-22-04-neofetch-lolcat-800x445.png
[19]: https://help.ubuntu.com/
[20]: https://wiki.manjaro.org/index.php/Main_Page
[21]: https://wiki.archlinux.org/
[22]: https://news.itsfoss.com/manjaro-linux-experience/

View File

@ -0,0 +1,182 @@
[#]: subject: "The Basic Concepts of Shell Scripting"
[#]: via: "https://www.opensourceforu.com/2022/05/the-basic-concepts-of-shell-scripting/"
[#]: author: "Sathyanarayanan Thangavelu https://www.opensourceforu.com/author/sathyanarayanan-thangavelu/"
[#]: collector: "lkxed"
[#]: translator: "FYJNEVERFOLLOWS"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15012-1.html"
一些 Shell 脚本的基本概念
======
> 如果你希望自动执行常规任务并使你的生活更轻松,那么使用 Shell 脚本是一个很好的选择。本文将向你介绍一些基本概念,这些概念将帮助你编写高效的 Shell 脚本。
![Shell-scripting][1]
Shell 脚本是一种被设计用来运行命令行解释器 UNIX Shell 的计算机程序。Shell 脚本的各类变种被视作脚本语言。Shell 脚本执行的典型操作包括文件操作、程序执行和文本打印。设置环境、运行程序并执行任何必要的清理或日志记录的脚本称为封装。
### 识别 Shell 命令提示符
你可以通过查看终端窗口中的提示符符号来识别 Linux 系统的计算机上的 Shell 命令提示符的用户是普通用户还是超级用户。`#` 符号用于超级用户,`$` 符号用于具有标准权限的用户。
### 基本命令
脚本附带了很多可以在终端窗口上执行的、用以管理您的计算机的命令。每个命令的详细信息可以在该命令附带的使用手册中找到。你可以使用如下命令来查看手册:
```
man <command>
```
一些常用的命令有:
```
date # 显示当前日期和时间
cal # 显示当前月份日历
df # 显示磁盘使用情况
free # 显示内存使用情况
ls # 列出文件和目录
mkdir # 创建目录
```
每个命令都附带了几个可以一起使用的选项。你可以参考使用手册以了解更多的细节。`man date` 的输出如图 1 所示。
![Figure 1: Manual of date command][2]
### 重定向操作符
当你希望捕获文件中的命令输出或重定向到文件时,可以使用重定向操作符。
| 命令 | 描述 |
| :- | :- |
| `ls -l /usr/bin >file` | 默认标准输出到文件 |
| `ls -l /usr/bin 2>file` | 重定向标准错误到文件 |
| `ls -l /usr/bin > ls-output 2>&1` | 重定向标准错误和标准输出到文件 |
| `ls -l /usr/bin &> ls-output` | 重定向标准错误和标准输出到文件 |
| `ls -l /usr/bin 2> /dev/null` | 写入 `/dev/null`,丢弃输出 |
### 大括号扩展
大括号扩展是 UNIX 提供的强大选项之一。它有助于在一行指令中使用最少的命令完成大量操作。例如:
```
$echo Front-{A,B,C}-Back
Front-A-Back, Front-B-Back, Front-C-Back
```
```
$echo {Z..A}
Z Y X W V U T S R Q P O N M L K J I H G F E D C B A
```
```
$mkdir {2009..2011}-0{1..9} {2009..2011}-{10..12}
```
这条命令会为 2009 到 2011 年里的每个月建立一个目录。
### 环境变量
环境变量是一个动态命名的值,它可以影响计算机上运行的进程的行为方式。此变量是进程运行环境的一部分。
| 命令 | 描述 |
| :- | :- |
| `printenv` | 打印出所有环境变量的值。 |
| `set` | 设置 Shell 选项 |
| `export` | 导出环境到随后执行的程序 |
| `alias` | 为命令创建别名 |
### 网络命令
网络命令对于排查网络问题和检查连接到客户机的特定端口非常有用。
| 命令 | 描述 |
| :- | :- |
| `ping` | 发送 ICMP网际网路控制讯息协定数据包 |
| `traceroute` | 打印数据包在网络中的路径 |
| `netstat` | 打印网络连接信息、路由表、接口数据 |
| `ftp`/`lftp` | 互联网文件传输程序 |
| `wget` | 非交互式网络下载器 |
| `ssh` | OpenSSH SSH 客户端 (远程登录程序) |
| `scp` | 安全拷贝 |
| `sftp` | 安全文件传输程序 |
### grep 命令
`grep` 命令用于查找系统和日志中的错误。它是 Shell 拥有的强大工具之一。
| 命令 | 描述 |
| :- | :- |
| `grep -h '.zip' file.list` | `.` 表示任意字符 |
| `grep -h '^zip' file.list` | 以 `zip` 开头 |
| `grep -h 'zip$' file.list` | 以 `zip` 结尾 |
| `grep -h '^zip$' file.list` | 只含有 `zip` |
| `grep -h '[^bz]zip' file.list` | 不含 `b``z` |
| `grep -h '^[A-Za-z0-9]' file.list` | 所有文件名有效的文件 |
### 量词
下面是一些量词的例子:
| 命令 | 描述 |
| :- | :- |
| `?` | 匹配出现 0 次或 1 次的元素 |
| `*` | 匹配出现 0 次或多次的元素 |
| `+` | 匹配出现 1 次或多次的元素 |
| `{}` | 匹配出现特定次数的元素 |
### 文本处理
文本处理是当今 IT 世界中的另一项重要任务。程序员和管理员可以使用这些命令来切片、剪切和处理文本。
| 命令 | 描述 |
| :- | :- |
| `cat -A $FILE` | 显示 `$FILE` 文件的所有内容 |
| `sort file1.txt file2.txt file3.txt > final_sorted_list.txt` | 一次性将所有文件排序 |
| `ls - l | sort -nr -k 5` | 按指定的第 5 列进行排序 |
| `sort --key=1,1 --key=2n distor.txt` | 对第 1 列进行排序(默认按字母表顺序),对第 2 列进行数值排序 |
| `sort foo.txt | uniq -c` | 查找重复的行并显示该行重复的次数 |
| `cut -f 3 distro.txt` | 剪切第 3 列 |
| `cut -c 7-10` | 剪切 7 - 10 字符 |
| `cut -d ':' -f 1 /etc/password` | 分隔符 `:` |
| `sort -k 3.7nbr -k 3.1nbr -k 3.4nbr distro.txt` | 按第 3 列第 7 个字符、第 3 列第 1 个字符和第 3 列第 4 个字符排序 |
| `paste file1.txt file2.txt > newfile.txt` | 合并两个文件 |
| `join file1.txt file2.txt` | 按公共字段连接两个文件 |
### 窍门和技巧
在 Linux 中,我们可以通过使用简单的命令或控制选项返回到命令的历史记录。
| 命令 | 描述 |
| :- | :- |
| `clear` | 清空屏幕 |
| `history` | 查看保存命令的历史记录 |
| `script filename` | 捕获文件中的所有命令执行 |
一些历史命令的技巧:
- `CTRL + R` 搜索命令历史
- `!!number`:执行编号为 `number` 的命令
- `!!` :执行上一条命令
- `!?string` : 执行包含 `string` 的上一条命令
- `!string`:执行以 `string` 开始的上一条命令
- `export HISTCONTROL=ignoredups` 忽略重复条目
- `export HISTSIZE=10000`:设置存储的历史行数
随着你对 Linux 命令逐渐熟悉,你将能够编写封装脚本。所有手动任务,如定期备份、清理文件、监控系统使用情况等,都可以使用脚本自动完成。在学习高级概念之前,本文将帮助您开始编写脚本。
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/05/the-basic-concepts-of-shell-scripting/
作者:[Sathyanarayanan Thangavelu][a]
选题:[lkxed][b]
译者:[FYJNEVERFOLLOWS](https://github.com/FYJNEVERFOLLOWS)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/sathyanarayanan-thangavelu/
[b]: https://github.com/lkxed
[1]: https://www.opensourceforu.com/wp-content/uploads/2022/04/Shell-scripting.jpg
[2]: https://www.opensourceforu.com/wp-content/uploads/2022/04/Figure-1-Manual-of-date-command.jpg

View File

@ -0,0 +1,164 @@
[#]: subject: "The only Linux command you need to know"
[#]: via: "https://opensource.com/article/22/6/linux-cheat-command"
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
[#]: collector: "lkxed"
[#]: translator: "Donkey-Hao"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14961-1.html"
“作弊”:只需要知道这一个 Linux 命令就够了
======
> Linux cheat 命令是一个实用程序,可以用来搜索和显示你想要使用的命令的使用示例。
![](https://img.linux.net.cn/data/attachment/album/202208/24/160901xi66t9pe74x7pxqp.jpg)
互联网上有很多关于 Linux 和开源的信息,但是当你想要深入工作,通常需要一份便捷的文档。早在 Linux 出现之前的 Unix 系统中,就有 `man`“manual” 的缩写)和 `info` 命令了,二者都会显示命令、配置文件、系统调用等的官方项目文档。
关于 `man``info` 页面是对知晓如何使用工具的用户的有用提醒,还是为初次使用的用户提供介绍存在争议。不管怎样,`man` 和 `info` 页面介绍了工具以及如何使用该工具,很少涉及特定任务以及如何完成它们。正是出于这个原因,开发了 `cheat` 命令。
例如,设想你想不起来如何 [解压 tar 压缩包文件][2] 。`man` 页面会给你展示所有的选项,但需要你将这些信息转换为命令:
```
tar -A [OPTIONS] ARCHIVE ARCHIVE
tar -c [-f ARCHIVE] [OPTIONS] [FILE...]
tar -d [-f ARCHIVE] [OPTIONS] [FILE...]
tar -t [-f ARCHIVE] [OPTIONS] [MEMBER...]
tar -r [-f ARCHIVE] [OPTIONS] [FILE...]
tar -u [-f ARCHIVE] [OPTIONS] [FILE...]
tar -x [-f ARCHIVE] [OPTIONS] [MEMBER...]
```
这确实是一些用户需要的,但是也使一些用户感到困惑。相比之下,`cheat` 命令会罗列常用命令:
```
$ cheat tar
# To extract an uncompressed archive:
tar -xvf /path/to/foo.tar
# To extract a .tar in specified Directory:
tar -xvf /path/to/foo.tar -C /path/to/destination/
# To create an uncompressed archive:
tar -cvf /path/to/foo.tar /path/to/foo/
# To extract a .tgz or .tar.gz archive:
tar -xzvf /path/to/foo.tgz
tar -xzvf /path/to/foo.tar.gz
[...]
```
这真是雪中送炭!
### Linux Cheat 命令
`cheat` 命令是一个实用程序,可以用来搜索和显示你想要使用的命令的使用示例。如大多数 Unix 命令一样,同一个概念有多种不同的实现方式,它包括一个 [使用 Go 编写][3] 的和一个由我帮助维护的 [仅用 100 行 Bash 编写][4] 的两个版本。
若要安装 Go 版本的,下载 [最新版][5] 并将它放在某个 [路径][6] 中,例如 `~/.local/bin/``/usr/local/bin` 中。若安装 Bash 版本,下载最新版并运行 `install-cheat.sh` 脚本:
```
$ sh ./install-cheat.sh
```
如需配置后安装,请使用 [自动工具][7]Autotools
```
$ aclocal ; autoconf
$ automake --add-missing ; autoreconf
$ ./configure --prefix=$HOME/.local
$ make
$ make install
```
### 在 Linux 中安装 Cheat 程序
Cheat 只是包含常用命令的纯文本文件。该程序可以从 [github.com/cheat/cheatsheets][8] 获得。当你第一次运行命令时Go 版本会自动为你下载支持列表。如果你使用 Bash 版本,用 `--fetch` 选项可以下载支持列表:
```
$ cheat --fetch
```
`man` 一样,你的系统上可以有多个备忘单集合。 Go 版本的 `cheat` 使用 [YAML][9] 配置文件来定义每个集合的位置。Bash 版本在安装过程中定义了路径,默认下载 [github.com/cheat/cheatsheets][10] 集合以及 [opensource.com][11] 自己的 [gitlab.com/opensource.com/cheatsheets][12] 集合。
### 列出 Cheat 支持项目
使用 `--list` 选项即可查看 `cheat` 支持的项目:
```
$ cheat --list
7z
ab
acl
alias
ansi
ansible
ansible-galaxy
ansible-vault
apk
[...]
```
### 使用 Cheat 查看 Linux 命令
使用 `cheat` 查看命令如同使用 `man``info` 查看一样简单。只需要输入你需要查询的命令即可:
```
$ cheat alias
# To show a list of your current shell aliases:
alias
# To alias `ls -l` to `ll`:
alias ll='ls -l'
```
默认情况下,`cheat` 命令会使用你的 [环境变量][13] `PAGER` 中指定的分页器。你可以在运行 `cheat` 命令前改写 `PAGER` 变量值,暂时修改环境变量。
```
$ PAGER=most cheat less
```
如果你只是想在没有 `PAGER` 的情况下将 `cheat` [输出][14] 到终端里,在 Bash 版中有 `--cat` 选项可以使用:
```
$ cheat --cat less
```
### 这并不是作弊
`cheat` 系统抓住了要害,你不必拼凑有关如何使用命令的线索,你只需按照示例进行操作即可。当然,对于复杂的命令,它不是深入研究实际文档的捷径,但为了快速借用,它还是可以的。
甚至你可以通过将文件放入其中一个备忘单集合中,来创建自己的备忘单。好消息是,因为这些项目是开源的,所以你可以将你的个人备忘单贡献给 GitHub 集合。另一个好消息是,当有新的 opensource.com [备忘单][15] 版本发布时,我们将从现在开始包含纯文本版本,以便你可以将其添加到你的收藏中。
该命令称为 “<ruby>作弊<rt>cheat</rt></ruby>”,但正如任何 Linux 用户都会向你保证的那样,它实际上并不是作弊。它只是以开源的方式工作得更巧妙。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/6/linux-cheat-command
作者:[Seth Kenlon][a]
选题:[lkxed][b]
译者:[Donkey](https://github.com/Donkey-Hao)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/seth
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/command_line_prompt.png
[2]: https://opensource.com/article/17/7/how-unzip-targz-file
[3]: https://github.com/cheat/cheat
[4]: https://gitlab.com/slackermedia/cheat
[5]: https://github.com/cheat/cheat/releases
[6]: https://opensource.com/article/17/6/set-path-linux
[7]: https://opensource.com/article/19/7/introduction-gnu-autotools
[8]: https://github.com/cheat/cheatsheets
[9]: https://opensource.com/article/21/9/yaml-cheat-sheet
[10]: https://github.com/cheat/cheatsheets
[11]: http://Opensource.com
[12]: https://gitlab.com/opensource.com/cheatsheets
[13]: https://opensource.com/article/19/8/what-are-environment-variables
[14]: https://opensource.com/article/19/2/getting-started-cat-command
[15]: https://opensource.com/downloads

View File

@ -0,0 +1,142 @@
[#]: subject: "How I use Bash to automate tasks on Linux"
[#]: via: "https://opensource.com/article/22/7/use-bash-automate-tasks-linux"
[#]: author: "Jim Hall https://opensource.com/users/jim-hall"
[#]: collector: "lkxed"
[#]: translator: "Donkey-Hao"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14983-1.html"
如何在 Linux 上使用 Bash 自动化任务
======
![](https://img.linux.net.cn/data/attachment/album/202208/30/181814f4v7ahztuaaxwqwg.jpg)
> Bash 有一些方便的自动化功能,可以让我在 Linux 上处理文件时更轻松。
通过 Bash 命令行进行自动化任务是极好的一种方式。不论你使用运行在服务器上的 Linux 进行管理日志文件或其他文件,还是你在个人电脑上整理文件以使桌面保持整洁,使用 Bash 的自动化功能会使你的工作变得更轻松。
### 自动执行文件任务for
如果你对一堆文件要同时处理,并且对每个文件进行相同的操作,请使用 `for` 命令。该命令会遍历文件列表,并执行一个或多个命令。`for` 命令如下所示:
```
for 变量 in 列表
do
    命令
done
```
我在示例中添加了额外的空白和换行,来分开 `for` 命令中不同的部分。看起来好像无法在命令行中同时运行多个命令,不过你可以使用 `;` 将所有命令放在同一行中,就像这样:
```
for 变量 in 列表 ; do 命令 ; done
```
让我们看看它的实际效果。我使用 `for` 命令来重命名一些文件。最近,我有一些截图,想要重命名。这些截图名称为 `filemgr.png``terminal.png`,我想将 `screenshot` 放在每个名称前。我可以使用 `for` 命令一次性将 30 个文件重命名。这是两个文件的示例:
```
$ ls
filemgr.png  terminal.png
$ for f in *.png ; do mv $f screenshot-$f ; done
$ ls
screenshot-filemgr.png  screenshot-terminal.png
```
`for` 命令使得在一系列文件中执行一种或多种操作变得容易。你可以用一些有意义的变量名,比如 `image``screenshot`,或者你用示例中“缩写的”变量 `f`。当我在使用 `for` 循环写脚本的时候,会选择有意义的变量名。但是当我在命令行中使用 `for`,我通常会选择缩写变量名,比如 `f` 代表文件,`d` 代表目录等。
不论你选择怎样的变量名,请确保在引用变量时添加 `$` 符号。这会将变量扩展为你正在处理的文件的名称。在 Bash 提示符下键入 `help for` 以了解有关 `for` 命令的更多信息。
### 按条件执行if
当你需要对每个文件执行相同操作时,使用 `for` 循环遍历一些文件很有帮助。但是,如果你需要对某些文件做一些不同的事情怎么办?为此,你需要使用 `if` 语句进行条件执行。`if` 语句如下所示:
```
if 测试
then
    命令
fi
```
你也可以使用 `if`、`else` 语句进行判断:
```
if 测试
then
    命令
else
    命令
fi
```
你可以使用 `if`、`elif`、` else` 语句来实现更复杂的程序。当我一次性需要自动处理很多文件时,我会在脚本中使用:
```
if 测试1
then
    命令
elif 测试2
then
    命令
elif 测试3
then
    命令
else
    命令
fi
```
`if` 命令可以让你进行各种判断,例如判断一个文件是否是一个文件,或者一个文件是否为空文件(零字节)。在命令行中输入 `help test`,可以立即查看使用 `if` 语句能够进行的各种测试。
例如,假设我想清理一个包含几十个文件的日志目录。日志管理中的一个常见任务是删除所有空日志文件,并压缩其他日志。解决这个问题的最简单方法是删除空文件。没有可以完全匹配的 `if` 测试,但是我们有 `-s` 选项来判断是否是一个文件,并且判断该文件不是空的(大小不为零)。这与我们想要的相反,但我们可以使用 `!` 来否定测试,以判断某些内容不是文件或为空。
让我们用一个示例来看看这个过程。我创建了两个测试文件:一个是空的,另一个包含一些数据。我们可以使用 `if` 判断,*如果*文件为空打印消息 `empty`
```
$ ls
datafile  emptyfile
$ if [ ! -s datafile ] ; then echo "empty" ; fi
$ if [ ! -s emptyfile ] ; then echo "empty" ; fi
empty
```
我们可以将 `if``for` 命令结合起来,检查日志文件列表中的空文件并删除:
```
$ ls -l
total 20
-rw-rw-r--. 1 jhall jhall 2 Jul  1 01:02 log.1
-rw-rw-r--. 1 jhall jhall 2 Jul  2 01:02 log.2
-rw-rw-r--. 1 jhall jhall 2 Jul  3 01:02 log.3
-rw-rw-r--. 1 jhall jhall 0 Jul  4 01:02 log.4
-rw-rw-r--. 1 jhall jhall 2 Jul  5 01:02 log.5
-rw-rw-r--. 1 jhall jhall 0 Jul  6 01:02 log.6
-rw-rw-r--. 1 jhall jhall 2 Jul  7 01:02 log.7
$ for f in log.* ; do if [ ! -s $f ] ; then rm -v $f ; fi ; done
removed 'log.4'
removed 'log.6'
$ ls -l
total 20
-rw-rw-r--. 1 jhall jhall 2 Jul  1 01:02 log.1
-rw-rw-r--. 1 jhall jhall 2 Jul  2 01:02 log.2
-rw-rw-r--. 1 jhall jhall 2 Jul  3 01:02 log.3
-rw-rw-r--. 1 jhall jhall 2 Jul  5 01:02 log.5
-rw-rw-r--. 1 jhall jhall 2 Jul  7 01:02 log.7
```
使用 `if` 命令可以在需要时执行一些操作,使脚本变得智能。我经常会在脚本中使用 `if`,当我需要判断文件在我的系统上存在或不存在时,或者判断脚本正在检查的条目是文件或目录时。使用 `if` 使得脚本能够根据需要采取不同的操作。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/7/use-bash-automate-tasks-linux
作者:[Jim Hall][a]
选题:[lkxed][b]
译者:[Donkey-Hao](https://github.com/Donkey-Hao)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/jim-hall
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/bash_command_line.png

View File

@ -0,0 +1,359 @@
[#]: subject: "How To Change GRUB Theme In Linux"
[#]: via: "https://ostechnix.com/change-grub-theme-in-linux/"
[#]: author: "sk https://ostechnix.com/author/sk/"
[#]: collector: "lkxed"
[#]: translator: "robsean"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14978-1.html"
如何在 Linux 中更改 GRUB 主题
======
![](https://img.linux.net.cn/data/attachment/album/202208/29/114710py8bi78opi2t7oop.jpg)
> 在 Linux 中安装和应用现代的漂亮的 GRUB 主题。
**GRUB** ,意即 <ruby>大统一引导程序<rt>GRand Unified Bootloader</rt></ruby> ,它是大多数 Linux 操作系统的默认引导加载程序。GRUB 引导加载程序是计算机启动时运行的第一个程序。正如你可能注意到的GRUB 菜单的默认主题是朴素的。它只有一个黑色的背景和一些白色的字符。你们中的一些人可能不喜欢默认的 GRUB 主题。在这篇教程中,我将演示如何 **更改 GRUB 主题** 或应用华丽的主题,以使你的 GRUB 菜单在 Linux 中更加精美。
数年前,我们发布了一篇指南,阐释了如何在 Ubuntu 中 [配置 GRUB2 引导加载程序设置][1] 。在这篇文章中,我们将向你展示如何更改 GRUB 背景。
但是,只更改背景不是真正的自定义。在这篇指南中,我们不仅会更改壁纸,也会更改 GRUB 的字体、主题和整体的设计。
> **免责声明:** 安装 GRUB 主题可能会破坏你的系统。我强烈建议你在一个虚拟机中尝试和测试一个主题来查看它是否没有正常工作。然后再在实际的系统上安装主题。
### 介绍
在互联网上可以找到很多社区开发的 GRUB 主题。然而,它们却散落在不同的网站上。因此,找到一个好的 GRUB 主题可能会事倍功半。
GRUB 主题的一个重要的贡献者是 **Pling** 网站。但是Pling 中的大部分主题是非常简单的或过时的。
幸运的是,我遇到一个名称为 **Gorgeous GRUB** 的项目,它是一个可以找到各种精美的 GRUB 主题的地方。相信我,作者付出了巨大的努力来收集这些主题,肯定会你喜欢的主题。
### Gorgeous GRUB一个可以找到很棒的 GRUB 主题的地方
**Gorgeous GRUB** 是一个由不同用户所创建的质量上乘的 GRUB 社区主题的收藏集合。这个项目的开发者从 **Pling** 、**/r/unixporn** 和其它很多的论坛中手工挑选漂亮的 GRUB 主题,并将它们放置到一起,以便用户可以很容易的浏览它们。
如上所述,在 Pling 中的很多主题都是粗糙和过时的。Gorgeous GRUB 的作者翻遍了 Pling 和其它一些论坛的整个 GRUB 部分,并将所有令人满意的 GRUB 主题放置到一个地方。
它们不是一些粗制滥造的主题。他们付出了大量的努力来将定制的背景、字体和颜色等融合在一起。
请注意Gorgeous GRUB 并不是一个安装你最喜欢的 GRUB 主题的应用程序。它只是一个良好工作的 GRUB 主题的展览列表。
这个项目托管在 GitHub 中。如果你有一些很酷的 GRUB 主题,你也可以将其添加到 Gorgeous GRUB 主题列表之中。
### 如何更改 GRUB 主题
应用或更改 GRUB 主题并不难。
转到 [Gorgeous GRUB 的 GitHub 网页][2] ,单击任意你想要应用的主题的标题。接下来,你将会被带到该主题的实际主页。一些主题托管在 **Pling** 之中,一些主题托管在 **GitHub** 之中。我将会看看如何安装来自 Pling 或 GitHub 的 GRUB 主题。
首先,让我们看看如何应用 “Descent” 主题,它托管在 Pling 中。
#### 1、从 Pling 安装 GRUB 主题
如果主题托管在 Pling 网站,遵循这些操作说明。
在主题主页,单击 <ruby>文件<rt>Files</rt></ruby> 标签页。你将会在图像预览的下方找到这个标签页。单击文件链接来下载它。
![Download GRUB Theme From Pling][3]
转到下载位置并提取存档文件:
```
$ tar xzf 173860-20150926\ descent.tar.gz
```
存档文件的内容将被提取到当前工作目录中一个名称为 `descent` 目录中。
使用下面的命令复制 `descent` 目录到 `/boot/grub/themes/` 目录:
```
$ sudo cp -r descent/ /boot/grub/themes/
```
如果 `themes` 目录不存在,只需要创建它:
```
$ sudo mkdir /boot/grub/themes
```
并给 `themes` 目录分配适当的权限:
```
$ sudo chown $USER /boot/grub/themes/
```
接下来,如上所述复制 `descent` 目录中内容到 `themes` 目录。
现在,你应该在 `themes` 目录中有一个以主题名称命名的文件夹:
```
$ ls /boot/grub/themes/
descent
```
并且,这个主题文件夹(例如 `descent`)应该包含 `theme.txt` 和该主题附带的其它一些相关的文件(例如,背景图像、自定义文件)。
```
$ ls /boot/grub/themes/descent/
background1280x800.png descent_score_14.pf2 menu_ne.png menu_s.png progresshigh_c.png scrollframe_c.png scroll_thumb_n.png
background_original.jpg descent_score_18.pf2 menu_n.png menu_sw.png progresshigh_e.png scrollframe_n.png scroll_thumb_s.png
copyright menu_c.png menu_nw.png menu_w.png progresshigh_w.png scrollframe_s.png select_os.png
descent_logo_bold_18.pf2 menu_e.png menu_se.png progressbar_c.png readme scroll_thumb_c.png theme.txt
```
在复制下载的主题到 `/boot/grub/themes/` 目录后,编辑 `/etc/default/grub` 文件:
在进行任意更改前,请备份 `grub` 文件,以防万一:
```
$ sudo cp /etc/default/grub /etc/default/grub.bak
```
现在,使用你喜欢的编辑器编辑文件:
```
$ sudo nano /etc/default/grub
```
找到 `GRUB_THEME=` 代码行,并添加路径到你想要使用的主题的 `theme.txt` 。并且,也要取消 `GRUB_GFXMODE=` 代码行的注释,输入背景图像的分辨率。通常,背景图像的文件名称包含其分辨率(例如 `background1280x800.png`)。
```
[...]
GRUB_THEME=/boot/grub/themes/descent/theme.txt
GRUB_GFXMODE=1280x800
[...]
```
![Enter Theme Txt File Path And Background Image Resolution][4]
再强调一次,如果这些代码行不存在,简单地添加它们。按下 `CTRL+O` 组合键 和 `CTRL+X` 组合键LCTT 校注:这是 nano 中的快捷键,如果你使用 Vi/Vim请使用相应的快捷键来保持更改并关闭文件。
现在,应用更改到 GRUB ,使用命令:
```
$ sudo update-grub
```
示例输出:
```
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
Found theme: /boot/grub/themes/descent/theme.txt
Found linux image: /boot/vmlinuz-5.15.0-41-generic
Found initrd image: /boot/initrd.img-5.15.0-41-generic
Found linux image: /boot/vmlinuz-5.15.0-39-generic
Found initrd image: /boot/initrd.img-5.15.0-39-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
done
```
![Update GRUB][5]
如果你是在基于 RPM 的系统上(例如 Fedora运行下面的命令来更新 GRUB
```
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg instead
```
重新启动你的系统。你就会看到更新后的 GRUB 主题。如果 GRUB 菜单没有出现。在打开硬件系统的电源时,立即按下 `ESC` 按键,直到启动菜单出现。
这是我的 Ubuntu 22.04 LTS 桌面的默认 GRUB 菜单。
![Ubuntu Default Grub Menu][6]
这是更新后的带有复古主题的 GRUB 菜单。
![Updated GRUB Menu With Descent Theme][7]
很酷,是吧?
##### 移除 GRUB 主题
为移除一个主题,简单地删除主题文件夹:
```
$ sudo rm -fr /boot/grub/themes/descent/
```
接下来,编辑 `/etc/default/grub` 文件:
```
$ sudo nano /etc/default/grub
```
移除下面的代码行:
```
[...]
GRUB_THEME=/boot/grub/themes/descent/theme.txt
GRUB_GFXMODE=1280x800
[...]
```
保存文件并关闭它。
最后,应用更改到 GRUB ,并重新启动你的系统:
```
$ sudo update-grub
```
```
$ sudo reboot
```
#### 2、从 GitHub 安装 GRUB 主题
如果一个 GRUB 主题托管在 GitHub 中,它很可能有安装程序脚本和卸载程序脚本。让我们以 [Modern GRUB Themes][8] 为例。它托管在 GitHub 中。
使用 Git 复刻项目的 GitHub 存储库:
```
$ git clone https://github.com/vinceliuice/grub2-themes.git
```
转到项目的文件夹:
```
$ cd grub2-themes/
```
运行安装程序脚本:
```
$ sudo ./install.sh
```
选择你喜欢的 GRUB 主题背景(例如 tela
![Choose GRUB Theme Background][9]
选择图标样式:
![Choose Icon Style][10]
选择你的显示分辨率。
![Choose Display Resolution][11]
现在选择将会安装和应用的 GRUB 主题。
```
Checking for the existence of themes directory...
Installing tela color 1080p theme...
Setting tela as default...
Updating grub config...
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/tela/theme.txt
Found linux image: /boot/vmlinuz-5.15.0-41-generic
Found initrd image: /boot/initrd.img-5.15.0-41-generic
Found linux image: /boot/vmlinuz-5.15.0-39-generic
Found initrd image: /boot/initrd.img-5.15.0-39-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
done
* All done!
* At the next restart of your computer you will see your new Grub theme: 'tela'
```
![Install Tela Modern Grub Theme][12]
重新启动你的系统来查看更改。
![Tela GRUB Theme][13]
这是一个漂亮的 GRUB 主题,前所未见。
你也可以明确地给定主题的名称和屏幕分辨率,像下面一样。
```
$ sudo ./install.sh -t whitesur -s 1080p
```
这将应用一个名称为 “Whitesur” 的主题,使用 1080p 屏幕分辨率。你可能会提及到其它的分辨率,例如 `2k` 、`4k` 、超宽(`ultrawide`)、超宽 2k`ultrawide2k` 。如果你不提及分辨率,将默认采用 `1080p`
安装 Tela 主题到 `/boot/grub/themes` 文件夹:
```
$ sudo ./install.sh -b -t whitesur
```
重新启动你的系统来查看更改。
![Whitesur GRUB Theme][14]
##### 移除 GRUB 主题
为移除已安装的一个主题,转到项目的复刻目录:
```
$ cd grub2-themes/
```
随后,运行:
```
$ sudo ./install.sh -r -t tela
```
使用你已安装的主题的名称来替换 `tela`
请注意,每个主题的安装说明可能有所不同。详细地参考每个项目的 GitHub 页面,并相应地安装主题。
### 总结
有些人喜欢使用艺术化的 Linux 发行版。他们以美化其 Linux 发行版而感到高兴和自豪。如果你是他们中的一员,你可以看看 Gorgeous GRUB 项目来美化你的 GRUB 菜单。
转到 Gorgeous GRUB 主题网站,从列表中选择你最喜欢的主题,并按照每个项目的主页说明来安装和应用 GRUB 主题。
### 资源
> **[Gorgeous GRUB 的 GitHub 存储库][15]**
--------------------------------------------------------------------------------
via: https://ostechnix.com/change-grub-theme-in-linux/
作者:[sk][a]
选题:[lkxed][b]
译者:[robsean](https://github.com/robsean)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://ostechnix.com/author/sk/
[b]: https://github.com/lkxed
[1]: https://ostechnix.com/configure-grub-2-boot-loader-settings-ubuntu-16-04/
[2]: https://github.com/jacksaur/Gorgeous-GRUB
[3]: https://ostechnix.com/wp-content/uploads/2022/07/Download-GRUB-Theme-From-Pling.png
[4]: https://ostechnix.com/wp-content/uploads/2022/07/Enter-Theme-Txt-File-Path-And-Background-Image-Resolution.png
[5]: https://ostechnix.com/wp-content/uploads/2022/07/Update-GRUB.png
[6]: https://ostechnix.com/wp-content/uploads/2022/07/Ubuntu-Default-Grub-Menu.png
[7]: https://ostechnix.com/wp-content/uploads/2022/07/Updated-GRUB-Menu.png
[8]: https://github.com/vinceliuice/grub2-themes
[9]: https://ostechnix.com/wp-content/uploads/2022/07/Choose-GRUB-Theme-Background.png
[10]: https://ostechnix.com/wp-content/uploads/2022/07/Choose-Icon-Style.png
[11]: https://ostechnix.com/wp-content/uploads/2022/07/Choose-Display-Resolution.png
[12]: https://ostechnix.com/wp-content/uploads/2022/07/Install-Tela-Modern-Grub-Theme.png
[13]: https://ostechnix.com/wp-content/uploads/2022/07/Tela-GRUB-Theme.png
[14]: https://ostechnix.com/wp-content/uploads/2022/07/Whitesur-GRUB-Theme-1.png
[15]: https://github.com/jacksaur/Gorgeous-GRUB

View File

@ -3,15 +3,18 @@
[#]: author: "Anuj Sharma https://itsfoss.com/author/anuj/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14965-1.html"
在 Manjaro 和其他基于 Arch Linux 的发行版上安装 Spotify
======
Spotify 不需要介绍。它是最流行的音乐流媒体服务。
你可以[在 web 浏览器中播放 Spotify][1],但如果你经常使用它,使用桌面应用会是一个更好的选择。
![](https://img.linux.net.cn/data/attachment/album/202208/25/133643nz8h58cl5ly8y6ly.jpg)
> Spotify 不需要介绍。它是最流行的音乐流媒体服务。
你可以 [在 Web 浏览器中播放 Spotify][1],但如果你经常使用它,使用桌面应用会是一个更好的选择。
为什么呢?因为你可以用媒体键控制播放,得到歌曲的通知,而且不需要担心不小心关闭浏览器标签或窗口。桌面客户端给人一种完整的体验。
@ -34,9 +37,9 @@ sudo pacman -Syu spotify-launcher
### 方法 1使用 pacman 安装 Spotify
Spotify 可在 Arch Linux 的社区仓库中[访问][8]。它实际上是 Spotify 提供的 APT 仓库的 Rust 实现。
Spotify 可在 Arch Linux 的社区仓库中 [找到][8]。它实际上是 Spotify 提供的 APT 仓库的 Rust 实现。
打开你的终端,按以下方式[使用 pacman 命令][9]
打开你的终端,按以下方式 [使用 pacman 命令][9]
```
sudo pacman -Syu spotify-launcher
@ -54,7 +57,7 @@ sudo pacman -Rns spotify-launcher
### 方法 2使用 Pamac 安装 Spotify
如果你使用 Manjaro 或者[在你的系统中安装了 Pamac][11],你可以用它来图形化安装 Spotify。
如果你使用 Manjaro 或者 [在你的系统中安装了 Pamac][11],你可以用它来图形化安装 Spotify。
从应用菜单中打开添加/删除软件。点击左上角的搜索图标,搜索 Spotify。然后选择名为 `spotify-launcher` 的软件包,并点击应用进行安装,如下图所示。
@ -106,7 +109,7 @@ flatpak remove spotify
### 方法 4使用 Snap 安装 Spotify
我知道很多人对 Snap 打包格式的“封闭性”非常反感。然而Spotify 官方提供了一个 Snap 包。你从 Spotify 的开发者那里得到它。
我知道很多人对 Snap 打包格式的“封闭性”非常反感。然而Spotify 官方提供了一个 Snap 包。你可以从 Spotify 的开发者那里得到它。
如果你的系统支持 Snap 包,请使用以下命令:
@ -120,9 +123,9 @@ sudo snap install spotify
sudo snap remove spotify
```
#### 总结
### 总结
第一个方法中讨论的 Arch 包是由 [kpcyrd][14] 开发和维护的。你可以在[这里][15]查看源代码。
第一个方法中讨论的 Arch 包是由 [kpcyrd][14] 开发和维护的。你可以在 [这里][15] 查看源代码。
如果你喜欢 Arch Linux 并想支持它,请考虑向该项目捐款。所有的工作都是由社区成员完成的,他们是无偿的志愿者。
@ -135,7 +138,7 @@ via: https://itsfoss.com/install-spotify-arch/
作者:[Anuj Sharma][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出

View File

@ -0,0 +1,410 @@
[#]: subject: "How to Upgrade to Linux Mint 21 [Step by Step Tutorial]"
[#]: via: "https://itsfoss.com/upgrade-linux-mint-version/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "robsean"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14975-1.html"
图解如何升级到 Linux Mint 21
======
![](https://img.linux.net.cn/data/attachment/album/202208/28/172913lzqsmfll8snzblbs.jpg)
> 这是一个周期性的更新指南,主要用于将现有的 Linux Mint 升级安装到一个新的可用版本。
在这篇文章中有三个部分,分别向你展示 Linux Mint 的不同的主要版本之间的升级步骤:
* 第 1 部分是关于从 Linux Mint 20.3 升级到 Linux Mint 21GUI 升级工具)
* 第 2 部分是关于从 Linux Mint 19.3 升级到 Linux Mint 20基于命令行的升级程序
* 第 3 部分是关于从 Linux Mint 18.3 升级到 Linux Mint 19假设一些人仍然在使用它
你可以依据你的当前的 Linux Mint 版本和需要来执行适当的步骤。
这是一个周期性的更新指南,主要用于将现有的 Linux Mint 升级安装到一个新的可用版本。
这篇指南已经更新,追加从 Mint 20.3 升级到 Linux Mint 21 的步骤。Linux Mint 现在有一个 GUI 工具来升级到最新的版本。
### 在你升级到 Linux Mint 21 之前需要知道的事情
在你继续升级到 Linux Mint 21 之前,你应该考虑下面的事情:
* 你真的需要升级吗Linux Mint 20.x 还有好几年的支持期限。
* 你将需要高速互联网连接来下载大约 14 GB 的升级数据。
* 它可能将花费几个小时的时间来完成升级过程,当然这主要取决于你的互联网速度。你必须有耐心。
* 制作一个 Linux Mint 21 的 <ruby>实况 USB<rt>Live USB</rt></ruby> 并在一次<ruby>实况会话<rt>Live session</rt></ruby> 中尝试它是否与你的硬件系统兼容会是一个好主意。较新的内核可能与较旧的硬件系统有兼容性问题,因此在真正升级或安装之前来对其进行测试可能会为你省去很多麻烦。
* 全新的安装总是比主要版本升级的更好,但是从零开始安装 Linux Mint 21 可能意味着丢失你的现有的数据。你必须在外部的外部磁盘上进行备份。
* 尽管大部分的升级是安全的,但是它也不会是 100% 的成功。你必须要有系统快照和真正的备份。
* 你只能从 Linux Mint 20.3 的 Cinnamon 、Xfce 和 MATE 版本升级到 Linux Mint 21 。首先 [检查你的 Linux Mint 版本][1] 。如果你正在使用 Linux Mint 20.2 或 20.1 ,你需要先使用更新管理器来升级到 20.3 。如果你正在使用 Linux Mint 19 ,我建议你选择进行一次的全新安装,而不是选择进行数次的升级 Mint 版本。
在你知道你将要做什么后,让我们看看如何升级到 Linux Mint 21 。
### 从 Linux Mint 20.3 升级到 Linux Mint 21
检查你的 Linux Mint 版本,并确保你正在使用 Mint 20.3 。你不能从 Linux Mint 20.1 或 20.2 升级到 Linux Mint 21 。
#### 步骤 1: 通过安装任意可用的更新来更新你的系统
使用 <ruby>菜单<rt>Menu</rt></ruby> -> <ruby>系统管理<rt>Administration</rt></ruby> -> <ruby>更新管理器<rt>Update Manager</rt></ruby> 来启动更新管理器。查看是否有一些可用的软件包更新。如果有可用的更新,先安装所有的软件包更新。
![Check for Pending Software Updates][2]
针对这一步骤,你也可用在终端中使用这一个命令:
```
sudo apt update && sudo apt upgrade -y
```
#### 步骤 2: 在外部的磁盘上备份你的文件 [可选,但是建议]
Timeshift 是一个创建系统快照的好工具,但它却不是一个针对文档、图片和其它那些非系统的、个人文件的理想工具。我建议你在一块外部磁盘上进行备份。它只是为了数据安全。
当我说在一块外部磁盘上进行一次备份时,我的意思是将你的图片、文档、下载和视频目录简单地复制和粘贴到一块外部的 USB 磁盘上。
如果你没有那样大的磁盘,至少复制那些你不可丢失的最重要的文件。
#### 步骤 3: 安装升级工具
现在,你的系统已经更新,你已经准备好升级到 Linux Mint 21 。Linux Mint 开发组提供一个名称为 [mintupgrade][3] 的 GUI 工具,用于从 Linux Mint 20.3 升级到 Linux Mint 21 。
你可用使用下面的命令来安装这个工具:
```
sudo apt install mintupgrade
```
#### 步骤 4: 从终端中运行这个 GUI 工具
你不能在应用程序菜单列表中找到这个新的 GUI 工具。为启动它,你需要在终端中输入下面的命令:
```
sudo mintupgrade
```
这个简单且全面工具将带领你完成升级过程。
![Mint Upgrade Tool Home Page][4]
在一些初始化的测试后,它将提示进行一次 Timeshift 备份。如果你已经创建了一次备份,你已经准备好下一步了。
![Upgrade Tool Prompting No Timeshift Snapshots][5]
否则,你需要在这里 [创建一个备份][6] ,因为这是强制继续的。
![Taking Snapshot With Timeshift][7]
一些 PPA 可能已经适用于 Ubuntu 22.04 ,因此也适用于 Mint 21 。但是,如果 PPA 或存储库不适用于新的版本,它可能会因为依赖关系的打断而影响升级过程。在升级工具中也会同样的提示你。
![Kazam PPA Does Not Support Jammy][8]
在这里,我将通过 Kazam 其 PPA 来使用其 [最新版本][9] 。其 PPA 仅被支持到 Impish ,因为 Linux Mint 21 是基于 Jammy 的,所以它会显示错误。
你可以在升级工具中通过软件源来指定禁用 PPA 的选项。
![Disable Unsupported PPAs in Software Sources][10]
在禁用该 PPA 后,该软件包会变成 “<ruby>陌生的<rt>foreign</rt></ruby>”,因为来自存储库中可用版本会与来自 Mnit 存储库中可用版本不匹配。因此,你需要将软件包降级到存储库中一个可用的版本。
![Downgrade Package to Avoid Conflicts][11]
升级工具现在列出需要执行更改。
![List Changes That Need to be Done][12]
在接受后,该工具将开始下载软件包。
![Phase 2 Simulation and Package Download][13]
![Package Downloading][14]
![Upgrading Phase][15]
它将列出孤立的软件包,这可以被移除。你可以通过按下 <ruby>修复<rt>Fix</rt></ruby> 按钮来移除整个建议的软件包,也可以保留某些软件包。
#### 保留某些孤立的软件包
为保留来自孤立的软件包列表中软件包,你需要从左上角的汉堡菜单转到 <ruby>首选项<rt>Preferences</rt></ruby>
![Selecting Orphan Packages You Want to Keep with Preferences][16]
在首选项对话框中,你需要转到 “<ruby>孤立的软件包<rt>Orphan Packages</rt></ruby>” 并使用 “+” 符号来通过名称添加软件包。
![Specify Name of the Package to Keep][17]
在完成后,它将继续升级,在一段时间后,将会向你提示一条成功更新的通知。
![Upgrade Successful][18]
此时,你需要重新启动你的系统。在重新启动后,你将进入到新的 Linux Mint 21 。
![Neofetch Output Linux Mint 21][19]
### 如何升级到 Linux Mint 20
在你继续升级到 Linux Mint 20 之前,你应该考虑下面的事情:
* 你真的需要升级吗Linux Mint 19.x 将会支持到 2023 年。
* 如果你 [有一款 32 位系统][20],你不能安装或升级到 Mint 20 。
* 你将需要高速互联网连接来下载大约 1.4 GB 的升级。
* 它可能将花费几个小时的时间来完成升级过程,当然这主要取决于你的互联网速度。你必须有耐心。
* 制作一个 Linux Mint 20 的 <ruby>实况 USB<rt>Live USB</rt></ruby> 并在一次实况会话中查看它是否与你的硬件系统兼容会是一个好主意。较新的内核可能与较旧的硬件系统有兼容性问题,因此在真正升级或安装之前来对其进行测试可能会为你省去很多麻烦。
* 全新的安装总是比主要版本升级的更好,但是从零开始 [安装 Linux Mint][21] 20 可能意味着丢失你的现有的数据。你必须在外部的外部磁盘上进行备份。
* 尽管大部分的升级是安全的,但是它也不会是 100% 的成功。你必须要有系统快照和真正的备份。
* 你只能从 Linux Mint 19.3 的 Cinnamon 、Xfce 和 MATE 版本升级到 Linux Mint 20 。首先 [检查你的 Linux Mint 版本][22] 。如果你正在使用 Linux Mint 19.2 或 19.1 ,你需要先使用更新管理器来升级到 19.3 。如果你正在使用 Linux Mint 18 ,我建议你选择进行一次的全新安装,而不是选择进行数次的升级 Mint 版本。
* 升级过程是通过命令行实用程序来完成的。如果你不喜欢使用终端和命令,不要升级,并进行一次全新的安装。
在你知道你将要做什么后,让我们看看如何升级到 Linux Mint 20 。
#### 步骤 1: 确保你有一款 64 位系统
Linux Mint 20 是一款仅提供 64 位的操作系统。如果你安装了一款 32 位的 Linux Mint 19 ,你不能升级到 Linux Mint 20 。
在一个终端中,使用下面的命令来查看你是否正在使用 64 位操作系统。
```
dpkg --print-architecture
```
![Mint 20 Upgrade Check Architecture][25]
#### 步骤 2: 通过安装一些可用的更新来更新你的系统
使用 <ruby>菜单<rt>Menu</rt></ruby> -> <ruby>系统管理<rt>Administration</rt></ruby> -> <ruby>更新管理器<rt>Update Manager</rt></ruby> 来启动更新管理器。查看是否有一些可用的软件包更新。如果有可用的更新,先安装所有的软件包更新。
![Check for pending software updates][26]
针对这一步骤,你也可用在终端中使用这一个命令:
```
sudo apt update && sudo apt upgrade -y
```
#### 步骤 3: 使用 Timeshift 创建一个系统快照 [可选,但是建议]
如果你遇到升级过程中断或你遇到其它的一些重大问题,[使用 Timeshift 创建一个系统快照][27] 将会解救你于水火之中。**你甚至可以使用这种方法恢复到 Mint 19.3 。**
假设你因为意外断电导致升级失败,或因为其它一些原因,你最终得到一个残缺的不稳定的 Linux Mint 19 。你可以插入一个 Linux Mint 实况 USB ,并从该实况环境中运行 Timeshift 。它将会自动地定位你的备份位置,并将允许你恢复你残缺的 Mint 19 系统。
这也意味着你应该随时携带一个 Linux Mint 19 实况 USB ,以防在极少数升级失败的情况下,你不能用一台工作的计算机创建 Linux Mint 实况 USB 。
![Create a system snapshot in Linux Mint][28]
#### 步骤 4: 在一块外部的磁盘上备份你的文件 [可选,但是建议]
Timeshift 是一个创建系统快照的好工具,但它却不是一个针对文档、图片和其它那些非系统、个人文件的理想工具。我建议你在一块外部磁盘上进行备份。它只是为了数据安全。
当我说在一块外部磁盘上进行一次备份时,我的意思是将你的图片、文档、下载和视频目录简单地复制和粘贴到一块外部的 USB 磁盘上。
如果你没有那样大的磁盘,至少复制那些你不可丢失的最重要的文件。
#### 步骤 5: 禁用 PPA 和第三方存储库 [可选,但是建议]
不出意外的话,你可能已经使用一些 [PPA][29] 或其它的存储库来安装了一下应用程序。
一些 PPA 可能已经适用于 Ubuntu 20.04 ,因此也适用于 Mint 20 。但是,如果 PPA 或存储库不适用于新的版本,它可能会因为依赖关系的打断而影响升级过程。
对此,建议你禁用 PPA 和第三方存储库。你也可以删除通过这样的外部源安装的应用程序,如果你这样做的话,不会导致配置数据的丢失。
<ruby>软件源<rt>Software Sources</rt></ruby> 工具中,禁用附加的存储库、禁用 PPA 。
![Disable Ppa Mint Upgrade][30]
你也可以在维护标签页中 **降级** **移除可用的外部的软件包** 。
例如,我使用一个 PPA 来安装 Shutter 。我在禁用它的 PPA 后,现在该软件包会变成 “<ruby>陌生的<rt>foreign</rt></ruby>”,因为来自存储库中可用版本会与来自 Mnit 存储库中可用版本不匹配。
![Foreign Package Linux Mint][31]
#### 步骤 6: 安装升级工具
现在,你的系统已经更新,你已经准备好升级到 Linux Mint 20 。Linux Mint 开发团队提供一个名称为 [mintupgrade][32] 的命令行工具,其唯一的目的是将 Linux Mint 19.3 升级到 Linux Mint 20 。
你可用使用下面的命令来安装这个工具:
```
sudo apt install mintupgrade
```
#### 步骤 7: 运行一次升级设备健康检查
`mintupgrade` 工具将会让你通过模拟升级的初始化部分来运行一次设备健康检查。
你可以运行这次检查来查看对你的系统做出何种更改,哪些软件包将会升级。它也将会显示不能升级和必须移除的软件包。
```
mintupgrade check
```
在这里,它不会在你的系统上做出任何真正的更改(即使感觉上它正在进行做一些更改)。
这一步骤是非常重要的,有助于准确评估出你的系统是否可以升级到 Mint 20 。
![Mint Upgrade Check][33]
如果这一步骤中途失败,输入 `mintupgrade restore-sources` 来返回到你原始的 APT 配置。
#### 步骤 8: 下载软件包升级
在你对 `mintupgrade`` 的检查输出感到满意后,你可以下载 Mint 20 升级软件包。
取决于你的互联网连接速度,它可能会在下载这些升级方面消耗一些时间。确保你的硬件系统接通到强电电源。
在软件包的下载期间,你可以继续使用你的系统进行常规工作。
```
mintupgrade download
```
![Mint 20 Upgrade Download][34]
注意,这行命令将把你的操作系统指向 Linux Mint 20 存储库。在使用这行命令后,如果你想降级到 Linux Mint 19.3 ,你仍然可以使用命令 `mintupgrade restore-sources` 来做到。
#### 步骤 9: 安装升级 [不可回退]
现在,万事俱备,你可以使用这行命令来升级到 Linux Mint 20
```
mintupgrade upgrade
```
给它一些时间来安装新的软件包和升级你的 Mint 到相对较新的版本。在升级过程完成后,它将要求你重新启动。
![Linux Mint 20 Upgrade Finish][35]
#### 享受 Linux Mint 20
在你重新启动你的系统后,你将看到 Mint 20 欢迎屏幕。享受新的版本。
![Welcome To Linux Mint 20][36]
### 从 Mint 18 升级到 Mint 19
从 Linux Mint 18.3 升级到 Linux Mint 19 的步骤与你在升级到 Linux Mint 20 中所看到的步骤非常类似。唯一的变化是检查显示管理器。
我将在这里快速地提及这些步骤。如果你想要更多的信息,你可以参考 Mint 20 升级过程。
**步骤 1** 使用 Timeshift 创建一个系统快照 [可选,但是建议]
**步骤 2** 在一块外部的磁盘上备份你的文件 [可选,但是建议]
**步骤 3** 确保你正在使用 LightDM
对于 Mint 19 ,你必须使用 [LightDM 显示管理器][37] 。为检查你正在使用哪种显示管理器,输入命令:
```
cat /etc/X11/default-display-manager
```
如果结果是 `/usr/sbin/lightdm`,那么你就有 LightDM ,你就可以继续前进了。
![LightDM Display Manager in Linux Mint][38]
在另一个方面,如果结果是 `/usr/sbin/mdm`,你需要安装 LightDM [切换到 LightDM][39] 并移除 MDM 。使用这行命令来安装 LightDM
```
apt install lightdm lightdm-settings slick-greeter
```
在安装期间,它将要求你选择显示管理器。你需要选择 LightDM 。
在你设置 LightDM 作为你的显示管理器后,使用下面这些命令来移除 MDM 并重新启动:
```
apt remove --purge mdm mint-mdm-themes*
sudo dpkg-reconfigure lightdm
sudo reboot
```
**步骤 4: 通过安装一些可用的更新来更新你的系统**
```
sudo apt update && sudo apt upgrade -y
```
**步骤 5: 安装升级工具**
```
sudo apt install mintupgrade
```
**步骤 6: 检查升级**
```
mintupgrade check
```
**步骤 7: 下载软件包升级**
```
mintupgrade download
```
**步骤 8: 应用升级**
```
mintupgrade upgrade
```
享受 Linux Mint 19 。
### 你升级到 Linux Mint 21 了吗?
升级到 Linux Mint 20 可能不会是一种友好的体验,但是,使用新的专用 GUI 升级工具来升级到 Mint 21 变得简单多了。
我希望你发现这篇教程有帮助。你是选择升级到 Linux Mint 21 ?还是现在一次全新的安装?
如果你遇到一些重要问题,或者你有一些关于升级过程的问题,请在评论区随时询问。
--------------------------------------------------------------------------------
via: https://itsfoss.com/upgrade-linux-mint-version/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[robsean](https://github.com/robsean)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/check-linux-mint-version/
[2]: https://itsfoss.com/wp-content/uploads/2022/08/check-for-pending-software-updates.png
[3]: https://github.com/linuxmint/mintupgrade/blob/master/usr/bin/mintupgrade
[4]: https://itsfoss.com/wp-content/uploads/2022/08/mint-upgrade-tool-home-page.png
[5]: https://itsfoss.com/wp-content/uploads/2022/08/upgrade-tool-prompting-no-timeshift-snapshots.png
[6]: https://itsfoss.com/backup-restore-linux-timeshift/
[7]: https://itsfoss.com/wp-content/uploads/2022/08/taking-snapshot-with-timeshift.png
[8]: https://itsfoss.com/wp-content/uploads/2022/08/kazam-ppa-does-not-support-jammy.png
[9]: https://itsfoss.com/kazam-screen-recorder/
[10]: https://itsfoss.com/wp-content/uploads/2022/08/disable-unsupported-ppas-in-software-sources.png
[11]: https://itsfoss.com/wp-content/uploads/2022/08/downgrade-package-to-avoid-conflicts.png
[12]: https://itsfoss.com/wp-content/uploads/2022/08/list-changes-that-need-to-be-done.png
[13]: https://itsfoss.com/wp-content/uploads/2022/08/phase-2-simulation-and-package-download-.png
[14]: https://itsfoss.com/wp-content/uploads/2022/08/package-downloading.png
[15]: https://itsfoss.com/wp-content/uploads/2022/08/upgrading-phase.png
[16]: https://itsfoss.com/wp-content/uploads/2022/08/selecting-orphan-packages-you-want-to-keep-with-preferences.png
[17]: https://itsfoss.com/wp-content/uploads/2022/08/specify-name-of-the-package-to-keep.png
[18]: https://itsfoss.com/wp-content/uploads/2022/08/upgrade-successful-800x494.png
[19]: https://itsfoss.com/wp-content/uploads/2022/08/neofetch-output-linux-mint-21.png
[20]: https://itsfoss.com/32-bit-64-bit-ubuntu/
[21]: https://itsfoss.com/guide-install-linux-mint-16-dual-boot-windows/
[22]: https://itsfoss.com/check-linux-mint-version/
[23]: https://youtu.be/LYnXEaiAjsk
[24]: https://www.youtube.com/c/itsfoss?sub_confirmation=1
[25]: https://itsfoss.com/wp-content/uploads/2020/07/mint-20-upgrade-check-architecture.jpg
[26]: https://itsfoss.com/wp-content/uploads/2020/07/update-manager-linux-mint.jpg
[27]: https://itsfoss.com/backup-restore-linux-timeshift/
[28]: https://itsfoss.com/wp-content/uploads/2018/07/snapshot-linux-mint-timeshift.jpeg
[29]: https://itsfoss.com/ppa-guide/
[30]: https://itsfoss.com/wp-content/uploads/2020/07/disable-ppa-mint-upgrade.jpg
[31]: https://itsfoss.com/wp-content/uploads/2020/07/foreign-package-linux-mint.jpg
[32]: https://github.com/linuxmint/mintupgrade/blob/master/usr/bin/mintupgrade
[33]: https://itsfoss.com/wp-content/uploads/2020/07/mint-upgrade-check.jpg
[34]: https://itsfoss.com/wp-content/uploads/2020/07/mint-upgrade-download.jpg
[35]: https://itsfoss.com/wp-content/uploads/2020/07/linux-mint-20-upgrade-finish.jpg
[36]: https://itsfoss.com/wp-content/uploads/2020/07/welcome-to-linux-mint-20.jpg
[37]: https://wiki.archlinux.org/index.php/LightDM
[38]: https://itsfoss.com/wp-content/uploads/2018/07/lightdm-linux-mint.jpeg
[39]: https://itsfoss.com/switch-gdm-and-lightdm-in-ubuntu-14-04/

View File

@ -2,26 +2,28 @@
[#]: via: "https://opensource.com/article/22/8/pdf-latex"
[#]: author: "Jim Hall https://opensource.com/users/jim-hall"
[#]: collector: "lkxed"
[#]: translator: "Donkey"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: translator: "Donkey-Hao"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14957-1.html"
使用 LaTeX 创建优美的 PDF 文件
======
使用 LaTeX 标记语言编写文件。
![](https://img.linux.net.cn/data/attachment/album/202208/23/120339s9ek65lo8cce5jj4.jpg)
LaTeX 文件准备系统有一段有趣的历史。在 1968 年,程序员 Don Knuth 用一种老式印刷排版方式,撰写了他的第一本书《计算机程序设计艺术》。当他在 1976 年出版第二版书时,出版商已经转向现代照相排版技术。
> 使用 LaTeX 标记语言来撰写文档。
LaTeX 文件准备系统有一段有趣的历史。在 1968 年,程序员 Don Knuth 用一种老式印刷排版方式,撰写了他的第一本书《<ruby>计算机程序设计艺术<rt>The Art of Computer Programming</rt></ruby>》。当他在 1976 年出版第二版时,出版商已经转向现代照相排版技术。
Knuth 对新版本的外观不满意。他从程序员的角度解决问题决定创建他自己的文字处理系统这样以后他出版的书就可以以相同格式排版拥有相同的外观。因此Don Knuth 在 1978 年编写了第一版 TeX 。
几年后, Leslie Lamport 创建了一组宏定义以便作者更容易编写复杂文档。Lamport 的宏定义扩展 LaTeX ,有效地扩展了 TeX 能够轻松创建各种文档。例如,许多学术组织使用 LaTeX 出版期刊和论文集。
几年后Leslie Lamport 创建了一组宏定义以便作者更容易编写复杂文档。Lamport 的宏定义扩展,即 LaTeX有效地扩展了 TeX 能够轻松创建各种文档。例如,许多学术组织使用 LaTeX 出版期刊和论文集。
### 使用 LaTeX 编写文档
通过写一些短文就可以很容易掌握 LaTeX 基础。让我们从 [Opensource.com][4] 介绍界面,根据该界面创建一个示例:
通过写一些短文就可以很容易掌握 LaTeX 基础。让我们从 [Opensource.com][4] 介绍页面借用一下内容,创建一个示例:
```
$ cat about.tex
@ -40,18 +42,18 @@ as a reader or a writer.
\end{document}
```
类似其他文档格式程序, LaTeX 收集关键词并填充段落 。这意味着你可以在段落中间添加新文本,而不用担心最终文档会成什么样。只要你不在段落中添加空行, LaTeX 就会创建完全对齐的段落。当它找到一个空行时, LaTeX 会开启一个新段落。
类似其他文档格式程序, LaTeX 会将单词汇集起来,填充成段落 。这意味着你可以在段落中间添加新文本,而不用担心最终文档的段落参差不齐。只要你不在段落中添加空行, LaTeX 就会创建完全对齐的段落。当它找到一个空行时, LaTeX 会开启一个新段落。
LaTeX 需要一些定义文档的控制语句。任何 LaTeX 文档应当以文档 `类别` 声明开始。LaTeX 支持多种文档,包括书信、书籍和文章。例如,我使用 `\documentclass{article}` 设置类别为 `文章`
LaTeX 需要一些定义文档的控制语句。任何 LaTeX 文档应当以“文档类别”声明开始。LaTeX 支持多种文档,包括书信、书籍和文章。例如,我使用 `\documentclass{article}` 设置类别为 “文章”
使用 `\begin{document}``\end{document}` 声明来定义文本的开始和结束。如果你在 `\begin{document}` 前添加了文本,那么 LaTeX 会报错。在 `\end{document}` 之后的文本都会被忽略。
使用 `latex` 命令使用 LaTeX 处理文档:
使用 LaTeX 的 `latex` 命令处理文档:
```
$ latex about.tex
This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2021) (preloaded format=latex)
 restricted \write18 enabled.
restricted \write18 enabled.
entering extended mode
(./about.tex
LaTeX2e <2020-10-01> patch level 4
@ -65,9 +67,9 @@ Output written on about.dvi (1 page, 736 bytes).
Transcript written on about.log.
```
LaTeX 生成许多文本,这样你就可以知道它在干什么。若你的文档包含错误, LaTeX 会报错并提示它可以做什么。大多数情况下,你可以在提示后输入 `exit` 来强制退出 LaTeX 。
LaTeX 会输出许多文本,这样你就可以知道它在干什么。若你的文档包含错误, LaTeX 会报错并提示它可以做什么。大多数情况下,你可以在提示后输入 `exit` 来强制退出 LaTeX 。
如果用 LaTeX 成功生成一个文档,会生成一个带 `.dvi` 后缀的文件。`DVI` 表示 `设备无关` (Device Independent),因为你可以使用不同的工具来生成其他格式。例如, **dvipdf** 程序将 DVI 文件转换为 PDF 文件。
如果用 LaTeX 成功生成一个文档,会生成一个带 `.dvi` 后缀的文件。`DVI` 表示 <ruby>设备无关<rt>Device Independent</rt></ruby>”,因为你可以使用不同的工具来生成其他格式。例如, `dvipdf` 程序可以将 DVI 文件转换为 PDF 文件。
```
$ dvipdf about.dvi
@ -77,7 +79,7 @@ $ dvipdf about.dvi
### 添加列表
LaTeX 支持两种列表:一种以数字开头的 `枚举` 列表,一种 `逐项` 或“项目符号”列表。在第二段后添加一个简短的枚举列表,列出人们可以参与 Opensource.com 的方式:
LaTeX 支持两种列表:一种以数字开头的 “枚举” 列表,一种 “逐项” 或 “项目符号” 列表。在第二段后添加一个简短的枚举列表,列出人们可以参与 Opensource.com 的方式:
```
\begin{enumerate}
@ -112,7 +114,7 @@ LaTeX 支持两种列表:一种以数字开头的 `枚举` 列表,一种 `
### 章节和小节
你可以将冗长文章分成多个章节,这样更易于阅读。使用 `\section{...}` 语句在大括号内添加章节标题。例如,你可以在文档顶部添加一个标题为 "关于 Opensourcecom" 的新章节:
你可以将冗长文章分成多个章节,这样更易于阅读。使用 `\section{...}` 语句在大括号内添加章节标题。例如,你可以在文档顶部添加一个标题为 “About Opensource.com” 的新章节:
```
$ head about.tex
@ -128,11 +130,11 @@ We're a diverse and inviting group, made up of staff
editors, Correspondents, contributors, and readers. We
```
使用 `article` 文档类在关键部分添加数字,并使字体变大来突出显示。
`article` 文档类会在每个主要章节添加编号,并使字体变大来突出显示。
![LaTeX output][8]
你可以使用 `\subsection{...}` 命令来组织文档。就像 `\section{...}` 命令一样,在大括号中输入副标题名称。
你可以使用 `\subsection{...}` 命令来组织文档。就像 `\section{...}` 命令一样,在大括号中输入副标题名称。
```
$ head about.tex
@ -151,9 +153,9 @@ open source and Linux tutorials, stories, and resources.
### 标题和作者
科学类的文章需要标题、作者以及发表日期。LaTeX 提供了通过插入命令的方式来添加这些信息,然后使用单独的 `\maketitle` 命令生成文章的标题。
用于出版的科学类的文章需要标题、作者以及发表日期。LaTeX 提供了通过插入命令的方式来添加这些信息,然后使用单独的 `\maketitle` 命令生成文章的标题。
"About Us" 作为文章标题,作者为 "Opensource.com Editors" ,发表日期为 "July 10, 2022" 。你必须在 `\begin{document}` 之后,文章内容前插入这些内容。
“About Us” 作为文章标题,作者为 “Opensource.com Editors”发表日期为 “July 10, 2022” 。你必须在 `\begin{document}` 之后,文章内容前插入这些内容。
```
\title{About Us}
@ -168,9 +170,9 @@ open source and Linux tutorials, stories, and resources.
### 着重强调
科学和其他技术类文章通常会突出术语和短语。 LaTeX 提供了几种可以在技术文档中使用的字体效果,包括强调文本(通常以斜体显示)、粗体文本和小型大写字母。
科学和其他技术类文章通常会突出术语和短语。 LaTeX 提供了几种可以在技术文档中使用的字体效果,包括强调文本(通常以斜体显示)、粗体文本和<ruby>小型大写字母<rt>small caps</rt></ruby>
将短语“员工编辑、通讯员、贡献者和读者”放在斜体文本中,并将特定词“读者”和“作者”放在段落后面的强调文本中。你也可以将“技能、​​才能、背景和经验”加粗。虽然这不是正确的样式设置方式,但你可以使用小型大写字母来键入 "Linux"
将短语“staff editors, Correspondents, contributors, and readers”放在斜体文本中并将特定词“reader”和“writer”放在段落后面的强调文本中。你也可以将“skills, talents, backgrounds, and experiences”加粗。虽然这不是正确的样式设置方式,但你可以使用小型大写字母来键入 “Linux”
```
$ head -20 about.tex
@ -211,7 +213,7 @@ via: https://opensource.com/article/22/8/pdf-latex
作者:[Jim Hall][a]
选题:[lkxed][b]
译者:[Donkey](https://github.com/Donkey-Hao)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出

View File

@ -3,45 +3,48 @@
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14960-1.html"
在 GNOME 中创建你自定义的浅色和深色壁纸
======
在 GNOME 桌面中创建自定义浅色和深色壁纸的简单指南。
[GNOME 42][1] 将期待已久的浅色和深色主题引入 GNOME 桌面。它还带来了浅色和深色版壁纸,当你在浅色和深色主题之间切换时,它会自动改变。
![](https://img.linux.net.cn/data/attachment/album/202208/24/104023a3do33wdizyb3zw4.jpg)
> 在 GNOME 桌面中创建自定义浅色和深色壁纸的简单指南。
[GNOME 42][1] 将期待已久的浅色和深色主题引入了 GNOME 桌面。它还带来了浅色和深色版壁纸,当你在浅色和深色主题之间切换时,它会自动改变。
因此默认情况下GNOME 会为你提供几组预配置的浅色和深色壁纸。
但是,如果你想要在主题更改时自动更改的不同壁纸怎么办?
但是,如果你想要在主题更改时可以自动更改的别的壁纸怎么办?
以下是在 GNOME 中为浅色和深色主题配置和创建自定义壁纸的方法。
### 如何为 GNOME 创建自定义浅色和深色壁纸
首先,确保桌面有两个版本的壁纸。通常,它们应该是标准的 PNG 或 JPG 图像。例如,我们在演示中使用了以下两个壁纸。
首先,确保有两个版本的壁纸。通常,它们应该是标准的 PNG 或 JPG 图像。例如,我们在演示中使用了以下两个壁纸。
![Sample light and dark wallpaper for demo][2]
但是,如果你没有合适的浅色和深色壁纸并正在寻找更多,我会告诉你如何获取它们或在本指南的末尾准备自己的。
但是,如果你没有合适的浅色和深色壁纸,或正在寻找更多壁纸,在本指南的末尾,我会告诉你如何获取它们或准备你自己的。
跟着我来。
其次,我们需要为自己创建一个模式文件。壁纸的自动更换由名为 adwaita.xml 的 XML 文件处理,该文件定义了特定的浅色和深色背景标签。因此,我们将为壁纸创建 XML 文件。
其次,我们需要为自己创建一个模式文件。壁纸的自动更换由名为 `adwaita.xml` 的 XML 文件处理,该文件定义了特定的浅色和深色背景标签。因此,我们将为壁纸创建 XML 文件。
为此,从 GitLab 复制 adwaita.xml 的内容并创建一个新的 XML 文件(链接在下面)。你应该在这个文件中看到两个标签:“filename” 和 “filename-dark”。这两个 XML 标记包含两个壁纸的完全限定路径。在这两个标签下添加图片的路径,如下所示。
为此,从 GitLab 复制 `adwaita.xml` 的内容并创建一个新的 XML 文件(链接在下面)。你应该在这个文件中看到两个标签:`filename` 和 `filename-dark`。这两个 XML 标记包含两个壁纸的完全限定路径。在这两个标签下添加图片的路径,如下所示。
[从这里下载 XML 文件 (adwaita.xml.in)][3]
> **[从这里下载 XML 文件 (adwaita.xml.in)][3]**
![Change the XML file][4]
第三步,使用你想要的任何名称将此文件保存到 **/home/your_name/.local/share/gnome-background-properties**。如果 “gnome-background-properties” 不存在,请创建它们。对此示例,我使用了 my_cool_backgrounds.xml。
第三步,使用你想要的任何名称将此文件保存到 `/home/YOUR_NAME/.local/share/gnome-background-properties`(请将 `YOUR_NAME` 替换为你的用户名)。如果 `gnome-background-properties` 不存在,请创建它们。对此示例,我使用了 `my_cool_backgrounds.xml`
![Save the file][5]
都准备好了。最后,打开设置并转到外观选项卡,你应该会看到新壁纸作为选项可见
都准备好了。最后,打开设置并转到外观选项卡,你应该会看到选项中出现壁纸。
选择你的自定义浅色和深色壁纸并享受。
@ -49,30 +52,31 @@
### 如何下载或制作你的动态壁纸
你一定会想,“谁有时间去寻找和创建白天和夜晚版本的壁纸”?一些网站为你提供现成的动态壁纸,你可以轻松下载和安装。
你一定会想,“谁有时间去寻找和创建深浅版本的壁纸”?一些网站为你提供现成的动态壁纸,你可以轻松下载和安装。
我推荐的一个网站是 [dynamicwallpaper.club][7],它为 macOS 提供了一些高达 6K 的优秀高质量壁纸。你可以轻松下载它们。
此外,如果你打算从上述网站下载,请记住该网站的图像是 [heic 格式][8],因为该网站适用于 macOS。高效视频编码 (HEIC) 是 Apple 的 HEIF 或高效图像文件格式的专有版本。
此外,如果你打算从上述网站下载,请记住该网站的图像是 [heic 格式][8],因为该网站适用于 macOS。高效视频编码HEIC是 Apple 的 HEIF高效图像文件格式的专有版本。
你需要一个驱动来查看和转换 Ubuntu 或 Fedora Linux 中的动态 heic 图像。那么,如何将它们转换为适用于 Linux 系统呢?打开终端并运行以下命令来安装驱动。
**Ubuntu 用户**
Ubuntu 用户:
```
sudo apt install heif-gdk-pixbuf
```
**Fedora 用户**
Fedora 用户:
```
sudo dnf install libheif
```
**仅适用于带有 KDE Plasma 的 Fedora/Ubuntu**没有此插件Plasma 应用无法打开 heic 图像)
仅适用于带有 KDE Plasma 的 Fedora/Ubuntu没有此插件Plasma 应用无法打开 heic 图像)
```
sudo apt install qt-heif-image-pluginsudo dnf install qt-heif-image-plugin
sudo apt install qt-heif-image-plugin
sudo dnf install qt-heif-image-plugin
```
最后,使用你喜欢的图像查看器打开 heic 图像并将其保存为 JPG/PNG。
@ -90,7 +94,7 @@ via: https://www.debugpoint.com/custom-light-dark-wallpaper-gnome/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出

View File

@ -0,0 +1,123 @@
[#]: subject: "A look inside an EPUB file"
[#]: via: "https://opensource.com/article/22/8/epub-file"
[#]: author: "Jim Hall https://opensource.com/users/jim-hall"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14967-1.html"
深入了解 EPUB 文件
======
![](https://img.linux.net.cn/data/attachment/album/202208/25/223832eo3gq2o32uz0u0ll.jpg)
> EPUB 文件是使用开放格式发布内容的好方法。
电子书提供了一种随时随地阅读书籍、杂志和其他内容的好方法。读者可以在长途飞行和乘坐火车时享受电子书打发时间。最流行的电子书文件格式是 EPUB 文件,它是“<ruby>电子出版物<rt>electronic publication</rt></ruby>”的缩写。 EPUB 文件受到各种电子阅读器的支持,并且是当今电子书出版的有效标准。
EPUB 文件格式基于 XHTML 内容和 XML 元数据的开放标准,包含在 zip 存档中。由于一切都基于开放标准,我们可以使用通用工具来创建或检查 EPUB 文件。让我们探索一个 EPUB 文件以了解更多信息。《[C 编程技巧和窍门指南][2]》,于今年早些时候在 Opensource.com 上发布,提供 PDF 或 EPUB 格式。
因为 EPUB 文件是放在 zip 文件中的 XHTML 内容和 XML 元数据,所以你可以用 `unzip` 命令在命令行检查 EPUB
```
$ unzip -l osdc_Jim-Hall_C-Programming-Tips.epub
Archive: osdc_Jim-Hall_C-Programming-Tips.epub
Length Date Time Name
--------- ---------- ----- ----
20 06-23-2022 00:20 mimetype
8259 06-23-2022 00:20 OEBPS/styles/stylesheet.css
1659 06-23-2022 00:20 OEBPS/toc.xhtml
4460 06-23-2022 00:20 OEBPS/content.opf
44157 06-23-2022 00:20 OEBPS/sections/section0018.xhtml
1242 06-23-2022 00:20 OEBPS/sections/section0002.xhtml
22429 06-23-2022 00:20 OEBPS/sections/section0008.xhtml
[...]
9628 06-23-2022 00:20 OEBPS/sections/section0016.xhtml
748 06-23-2022 00:20 OEBPS/sections/section0001.xhtml
3370 06-23-2022 00:20 OEBPS/toc.ncx
8308 06-23-2022 00:21 OEBPS/images/image0011.png
6598 06-23-2022 00:21 OEBPS/images/image0009.png
[...]
14492 06-23-2022 00:21 OEBPS/images/image0005.png
239 06-23-2022 00:20 META-INF/container.xml
--------- -------
959201 41 files
```
这个 EPUB 包含很多文件,但其中大部分是内容。要了解 EPUB 文件是如何组合在一起的,请遵循电子书阅读器的流程:
1、电子书阅读器需要验证 EPUB 文件是否真的是 EPUB 文件。他们通过检查 EPUB 存档根目录中的 `mimetype` 文件来验证文件。该文件仅包含一行描述 EPUB 文件的 MIME 类型:
```
application/epub+zip
```
2、为了定位内容电子书阅读器从 `META-INF/container.xml` 文件开始。这是一个简短的 XML 文档,指示在哪里可以找到内容。对于此 EPUB 文件,`container.xml` 文件如下所示:
```
<?xml version="1.0" encoding="UTF-8"?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package+xml"/>
</rootfiles>
</container>
```
为了使 `container.xml` 文件更易于阅读我将单行拆分为多行并添加了一些间距来缩进每行。XML 文件并不关心新行和空格等额外的空白,因此这种额外的间距不会影响 XML 文件。
3、`container.xml` 文件表示 EPUB 的根从 `OEBPS` 目录中的 `content.opf` 文件开始。OPF 扩展名是因为 EPUB 基于 “<ruby>开放打包格式<rt>Open Packaging Format</rt></ruby>”,但 `content.opf` 文件实际上只是另一个 XML 文件。
4、`content.opf` 文件包含一个完整的 EPUB 内容清单,以及一个有序的目录,以及查找每一章或每一节的引用。这个 EPUB 的 `content.opf` 文件很长,因此我将在此仅展示一小部分作为示例。
XML 数据包含在 `<package>` 块中,该块本身具有 `<metadata>` 块、`<manifest>` 数据和包含电子书目录的 `<spine>` 块:
```
<?xml version="1.0" encoding="UTF-8"?>
<package unique-identifier="unique-identifier" version="3.0" xmlns="http://www.idpf.org/2007/opf" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:opf="http://www.idpf.org/2007/opf">
<metadata>
<dc:identifier id="unique-identifier">osdc002</dc:identifier>
<dc:title>Tips and Tricks for C Programming</dc:title>
<dc:creator>Jim Hall</dc:creator>
<dc:language>English</dc:language>
<meta property="dcterms:modified">2022-06-23T12:09:13Z</meta>
<meta content="LibreOffice/7.3.0.3$Linux_X86_64 LibreOffice_project/0f246aa12d0eee4a0f7adcefbf7c878fc2238db3 (libepubgen/0.1.1)" name="generator"/>
</metadata>
<manifest>
...
<item href="sections/section0001.xhtml" id="section0001" media-type="application/xhtml+xml"/>
<item href="images/image0003.png" id="image0003" media-type="image/png"/>
<item href="styles/stylesheet.css" id="stylesheet.css" media-type="text/css"/>
<item href="toc.ncx" id="toc.ncx" media-type="application/x-dtbncx+xml"/>
...
</manifest>
<spine toc="toc.ncx">
<itemref idref="section0001"/>
<itemref idref="section0002"/>
<itemref idref="section0003"/>
...
</spine>
</package>
```
你可以把数据匹配起来看看在哪里可以找到每个部分。EPUB 阅读器就是这样做的。例如,目录中的第一项引用了 `section0001`,它在清单中被定义为位于 `sections/section0001.xhtml` 文件中。该文件的名称不需要与 `idref` 条目相同,但 LibreOffice Writer 的自动程序就是这样创建该文件的。(你可以在元数据中看到,这个 EPUB 是在 Linux 上用 LibreOffice 7.3.0.3 版本创建的,它可以将内容导出为 EPUB 文件。)
### EPUB 格式
EPUB 文件是一种使用开放格式发布内容的好方法。EPUB 文件格式是 XML 元数据与 XHTML 内容,包含在一个 zip 文件内。虽然大多数技术作家使用工具来创建 EPUB 文件,因为 EPUB 是基于开放标准,意味着你可以使用其他方式创建自己的 EPUB 文件。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/8/epub-file
作者:[Jim Hall][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/jim-hall
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/find-file-linux-code_magnifying_glass_zero.png
[2]: https://opensource.com/downloads/guide-c-programming

View File

@ -0,0 +1,135 @@
[#]: subject: "Marktext is an Excellent Editor Even for Those Who Dont Know Markdown"
[#]: via: "https://itsfoss.com/marktext-editor/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "Chth0lly"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14986-1.html"
即使对那些不知道 Markdown 的人来说Marktext 也是一个绝佳的编辑器
======
![](https://img.linux.net.cn/data/attachment/album/202208/31/170837f0kx77ewii4hkih0.jpg)
又一个 Markdown 编辑器?我们见的 Markdown 编辑器还少吗?
我明白你的感受,如果你是个 Markdown 爱好者,你可能已经用过很多 Markdown 编辑器了,比如 [Joplin][1] 和 [Zettlr][2]。但如果你不是的话,你可能根本就不在乎。
Markdown 是一个非常好的标记语言,特别是对那些在网络上写作的人来说。我不想在这里讲太多细节,但如果你有兴趣的话,我们有一篇 [非常棒的 Markdown 初学者教程][3]。
这次我想推荐给你另一个Markdown 编辑器,它叫 [Marktext][4],并且它是用 Electron 制作的(我们都明白这什么意思,先别急着埋怨我)。
我发现这将是一个很完美的编辑器。它很漂亮,而它运行起来也一样棒。下面是我这几天来的使用体验。
### Marktext: 人人可用的 Markdown 编辑器
尽管我很讨厌 [Electron 框架][5],但不得不承认基于 Electron 的应用都有一个干净、现代的界面。
![Marktext interface][6]
我更喜欢深色模式主题,除此之外官方还提供了五种其它主题。
![Marktext dark theme][7]
打开软件你就可以立刻进行写作,如果你不记得某个语法了,那也没有问题,输入 `@` 就可以得到语法提示,如:
* 标题
* 分隔线
* 表格
* Latex 数学公式
* HTML 块
* 代码块
* 引用
* 列表
* 检查清单
* 用 Vega-lite.js、Flowchart.js、js-sequence-diagrams 和 PlantUML 制作的图表
![Use various document elements in the editor by pressing @][8]
选中文本你会得到一个格式选项框,来改变文本为粗体、斜体、下划线、删除线等。你也可以用黄色背景高亮文本、转换为内联代码、内联公式或插入超链接。
![Text formatting options][9]
Marktext 也支持图片。我们都知道图片不是 Markdown 文件的一部分,它们是外部元素,但是你可以选择将图片保存到 .md 文件所在的目录下。
![Images are supported too][10]
通过插入菜单来添加图片非常容易。你可以选择文本并且从弹出的格式选项中选择图片来添加,或使用 `Ctrl+Shift+I` 快捷键。但是不能为图片添加替换文本或图片说明,这点确实需要改进。
我喜欢 Marktext 的表格功能。你可以直接插入预先定义好大小的图表。如有需要,还可以很容易的改变大小。你可以只用鼠标移动列和行,而不用担心底层的代码。
![Tables are very well supported in Marktext][11]
你可以启用侧边栏视图。侧边栏有三个功能:你可以打开包含多个 Markdown 文件的文件夹,在打开的文件夹中的所有文件上执行全局搜索,并显示当前打开的文件的大纲目录。大纲目录是根据子标题自动生成的。
![Sidebar view has three options: Show folder content, global search and table of content][12]
底部的齿轮按钮是设置功能。你可以改变主题、改变图片设置、视图、开启自动保存等等。
![Configuration and settings][13]
### 如何安装 Marktext
Marktext 是一个跨平台的开源应用程序。所以不止在 Linux 上,你还可以在 Windows 和 macOS 安装。
在 Linux 上,你可以选择 AppImage 软件包或 Flatpak 软件包。从 [这里][14] 可以得到 Marktext 的 Appimage 软件包。
我选择了 Flatpak 版本因为这样可以获得更好的系统集成。它运行良好Marktext 自动成为我的 Ubuntu 22.04 系统上 .md 文件的默认编辑器。
请确保你启用了 Flatpak 支持,之后用以下方法添加上 Flathub 仓库:
```
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
```
在这之后,用以下命令安装 Marktext 到你的系统上:
```
flatpak install flathub com.github.marktext.marktext
```
如果用了一段时间后你不喜欢 Marktext可以用以下命令卸载
```
fkatpak uninstall com.github.marktext.marktext
```
### 总结
Marktext 有很多小功能例如字数统计、Latex 数学公式、拼写检查器、复制粘贴为 Markdown/HTML 格式,我留给你们自己去尝试。
实话实说,尽管多年来一直使用 Markdown 来写文章,但我也总会忘掉一些语法。我能记得常见的标题、列表、代码块等,但如果我必须创建一个表格,我不得不在网上搜索。
我已经 [尝试了许多 Markdown 编辑器][15],这其中确实有很多不错的。但是,我还是喜欢用 Marktext它会在我的系统上存在很长时间。
如果你已经用过了话,请在评论区分享你的经验。
--------------------------------------------------------------------------------
via: https://itsfoss.com/marktext-editor/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[Chth0lly](https://github.com/Chth0lly)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/joplin/
[2]: https://itsfoss.com/zettlr-markdown-editor/
[3]: https://itsfoss.com/markdown-guide/
[4]: https://github.com/marktext/marktext/
[5]: https://www.electronjs.org/
[6]: https://itsfoss.com/wp-content/uploads/2022/08/marktext-interface.png
[7]: https://itsfoss.com/wp-content/uploads/2022/08/marktext-dark-theme.png
[8]: https://itsfoss.com/wp-content/uploads/2022/08/marktext-insert-options.png
[9]: https://itsfoss.com/wp-content/uploads/2022/08/text-formatting-options-marktext.png
[10]: https://itsfoss.com/wp-content/uploads/2022/08/images-in-marktext.png
[11]: https://itsfoss.com/wp-content/uploads/2022/08/tables-in-marktext.png
[12]: https://itsfoss.com/wp-content/uploads/2022/08/sidebar-view-marktext.png
[13]: https://itsfoss.com/wp-content/uploads/2022/08/marktext-settings.png
[14]: https://github.com/marktext/marktext/releases
[15]: https://itsfoss.com/best-markdown-editors-linux/

View File

@ -0,0 +1,71 @@
[#]: subject: "Desktop Linux Market Share: August 2022"
[#]: via: "https://itsfoss.com/linux-market-share/"
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14954-1.html"
桌面 Linux 市场份额2022 年 7 月)
======
每年,我们都会讨论 Linux 桌面年。当我们看到操作系统在消费者领域的市场份额有所增加时,却知道是无望的。
![linux desktop market share][1]
当然Linux 主导着整个云行业Web 托管、云计算、数据仓库等)。在这里,我们只关注桌面 Linux 的市场份额。
**如果你是 Linux 世界的新手**可能不知道Linux 不是一个操作系统,它是一个内核。但是,为了简单起见,我们倾向于将 “Linux” 称为操作系统。你可以在我们的解释文章中了解 [Linux 是什么][2]。
有朝一日,我们希望 Linux 发行版在未来的桌面操作市场份额中占据主导地位。但是,当前的趋势说明了什么?现在是 Linux 桌面年了吗?
趋势每个月都在变化。去年与今年相比Linux 可能市场份额更多一些。因此,跟踪最新报告至关重要。
在这里,我们试图以来自不同来源的每月更新报告的形式跟踪最新趋势。
### 操作系统市场份额2022 年 7 月
> 我们每个月都会更新可用信息。请注意,上个月的信息将在下个月发布。因此,例如,当我们在 8 月份更新报告时,它将包括 7 月份的统计数据。
在可用的桌面操作系统Windows、macOS 和 Chrome OSLinux 通常倾向于占据**第三位**。
一些最新的统计数据包括:
| 报告 | 备注 | Linux | macOS | Windows |
| -- | -- | -- | -- | -- |
| [Net Marketshare][3] | | 1.68% | 6.09% | 91.40% |
| [Statcounter][4] | | 2.76% | 14.51% | 75.21% |
| [W3Schools][5] | 最后更新于 2022 年 5 月 | 4.2% | 9.2% | 70% |
| [Steam 调查][6] | 在桌面游戏方面 | 1.23% | 1.74% | 97.03% |
| [Statista][7] | 最后更新于 2022 年 6 月 | 2.42% | 14.64% | 76.33% |
另外,参与 [Stack Overflow 调查][8] 的开发者中40.23% 的用户将基于 Linux 的操作系统用于个人用途39.89% 的用户将其用于专业用途。
每个来源都使用不同的数据收集方法。市场份额不断变化,这就是为什么我们决定定期更新此报告,而不是单独发布关于市场份额微小变化的帖子。
**总体而言**,看起来 Linux 作为桌面操作系统在开发人员中很受欢迎,并最终影响游戏玩家和其他消费者作为替代操作系统。
*你对这种趋势有何看法?你认为 Linux 会在桌面市场份额方面超过 macOS 吗?在下面的评论中分享你的想法。*
--------------------------------------------------------------------------------
via: https://itsfoss.com/linux-market-share/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/wp-content/uploads/2017/09/linux-desktop-market-share.jpg
[2]: https://itsfoss.com/what-is-linux/
[3]: https://www.netmarketshare.com/operating-system-market-share.aspx?options=%7B%22filter%22%3A%7B%22%24and%22%3A%5B%7B%22deviceType%22%3A%7B%22%24in%22%3A%5B%22Desktop%2Flaptop%22%5D%7D%7D%5D%7D%2C%22dateLabel%22%3A%22Custom%22%2C%22attributes%22%3A%22share%22%2C%22group%22%3A%22platform%22%2C%22sort%22%3A%7B%22share%22%3A-1%7D%2C%22id%22%3A%22platformsDesktop%22%2C%22dateInterval%22%3A%22Monthly%22%2C%22dateStart%22%3A%222021-12%22%2C%22dateEnd%22%3A%222022-07%22%2C%22segments%22%3A%22-1000%22%7D
[4]: https://gs.statcounter.com/os-market-share/desktop/worldwide
[5]: https://www.w3schools.com/browsers/browsers_os.asp
[6]: https://store.steampowered.com/hwsurvey/Steam-Hardware-Software-Survey-Welcome-to-Steam?platform=linux
[7]: https://www.statista.com/statistics/218089/global-market-share-of-windows-7/
[8]: https://survey.stackoverflow.co/2022/#technology-most-popular-technologies

View File

@ -0,0 +1,114 @@
[#]: subject: "Convert Docker Run Commands Into Docker-Compose Files"
[#]: via: "https://ostechnix.com/convert-docker-run-commands-into-docker-compose-files/"
[#]: author: "sk https://ostechnix.com/author/sk/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14970-1.html"
将 Docker 命令转化为 Docker Compose 文件
======
![](https://img.linux.net.cn/data/attachment/album/202208/27/150501vw3eqx2xkexemmkc.jpg)
> 使用 Composerize 从 `docker run` 命令创建 Docker Compose 文件
如果你每天在正式或个人系统中使用 Docker你应该知道有一个有用的应用叫 **Composerize**。在这个简短的指南中,我们将了解什么是 Composerize以及如何使用 Composerize 在 Linux 中**将 `docker run` 命令转换为 Docker Compose 文件**格式。
### 什么是 Composerize
[Docker Compose][1] 是一个用于定义和运行多容器 Docker 应用的工具。Docker Compose 只是一个 YAML 文件,我们在其中为 Docker 应用定义服务、网络和卷。
不是每个人都擅长写高效的 Docker Compose 文件。你们中的一些人可能会发现,甚至写一个简单的 Docker Compose 文件都很困难。不用担心! 看下 Composerize它可以帮助你从 `docker run` 命令中创建 Docker Compose 文件。
Composerize 是一个命令行和基于网络的工具,可以将 `docker run` 命令转换成 Docker Compose 文件。
无论 `docker run` 命令是简单、简短还是冗长、复杂,都没有关系。你所要做的就是把命令传给 Conposerize。Composerize 会立即将 `docker run` 命令变成 Docker Compose 文件!
### 在 Linux 中安装 Composerize
Composerize 是作为一个网络服务提供的。所以你不需要在你的系统上安装它。如果你因为任何原因想在本地安装它,请继续阅读。
Composerize 可以用 npm 安装。确保你的系统中已经安装了 Nodejs。如果没有安装请按照下面的链接来安装 Nodejs。
* **[如何在 Linux 上安装 NodeJS][2]**
安装完 Nodejs 后,运行以下命令来安装 Composerize
```
$ npm install composerize
```
该命令将只为当前用户安装 Composerize。
如果你想在全局(全系统)安装它,请运行上述命令并加上 `-g` 选项,如下所示。
```
$ npm install composerize -g
```
### 用 Composerize 将 Docker 命令转换为 Docker Compose 文件
要将 `docker run` 命令转换为 Docker Compose 格式,只需用 Composerize 运行它,如下所示:
```
$ composerize docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
```
它将以 Docker Compose 文件格式生成内容。
示例输出:
```
version: '3.3'
services:
portainer:
ports:
- '9000:9000'
volumes:
- '/var/run/docker.sock:/var/run/docker.sock'
image: portainer/portainer
```
![Convert Docker Run Commands Into Docker-Compose Files With Composerize][3]
现在在你的 `docker-compose.yml` 文件中复制上面几行。就这么简单!
正如我所说,你也可以使用 Composerize 网络服务将 `docker run` 命令转换成 Docker Compose 格式。
进入 [https://www.composerize.com/][4],将 `docker run` 命令粘贴到框中,你就会立即得到 `docker-compose.yml` 文件!
![Turn Docker Run Commands Into Docker-compose Files Using Composerize][5]
将命令转换为 Docker Compose 文件后,到你保存 `docker-compose.yml` 文件的位置,运行以下命令来启动 Docker 应用:
```
$ docker-compose up
```
Composerize 是对 Docker 用户有用的工具之一。你现在可以安全地告别漫无边际的 Docker 命令了。
资源:
* [Composerize GitHub 仓库][6]
--------------------------------------------------------------------------------
via: https://ostechnix.com/convert-docker-run-commands-into-docker-compose-files/
作者:[sk][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://ostechnix.com/author/sk/
[b]: https://github.com/lkxed
[1]: https://ostechnix.com/introduction-to-docker-compose/
[2]: https://ostechnix.com/install-node-js-linux/
[3]: https://ostechnix.com/wp-content/uploads/2022/08/Convert-Docker-Run-Commands-Into-Docker-Compose-Files-With-Composerize.png
[4]: https://www.composerize.com/
[5]: https://ostechnix.com/wp-content/uploads/2022/08/Turn-Docker-Run-Commands-Into-Docker-compose-Files-Using-Composerize.png
[6]: https://github.com/magicmark/composerize

View File

@ -0,0 +1,39 @@
[#]: subject: "Google Surpasses Microsoft In Terms Of Open Source Contributors, Says A Study"
[#]: via: "https://www.opensourceforu.com/2022/08/google-surpasses-microsoft-in-terms-of-open-source-contributors-says-a-study/"
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14955-1.html"
一项研究显示,谷歌在开源贡献方面超过了微软
======
![](https://www.opensourceforu.com/wp-content/uploads/2022/08/coding-new-1536x864.jpg)
> 根据 Aiven 的一份新报告,谷歌已经提高了其对开源软件的投入,并在活跃贡献者方面超过了微软。
根据 Aiven 的报告LCTT 译注:我没有找到这份报告),谷歌目前的活跃贡献者多于微软,这要归功于对开源代码库 GitHub 的每月提交量同比增长 20%。根据开源贡献者指数OCSI的数据谷歌 7 月份有 5421 名活跃贡献者,而微软的活跃贡献者为 5268 名。
Aiven 联合创始人兼首席技术官 Heikki Nousiainen 说,谷歌超过微软“特别令人惊讶”。
“这其中的一个因素是微软对开源项目的提交逐年下降”Nousiainen 说,“然而,微软对开发者自由和创新的投入是一致的,该公司是开源的主要参与者,甚至在 2018 年收购了 GitHub。”
Aiven 指出,亚马逊已经开始更加重视开源计划,其对 OpenSearchElasticSearch 的复刻)的支持以及 GitHub 上项目数量的增加就是证明。Nousiainen 认为,亚马逊对 OpenSearch 和 ElasticSearch 的支持代表了“该公司方向的重大改变”,以及对重大开源项目掌舵的愿望。据 Aiven 介绍,这些科技巨头正在迅速扩大对开源软件的使用。根据数据,现在来自亚马逊、微软和谷歌的活跃 GitHub 贡献者比六年前多了 300%。
“这项研究的总体信息是积极的”Nousiainen 说,“在开源社区有大量的创新在继续发生,其结果使我们所有人受益。数不清的人正在为其他人树立一个榜样。”
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/08/google-surpasses-microsoft-in-terms-of-open-source-contributors-says-a-study/
作者:[Laveesh Kocher][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
[b]: https://github.com/lkxed

View File

@ -0,0 +1,106 @@
[#]: subject: "3 NES Emulators to Play Old NES Games on Linux"
[#]: via: "https://www.debugpoint.com/3-nes-emulators-to-play-old-nes-games-in-linux/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14974-1.html"
3 个可在 Linux 上玩旧 NES 游戏的 NES 模拟器
======
![](https://img.linux.net.cn/data/attachment/album/202208/28/162533h41z1kynkyn5n53q.jpg)
> 快速了解一下在 Linux 中玩老式 NES 游戏的 3 个 NES 模拟器。此外,我们也提供了安装指南和特性介绍。
如果你想在最新的 Ubuntu、Linux Mint 版本中玩超级马里奥、口袋妖怪等老式复古游戏,有很多可用的模拟器。如果你想玩老式复古游戏,可以尝试以下三个模拟器。
### 1、ZSNES
[ZSNES][1] 是一个 [超级任天堂][2] 模拟器,可以在 Windows、Linux、FreeBSD 和 DOS 上运行。它作为 GUI 界面运行,你可以在其中加载 NES 游戏的 ROM。
这是在 Ubuntu、Debian 和 Linux Mint 中安装 ZSNES 的方法。从终端运行以下命令:
```
sudo apt install zsnes
```
对于 Fedora在 [使用这个指南设置 RPM fusion][3] 后运行以下命令进行安装。因为它需要一些 Fedora 官方发行版没有提供的模块。
```
sudo dnf install zsnes
```
安装后,从 Dash 中搜索 ZSNES 或在终端中输入 zsnes。
![ZSNES Main][4]
![Play old NES games using ZSNES in Ubuntu][5]
### 2、Higan
higan 是 Nintendos SNES、NES、Gameboy、Gameboy Color 和 Gameboy Advance 的模拟器。它以前被称为 bsnes并且 SNES 仿真特别完整和完善。
higan 努力提供最忠实的硬件仿真。它专注于准确性和简洁的代码,而不是速度和特殊功能。它旨在作为参考仿真器来记录底层硬件的工作原理。
这是从命令行安装 higan 的方法。
```
sudo apt install higan
```
![Higan Running in Ubuntu][6]
### 3、GFCEU
GNOME FCE Ultragfceu是用于 GNOME 桌面的 FCE Ultra 任天堂娱乐系统的图形前端。 Gfceu 简化了用户的游戏体验,并提供了干净、简单和直观的界面。
从终端运行以下命令,为 Ubuntu、Linux Mint 和相关发行版安装 gfceu。
```
sudo apt install gfceu
```
对于 Fedora运行以下命令进行安装。请确保在运行此命令之前 [使用这个指南设置 RPM fusion][7]。因为它需要某些官方 Fedora 发行版未提供的软件包。
```
sudo dnf install gfceu
```
![gfceu running in Ubuntu][8]
### 下载游戏 ROM
有数百个网站提供 NES ROM。这里有几个你可以下载 NES ROM 的地方。下载后,解压缩并从模拟器菜单中打开。
* [https://romsmania.cc/roms/nintendo][9]
* [https://romsmode.com/][12]
* [www.emuparadise.me][13]
使用这些模拟器享受和玩旧 NES 游戏。请让我知道你最喜欢哪一个。
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/3-nes-emulators-to-play-old-nes-games-in-linux/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.debugpoint.com/author/admin1/
[b]: https://github.com/lkxed
[1]: http://www.zsnes.com/
[2]: https://en.wikipedia.org/wiki/Super_Nintendo_Entertainment_System
[3]: https://www.debugpoint.com/enable-rpm-fusion-fedora-rhel-centos/
[4]: https://www.debugpoint.com/wp-content/uploads/2016/07/ZSNES-Main.png
[5]: https://www.debugpoint.com/wp-content/uploads/2016/07/ZSNES-Running-in-Ubuntu.png
[6]: https://www.debugpoint.com/wp-content/uploads/2016/07/Higan-Running-in-Ubuntu.png
[7]: https://www.debugpoint.com/enable-rpm-fusion-fedora-rhel-centos/
[8]: https://www.debugpoint.com/wp-content/uploads/2016/07/gfceu-running-in-Ubuntu.png
[9]: https://romsmania.cc/roms/nintendo
[12]: https://romsmode.com/
[13]: http://www.emuparadise.me/Nintendo_Entertainment_System_ROMs/13

View File

@ -0,0 +1,188 @@
[#]: subject: "How to List USB Devices Connected to Your Linux System"
[#]: via: "https://itsfoss.com/list-usb-devices-linux/"
[#]: author: "Anuj Sharma https://itsfoss.com/author/anuj/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14981-1.html"
如何列出连接到 Linux 系统的 USB 设备
======
![](https://img.linux.net.cn/data/attachment/album/202208/30/094927nu106ijzz0iiiwj1.jpg)
你如何列出 Linux 中的 USB 设备?
这个问题可以有两种含义。
* 你的系统上有(检测到)多少个 USB 端口?
* 系统安装(插入)了多少个 USB 设备/磁盘?
大多数情况下,人们有兴趣了解哪些 USB 设备连接到系统。这可能有助于对 USB 设备进行故障排除。
最可靠的方法是使用这个命令:
```
lsusb
```
它显示了网络摄像头、蓝牙和以太网端口以及 USB 端口和挂载的 USB 驱动器。
![list usb with lsusb command linux][1]
但是理解 `lsusb` 的输出并不容易,当你只想查看和访问已挂载的 USB 驱动器时,你可能不需要那么复杂。
我将向你展示可用于列出连接到系统的 USB 设备的各种工具和命令。
除非另有说明,在我的例子中连接了一个 2GB 的 U 盘、1TB 的外置硬盘、通过 MTP 连接的 Android 智能手机,以及 USB 鼠标。
让我从桌面用户最简单的选项开始。
### 以图形方式检查连接的 USB 设备
你的发行版的文件管理器可以用来查看连接到你的计算机的 USB 存储设备。正如你在下面的 NautilusGNOME 文件管理器)的截图中看到的那样。
连接的设备显示在边栏中(此处仅显示 USB 存储设备)。
![Nautilus showing connected USB devices][2]
你还可以使用 GNOME “<ruby>磁盘<rt>Disks</rt></ruby>” 或 Gparted 等 GUI 应用来查看、格式化和分区连接到计算机的 USB 存储设备。默认情况下,大多数使用 GNOME 桌面环境的发行版都预装了 GNOME “磁盘”。
这个应用也可以用作一个非常好的 [分区管理器][3]。
![Use GNOME Disks to list mounted USB devices][4]
*图形工具足够了*。让我们讨论可用于列出 USB 设备的命令。
### 使用 mount 命令列出挂载的 USB 设备
`mount` 命令用于挂载 Linux 中的分区。你还可以使用相同的命令列出 USB 存储设备。
通常USB 存储挂载在 `media` 目录中。因此,在媒体上过滤 `mount` 命令的输出将为你提供所需的结果。
```
mount | grep media
```
![][5]
### 使用 df 命令
[df 命令][6] 是一个标准的 UNIX 命令,用于了解可用磁盘空间的大小。你还可以使用此命令列出已连接的 USB 存储设备。
```
df -Th | grep media
```
![Use df command to list mounted USB drives][7]
### 使用 lsblk 命令
`lsblk` 命令用于列出终端中的块设备。因此,这里也通过过滤包含 `media` 关键字的输出,你可以获得所需的结果,如下面的截图所示。
```
lsblk | grep media
```
![Using lsblk to list connected USb devicesUsing blkid to list connected USb devices][8]
如果你想知道,也可以使用 `blkid` 命令了解 UUID、标签、块大小等。
此命令提供更多输出,因为你的内部驱动器也被列出。因此,你必须参考上述命令来识别你希望了解的设备。
```
sudo blkid
```
![Using blkid to list connected USb devices][9]
### 使用 fdisk
`fdisk` 是一款不错的老式命令行分区管理器,它还可以列出连接到你计算机的 USB 存储设备。这个命令的输出也很长。因此,通常连接的设备会列在底部,如下所示:
```
sudo fdisk -l
```
![Use fidsk to list usb devices][10]
### 检查 /proc/mounts
通过检查 `/proc/mounts` 文件,你可以列出 USB 存储设备。如你所见,它向你显示了文件系统使用的挂载选项以及挂载点。
```
cat /proc/mounts | grep media
```
![][11]
### 使用 lsusb 命令显示所有 USB 设备
我们重新审视有名的 `lsusb` 命令。
Linux 内核开发人员 [Greg Kroah-Hartman][12] 开发了这个方便的 [usbutils][13] 程序。这为我们提供了两个命令,即 `lsusb``usb-devices` 来列出 Linux 中的 USB 设备。
`lsusb` 命令列出系统中有关 USB 总线的所有信息。
```
lsusb
```
如你所见,此命令还显示了我已连接的鼠标和智能手机,这与其他命令(只能列出 USB 存储设备)不同。
![][14]
第二个命令 `usb-devices` 提供了更多详细信息,但未能列出所有设备,如下所示。
```
usb-devices
```
![][15]
Greg 还开发了一个名为 [usbview][16] 的小型 GTK 应用。此应用向你显示连接到计算机的所有 USB 设备的列表。
该应用可在大多数 Linux 发行版的官方仓库中找到。你可以使用发行版的 [包管理器][17] 轻松安装 `usbview` 包。
安装后,你可以从应用菜单启动它。你可以选择任何列出的设备以获取详细信息,如下面的截图所示。
![][18]
### 总结
这里列出的大多数方法仅限于 USB 存储设备。只有两种方法可以列出其他外围设备; usbview 和 usbutils。 我想我们应该感谢 Linux 内核开发人员 Greg 开发了这些方便的工具。
我知道还有很多方法可以列出连接到系统的 USB 设备。 欢迎你提出建议。
--------------------------------------------------------------------------------
via: https://itsfoss.com/list-usb-devices-linux/
作者:[Anuj Sharma][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/anuj/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/wp-content/uploads/2022/08/list-usb-with-lsusb-command-linux.png
[2]: https://itsfoss.com/wp-content/uploads/2022/08/nautilus-usb.png
[3]: https://itsfoss.com/partition-managers-linux/
[4]: https://itsfoss.com/wp-content/uploads/2022/08/gnome-disks-usb.png
[5]: https://itsfoss.com/wp-content/uploads/2022/08/mount-cmd-usb.png
[6]: https://linuxhandbook.com/df-command/
[7]: https://itsfoss.com/wp-content/uploads/2022/08/df-cmd-usb.png
[8]: https://itsfoss.com/wp-content/uploads/2022/08/blkid-cmd-usb.png
[9]: https://itsfoss.com/wp-content/uploads/2022/08/blkid-cmd-usb.png
[10]: https://itsfoss.com/wp-content/uploads/2022/08/fdisk-cmd-usb.png
[11]: https://itsfoss.com/wp-content/uploads/2022/08/proc-dir-usb.png
[12]: https://en.wikipedia.org/wiki/Greg_Kroah-Hartman
[13]: https://github.com/gregkh/usbutils
[14]: https://itsfoss.com/wp-content/uploads/2022/08/lsusb-cmd.png
[15]: https://itsfoss.com/wp-content/uploads/2022/08/usb-devices-cmd.png
[16]: https://github.com/gregkh/usbview
[17]: https://itsfoss.com/package-manager/
[18]: https://itsfoss.com/wp-content/uploads/2022/08/usbview.png

View File

@ -0,0 +1,122 @@
[#]: subject: "Fedora 37: Top New Features and Release Wiki"
[#]: via: "https://www.debugpoint.com/fedora-37/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14968-1.html"
Fedora 37 新功能披露
======
![](https://img.linux.net.cn/data/attachment/album/202208/26/000924lz0vl82vsq2zf0v7.jpg)
> 关于 Fedora 37 及其新特性、发布细节等等。
Fedora 37 的开发工作已经结束Beta 测试版即将来临。在这个阶段Fedora 37 的功能和软件包已经最终确定。
在这篇常规的功能指南页面中,我总结了你应该知道的关于 Fedora 37 的基本功能,让你对预期的功能有一个概念。但是在这之前,先看看暂定的时间表:
* 测试版的发布日期是 2022 年 9 月 13 日。后备日期是 2022 年 9 月 20 日。
* Fedora 37 最终版计划于 2022 年 10 月 18 日发布。后备日期是 2022 年 10 月 25 日。
![Fedora 37 Workstation with GNOME 43][1]
### Fedora 37 的主要新功能
#### 内核
首先是构成核心的关键项目。Fedora 37 采用了 Linux 内核 5.19这是目前最新的主线内核。Linux 内核 5.19 带来了一些基本功能,比如修复了 Retbleed 漏洞、支持 ARM、支持苹果 M1 NVMe SSD 控制器以及许多此类功能,你可以在我们的 [内核功能指南][2] 中了解更多。
使用最新内核的好处是,你可以保证你使用的是此时此刻最新、最好的硬件支持。
其次,桌面环境在这个版本中得到了更新。
#### 桌面环境
Fedora 37 是第一个带来令人惊叹的 GNOME 43 桌面的发行版,它带来了一些优秀的功能,比如:
* [重新改版后的快速设置功能][3],带有药片式按钮
* 移植了 GTK4 和 libadwaita 的文件管理器 v43nautilus
* 带有橡皮筋、徽章、响应式侧边栏等功能的文件管理器
* 更新了 GNOME Web支持 WebExtension API
还有许多你期待了多年的功能。请查看我的 [GNOME 43 功能指南][4] 以了解更多。
Fedora 37 带来了 KDE Plasma 5.26 桌面环境包括大量的新功能、性能改进和错误修复。KDE Plasma 桌面最值得注意的功能包括:
* 一个更新的概览屏幕
* 深色和浅色主题的动态墙纸
* 更新的 KDE 框架和应用程序
由于轻量级桌面 LXQt 更新了稳定版 1.1.0,它来到了 Fedora 37 中。LXQt 1.1.0 为深色主题带来了一个外观统一的默认调色板、应用程序菜单的两个变体(简单和紧凑)和重新排列的 GTK 设置。此外LXQt 1.1.0 也开始了 Qt 6.0 桌面组件移植的初始工作。所有这些 bug 修复和增强功能都在 Fedora LXQt 版本中出现。
此外,其他主要的桌面版本由于没有重要的新的更新到来,仍然保持在当前版本,即 Xfce 4.16 和 MATE 1.24 用在各自的 Fedora 定制版中。
让我们看看这个版本中影响所有 Fedora 定制版的系统级变化是什么。
#### 系统级的变化
最重要的变化是对树莓派 4 的正式支持。得益于多年来的努力,你现在可以在最喜欢的树莓派上享受到开箱即用的 Fedora 37 了。
Fedora Linux 一直是推动技术发展的先锋,在其他发行版之前就采用了最新的功能。因此,现在在 KDE Plasma和 Kinoite和不同的定制版中SDDM 显示管理器默认采用了 Wayland。这样从 Fedora 发行版方面就完成了 Wayland 各个定制版的过渡。
正如我 [之前的报道][5]Fedora Linux 37 计划为我们提供 Anaconda 的网页安装程序的预览镜像。它可能不会在发布后立即可用,但它应该在发布后的几天内出现。
其他值得注意的功能包括将默认的主机名从 `fedora` 改为 `localhost`,以避免一些第三方系统配置检测问题。
除此之外Fedora Core OS 被打造为 Fedora 官方版本,现在与服务器版、物联网版和云计算版同列,以便你可以更好地发现和采用它。最小资源占用的 Fedora Core OS 主要用于容器工作负载,并带来了自动更新和额外的功能。
遵循传统,这个版本也有一个 [全新的墙纸][6],有夜间和白天两个版本。我必须得说,它看起来很棒(见上面的桌面图片)。
最后在这个版本中Fedora 删除了 32 位的 Java 包,包括 JDK 8、11 和 17因为使用率很低。此外openssl 1.1 软件包也被弃用。
工具链、应用程序和编程栈更新如下:
* Glibc 2.36 和 Binutils 2.38
* Node.js 18.x
* Perl 5.36
* Python 3.11
### Fedora 37 功能摘要
那么,这个版本的功能就到此为止了。下面是对 Fedora 37 功能的总结:
* Linux 内核 5.19
* GNOME 43
* KDE Plasma 5.26
* Xfce 4.16
* MATE 1.24
* LXQt 1.1.0
* 新的基于网页的安装程序的预览镜像
* SDDM 显示管理器默认采用 Wayland在 KDE Plasma 和其他桌面环境中)。
* 官方支持树莓派 4
* Fedora Core OS 成为官方版本
* 一些关键软件包放弃了 32 位支持
* 还有相关的工具链和编程语言更新。
如果你有空闲时间,你可以 [体验一下][7]。虽然,它是非常不稳定的,不推荐运行测试版之前的开发版。
**那么,这个版本中你最喜欢的功能是什么?请在评论区告诉我**。
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/fedora-37/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.debugpoint.com/author/admin1/
[b]: https://github.com/lkxed
[1]: https://www.debugpoint.com/wp-content/uploads/2022/08/Fedora-37-Workstation-with-GNOME-43-1024x572.jpg
[2]: https://www.debugpoint.com/linux-kernel-5-19/
[3]: https://www.debugpoint.com/gnome-43-quick-settings/
[4]: https://www.debugpoint.com/gnome-43/
[5]: https://debugpointnews.com/fedora-37-anaconda-web-ui-installer/
[6]: https://debugpointnews.com/fedora-37-wallpaper/
[7]: https://dl.fedoraproject.org/pub/fedora/linux/development/37/Workstation/x86_64/iso/

View File

@ -0,0 +1,96 @@
[#]: subject: "Linux-First AI Image Upscaler Upscayl Released its First Version"
[#]: via: "https://news.itsfoss.com/upscayl-version-1-release/"
[#]: author: "Abhishek https://news.itsfoss.com/author/abhishek/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14976-1.html"
Linux 优先的 AI 图像提升器 Upscayl 发布了第一个版本
======
> 你不是每天都能遇到一个采用 “Linux 优先” 方式的应用程序。
![Linux-First AI Image Upscaler Upscayl Released its First Version][1]
你是不是有一张世纪初的像素化、低分辨率的图片?由于人工智能的进步,你可以轻松地将像素化的图像提升为分辨率更好的图像。
使用普通的图像编辑器需要人工的努力来提升图像。
有大量的在线人工智能图像提升器,但是你不能信任它们对你的数据的处理。
一个新的项目试图解决这个问题,为你提供一个简单的桌面应用程序,让你在一次点击中增强低分辨率照片。
它的第一个版本已经发布。
### Upscayl 的功能
[Upscayl][2] 是一个跨平台的应用程序,以 Linux 优先的理念构建。
这仅仅意味着 Linux 的构建得到优先考虑,但其他平台也会得到支持。
Upscayl 使用 Python 和 JavaScript 开发,给出了一个简单的界面,你可以选择输入图片和输出文件夹,然后点击 “Upscayl” 按钮来增强图片。
### 使用 Upscayl
我的电脑上没有太多模糊的照片。并不是说我是一个优秀的摄影师,只是懒得在成千上万的照片中寻找它们。
不过,我还是设法弄到了一张 2011 年的模糊的老照片(那是 11 年前的照片,现在可以说是老照片了)。
![厨房的模糊老照片][4]
不要因为我随手拍了一张厨房柜台的照片而对我做出评价。一定有一个很好的理由(或者我觉得)。
无论如何。我试着用 Upscayl 对图片进行放大。
![使用 Upscayl][5]
这需要相当大的处理能力,但我的 8 核、第 11 代 i7 处理器和 16GB 内存可以轻松应对。
![Upscayl 工作时 CPU 的使用情况][6]
单张图片的处理花了大约 4 分钟435KB 的图片最终变成了 24MB 的图片。说实话,我几乎没有注意到明显的差异。
![由 Upscayl 放大的图像][7]
我想把最后的结果嵌入这里的文章中。但是上传一张 24MB 的图片对我的服务器和你的浏览器来说都有点过分。
### 安装 Upscayl
不过,我这个不怎么成功的实验不应该阻止你自己去尝试它。
目前,该应用程序可用于 Linux。对 Windows 和 macOS 的支持正在计划中。
你可以得到 Upscayl 的 AppImage 和 Flatpak 软件包。我使用的是 AppImage 版本,你可以使用你喜欢的任何一种。
这些文件可以在发布页面上找到。
> **[下载 Upscayl][8]**
如果你喜欢这个项目,别忘了在 GitHub 上给它加星。
> **[GitHub - TGS963/upscayl][9]**
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/upscayl-version-1-release/
作者:[Abhishek][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/abhishek/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/upscayl-image-upscaler.png
[2]: https://github.com/TGS963/upscayl
[3]: https://news.itsfoss.com/content/media/2022/08/upscayl-in-action.mp4
[4]: https://news.itsfoss.com/content/images/2022/08/old-blurry-photo.jpg
[5]: https://news.itsfoss.com/content/images/2022/08/Using-Upscayl-for-image-processing.png
[6]: https://news.itsfoss.com/content/images/2022/08/Upscayl-CPU-usage.png
[7]: https://news.itsfoss.com/content/images/2022/08/Upscayl-final-result.png
[8]: https://github.com/TGS963/upscayl/releases
[9]: https://github.com/TGS963/upscayl

View File

@ -0,0 +1,69 @@
[#]: subject: "The 80-Year Computer Scientist Who Termed 'Unix' Adds Unicode Support to AWK Code"
[#]: via: "https://news.itsfoss.com/unix-awk-unicode/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14964-1.html"
80 高龄的计算机科学家曾为 “Unix” 命名,如今为 AWK 代码添加了 Unicode 支持
======
> 布莱恩·克尼汉在 80 岁的时候还在积极为他的原始项目 AWK 增加代码贡献。这真是鼓舞人心!
![这位 80 岁的计算机科学家曾提出 “Unix” 这一名字,在 AWK 代码中加入了 Unicode 支持][1]
<ruby>布莱恩·克尼汉<rt>Brian Kernighan</rt></ruby> 因其与 Unix 的创造者 <ruby>肯·汤普森<rt>Ken Thompson</rt></ruby><ruby>丹尼斯·里奇<rt>Dennis Ritchie</rt></ruby> 一起的工作而广为人知。他对 Unix 的发展做出了重大贡献。
不仅如此,布莱恩·克尼汉还提出了 “Unix” 这个名字,并创造了 “Hello, world” 作为程序的测试短语。
他也是《C 编程语言》一书的共同作者(另一位是丹尼斯·里奇)。因此,可以说他是你所知道的关于 Unix、Linux、BSD 和 C 编程语言的演变的重要组成部分。
而且,作为一位如今已 80 岁的老人家,他似乎投入了一些时间来为 AWK一种他在上世纪 70 年代共同创造的脚本语言)增加了一个新的功能。
💙 这真是妙极了,对吗?而且,听起真是鼓舞人心!
AWK 仍然是一个处理文本和提取数据的强大工具,忠实于它的最初目的。如果你感到好奇,你可以在 [freeCodeCamp][2] 上了解更多关于它的信息。
### 为 AWK 添加 Unicode 支持
最近,[The Register][3] 通过一篇发表在 YouTube 上的近期采访,发现了这个功能的增加。
从技术上讲,这项贡献早在几个月前就有了,但现在它才得到人们的关注。
![和 Brian Kernighan 喝杯咖啡 - Computerphile][4]
当然,这个功能的增加对很多人来说可能不是什么大事。但是,它背后的努力,以及谁贡献了它,就有了天壤之别。
此外,有趣的是,他并不完全了解 Git 的工作原理。所以,考虑到这一点,我认为他在这里的提交做得相当好。
在这个提交 “[附上 BWK 的邮件 - onetrueawk/awk@9ebe940][5]” 中,他提到:
> 一旦我搞清楚了(并做了一些检查,我将尝试提交一个拉取请求。我希望我更了解 git但尽管有你的帮助我仍然没能正确地理解所以这可能需要一段时间。
如果你对 Unix 的原始创造者和贡献者以及一路走来的许多重要创新有好奇心,我建议你观看上面链接的采访。
你也可以在 [普林斯顿大学网站][6] 上查看他的更多工作和最近的书籍。
💬 那么,你对这位 80 岁的 Unix 传奇人物的代码贡献有何看法?你有什么特别佩服他的地方吗?请在下面的评论中分享你的想法。
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/unix-awk-unicode/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/brian-awk-creator.jpg
[2]: https://www.freecodecamp.org/news/the-linux-awk-command-linux-and-unix-usage-syntax-examples/
[3]: https://www.theregister.com/2022/08/23/universal_unix_tool_awk_gets/
[4]: https://youtu.be/GNyQxXw_oMQ
[5]: https://github.com/onetrueawk/awk/commit/9ebe940cf3c652b0e373634d2aa4a00b8395b636
[6]: https://www.cs.princeton.edu/~bwk/

View File

@ -0,0 +1,60 @@
[#]: subject: "My open source journey from user to contributor to CTO"
[#]: via: "https://opensource.com/article/22/8/my-open-source-career-story"
[#]: author: "Jesse White https://opensource.com/users/jwhite-0"
[#]: collector: "lkxed"
[#]: translator: "aftermath0703"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14971-1.html"
从用户到贡献者到 CTO 的开源之旅
======
![](https://img.linux.net.cn/data/attachment/album/202208/27/154503q9yw0rewy2ge2r8f.jpg)
> 任何考虑在开源领域发展的人都具有无限的可能性。下面是我的故事。
当人们问我最喜欢开源的什么时,我的回答很简单:那就是 *开放性* 。在开源中,社区开发者和贡献者所做的工作是在公共领域的,所有人都能看到并从中受益。我对这一理念爱不释手。
有多少人可以对他们的劳动成果这样说?有多少人,也许在 50 年后,可以回过头来说:“看看我那天写的代码,有几百/几千/几万人从中受益。”我觉得这比从事那些对世界上大多数人来说都是隐秘的软件工作更令人无比兴奋。
我很幸运,我的工作使我置身于一个开源和企业交叉的有趣领域中。如今,我是 [OpenNMS 集团][2] 的首席技术官,这家公司负责维护 [OpenNMS 项目][3]。OpenNMS 是一个领先的开源网络监控和管理平台。
虽然我现在的角色让我牢牢扎根于开源领域,但我是以用户和贡献者身份开始的。
2007 年,我得到了我的第一份真正的技术工作,在加拿大蒙特利尔的电信服务提供商 Datavalet 技术公司从事网络分析。在五年的时间内,我成长为解决方案架构师,任务是帮助公司选择网络管理解决方案。我们选择了 OpenNMS正是通过这次经历我认识到了开源的真正力量。
在平台上线时,我们发现了一些缺失的功能,这些功能将有助于优化我们的体验。一位来自 OpenNMS 集团的代表在现场帮助我们进行部署,并建议我参加社区即将举行的 DevJam与核心开发人员一起建立我们需要的功能。
在 DevJam 期间,我很快就融入了团队和社区。我们卷起袖子,开始编码,以创建 Datavalet 所需的增强功能。在几天之内,这个附加的功能就准备好了。这是一次令人惊叹的变革性经历,让我真正看到了开源的力量。
一年后,我离职了,在康科迪亚大学全日制学习数学。正是在那里,我再次有机会与 OpenNMS 团队合作,这一次是在该年的谷歌代码之夏的一个项目上。在这个年度计划中,参与者的目标是成功完成开源软件开发项目。
代码之夏对我来说是一次改变职业生涯的经历。OpenNMS 的两位负责人参加了我们的项目演示一年后OpenNMS 团队邀请我作为一名全栈开发人员加入。
我努力工作,迅速晋升,并在 2015 年被任命为首席技术官。我认为这是一项个人成就,也再次验证了开源世界的特别之处。如果你喜欢与社区合作,热爱你所做的工作,你的贡献很快就会得到认可。
开源精神也影响了我从个人贡献者到首席技术官的发展,我现在领导着一个由 50 多人组成的产品开发团队。社区本质上是平等的,我与社区贡献者一起工作的经验教会了我如何在环境中领导,而不是控制。
我经历了一段奇妙的开源旅程,从用户到贡献者,再到一家开源公司的高管。开源方法超越了技术,因为专有开发环境中经常存在的障碍的进入和增长可以通过协作、透明和社区来克服。因此,对于任何考虑在开源领域工作的人来说,可能性是无限的。我就是证明。
我们生活在一个人们正在深刻审视自己的生活及其对世界的影响的时代。在开源公司工作特别有意义,因为我可以直接与用户社区互动并影响他们。终端用户和开发人员之间的经典屏障被打破了,我可以确切地看到我的工作如何改变人们的日常生活,或者激励人们为项目做出贡献。通过对一个项目的共同热爱来建立社区,建立持续一生的联系。
我知道这对我来说都是真实的,这也是为什么我对我的工作如此热情。我是一个彻头彻尾的开源极客,并以此为荣。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/8/my-open-source-career-story
作者:[Jesse White][a]
选题:[lkxed][b]
译者:[aftermath0703](https://github.com/aftermath0703)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/jwhite-0
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/career_journey_road_gps_path_map_520.png
[2]: https://www.opennms.com/
[3]: https://www.opennms.com/

View File

@ -0,0 +1,82 @@
[#]: subject: "Want to Help Improve GNOME? This New Tool Gives You the Chance!"
[#]: via: "https://news.itsfoss.com/gnome-improve-tool/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14972-1.html"
想帮助改善 GNOME 吗?这个新工具给了你这个机会!
======
> 这个新的工具,使 GNOME 用户能够提供他们的配置和使用意见,以帮助改善用户体验。
![想帮助改善 GNOME 吗? 这个新工具给了你机会!][1]
GNOME 带来了一个工具,可以让用户匿名提供他们的配置、扩展和 GNOME 调整设置等方面的意见。
这应该有助于 GNOME 了解更多的用户偏好,并做出更好的增强用户体验的决定。
有趣的是是红帽公司的一名实习生Vojtech Stanek创造了这个工具。
### GNOME 信息收集:准备好安装了吗?
![gnome info collect terminal][2]
该工具(`gnome-info-collect`)是一个简单的终端程序,你需要下载、安装并运行它来与 GNOME 分享数据。
以下是该工具需要从你的 GNOME 系统中收集的内容:
* 硬件信息(包括制造商和型号)。
* 系统设置包括工作区配置、共享功能、SSH 等)。
* 安装并启用的 GNOME shell 扩展。
* 应用程序信息(如已安装的应用程序和收藏的应用程序)。
* Linux 发行版和版本。
* Flatpak 和 Flathub 状态。
* 默认浏览器。
* 机器 ID + 用户名的 [加盐哈希][3]。
你可以在其 [GitLab 页面][4] 上找到适合你的发行版的软件包和收集数据的更多细节。
如果你有一个基于 Ubuntu 的发行版,你可以通过输入以下内容来安装它:
```
sudo snap install --classic gnome-info-collect
```
安装完毕后,在终端使用以下命令将其启动:
```
gnome-info-collect
```
接下来,它会显示它打算与 GNOME 共享的数据。所以,如果你觉得没问题,你可以选择将数据上传到 GNOME 的服务器上。
![][5]
考虑到这些数据是匿名的,它应该可以帮助 GNOME 了解他们的用户喜欢什么,并随着时间的推移专注于这些改进。
> **[下载 gnome-info-collect][6]**
你对 GNOME 的这个新的数据收集工具有什么看法?请在下面的评论中分享你的想法。
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/gnome-improve-tool/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/gnome-improvement-tool.jpg
[2]: https://news.itsfoss.com/content/images/2022/08/gnome-info-collect-terminal.png
[3]: https://en.wikipedia.org/wiki/Salt_(cryptography)
[4]: https://gitlab.gnome.org/vstanek/gnome-info-collect/
[5]: https://news.itsfoss.com/content/images/2022/08/gnome-info-collect-sharing.png
[6]: https://gitlab.gnome.org/vstanek/gnome-info-collect/

View File

@ -0,0 +1,39 @@
[#]: subject: "Wii U Emulator Cemu Going Open Source Is Significant For Emulation, Heres Why"
[#]: via: "https://www.opensourceforu.com/2022/08/wii-u-emulator-cemu-going-open-source-is-significant-for-emulation-heres-why/"
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14979-1.html"
Wii U 模拟器 Cemu 走向开源对仿真技术意义重大
======
![](https://img.linux.net.cn/data/attachment/album/202208/29/152146nvs93gzs720ftfy8.jpg)
Wii U 模拟器 Cemu 的开发者上周二宣布了一个重要的 2.0 版本发布,首次交付了 Linux 上的二进制文件并开源了他们八年的成果。Cemu 是一个 Wii U 模拟器,并于 2017 年创造了历史 —— 每个月可以通过 Patreon 获得支持其发展的数千美元赞助。Cemu 以其在 Patreon 上曾短暂达到 25,000 美元的最高收入而为人所知,这引起了人们对“仿真是否道德”的关注,特别是它被用来换取金钱,而项目却是“闭源的”而不是“开源”的 —— 也就是说源代码没有向公众开放。
仿真社区保护自己免受法律诉讼的主要方式之一是向公众提供其源代码,允许像任天堂这样的“诉讼公司”检查它,并验证在反向工程过程中没有使用他们的专有代码。
据 Exzap 称Cemu 对 Linux 的支持“仍然相当粗糙”,但他相信随着更多的模拟器开发者熟悉 Cemu并开始为该项目做出贡献这种情况将迅速改变。Cemu 以前只兼容 Windows但现在支持 Linux可以在 Steam Deck 上快速安装。在 Cemu 引入 Flatpak 支持一键安装之前,在 Deck 上使用它并不那么简单,不过这个话题已经在 GitHub 上讨论过了。
Cemu 的作者利用 2.0 发布公告简要地讨论了该模拟器的历史;在该模拟器的大部分历史中,他们是唯一的开发者,他们声称过去两年对项目的压力特别大。
Exzap 将继续做出贡献,但预计拥有其他开发者将有助于创建几个重要的功能,如暂停和恢复仿真的能力,以及提高在旧硬件上的性能。
“我已经在 Cemu 上工作了近 8 年看着这个项目从一个似乎不可行的实验发展到在其高峰期有超过一百万人使用的东西”Exzap 在上周二的公告中写道,“即使在今天,当 Wii U 已经被大部分人遗忘的时候,我们每个月仍然有 25 万次下载。仍然有这么多人在用 Cemu 享受 Wii U 游戏,我将永远感激让我有机会以积极的方式影响这么多人的生活,哪怕只是一丁点。”
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/08/wii-u-emulator-cemu-going-open-source-is-significant-for-emulation-heres-why/
作者:[Laveesh Kocher][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
[b]: https://github.com/lkxed

View File

@ -0,0 +1,157 @@
[#]: subject: "5 GNOME 43 Features to Keep an Eye On"
[#]: via: "https://news.itsfoss.com/gnome-43-features/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14985-1.html"
5 个需要关注的 GNOME 43 功能
======
> GNOME 43 即将到来。下面是你可以期待在该版本中出现的功能。
![5 个值得关注的 GNOME 43 功能][1]
GNOME 43 将于 2022 年 9 月 21 日发布。截至目前GNOME 43 的测试版已经可供测试。
我们在 GNOME 43 测试版中发现的功能和变化应该随着最终版本的发布而到来。
那么,哪些是你最值得期待的 GNOME 43 功能呢?
让我们来看看一些关键的变化。
这个列表集中在视觉/交互式变化上。关于技术变化的完整列表,你可以参考文章底部链接的更新日志。
### 1、改造了快速设置
![GNOME 快速设置][2]
GNOME 桌面菜单位于右上角,你可以在这里快速调整音量、访问网络连接,以及开/关电脑,在这个版本中它终于得到了视觉上的更新。
现在,它看起来更像是安卓的快速切换栏,这应该会增强用户体验,同时减少一些多余的点击。
![GNOME 快速设置][3]
你不需要前往设置来打开深色模式和夜光。新的快速切换菜单就可以让你可以访问到它们。
此外,像选择 Wi-Fi 网络和改变音频设备这样的事情比以前更容易做到。
### 2、对 Nautilus 文件管理器的改变
虽然我们已经在之前的报道中提到了 GNOME 43 中对 Nautilus 最重要的改变。
> **[GNOME 43 中 Nautilus 文件管理器的 6 个新变化][4]**
有几件事值得再次重申。其中一些包括:
* 使用 GTK 4 的全新外观。
* 拖动和选择文件的能力(橡皮筋选择)。
* 紧凑窗口的自适应视图。
* 新的文件上下文菜单。
![Nautilus 文件管理器][6]
总的来说,在 GNOME 43 中,你会发现 Nautilus 文件管理器有了一些视觉上的调整,并有动画的细微改进。
你可以点击每一个选项,访问目录的属性等等来探索其中的差异。它应该感觉更直观一些。
### 3、设备安全信息
![][7]
我们之前报道过 GNOME 会在你禁用安全启动时显示警告。
> **[安全启动已被禁用? GNOME将很快向您发出警告][8]**
你会在你的闪屏和锁屏中看到这个警告。
GNOME 的设置菜单也有一个新的 “设备安全” 选项,在这里你可以看到安全启动状态和其他重要信息,比如:
* TPM
* 英特尔 BootGuard
* IOMMU 保护
### 4、GNOME Web 的扩展支持
![GNOME Web 扩展][10]
GNOME Web 在每次更新都会变得更好一些。有了 Web 扩展的支持,它成为了一个有吸引力的选择,可以取代你的日常使用的浏览器。
> **[有了扩展GNOME Web 正慢慢成为桌面 Linux 上一个有吸引力的选择][11]**
在写这篇文章的时候,该支持仍然是 **实验性的**,你必须得手动安装扩展。
对于初学者来说,你可以在 Mozilla Firefox 附加组件门户上下载 .xpi 扩展文件。
### 5、GNOME 软件中心的改进
GNOME 的软件中心目前的体验并不是很好。
虽然它在提供额外信息方面有所改进,但仍有改进的余地。
![GNOME 软件][13]
在 GNOME 43 中,你可以了解到更多关于 Flatpak 应用程序所需的权限。而且,你还可以看到一个 “其他应用程序” 部分,以寻找同一开发者的其它应用程序。
此外,软件包来源的显示方式也有了细微的视觉调整。
![GNOME 软件][14]
### 附加:新的墙纸
你会得到新的默认壁纸,有深色和浅色的变体。下面是深色壁纸背景的样子:
![][15]
而这是浅色版本:
![][16]
除了主要的亮点之外,其他一些变化包括:
* Adwaita 图标主题更新。
* GNOME 应用程序的性能改进。
* 各种代码的清理。
* 对日历的改进。
* 改良了“关于”窗口。
关于完整的技术细节,你可以参考 [GNOME 43 测试版更新日志][17]。
总的来说GNOME 43 在很大程度上注重提高可用性和用户体验。
最初还计划了一些有趣的功能,但它们没有进入 GNOME 43。*也许GNOME 44 会包括这些?*
> **[这里是开发者为 GNOME 43 规划的内容][18]**
*你对 GNOME 43 的功能有何看法?请在下面的评论中告诉我们你的想法。*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/gnome-43-features/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/gnome-43-features.jpg
[2]: https://news.itsfoss.com/content/images/2022/08/gnome-toggle-1.png
[3]: https://news.itsfoss.com/content/images/2022/08/gnome-toggle-settings.png
[4]: https://news.itsfoss.com/gnome-files-43/
[6]: https://news.itsfoss.com/content/images/2022/08/nautilus-file.gif
[7]: https://news.itsfoss.com/content/images/2022/08/secure-boot-gnome.png
[8]: https://news.itsfoss.com/gnome-secure-boot-warning/
[10]: https://news.itsfoss.com/content/images/2022/08/gnome-web-extensions-1.png
[11]: https://news.itsfoss.com/gnome-web-extensions-dev/
[13]: https://news.itsfoss.com/content/images/2022/08/gnome-software-screenshot-1.png
[14]: https://news.itsfoss.com/content/images/2022/08/gnome-43-software-center.jpg
[15]: https://news.itsfoss.com/content/images/2022/08/gnome-43-dark-wallpaper.jpg
[16]: https://news.itsfoss.com/content/images/2022/08/gnome-light-adaitwa.jpg
[17]: https://download.gnome.org/core/43/43.beta/NEWS
[18]: https://news.itsfoss.com/gnome-43-dev-plans/

View File

@ -0,0 +1,290 @@
[#]: subject: "What is the Difference Between macOS and Linux?"
[#]: via: "https://itsfoss.com/mac-linux-difference/"
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "Donkey-Hao"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15010-1.html"
macOS 和 Linux 有什么区别?
======
![](https://img.linux.net.cn/data/attachment/album/202209/08/164354illke77oz64k4smf.jpg)
我们经常对比 [Linux 和 Windows][1],那 macOS 和 Linux 有什么区别呢?
Linux 和 Windows 的差异很明显,但 Linux 和 macOS 在很多人看起来却很相似。
二者都可以在命令行中运行 Unix 命令,并且与用户在 Windows 中的体验大相径庭。同时,并不是所有 Windows 上的应用和游戏可以在 macOS 和Linux 上运行。
这就是为什么一些人认为苹果公司的 macOS 是基于 Linux 的系统。**但事实并非如此。** 尽管有相似之处,但 macOS 并不是 Linux。
这两个类 Unix 的操作系统有很多不同之处,我将在这篇文章中指出二者的异同之处。
就让我们来比较一下苹果和~~橙子~~企鹅吧。
### 起源
macOS 有一段迷人的历史。它的基础是由史蒂夫·乔布斯的 NeXT 计算机公司所开发的,那时候乔布斯不在苹果公司工作。从技术上讲,它是基于 [Mach 内核][2] 和 Unix 派生的 BSD。
那时候,**NeXT** 开发了 [NeXTSTEP][3] 操作系统来驱动它设计的设备和电脑。虽然它得到了一些关注,但是它并没有大获成功。之后,苹果公司恢复了史蒂夫在董事会的席位,作为交易的一部分,收购了 NeXT 公司,使得 NeXTSTEP 操作系统成为了 macOS 的基础。
这就是为什么 macOS 是结合了 Unix 组件和苹果公司的专有技术的操作系统。
**相反**Linux内核是 Unix 的自由并开源的替代品。
Linux 不是一个操作系统,它需要一些组件比如 [桌面环境][4] 才能成为一个操作系统。有许多 [基于 Linux 的操作系统][5],称之为发行版。
简单起见,我们将这些操作系统称为 **Linux** 操作系统而不是特定的发行版。
### macOS 内核 vs. Linux 内核
macOS 内核的官方名称为 XNU。该 [缩写][6] 代表 “<ruby>XNU 不是 Unix<rt>XNU is Not Unix</rt></ruby>LCTT 校注:典型的 GNU 式回文缩写)。根据 [苹果公司的 GitHub 页面][7] 所说XNU 是“将卡内基梅隆大学开发的 Mach 内核,与来自 FreeBSD 的组件,和用于编写驱动程序的 C++ API 相结合的一个混合内核”。其代码的 BSD 子系统部分是 [“通常在微内核系统中作为用户空间服务器实现”][8]。Mach 部分负责底层工作,例如多任务处理、受保护内存、虚拟内存管理、内核调试支持和控制台 I/O。
macOS 内核结合了<ruby>微内核<rt>micro kernel</rt></ruby>[Mach][9])和<ruby>宏内核<rt>monolithic kernel</rt></ruby>[BSD][10])的特性,而 Linux 只是一个宏内核。[宏内核][11] 负责管理 CPU、内存、进程间通信、设备驱动程序、文件系统和系统服务器调用。
### 二者共同之处
macOS 利用了 Unix 组件,而 Linux 是作为 Unix 的替代品而构建的。那么,二者有什么共同点呢?
二者都可以使用 **Unix 命令、bash/zsh、以及其他 shell**。或许 [默认 shell][12] 会有所不同,但是你可以根据你的喜好进行设置。除此之外,我想不到二者还有什么相似之处。
大概在十年前,我们可以说 Linux/macOS 提供的应用程序都比较少。但时过境迁。多年来,二者的软件生态和游戏支持都在不断发展,我们将在本文后面讨论。
### 代码库:闭源与开源
![open source proprietary illustration][13]
macOS 是一个闭源的操作系统,意味着你无法看到完整的操作系统源码。
当然,可以获得 [部分 macOS大多为 GNU库的源码][14]。还有用来开发 macOS 和 iOS 操作系统的 [XNU 内核代码][15]。但是 [你不能只用这些代码构建出一个 macOS 的克隆版][16],并安装在任何硬件上。
没有源码并不不是世界末日,但你会因为苹果公司保护和增强你使用电脑体验的主张和实践,而获得 **更少的透明度**
一些人认为出于安全的原因而应该保持闭源。然而,不论开源还是闭源都面临安全威胁。
**二者的不同** 是:相对于员工数量有限的苹果公司来说,由于有很多开发者在开源社区中,所以开源软件会很快得到修复。
除非你毫无保留的相信苹果,不然 Linux 的开源模式更胜一筹。
### 目的和用途
macOS 专为台式机和笔记本电脑使用而设计。它非常适合于 **视频编辑、图形设计和音频编辑**
当谈到 Linux ,你可以做很多事情。你可以将 Linux 用于:
* 客户端
* Toaster希望你了解 [物联网 IoT][17]
* 单板机
* 服务器
当然,在各种平台上使用它的体验并不相同,但 Linux 可以针对各种用例运行。
所以,如果你喜欢 Linux你可以选择在其他平台上也使用 Linux以获得舒适的体验。
### 用户体验
当谈到用户体验,这取决于个人喜好。
macOS 提供了 **令人愉悦的用户界面**。细致的动画和高分辨率的壁纸、图标,这在视觉上很有吸引力。
![macOS Monterey][18]
你可以期待在整个平台上获得轻松和无缝的体验。
使用 Linux你可以获得同样令人愉悦且易于使用的用户界面。
![Zorin OS 16 Pro][19]
**不幸的是**,用户体验随着不同发行版所安装的桌面环境而不同。
你可以查看 [最好的桌面环境][20] 列表。你甚至还可以选择 [类似 macOS 的 Linux 发行版][21]。
例如,如果你使用 **Pop!_OS、Ubuntu、Zorin OS 或者 elementary OS** ,你将获得超棒的体验。
![Pop!_OS 22.04 LTS][22]
如果你使用类似于 MX Linux 或者其他的发行版,用户体验可能无法与 macOS 相提并论。
![MX Linux][23]
总的来说Linux 的开箱即用体验是不一致的,但如果你知道自己在做什么,它就足够了。
如果你之前使用的是 Windows刚开始会对 Linux 的界面感到困惑。
### 可定制性
![customizability][24]
如果你想要一个可以让你对它的各个方面进行改动的操作系统,那 macOS 不适合你。
尽管大多情况下苹果的设计在美学上会令人愉悦,但并不是每个人都喜欢它们。
如果你想要个性化、控制并大量定制操作系统的具体细节Linux 应该是完美的选择。
你可以根据需要选择自定义用户界面,使用各种不同元素,并根据你的喜好尽情发挥。请查看我们的 [KDE 定制][25] 指南以探索可能性。
虽然这很好,但在 Linux 系统上自定义内容时可能会适得其反,把它搞乱。因此,你需要学习、探索你想要自定义的内容。
### 运行硬件要求
![hardware illustration][26]
硬件是 macOS 遭受“重创”的地方。
如果你想获得 macOS 并有良好的体验,那需要购买昂贵的苹果硬件。
例如,支持 macOS 的笔记本电脑的基本配置从 **8 GB 内存****256 GB 存储空间** 开始,价格为 **$1200** 或更多。
除非你想经常使用交换空间进行多任务处理,并且已经拥有云存储空间,否则买苹果设备将是一个糟糕的主意。
相比之下如果你不想花很多钱但仍希望为你的系统PC/笔记本电脑)配置一个不错的配置,那么以 800 美元左右的价格购买一台配备 16 GB 内存 + 512 GB SSD 的设备来运行 Linux 是很容易的。
**个人说明**:我习惯了 32 G 的内存 + 500 GB 的 SSD 存储。为了获得这种多任务处理空间(不使用交换空间),我将不得不向苹果公司支付溢价。
一些熟练的“修补匠”尝试在非苹果公司的硬件上运行 macOS。这样的系统被称为 <ruby>[黑苹果][27]<rt>Hackintosh</rt></ruby>,但它肯定远不及在普通计算机上运行 Linux 的舒适度。
### 软件生态
通过苹果公司为 macOS 制作的专属应用程序或工具,可以在 macOS 上获得 **一流的原生体验**
是的,你可能必须购买这些应用程序。但是,与某些订阅选项不同的是,你可以通过 macOS 获得一次性购买选项。
![Final Cut Pro on macOS][28]
对于想要设计、编辑视频、编辑照片并拥有创意的用户如果你不介意投资的话macOS 的软件套件应该是一个不错的选择。
免费的苹果工具(如 iMovie、Keynote 等)本身就很好。将它们与 Final Cut Pro、Affinity Designer 等高级工具结合使用,你将获得世界级的编辑体验。别忘了,在 macOS 上也可以使用 Adobe 等创意工具。
此外,苹果公司对其平台上的应用程序有严格的指导方针,以增强第三方应用程序(免费或付费)的原生体验。
这就是为什么许多设计师和编辑更喜欢使用 macOS 而不是其他操作系统的原因。
对于 Linux 平台,你可以使用 **很棒的自由及开源软件** 来替代一些仅限于 macOS 的应用程序。除非你喜欢或有使用 macOS 特定应用程序的经验,否则你应该不会在使用适用于 Linux 的软件方面遇到问题。
![kdenlive editor][29]
原生应用的体验基于你使用的 Linux 发行版。
![Planner (To-do list app for Linux)][30]
它可能不像 macOS 那样完美,但如果你不是专业级的视频、图形编辑人员,应该没有任何问题。
### 在 Linux 和 macOS 上游戏
![gaming illustration][31]
虽然苹果公司在使其新的 M1/M2 芯片尽可能强大方面取得了不错的进展,但 macOS 目前对游戏的支持很差。
少数游戏可以正常工作,并且大多数都不受官方支持。说实话,为游戏而买台 Mac 并不是它的目的。
关于 Linux许多 AAA 级游戏和独立游戏运行良好。当然,某些游戏存在一些问题。但是,随着 Valve 推动游戏对 Steam Deck 的官方支持,即使是像 **《蜘蛛侠:重制》** 这样的最新版本,都得到了 Steam Deck 的认可。
最终,这会帮助改善 Linux 平台对游戏的支持。
此外,考虑到 PC 显卡市场几乎恢复正常(接近或低于建议零售价),你可以获得不错的 PC 版本或笔记本电脑,而不必担心性能瓶颈。
你会花 **1800 美元以上购买配备 16 GB 内存和 512 GB SSD 的 Mac**,还是购买配备 32 GB 内存(或更多)和至少 1 TB SSD或更多的 PC/笔记本电脑?
那由你来决定。
### 软件包管理
![package manager illustration new][32]
软件包管理器能够让你很快地找到、安装或卸载你的操作系统中的软件。
与现有的任何系统相比Linux 一直在包管理方面占据优势。
你可以获得 [Flatpak][33]、[Snap][34]、[Synaptic][35] 等开箱即用的选项。
但是在默认情况下Mac 用户没有任何可依赖的软件包管理器。幸运的是,像 [Homebrew][36] 这样的选项极大的方便了 macOS 用户。
当然,它还支持 Linux。因此你可以在多个设备上使用它来简化操作。
### 系统升级
![software update illustration][37]
苹果公司不会发布其操作系统更新的具体计划。
例如,**macOS Ventura**(在撰写本文时即将进行版本升级)突然抛弃了 2017 年之前的所有 Mac 设备。
有趣的是,以前的操作系统版本平均支持 **七年左右**,但随着更新的变化,现在似乎是 **五年左右**
对于苹果公司设计的芯片,这或许不是一个简单的答案。但是,至少 4 到 5 年的软件支持是安全的。
Linux 为你提供了选择。如果你想要一个没有功能升级只专注于维护和安全性的稳定操作系统Linux 发行版的 [LTS 版本][38] 可以免费为你提供 **五年** 的更新。这主要适用于 [Ubuntu][39] 或基于 Ubuntu 的发行版,如 Linux Mint。
此外,有一个 Ubuntu 订阅项目,你可以持续 **十年** 得到安全更新。
而且,不止于此,你还可以选择 [滚动发行的版本][40],来获得没有结束时间的持续的前沿更新。只要你的硬件能够胜任,你应该就能毫无问题地更新操作系统。
### macOS vs. Linux: 你应该选择哪一个?
如果你需要的话macOS 可以说是物有所值。
不建议只需要上网、发送电子邮件,以及执行一些在任何平台上都可以执行的任务的用户购买 macOS。
macOS 仍然是一个小众的选择。
然而,随着 Linux 的改进,它已经成为先前是 Windows/macOS 的用户、计算机专业学生、开发人员、创意专业人士(如我们)以及广泛潜在用户的有用的选择。
选择 Linux 而不是 macOS (而不是反之)的原因有很多,但这是我的看法。
你对 macOS 与 Linux 有何看法?欢迎在下面的评论中分享你的想法。
--------------------------------------------------------------------------------
via: https://itsfoss.com/mac-linux-difference/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[Donkey-Hao](https://github.com/Donkey-Hao)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/linux-better-than-windows/
[2]: https://en.wikipedia.org/wiki/Mach_(kernel)
[3]: https://en.wikipedia.org/wiki/NeXTSTEP
[4]: https://itsfoss.com/what-is-desktop-environment/
[5]: https://itsfoss.com/what-is-linux/
[6]: https://github.com/apple/darwin-xnu
[7]: https://github.com/apple/darwin-xnu
[8]: http://osxbook.com/book/bonus/ancient/whatismacosx/arch_xnu.html
[9]: https://en.wikipedia.org/wiki/Mach_(kernel)
[10]: https://en.wikipedia.org/wiki/FreeBSD
[11]: https://www.howtogeek.com/howto/31632/what-is-the-linux-kernel-and-what-does-it-do/
[12]: https://linuxhandbook.com/change-shell-linux/
[13]: https://itsfoss.com/wp-content/uploads/2022/08/open-source-proprietary-illustration.jpg
[14]: https://opensource.apple.com/releases/
[15]: https://github.com/apple/darwin-xnu
[16]: https://www.techrepublic.com/article/why-apple-open-sourcing-mac-os-x-isnt-terribly-exciting/
[17]: https://www.ibm.com/blogs/internet-of-things/what-is-the-iot/
[18]: https://itsfoss.com/wp-content/uploads/2022/08/macos-monterey-screenshot.jpg
[19]: https://itsfoss.com/wp-content/uploads/2021/12/zorin-os-16-mac.png
[20]: https://itsfoss.com/best-linux-desktop-environments/
[21]: https://itsfoss.com/macos-like-linux-distros/
[22]: https://itsfoss.com/wp-content/uploads/2022/08/pop-os-screenshot-2022.png
[23]: https://itsfoss.com/wp-content/uploads/2022/07/10.-MX-Linux.jpg
[24]: https://itsfoss.com/wp-content/uploads/2022/08/customizability-illustration.jpg
[25]: https://itsfoss.com/kde-customization/
[26]: https://itsfoss.com/wp-content/uploads/2022/08/hardware-illustration-800x450.jpg
[27]: https://www.freecodecamp.org/news/build-a-hackintosh/
[28]: https://itsfoss.com/wp-content/uploads/2022/08/final-cut-pro-mac.jpg
[29]: https://itsfoss.com/wp-content/uploads/2022/08/kdenlive-editor.jpg
[30]: https://itsfoss.com/wp-content/uploads/2021/08/planner-board-view.png
[31]: https://itsfoss.com/wp-content/uploads/2022/08/gaming-illustration.jpg
[32]: https://itsfoss.com/wp-content/uploads/2022/08/package-manager-illustration-new.jpg
[33]: https://itsfoss.com/what-is-flatpak/
[34]: https://itsfoss.com/use-snap-packages-ubuntu-16-04/
[35]: https://itsfoss.com/synaptic-package-manager/
[36]: https://itsfoss.com/homebrew-linux/
[37]: https://itsfoss.com/wp-content/uploads/2022/07/software-update-illustration.jpg
[38]: https://itsfoss.com/long-term-support-lts/
[39]: https://itsfoss.com/getting-started-with-ubuntu/
[40]: https://itsfoss.com/best-rolling-release-distros/

View File

@ -0,0 +1,88 @@
[#]: subject: "5 note-taking apps for Linux"
[#]: via: "https://opensource.com/article/22/8/note-taking-apps-linux"
[#]: author: "Don Watkins https://opensource.com/users/don-watkins"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14990-1.html"
5 款适用于 Linux 的笔记应用
======
![](https://img.linux.net.cn/data/attachment/album/202209/01/173456nfc42fnqkiwfkh90.jpg)
> 使用这些开源工具来记笔记。
笔记是任何作者生活的一部分。我的大部分文章都是从笔记应用开始的,这对我来说通常是 [Joplin][2]。有大量适用于 Linux 的笔记应用,你可能使用的不是我最喜欢的应用。最近的一篇博客文章让我想起了其中的六个,所以我整理了一份我最喜欢的列表。
### Joplin
![Joplin][3]
[Joplin][4] 适用于 Linux、Windows、macOS、Android 和 iOS。我喜欢 Joplin因为它会自动保存你添加的任何内容。笔记可以上传到 NextCloud、OwnCloud、Joplin Cloud甚至是 OneDrive、Dropbox 或任何 WebDav 应用等闭源服务。Joplin 还支持加密。
以各种格式导出笔记也很容易。它带有八个不同的主题,可让你定制其外观。
Joplin 采用 MIT 许可证。最初于 2017 年发布Joplin 正在与大量贡献者社区一起持续开发。
### Xournal
![Xournal][5]
[Xournal][6] 适用于 Linux、Windows、macOS 和 Android。它的目的是让你创建包含几乎任何你可以想象的媒体类型的笔记。它支持压敏手写笔和绘图板因此你可以创建 [涂鸦笔记][7]。你可以在里面打字、绘制简单的矢量、导入图形、录制音频等等。你还可以使用 Xournal 来注释 PDF这就是我使用它的方式。它以 GPLv2 许可证发布,你可以以多种格式导出笔记。
### Trillium
![Trillium][8]
[Trillium][9] 是一个层级笔记应用,专注于知识构建库。它具有丰富的所见即所得编辑功能,支持表格、图像和 Markdown。它支持使用语法高亮编辑源代码中的注释。它是在 AGPL 许可证下发布的。
Trilium 可用作 Linux 和 Windows 的桌面应用,以及你可以在自己的 Linux 服务器上托管的 Web 应用。
### Gnote
![Gnote][10]
[Gnote][11] 是一个为 Linux 编写的开源笔记应用。它是由 Hubert Figuière 从一个名为 [Tomboy][12] 的项目中克隆出来的。与 Tomboy 一样Gnote 使用类似 Wiki 的链接系统来允许你将笔记链接在一起。
GNote 的源代码可在 [GitLab][13] 上找到。该软件是 GPLv3 许可。
### CherryTree
![CherryTree][14]
CherryTree 支持层级笔记。在 CherryTree 中,所有东西都是一个节点。节点可以是纯文本、富文本、各种编程语言的语法高亮。每个节点可以有子节点,每个子节点有不同的格式。
CherryTree 具有富文本和语法高亮的特点,并可以将数据存储在一个 XML 或 [SQLite][15] 文件中。CherryTree 可以从各种格式导入,包括 Markdown、HTML、纯文本、Gnote、Tomboy 和其他格式。它可以将文件导出为 PDF、HTML、纯文本和它自己的 CherryTree 格式。
CherryTree 使用 GPLv3 许可,可以安装在 Linux、Windows 和 macOS 上。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/8/note-taking-apps-linux
作者:[Don Watkins][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/don-watkins
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/write-hand_0.jpg
[2]: https://opensource.com/article/21/1/notes-joplin
[3]: https://opensource.com/sites/default/files/2022-08/joplin.png
[4]: https://joplinapp.org/
[5]: https://opensource.com/sites/default/files/2022-08/xournal.png
[6]: https://xournalpp.github.io/
[7]: https://opensource.com/article/22/6/open-source-sketchnotes
[8]: https://opensource.com/sites/default/files/2022-08/trillium.png
[9]: https://github.com/zadam/trilium
[10]: https://opensource.com/sites/default/files/2022-08/gnote.png
[11]: https://wiki.gnome.org/Apps/Gnote
[12]: https://wiki.gnome.org/Apps/Tomboy
[13]: https://gitlab.gnome.org/GNOME/gnote
[14]: https://opensource.com/sites/default/files/2022-08/cherrytree.png
[15]: https://opensource.com/article/21/2/sqlite3-cheat-sheet

View File

@ -0,0 +1,87 @@
[#]: subject: "How to Create and Switch Workspaces in Linux Mint"
[#]: via: "https://itsfoss.com/workspaces-linux-mint/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15009-1.html"
如何在 Linux Mint 中创建和切换工作区
======
![](https://img.linux.net.cn/data/attachment/album/202209/08/103250exm22bu2jtbsyjjj.jpg)
工作区是组织工作的好方法。
假设你打开了太多应用。你的任务栏会很混乱,你可能很难在不同的程序之间查找/移动。
在这种情况下,工作区会派上用场。你可以对不同工作区中的应用进行分组。假设你打开了许多与编程相关的应用,而同时你也在处理文档。
你可以将它们组织在单独的工作区中。单击并拖动应用窗口,它应该显示将应用移动到不同工作区的选项。
这将以更有条理的方式简化你的工作,并节省一些时间和挫败感。
听起来不错?让我向你展示如何在带 [Cinnamon][1] 桌面环境的 Linux Mint 中创建工作区并在它们之间切换。
### 创建新工作区
在 Linux Mint 中创建或访问工作区很容易。只需按 `CTRL + ALT+ ↑`。它将向你显示如下所示的屏幕。
只需单击右侧的 `+` 号即可在默认的 4 个工作区之外添加的新工作区。
![Workspace Overview in Linux Mint][2]
Linux Mint 中的工作区是持久的。创建后,这些工作区将始终存在,即使在下次启动后也是如此。
### 在工作区之间切换
有两种方法可以访问工作区并在它们之间切换。
* 使用 `CTRL + ALT+ ↑`,将显示出所有工作区,然后使用箭头键或鼠标在它们之间移动。
* 使用热角并在左上角移动鼠标。
默认情况下,最新版本的 Linux Mint 中禁用了热角功能。
要启用热角在工作区之间切换,你应该进入 <ruby>系统设置<rt>System Settings</rt></ruby> 并选择 <ruby>热角<rt>Hot Corners</rt></ruby> 选项。
![Hot Corners Option in System Settings][3]
现在,通过切换按钮启用左上角。默认情况下,此角专用于显示所有工作区(你也可以更改它)。
![Show All Workspaces in Top Left Corner][4]
你现在可以通过将鼠标悬停在左上角来访问工作区网格。
此外,如果需要,你可以按右侧的 `+` 符号添加新工作区。或根据需要通过单击名称来重命名现有工作区。
![Workspace Overview Accessible from Top Left Corner][5]
### 删除工作区
实际上,你可以通过单击 `+` 号来创建多个工作区。如果你想删除工作区,请将鼠标悬停在该工作区上,单击工作区右上角的 `X` 号。
![Delete a Workspace][6]
我希望这篇快速文章能帮助你在 Linux Mint 中创建工作区。你经常使用工作空间吗?让我们知道你对工作空间的看法。同时,你还可以查看 [安装 Linux Mint 20 后要做的事情][7] 的帖子。
--------------------------------------------------------------------------------
via: https://itsfoss.com/workspaces-linux-mint/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/quickly-fix-broken-unity-installing-cinnamon-20-ubuntu-1310/
[2]: https://itsfoss.com/wp-content/uploads/2022/08/workspace-overview-in-linux-mint.png
[3]: https://itsfoss.com/wp-content/uploads/2022/08/hot-corners-option-in-system-settings.png
[4]: https://itsfoss.com/wp-content/uploads/2022/08/show-all-workspaces-in-top-left-corner.png
[5]: https://itsfoss.com/wp-content/uploads/2022/08/workspace-overview-accessible-from-top-left-corner-1.png
[6]: https://itsfoss.com/wp-content/uploads/2022/08/delete-a-workspace.png
[7]: https://itsfoss.com/things-to-do-after-installing-linux-mint-20/

View File

@ -0,0 +1,151 @@
[#]: subject: "What if a Lifelong Linux User Tried Windows or macOS for the First Time?"
[#]: via: "https://news.itsfoss.com/linux-user-trying-windows-macos/"
[#]: author: "Abhishek https://news.itsfoss.com/author/abhishek/"
[#]: collector: "lkxed"
[#]: translator: "Kira-Pgr"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15000-1.html"
用惯 Linux 的人第一次用 Windows 或 macOS 会怎样?
======
> Windows 用户在转换到 Linux 的过程中会遇到很多问题。如果反过来,一个一直用 Linux 的用户第一次用 Windows 或 macOS 会遇到什么问题呢?
![一直用 Linux 的人第一次用 Windows 或 macOS 会怎样?][1]
还记得 YouTube 频道 Linus Tech Tips 中 Linus Sebastian [尝试在 Linux 上玩游戏][2] 的场面吗? 尽管终端显示了明显的警告, 他最后还是把他的桌面环境删掉了。
![Linus Sebastian 弄坏了他的 Linux 系统][3]
考虑到 Sebastian 日常用 Windows 玩游戏, 换到 Linux 肯定需要一定的时间。
所以,这是 Linux 的问题吗? 还是 Sebastian 搞错了?
难道说,任何对操作系统不熟悉的用户在第一次尝试使用该系统的时候都会遇到问题?
接下来,你可以从不同的角度去了解 Linux 用户第一次使用 Windows 或者 macOS 的感受。
Linux 用户第一次用 Windows 或 macOS 会非常容易?还是会和 Sebastian 用 Linux 时一样感觉糟糕?
这肯定是非常有趣的话题……
一位 DevOps 高级工程师 **Scott Williams** 在一系列推文中假想了 Linux 用户第一次用 Windows 或 macOS 的场面。
### 在 Windows 11 上怎么启用 TPM 2.0
如何安装 Windows 的最新版本 Windows 11
> [Scott Williams][5]\
> 今晚,看我在能不能在这台用了 4 年的笔记本电脑上启用 TPM2.0 并运行 Windows 11。这台电脑支持 Intel PTT所以应该会很顺利吧
怎样启用 TPM 2.0? 如何在 BIOS 菜单中找到它? 启用 TPM 2.0 安全吗? 我是否需要刷一个更新的 BIOS? 更新 BIOS 的过程中是否会弄坏我的主版?
这些就是些每个 Linux 用户(甚至是 macOS/Windows 用户)将系统升级到 Windows 11 时都会遇到的一些问题。
Linux 用户从来没有必要做如此奇怪的事情来让系统正常工作。即使是在 2022 年。但是 Windows 11 需要你在升级前了解 BIOS 设置和 TPM 芯片的情况。
虽然 Scott 提到的是旧笔记本电脑,但值得注意的是,即使是最新的主板(比如 Z590你可能也需要调整 BIOS 设置或者刷一个版本更高的 BIOS 版本才能支持 Windows 11。
由于更新 BIOS 有一定的风险,这种事情即使是对于懂技术的用户也是很不方便。
### 我需要用杀毒软件吗?用哪个?
虽说苹果的 XProtect 和 Windows Defender 能提供基本保护,但对于想要更好保护的用户来说,在杀毒软件方面有几个选择:
> [Scott Williams][6]\
> 所以我究竟需不需要装杀毒软件?装哪个?
网上有那么多选择和软文,用户很难确定那个杀毒软件最好,已经为之付费是否值得。
而 Linux 用户就会这么想: *我竟然还要安装这个? 不会很浪费性能吗? 我需要这么多安全防护功能吗? Windows 不是一个安全的操作系统吗?*
### macOS 和 iCloud:一个爱情故事?
> [Scott Williams][7]\
> iCloud 是什么?我怎么把它删掉?
Linux 用户们并不喜欢集成的云服务。他们宁愿挂载一个网盘(或网络存储器)。
即使他们选择了网盘,也应该按照用户的意图来工作。但是,在 macOS 上,你会经常被提示要使用 iCloud同时 Siri 还会跳出来捣乱。
### Linux 用户清理注册表
原先使用 Linux 的新手 Windows 用户为了能优化系统性能去清理注册表,但在面对那么多清理注册表和优化系统以提高性能的工具和选项时,可能会以一个没有反应的 Windows 而告终。
> [Scott Williams][8]\
> Reddit上有些人说需要“清理注册表”我按照几个教程删除了一些东西然后现在我的 Windows 变得很奇怪。
即使在 2022 年,对于应该在什么时候手动或者用工具清理注册表还是没有明确的规定。
虽说资深 Linux 用户喜欢在尝试新东西前关注细节。但如果 GUI 中没有恰当的警告或提示,还怎么知道所有的注意事项呢。
### 经常需要重启
虽说不像 Linux 的重启那样Windows 的重启可以修复问题。不过,我到底要在更新 Windows 或者安装软件后重启多少次啊?
> [Scott Williams][9]\
> 第一次尝试 Windows 或 macOS 的 Linux 用户是这样的:\
> “究竟需要安装多少个版本的 .NET? 已经重启了多少次了?” \
> “为什么我的 Adobe 版本不支持这个版本的 macOS? 难怪那么多人在用 macOS 时会遇到麻烦。苹果公司需要修复这个问题了。”
每次我重启的时候后台运行的程序都被干掉了。
为什么 Windows 就不能在检测新安装的程序或者更新的时候简单地刷新一下而不是重启呢。Windows 为什么反着来呢。
### 这些东西还需要花钱? 我有 Windows 许可证还不够?
Linux 主要是自由和开源软件构成的,因此预装的工具也是免费的。
所以, 一个用惯那些工具的用户就不得不突然需要花钱买一个 Windows 许可证,而且还要支付软件费用。
微软是不是太贪婪了呢?
### 默认就缺少必须的软件包
在安装完 Windows 后我连压缩包都解压不了Windows 真的是现代操作系统吗?
### macOS 配置多显示器
> [Scott Williams][10]\
> 怎样让我的显示器在 macOS 上工作呢?
在 Linux 上配置多显示器非常轻松。但在 macOS 上完全不是那回事。
### 总结
归根到底这要看用户的标准和你熟悉的内容。Windows 和 macOS 经常被看作标准的桌面系统。
然而相比之下,大多数人除了知道 Linux 很难用外,对有关 Linux 的东西了解甚少。
不过,你只要掌握使用 Linux 的要领,就像你掌握 Windows、macOS 那样,用 Linux 桌面环境就很轻松了。
只不过在用 Linux 的过程会遇到各种各样的问题,但你只要有耐心就能享受整个过程了。
Linux 本身没有什么问题,是其他系统用户未能熟悉 Linux 的问题。我们并不希望 Linux 变成 Windows也不希望 Windows 表现得像 Linux任何操作系统都应该“做它自己”。
但话又说回来,不应该因为一个长期使用 Windows 的用户在最初使用时没有良好的体验就把 Linux 排除在外,因为同样的情况也可能发生在一个长期使用 Linux 的用户尝试 Windows/MacOS 时。
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/linux-user-trying-windows-macos/
作者:[Abhishek][a]
选题:[lkxed][b]
译者:[Kira-Pgr](https://github.com/Kira-Pgr)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/abhishek/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/linux-windows.png
[2]: https://www.youtube.com/watch?v=0506yDSgU7M&t=788s
[3]: https://news.itsfoss.com/content/images/2022/08/linus-sebastian-nukes-pop-os-while-installing-steam-os.webp
[4]: https://news.itsfoss.com/more-linux-distros-become-linus-proof/
[5]: https://twitter.com/vwbusguy/status/1463543535630569473
[6]: https://twitter.com/vwbusguy/status/1463556939728572419
[7]: https://twitter.com/vwbusguy/status/1463579003504136192
[8]: https://twitter.com/vwbusguy/status/1463595769051549697
[9]: https://twitter.com/vwbusguy/status/1463538368956887043
[10]: https://twitter.com/vwbusguy/status/1463606807906029570

View File

@ -0,0 +1,284 @@
[#]: subject: "Become A Pro Flatpak User By Learning These Commands"
[#]: via: "https://www.debugpoint.com/flatpak-commands/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15007-1.html"
如何成为专业的 Flatpak 用户
======
> 在这篇文章中,我将向你展示各种 Flatpak 命令,使你成为 Flatpak 的专业用户。
![][1]
Flatpak 沙盒技术是 Linux 应用分发的未来。如今,几乎所有重要的发行版都预装了 Flatpak因为采用它很容易维护它也更直接。
如果你每天都使用 Flatpak你可能知道这些命令。但如果你还在考虑把每一个应用程序都转到 Flatpak那么你应该通过这个命令列表来了解如何轻松管理 Flatpak 应用程序。
因此,为了帮助你做到这一点,我列出了一些易于使用的 Flatpak 命令供你参考,这些命令是从文档中的大量命令集中筛选出来的。
### Flatpak 命令参考
首先,我们来谈谈一些基本的命令。
#### 1、安装 Flatpak
自从上次我检查过后,如今所有重要的发行版都预装了 Flatpak。因此你可能不需要安装它。
然而,安装 Flatpak 就像在这两个主要发行版中运行以下命令一样简单:
```
sudo apt install flatpak // 用于 Ubuntu 和相关发行版
```
```
sudo dnf install flatpak // 适用于 Fedora 和基于 RPM 的发行版
```
如果你正在运行其他发行版,你可以查看我们关于 Flatpak 安装的 [详细指南][2]。
#### 2、设置 Flatpak 远程仓库
接下来,你需要在安装后设置与 <ruby>远程仓库<rt>remote</rt></ruby>的连接。远程仓库就像是一个存储库(参考 PPA用来分发 Flatpak 应用程序。
主要的仓库是 Flathub你可以用下面的命令来设置它。这个命令对所有发行版都是一样的。完成后重新启动你的系统你就可以安装 Flatpak 应用程序了。
```
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
```
**提示**:如果你有别的远程仓库,你可以使用相同的命令来添加该仓库。在一个系统中设置多个远程仓库是正常的。
**提示**:另外,你可以指定 `--user``--system` 开关来安装特定于你的用户 ID 或整个系统的 Flatpak 远程仓库。
```
flatpak remote-add --if-not-exists --user https://flathub.org/repo/flathub.flatpakrepo
```
```
flatpak remote-add --if-not-exists --system https://flathub.org/repo/flathub.flatpakrepo
```
#### 3、从 Flathub 安装 Flatpak 应用程序
Linux 中大多数重要的基于 GUI 的软件商店都默认允许安装 Flatpak 应用程序。例如,如果你正在使用“<ruby>软件<rt>Software</rt></ruby>”(适用于 Ubuntu 或 Fedora GNOME 版),你可以找到应用程序并点击安装按钮进行安装。
或者,在 KDE Plasma 的 “<ruby>发现<rt>Discover</rt></ruby>” 中:
![KDE “发现”可以从 Flathub 拉取 Flatpak 应用程序][3]
但是,最简单的方法是复制 [Flathub 商店][4] 中的安装命令(可在每个应用程序信息页面的底部找到)并将其粘贴到终端。这是安装 Flatpak 应用程序的最快方法。
```
flatpak install org.kde.kdenlive
```
#### 4、运行一个应用程序
有两种方法来运行你安装的 Flatpak 应用程序。你可以在图形化桌面环境的应用程序菜单中找到它。或者,你可以使用简单的运行(`run`)参数来启动。
你可以从 Flathub 应用程序页面找到运行命令。
```
flatpak run org.kde.kdenlive
```
现在,你已经学会了如何设置、安装和运行 Flatpak 应用程序。现在是时候深入了解一下了。
#### 5、找出已安装的 Flatpak 应用程序列表
经过几年,你可能已经安装和删除了许多 Flatpak 应用程序。但是,你怎么找出安装了多少 Flatpak 应用程序?或者你可能想知道系统所安装的 Flatpak 应用是什么。
这里有一些 Flatpak 命令(通过终端运行),可以在这方面帮助你。
一个简单的 `flatpak` 命令可以列出所有安装的应用程序。这包括系统应用和你的应用:
```
flatpak list
```
只显示你的应用程序:
```
flatpak --user list
```
更详细一点,你可以在上述两个命令中使用额外的列(如名称、大小等)进行过滤:
```
flatpak --columns=app,name,size,installation list
```
```
flatpak --columns=name,size --user list
```
![flatpak 带有额外列的列出命令][5]
#### 6、找出已安装应用程序的更多信息
现在,你已经通过上述 Flatpak 命令安装了一个应用程序。但是,如果你想知道架构、版本、分支、许可证和其他信息,该怎么办呢?你可以使用 `info` 参数来实现。这个命令需要 Flatpak 的 “应用 ID”你可以通过上面的 `flatpak list` 命令得到它。
例如:
```
flatpak info org.kde.kdenlive
```
![flatpak info 命令][6]
#### 7、找出 flatpak 命令在你系统中的全部历史记录
`flatpak` 命令中的 `histroy` 开关会列出在你的系统中发生的活动,包括安装、更新、卸载和日期时间戳。如果你想调查一些事情,这非常有用。
```
flatpak history
```
#### 8、更新 Flatpak 应用程序
`flatpak` 命令中的 `update` 参数可以更新所有的应用程序和运行时。当你运行这个命令时,它会显示可用的更新,并要求你确认是否继续。
```
flatpak update
```
如果你想更新一个特定的应用程序而不是整个系统,请使用 `--app``--runtime` 开关,分别用于应用程序和运行时。
例如,如果我想在我的系统中只更新 kdenlive我将运行以下命令
```
flatpak update --app org.kde.kdenlive
```
**提示**`update` 参数通常会更新到任何程序的分支顶端。然而,使用 `update` 参数中的 `--commit` 开关,你可以更新到 Flatpak 中的某个特定分支(升级或降级)。例如:
```
flatpak update --app org.kde.kdenlive --commit 37103f4ee56361a73d20cf6957d88f3cab802909a5966c27a6e81d69795a15
```
如果你想使用同一个应用程序的多个版本,这个 `--commit` 开关是非常有用的。
![flatpak 带有提交开关的更新命令示例][7]
#### 9、管理 Flatpak 应用程序的权限
不同的应用程序需要不同的权限,如摄像头、麦克风、屏幕等等。通过命令来管理这些单独的权限有点让人不知所措。因此,管理 Flatpak 权限的最好方法是使用另一个叫做 Flatseal 的 Flatpak 应用程序。它为你提供了一个漂亮的 GUI有切换按钮来启用/禁用/审查已安装的 Flatpak 应用程序的权限。
你可以在 [这里][8] 阅读 Flatseal 的更多信息。
#### 10、卸载 Flatpak 应用程序的命令
卸载 Flatpak 应用程序有不同的使用情况。所以,这里是快速指南。
要卸载单个应用程序,使用 `uninstall` 参数和应用程序 ID。例如
```
flatpak uninstall org.kde.kdenlive
```
要卸载所有应用程序,使用 `—all` 开关:
```
flatpak uninstall --all
```
要卸载未使用的应用程序,请使用以下方法:
```
flatpak uninstall --unused
```
#### 11、删除并去除 Flatpak 应用程序的所有痕迹
**使用以下命令时要特别小心,因为它将删除一切。**
即使你卸载了 Flatpak 应用程序,一些应用程序的数据仍然保留在你的系统中,除非你在运行卸载程序时增加一些开关。在你可能想删除所有东西并重新开始使用 Flatpak 的情况下,这是必要的。
要卸载和删除特定应用程序的数据,请使用以下命令。例如:
```
flatpak uninstall -y --delete-data org.kde.kdenlive
```
要卸载和删除所有与 Flatpak 相关的东西,请使用下面的命令:
```
flatpak uninstall --all --delete-data
```
#### 12、清理和磁盘空间的使用
默认情况下Flatpak 被安装在 `/var/lib/flatpak`。这个目录包含所有与 Flatpak 相关的数据和元数据以及运行时文件。而用户特定的安装目录是 `~/.local/share/flatpak`
你可以用以下命令找出 Flatpak 应用程序使用的磁盘空间。
```
du -h /var/lib/flatpak
```
要清理,你可以使用上面提到的 `--unused``--uninstall` 开关。详情请访问我们的 [Flatpak 清理指南][9]。
### 总结
为了便于你随时参考,这里是对上面解释的 `flatpak` 命令的一个总结。把这个页面收藏起来,以便于参考。
```
# 安装和运行
flatpak install org.kde.kdenlive
flatpak run org.kde.kdenlive
# 列出已安装的 Flatpak 应用程序
flatpak list
flatpak --user list
flatpak --columns=app,name,size,installation list
flatpak --columns=name,size --user list
# 找出应用 ID 和命令历史
flatpak info org.kde.kdenlive
flatpak history
# 更新 Flatpak 应用程序
flatpak update
flatpak update --app org.kde.kdenlive
# 删除 Flatpak 应用程序
flatpak uninstall org.kde.kdenlive
flatpak uninstall --unused
# 删除应用及数据(小心使用)
flatpak uninstall --all
flatpak uninstall -y --delete-data org.kde.kdenlive
flatpak uninstall --all --delete-data
```
最后,请在评论框中告诉我,你认为还有哪些 Flatpak 命令也应该包括在这个列表中。
[一些例子来自官方参考资料][10]。
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/flatpak-commands/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.debugpoint.com/author/admin1/
[b]: https://github.com/lkxed
[1]: https://www.debugpoint.com/wp-content/uploads/2022/08/fpref-1024x576.jpg
[2]: https://www.debugpoint.com/how-to-install-flatpak-apps-ubuntu-linux/
[3]: https://www.debugpoint.com/?attachment_id=10760
[4]: https://flathub.org/apps
[5]: https://www.debugpoint.com/?attachment_id=10758
[6]: https://www.debugpoint.com/?attachment_id=10757
[7]: https://www.debugpoint.com/wp-content/uploads/2022/08/Example-of-flatpak-commands-update-with-commit-1024x576.jpg
[8]: https://www.debugpoint.com/manage-flatpak-permission-flatseal/
[9]: https://www.debugpoint.com/clean-up-flatpak/
[10]: https://docs.flatpak.org/en/latest/flatpak-command-reference.html

View File

@ -0,0 +1,144 @@
[#]: subject: "Blackbox is an Aesthetically Pleasing Terminal for Minimalists Linux Users"
[#]: via: "https://itsfoss.com/blackbox-terminal/"
[#]: author: "Anuj Sharma https://itsfoss.com/author/anuj/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14992-1.html"
Blackbox极简主义 Linux 用户的美观终端
======
![](https://img.linux.net.cn/data/attachment/album/202209/01/230823b2n8vhe6jn5vz5uq.jpg)
有 [许多可用于 Linux 的终端仿真器][1]。从 Terminator 到 Tilix你有多种终端可供选择。
但这并没有阻止新终端应用的到来。你最近已经见过了 [GNOME Console][2] 吧,今天,我将向你介绍 Blackbox。
### Blackbox 终端:概述和功能
Blackbox 是一个支持 GTK4 的终端仿真器。开发者为了他可以在 Linux 上使用外观优美的终端应用而创建了这个项目。
所以,不要指望它有很多功能。它只是一个使用 GTK4 工具包并支持主题的终端仿真器。
换句话说,它更多注重的是关于外观而不是功能。
以下是 Blackbox 的主要亮点:
* 可设置主题(支持 [Tilix][3] 兼容的配色方案)
* 主题与窗口装饰的融合
* 自定义字体
* 各种可自定义的 UI 设置
* 标签
* 可切换的标题栏
* 点击打开链接
* 文件拖放支持
谈到外观,让我们来看看它提供的不同外观。默认窗口将类似于下面的截图。
![Default look of Blackbox terminal][4]
#### 没有标题栏
你也可以取消标题栏,如下所示。这是 GTK4 应用程序中最“流行”的功能之一。
![Blackbox without header bar][5]
你还可以在无标题栏模式下启用浮动控件。
![Floating controls with no header bar mode][6]
#### 轻松复制和粘贴(不要抗拒)
`Ctrl+C``Ctrl+V` 就像复制粘贴的通用键盘快捷键。
但是古老的 Unix 在宇宙之前就存在了,因此它使用 [Ctrl+C 键来终止终端中正在运行的程序][7]。
但是,有些人发现不能使用他们最喜欢的快捷键来 [在终端中复制粘贴][8] 有点不方便。
Blackbox 允许你通过启用“轻松复制和粘贴”设置来更改它。启用此设置后,你可以使用 `Ctrl+C``Ctrl+v` 进行复制粘贴操作。
不用担心。`Ctrl+C` 仍可用于停止正在运行的命令。
![Easy copy-paste mode allows using Ctrl+C and Ctrl+V keys][9]
#### 主题
你还可以从设置中选择不同的主题。有几个浅色和深色主题可供选择。你还可以使用 Tilix 风格的主题。
![Available themes for Blackbox][10]
让我们看看它在 Yaru 主题和不扩展选项卡的情况下的外观,这与默认的 Blackbox 行为不同。
![Blackbox with a changed theme][11]
#### 重置为默认
还有一些更方便的功能,例如记住窗口大小、按像素滚动等。
好消息是,如果你对设置进行了太多更改,你可以将它们全部还原并重置为默认设置。
该选项在“<ruby>首选项<rt>Preferences</rt></ruby>”的“<ruby>高级<rt>Advance</rt></ruby>”选项卡中可用。
![reset blackbox settings to default][12]
### 安装 Blackbox 终端
请记住,**Blackbox 处于开发的早期阶段**。我在切换主题时出现过崩溃。
要安装 Blackbox 终端,你应该在系统中安装 [Flatpak 并启用 Flathub 仓库][13]。
使用此命令在你的系统上安装 Blackbox
```
flatpak install flathub com.raggesilver.BlackBox
```
在 Fedora 和其他一些与 Flatpak 集成的发行版上,你可以从软件中心安装 Blackbox。
![Blackbox can also be installed in GNOME Software Center][14]
安装后,你可以从应用菜单启动它。
#### 卸载 Blackbox 终端
如果你不喜欢 Blackbox 并想将其删除,请输入以下命令将其删除。
```
flatpak uninstall flathub com.raggesilver.BlackBox
```
### 结论
在我看来Blackbox 是一个不错的终端模拟器。在不支持 GTK4 的发行版上,你可以获得 GTK4 所能提供的所有精彩内容。它提供的功能足以应付日常工作。
最后,这一切都取决于个人喜好。你可能会喜欢它,也可能不喜欢它。如果你喜欢体验,请尝试一下,并在评论栏与我们分享你的经验。
--------------------------------------------------------------------------------
via: https://itsfoss.com/blackbox-terminal/
作者:[Anuj Sharma][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/anuj/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/linux-terminal-emulators/
[2]: https://itsfoss.com/gnome-console/
[3]: https://github.com/gnunn1/tilix
[4]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-default.png
[5]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-noheader.png
[6]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-floating-controls.png
[7]: https://itsfoss.com/stop-program-linux-terminal/
[8]: https://itsfoss.com/copy-paste-linux-terminal/
[9]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-easy-copy-paste.png
[10]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-theme-selection.png
[11]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-yaru.png
[12]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-reset.png
[13]: https://itsfoss.com/flatpak-guide/
[14]: https://itsfoss.com/wp-content/uploads/2022/08/blackbox-install.png

View File

@ -0,0 +1,149 @@
[#]: subject: "sudo apt update vs upgrade: Whats the Difference?"
[#]: via: "https://itsfoss.com/apt-update-vs-upgrade/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "Yufei-Yan"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14994-1.html"
apt 的 update 和 upgrade 命令的区别是什么?
======
![](https://img.linux.net.cn/data/attachment/album/202209/02/224416uecz5x75yalc0axc.jpg)
如果想让你的 Ubuntu 或者 Debian 系统保持更新,要用 `sudo apt update``sudo apt upgrade` 命令组合。
一些以前的教程也会提到 `sudo apt-get update``sudo apt-get upgrade`
`apt``apt-get` 命令运行起来几乎一样,除了一些细微的差别,后面我会讨论。
我们首先讨论一下 `update``upgrade` 的区别。这两个难道不是一样的吗?
### apt 的 update 和 upgrade 的区别
尽管听上去运行 `apt update` 可以给你一个包的最新版本,然而这并不正确。`update` 命令只会获得系统上所有包的最新信息,并不会下载或者安装任何一个包。而是 `apt upgrade` 命令来把这些包下载和升级到最新版本。
还是有点困惑?让我来接着解释。我建议阅读 [包管理器的概念][1]。这个会帮你更好的理解这些东西。
![Linux Package Manager Explanation][2]
基本上,你的系统围绕着一个所有可用包的数据库(缓存)工作。注意,这个缓存(或者数据库)并不包含这些包本身,仅仅是关于包的元数据(版本、仓库、依赖等)。
如果你不更新这个数据库,系统就不会知道是否有更新的版本。
当你运行 `apt update` 或者 `apt-get update` 命令,它会获取这些包的最新元数据(包的版本等)。
![apt update][3]
这时候本地缓存就被更新了,有一些包可以升级。用 `sudo apt upgrade` 可以升级所有(可升级的)包。
它会显示要升级的包,并且通过回车(默认选择是 `Y`)或者按下 `Y` 键进行确认。要在这个阶段取消升级,可以按下 `N`
![apt upgrade][4]
下面这些可能会帮助你记忆:
* `apt update`:更新包缓存(可以知道包的哪些版本可以被安装或升级)
* `apt upgrade`:升级包到最新版本
因为有一些管理员命令,需要作为 root 运行。因此需要使用 `sudo` 配合其他命令。`sudo` 使你能够作为 root 在 Ubuntu 和 Debian 上运行命令。
既然理解了 `update``upgrade` 是如何一起运行的,我们接下来来讨论一下 `apt``apt-get` 的用法。
### apt 还是 apt-get应该用哪个
Debian 和 Ubuntu 使用的是 APT 包管理系统。不要和 `apt` 命令弄混了。
有许多和 APT 包管理交互的命令;`apt-get`、`apt`、`dpkg`、`aptitude` 等。
这里面最受欢迎的就是 `apt-get` 命令。它是一个<ruby>低层级<rt>low-level</rt></ruby>且功能丰富的命令。`apt` 是 `apt-get` 命令的一个更新而更简单的版本。
可以读一下这篇文章来 [了解 atp 和 apt-get 命令的不同][5]。下面重点讨论这些命令中 `update``upgrade` 选项的区别。
#### apt update vs apt-get update
`apt-get update``apt update` 做的是同样的事,都是更新本地包缓存,这样的话你的系统就知道有哪些包的版本是可用的。
从技术上讲,其实并没有区别。然而,`apt update` 在一个方面比 `apt-get update` 做的好,**它会告诉你可升级的包的数量**。
```
Hit:15 https://ppa.launchpadcontent.net/slimbook/slimbook/ubuntu jammy InRelease
Fetched 213 kB in 4s (55.8 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
6 packages can be upgraded. Run 'apt list --upgradable' to see them.
```
`apt-get update` 甚至不会告诉你包是否可以升级。
![apt get update][6]
![apt update output][7]
`apt` 中可以看到 [列出可升级的包][8],而 `apt-get` 甚至没有这个选项。
```
# apt list --upgradable
Listing... Done
fprintd/jammy-updates 1.94.2-1ubuntu0.22.04.1 amd64 [upgradable from: 1.94.2-1]
gnome-control-center-data/jammy-updates,jammy-updates 1:41.7-0ubuntu0.22.04.4 all [upgradable from: 1:41.7-0ubuntu0.22.04.1]
gnome-control-center-faces/jammy-updates,jammy-updates 1:41.7-0ubuntu0.22.04.4 all [upgradable from: 1:41.7-0ubuntu0.22.04.1]
gnome-control-center/jammy-updates 1:41.7-0ubuntu0.22.04.4 amd64 [upgradable from: 1:41.7-0ubuntu0.22.04.1]
libpam-fprintd/jammy-updates 1.94.2-1ubuntu0.22.04.1 amd64 [upgradable from: 1.94.2-1]
vivaldi-stable/stable 5.4.2753.40-1 amd64 [upgradable from: 5.4.2753.37-1]
```
现在来比较一下两个命令中 `upgrade` 的选项。
#### apt upgrade vs apt-get upgrade
`apt-get upgrade``apt upgrade` 命令根据本地包缓存(通过 `update` 命令更新)的数据,安装可升级包的最新版本。
然而,`apt upgrade` 命令会做两件与 `apt-get upgrade` 不同的事情。
`apt upgrade` 命令可以升级 Linux 内核版本,`apt-get upgrade` 不能。`apt-get` 命令需要使用 [apt-get dist-upgrade][9] 来升级内核版本。
![apt-get upgrade command cannot upgrade Linux kernel version][10]
这是因为升级内核版本意味着安装一个全新的包。`apt-get upgrade` 命令不能安装一个新的包。它只能升级现有的包。
`apt upgrade``apt-get` 做的好的另一件小事是,它会在底部**显示一个进度条**。
![apt upgrade progress bar][11]
### 总结
`update``upgrade` 两个词很相似,这就是为什么很多新用户会感到困惑。有时候,我觉得 `apt update` 命令应该和 `apt upgrade` 命令合并。
我意思是 `upgrade`(所有已安装的包)和 `update`(本地包元数据缓存)一起完成工作。为什么要有两个分开的命令呢?把这两个领命合成一个 `upgrade` 命令吧。Fedora 就是这样对 DNF 命令进行了改进。不过这只是我的观点。
我希望这篇文章可以解释一些关于 `apt-get update`、`apt-get upgrade` 和 `apt update` 以及 `apt upgrade` 命令的问题。
如果有任何问题,请与我联系。
--------------------------------------------------------------------------------
via: https://itsfoss.com/apt-update-vs-upgrade/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[Yufei-Yan](https://github.com/Yufei-Yan)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/package-manager/
[2]: https://itsfoss.com/wp-content/uploads/2020/10/linux-package-manager-explanation.png
[3]: https://itsfoss.com/wp-content/uploads/2022/08/apt-update.png
[4]: https://itsfoss.com/wp-content/uploads/2022/08/apt-upgrade.png
[5]: https://itsfoss.com/apt-get-upgrade-vs-dist-upgrade/
[6]: https://itsfoss.com/wp-content/uploads/2022/08/apt-get-update.png
[7]: https://itsfoss.com/wp-content/uploads/2022/08/apt-update-output.png
[8]: https://itsfoss.com/apt-list-upgradable/
[9]: https://itsfoss.com/apt-get-upgrade-vs-dist-upgrade/
[10]: https://itsfoss.com/wp-content/uploads/2022/08/apt-get-upgrade.png
[11]: https://itsfoss.com/wp-content/uploads/2022/08/apt-upgrade-progress-bar.png

View File

@ -0,0 +1,118 @@
[#]: subject: "How to Get KDE Plasma 5.25 in Kubuntu 22.04 Jammy Jellyfish"
[#]: via: "https://www.debugpoint.com/kde-plasma-5-25-kubuntu-22-04/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14997-1.html"
如何在 Kubuntu 22.04 中安装 KDE Plasma 5.25
======
![](https://img.linux.net.cn/data/attachment/album/202209/03/233812h11u1b18p8j0u8ct.jpg)
KDE 开发人员现在启用了流行的向后移植 PPA并对 KDE Plasma 5.25 进行了必要的更新,你现在可以将其安装在 Kubuntu 22.04 Jammy Jellyfish 中。下面是方法。
KDE Plasma 5.25 于不久前的 2022 年 6 月 14 日发布,其中包含一些令人振奋的更新。在此版本中,你将获得**动态强调色**、改进的登录头像、**浮动面板**以及我们在 [功能亮点文章][1] 中介绍的许多功能。
但是,如果你正在运行早在 2022 年 4 月发布的 [Kubuntu 22.04 Jammy Jellyfish][2],那么你使用的是带有 KDE Framework 5.92 的 KDE Plasma 5.24。
你可能正在稳定的 Kubuntu 22.04 版本中等待享受新功能,现在可以通过著名的向后移植 PPA 在 Kubuntu 22.04 中安装它。
### 如何在 Kubuntu 22.04 中安装 KDE Plasma 5.25
这是使用最新的 KDE Plasma 5.25 升级 Kubuntu 22.04 的方法。
#### GUI 方式
如果你惯于使用 KDE 的软件应用 “<ruby>发现<rt>Discover</rt></ruby>”,请打开该应用。然后进入 “<ruby>设置<rt>Settings</rt></ruby>” > “<ruby>软件源<rt>Sources</rt></ruby>” 并添加 PPA`ppa:kubuntu-ppa/backports-extra`。然后单击“<ruby>更新<rt>Updates</rt></ruby>”。
#### 终端方法(推荐)
我建议你打开一个终端并进行此升级以更快地执行和安装。
打开 Konsole 并运行以下命令以添加 [向后移植 PPA][3]。
```
sudo add-apt-repository ppa:kubuntu-ppa/backports-extra
```
![Upgrade Kubuntu 22.04 with KDE Plasma 5.25][4]
现在,通过运行以下命令刷新包列表。然后验证 5.25 包是否可用。
```
sudo apt update
```
```
apt list --upgradable | grep 5.25
```
![KDE Plasma 5.25 packages are available now][5]
最后,运行最后一个命令来启动升级。
```
sudo apt full-upgrade
```
总共下载大约 200 MB 的软件包。根据你的互联网连接速度,整个过程大约需要 10 分钟。
上述命令完成后,重新启动系统。
重启后,你应该会在 Kubuntu 22.04 LTS 中看到新的 KDE Plasma 5.25。
![KDE Plasma 5.25 in Kubuntu 22.04 LTS][6]
### 其他向后移植 PPA
请注意,[另外的向后移植 PPA][7] `ppa:kubuntu-ppa/backports` 目前提供的是 Plasma 5.24。因此,请勿使用与上面不同的 PPA。我不确定这个 PPA 是否会得到更新。
```
sudo add-apt-repository ppa:kubuntu-ppa/backports // 不要使用这个
```
### 如何卸载
在任何时候,如果你想回到 KDE Plasma 桌面的原始版本,那么你可以安装 `ppa-purge` 并删除该 PPA然后刷新包。
打开终端,依次执行以下命令:
```
sudo apt install ppa-purge
sudo ppa-purge ppa:kubuntu-ppa/backports-extra
sudo apt update
```
完成上述命令后,重启系统。
### 结束语
这就是全部了。一个漂亮而简单的步骤,将 Jammy Jellyfish 中的 KDE Plasma 升级到 Plasma 5.25。我希望你升级顺利。
如果你遇到任何错误,请在评论栏告诉我。
干杯。
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/kde-plasma-5-25-kubuntu-22-04/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.debugpoint.com/author/admin1/
[b]: https://github.com/lkxed
[1]: https://www.debugpoint.com/kde-plasma-5-25/
[2]: https://www.debugpoint.com/kubuntu-22-04-lts/
[3]: https://launchpad.net/~kubuntu-ppa/+archive/ubuntu/backports-extra
[4]: https://www.debugpoint.com/wp-content/uploads/2022/08/Upgrade-Kubuntu-22.04-with-KDE-Plasma-5.25.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2022/08/KDE-Plasma-5.25-packages-are-available-now.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2022/08/KDE-Plasma-5.25-in-Kubuntu-22.04-LTS-1024x575.jpg
[7]: https://launchpad.net/~kubuntu-ppa/+archive/ubuntu/backports

View File

@ -0,0 +1,131 @@
[#]: subject: "How I analyze my music directory with Groovy"
[#]: via: "https://opensource.com/article/22/8/groovy-script-java-music"
[#]: author: "Chris Hermansen https://opensource.com/users/clhermansen"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15004-1.html"
我如何使用 Groovy 分析我的音乐目录
======
![](https://img.linux.net.cn/data/attachment/album/202209/06/091157xsta20az0az0ws0k.jpg)
> 为了简化 Java 的繁琐,我制作了一个 Groovy 工具来分析我的音乐目录。
最近,我一直在研究 Groovy 是如何简化略微繁琐的 Java 的。在这篇文章中,我开始了一个简短的系列,通过创建一个分析我的音乐目录的工具来演示 Groovy 脚本。
在本文中,我将演示 `groovy.File` 类如何扩展和精简 `java.File` 并简化其使用。这为查看音乐文件夹的内容提供了一个框架,以确保预期的内容(例如,`cover.jpg` 文件)就位。我使用 [JAudiotagger 库][2] 来分析音乐文件的标签。
### 安装 Java 和 Groovy
Groovy 基于 Java需要安装 Java。 Java 和 Groovy 的最新和稳定的版本可能都在你的 Linux 发行版的仓库中。 Groovy 也可以直接从 [Apache Foundation 网站][3] 安装。对于 Linux 用户来说,一个不错的选择是 [SDKMan][4],它可用于获取 Java、Groovy 和许多其他相关工具的多个版本。对于本文,我使用以下 SDK 版本:
* Java版本 11.0.12-open 的 OpenJDK 11
* Groovy版本 3.0.8
### 音乐元数据
最近,我重整了我的音乐消费方式。我决定使用优秀的开源 [Cantata][5] 音乐播放器,它是开源 [MPD 音乐播放器][6] 的一个前端。我所有的电脑的音乐都存储在 `/var/lib/mpd/music` 目录下。在该音乐目录下有艺术家子目录,在每个艺术家子目录下有专辑子目录,包含音乐文件、`cover.jpg`,偶尔还有 PDF 格式的内页说明。
我绝大部分的音乐文件都是 FLAC 格式的,有一些是 MP3 格式,可能还有一小部分是 OGG 格式。我选择 JAudiotagger 库的一个原因是它可以透明地处理不同的标签格式。当然JAudiotagger 是开源的!
那么查看音频标签有什么意义呢?以我的经验,音频标签的管理极差。(提到音频标签,)我的脑海中浮现出“粗心”这个词。这是标签本身真正存在的问题,也可能是出于我自己的学究倾向。无论如何,这是一个可以通过使用 Groovy 和 JAudiotagger 解决的重要问题。不过,它不仅适用于音乐收藏。许多其他现实世界的问题也适用,如需要下沉到文件系统中的目录树来处理在那里找到的内容。
### 使用 Groovy 脚本
这是此任务所需的基本代码。我在脚本中加入了注释,这些注释反映了我通常留给自己的(相对简写的)“注释提醒”:
```
// 定义音乐库目录
def musicLibraryDirName = '/var/lib/mpd/music'
// 输出 CSV 文件标题行
println "artistDir|albumDir|contentFile"
// 迭代音乐库目录中的每个目录
// 这一层应该是艺术家目录
new File(musicLibraryDirName).eachDir { artistDir ->
// 迭代艺术家目录中的每个目录
// 这一层应该是专辑目录
artistDir.eachDir { albumDir ->
// 迭代专辑目录中的每个目录
// 这里应该是内容
// 或相关内容(如 `cover.jpg`PDF 格式的内页说明)
albumDir.eachFile { contentFile ->
println "$artistDir.name|$albumDir.name|$contentFile.name"
}
}
}
```
如上所述,我使用 `groovy.File` 在目录树中移动。具体来说:
第 7 行创建一个新的 `groovy.File` 对象并在其上调用 `groovy.File.eachDir()`,第 7 行的 `{` 和第 18 行的结尾的 `}` 之间的代码是传给 `eachDir()``groovy.Colsue` 参数。
这意味着 `eachDir()` 为目录中找到的每个子目录执行该代码。这类似于 Java *lambda*(也称为“匿名函数”)。 Groovy 闭包不会像 lambda 那样限制对调用环境的访问(在最新版本的 Groovy 中,如果你愿意,也可以使用 Java lambda。如上所述音乐库目录中的子目录应该是艺术家目录例如“Iron Butterfly” 或 “Giacomo Puccini”因此 `artistDir``eachDir()` 传递给闭包的参数。
第 10 行对每个 `artistDir` 调用 `eachDir()`,第 10 行的 `{` 和第 17 行的 `}` 之间的代码形成另一个处理 `albumDir` 的闭包。
第 14 行,在每个 `albumDir` 上调用 `eachFile()`,第 14 行的 `{` 和第 16 行的 `}` 之间的代码形成了处理专辑内容的第三级闭包。
在本文的范围内,我对每个文件唯一需要做的就是开始构建信息表,我将其创建为一个以竖线分隔的 CSV 文件,它可以导入 [LibreOffice][7] 或 [OfficeOnly][8] 或任何其他电子表格。现在,代码输出前三列:艺术家目录名、专辑目录名和内容文件名(同样,第 2 行输出 CSV 标题行)。
在我的 Linux 笔记本电脑上运行它会产生以下输出:
```
$ groovy TagAnalyzer.groovy | head
artistDir|albumDir|contentFile
Habib Koite & Bamada|Afriki|02 - Ntesse.flac
Habib Koite & Bamada|Afriki|08 - NTeri.flac
Habib Koite & Bamada|Afriki|01 - Namania.flac
Habib Koite & Bamada|Afriki|07 - Barra.flac
Habib Koite & Bamada|Afriki|playlist.m3u
Habib Koite & Bamada|Afriki|04 - Fimani.flac
Habib Koite & Bamada|Afriki|10 - Massake.flac
Habib Koite & Bamada|Afriki|11 - Titati.flac
Habib Koite & Bamada|Afriki|03 Africa.flac
[...]
Richard Crandell|Spring Steel|04-Japanese Lullaby [Richard Crandell].flac
Richard Crandell|Spring Steel|Spring Steel.pdf
Richard Crandell|Spring Steel|03-Zen Dagger [Richard Crandell].flac
Richard Crandell|Spring Steel|cover.jpg
$
```
在性能方面:
```
$ time groovy TagAnalyzer.groovy | wc -l
9870
real 0m1.482s
user 0m4.392s
sys 0m0.230s
$
```
又好又快。它在一秒半内处理近 10,000 个文件!对我来说足够快。可观的性能、紧凑且可读的代码,还有什么不喜欢的?
在我的下一篇文章中,我会打开 JAudiotagger 并查看每个文件中的标签。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/8/groovy-script-java-music
作者:[Chris Hermansen][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/clhermansen
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/programming-code-keyboard-laptop-music-headphones.png
[2]: http://www.jthink.net/jaudiotagger/examples_read.jsp
[3]: https://groovy.apache.org/download.html
[4]: https://opensource.com/article/22/3/manage-java-versions-sdkman
[5]: https://opensource.com/article/17/8/cantata-music-linux
[6]: https://www.musicpd.org/
[7]: https://opensource.com/tags/libreoffice
[8]: https://opensource.com/article/20/7/nextcloud

View File

@ -0,0 +1,75 @@
[#]: subject: "Debian Finally Starts a General Resolution to Consider a Non-Free Firmware Image"
[#]: via: "https://news.itsfoss.com/debian-non-free/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14988-1.html"
Debian 终于开始讨论非自由固件镜像了
======
> Debian 终于开始考虑将非自由固件纳入一般决议中了。那么,将会如何呢?
![Debian 终于开始考虑非自由固件映像的一般决议][1]
由于其稳定性和新功能之间的平衡的做法Debian 是最受欢迎的 Linux 发行版之一。
但是,它并没有配备任何非自由固件。
对于想在新硬件上使用 Debian 的用户来说,这已经成为一个问题。
大多数最新的设备和配置都需要非自由固件来使其工作,这包括 Wi-Fi、图形显示等等。
为了解决这个问题,前 Debian 项目负责人、开发者 Steve McIntyre 已经对此积极讨论了一段时间。最近在 DebConf 22 会议上,正如 [Geeker's Digest][2] 所发现的那样Steve 谈到了修复固件的混乱局面,更好地向用户和开发者表明了这一点。
现在社区中讨论的进展是,看起来 Debian 已经启动了一项一般决议,让其利益相关者投票决定如何处理非自由固件的问题。
### Debian 的一般决议提案
这个一般决议案有四个提案LCTT 译注:原文和官方提案说明不够清晰,我根据理解重新梳理了):
* 提案 A改变原有的官方镜像集安装镜像和实况镜像Debian 将在官方镜像中包含非自由固件包。包含的固件将在检测到需求时默认启用。然而它也将包括让用户在启动时禁用的方法。截止本文发表时的提案支持人数17
* 提案 B不改变原有的镜像集保留原来的不包含非自由固件的镜像另外单独提供包含非自由固件的官方镜像。新的镜像下载链接将更醒目以方便新用户找到它们而原来的镜像的视觉优先级将变低。截止本文发表时的提案支持人数10
* 提案 C和提案 B 类似在用户下载不包含自由固件的镜像时提醒他们还有包含非自由固件的镜像可供下载。截止本文发表时的提案支持人数6
* 提案 D继续遵守《<ruby>Debian 社会契约<rt>Debian Social Contract</rt></ruby>》第 1 节和第 5 节的精神,继续保持现状,不在 Debian 中包含任何非自由软件但支持它们的使用并欢迎其他人分发这样的作品。截止本文发表时的提案支持人数6
这些是一些有趣的建议。我认为提案 A 对所有人都很方便,同时给高级用户禁用非自由固件的机会。
你可以在 [官方网页][3] 中了解更多关于一般决议的信息。
你怎么看?
### 将非自由固件纳入官方发行版中
至于目前的情况,你可以找到带有非自由固件的“**非官方**”的 Debian 镜像。
然而,并不是每个用户都知道它,即使它在 Debian 的下载页面上被宣传,“**非官方**”的说法也不会让用户比推荐的镜像更喜欢。
此外,当用户可以选择任何基于 Ubuntu 的发行版或 Ubuntu 作为替代品时,期望他们安装非自由固件是违反直觉的。
不仅仅限于这些问题Steve 在他的 [博客][4] 中还提到了其他一些问题,包括:
* 维护独立的非自由镜像是很耗时的。
* 由于缺乏非自由固件,许多用户不喜欢官方镜像。
*那么,你认为 Debian 的一般决议的投票结果是什么?一个单独的介质镜像?还是把它包括在官方镜像中?*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/debian-non-free/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/wordpress/2022/07/debian-non-free-firmware.jpg
[2]: https://www.geekersdigest.com/debian-on-the-verge-to-include-non-free-firmware-in-official-releases/
[3]: https://www.debian.org/vote/2022/vote_003#timeline
[4]: https://blog.einval.com/2022/04/19#firmware-what-do-we-do

View File

@ -0,0 +1,115 @@
[#]: subject: "Some ways to get better at debugging"
[#]: via: "https://jvns.ca/blog/2022/08/30/a-way-to-categorize-debugging-skills/"
[#]: author: "Julia Evans https://jvns.ca/"
[#]: collector: "lkxed"
[#]: translator: "aftermath0703"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14991-1.html"
提高调试能力的一些方法
======
![](https://img.linux.net.cn/data/attachment/album/202209/01/222854m78u44otl68yxbyu.jpg)
你们好!我一直在编写一本关于调试的杂志(这是 [目录的初稿][1])。
作为其中的一部分,我认为阅读一些关于调试的学术论文可能会很有趣,上周 [Greg Wilson][2] 给我发了一些关于调试学术研究的论文。
其中一篇论文(《[建立一个调试教学的框架[付费墙]][3]》)对我们有效调试所需的不同种类的知识/技能进行了分类,我非常喜欢。它来自另一篇关于故障排除的更一般性的论文:《[学会排错:一个新的基于理论的设计架构][4]》。
我认为这个分类对于思考如何更好地进行调试是一个非常有用的结构,所以我把论文中的五个类别重新规划为你可以采取的行动,以提高调试的效率。
以下是这些行动:
#### 1、学习代码库
要调试一些代码,你需要了解你正在使用的代码库。
这似乎有点显而易见(当然,不了解代码的工作原理,你就无法调试代码!)
这种学习随着时间的推移会很自然地发生,而且实际上调试也是 *学习* 一个新的代码库如何工作的最好方法之一——
看到一些代码是如何崩溃的,有助于你了解它是如何工作的。
该论文将此称为“系统知识”。
#### 2、学习系统
论文中提到,你需要了解编程语言,但我认为不止于此 —— 为了修复 bug往往你需要学习很多更广泛的环境而不仅仅是语言。
举个例子,如果你是后端 Web 开发者,你可能需要的一些“系统”知识包括:
* HTTP 缓存如何工作
* CORS
* 数据库事务是如何工作的
我发现我经常需要更有意识地去学习像这样的系统性的东西 —— 我需要真正花时间去查找和阅读它们。
该论文将此称为“领域知识”。
#### 3、学习你的工具
现在有很多工具,例如:
* 调试器GDB 等)
* 浏览器开发工具
* <ruby>剖析器<rt>profiler</rt></ruby>
* `strace` / `ltrace`
* `tcpdump` / `wireshark`
* 核心转储
* 甚至像错误信息这样的基本东西(如何正确阅读它们)
我在这个博客上写了很多关于调试工具的文章,并且肯定学习这些工具给我带来了巨大的变化。
该论文将此称为“处理性知识”。
#### 4、学习策略
这是最模糊的一类,在如何高效调试的过程中,我们都有很多策略和启发式方法。比如说:
* 写一个单元测试
* 写一个小的独立程序来重现这个错误
* 找到一个能工作的版本的代码,看看有什么变化
* 打印出无数的东西
* 增加额外的日志记录
* 休息一下
* 向朋友解释这个错误,然后在中途发现问题所在
* 查看 GitHub 上的问题,看看是否有匹配的问题
在写这本杂志的时候,我一直在思考这个类别,但我想让这篇文章简短,所以我不会在这里多说。
该论文将此称为“战略知识”。
#### 5、获得经验
最后一个类别是“经验”。这篇论文对此有一个非常有趣的评论:
> 他们的研究结果并没有显示出新手和专家所采用的策略有什么明显的区别。专家只是形成了更多正确的假设,并且在寻找故障方面更有效率。作者怀疑这个结果是由于新手和专家之间的编程经验不同造成的。
这真的引起了我的共鸣 —— 我遇到过很多第一次遇到时非常令人沮丧和困难的 bug而在第五次、第十次或第二十次时就非常简单了。
对我来说,这也是最直接的知识类别之一 —— 你需要做的就是调查一百万个 bug反正这就是我们作为程序员的全部生活 : ) 。这需要很长的时间,但我觉得它发生得很自然。
本文将此称为“经验知识”。
#### 就这样吧!
我打算把这篇文章写得很短,我只是非常喜欢这个分类,想把它分享出来。
--------------------------------------------------------------------------------
via: https://jvns.ca/blog/2022/08/30/a-way-to-categorize-debugging-skills/
作者:[Julia Evans][a]
选题:[lkxed][b]
译者:[aftermath0703](https://github.com/aftermath0703)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://jvns.ca/
[b]: https://github.com/lkxed
[1]: https://twitter.com/b0rk/status/1562480240240525314?s=20&t=BwKd6i0mVCTaCud2HDEUBA
[2]: https://third-bit.com/
[3]: https://dl.acm.org/doi/abs/10.1145/3286960.3286970
[4]: https://www.researchgate.net/profile/Woei-Hung/publication/225547853_Learning_to_Troubleshoot_A_New_Theory-Based_Design_Architecture/links/556f471c08aec226830a74e7/Learning-to-Troubleshoot-A-New-Theory-Based-Design-Architecture.pdf

View File

@ -0,0 +1,596 @@
[#]: subject: "21 Basic Linux Networking Commands You Should Know"
[#]: via: "https://itsfoss.com/basic-linux-networking-commands/"
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15013-1.html"
你应该知道的 22 个基本的 Linux 网络命令
======
![](https://img.linux.net.cn/data/attachment/album/202209/09/151623qbizibbrzfrffrpc.jpg)
我们并不是每天都会谈论 Linux 的命令行。但正如一些读者指出的那样,你们也想学习一些命令行的技巧。
因此,我整理了一份基本的 Linux 网络命令清单,这些命令在我的大学时代帮助了我,让我对如何在网络方面使用 Linux 有了坚定的认识。
这些命令将帮助你设置网络,以及解决你在 Linux 系统中可能遇到的各种网络问题。
### Linux 中的基本网络命令
这个汇编包括了 CLI 实用程序,它们将帮助你排除网络问题、监控数据包和连接的设备,以及更多。
在我展示这些命令的一些细节之前,让我分享一下我今天要讨论的所有命令的简要概述。
| 命令 | 说明 |
| :- | :- |
| `ip` | 操纵路由来分配和配置网络参数 |
| `traceroute` | 识别数据包到达主机的路径 |
| `tracepath` | 在追踪网络主机的路径时,获取最大传输单元 |
| `ping` | 通常用于检查主机和服务器之间的连接情况 |
| `ss` | 获得有关网络套接字的详细信息 |
| `dig` | 给出所有关于 DNS 名称服务器的必要信息 |
| `host` | 输出特定域和主机的 IP 地址 |
| `hostname` | 主要用于输出和更改主机名 |
| `curl` | 在网络上通过各种协议传输数据 |
| `mtr` | `ping``traceroute` 的组合,用于诊断网络 |
| `whois` | 获取有关注册的域名、IP 地址、名称服务器等信息 |
| `ifplugstatus` | 检测本地以太网设备的链接状态 |
| `iftop` | 监视与带宽有关的统计信息 |
| `tcpdump` | 数据包嗅探和分析工具,用于捕获、分析和过滤网络流量 |
| `ethtool` | 允许用户配置以太网设备 |
| `nmcli` | 用于网络连接的故障排除工具 |
| `nmap` | 主要用于审计网络安全 |
| `bmon` | 开源工具,用于监控实时带宽 |
| `firewalld` | 配置防火墙规则的 CLI 工具 |
| `iperf` | 测量网络性能和调整的工具 |
| `speedtest-cli` | speedtest.net 的 CLI 工具,用于检查网速 |
| `vnstat` | 主要用于监控网络流量和带宽消耗 |
现在,让我们用例子和更深入的方式讨论它们。
请注意,并不是所有的命令都会预装。我已经添加了针对 Debian/Ubuntu 的说明。对于其他发行版,请使用你的软件包管理器进行安装。
#### 1、ip 命令
`ip` 命令是最基本的,但也是最重要的,你会发现系统管理员经常使用它,其用于从操纵路由到分配和配置网络参数。
虽然用例可能无穷无尽,但让我向你展示 `ip` 命令的最基本用例(寻找 IP 地址)。
```
ip address
```
![ip address][1]
同样,你也可以使用 `ip` 命令来持续监控设备的状态,请使用 `monitor` 参数而不是我们之前用来获取 IP 地址的 `address` 参数:
```
ip monitor
```
![ip monitor][2]
#### 2、traceroute
使用 `traceroute` 命令,你可以确定数据包到达主机的路线。而且,当你想询问数据包的传输情况和数据包所走的跳数时,它可能相当有用。
默认情况下,你的系统可能没有安装 `traceroute`,如果你使用的是 Debian 及派生的发行版(包括 Ubuntu安装时只需使用一个命令
```
sudo apt install traceroute
```
例如,追踪到 google.com 的数据包:
```
traceroute google.com
```
![traceroute google.com][3]
默认情况下,`traceroute` 会使用 IPv4但是你可以通过使用 `-6` 选项来改变这一行为,该选项将指示 `traceroute` 使用 IPv6。让我告诉你怎么做
![traceroute -6 google.com][4]
#### 3、tracepath
`tracepath` 命令用于发现 MTU最大传输单元同时追踪到网络主机的路径。它与我上面讨论的 `traceroute` 很相似,但它不需要 `sudo` 权限,而且也没有像它那么多功能。
但是,首先什么是 MTU
MTU 就是可以在网络上传输或接收的最大帧或数据包。
现在,让我们看一下 google.com 的 `tracepath` 的基本例子:
```
tracepath google.com
```
![tracepath google.com][5]
同样,你可以使用 `-b` 选项同时打印出 IP 地址和主机名。
```
tracepath -b google.com
```
![tracepath -b google.com][6]
#### 4、ping
[ping 命令][7]<ruby>数据包网络飞龙探云手<rt>Packet Internet Groper</rt></ruby> 🤣) 可以说是在排除网络故障时最重要的命令之一,因为它是检查主机和服务器之间连接情况的最常用方法。
例如,我 `ping` 谷歌:
```
ping google.com
```
![ping google.com][8]
这里,最后一行(`min/avg/max`)表示从指定的服务器获得响应的时间。
如果你得到一个错误提示 `bash: ping: command not found` LCTT 译注:不会吧?),你可以查看我们的指南 [如何在 Ubuntu 上安装 Ping][9]。
#### 5、ss
`ss`<ruby>套接字统计<rt>socket statistics</rt></ruby>)命令用于详细了解网络套接字(在网络上发送和接收数据的端点)。
要列出所有监听和非监听的 TCP 连接,你必须使用 `-at` 选项,如下所示:
```
ss -at
```
![ss -at][10]
同样,你可以使用 `-au` 选项对 UDP 端口进行同样的操作:
```
ss -au
```
![ss -au][11]
#### 6、dig
[dig 命令][12]<ruby>域信息龙爪手<rt>Domain Information Groper</rt></ruby> 😜)用于获取有关域名的所有必要信息。
要在基于 Ubuntu 的发行版上安装 `dig` 工具,请按照给出的命令进行:
```
sudo apt install dnsutils
```
现在,让我告诉你如何获取一个特定主机的信息,在这个例子中,我将获取 itsfoss.com 的信息:
```
dig itsfoss.com
```
![dig itsfoss.com][13]
#### 7、host
`host` 命令主要用于获取一个特定主机的 IP 地址,或者你可以从一个特定的 IP 地址获取主机名。换句话说,它是一个 DNS 查询工具。
要找到主机的 IP你只需要在 `host` 命令中附加主机名。让我告诉你怎么做:
```
host itsfoss.com
```
![host itsfoss.com][14]
同样,你可以用一个 IP 地址来获取主机名:
```
host 8.8.4.4
```
![host 8.8.4.4][15]
#### 8、hostname
如果你已经使用了一段时间的 Linux你一定很熟悉这个命令因为这主要是用来 [改变你的系统的主机名][16] 和 NIS网络信息系统的主机名。
当不使用任何选项时,它可以得到系统当前的主机名。
```
hostname
```
![hostname][17]
从包含所需主机名的文件中改变主机名是这个工具的另一个有趣的功能:
```
sudo hostname -F <filename>
```
![sudo hostname -F][18]
#### 9、curl
`curl`<ruby>客户端 URL<rt>Client URL</rt></ruby>)命令主要用于在网络上传输数据,支持各种协议,包括 HTTP、FTP、IMAP 和许多其他协议。
这个工具是首选的自动化工具,因为它是在没有任何人类互动的情况下工作的,也可以用于端点测试、调试和错误记录。
`curl` 工具没有预装,如果你在任何 Debian 及其派生发行版上,你只需要使用以下命令进行安装:
```
sudo apt install curl
```
使用 `curl` 命令 [下载文件][19] 非常容易,你只需在 URL 中使用 `-O` 选项,就可以开始了。
```
curl -O [URL]
```
![curl -o url][20]
在下载大文件时,进度条会很方便,你可以用 `curl``-#` 选项来显示进度条。
![curl -# -O][21]
#### 10、mtr
它是 `ping``traceroute` 工具的组合,主要用于网络诊断,并提供网络响应和连接的实时情况。
使用 `mtr` 的最简单方法是用它跟上一个主机名或 IP 地址,它将给出一个实时的 `traceroute` 报告。
```
mtr [URL/IP]
```
![mtr google.com][22]
如果你想让 `mtr` 同时显示主机名和 IP 地址,你可以把它和 `-b` 选项配对,如下图:
```
mtr -b [URL]
```
![mtr -b][23]
#### 11、whois
`whois` 可以帮助你找到有关注册的域名、IP 地址、名称服务器等信息,因为它是 whois 目录服务的客户端。
这个工具可能没有预装在你的设备上,要在基于 Debian/Ubuntu 的发行版上安装,你可以使用给出的命令:
```
sudo apt install whois
```
一般来说,`whois` 命令是与给出的域名配对使用的:
```
whois [DomainName]
```
![whois google.com][24]
另外,你也可以用一个 IP 地址来代替域名,你会得到同样的细节。
#### 12、ifplugstatus
`ifplugstatus` 是一个最基本的,但也是最有用的工具,足以在基本水平上排除连接问题。它用于检测本地以太网的链接状态,其工作方式与 `mii-diag`、`mii-tool` 和 `ethtool` 类似,支持所有三个 API。
在基于 Debian/Ubuntu 的发行版上安装,你可以按照给出的命令进行:
```
sudo apt install ifplugd
```
这个工具没有任何花哨的选项,经常不需要与任何配对选项而使用:
```
ifplugstatus
```
![ifplugstatus][25]
#### 13、iftop
`iftop`<ruby>接口的 top<rt>Interface TOP</rt></ruby>)经常被管理员用来监控与带宽有关的统计数据,当你遇到网络问题时,也可以作为诊断工具使用。
这个工具需要手动安装,可以通过给出的命令在运行 Debian/Ubuntu 的机器上轻松安装。
```
sudo apt install iftop
```
`iftop` 在没有任何选项的情况下使用时,它会显示默认接口的带宽统计。
```
sudo iftop
```
![iftop][26]
你也可以通过在设备名称后面加上 `-i` 选项来指定网络设备。
```
sudo iftop -i <DeviceName>.
```
在我的例子中,是 `enp1s0`,所以我的输出将是如下:
![sudo iftop -i enp1s0][27]
#### 14、tcpdump
`tcpdump` 是一个数据包嗅探和分析工具,用于捕获、分析和过滤网络流量。它也可以作为一个安全工具使用,因为它将捕获的数据保存在可以 [通过 Wireshark 访问][28] 的 pcap 文件中。
像许多其他工具一样,`tcpdump` 没有预装如果你是在Debian/Ubuntu 上,你可以按照下面的命令进行安装:
```
sudo apt install tcpdump
```
一旦你完成了安装,你可以获得当前接口的捕获数据包,如下所示:
```
sudo tcpdump
```
![sudo tcpdump][29]
那么如何将捕获的数据包保存在 pcap 文件中呢?让我告诉你怎么做:
```
sudo tcpdump -w Captured_Packets.cap -i < networkdevice >
```
![sudo tcpdump -w][30]
要访问保存的文件,你需要使用 `-r` 选项加上文件名。
```
sudo tcpdump -r Captured_Packets.pcap
```
![sudo tcpdump -r filename][31]
#### 15、ethtool
顾名思义,`ethtool` 工具主要涉及管理以太网设备。使用这个工具,你可以调整网卡速度、自动协商特性等。
但它可能没有预装在你的机器上,可以通过利用给出的命令安装在 Debian/Ubuntu 机器上:
```
sudo apt install ethtool
```
要获取接口的详细信息,你只需在命令后面加上设备名称,如下所示:
```
sudo ethtool <InterfaceName>
```
![sudo ethtool enp1s0][32]
#### 16、nmcli
作为一个简单而强大的网络故障排除工具,它是任何系统管理员在排除网络故障时首先使用的工具之一,也可以在脚本中使用。
你可以使用 `nmcli` 命令来监控设备的连接状态:
```
nmcli dev status
```
![nmcli dev status][33]
当不使用任何选项时,它将带来你系统中所有现有设备的信息:
```
nmcli
```
![nmcli][34]
#### 17、nmap
`nmap` 是一个探索和审计网络安全的工具。它经常被黑客和安全爱好者使用,因为它允许你获得网络的实时信息、连接到你的网络的 IP 的详细信息、端口扫描,以及更多。
要在基于 Debian/Ubuntu 的发行版上安装 `nmap` 工具,请使用给出的命令:
```
sudo apt install nmap
```
让我们开始扫描主机名:
```
nmap itsfoss.com
```
![nmap itsfoss.com][35]
#### 18、bmon
`bmon` 是一个开源的工具,用于监测实时带宽和调试问题,以更人性化的方式呈现统计数据。这个工具最好的部分是图形显示,甚至可以在 HTML 中得到你的输出!
安装非常简单,因为 `bmon` 存在于流行的 Linux 发行版的默认仓库中,这也包括 Debian/Ubuntu。
```
sudo apt install bmon
```
现在,你只需要启动 `bmon`,就可以用眼睛愉快地监控带宽了:
```
bmon
```
![bmon][36]
#### 19、firewalld
管理防火墙可以说是网络安全的核心部分,这个工具允许你添加、配置和删除防火墙的规则。
但是 firewalld 需要手动安装,如果你使用的是基于 Debian/Ubuntu 的发行版,你可以利用给出的命令进行安装:
```
sudo apt install firewalld
```
例如,我将向你展示,如何为公共区域永久地打开 80 端口:
```
sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
```
![sudo firewall-cmd --permanent --zone=public][37]
同样,要删除最近添加的规则,你必须使用 `-remove` 选项,如下所示:
```
sudo firewall-cmd --zone=public --remove-port=80/tcp
```
![sudo firewall-cmd --zone=public --remove][38]
#### 20、iperf
`iperf` 是一个用 C 语言编写的开源工具,允许用户进行网络性能测量和调整。
这个工具存在于 Debian/Ubuntu 的默认资源库中,可以通过给出的命令安装:
```
sudo apt install iperf
```
要开始监控网络,用户必须通过给出的命令在服务器上启动这个客户端:
```
iperf -s -u
```
其中,`-s` 选项表示服务器,`-u` 选项为 UDP 格式。
![iperf -s -u][39]
现在,你可以通过提供首选协议的 IP 地址有效载荷连接到你的服务器(使用 `-c` 选项表示客户端)。在这个例子中,我选择了 UDP使用 `-u` 选项),有效载荷为 100
```
iperf -c 10.0.2.15 -u 100
```
![iperf -c][40]
#### 21、speedtest-cli
顾名思义,这是 speedtest.net 网站的 CLI 工具。这个在 Apache 2.0 许可下发布的开源工具,当你想从 CLI 获得一个可靠的 [检查网速][41] 的来源时,会有很大帮助。
安装非常简单,如果你是在 Debian/Ubuntu 上,可以利用给出的命令轻松安装:
```
sudo apt install speedtest-cli
```
一旦你完成了安装部分,你只需要使用一行命令即可测试你的速度:
```
speedtest-cli
```
![speedtest-cli][42]
#### 22、vnstat
`vnstat` 工具主要被系统管理员用来监控网络流量和带宽消耗(大部分情况下),因为这个工具可以监控你系统的网络接口的流量。
和其他网络工具一样,你可以在默认的软件库中找到 `vnstat`,如果你在 Debian/Ubuntu 上,可以通过给出的命令进行安装:
```
sudo apt install vnstat
```
你可以使用 `vnstat` 命令,不需要任何选项,它将带来你系统所有可用接口的基本统计信息:
```
vnstat
```
![vnstat][43]
对于实时监控,你可以将 `vnstat` 命令与 `-l` 选项配对。
![vnstat -l][44]
### 一个长长的清单,对吗?
这个汇编连冰山一角都算不上,只是分享了每个命令的目的和基本例子,因为增加更多的命令会使这个清单变得更长。
流行的但 [已废弃的 Linux 命令][45],如 `ipconfig`,已被故意排除在这个列表之外。
如果你很好奇,你可以学习 [如何最大限度地利用手册页][46],这将教会你如何使用任何实用程序的最大潜力。
如果我忘了提到任何你喜欢的东西,请在评论中告诉我。
--------------------------------------------------------------------------------
via: https://itsfoss.com/basic-linux-networking-commands/
作者:[Sagar Sharma][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/sagar/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/wp-content/uploads/2022/08/ip-address-1.png
[2]: https://itsfoss.com/wp-content/uploads/2022/08/ip-monitor.png
[3]: https://itsfoss.com/wp-content/uploads/2022/08/traceroute-google.com_.png
[4]: https://itsfoss.com/wp-content/uploads/2022/08/traceroute-6-google.com_.png
[5]: https://itsfoss.com/wp-content/uploads/2022/08/tracepath-google.com_.png
[6]: https://itsfoss.com/wp-content/uploads/2022/08/tracepath-b-google.com_.png
[7]: https://linuxhandbook.com/ping-command-ubuntu/
[8]: https://itsfoss.com/wp-content/uploads/2022/08/ping-google.com_.png
[9]: https://linuxhandbook.com/ping-command-ubuntu/
[10]: https://itsfoss.com/wp-content/uploads/2022/08/ss-at.png
[11]: https://itsfoss.com/wp-content/uploads/2022/08/ss-au.png
[12]: https://linuxhandbook.com/dig-command/
[13]: https://itsfoss.com/wp-content/uploads/2022/08/dig-itsfoss.com_.png
[14]: https://itsfoss.com/wp-content/uploads/2022/08/host-itsfoss.com_.png
[15]: https://itsfoss.com/wp-content/uploads/2022/08/host-8.8.4.4.png
[16]: https://itsfoss.com/change-hostname-ubuntu/
[17]: https://itsfoss.com/wp-content/uploads/2022/08/hostname.png
[18]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-hostname-f.png
[19]: https://linuxhandbook.com/curl-command-examples/
[20]: https://itsfoss.com/wp-content/uploads/2022/08/curl-o-url.png
[21]: https://itsfoss.com/wp-content/uploads/2022/08/curl-o.png
[22]: https://itsfoss.com/wp-content/uploads/2022/08/mtr-google.com_.png
[23]: https://itsfoss.com/wp-content/uploads/2022/08/mtr-b.png
[24]: https://itsfoss.com/wp-content/uploads/2022/08/whois-google.com_.png
[25]: https://itsfoss.com/wp-content/uploads/2022/08/ifplugstatus.png
[26]: https://itsfoss.com/wp-content/uploads/2022/08/iftop.png
[27]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-iftop-i-enp1s0.png
[28]: https://itsfoss.com/install-wireshark-ubuntu/
[29]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-tcpdump.png
[30]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-tcpdump-w-.png
[31]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-tcpdump-r-filename.png
[32]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-ethtool-enp1s0.png
[33]: https://itsfoss.com/wp-content/uploads/2022/08/nmcli-dev-status.png
[34]: https://itsfoss.com/wp-content/uploads/2022/08/nmcli.png
[35]: https://itsfoss.com/wp-content/uploads/2022/08/nmap-itsfoss.com_.png
[36]: https://itsfoss.com/wp-content/uploads/2022/08/bmon-800x591.png
[37]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-firewall-cmd-permanent-zonepublic.png
[38]: https://itsfoss.com/wp-content/uploads/2022/08/sudo-firewall-cmd-zonepublic-remove.png
[39]: https://itsfoss.com/wp-content/uploads/2022/08/iperf-s-u.png
[40]: https://itsfoss.com/wp-content/uploads/2022/08/iperf-c-.png
[41]: https://itsfoss.com/network-speed-monitor-linux/
[42]: https://itsfoss.com/wp-content/uploads/2022/08/speedtest-cli.png
[43]: https://itsfoss.com/wp-content/uploads/2022/08/vnstat.png
[44]: https://itsfoss.com/wp-content/uploads/2022/08/vnstat-l.png
[45]: https://itsfoss.com/deprecated-linux-commands/
[46]: https://linuxhandbook.com/man-pages/

View File

@ -0,0 +1,94 @@
[#]: subject: "Dont Suspend Ubuntu When Laptop Lid is Closed"
[#]: via: "https://itsfoss.com/laptop-lid-suspend-ubuntu/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15015-1.html"
如何在笔记本电脑合盖时不挂起 Ubuntu
======
![](https://img.linux.net.cn/data/attachment/album/202209/09/230733ppyyws84ccgrc777.jpg)
如果你在笔记本电脑上使用 Ubuntu你可能已经注意到当你合上盖子时系统处于挂起状态。
这是预期的行为。它可以节省电池和你的工作。你掀开盖子,系统唤醒,你可以登录并继续工作。
这一切听起来都不错,除非你使用多显示器设置。像我这样的一些人更喜欢关闭笔记本电脑,只使用外接显示器。
但是,如果关闭笔记本电脑盖会挂起系统,那么会产生问题。
让我告诉你如何改变这种行为。
### 关闭笔记本电脑盖时不要挂起
实际上,我注意到最近的 Ubuntu 版本在这个情况下更智能。当笔记本电脑连接到扩展坞并合上盖子时,它不会进入挂起模式。
这是正常的预期行为,但由于 Ubuntu 某种神才知道的原因,它可能不会一直有效。
好消息是你可以使用 GUI 和命令行强制更改此行为。
让我分享这两种方法。
#### 方法 1使用 GNOME 优化
如果你使用的是默认的 GNOME 桌面,那么你很幸运。 [在 Ubuntu 的软件中心安装 GNOME 优化Tweaks工具][1],或使用以下命令:
```
sudo apt install gnome-tweaks
```
安装后,启动优化应用。在侧边栏的<ruby>常规<rt>General</rt></ruby>选项卡中,关闭“<ruby>笔记本电脑盖合上时挂起<rt>Suspend when laptop lid is closed</rt></ruby>”按钮。
![change lid close behavior ubuntu][2]
这就好了。你不需要重启即可使更改生效。
现在,让我们谈谈命令行方法。
#### 方法 2更改登录配置针对高级用户
如果你查看文件 `/etc/systemd/logind.conf` 的内容,你将看到三种不同类型的笔记本电脑合盖默认设置:
* `HandleLidSwitch=suspend`:当笔记本电脑使用电池供电时,合盖挂起
* `HandleLidSwitchExternalPower=suspend`:当笔记本电脑插入电源插座时,合盖挂起
* `HandleLidSwitchDocked=ignore`:当笔记本电脑连接到扩展坞时,合盖忽略
![Default laptop lid closing settings][3]
如你所见,如果合上盖子,笔记本电脑将挂起,无论它是否连接到电源。而连接扩展坞忽略合盖。
如果需要,你可以根据自己的喜好将这些参数的值更改为其中之一:
* `suspend`:合盖时挂起
* `lock`:合盖时锁定
* `ignore`:什么都不做
* `poweroff`:关机
* `hibernate`:合盖时休眠
如果你不希望你的系统在笔记本电脑盖合上时执行任何特殊操作,我建议你使用 `ignore`
你可以编辑 `/etc/systemd/logind.conf` 文件,或者在 `/etc/systemd/logind.conf.d` 目录中创建一个新文件,并取消注释上述设置并更改其值。如果此目录不存在,请创建此目录。
我不会给你确切的命令。如果你熟悉命令行,你应该可以做到。如果你对命令行感到不习惯,请使用前面的 GUI 方法。
我希望这可以帮助你。如果你有任何问题,请告诉我。
--------------------------------------------------------------------------------
via: https://itsfoss.com/laptop-lid-suspend-ubuntu/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/gnome-tweak-tool/
[2]: https://itsfoss.com/wp-content/uploads/2022/08/change-lid-close-behavior-ubuntu.png
[3]: https://itsfoss.com/wp-content/uploads/2022/08/laptop-lid-settings-ubuntu.png

View File

@ -0,0 +1,79 @@
[#]: subject: "Evernote Alternative Notesnook is Now Open Source"
[#]: via: "https://news.itsfoss.com/notesnook-goes-open-source/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15001-1.html"
印象笔记的替代品 Notesnook 现已开源
======
![](https://news.itsfoss.com/content/images/size/w2000/2022/09/notesnook-ft.png)
> Notesnook 是一个以隐私为重点的新的记事本应用程序,它决定开源了。
当你想到一个开源的安全记事本应用程序时,你会想到什么?
可能是 <ruby>[标准笔记][2]<rt>Standard Notes</rt></ruby>
🔒 它是一个开源的、端到端加密的应用程序。而且也正是 Linux 用户最好的记事应用程序之一。
然而,提供类似于流行的印象笔记功能的注重隐私的标准笔记替代品较少。
幸运的是,我们有一个新的选择加入了名单,即 **Notesnook**
📢 Notesnook 最近在 GPLv3 许可下进行了开源,以让社区帮助改进它,并确保该项目不至于走样。
目前,开发人员希望把重点放在改进 GitHub 仓库上,然后继续增加新的功能/其他开发活动。
### Notesnook它能提供什么
![notesnook][5]
Notesnook 是一个开源的零知识笔记存储平台,具有端到端加密功能。
与标准笔记类似,你可以免费使用它,也可以选择高级计划来解锁更多的好处。一些亮点包括:
* 手机端的应用锁。
* 私人笔记保险库。
* 密码保护的笔记共享。
* 跨平台。
界面看起来像是组合了各种有用的东西。我有兴趣单独写篇点评,或许写篇比较文章,听起来不错,对吗?
它可用于 Windows、mac 和 Linux。你可以下载用于 Linux 桌面的 AppImage 文件,或者 .deb/.rpm。
🏷️ 💲 **为了庆祝开源**Notesnook 还为其 [年度高级计划][6] 提供高达 75% 的折扣,并提供 30 天退款保证。你可以试一试,看看你是否需要高级计划。
在印度付费的话,我看到有 80% 的折扣,使得一年的订阅费用只有 10 美元。其他地区的情况可能不同。
探索其 [GitHub 页面][7] 或 [官方网站][8] 以了解更多。此外,你可以阅读他们的 [博客文章][9],了解他们为什么决定要开源。
> **[Notesnook][10]**
💬 *你认为 Notesnook 作为一个以隐私为中心的新的记事应用程序怎么样?*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/notesnook-goes-open-source/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/09/notesnook-ft.png
[2]: https://standardnotes.com/
[3]: https://itsfoss.com/note-taking-apps-linux/
[5]: https://news.itsfoss.com/content/images/2022/09/notesnook.jpg
[6]: https://notesnook.com/pricing/
[7]: https://github.com/streetwriters/notesnook
[8]: https://notesnook.com/
[9]: https://blog.notesnook.com/notesnook-is-going-open-source/
[10]: https://notesnook.com/

View File

@ -0,0 +1,74 @@
[#]: subject: "Microsoft Decides to Drop the Linux App for Teams to Replace it as a Progressive Web App Instead"
[#]: via: "https://news.itsfoss.com/microsoft-linux-app-retire/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14995-1.html"
微软决定放弃 Teams 的 Linux 应用,而用渐进式网页应用取代
======
> 微软将不再为 Teams 提供 Linux 应用。以下是你如何在 Linux 上使用 Teams 的方法。
![微软决定不再为 Teams 提供 Linux 应用程序取而代之的是渐进式Web应用程序][1]
**微软爱 Linux ...** 💔
如果你还记得微软的这个营销套路,那么在阅读这条新闻时,你就知道这并不完全正确。
早在 2019 年,微软就为 Teams 推出了 Linux 应用的公共预览版。现在,在其存在的三年后,他们决定在 2022 年 12 月退役其 Linux 客户端。
在发表这篇文章的时候,没有任何官方公告来宣布这一消息。这个消息有可能是一个使用微软 Teams 的管理员发现的,它可能是内部管理员的通知之一(据 [Hacker News][2])。
该通知提到:
> 我们将在 90 天内12 月初)退役 Linux 上的微软 Teams 桌面客户端,该客户端目前以公共预览提供。所有使用微软 Teams Linux 桌面客户端的用户将不得不过渡到网页PWA版本这是我们将继续投入开发资源的地方。我们会帮助所有目前在 Linux 上的客户开始使用 PWA 应用;一旦我们接近发布这一功能,我们将发布相应的指导。
### 渐进式网页应用PWA将取代 Linux 应用程序
![微软 Teams Linux 应用程序][3]
微软表示,再过段时间,他们将在 Linux 上提供一个 Teams 渐进式网页应用程序PWA
这个 PWA 将支持背景模糊、自定义背景、反应和其他一些类似桌面应用的功能。因此,对于一些用户来说,这是一个好消息。
目前还不清楚 PWA 将在何时推出,因为他们只提到你可以在未来几个月内期待它。
**不幸的是**Mozilla FirefoxLinux 的最佳浏览器之一)不提供对 PWA 的支持。
因此,根据官方信息,你可以在 [Edge][4] 和 [Linux 上的 Chrome 浏览器][5]上运行 PWA
> 我们听到你说希望在 Linux 上获得微软 Teams 的全部丰富功能,如背景效果、反应、画廊视图等。我们发现对此采取行动的最佳方式是在 Linux 上提供一个 Teams 渐进式网页应用PWA以作为我们当前网页客户端的一个新功能我们将在未来几个月向我们的 Linux 客户提供。
>
> PWA 使我们能够更快地将最新的 Teams 功能提供给我们的 Linux 客户,并帮助我们弥补 Linux 和 Windows 上 Teams 桌面客户端之间存在的差距。PWA 体验将在 Linux 上的 Edge 和 Chrome 浏览器上提供。
### 你现在能做什么?
老实说Linux 上的微软 Teams 应用的体验并不是很好。
因此,你应该开始使用网页应用,或者等待 PWA。当然如果你使用 PWA 的话,你可能不习惯使用微软 Edge 或 Chrome 浏览器。但是,没办法。
你也可以尝试一些非官方的 Linux 客户端,但我不确定那会有多好用。
*你对微软退役其官方 Linux 应用而偏爱 PWA 或网页版有何看法?在下面的评论中分享你的想法。*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/microsoft-linux-app-retire/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/09/ms-dropping-teams-for-linux.png
[2]: https://news.ycombinator.com/item?id=32678839
[3]: https://news.itsfoss.com/content/images/2022/09/teams-linux.jpg
[4]: https://itsfoss.com/microsoft-edge-linux/
[5]: https://itsfoss.com/install-chrome-ubuntu/

View File

@ -0,0 +1,176 @@
[#]: subject: "8 Exciting New Features in the Upcoming KDE 5.26 Release"
[#]: via: "https://news.itsfoss.com/KDE-plasma-5-26-features/"
[#]: author: "Rishabh Moharir https://news.itsfoss.com/author/rishabh/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-14998-1.html"
即将发布的 KDE 5.26 版本中的 8 个令人感兴趣的新功能
======
> KDE Plasma 5.26 是一个令人兴奋的即将发布的更新版本,添加了大量有用的功能。
![](https://img.linux.net.cn/data/attachment/album/202209/04/115636wku1fkkl5zf5f5le.jpg)
在过去的五个月里,流行的桌面环境 KDE Plasma 做了一些重大的更新和大量的修复。
上一个版本 Plasma 5.25 已经有了许多新的功能和改进,特别是对用户界面和体验的改进,而下一个版本听起来更令人兴奋。
### KDE Plasma 5.26 有什么新功能?
让我们来抢先了解一下 KDE Plasma 5.26 的一些新功能。
> KDE Plasma 5.26 计划于 2022 年 10 月 6 日发布。
#### 1、用户界面的改进
如同上一个版本Plasma 5.26 也对用户界面的互动方式做了许多改进。你会发现一些细微的变化,以及对在 KDE Plasma 5.26 上互动/搜索东西做了调整,**给用户更多信息**。
例如,<ruby>格式<rt>Format</rt></ruby><ruby>语言<rt> Language</rt></ruby> 的设置页面现在已经合并了,可以给你一个更干净的外观,并摆脱了一些与之相关的常见错误。
Han Young 为 [这两个页面的合并][4] 做了大量工作。
因此,你可以很容易地设置默认格式,以及对 [你的地址、姓名风格、电话号码][5] 等进行设置。
![KDE Plasma 5.26][6]
另一个例子包括,如果你在系统设置的 “<ruby>自动启动<rt>Autostart</rt></ruby>” 窗口的 “<ruby>登录脚本<rt>Login Scripts</rt></ruby>” 部分添加一个 Shell 脚本,而该脚本没有被标记为可执行,就会显示一个警告。此外,它还包括一个按钮,单击即可设置为可执行。
感谢 Nicolas Fella 的这个 [贡献][7]
![][8]
以及,任务切换效果 “<ruby>覆盖<rt>Cover</rt></ruby>” 和“<ruby>翻转<rt>Flip></rt></ruby>” 使用了 Plasma 对话框作为背景。
在概览效果中使用的同样的 UI 组件现在也替代应用了,给人一种更一致的外观。这也包括统一的背景和模糊的效果。
感谢 Ismael Asensio 的这一 [补充][9]
![][10]
更多的 UI 改进包括:
* 打磨 KDE 应用程序以获得更干净的用户体验。
* 调整系统设置,使其看起来更干净。
* 对配置文件夹与 Samba 共享进行了改进。
* 完善 Dolphin 文件管理器的用户界面。
#### 2、Dolphin 的新选择模式
尤其是那些使用触摸屏的用户,现在可以通过在文件夹或文件上执行长按来轻松选择或取消选择项目,就像在智能手机上一样。如果你使用的是鼠标和键盘,按空格键将进入或退出这个可选模式。
此外,也将显示带有一系列选项的上下文菜单,就像右键菜单一样。
感谢 Felix Ernst 的这个很酷的 [新增功能][11]。
![][12]
#### 3、“开始”的新紧凑模式
Plasma 的本地应用程序启动器“<ruby>开始<rt>Kickoff</rt></ruby>”,现在支持一种新的模式,叫做“<ruby>紧凑<rt>Compact</rt></ruby>”视图。
顾名思义,内容被缩小了,以便更多的项目可以被看到。请注意,这个设置对使用触摸模式的用户来说并不理想,因此被禁用。
这个有用的 [新增功能][13] 来自于 Nate Graham 的出色工作。
![][14]
#### 4、不再模糊的 XWayland 应用程序
使用 HiDPI 屏幕的 Wayland 用户面临着许多与应用程序的缩放有关的问题。为了解决这个问题,用户可以为他们的 XWayland 应用程序选择两种缩放方式。
一种方法是允许使用合成器进行统一缩放,这可能会导致轻微的模糊。
另一种是允许应用程序自己缩放。请注意,支持预置的 X11 HiDPI 的应用程序只能通过这种设置进行改善。
甚至在每个选项上都添加了一个帮助图标,详细说明了该选项的作用,因此用户可以得到更清晰的理解。
感谢 David Edmundson 和 Aleix Pol Gonzales 添加的缩放功能和 Nate Graham 的 [帮助工具提示][15]。
![][16]
#### 5、支持更多的硬件和固件数据
系统设置中的 “<ruby>关于本系统<rt>About This System</rt></ruby>”页面已经更新,以支持更新的硬件和固件。苹果 Mac/Macbook 用户会很高兴地知道,对苹果 M1 的支持也包括在内。
感谢 James Calligeros 提供的这一 [补充][17]。
![][18]
#### 6、对“发现”的增强
KDE 的旗舰应用商店 <ruby>发现<rt>Discover</rt></ruby> 已经得到了一些有用的补充,应该可以帮助用户在选择软件时避免混淆。
例如,如果正在应用页面上浏览的是测试版,“发现” 将显示一个信息框。此外,如果测试版频道已经过时或比稳定版频道更老,也会显示一个警告。
![][19]
如果该软件是一个插件,“<ruby>来自<rt>Distributed by</rt></ruby>”标签将不再显示项目的源码不可点击的 URL而是显示“KDE 商店”。
此外,用户终于可以为任何软件更新设置相应的通知频率了。
这些增强来自于 Aleix Pol Gonzalez 的出色工作。
#### 7、可重新绑定的鼠标按钮
![鼠标附加按钮配置][20]
如果你使用的鼠标有附加按钮,你可以把这些按钮分配给按键或键盘快捷键。
这是由 David Rdondo 实现的,这是 KDE Plasma 5.26 的一个相当好的功能。
#### 8、从文件搜索启动可执行文件
在 KDE Plasma 5.26 中,当你试图打开一个通过文件搜索找到的可执行文件时,你会得到一个提示:
你可以选择执行该文件或打开它。我认为这是一个相当有用的补充。
#### 🛠️ 其他功能和改进措施
除了上面列出的关键亮点外,还有大量的其他新增功能和错误修复。
一些值得注意的更多改进包括:
* 能够在主日历下同时设置和跟踪两个不同的日历。
* Elisa 播放器有了全屏模式。
* 可调整的面板小部件弹窗。
* 无需应用,一键预览桌面壁纸。
* 壁纸根据使用的浅色或深色方案自动调整图像。
* 可以禁用 Wayland 会话的鼠标中键点击粘贴。
* 使用 “<ruby>备用<rt>Alternate</rt></ruby>” 面板在小部件之间切换时,会保存旧小部件的设置。
💬 *你对 KDE Plasma 5.26 的变化感到兴奋吗?请在下面的评论中分享你的想法。*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/KDE-plasma-5-26-features/
作者:[Rishabh Moharir][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/rishabh/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w2000/2022/09/kde-5-26-release.png
[4]: https://invent.KDE.org/plasma/plasma-workspace/-/merge_requests/1147
[5]: https://bugs.KDE.org/show_bug.cgi?id=430801
[6]: https://news.itsfoss.com/content/images/2022/08/more-things-to-configure.webp
[7]: https://invent.KDE.org/plasma/plasma-workspace/-/merge_requests/878
[8]: https://news.itsfoss.com/content/images/2022/08/needs-to-be-executable.webp
[9]: https://invent.KDE.org/plasma/KDEplasma-addons/-/merge_requests/168
[10]: https://news.itsfoss.com/content/images/2022/08/switchui.webp
[11]: https://bugs.KDE.org/show_bug.cgi?id=427202
[12]: https://news.itsfoss.com/content/images/2022/08/selection-mode-in-dolphin.jpeg
[13]: https://invent.KDE.org/plasma/plasma-desktop/-/merge_requests/699
[14]: https://news.itsfoss.com/content/images/2022/08/compact_mode.png
[15]: https://invent.KDE.org/plasma/kscreen/-/merge_requests/108
[16]: https://news.itsfoss.com/content/images/2022/08/kscreen-kcm-help-in-a-tooltip.webp
[17]: https://invent.KDE.org/plasma/kinfocenter/-/merge_requests/104
[18]: https://news.itsfoss.com/content/images/2022/08/m1-in-about.webp
[19]: https://news.itsfoss.com/content/images/2022/08/bender-old-beta.jpeg
[20]: https://news.itsfoss.com/content/images/2022/09/kde-plasma-5-26-mouse-buttons.png

View File

@ -0,0 +1,128 @@
[#]: subject: "Here's What's Coming to Fedora 37"
[#]: via: "https://news.itsfoss.com/fedora-37-features/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15016-1.html"
即将到来的 Fedora 37 前瞻
======
> Fedora 37 将于下个月发布。让我们来看看它带来的变化。
![][1]
最好的 Linux 发行版之一的升级版Fedora 37即将面世。它将在下个月发布如果一切按计划进行它最早将于 2022 年 10 月 18 日发布。而测试版应该在 2022 年 9 月 13 日发布。
让我重点介绍一些你可能想关注的 Fedora 37 重要功能。
### Fedora 37 功能
![Fedora 37][2]
[Fedora][3] 37 带有最新的 GNOME 桌面以及其他完善的功能。这些包括:
#### 1、GNOME 43
![Fedora 37 切换菜单][4]
GNOME 43 和其他一些技术改进将在 Fedora 37 中首次亮相。所以,看看它的体验如何应该是很令人感兴趣的。
这是一次旨在提高用户体验的实质性升级。GNOME 43 中的标志性的重要改进包括一个新的快速切换菜单和 [对 Nautilus 文件管理器的改变][5]。
![Fedora 37 UI][6]
此外,其他一些重要的变化还有:
* GNOME Web 浏览器对 WebExtensions 的支持。
* 文件管理器中新的文档上下文菜单。
* GNOME “软件”的改进。
#### 2、Linux 内核 5.19
![Fedora 37 neofetch][9]
Linux 内核 5.19 是一个有用的更新,它改进了对 ARM SoC 的支持、英特尔的 Arc GPU 支持,以及对 RISC-V 架构支持的一些调整。
你可以查看 [Linux 内核 5.19 的变化列表][10] 来了解更多。
#### 3、桌面环境更新
虽然 GNOME 43 是 Fedora 的旗舰桌面环境,但你也可以找到带有 KDE Plasma 5.26、Xfce 4.16 和 MATE 1.24 的 Fedora 升级版。
在这些版本中,鉴于 KDE Plasma 桌面的一系列改进,带有 KDE Plasma 5.26 的 Fedora 37 也是一个不错的选择。
你可以在我们之前的报道中阅读更多 [关于 KDE Plasma 5.26 版本的信息][11]。
不要忘记,你也可以看到一个 [新的 Budgie 桌面的 Fedora 定制版][13]。
截至目前,桌面、控制中心、屏幕保护程序和桌面视图的软件包都已经出现在 [Fedora 的软件包源][15]。所以,我想你可以期待它们出现在 Fedora 37 的发布中。
#### 4、树莓派 4 支持
Fedora 支持树莓派,但不支持树莓派 4。
在 Fedora 37 中,由于对较新的 Linux 内核和 Mesa图形加速的上游改进它 [正式引入了对树莓派 4 的支持][16]。
这些变化也应该使 Fedora 37 在树莓派 3 系列和 Zero 2 W 上有更好的体验。
#### 5、实验性的基于 Web 界面的安装程序
Fedora 37 将是第一个为其 [Anaconda 安装程序][17] 提供基于网页的用户界面的版本。
换句话说,这是对其当前安装程序的重新设计。请注意,在本次发布之后,它将只作为一个额外的预览镜像提供。
你可以单独下载它并进行实验。到现在为止,我们还不能试用它。所以,你需要在预览镜像可用后再去试试它。
#### 其他变化和新的默认壁纸
![Fedora 37 深色壁纸][18]
对于 Fedora 37除了可以期待很多技术上的改进不要忘了它还有一个新的壁纸有浅色/深色的变体。上图显示了 Fedora 37 的深色壁纸。
浅色变体可以在本文的开头看到。
Fedora 37 的其他变化包括:
![Fedora core os][19]
* Fedora CoreOS 将被确认为 Fedora 的主要版本之一。
* Fedora Cloud 将被列为官方版本之一。
* GNU Emacs 28 更新。
* 用于 Fedora 服务器的新 KVM 镜像。
你可以参考 [官方的 Fedora 37 更新日志][20] 了解更多技术细节。
💬 *你对即将发布的带有 GNOME 43 的 Fedora 37 版本有何看法?请在下面的评论中分享你的想法。*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/fedora-37-features/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[wxy](https://github.com/wxy)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/09/fedora-37-features.png
[2]: https://news.itsfoss.com/content/images/2022/09/fedora-37-screenshot-home.jpg
[3]: https://getfedora.org/
[4]: https://news.itsfoss.com/content/images/2022/09/fedora-37-toggle-menu.jpg
[5]: https://news.itsfoss.com/gnome-files-43/
[6]: https://news.itsfoss.com/content/images/2022/09/fedora-37-ui.jpg
[9]: https://news.itsfoss.com/content/images/2022/09/fedora-37-kernel.png
[10]: https://news.itsfoss.com/linux-kernel-5-19-release/
[11]: https://news.itsfoss.com/kde-plasma-5-26-features/
[13]: https://news.itsfoss.com/fudgie-fedora-budgie-announcement/
[15]: https://src.fedoraproject.org/rpms/budgie-control-center
[16]: https://news.itsfoss.com/fedora-raspberry-pi-4/
[17]: https://fedoraproject.org/wiki/Anaconda
[18]: https://news.itsfoss.com/content/images/2022/09/f37-wallpaper-dark.jpg
[19]: https://news.itsfoss.com/content/images/2022/09/fedora-core-os.jpg
[20]: https://fedoraproject.org/wiki/Releases/37/ChangeSet

View File

@ -1,114 +0,0 @@
[#]: subject: "Heroic Games Launcher 2.4.0 Released With Epic Overlay, GOG Cloud Save Support, and Anti-cheat Runtime"
[#]: via: "https://news.itsfoss.com/heroic-games-launcher-2-4-0-release/"
[#]: author: "Jacob Crume https://news.itsfoss.com/author/jacob/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Heroic Games Launcher 2.4.0 Released With Epic Overlay, GOG Cloud Save Support, and Anti-cheat Runtime
======
Heroic Games Launcher is adding solid features for Linux gamers. If you havent used it yet, try out its new release.
![heroic games][1]
As [gaming on Linux][2] continues to improve, so do the tools we use to play those games. Heroic Games Launcher is a great example of such a tool, as it gives users a native way to access and play Epic Games Store games on their Linux machines.
One of its older releases, [Heroic 2.0.0][3], brought major UI improvements, and this release further builds on those.
### Heroic Games Launcher 2.4.0: Whats New?
Heroic Games Launcher 2.4.0 brings numerous major upgrades, including:
* GOG Cloud Save support
* Epic overlay support
* EAC and BattleEYE runtime
* Anti-cheat information on the game page
* Add game shortcut to Steam option
### GOG Cloud Save Support
![][4]
When moving between devices, cloud saves quickly become an essential feature. However, until recently, this has been noticeably missing from Heroic when playing GOG games. This changes with the 2.4.0 release.
Now, GOG cloud save works on all supported platforms. Note that the Linux-native games on GOG do not support cloud saves, so you can only expect it with Windows games running through Wine/Proton.
### Epic Overlay Support
The Epic Overlay, a feature similar to the Steam overlay, now has full support from within Heroic Launcher. This is possible thanks to the new DXVK version (Vulkan-based implementation of Direct 3D), which also fixed several bugs in games.
You can enable it by going to the Heroic settings and finding it among the tools. As initial feature support, it may not work flawlessly. You should test it out for yourself.
### Anti-Cheat Information Via Game Page
![][5]
Anti-cheat software has always been problematic when it comes to gaming on Linux. In fact, a lot of anti-cheat software only started supporting Linux when the Steam Deck was released. However, they remain a problem until now.
Fortunately, the community has built a plethora of resources to help share information on how well games work on Wine and Proton.
While you can rely on [ProtonDB][6], it may not be the most convenient option.
Now, you get the necessary information on anti-cheat on the game status page using data pulled from *areweanticheatyet.com*.
### Add To Steam Option
![][7]
We are all familiar with the pain of juggling between launchers to access our games. There are different pieces of software have tried to overcome this over the years, but Steam remains the most popular game launcher.
With that in mind, Heroic Games Launcher 2.4.0 now lets you directly add your games to your Steam library. While the Heroic Games Launcher still runs in the background, it gives a better experience for users comfortable with Steam.
Note that this support is still experimental and may not work with portable games.
### Other Improvements
![][8]
Alongside the ones previously mentioned, Heroic 2.4.0 brings in several refinements that include:
* An easier way to add environmental variables or wrappers.
* Find the current download/update(s) on the sidebar.
* Added auto-complete feature to the search bar.
* Added information boxes for things such as VKD3D and DXVK.
* Officially signed setup files for Windows to prevent Malware warnings.
* Ability to use HTTP instead of HTTPS when downloading games.
* Ability to force a game update (a feature sorely missing from the official Epic Games Launcher).
* Heroic will now use libraries from its downloaded version for Proton/Wine games instead of system libraries. You can change the setting if needed.
* Updated Electron framework.
For a full list of changes, I encourage you to take a look at the [release notes][9].
### Wrapping Up
With all these exciting improvements, I cant wait to see what the next upgrade will have in store for us. You can grab the AppImage file for this release and get started on any Linux distribution.
Alternatively, if youre using a mainstream distro, there is probably a package available to download from their GitHub releases page.
[Download Heroic Game Launcher][10]
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/heroic-games-launcher-2-4-0-release/
作者:[Jacob Crume][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/jacob/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/wp-content/uploads/2022/07/heroic-games-launcher-2-4-0.jpg
[2]: https://itsfoss.com/linux-gaming-guide/
[3]: https://news.itsfoss.com/heroic-games-launcher-2-release/
[4]: https://news.itsfoss.com/wp-content/uploads/2022/07/heroic-2.4.0-gog-backups.png
[5]: https://news.itsfoss.com/wp-content/uploads/2022/07/heroic-2.4.0-anticheat.png
[6]: https://www.protondb.com/
[7]: https://news.itsfoss.com/wp-content/uploads/2022/07/heroic-2.4.0-add-to-steam-1024x509.png
[8]: https://news.itsfoss.com/wp-content/uploads/2022/08/heroic-games-launcher-shot-1.jpg
[9]: https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/tag/v2.4.0
[10]: https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases

View File

@ -1,117 +0,0 @@
[#]: subject: "Linux Kernel 6.0 RC1 is out with Run-Time Kernel Verification"
[#]: via: "https://www.debugpoint.com/linux-kernel-6-0-rc1/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Linux Kernel 6.0 RC1 is out with Run-Time Kernel Verification
======
Linus Torvalds releases Linux Kernel 6.0 RC1 for everyone to test, and heres a feature recap.
![Linux Kernel 6.0][1]
Following the [Linux Kernel 5.19][2] released a few days back, Linus [released the first release candidate][3] of Linux 6.0 for testing. It officially closes the merge window for this release while you test.
### Why 6.0?
Usually, the mainline Kernel version increases by the minor version and this release should have been Kernel 5.20. However, Linus decided to increase the significant version number, hence the Kernel 6.0.
> Despite the major number change, theres nothing fundamentally different about this release Ive long eschewed the notion that major numbers are meaningful, and the only reason for a “hierarchical” numbering system is to make the numbers easier to remember and distinguish. Which is why when the minor number gets to around 20 I prefer to just increment the major number instead and reset to something smaller.
Lets take a look at whats in store.
### Linux Kernel 6.0 RC1 New Features
#### Processors
AMD Zen systems gets a [performance boost][4] with updated NUMA balancing in the Kernel scheduler.
The Ratbleed speculative execution exploits fixing [continues][5] in this release affecting Intel 8th Gen+ and AMD Zen 1+ CPU family. Although the Ratbleed has not yet been found in the wild (only in Lab), the fix continues in this Kernel.
Lenovo and AMD [bring][6] the Automatic Mode Transition (AMT) support for Ryzen power ThinkPad laptops. This feature should give firmware-based power handling in those laptops with better efficiency.
New audio hardware [support][7] for AMD Ryzen 7000 desktop processors (Raphael) lands in this release with ACP 6.x support.
AMD is [preparing][8] for the release day with additional Instruction based sampling support for the Zen 4 series.
More CPU [temperature monitoring code][9] lands for AMD 17th and 19th family of models.
Initial work starts landing for Lenovos ARM Laptop X13 featuring Qualcomm Snapdragon 8cx Gen3 (SC8280XP) CPU.
Likewise, in all releases, a bunch of SOC chips get support in Linux Kernel 6. The most notable ones include NXP i.MX93 SoC (primarily used for smart devices in home solutions).
Heres a quick list (not complete) of the SOCs that gets [support][10] in this instalment.
* Broadcom SOCs for broadband devices * BCM63178 * BCM63158 * BCM4912 * BCM6858 * BCM6878 * BCM6846 * BCM63146 * BCM6856 * BCM6855 * BCM6756 * BCM63148 * BCM6813
* Allwinners H616 (IPTV, OTT streaming)
* Marvell Prestera 98DX2530
* Google Chameleon v3 FPGA
In addition, a bunch of RISC-V processor code was introduced with an aim to support it in future.
#### GPU
Work continues in this Kernel release for Intel DG2/Alchemist and AMD RDNA3 graphics cards; the support is entirely not there but is in progress for future versions.
A bunch of frame buffer device driver [update][11] (mostly fixes) arrives for Atari GPUs. Most noteworthy are the patchsets to fix VGA modes, colour handling and numerous code clean-ups.
Intel Meteor Lake GPU [support][12] is starting up in this release.
#### Storage and file systems
Like all releases, the famous and supported file systems are updated and improved.
Since the usage of SSDs is increasing, the flash-friendly file system (F2FS) [enhances][13] memory handling, garbage collection optimization and more.
One Microsoft employee provides a [patch][14] to improve locking performance & reliability for CIF/SMB3 protocol to improve multi-channel operation over the network.
#### Additional Changes
Other noteworthy changes across this Kernel release include early work for Wi-Fi 7 support, more feature updates on the ongoing random number generation and setting up system hostname via Kernel parameter.
Furthermore, one of the vital features is the “Run-Time Verification” codebase which helps Linux run in safety-critical infrastructure. The method takes an approach where the system specification instruction set is compared against the actual execution instruction set by re-implementing instruction sets at run-time. This is based on a paper which you can read [here][15]. The actual patch is present on this [page][16].
### Download
You can download the source tree from the following page:
| - | - | - | - | - |
| :- | :- | :- | :- | :- |
| mainline: | 6.0-rc1 | [tarball] | [patch] | [browse] |
If you are running benchmarks, testing new hardware and finding issues, report to the Kernel mailing list.
The Linux Kernel 6.0 is expected to be released by the beginning of Q4 2022, i.e. October timeframe. Hence, Ubuntu 22.10 may get this version (although I am doubtful about that).
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/linux-kernel-6-0-rc1/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.debugpoint.com/author/admin1/
[b]: https://github.com/lkxed
[1]: https://www.debugpoint.com/wp-content/uploads/2022/08/kernel6rc1.jpg
[2]: https://www.debugpoint.com/2022/05/linux-kernel-5-18/
[3]: https://lore.kernel.org/lkml/CAHk-=wgRFjPHV-Y_eKP9wQMLFDgG+dEUHiv5wC17OQHsG5z7BA@mail.gmail.com/T/#u
[4]: https://lore.kernel.org/lkml/Yufc5Mq1aqLVV%2FOv@gmail.com/T/#u
[5]: https://lore.kernel.org/lkml/Yvd%2Fg8RODN%2FpSkCX@gmail.com/T/#u
[6]: https://lore.kernel.org/lkml/19d29009-ab84-fffc-82dd-9754e65b092e@redhat.com/
[7]: https://www.phoronix.com/news/AMD-Raphael-Audio-Driver-Linux
[8]: https://lkml.org/lkml/2022/8/4/694
[9]: https://lore.kernel.org/lkml/Yue6jQd37wpssGeZ@zn.tnic/
[10]: https://lore.kernel.org/linux-arm-kernel/CAK8P3a1DVcc=AV29AJJxMzBVoU-grFaNet0ndxPgPFvpK-ZANQ@mail.gmail.com/T/
[11]: https://lore.kernel.org/lkml/Yu7J2Yj6UyAiE2Ne@ls3530/
[12]: https://lists.freedesktop.org/archives/dri-devel/2022-July/364441.html
[13]: https://lore.kernel.org/lkml/YvE6fO1r0znOdr60@google.com/
[14]: https://lore.kernel.org/lkml/CAH2r5mvaTWyWnPpYk=OPCbud85LEo5Oj=K2ZK56jmri6452zRQ@mail.gmail.com/
[15]: https://dl.acm.org/doi/abs/10.1007/978-3-030-30446-1_17
[16]: https://lore.kernel.org/lkml/20220803112014.7ffed04e@gandalf.local.home/

View File

@ -1,36 +0,0 @@
[#]: subject: "A Bug In Open Source Makes Millions Of Websites Vulnerable To Attack"
[#]: via: "https://www.opensourceforu.com/2022/08/a-bug-in-open-source-makes-millions-of-websites-vulnerable-to-attack/"
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
A Bug In Open Source Makes Millions Of Websites Vulnerable To Attack
======
Experts have cautioned that hundreds of thousands of websites, including many utilising the.gov name, could suffer data loss. Git, an open source development platform, has a weakness that, if left unfixed, gives threat actors access to the kingdoms secrets, according to cybersecurity specialists from Defense.com.
It appears that there are several.git folders that ought to be hidden but are frequently not. Although a major problem, the researchers claim that Git users disregard for recommended practises is more to blame. A threat actor may locate these folders and download their contents with the aid of a custom Google dork.
These folders files typically store the full history of the codebase, past code changes, comments, security keys, sensitive remote paths containing secrets, and plain-text password files. In addition to the apparent risk of revealing passwords and sensitive information, there is a hidden risk that hackers may analyse the code and discover more vulnerabilities that they will likely not be correcting but rather exploiting.
Additionally, these folders might have API keys and database login information, providing threat actors even more access to private user information. According to Defense.com, 332,000 websites in total, including 2,500 on the.gov domain, were identified as potentially susceptible.
“Open source(opens in new tab) technology always has the potential for security flaws, being rooted in publicly accessible code. However, this level of vulnerability is not acceptable,” commented Oliver Pinson-Roxburgh, CEO of Defense.com. “Organizations, including the UK government, must ensure they monitor their systems and take immediate steps to remediate risk.”
According to Pinson-Roxburgh, Git is a very well-liked open source version control system with more than 80 million active users, and this kind of vulnerability on such a well-liked platform can have “severe ramifications” for affected organisations.
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/08/a-bug-in-open-source-makes-millions-of-websites-vulnerable-to-attack/
作者:[Laveesh Kocher][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
[b]: https://github.com/lkxed

View File

@ -1,36 +0,0 @@
[#]: subject: "Google Surpasses Microsoft In Terms Of Open Source Contributors, Says A Study"
[#]: via: "https://www.opensourceforu.com/2022/08/google-surpasses-microsoft-in-terms-of-open-source-contributors-says-a-study/"
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Google Surpasses Microsoft In Terms Of Open Source Contributors, Says A Study
======
According to a new report by Aiven, Google has upped its commitments to open source software and surpassed Microsoft in terms of active contributors. According to Aiven, Google currently has more active contributors than Microsoft thanks to a 20 percent increase in year-over-year monthly commits to the open source code repository GitHub. Google had 5,421 active contributors in July compared to Microsofts 5,268 active contributors, according to data from the Open Source Contributor Index (OCSI).
Aiven co-founder and CTO Heikki Nousiainen said Google overtaking Microsoft was “particularly surprising”.
“A factor in this has been a decline in Microsofts year-on-year commits to open source projects,” Nousiainen said. “However, Microsoft commitment to developer freedom and innovation is consistent, with the company being a major player in open source, and even purchasing GitHub in 2018.”
According to a new report by Aiven, Google has upped its commitments to open source software and surpassed Microsoft in terms of active contributors. According to Aiven, Google currently has more active contributors than Microsoft thanks to a 20 percent increase in year-over-year monthly commits to the open source code repository GitHub. Google had 5,421 active contributors in July compared to Microsofts 5,268 active contributors, according to data from the Open Source Contributor Index (OCSI).
Aiven pointed out that Amazon has started to put more of an emphasis on open-source initiatives, as evidenced by its support for OpenSearch, an ElasticSearch fork, and an increase in the number of projects on GitHub. Nousiainen argued that Amazons support for OpenSearch and ElasticSearch represented a “significant change of direction for the firm” and a desire to take the helm of significant open source projects. According to Aiven, these tech giants are quickly expanding their use of open source software. According to the data, there are now 300 percent more active GitHub contributors from Amazon, Microsoft, and Google than there were six years ago.
“The overall message of the research is positive,” Nousiainen said. “Theres a huge amount of innovation continuing to happen in the open-source community and the results benefit us all. The hyperscalers are setting an example for others to follow.”
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/08/google-surpasses-microsoft-in-terms-of-open-source-contributors-says-a-study/
作者:[Laveesh Kocher][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
[b]: https://github.com/lkxed

View File

@ -1,156 +0,0 @@
[#]: subject: "LibreOffice 7.4: Top New Features and Release Details"
[#]: via: "https://www.debugpoint.com/libreoffice-7-4/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
LibreOffice 7.4: Top New Features and Release Details
======
This post contains the top new features of LibreOffice 7.4 across Writer, Calc, Impress and other core modules.
The LibreOffice team improves the famous free and open-source office product with each iteration. Perhaps the only stable and well-managed open-source project as a replacement to Microsoft Office.
The LibreOffice 7.4 version, bringing regular updates to core modules including Calc, Writer and Impress with features and enhancements. Furthermore, in this release, the compatibility with Microsoft Office improved with changes to the core filters and platform updates.
Before we round up the new features, heres a tentative schedule for LibreOffice 7.4:
### Schedule
| Milestone | Release Date |
| :- | :- |
| Alpha 1 | May 9, 2022 May 15, 2022 |
| Feature Freeze | Jun 6, 2022 Jun 12, 2022 |
| Beta 1 | Jun 6, 2022 Jun 12, 2022 |
| RC1 | Jul 4, 2022 Jul 10, 2022 |
| RC2 | Jul 25, 2022 Jul 31, 2022 |
| RC3 | Aug 8, 2022 Aug 14, 2022 |
| Release 7.4 | Aug 15, 2022 Aug 21, 2022 |
### LibreOffice 7.4 Features
#### Calc
First and foremost, the most crucial change coming in 7.4 is the support of 16k columns in LibreOffice Calc. It was available in earlier LibreOffice 7.3 but hidden as an experimental option. Finally, it is open to support 16384 columns, i.e. up to XFD. Additional columns are going to help several high-volume data work.
![LibreOffice 7.4 Calc now supports 16k columns.][1]
Second, the Autosum button gets the following [additional functions][2] to improve productivity and save time.
* COUNTA
* PRODUCT
* STDEV
* STDEVP
* VAR
* VARP
![Additional options in Autosum button][3]
Moreover, the height of the formula bar is now part of the *.ods files. Hence, you can see the height retained after saving the file and opening it. Earlier, it was being reset to the default height. It is one of the small changes but has a more significant impact on heavy Calc users.
![Height of Calc Formula bar][4]
In addition, a new menu option `Sheet > Navigate > Go to Sheet` shows an entire new dialog which is similar to the Writers Go to Page.
#### Writer
Firstly, the hyphenation settings get three new options. You can now specify the size of the hyphenation zone, minimum word length and ability to stop hyphenating the last word.
![New Hyphenation settings][5]
*Image credit: LibreOffice Team*
Secondly, the menu item Tools > Update > Update now updates the preview of all OLE objects. Also, if you are importing a DOCX file in LibreOffice 7.4, the paragraph borders bring more clarity. In addition, the import also improves the Rich text and checkbox contents inside the text box for DOCX imports. Moreover, Write 7.4 now supports clearing breaks from Word files improving layout consistency.
Secondly, the menu item `Tools > Update > Update all` now updates the preview of all OLE objects.
Also, if you are importing a DOCX file in LibreOffice 7.4, the paragraph borders bring more clarity. In addition, the import also improves the Rich text and checkbox contents inside the text box for DOCX imports.
Moreover, Writer 7.4 now supports clearing breaks from Word files improving layout consistency.
#### Impress
The significant change in Impress is a new Theme tab in the Slide properties for the master slide. It contains several accent colour options which control all the sildes in your presentation. It will be a really neat feature in this version.
![New Theme option in Slide Master Properties][6]
### Common Updates (across all modules)
Firstly, the most important change as a standard feature is LibreOffice now supports WEBP images officially. You can directly export and import WebP images across Writer, Calc, Draw etc. Now you do not need additional software to convert WEBP images, especially in Linux systems.
Moreover, the support for Windows compressed enhanced meta file (EMZ/WMZ) also lands in this release.
![New WEBP Image Support][7]
Secondly, the Fille > Recent Documents can remember the state of the last opened document, whether it was read-only or editable.
The 3D shapes lighting gets some bug fixes and corrections corresponding to the ODF specifications.
### Performance Updates
A bunch of performance boosts also makes this an important release of LibreOffice. Heres a quick recap of the performance boosts.
* [The Text Layout performance gets around a 60% boost][8]
* [Calc formula re-calculation][9]
* Improved performance of [VLOOKUP][10], COUNTIF and SUMIF
* [And CSV file import][11]
Thats not all. LibreOffice 7.4 also brings a huge set of filters (export and import) for Microsoft Office 365 file types, extended PDF export options (such as a sign) via command line, updated language support and API changes.
### Download LibreOffice 7.4
You can download the LibreOffice 7.4 installer using the respective links (language English) for a fresh installation.
* [RPM Package for Fedora and related distributions][12]
* [DEB packages for Ubuntu, Linux Mint and others][13]
* [Windows 10, 11 64-bit][14]
* [macOS 64 bit][15]
* [Mac OS X ARM and Apple SIlicon, M1][16]
**Ugrade**
* Windows users can not upgrade, hence you need to uninstall first, and then reinstall.
* Linux users can find the [upgrade guide in this post][17].
If you need assistance, you can refer to our [guide here][18] to install latest version in Linux. Make sure to report any issues or bugs in the [official bug tracker.][19]
LibreOffice 7.4 is [officially released on Aug 18, 2022][20].
*[Via Release Notes][21]*
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/libreoffice-7-4/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.debugpoint.com/author/admin1/
[b]: https://github.com/lkxed
[1]: https://www.debugpoint.com/wp-content/uploads/2022/06/LibreOffice-7.4-Calc-now-supports-16k-columns.jpg
[2]: https://bugs.documentfoundation.org/show_bug.cgi?id=139602
[3]: https://www.debugpoint.com/wp-content/uploads/2022/06/Additional-formula-in-Autosum-tool.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2022/06/Height-of-Calc-Formula-bar.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2022/06/New-Hyphenation-settings.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2022/06/New-Theme-option-in-Slide-Master-Properties.jpg
[7]: https://www.debugpoint.com/wp-content/uploads/2022/06/New-WEBP-Image-Support.jpg
[8]: http://llunak.blogspot.com/2022/04/improving-text-layout-performance.html
[9]: https://bugs.documentfoundation.org/show_bug.cgi?id=119083
[10]: https://bugs.documentfoundation.org/show_bug.cgi?id=146546
[11]: https://bugs.documentfoundation.org/show_bug.cgi?id=94677
[12]: https://www.libreoffice.org/download/download/?type=rpm-x86_64&version=7.4.0&lang=en-US
[13]: https://www.libreoffice.org/download/download/?type=deb-x86_64&version=7.4.0&lang=en-US
[14]: https://www.libreoffice.org/download/download/?type=win-x86_64&version=7.4.0&lang=en-US
[15]: https://www.libreoffice.org/download/download/?type=mac-x86_64&version=7.4.0&lang=en-US
[16]: https://www.libreoffice.org/download/download/?type=mac-aarch64&version=7.4.0&lang=en-US
[17]: https://www.debugpoint.com/libreoffice-upgrade-update-latest/
[18]: https://www.debugpoint.com/2022/06/install-latest-libreoffice-ubuntu-linux/
[19]: https://bugs.documentfoundation.org/
[20]: https://debugpointnews.com/libreoffice-7-4-release/
[21]: https://wiki.documentfoundation.org/ReleaseNotes/7.4

View File

@ -1,95 +0,0 @@
[#]: subject: "Krita 5.1 Focuses on Improved Usability, Handy Changes to Tools, and Much More!"
[#]: via: "https://news.itsfoss.com/krita-5-1-release/"
[#]: author: "Rishabh Moharir https://news.itsfoss.com/author/rishabh/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Krita 5.1 Focuses on Improved Usability, Handy Changes to Tools, and Much More!
======
The popular open source graphic design software Krita has a new release after eight months.
![Krita 5.1 Focuses on Improved Usability, Handy Changes to Tools, and Much More!][1]
Just at the end of last year, we had covered an article on [Krita 5.0][2]. This was a big update that brought a lot of new features and changes.
For those unaware, Krita is a popular open-source graphics design software up there with the likes of GIMP and Photoshop.
Krita has just finally received a new minor update after eight long months.
Lets take a look at what this release brings!
### Whats New in Krita 5.1?
If you like videos, the Krita team has created a demonstration video (as usual) to help you get familiar with some of the major changes in the release.
![Everything new in Krita 5.1.0][3]
As you may have figured out from the video, this release brings a host of improvements and changes. Ive described some major highlights of the release down below if you prefer reading.
#### Improvements to Tools
Users will definitely adore the all-new Enclose and Fill tool. As the name suggests, you simply need to create an enclosed shape with your cursor over an area you wish to be filled. Krita then takes care of which section(s) to fill. For instance, you can use this tool to fill three spots together instead of individually filling them.
Another new method added is the Continous Fill. You can drag your cursor over nearby regions to be filled automatically. This also includes alternate filling, like on a chessboard where you want to fill alternate squares.
New shortcut settings have been added to Brushes including a new GUI option to set the max brush speed.
#### Better Usability
Touch gestures can now be configured according to the users needs.
Users can easily view the entire canvas at its physical size or just view individual pixels at a time through a revamped version of an existing button called “use aspect of pixels”.
Moreover, HSV color options have been added as well which include a slider for the color selector and adjustment filters.
Oh, and theres a Dual Colour selector option added too!
#### Refreshed Layers
The Layers dock is now much more detailed and cleaner than usual.
A new and convenient addition is the ability to indent sub-layers within a group. This helps differentiate layers easily.
You can even apply cut, copy, paste, and clear operations on multiple selected layers simultaneously.
### Other Changes
While this wraps up the most significant changes in the release, there were numerous other ones as well.
There were some technical changes well like the addition of YCbCr color profiles, compiling support for users with RISC-V hardware and some fixes for Windows users.
Some other changes, improvements and bugfixes include
* Support for WebP and Photoshop layered Tiffs
* Improved clipboard pasting for images
* Warning if save operations fail
* Fixes for vector objects with gradient fills
* Improved switching when exporting frames and entire videos
* Implementation of anti-aliasing based on FXAA algorithm
Although the list is quite long, you can learn more by [checking out the official release notes][4] for more information.
### Wrapping Up
Krita 5.1 addressed a lot of bugs and much-needed changes that arrived with the 5.0 release, not to mention some helpful additions.
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/krita-5-1-release/
作者:[Rishabh Moharir][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/rishabh/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/krita-5-1-release.jpg
[2]: https://news.itsfoss.com/krita-5-0-release/
[3]: https://youtu.be/TnvCjziCUGI
[4]: https://krita.org/en/krita-5-1-release-notes/

View File

@ -1,184 +0,0 @@
[#]: subject: "What if a Lifelong Linux User Tried Windows or macOS for the First Time?"
[#]: via: "https://news.itsfoss.com/linux-user-trying-windows-macos/"
[#]: author: "Abhishek https://news.itsfoss.com/author/abhishek/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
What if a Lifelong Linux User Tried Windows or macOS for the First Time?
======
Windows users face issues while switching to Linux. What if the tables are turned? What problems a lifelong Linux user will face while switching to Windows or macOS?
![What if a Lifelong Linux User Tried Windows or macOS for the First Time?][1]
Do you remember Linus Sebastian (from Linus Tech Tips) [trying out Linux for gaming][2]? He ended up deleting the desktop environment despite a clear warning shown in the terminal.
![Linus Sebastian destroys his Linux system][3]
Considering he utilizes Windows as his daily driver to play games, switching to Linux will definitely need some time.
So, is this a Linux issue? Or is Linus doing it all wrong? Bet ya!
[It's Time More Linux Distros and DEs Become 'Linus-Proof'][4]
Or, is it that any user unfamiliar with an operating system encounters problems during their first trials?
So, here, you get to read a different perspective of a Linux user trying Windows or macOS for the first time.
Will it be a smooth sail? Or will it be as bad as Linuss experience with Linux?
It is definitely going to be something exciting…
**Scott Williams** (a Senior DevOps Engineer) imagined the scenario in a series of tweets.
### Enable TPM 2.0 for Windows 11?
Considering Windows 11 is the latest available Windows version. How can Scott install it?
> @vwbusguy \
> Join me tonight as I try to enable TPM 2.0 on this four year old laptop to see if we can get Windows 11 to run on it. It says it supports Intel PTT, so this should be straightforward, right?
>
> @vwbusguy \
> Between Windows and MacOS, there are too many options. Can't all proprietary operating systems users come together and just make one perfect operating system that fits every use case and preference out of the box, but most specifically mine?
[Twitter @vwbusguy][5]
*How to enable TPM 2.0? How to find it in the BIOS menu? Is it safe to enable TPM 2.0? Should I flash a newer BIOS? Will I brick my motherboard in the process of updating the BIOS?*
These are some of the questions, every Linux user (and even Windows/macOS users) will have when they want to upgrade their system to Windows 11.
With Linux distributions, we never have to do such a peculiar thing to make it work. Even in 2022. But, Windows 11 wants you to know about the BIOS settings or the TPM chip before you can upgrade to it.
While Scott mentions about an older laptop, it is worth noting that even with the latest motherboards (for instance Z590), you may have to tweak the BIOS or flash a newer BIOS version to support Windows 11.
This is incredibly inconvenient, even for technical users because updating BIOS comes with its own risks.
### Do I Need an Antivirus Software? Which One?
While Apples XProtect and Windows Defender should be good for basics, there are several options when it comes to Antivirus if you want enhanced protection.
> @vwbusguy \
> I'm surprised that MacOS doesn't even come with a modern web browser installed and you have to go to a website to download one. That's not a great initial user experience.
>
> @NaheemSays \
> It is actually deeper than that. As a user of both systems, I think people subconsciously forget how weird Windows can be.
>
> Its biggest advantage is that it comes pre installed. First step of a new system: uninstall a lot of crap. Try even getting rid of Mcaffee or Norton!
>
> @vwbusguy \
> So do I or do I not need antivirus software and which one?
[Twitter @vwbusguy][6]
And, with so many choices and paid reviews online, it is tough to know whats actually a genuine option and if you should spend for it.
A Linux user will often wonder: *Why do I even need this? Wont this affect the performance? What do I do with so many protection features? Isnt Windows a secure operating system?*
### iCloud and macOS: A Love Story?
> @vwbusguy \
> How do I access files on my @btrfs drive in Windows or MacOS?
>
> @vwbusguy \
> What is iCloud and how do I make this go away?
>
> @mikecodemonkey \
> And then MacOS is sooooo annoying having to log into your iCloud every 5 seconds, set multiple passwords, constantly tell Siri to bugger off.
[Twtter @vwbusguy][7]
Linux users are not fond of integrated cloud services. They either mount a cloud storage drive (or a network drive).
Even if they opt for a cloud storage service, it should work as per their explicit actions. However, with macOS, you will be constantly reminded of iCloud while Siri popping up in between.
### Linux User Cleans the Registry
With so many options and tools to clean registries and optimize systems for better performance, a new Linux user may end up with an unresponsive Windows.
> Reddit says I need to "clean my registry" so I followed a few tutorials and deleted a few things and now this Windows box is acting really weird.
[Twitter @vwbusguy][8]
Even in 2022, there is no clarity when you work with the registry or tools that helps you “optimize” the registry.
Dare you, veteran Linux users love the details before trying anything. But, if there is no proper warning/notice in the GUI, how can one know about it all?
### Reboot All The Way
Its not like a reboot does not fix things in Linux. But, how many times do I have to reboot when updating Windows or after installing software?
> We can all be like, \
> "You have to install how many .NET framework versions? How many reboots so far?" \
> "My Adobe version doesn't support this version of MacOS? No wonder people have so many have trouble taking MacOS seriously. Apple needs to fix this."
[Twitter @vwbusguy][9]
Every time I reboot, I lose the active applications that were in the background.
Why cant Windows just detect the new installations and updated packages with a simple refresh instead of a reboot? Why is this so much counter-productive?
### Do I Have to Pay for All This? Wasnt the Windows License Enough?
Linux is primarily all about free and open-source software. Hence, the pre-installed utilities are free.
So, a user who is comfortable with those tools would have to suddenly pay for a Windows license, and also pay for software.
Isnt Microsoft too greedy here?
### Lack of Essential Packages by Default
I cant even extract an archive after I install Windows? Is it truly a modern OS?
### Multi-Monitor Setup for macOS
> @vwbusguy \
> How do I get my monitors to work with MacOS?
>
> I'm used to firmware updates just being automatic through LVFS on Linux. How do I update the firmware from Windows? This vendor site says I need to put something on a USB drive. Can I borrow one from someone?
>
> @acruiz \
> Indeed!!!! I had to install several extensions on macOS to get to a semi decent setup (plus some shitty drivers for multimonitor support in my dock station which worked OOTB on Linux)
[Twitter @vwbusguy][10]
It is a breeze to work with Linux when you have a multi-monitor setup. But, when it comes to macOS, everything breaks away.
### Final Thoughts
Ultimately, it depends on what the standard is and what you are familiar with. Windows and macOS are often considered the standard desktop operating system.
In contrast, most people know little associated with Linux, except the fact that it is difficult to use.
However, if you get to know the essentials, just like you know for Windows/macOS, Linux desktop experience will be a smooth experience.
It is just because there are a variety of things when it comes to Linux. However, with patience, you can enjoy the full experience of it.
Linux isnt problematic as a whole, it's the user that fails to get acquainted with coming from another operating system. We do not want Linux to be Windows nor Windows to act like Linux, everything should have a separate presence.
But then again, Linux should not be struck out just because a longtime Windows user did not have a good initial experience with it because the same can happen with a longtime Linux user trying Windows/macOS.
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/linux-user-trying-windows-macos/
作者:[Abhishek][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/abhishek/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/08/linux-windows.png
[2]: https://www.youtube.com/watch?v=0506yDSgU7M&t=788s
[3]: https://news.itsfoss.com/content/images/2022/08/linus-sebastian-nukes-pop-os-while-installing-steam-os.webp
[4]: https://news.itsfoss.com/more-linux-distros-become-linus-proof/
[5]: https://twitter.com/vwbusguy/status/1463543535630569473
[6]: https://twitter.com/vwbusguy/status/1463556939728572419
[7]: https://twitter.com/vwbusguy/status/1463579003504136192
[8]: https://twitter.com/vwbusguy/status/1463595769051549697
[9]: https://twitter.com/vwbusguy/status/1463538368956887043
[10]: https://twitter.com/vwbusguy/status/1463606807906029570

View File

@ -0,0 +1,83 @@
[#]: subject: "Lapce is a Fast, Lightweight Open-Source Code Editor in Making"
[#]: via: "https://news.itsfoss.com/lapce-code-editor/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Lapce is a Fast, Lightweight Open-Source Code Editor in Making
======
Lapce is an open-source code editor built in Rust. It is in its early stages of development, but looks promising!
![Lapce is a Fast, Lightweight Open-Source Code Editor in Making][1]
There are plenty of open-source code editors available for Linux.
What would you think about another option: A **Rust-based** open source code editor focusing on performance?
It should be **exciting**, right?
Lapce is one such project in development that aims to present a feature-rich and fast code editor as an alternative to Microsoft's Visual Studio Code.
The developer also mentions that it was inspired by [Xi-editor][2] (which is no longer in active development).
### Lapce at its Pre-Alpha Stage
![lapce editor][3]
Although Lapce is not yet a complete offering, it has much to offer.
So, seeing what we get as the stable releases approach closer should be interesting.
The features worth highlighting include:
* Command palette (quick actions).
* Customize the UI font, header height, font shadow, scroll width, etc.
* Built-in terminal.
* Vim-like modal editing.
* Connect to a remote computer.
* Code syntax highlighting, code completion, and similar essentials.
* Plugin system.
* Dark/light mode.
While it focuses on performance, it looks good in terms of user experience (even though it is incomplete).
![][4]
If users get access to all the essential features one expects in a code editor, and a better-performing application, Lapce can be a popular choice in no time.
### Download Lapce
Lapce is available for Linux, macOS, and Windows as a pre-alpha build.
For Linux, you just need to download and extract the tar.gz package and run the Lapce executable available using the GUI or the terminal.
It is under heavy development at the moment. You can download the package for your platform and test it, but you should expect bugs and new releases soon enough. Explore its [GitHub page][5] for more information.
[Lapce][6]
I tried it on Pop!_OS 22.04 LTS, and noticed the UI freezing a couple of times. However, the functionalities that it provides seem impressive.
💬 *What are your thoughts on Lapce as an open-source code editor built in Rust? Do you think you will consider it over your current favorite? Share what you think in the comments below.*
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/lapce-code-editor/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/09/lapce-editor.png
[2]: https://github.com/xi-editor/xi-editor
[3]: https://news.itsfoss.com/content/images/2022/09/lapce-screenshot.png
[4]: https://news.itsfoss.com/content/images/2022/09/lapce-code-edit.png
[5]: https://github.com/lapce/lapce
[6]: https://lapce.dev/

View File

@ -0,0 +1,37 @@
[#]: subject: "Image Generation Model Stable Diffusion Is Now Open Source"
[#]: via: "https://www.opensourceforu.com/2022/09/image-generation-model-stable-diffusion-is-now-open-source/"
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Image Generation Model Stable Diffusion Is Now Open Source
======
The pre-trained model weights for Stable Diffusion, a text-to-image AI model, were made available to the general public by Stability AI. When given a written prompt, Stable Diffusion can produce 512×512 pixel graphics that are photorealistic and represent the scene it describes.
Following the earlier code release and a restricted release of the model weights to the research community, the model weights have now been made available to the general public. With the most recent version, anyone can download and utilise Stable Diffusion on hardware designed for common consumers. The model not only supports text-to-image generation but also image-to-image style transfer and upscaling. Along with the release, Stable AI also made available a beta version of DreamStudio, an API and web UI for the model. Stable AI states that:
“Stable Diffusion is a text-to-image model that will empower billions of people to create stunning art within seconds. It is a breakthrough in speed and quality meaning that it can run on consumer GPUs…This will allow both researchers and…the public to run this under a range of conditions, democratizing image generation. We look forward to the open ecosystem that will emerge around this and further models to truly explore the boundaries of latent space.”
Latent diffusion models are a method of image production that Stable Diffusion is built on (LDMs). LDMs create images by iteratively “de-noising” input in a latent representation space, then decoding the representation into a complete image, in contrast to other well-known image synthesis techniques like generative adversarial networks (GANs) and the auto-regressive approach employed by DALL-E. The recent IEEE / CVF Computer Vision and Pattern Recognition Conference featured a paper on LDM, which was created by the Ludwig Maximilian University of Munichs Machine Vision and Learning research group (CVPR). An further diffusion-based picture generating AI that InfoQ reported earlier this year was Googles Imagen model.
Numerous operations can be supported by the Stable Diffusion model. Similar to DALL-E, it may generate a high-quality image that exactly fits a text description of a desired image. A straightforward sketch and a textual description of the desired image can also be used to create a realistic-looking image. Similar image-to-image abilities may be found in the Make-A-Scene model from Meta AI, which was just just released.
Examples of created photos from Stable Diffusion have been shared openly by several people, and Katherine Crowson, lead developer at Stability AI, has shared numerous photographs on Twitter. The effects that AI-based picture synthesis will have on artists and the art world worry some observers. Stable Diffusion was released the same week that an AI-generated piece of art took home the top honour in the Colorado State Fairs art competition. Stable Diffusions source code is accessible on [GitHub][1].
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/09/image-generation-model-stable-diffusion-is-now-open-source/
作者:[Laveesh Kocher][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
[b]: https://github.com/lkxed
[1]: https://github.com/CompVis/stable-diffusion

View File

@ -0,0 +1,101 @@
[#]: subject: "The New Raspberry Pi OS Update Brings in Sweet Little Improvements"
[#]: via: "https://news.itsfoss.com/raspberry-pi-os-sep-update/"
[#]: author: "Rishabh Moharir https://news.itsfoss.com/author/rishabh/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
The New Raspberry Pi OS Update Brings in Sweet Little Improvements
======
Raspberry Pi OS update adds NetworkManager support along with new shortcuts.
![The New Raspberry Pi OS Update Brings in Sweet Little Improvements][1]
If you're an enthusiastic fan of the little computer, you may know that the Raspberry Pi can be used as a fully-fledged desktop computer. Not to forget, it is also at the heart of various electronic/IoT projects.
While many Linux distributions offer images for the Raspberry Pi, the company maintains its official OS for the Pi known as [Raspberry Pi OS][2].
If you didn't know, Raspberry Pi OS is based on Debian. Specifically, [Debian 11 Bullseye][3] for the current version. It is lightweight and uses LXDE as its desktop environment.
### Raspberry Pi OS: What's New?
Although the latest update is not a major one, it still brings in a few helpful additions. If you use your Raspberry Pi as a desktop PC, you will certainly welcome them.
Let's take a look at what the new release offers.
#### Quick Search Functionality for Main Menu
While Windows and many Linux distros already include this basic feature, Raspberry Pi OS did not have it, until now.
Users can hit the Raspberry Pi key or the default host key on the keyboard which will open the main menu and a new search box appears automatically once the user starts typing the name of an app to be launched.
The arrow up and down keys can be used to navigate the menu and the enter key to select the app.
![New search box for main menu][4]
If the user does not type anything, the main menu will function exactly the same as it does when the Raspberry Pi icon is clicked to display the apps.
There's no need to use the mouse cursor to open up the apps anymore.
#### New Keyboard Shortcuts
Just like the main menu, you can also bring up Wi-Fi and Bluetooth toggles by the keyboard.
Performing **Ctrl+Alt+W** will open the Wi-Fi menu while **Ctrl+Alt+B** is reserved for Bluetooth.
#### Enhanced Audio Input Control
The taskbar will now display two separate icons for input and output devices instead of the single default volume icon.
![Volume Slider][5]
A microphone icon will also pop up next to the speaker icon whenever an audio input device gets connected. Moreover, if multiple audio input devices are connected, users can perform a right click on the same icon to select a device from the list while a left click will display the volume control slider.
#### NetworkManager Support
NetworkManager is a popular daemon used by many Linux distros to handle networking functionality. It includes a host of features to help users tweak and configure network settings accordingly.
If you are curious, learn more about daemons in Linux here:
[What are Daemons in Linux? Why are They Used?][6]
For its functionality, initial support for NetworkManager as an alternate option to dhcpcd was introduced. This means that users can easily manage VPN connections without much hassle or even configure the Pi as a Wi-Fi access point.
![][8]
If you still want to try NetworkManager, there are a few advanced steps required to be followed. Users can be assured of the option to switch back to dhcpcd if they face any problems whilst using NetworkManager.
The [official release notes][9] includes a bit more details if you want to explore more about the release.
### Getting Raspberry Pi OS
Head over to the official downloads page linked below to download the new image.
You can use Raspberry Pi Imager on any of your systems to prepare a microSD card to use on a Raspberry Pi. In either case, you can separately download the Raspberry Pi OS file to get it set up.
[Get Raspberry Pi OS][10]
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/raspberry-pi-os-sep-update/
作者:[Rishabh Moharir][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/rishabh/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/09/raspberry-pi-os.jpg
[2]: https://www.raspberrypi.com/software/
[3]: https://news.itsfoss.com/debian-11-feature/
[4]: https://news.itsfoss.com/content/images/2022/09/menu.png
[5]: https://news.itsfoss.com/content/images/2022/09/mic.png
[6]: https://itsfoss.com/linux-daemons/
[8]: https://news.itsfoss.com/content/images/2022/09/nm.png
[9]: https://www.raspberrypi.com/news/the-latest-update-to-raspberry-pi-os/
[10]: https://www.raspberrypi.com/software/

View File

@ -1,89 +0,0 @@
[#]: subject: "Why Agile coaches need internal cooperation"
[#]: via: "https://opensource.com/article/22/7/agile-coach-internal-cooperation"
[#]: author: "Kelsea Zhang https://opensource.com/users/kelsea-zhang"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Why Agile coaches need internal cooperation
======
An Agile coach is only as successful as their Agile partner. Here's how to foster internal cooperation and create an Agile team.
![Working meetings can be effective meetings][1]
Image by Mapbox Uncharted ERG, [CC-BY 3.0 US][2]
If you're an Agile coach, you probably seek to inspire and empower others as an external member of your team or department. However, many Agile coaches overlook the importance of internal cooperation. That's not necessarily a term you are familiar with, so allow me to explain.
### What is internal cooperation?
As an Agile coach, you don't work alone. You try to find a partner in the team you're taking care of. This partner is expected to:
* Undertake all or most of the Agile transformation in the future.
* Find all possible opportunities for systematic improvement and team optimization.
* Be self-motivated.
* Not be managed by you; you delegate your enthusiasm and vision to them.
Of course, maybe you don't need such a person because, theoretically speaking, everyone in the team is your ideal candidate, and everyone is self-driven. Or maybe your whole team will magically become what you want it to be overnight.
Reality check: most of the time, you need a partner, an inside agent. Somebody to keep the spirit of Agile alive, whether you're there to encourage it or not.
### Internal cooperation is required
Getting buy-in from the team you are coaching isn't a luxury; it's a requirement. If you're the only Agile practitioner on your team, then your team isn't Agile! So how do you cultivate this internal cooperation?
#### Clarify responsibility
Being Agile is supposed to be a team effort. The beneficiary is the team itself, but the team must also bear the burden of transformation. An Agile coach is meant to be inspiring and empowering, but the change doesn't happen in just one person. That's why teams must learn to consider and solve problems on their own. A team must have its own *engine* (your Agile partner is such an engine) rather than relying on the external force of the Agile coach. It's the engines that want to solve problems, and with the help of Agile coaches, their abilities and ways of thinking can be enriched and improved.
It's best to have an engine from the beginning, but that's not always possible. The earlier, the better, so look for allies from the start.
#### Know the team
When you find a partner, you gain someone who understands the team's situation better than you do. A good partner knows the team from the inside and communicates with it on a level you cannot. No matter how good you are as an Agile coach, you must recognize that an excellent Agile partner has a unique advantage in "localization."
The best approach is not *An Agile coach makes a customized implementation plan for the team, and then the team is responsible for execution*. In my opinion, with the support of the Agile coach, the Agile partner should work with the team to make plans that best fit its needs. Next, try to implement those plans with frequent feedback and keep adjusting them as needed.
You continue to observe progress, whether the team members falter in Agile principles, and give them support at the right moments. Of course, when there's something wrong, you often want to stay silent, let the team hit a wall, and learn from their setbacks. Other times, stepping in to provide guidance is the right thing.
### Is an Agile coach still necessary?
In a word: Absolutely!
Agile is a team effort. Everyone must collaborate to find processes that work. Solutions are often sparked by the collision of ideas between the Agile coach and the partner. Then the partner can accurately get how an Agile theory is applied in the daily work. The partner understands the essence of Agile theories through the solutions.
As an Agile coach, you must have a solid theoretical foundation and the ability to apply that theory to specific scenarios. On the surface, you take charge of the theory while your Agile partner is responsible for the practice. However, an Agile coach must not be an armchair strategist, and teams aren't supposed to assume that the Agile coach is a theorist. In fact, an Agile coach must consciously let go of the practice part so the Agile partner can take over.
The significance of accompanying a team is not supposed to be pushing the team to move passively toward the Agile coach's vision. The amount of guidance required from you will fluctuate over time, but it shouldn't and can't last forever.
### Find an Agile partner
How do you find your Agile partner? First of all, observe the team you are coaching and notice anyone who is in charge of continuous improvement, whether it's their defined job role or not. That person is your Agile partner.
If there's nobody like that yet, you must cultivate one. Be sure to choose someone with a good sense of project management. I have observed that team leaders or project managers who perform well in the traditional development model may not be good candidates in the Agile environment. In an Agile management model, you must have an open mind, a sense of continuous pursuit of excellence, a flexible approach, extensive knowledge, and strong self-motivation.
### Be Agile together
Don't be shy about bringing on a partner to help you with your work and communication. Instead, find willing partners, and work together to make your organization an Agile one.
*[This article is translated from Xu Dongwei's Blog and is republished with permission.][4]*
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/7/agile-coach-internal-cooperation
作者:[Kelsea Zhang][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/kelsea-zhang
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/leader-team-laptops-conference-meeting.png
[2]: https://creativecommons.org/licenses/by/3.0/us/
[3]: https://enterprisersproject.com/article/2022/2/agile-adoption-6-steps-IT-leaders?intcmp=7013a000002qLH8AAM
[4]: https://mp.weixin.qq.com/s/OQUAY6JkpTEgnev_EgZdZA

View File

@ -1,294 +0,0 @@
[#]: subject: "What is the Difference Between macOS and Linux?"
[#]: via: "https://itsfoss.com/mac-linux-difference/"
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
What is the Difference Between macOS and Linux?
======
We often[compare Linux with Windows][1], but what about comparing it with macOS?
While the differences between Linux and Windows are quite obvious, Linux and macOS may seem similar to many.
Both can run Unix commands in the terminal, and the user experience is vastly different from Windows. And not all Windows applications and games are available for macOS and Linux.
This is why some people even think Apples macOS is based on Linux. But that is not the case. macOS is not Linux despite the similarities.
There are plenty of differences between the two UNIX-like operating systems and I shall highlight both the similarities and the differences in this article.
So, lets compare Apple and Orange Penguin.
### macOS vs. Linux: Origins
macOS has a fascinating history. The foundation of it was built by Steve Jobss NeXT computer company when he wasnt at Apple. Technically, it was based on the [Mach Kernel][2] and the UNIX-derived BSD.
Back then, a [NeXTSTEP][3] operating system was created to power the devices/computers built by **NeXT**. While it got some attention, it wasnt a big success. Apple later acquired NeXT and brought back Steve onboard as part of the deal, making NeXTSTEP OS the base for macOS.
This is why macOS has a combination of Unix components along with Apples proprietary technologies.
**On the contrary**, Linux (the kernel) was built as a free and open-source replacement for Unix.
Linux is not an operating system but needs different components like [desktop environments][4] to form an operating system. There are [hundreds of Linux-based operating systems][5] called distributions.
For simplicity, we tend to address it as **Linux** OS instead of a specific Linux distribution.
### macOS kernel vs Linux kernel
The macOS kernel is officially known as XNU. The [acronym][6] stands for “XNU is Not Unix.” According to [Apples Github page][7], XNU is “a hybrid kernel combining the Mach kernel developed at Carnegie Mellon University with components from FreeBSD and C++ API for writing drivers”. The BSD subsystem part of the code is [“typically implemented as user-space servers in microkernel systems”][8]. The Mach part is responsible for low-level work, such as multitasking, protected memory, virtual memory management, kernel debugging support, and console I/O.
While the macOS kernel combines the feature of a microkernel ([Mach][9])) and a monolithic kernel ([BSD][10]), Linux is solely a monolithic kernel. A [monolithic kernel][11] is responsible for managing the CPU, memory, inter-process communication, device drivers, file system, and system server calls.
### Heres What They Have in Common
macOS utilizes Unix components, and Linux was built as an alternative to Unix. So, what do we have in common here?
Both give access to **Unix commands, bash/zsh, and other shells**.
The [default shell][12] can be different, but you can always change it as per your preferences.
Thats about it. I cant think of anything else similar between the two.
Probably a decade back, we could say that both Linux/macOS offered fewer applications.
But thats not the case anymore.
The software ecosystem and game support for both have evolved over the years, which we will discuss later in this article.
### Codebase: Proprietary vs. Open-Source
![open source proprietary illustration][13]
macOS is a proprietary operating system, meaning you cannot view the complete operating systems source code.
Sure, you have [part of the macOS (mostly GNU) libraries source code available][14]. There is also the [XNU kernel code][15] used in the development of macOS and iOS operating systems. But [you cannot just take this code and build a macOS clone][16] to be installed on any hardware.
Its not the end of the world without the source code, but you get **less transparency** on Apples claims and practices to secure and enhance your computer experience.
Some might argue that proprietary code remains hidden for security reasons. However, both proprietary and open-source software remain vulnerable to threats.
**The difference between them** is: that open-source software often gets fixed sooner because of community participation by several developers, compared to limited employees working on macOS.
Unless you trust Apple without questions, Linuxs open-source model gets an edge.
### Purpose and Usage: macOS vs. Linux
macOS is tailored for desktop and laptop usage. It is well-suited for **video editing, graphics designing, and audio editing**.
When it comes to Linux, you get a host of possibilities. You can use Linux for:
* Desktop
* Toaster (yes! I hope you know about [IoT][17])
* Single Board Computers
* Server
Of course, it is not the same experience when using it on various platforms, but Linux can run for various use-cases.
So, if you like Linux, you can choose to continue using it on other platforms for a comfortable experience.
### macOS vs Linux: User Experience
When it comes to user experience, it comes down to personal preferences.
macOS offers a **pleasing user interface**. It is visually appealing with subtle animations and high-resolution wallpapers/icons.
![macOS Monterey][18]
You can expect an easy and seamless experience across the platform.
With Linux, you can get an equally pleasing user interface that is easy to use.
![Zorin OS 16 Pro][19]
**Unfortunately**, the user experience slightly varies because of the distribution you decide to install and the desktop environment it comes along with.
You can explore some of the [best desktop environments][20] listed. You can even opt for [macOS-like Linux distributions][21].
For instance, if you are using **Pop!_OS, Ubuntu, Zorin OS, or elementary OS**, you could have an excellent user experience.
![Pop!_OS 22.04 LTS][22]
If you end up using something like MX Linux, or different, the user experience may not be comparable to macOS.
![MX Linux][23]
Overall, the out-of-the-box experience with Linux is inconsistent, but it is capable enough if you know what you are doing.
And if you are coming from Windows, the interface could be confusing initially.
### Customizability
![customizability][24]
If you want an operating system that lets you tinker with every aspect of it, macOS is not for you.
While Apples designs could be aesthetically pleasing by default, not everyone likes them.
If you want to personalize, take control, and heavily customize the operating systems nuts and bolts, Linux should be the perfect pick.
You can choose to customize the user interface as much as you want, with a wide range of different elements, and go wild with your preferences. To get started, look at our [KDE customization][25] guide to explore the possibilities.
While that is good, it could backfire when customizing things on a Linux system. So, you need to learn/explore what you want to customize.
### Hardware Requirements to run macOS vs Linux
![hardware illustration][26]
This is where macOS suffers a solid defeat.
If you want access to macOS and have a good experience with it, you need to purchase Apple hardware, which is costly.
For example, the base configurations for macOS-powered laptops start with **8 GB of RAM** and **256 GB of storage**, available for **$1200** or more.
Unless you want to constantly use the swap space for multitasking and already have a cloud storage space, it would be a terrible idea to get one for yourself.
In contrast, if you would rather not spend a lot but still want a decent configuration for your system (PC/laptop), it is easy to get a device with 16 GB RAM + 512 GB SSD to run Linux for around 800 USD.
**A personal note**: Im used to 32 Gigs of RAM + 500 GB of SSD storage. To get that kind of multitasking headroom (without using the swap), I will have to pay a premium to Apple.
Some skilled tinkerers try running macOS on non-Apple hardware. Such a system is called [Hackintosh][27] but it is certainly nowhere close to the comfort of running Linux on a regular computer.
### Software Ecosystem
macOS offers a **top-notch native experience** with macOS-exclusive applications or tools made by Apple.
Yes, you may have to purchase those applications. However, unlike some subscription options, you get one-time purchase alternatives with macOS for professional applications.
![Final Cut Pro on macOS][28]
For users who want to design, edit videos, edit photos, and have a creative workflow, macOSs software suite should be a great choice if you do not mind investing in it.
The free Apple tools like iMovie, Keynote, etc. are good themselves. Couple them with premium tools like Final Cut Pro, Affinity Designer, and more and you get world-class editing experience. Not to forget that creative tools like Adobe are also available on macOS.
Additionally, Apple has strict guidelines for applications available for its platform that enhance the native experience with third-party apps (free or paid).
This is why many designers and editors prefer using macOS over any other operating systems.
For the Linux platform, you have **great FOSS alternatives** to some macOS-only apps. Unless you like or have experience with macOS-specific applications, you should not have trouble with software available for Linux.
![kdenlive editor][29]
The native app experience depends on the Linux distribution you use.
![Planner (To-do list app for Linux)][30]
It may not be as seamless as macOS, but if you are not a professional-grade video/graphics editor, you should not have any issues.
### Gaming on Linux and macOS
![gaming illustration][31]
While Apples making good progress on making its new M1/M2 chips as capable as possible, macOS currently has poor support for games.
A handful of games work, and most arent supported officially. To be honest, investing in a Mac for gaming is not what it is for.
Regarding Linux, numerous AAA games and Indie titles work fine. Sure, there are some hiccups with certain games. But, with Valves push towards official game support for Steam Deck, even the latest releases like “**Spider-Man: Remastered**” are Steam Deck verified.
Ultimately, helping improve the game support for the Linux platform.
Additionally, considering that the PC graphics card market is almost back to normal (near or below MSRP), you can get a sweet PC build or laptop without worrying about performance bottlenecks.
Would you spend upwards of **$1800 for a Mac with 16 GB of RAM and 512 GB of SSD** or get a PC/laptop with 32 GB RAM (or more), and at least 1 TB SSD (or more)?
Thats your call.
### Package Manager
![package manager illustration new][32]
A package manager helps you quickly find, install, and remove software in your operating system.
Linux has been the superior force in package management compared to anything out there.
You get options like [Flatpak][33], [Snap][34], [Synaptic][35], and more out of the box.
But, Mac users do not have anything to rely on by default. Fortunately, an option like [Homebrew][36] makes life easier for macOS users.
It also supports Linux. So, you can use it across multiple devices to make things easy.
### Operating System Updates
![software update illustration][37]
Apple does not share specific timelines for software updates to the operating system.
For instance, **macOS Ventura** (the upcoming version upgrade at the time of writing) suddenly ditched all the Mac devices before 2017.
Interestingly, the previous operating system versions had average support for about **seven years**, but with newer changes, it seems to be about **five** now.
With Apple silicons, it may not be a straightforward answer. But, it is safe to assume at least 4-5 years of software support.
Linux gives you options. If you want a stable operating system without feature upgrades but focused on maintenance and security, [LTS editions][38] of Linux distributions give you up to **five years** of updates for free. This is primarily true for [Ubuntu][39] or Ubuntu-based distributions like Linux Mint.
Furthermore, theres a subscription plan for Ubuntu, where you can continue receiving security updates for up to **10 years**.
And, it does not end there; you can also opt for [rolling-release distributions][40] that get constant bleeding-edge updates with no timeline for an end. As long as your hardware is competent enough, you should be able to update the operating system with no issues.
### macOS vs. Linux: What Should You Pick?
macOS can be well worth the price tag if you need it.
It is not an easy recommendation for users who just need to surf the web, send emails, and perform some tasks that are possible on any platform.
macOS remains a niche pick.
However, Linux has improved to become a usable choice for former Windows/macOS users, computer science students, developers, creative professionals (like us) and a wide range of potential users.
There are many reasons to pick Linux over macOS, but not the other way around (I think). What are your thoughts on macOS vs. Linux? You are welcome to share your thoughts in the comments down below.
--------------------------------------------------------------------------------
via: https://itsfoss.com/mac-linux-difference/
作者:[Ankush Das][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/ankush/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/linux-better-than-windows/
[2]: https://en.wikipedia.org/wiki/Mach_(kernel)
[3]: https://en.wikipedia.org/wiki/NeXTSTEP
[4]: https://itsfoss.com/what-is-desktop-environment/
[5]: https://itsfoss.com/what-is-linux/
[6]: https://github.com/apple/darwin-xnu
[7]: https://github.com/apple/darwin-xnu
[8]: http://osxbook.com/book/bonus/ancient/whatismacosx/arch_xnu.html
[9]: https://en.wikipedia.org/wiki/Mach_(kernel
[10]: https://en.wikipedia.org/wiki/FreeBSD
[11]: https://www.howtogeek.com/howto/31632/what-is-the-linux-kernel-and-what-does-it-do/
[12]: https://linuxhandbook.com/change-shell-linux/
[13]: https://itsfoss.com/wp-content/uploads/2022/08/open-source-proprietary-illustration.jpg
[14]: https://opensource.apple.com/releases/
[15]: https://github.com/apple/darwin-xnu
[16]: https://www.techrepublic.com/article/why-apple-open-sourcing-mac-os-x-isnt-terribly-exciting/
[17]: https://www.ibm.com/blogs/internet-of-things/what-is-the-iot/
[18]: https://itsfoss.com/wp-content/uploads/2022/08/macos-monterey-screenshot.jpg
[19]: https://itsfoss.com/wp-content/uploads/2021/12/zorin-os-16-mac.png
[20]: https://itsfoss.com/best-linux-desktop-environments/
[21]: https://itsfoss.com/macos-like-linux-distros/
[22]: https://itsfoss.com/wp-content/uploads/2022/08/pop-os-screenshot-2022.png
[23]: https://itsfoss.com/wp-content/uploads/2022/07/10.-MX-Linux.jpg
[24]: https://itsfoss.com/wp-content/uploads/2022/08/customizability-illustration.jpg
[25]: https://itsfoss.com/kde-customization/
[26]: https://itsfoss.com/wp-content/uploads/2022/08/hardware-illustration-800x450.jpg
[27]: https://www.freecodecamp.org/news/build-a-hackintosh/
[28]: https://itsfoss.com/wp-content/uploads/2022/08/final-cut-pro-mac.jpg
[29]: https://itsfoss.com/wp-content/uploads/2022/08/kdenlive-editor.jpg
[30]: https://itsfoss.com/wp-content/uploads/2021/08/planner-board-view.png
[31]: https://itsfoss.com/wp-content/uploads/2022/08/gaming-illustration.jpg
[32]: https://itsfoss.com/wp-content/uploads/2022/08/package-manager-illustration-new.jpg
[33]: https://itsfoss.com/what-is-flatpak/
[34]: https://itsfoss.com/use-snap-packages-ubuntu-16-04/
[35]: https://itsfoss.com/synaptic-package-manager/
[36]: https://itsfoss.com/homebrew-linux/
[37]: https://itsfoss.com/wp-content/uploads/2022/07/software-update-illustration.jpg
[38]: https://itsfoss.com/long-term-support-lts/
[39]: https://itsfoss.com/getting-started-with-ubuntu/
[40]: https://itsfoss.com/best-rolling-release-distros/

View File

@ -0,0 +1,105 @@
[#]: subject: "“I wish the industry would not follow this ever increasing hype cycle for new stuff”"
[#]: via: "https://www.opensourceforu.com/2022/08/i-wish-the-industry-would-not-follow-this-ever-increasing-hype-cycle-for-new-stuff/"
[#]: author: "Abbinaya Kuzhanthaivel https://www.opensourceforu.com/author/abbinaya-swath/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
“I wish the industry would not follow this ever increasing hype cycle for new stuff”
======
*While new technologies can lead to innovations, hype often goes with the territory. Gerald Venzl, senior director, product management at Oracle Corporation speaks with Abbinaya Kuzhanthaivel about the risks of following the hype, and shares his thoughts on how to grow a career by contributing to open source projects.*
##### Q. Can you tell us a bit about your journey with open source?
**A.** I currently work as a database product manager looking after the Oracle Database. As part of my job, I help steer the direction of the product and help pinpoint priorities in the market that need to be addressed. Often people are surprised when I tell them that open source is an important aspect of that. For example, Oracle recently launched a Kubernetes operator for its database, which is fully open source and is available on GitHub. But we have also Docker build files on GitHub, and even some of our Oracle Database drivers are fully open source, such as our Node.js driver and the Python driver.
##### Q. Is Oracle your first venture into open source?
**A.** I was accustomed to open source in my personal life before joining Oracle. For me, open source is a natural part of my job.
Oracle has a long-standing commitment to open source with Oracle Linux, Java, MySQL and many other projects. Although the Oracle Database core is proprietary, we see the value of open source and having people to contribute and understand the technologies around it.
##### Q. What do you think about open source as an opportunity?
**A.** The thing that I like about open source is that its essentially a democracy and everybody gets to participate. Not that all participants are core contributors, but it connects people from all over the world. The exposure to projects and other developers is important for growing your skillset and your career.
In Oracle, we are currently focusing a lot on the Kubernetes operator. Thats an exciting project. In my free time, I also write little tools and open source them. I had worked a little on a command line tool called csv2db, that allows you to load CSV data into a database. I see these projects as a chance to educate myself. You read something, and then you try to implement it and see whether you really understood it, whether it works and so on.
##### Q. How did this change happen from being a developer to a product manager?
**A.** My path was probably highly irregular. I am from Austria originally where I worked as a developer for an American company headquartered in New York. I was part of the performance engineering team. I was actually one of those guys who tried to profile the code and those skills eventually brought me to troubleshoot production systems at customer sites. I relocated to New York, and then a couple of years later Oracle asked me to join their pre-sales team as a result of our earlier interactions in running proof-of-concepts and performance tests on their systems together.
I liked the opportunity to learn by interacting with customers directly and discussing requirements. But for me, the turning point was moving back into development and specifically into the technical aspects as product manager.
##### Q. What are the top two must have qualities of your role?
**A.** I think one must definitely be able to accept ever-changing requirements. But its not just a reactive job. You also have to have a curious mindset. If you have a curious mind, are open to new ideas, and can think out-of-the-box, you can establish your priorities and grow into the role.
##### Q. What would you like to say about the challenges in your current role?
A. Product manager is a very diverse and ever-changing role. One must be highly adaptive because you need to go through steering the product, prioritising the internal roadmap and also accept changes depending on market demands and customer needs. So the key challenge, and also the fun part, is that no day really ever looks the same.
##### Q. Any important risk you have taken so far which you think might inspire others?
**A.** I think my shifting into product management was the biggest risk. The future is unpredictable and one must dare to take such risks. For open source projects, its probably taking the step and actually wanting to contribute to a project. It can be a bit daunting in the beginning, especially to know where to start contributing for very popular active projects. Not all contributions have to be done in code; often people appreciate help with the documentation or testing. There are many ways to get started — the important thing is that you do get started. If you are passionate about something, you will have to go after it. You may have people not reacting the way you expect at first, but thats okay. It will essentially help to learn.
##### Q. What do you consider as top leadership qualities?
**A.** There are a couple of things that I think are important for leadership. And the first one is that its okay to be wrong and acknowledge it. This also encourages people around you to freely share ideas. The other thing would be to take chances and get out of your comfort zone. I have never formally learnt product management. I just was intrigued by it, gave it a try and I thought, lets see how it goes. It has put me in a good space for growth.
##### Q. Anything you are not very happy about when it comes to open source?
**A.** I wish the industry would not follow this ever increasing hype cycle for new stuff. New doesnt automatically mean great. We may talk just about all the new things out there, but the world still runs on Linux and, remember, we still use the HTTP, TCP/IP and all those technologies today. The fundamental technologies that connect us around the globe have been there for a long time. Something doesnt have to be new to be great and often new technologies go just as fast as they came.
##### Q. What are the major risks in going ahead with new technologies?
**A.** A major risk is forgetting or not wanting to ask the “why” we need the new technology. In our industry we get excited very quickly about something that we then want to work with. Sometimes that means that we oversimplify some business requirements and kind of omit the downsides of a new technology, just so that we can use it for a new project. I agree that new things lead to innovations and there is nothing wrong with that. But I have equally seen just as many projects fail that tried to replace the legacy system because a new buzz technology is out there and looks attractive. Ive seen a three or four year-long project fail because no one bothered to look at the why when replacing the previous system; and although it solved the new requirements, people forgot to ask themselves what the old system did well and they just ended up with those old issues again.
##### Q. How does one keep away from the hype around new technologies?
**A.** I would say that, as a developer, dont just blindly follow the latest and greatest. If someone is telling you new stuff, well its great to know. But its no surprise to me that Linux runs the world and HTTP runs the Web, because those technologies are really well-designed. Have an open mind and look at whats new, but think about whether this new technology actually will serve your needs. Its fine if it doesnt.
##### Q. How can a developer find projects to contribute to while keeping away from the hype?
**A.** Theres nothing wrong with working on a hype project, but you have to make sure that you actually have interest. Think small — dont expect to become the main contributor in the next two weeks or in a short span.
Remember most of the open source projects really like non-code contributions just as much, such as testing or reporting bugs or lack of information in the documentation. Dont just go into it to write some code. Initially have some idea about which area you want to contribute to. It should be something that excites you. Go to GitHub and just read through project contributing guidelines. It will tell you what contributions the project needs and how to make them correctly.
Your work may be small, like adding a sentence to the doc or correcting a typo. But it will allow you to get familiar with the process and with the other people involved in these projects. Do not expect to jump into a project and change its core. Most likely, only an approved committee of committers can actually change that part of the code. Build some trust, show that you understand the project and over time your involvement will grow naturally.
##### Q. Any examples of projects you think were overrated because they had just used a new technology?
**A.** I have seen a few working in the database space. When you think about it, relational databases have been around for a very long time and are still going strong. To some extent, we have forgotten why relational databases became so popular. The goal was to organise the data in a way so that five years from now somebody who comes in and has no clue what the data looked like, can make sense out of it. For a while there was a general hype that you no longer need any database, whether relational or non-relational, because Hadoop will do everything. And it didnt. It actually just led to data cleansing issues for many folks. Dont get me wrong — there are companies that successfully run Hadoop clusters and there is nothing bad about the technology itself. But you have to understand what it is and when to use it.
##### Q. Oracle has recently introduced the new MongoDB API for its autonomous database. What was the reason behind it and how did it happen?
**A.** At Oracle, we follow the converged database methodology. This methodology focuses on bringing the algorithms and computation to the data, rather than the other way around. A very good analogy for converged database methodology is the smartphone, where you can do multiple use cases in one device, like taking a picture and sending it to a friend while being on a phone call, for example. In recent years, we have seen a proliferation of vendors pitching their technology to address an often simple use case For example, developers like working with JSON documents and MongoDB allows them to store and retrieve these documents. But it is one thing to store and retrieve these and another to analyse terabytes of them in real-time. We think SQL is a really good language for any kind of analytics and we have the best database for mixed workloads, i.e., allow real-time analytics while transactional workloads are running. Additionally, Oracle Database has been managing JSON documents natively since 2014.
Developers love the MongoDB API as it makes database interaction very natural for them. And we have the best database for analytics and mixed workloads that can also manage JSON documents natively. So we decided to give developers the best of both worlds — the same MongoDB API on top of the worlds leading database.
##### Q. Will you say MongoDB is a new hype?
**A.** The JSON format is a very useful hierarchical format and is nothing new — its been around since 2001. If you want to use JSON, then go ahead, by all means. Oracle has done a lot of work to introduce JSON operations into the SQL standard, and we see more and more databases supporting these standardised operations. You will find that if you want to work with JSON, retrieve JSON documents, query and manipulate data in JSON documents, you definitely dont need to have a document store anymore. MongoDB is a cool technology, but so were XML databases in their days. I think it is definitely not needed for data management aspects.
##### Q. Any hiring plans?
**A.** We are constantly hiring great talent and all our openings can be accessed on the Oracle careers page. We are looking for people in a variety of different roles, including engineering and product management. We are strong in diversity and have people from all around the world and all ages, including graduate students.
##### Q. Your message for our readers.
**A.** Programming is a universal language and its great to be a developer and write programs. Dont be shy, be always ready to try something new and get out of your comfort zone to do things you are passionate about.
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/08/i-wish-the-industry-would-not-follow-this-ever-increasing-hype-cycle-for-new-stuff/
作者:[Abbinaya Kuzhanthaivel][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.opensourceforu.com/author/abbinaya-swath/
[b]: https://github.com/lkxed

View File

@ -0,0 +1,131 @@
[#]: subject: "Happy birthday, Linux! Here are 6 Linux origin stories"
[#]: via: "https://opensource.com/article/22/8/linux-birthday-origin-stories"
[#]: author: "AmyJune Hineline https://opensource.com/users/amyjune"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Happy birthday, Linux! Here are 6 Linux origin stories
======
Our contributors share their first Linux experience on the 31st anniversary of the Linux kernel.
On August 25, 1991, Linux 0.01 was announced. All of us have a story to tell about Linux. I told my story a couple of months ago, but for those who weren't here: My first exposure to Linux was when my grassroots hospice organization moved from paper to digital charting. We didn't have the funding to get something proprietary, but the IT department had Linux set up on our old machine, and we used the GNOME desktop and OpenOffice to start our journey in creating digital assets.
I recently asked some Opensource.com authors this simple question:
*What was your first Linux experience?*
### From VAX to Linux
For my junior year of high school, I was shipped off to a state-run "nerd farm" (that's the North Carolina School of Science and Mathematics.) Our first day on campus, the juniors were each assigned a senior big brother or sister. My senior big sister ditched me because she had tickets to go to a big outdoor music festival with her boyfriend, but when they came back all sunburned, we hung out in my mostly empty dorm room eating takeout on the floor. That was when I first met Matt.
As the year wound on, Matt showed me how to help as a student sysadmin changing backup reels for the VAX mainframe and doing basic tasks on the "big" workstation that doubled as a campus-wide UNIX server. He had a PC in his room, with GNU and XWindows on a Minix kernel, but found this cool new alternative that some Finnish student had started posting the source code for on Usenet. I knew, right then and there, that was my future.
When I got home for the summer, the first thing I did was buy a shiny new 486 with some of my savings from odd jobs, fired up a SLIP connection through our local BBS, and downloaded and decoded all the bits and pieces I'd need to bootstrap and compile Linux 0.96.
Matt and I mostly lost touch after he graduated, but I'll always owe him for introducing me to the operating system kernel I'd use for the rest of my life. I think of him every time I see that tattered old copy of **Running Linux** adorning my office shelf.
The "Matt" in this story is Matthew D. Welsh. After we lost touch, he became the original maintainer of [The Linux Documentation Project][2], and the author of the first edition of the O'Reilly Press book **Running Linux**.
**[—Jeremy Stanley][3]**
### Computer club
Friends at a [computer club][4] inspired me to try Linux.
I used Linux to help students learn more about other operating systems from 2012 to 2015, and I would say that Linux has taught me more about computers in general.
It has probably affected my "volunteer career" because to this day I write articles about being a neurodiverse person in the Linux world. I also attend and join different Linux events and groups, so I've had access to a community I probably wouldn't have known otherwise.
**[—Rikard Grossman-Nielsen][5]**
### Galaxy
My Linux story started a long time ago in a galaxy far, far away. In the early 90s, I spent a year in the US as a high school student. Over there, I had access to e-mail and the Internet. When I came back home to Hungary, I finished high school without any Internet access. There were no public Internet providers in Hungary at that time. Only higher education, and some research labs, had Internet. But in 1994, I started university.
The very first wee of school, I was at the IT department asking for an email address. At that time, there was no Gmail, Hotmail, or anything similar. Not even teachers got an email address automatically at the university. It took some time and persistence, but I eventually received my first university email address. At the same time, I was invited to work in the faculty-student IT group. At first, I got access to a Novell and a FreeBSD server, but soon I was asked to give Linux a try.
It was probably late 1994 when I installed my first Linux at home. It was Slackware, from a huge pile of floppy disks. At first, I only did a minimal installation, but later I also installed X so I could have a GUI. In early 1995, I installed my first-ever Linux server at the university on a spare machine, which was also the first Linux server at the university. At that time, I used the [Fvwm2][6] window manager both at home and at the university.
At first, I studied environmental protection at the university, but my focus quickly became IT and IT security. After a while, I was running all the Linux and Unix servers of the faculty. I also had a part time job elsewhere, running web and e-mail servers. I started a PhD about an environmental topic, but I ended up in IT. I've worked with FreeBSD and Linux ever since, helping [sudo][7] and `syslog-ng` users.
**[—Peter Czanik][8]**
### Education
I got introduced to Linux in the late 1990s by my brother and another friend. My first distro was Red Hat 5, and I didn't like it at the time. I couldn't get a GUI running, and all I could see was the command-line, and I thought, "This is like MS-DOS." I didn't much care for that.
Then a year or more passed, and I picked up a copy of Red Hat 6.1 (I still have that copy) and got it installed on and HP Vectra with a Cyrix chip installed. It had plenty of hard disk space, which was fortunate because the Red Hat Linux software came on a CD. I got the GUI working, and set it up in our technology office at the school district I was employed at. I started experimenting with Linux and used the browser and Star Office (an ancestor of the modern [LibreOffice][9]), which was part of the included software.
A couple years later, our school district needed a content filter, and so I created one on an extra computer we had in our office. I got Squid, Squidguard, and later Dansguardian installed on Linux, and we had the first self-hosted open source content filter in a public school district in Western New York State. Using this distribution, and later Mandrake Linux (an ancestor of [Mageia][10] Linux) on old Pentium II and Pentium III computers, I set up devices that used [SAMBA][11] to provide backup and profile storage for teachers and other staff. Teaming with members of area school districts I set up spam filtering for a fraction of the cost that proprietary solutions were offering at the time.
Franklinville Central School District is situated in an area of high rural poverty. I could see that using Linux and open source software was a way to level the playing field for our students, and as I continued to repurpose and refurbish the "cast-off" computers in our storage closets, I built a prototype Linux terminal server running Fedora Core 3 and 4. The software was part of the K12LTSP project. Older computers could be repurposed and PXE booted from this terminal server. At one point, we had several computer labs running the LTSP software. Our staff email server ran on RHEL 2.1, and later RHEL 3.0.
That journey, which began 25 years ago, continues to this day as I continue to learn and explore Linux. As my brother once said, "Linux is a software Erector set."
**[—Don Watkins][13]**
### Out in the open
My first experience with Linux was brief, and it involved a lot of floppies. As I recall, it was entertaining until my dear wife discovered that her laptop no longer had Windows 98 installed (she was only moderately relieved when I swapped back in the original drive and the "problem" disappeared). That was around 1998, with a Red Hat release that came with a book and a poor unsuspecting ThinkPad.
But really, at work I always had a nice Sun Workstation on my desktop, so why bother? In 2005, we decided to move to France for a while, and I had to get a (usefully) working Toshiba laptop, which meant Linux. After asking around, I decided to go with Ubuntu, so that was my first "real" experience. I think I installed the first distro (codenamed Warty Warthog,) but soon I was on the latest. There were a few tears along the way, caused mostly by Toshiba's choice of hardware, but once it was running that darned laptop was every bit as fast, and way more functional, for me than the old Sun. Eventually, we returned home, and I had a nice new Dell PC desktop. I installed Feisty Fawn, and I've never looked back.
I've tried a few other distros, but familiarity has its advantages, particularly when configuring stuff at the lowest of levels. Really though, if forced to switch, I think I would be happy with any decent Linux distro.
At a few points in time, I have had to do "kernel stuff", like bisecting for bugs and fiddling around with device drivers. I really can't remember the last time something that complicated was necessary, though.
Right now, I have two desktops and one laptop, all running Ubuntu 22.04, and two aging Cubox i4-pro devices running Armbian, a great Debian-based distro created for people using single-board computers and similar devices. I'm also responsible for a very small herd of various virtual private running several distros, from CentOS to various versions of Ubuntu. That's not to mention a lot of Android-based stuff laying around, and we should recognize that it's Linux, too.
What really strikes me, as I read this back over, is how weird it all must sound to someone who has never escaped the clutches of a proprietary operating system.
**[—Chris Hermansen][15]**
### Getting involved
The first computer I bought was an Apple, the last Apple was a IIe. I got fed up with the strong proprietorship of Apple over the software and hardware, and switched to an Amiga, which had a nice GUI (incidentally, I have never owned another Apple product.)
Amiga eventually crumbled, and so I switched to Windows—what an awful transition! About this time, somewhere in the mid- to latter-90s, I was finding out about Linux, and began reading Linux magazines and how to set up Linux machines. I decided to set up a dual-boot machine with Windows, then bought Red Hat Linux, which at the time came on a number of floppy disks. The kernel would have been 2.0-something. I loaded it on my hard drive, and Presto! I was using Linux—the command-line. At that time, Linux didn't read all of your hardware and make automatic adjustments, and it didn't have all the drivers you needed, as it does today.
So next came the process of looking up in BBSes or wherever to find out where to get drivers for the particular hardware I had, such as the graphics chip. Practically, this meant booting into Windows, saving the drivers to floppy disk, booting back into Linux, and loading the drivers to the hard drive. You then had to hand-edit the configuration files so that Linux knew which drivers to use. This all took weeks to accomplish, but I can still recall the delight I felt when I typed `startx`, and up popped X-Windows!!
If you wanted to update your kernel without waiting for and buying the next release, you had to compile it yourself. I remember I had to shut down every running program so the compiler didn't crash.
It's been smooth sailing ever since, with the switch to Fedora (then called "Fedora Core"), and the ease of updating software and the kernel.
Later, I got involved with the [Scribus][16] project, and I started reading and contributing to the mail list. Eventually, I began contributing to the documentation. Somewhere around 2009, Christoph Schaefer and I, communicating over the internet and sharing files, were able to write **Scribus, The Official Manual** in the space of about 9 months.
**[—Greg Pittman][17]**
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/8/linux-birthday-origin-stories
作者:[AmyJune Hineline][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/amyjune
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/rh_003499_01_linux31x_cc.png
[2]: https://tldp.org/
[3]: https://opensource.com/users/fungi
[4]: https://opensource.com/article/22/5/my-journey-c-neurodiverse-perspective
[5]: https://opensource.com/users/rikardgn
[6]: https://opensource.com/article/19/12/fvwm-linux-desktop
[7]: https://opensource.com/article/22/8/debunk-sudo-myths
[8]: https://opensource.com/users/czanik
[9]: https://opensource.com/article/21/9/libreoffice-tips
[10]: http://mageia.org
[11]: https://opensource.com/article/21/12/file-sharing-linux-samba
[12]: https://opensource.com/article/22/5/essential-linux-commands
[13]: https://opensource.com/users/don-watkins
[14]: https://www.redhat.com/sysadmin/linux-kernel-tuning
[15]: https://opensource.com/users/clhermansen
[16]: http://scribus.net
[17]: https://opensource.com/users/greg-p

Some files were not shown because too many files have changed in this diff Show More