translating

This commit is contained in:
geekpi 2022-10-26 08:54:59 +08:00
commit e34a09b0e5
58 changed files with 5904 additions and 1247 deletions

View File

@ -3,36 +3,36 @@
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
[#]: collector: "lujun9972"
[#]: translator: "chai001125"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15164-1.html"
解决 Linux 中的“Bash: Command Not Found”报错
解决 Linux 中的 “Bash: Command Not Found” 报错
======
_**本新手教程展示了在 Debian、Ubuntu 和其他的 Linux 发行版上如何解决 Bash: command not found 这一报错。**_
> 本新手教程展示了在 Debian、Ubuntu 和其他的 Linux 发行版上如何解决 Bash: command not found 这一报错。
当你在 Linux 中使用命令时,你希望得到终端输出的结果。但有时候,你会遇到终端显示“未找到命令command not found”这一报错。
当你在 Linux 中使用命令时,你希望得到终端输出的结果。但有时候,你会遇到终端显示“<ruby>命令未找到<rt>command not found</rt></ruby>”这一报错。
![][1]
对于这个问题,并没有直截了当且单一的解决方案。你必须自己做一些故障排除来解决这个报错。
老实说,要解决它并不难。该报错信息已经给出了一些提示:“bash: command not found”,这说明你的 shell或者 Linux 系统)找不到你输入的那条命令。
老实说,要解决它并不难。该报错信息已经给出了一些提示:“命令未找到”,这说明你的 shell或者 Linux 系统)找不到你输入的那条命令。
shell或 Linux 系统)找不到命令,有三个可能的原因:
* 你将命令的名称拼错了
* 该命令还没有安装
* 该命令是一个可执行脚本,其位置未知
* 该命令是一个可执行脚本,其位置未知
接下来,我们会详细介绍“bash: command not found”这一报错的每一个原因。
接下来,我们会详细介绍“命令未找到”这一报错的每一个原因。
### 解决“bash: command not found”报错
### 解决“命令未找到”报错
![][2]
#### 方法 1:再次检查命令名称有没有写错
#### 方法 1再次检查命令名称有没有写错
每个人都会犯错误,尤其是在打字的时候。你输入的命令可能存在错别字(也就是你写错啦)。
@ -43,7 +43,7 @@ shell或 Linux 系统)找不到命令,有三个可能的原因:
* 是否在拼写中混淆了 1数字 1、I大写的 i和 l小写的 L
* 是否正确使用了大写字母或者小写字母
看看下面的示例,因为我写错了 ls 命令所以会导致“command not found”报错。
看看下面的示例,因为我写错了 `ls` 命令所以会导致“command not found”报错。
![][3]
@ -61,19 +61,31 @@ shell或 Linux 系统)找不到命令,有三个可能的原因:
有时候,某一常用命令可能也不再能使用了,甚至你也不能够安装这个命令了。这种情况下,你需要找到一个替代的命令,来得到结果。
以现已弃用的 ipconfig 命令为例。网络上的旧教程依旧会让你使用 ipconfig 命令,来 [获取本机的 IP 地址][5] 和网络接口信息,但是,在较新的 Linux 版本中,你已经无法使用 ipconfig 了。ipconfig 命令已被 ifconfig 命令所取代。
以现已弃用的 `ifconfig` 命令为例。网络上的旧教程依旧会让你使用 `ifconfig` 命令,来 [获取本机的 IP 地址][5] 和网络接口信息,但是,在较新的 Linux 版本中,你已经无法使用 `ifconfig` 了。`ifconfig` 命令已被 `ip` 命令所取代。
![Some popular commands get discontinued over the time][1]
有时候,你的系统可能甚至找不到一些非常常见的命令。当你在 Docker 容器中运行 Linux 发行版时就通常如此。Docker 容器为了缩小操作系统像的大小,容器中通常不包含那些常见的 Linux 命令。
有时候,你的系统可能甚至找不到一些非常常见的命令。当你在 Docker 容器中运行 Linux 发行版时就通常如此。Docker 容器为了缩小操作系统像的大小,容器中通常不包含那些常见的 Linux 命令。
这就是为什么使用 Docker 的用户会碰到 [ping命令未找到][6]ping command not found 等报错的原因。
这就是为什么使用 Docker 的用户会碰到 [ping 命令未找到][6] 等报错的原因。
![Docker containers often have only a few commands installed][7]
因此,这种情况下的解决方案是安装缺失的命令,或者是找到一个与缺失命令有同等功能的工具。
#### 方法 3检查命令是否是一个路径正确的可执行脚本
### 方法 3确保命令是真实的而不是一个别名
我希望你知道 Linux 中的别名概念。你可以配置你自己的较短的命令来代替一个较长命令的输入。
一些发行版,如 Ubuntu会自动提供 `ll``ls -l` 的别名)、`la``ls -a` 的别名)等命令。
![][13]
想象一下,你习惯于在你的个人系统上输入 `ll``la`,而你登录到另一个 Linux 系统,发现 `ll` 命令并不存在。你甚至不能安装 `ll` 命令,因为它不是一个真正的命令。
所以,如果你找不到一个命令,甚至不能安装,你应该尝试在互联网上搜索该命令是否存在。如果不存在,可能是其他系统上的一个别名。
#### 方法 4检查命令是否是一个路径正确的可执行脚本
这是 Linux 新手在 [运行 shell 脚本][8] 时常犯的错误。
@ -84,39 +96,39 @@ shell或 Linux 系统)找不到命令,有三个可能的原因:
-bash: sample: command not found
```
因为你需要显式指定 shell 解释器或可执行脚本的绝对路径!
因为你需要显式指定 shell 解释器或可执行脚本的路径!
![][9]
如果你在其他目录下,在未提供文件正确路径的情况下,运行 shell 脚本,则会有“找不到文件no such file or directory”的报错。
如果你在其他目录下,在未提供文件正确路径的情况下,运行 shell 脚本,则会有“<ruby>找不到文件<rt>no such file or directory</rt></ruby>”的报错。
![][10]
##### 把可执行文件的路径加到 PATH 变量中
有时候你下载了一个软件的压缩文件tar 格式),解压这个 tar 文件,然后找到一个可执行文件和其他程序文件。你需要运行可执行文件,来运行那个软件。
但是,你需要在可执行文件的同一目录下或指定可执行文件的整个路径,才能运行那个可执行文件。这很令人烦扰。
你可以使用 PATH 变量来解决这个问题。PATH 变量包含了有各种 Linux 命令的二进制(可执行)文件的目录集合。当你运行一个命令时,你的 Linux 系统会检查 PATH 变量中的上述目录,以查找该命令的可执行文件。
你可以使用 `which` 命令,来检查某一命令的二进制文件的位置:
![][11]
如果你想从系统上的任何地方都能运行可执行文件或脚本,你需要将可执行文件的位置添加到 PATH 变量中。
![][12]
然后PATH 变量需要添加到 shell 的 rc 文件中,如此对 PATH 变量的更改就是永久性的。
这里的要点是:你的 Linux 系统必须了解可执行脚本的位置。要么在运行时给出可执行文件的整个路径,要么将其位置添加到 PATH 变量中。
> **把可执行文件的路径加到 PATH 变量中**
>
> 有时候你下载了一个软件的压缩文件tar 格式),解压这个 tar 文件,然后找到一个可执行文件和其他程序文件。你需要运行可执行文件,来运行那个软件。
>
> 但是,你需要在可执行文件的同一目录下或指定可执行文件的整个路径,才能运行那个可执行文件。这很令人烦扰。
>
> 你可以使用 `PATH` 变量来解决这个问题。`PATH` 变量包含了有各种 Linux 命令的二进制(可执行)文件的目录集合。当你运行一个命令时,你的 Linux 系统会检查 `PATH` 变量中的上述目录,以查找该命令的可执行文件。
>
> 你可以使用 `which` 命令,来检查某一命令的二进制文件的位置:
>
> ![][11]
>
> 如果你想从系统上的任何地方都能运行可执行文件或脚本,你需要将可执行文件的位置添加到 `PATH` 变量中。
>
> ![][12]
>
> 然后,`PATH` 变量需要添加到 shell 的 rc 文件中,如此对 `PATH` 变量的更改就是永久性的。
>
> 这里的要点是:你的 Linux 系统必须了解可执行脚本的位置。要么在运行时给出可执行文件的整个路径,要么将其位置添加到 `PATH` 变量中。
### 以上的内容有帮到你吗?
我懂得,当你是 Linux 新手时,很多事情可能会让你不知所措。但是,当你了解问题的根本原因时,你的知识会逐渐增加。
对于“未找到命令”command not found报错来说,没有简单的解决方案。我提供给你了一些提示和要点,我希望这对你的故障排除有帮助。
对于“未找到命令”报错来说,没有简单的解决方案。我提供给你了一些提示和要点,我希望这对你的故障排除有帮助。
如果你仍然有疑问或需要帮助,请在评论区告诉我吧。
@ -127,7 +139,7 @@ via: https://itsfoss.com/bash-command-not-found/
作者:[Abhishek Prakash][a]
选题:[lujun9972][b]
译者:[chai001125](https://github.com/chai001125)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
@ -145,3 +157,4 @@ via: https://itsfoss.com/bash-command-not-found/
[10]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2021/09/script-file-not-found-error-800x259.png?resize=800%2C259&ssl=1
[11]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/09/path-location.png?resize=800%2C241&ssl=1
[12]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/09/adding-executable-to-PATH-variable-linux.png?resize=800%2C313&ssl=1
[13]: https://itsfoss.com/wp-content/uploads/2022/01/alias-in-ubuntu.png

View File

@ -0,0 +1,141 @@
[#]: subject: "The story behind Joplin, the open source note-taking app"
[#]: via: "https://opensource.com/article/22/9/joplin-interview"
[#]: author: "Richard Chambers https://opensource.com/users/20i"
[#]: collector: "lkxed"
[#]: translator: "MareDevi"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15161-1.html"
开源笔记软件 Joplin 背后的故事
======
![](https://img.linux.net.cn/data/attachment/album/202210/21/112935tfapsvpac06h2sth.jpg)
> Laurent Cozic 与我坐下来,讨论了 Joplin 是如何开始的,以及这个开源笔记软件的下一步计划。
在这次采访中,我见到了笔记软件 Joplin 的创建者 Laurent Cozic。[Joplin][2] 是 [20i][3] 奖励的赢家,所以我想了解是什么让它如此成功,以及他如何实现的。
### 你能概述一下什么是 Joplin 吗?
[Joplin][4] 是一个开源的笔记软件。它可以让你捕获你的想法并从任何设备安全地访问它们。
### 显然,还有很多其他的笔记应用,那么除了免费使用之外,它还有什么不同呢?
对我们的许多用户来说,它是开源的这一事实是一个非常重要的方面,因为这意味着没有供应商对数据的封锁,而且数据可以很容易地被导出并以各种方式访问。
我们还关注用户的安全和数据隐私,特别是端到端加密同步功能,以及通过对应用的任何连接保持透明。我们还与安全研究人员合作,以保证软件更加安全。
最后Joplin 可以通过几种不同的方式进行定制 —— 通过插件(可以添加新的功能)和主题来定制应用程序的外观。我们还公开了一个数据 API它允许第三方应用程序访问 Joplin 的数据。
> **[相关阅读5 款 Linux 上的笔记应用][5]**
### 这是一个竞争非常激烈的市场,那么是什么激发了你创建它的想法?
这是有原因的的。我从 2016 年开始研究它,因为我不喜欢现有的商业记事应用程序:笔记、附件或标签不能轻易被其他工具导出或操作。
这主要是由于供应商的封锁,另外还有供应商缺乏动力,因为他们没有动力帮助用户将他们的数据转移到其他应用程序。还有一个问题是,这些公司通常会以纯文本形式保存笔记,而这有可能造成数据隐私和安全方面的问题。
因此,我决定开始创建一个简单且具有同步功能的移动和终端应用程序,使我的笔记能够轻松地在我的设备上访问。之后又创建了桌面应用程序,项目从此开始发展。
![Chrome OS 上 Joplin 的图片][6]
### 编写 Joplin 花了多长时间呢?
自 2016 年以来,我一直在断断续续地开发,但并不是专门去维护。不过在过去的两年里,我更加专注于它。
### 对于准备创建自己的开源应用的人,你有什么建议?
挑选一个你自己使用的项目和你喜欢的技术来工作。
管理一个开源项目有时是很困难的,所以必须要有足够的兴趣去让它变得更有价值。那么我想 “早发布,多发布” 原则在这里也适用,这样你就可以衡量用户的兴趣,以及是否有必要花时间进一步开发这个项目。
### 有多少人参与了 Joplin 的开发?
有 3、4 人参与开发。目前,我们还有 6 名学生在 <ruby>谷歌编程之夏<rt>Google Summer of Code</rt></ruby> 中为这个项目工作。
### 许多人都在创建开源项目,但 Joplin 对你来说是一个巨大的成功。关于如何获得关注,你能否给开发者提供一些建议?
没有简单的公式,说实话,我不认为我可以在另一个项目中复制这种成功!你必须对你所做的事情充满热情,但同时也要严谨、有组织、稳步前进,确保代码质量保持高水平,并拥有大量的测试单元以防止回归。
同时,对于你收到的用户反馈保持开放的态度,并在此基础上改进项目。
一旦你掌握了这些,剩下的可能就全靠运气了 —— 如果你做的项目让很多人都感兴趣,事情可能会顺利进行!
### 一旦你得到关注,但如果你没有传统的营销预算,你如何保持这种势头?
我认为这在于倾听项目周围的社区。举个例子来说,我从未计划过建立一个论坛,但有人在 GitHub 上提出了这个建议,所以我创建了一个论坛,它成为了一个分享想法、讨论功能、提供支持等很好的方式。社区也普遍欢迎新人,这形成了一种良性循环。
除此以外,定期就项目进行沟通也很重要。
我们没有一个公开的路线图,因为大多数功能的 ETA 通常是 “我不知道”,但我会试图就即将到来的功能、新版本等进行沟通。我们也会就重要的事件进行沟通,特别是谷歌编程之夏,或者当我们有机会赢得像 20i FOSS 奖的时候。
最后,我们很快将在伦敦举行一次面对面的聚会,这是与社区和合作者保持联系的另一种方式。
### 用户的反馈是如何影响路线图的?
很明显,贡献者们经常仅仅因为他们需要某个特性而从事某些工作。但除此之外,我们还根据论坛和 GitHub 问题追踪器上的信息,追踪对用户来说似乎最重要的功能。
例如,移动应用程序现在具有很高的优先级,因为我们经常从用户那里听到,它的限制和缺陷是有效使用 Joplin 的一个问题。
![桌面使用Joplin的图片][8]
### 你是如何跟上最新的开发和编码的发展的?
主要是通过阅读 Hacker News
### 你有个人最喜欢的自由/开源软件可以推荐吗?
在不太知名的项目中,[SpeedCrunch][9] 作为一个计算器非常好。它有很多功能,而且很好的是它能保留以前所有计算的历史。
我还使用 [KeepassXC][10] 作为密码管理器。在过去的几年里,它一直在稳步改进。
最后,[Visual Studio Code][11] 作为一个跨平台的文本编辑器非常棒。
### 我原以为 Joplin 是以 Janis 的名字命名的,但维基百科告诉我来自是 Scoot Joplin。你为什么选择这个名字
我起初想把它命名为 “jot-it”但我想这个名字已经被人占了。
由于我那时经常听 Scoot Joplin 的 <ruby>拉格泰姆<rt>ragtime</rt></ruby>音乐(我相当痴迷于此),我决定使用他的名字。
我认为产品名称的含义并不太重要,只要名称本身易于书写、发音、记忆,并与一些积极的东西(或至少没有消极的东西)有关。
我觉得 “Joplin” 符合所有条件。
### 关于 Joplin 的计划,你还有什么可以说的吗?也许是对一个新功能的独家预告?
如前所述,我们非常希望在用户体验设计和新功能方面对移动应用进行改进。
我们也在考虑创建一个 “插件商店”,以便更容易地浏览和安装插件。
感谢 Laurent — 祝 Joplin 的未来好运。
*图片来自: (Opensource.com, CC BY-SA 4.0)*
*[这篇访谈最初发表在 20i 博客上,已获得许可进行转载。][12]*
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/9/joplin-interview
作者:[Richard Chambers][a]
选题:[lkxed][b]
译者:[MareDevi](https://github.com/MareDevi)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/20i
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/wfh_work_home_laptop_work.png
[2]: https://joplinapp.org/
[3]: https://www.20i.com/foss-awards/winners
[4]: https://opensource.com/article/19/1/productivity-tool-joplin
[5]: https://opensource.com/article/22/8/note-taking-apps-linux
[6]: https://opensource.com/sites/default/files/2022-09/joplin-chrome-os.png
[7]: https://opensource.com/article/21/10/google-summer-code
[8]: https://opensource.com/sites/default/files/2022-09/joplin-desktop.png
[9]: https://heldercorreia.bitbucket.io/speedcrunch/
[10]: https://opensource.com/article/18/12/keepassx-security-best-practices
[11]: https://opensource.com/article/20/6/open-source-alternatives-vs-code
[12]: https://www.20i.com/blog/joplin-creator-laurent-cozic/

View File

@ -3,13 +3,16 @@
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15163-1.html"
如何在 Ubuntu Linux 上更新 Google Chrome
如何在 Ubuntu Linux 上更新谷歌 Chrome
======
你设法在你的 Ubuntu 系统上安装了 Google Chrome 浏览器。现在你想知道如何让浏览器保持更新。
![](https://img.linux.net.cn/data/attachment/album/202210/22/085013gihsi4rtmpkmj4yb.png)
> 你设法在你的 Ubuntu 系统上安装了谷歌 Chrome 浏览器。现在你想知道如何让浏览器保持更新。
在 Windows 和 macOS 上,当 Chrome 上有可用更新时,你会在浏览器中收到通知,你可以从浏览器中点击更新选项。
@ -19,17 +22,17 @@ Linux 中的情况有所不同。你不会从浏览器更新 Chrome。你要使
![当有新版本的 Chrome 可用时Ubuntu 会发送通知][1]
你只需单击立即安装按钮,在被要求时输入你的帐户密码并将 Chrome 更新到新版本。
你只需单击<ruby>立即安装<rt>Install Now</rt></ruby>”按钮,在被提示时输入你的帐户密码并将 Chrome 更新到新版本。
让我告诉你为什么会在系统级别看到更新,以及如何在命令行中更新 Google Chrome。
让我告诉你为什么会在系统级别看到更新,以及如何在命令行中更新谷歌 Chrome。
### 方法 1使用系统更新更新谷歌浏览器
你最初是如何安装 Chrome 的?你从 [Chrome 网站][2]获得了 deb 安装程序文件,并使用它来[在 Ubuntu 上安装 Chrome][3]。
你最初是如何安装 Chrome 的?你从 [Chrome 网站][2] 获得了 deb 安装程序文件,并使用它来 [在 Ubuntu 上安装 Chrome][3]。
当你这样做时,谷歌会在你系统的源列表中添加一个仓库条目。这样,你的系统就会信任来自 Google 仓库的包。
当你这样做时,谷歌会在你系统的源列表中添加一个仓库条目。这样,你的系统就会信任来自谷歌仓库的包。
![Google Chrome 存储库添加到 Ubuntu 系统][4]
![谷歌 Chrome 存储库添加到 Ubuntu 系统][4]
对于添加到系统中的所有此类条目,包更新通过 Ubuntu 更新程序集中进行。
@ -37,7 +40,7 @@ Linux 中的情况有所不同。你不会从浏览器更新 Chrome。你要使
![Chrome 更新可通过系统更新与其他应用一起使用][5]
**单击“立即安装”按钮并在要求时输入你的密码**。很快,系统将安装所有可升级的软件包。
**单击“<ruby>立即安装<rt>Install Now</rt></ruby>”按钮并在要求时输入你的密码**。很快,系统将安装所有可升级的软件包。
根据更新偏好,通知可能不是立即的。如果需要,你可以手动运行更新程序工具并查看适用于你的 Ubuntu 系统的更新。
@ -57,15 +60,15 @@ sudo apt --only-upgrade install google-chrome-stable
第一条命令更新包缓存,以便你的系统知道可以升级哪些包。
第二条命令[仅更新单个包][7],即 Google Chrome安装为 google-chrome-stable)。
第二条命令 [仅更新单个包][7],即谷歌 Chrome安装为 `google-chrome-stable`)。
### 总结
如你所见Ubuntu 比 Windows 更精简。你会随其他系统更新一起更新 Chrome。
顺便一提,如果你对它不满意,你可以了解[从 Ubuntu 中删除 Google Chrome][8]。
顺便一提,如果你对它不满意,你可以了解 [从 Ubuntu 中删除 Google Chrome][8]。
Chrome 是一款不错的浏览器。你可以通过[使用 Chrome 中的快捷方式][9]来试验它,因为它使浏览体验更加流畅。
Chrome 是一款不错的浏览器。你可以通过 [使用 Chrome 中的快捷方式][9] 来试验它,因为它使浏览体验更加流畅。
在 Ubuntu 上享受 Chrome
@ -76,7 +79,7 @@ via: https://itsfoss.com/update-google-chrome-ubuntu/
作者:[Abhishek Prakash][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

@ -3,61 +3,60 @@
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15168-1.html"
在 GNOME 文件中以 Root 身份打开文件的最简单方法
在 GNOME 文件应用中以 Root 身份打开文件的最简单方法
======
这是在 GNOME Files 中以 root 身份访问文件或目录的最简单方法。
> 这是在 GNOME 文件应用中以 root 身份访问文件或目录的最简单方法。
![][1]
在 Windows 中,你通常可以在右键单击上下文菜单中以“以管理员身份打开”的方式打开文件或文件夹。
该功能是文件管理器的一部分,即适用于 Windows。它是 Windows 资源管理器的一部分。但是,它是由操作系统及其权限控制模块执行的。
该功能是文件管理器的一部分,对于 Windows它是 Windows 资源管理器的一部分。但是,它是由操作系统及其权限控制模块执行的。
在 Linux 发行版文件管理器中,情况略有不同。不同的桌面有自己的处理方式。
在 Linux 发行版及其文件管理器中,情况略有不同。不同的桌面有自己的处理方式。
由于以管理员(root身份修改文件和文件夹是有风险的并且可能导致系统损坏因此用户无法通过文件管理器的 GUI 轻松使用该功能。
由于以管理员root身份修改文件和文件夹是有风险的并且可能导致系统损坏因此用户无法通过文件管理器的 GUI 轻松使用该功能。
例如KDE Plasma 的默认文件管理器 Dolphin 最近[添加了此功能][2],因此当需要 root 权限时,它会通过 PolicyKit KDE Agent (polkit) 窗口询问你,如下所示。而不是相反的方式。你想在文件管理器中通过 root 打开/执行一些东西。
值得一提的是,你不能使用 “sudo dolphin” 以 root 权限运行文件管理器本身。
例如KDE Plasma 的默认文件管理器Dolphin最近 [添加了此功能][2],因此当需要 root 权限时,它会通过 PolicyKit KDE Agentpolkit窗口询问你如下所示。
![使用 Polkit 实现 KIO 后的 Dolphin root 访问权限][3]
在某种程度上,它挽救了许多不可预见的情况。但是高级用户总是可以通过终端使用 sudo 来完成他们的工作
而不是相反的方式。比如,你想在文件管理器中通过 root 打开/执行一些东西时,你不能使用 `sudo dolphin` 以 root 权限运行文件管理器本身
### GNOME Files (Nautilus) 和对文件、目录的 root 访问权限
在某种程度上,它挽救了许多不可预见的情况。但是高级用户总是可以通过终端使用 `sudo` 来完成他们的工作。
话虽如此,[GNOME Files][4](又名 Nautilus有一种方法可以通过 root 打开文件和文件夹。
### GNOME 文件应用Nautilus和对文件、目录的 root 访问权限
以下是方法
话虽如此,[GNOME 文件应用][4](又名 Nautilus有一种方法可以通过 root 打开文件和文件夹
* 打开 GNOME Files 或 Nautilus。
* 然后单击左侧窗格中的其他位置。
* 按 CTRL+L 调出地址栏。
以下是方法:
* 打开 GNOME 文件应用Nautilus
* 然后单击左侧窗格中的“<ruby>其他位置<rt>Other Locations</rt></ruby>”。
* 按 `CTRL+L` 调出地址栏。
* 在地址栏中,输入下面的内容并回车。
```
admin:///
```
* 它会要求输入管理员密码。当你成功验证自己,你就会以管理员身份打开系统。
```
admin:///
```
* 它会要求输入管理员密码。当你成功验证,你就会以管理员身份打开系统。
* 现在,从这里开始,无论你做什么,它都是管理员或 root。
![以管理员身份输入位置地址][5]
![输入管理员密码][6]
![以 root 身份打开 GNOME Files][7]
![以 root 身份打开 GNOME 文件应用][7]
但是,与往常一样,请小心你作为管理员所做的事情。在你以 root 身份验证自己之后,通常很容易忘记。
这些选项不容易看到总是有原因的,以防止你和许多新的 Linux 用户破坏他们的系统。
干杯
祝好
--------------------------------------------------------------------------------
@ -66,7 +65,7 @@ via: https://www.debugpoint.com/gnome-files-root-access/
作者:[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

@ -3,34 +3,37 @@
[#]: author: "Pranav Krishna https://itsfoss.com/author/pranav/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15160-1.html"
如何在 Arch Linux 中启用 Snap 支持
======
![](https://img.linux.net.cn/data/attachment/album/202210/21/100128gzzqkf3fcg3f6q3n.jpg)
Snap 是由 Ubuntu 的母公司 Canonical 设计的通用包格式。有些人不喜欢 Snap但它有一些优势。
通常,某些应用仅以 Snap 格式提供。这为你提供了在 Arch Linux 中启用 snap 的充分理由。
通常,某些应用仅以 Snap 格式提供。这为你提供了在 Arch Linux 中启用 Snap 的充分理由。
我知道 AUR 拥有大量应用,但 snap 应用通常直接来自开发人员。
我知道 AUR 拥有大量应用,但 Snap 应用通常直接来自开发人员。
如果你希望能够在 Arch Linux 中安装 Snap 应用,你需要先启用 snap 支持。
如果你希望能够在 Arch Linux 中安装 Snap 应用,你需要先启用 Snap 支持。
有两种方法可以做到:
* 使用 AUR 助手启用 Snap 支持(更简单)
* 通过从 AUR 获取包手动启用 Snap 支持
* 通过从 AUR 获取包手动启用 Snap 支持
让我们看看怎么做。
### 方法 1. 使用 AUR 助手启用 Snap
### 方法 1使用 AUR 助手启用 Snap
Snap 在 Arch 用户仓库中以 *snapd* 包的形式提供。你可以使用 AUR 助手轻松安装它。
Snap 支持在 Arch 用户仓库中以 `snapd` 包的形式提供。你可以使用 AUR 助手轻松安装它。
存在[许多 AUR 助手][1],但 *yay* 是我更喜欢的,因为它的语法类似于 [pacman 命令][2]。
有 [许多 AUR 助手][1],但 `yay` 是我更喜欢的,因为它的语法类似于 [pacman 命令][2]。
如果你还没有安装 AUR请使用以下命令安装 Yay需要事先 git
如果你还没有安装 AUR请使用以下命令安装 Yay需要事先安装 `git`
```
git clone https://aur.archlinux.org/yay
@ -42,7 +45,7 @@ makepkg -si
![安装 yay][3]
现在 *yay* 已安装,你可以通过以下方式安装 snapd
现在 `yay` 已安装,你可以通过以下方式安装 `snapd`
```
yay -Sy snapd
@ -50,11 +53,11 @@ yay -Sy snapd
![使用 yay 从 AUR 安装 snapd][4]
每当你[更新 Arch Linux][5] 系统时Yay 都会启用 snapd 的自动更新。
每当你 [更新 Arch Linux][5] 系统时,`yay` 都会启用 `snapd` 的自动更新。
### 验证 snap 是否有效
#### 验证 Snap 支持是否有效
要测试 snap 是否正常工作,请安装并运行 *hello-world* snap 包。
要测试 Snap 支持是否正常工作,请安装并运行 `hello-world` Snap 包。
```
sudo snap install hello-world
@ -64,13 +67,13 @@ hello-world
sudo snap run hello-world
```
![hello-world snap 包执行][6]
![hello-world Snap 包执行][6]
如果它运行良好,那么你可以轻松安装其他 snap 包。
如果它运行良好,那么你可以轻松安装其他 Snap 包。
### 方法 2. 从 AUR 手动构建 snap
### 方法 2、从 AUR 手动构建 snapd
如果你不想使用 AUR 助手,你仍然可以从 AUR 获取 snap。让我展示详细的过程。
如果你不想使用 AUR 助手,你仍然可以从 AUR 获取 `snapd`。让我展示详细的过程。
你需要先安装一些构建工具。
@ -78,9 +81,9 @@ sudo snap run hello-world
sudo pacman -Sy git go go-tools python-docutils
```
![为 snap 安装依赖项][7]
![为 Snap 安装依赖项][7]
完成依赖项安装后,现在可以克隆 AUR 目录,如下所示:
完成依赖项安装后,现在可以克隆 `snapd`AUR 目录,如下所示:
```
git clone https://aur.archlinux.org/snapd
@ -90,17 +93,17 @@ cd snapd
![克隆仓库][8]
然后构建 snapd 包:
然后构建 `snapd` 包:
```
makepkg -si
```
当它要求安装其他依赖包时输入 yes。
当它要求安装其他依赖包时输入 `yes`
![手动构建 snapd][9]
你已安装 snapd 守护程序。但是,需要启用它以在启动时自动启动。
你已安装 `snapd` 守护程序。但是,需要启用它以在启动时自动启动。
```
sudo systemctl enable snapd --now
@ -110,15 +113,15 @@ sudo systemctl enable snapd.apparmor --now #start snap applications
sudo ln -s /var/lib/snapd/snap /snap #optional: classic snap support
```
![启动时启用 snap][10]
![启动时启用 Snap][10]
手动构建包的主要缺点是每次新更新启动时你都必须手动构建。使用 AUR 助手为我们解决了这个问题。
### 总结
我更喜欢 Arch Linux 中的 pacman 和 AUR。很少能看到不在 AUR 中但以其他格式提供的应用。尽管如此,在某些你希望直接从源获取它的情况下,使用 snap 可能是有利的,例如 [在 Arch 上安装 Spotify][11]。
我更喜欢 Arch Linux 中的 pacman 和 AUR。很少能看到不在 AUR 中但以其他格式提供的应用。尽管如此,在某些你希望直接从源获取它的情况下,使用 Snap 可能是有利的,例如 [在 Arch 上安装 Spotify][11]。
希望本教程对有所帮助。如果你有任何问题,请告诉我。
希望本教程对有所帮助。如果你有任何问题,请告诉我。
--------------------------------------------------------------------------------
@ -127,7 +130,7 @@ via: https://itsfoss.com/install-snap-arch-linux/
作者:[Pranav Krishna][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,111 @@
[#]: subject: "Open source DevOps tools in a platform future"
[#]: via: "https://opensource.com/article/22/10/open-source-devops-tools"
[#]: author: "Will Kelly https://opensource.com/users/willkelly"
[#]: collector: "lkxed"
[#]: translator: "lxbwolf"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15170-1.html"
开源 DevOps 工具的平台化未来
======
![](https://img.linux.net.cn/data/attachment/album/202210/24/092748lwwoicus5e4s59gg.jpg)
> 当商业 DevOps 工具市场着眼于平台时,是时候让开源 DevOps 工具重新定义它们的未来了。
DevOps 的开源根基是无法动摇的,即便有预言称全球的 DevOps 市场将在 2026 年之前达到 178 亿美元。不断变化的工作环境、安全和合规性问题,以及风险投资公司等等因素正在将市场推向 DevOps 平台,开发团队可以在云中获得完整的端到端 DevOps 工具链。
### 开源 DevOps 工具现状
我们要搞清楚一件事:开源工具不可能从 DevOps 世界中消失。现在,在开源和供应商提供的 DevOps 工具之间存在着一种平衡,开发人员会在两者间选择适合他们的工具。事实上,很多情况下,一个开发团队起初会为他们的 DevOps 流水线选择一个开源工具,后来又升级到商业版本。
### 三种开源 DevOps 工具实例
下面我们介绍一些开源 DevOps 工具的例子,每种工具都已经有了围绕其建立的商业化生态。
#### Git
源代码管理工具 [Git][1] 作为源代码库,可能是 DevOps 工具链的主要基础之一。
Git 的两个最佳商业案例是 GitLab 和 GitHub。GitLab [接受开发者对其贡献开源项目][2]。GitHub 也在着手努力成为一个 DevOps 平台,推出了人工智能版的结对编程 GitHub Copilot在推出后受到了一些开源团体的褒贬不一的评价。
#### Jenkins
作为一个开源的自动化服务Jenkins 因其易于安装、配置和可扩展性而受到推崇。
CloudBees 提供了 JenkinsXJenkinsX 是一套开源的解决方案,可以为 Kubernetes 上的云原生应用提供自动化持续集成和持续交付CI/CD以及自动化测试工具。他们还为JenkinsX 提供商业支持,包括:
- 访问 CloudBees 的专业技术技能
- 24x7 技术支持
- 访问 CloudBees 的文档和在线知识库
#### Kubernetes
随着越来越多的组织寻求企业级的容器编排解决方案,[Kubernetes][3] 的发展成为必然。尽管有人批评其复杂性。
自然而然的Kubernetes 周边有完整的、蓬勃发展的产业。根据 Allied 市场调研的数据,全球容器和 [Kubernetes 安全][4] 市场在 2020 年的估值为 7.14 亿美元,预计到 2030 年将达到 8.42 亿美元。
### 目前的 DevOps 工具链
各个行业仍有很多<ruby>自建<rt>build-your-own</rt></ruby>BYO的 CI/CD 工具链在发挥作用。支持 DevOps 功能的开源项目仍在蓬勃发展。
BYO 工具链可以集成其他工具,而且非常具有扩展性,这对于持续迭代其 DevOps 实践的组织来说一直是一个优势。在出于业务、IT 和安全原因寻求标准化的企业中,缺乏标准的材料清单可能是个麻烦。
虽然 DevOps 平台的出现并没有被忽视,但许多组织早在大流行之前就将他们的 CI/CD 工具链迁移到了公有云。长期以来工具链本身的安全性一直是一个不断上升的问题而公有云基础设施提供了身份访问管理IAM和其他安全功能来控制访问。
### DevOps 平台是敌是友?
DevOps 平台是一个端到端的解决方案,它将 CI/CD 工具链的所有功能放入云中。DevOps 平台的例子包括 GitLab 和 Harness。GitHub 也在采取行动,使自己成为一个 DevOps 平台。
#### 优势(即便只从企业买家角度考虑)
DevOps 平台对那些已经适应了 SaaS 和云计算行业的基于消费和订阅的定价的企业买家很有吸引力。在这个远程和混合工作的世界里,对可维护性、安全、合规性和开发人员的生产力的担忧肯定是技术领导者的首要考虑。对这些人来说,在 DevOps 平台上实现标准化是很有吸引力的。
#### 劣势
在依赖供应商提供的 DevOps 工具链时,人们会想到对供应商锁定功能的古老担忧。开发团队构建和维护其工具链的可扩展性不会像他们从头开始制作工具链时那样,更不用说引入新的工具来改善他们的工作流程了。
DevOps 平台供应商也有潜在的经济方面的劣势。想一想,一个被高估的 DevOps 工具初创公司如果没有达到其投资者的高额财务目标,可能会发生什么。同样,也可能有一些较小的初创供应商得不到下一轮的资金,而慢慢消失。
虽然 DevOps 平台的出现在很多方面都是有意义的,但它确实违背了促成我们今天使用的 DevOps 工具的开源精神。
### DevOps 工具:一个拐点
随着工作模式的改变,人们对 DevOps 工具链的安全和合规性的关注必然会增加。
#### 正在变化的工作环境
我们的工作方式与企业其他部门一样影响着 DevOps 团队。远程和混合 DevOps 团队需要安全的工具链。整个流水线中不断变化的协作和报告要求,如异步工作和经理要求返回办公室等,也是日益增长的必要条件。
#### 软件供应链安全市场
在高调的攻击和美国联邦政府的回应之后,软件供应链安全市场引起了很多关注。目前还没有组织将软件供应链的攻击归咎于开源,但我们将看到 DevOps/DevSecOps 实践和工具的延伸以对抗这种威胁。不过当一切都结束时DevOps/DevSecOps 的工具和实践将超过一些转向这一趋势的初创公司。
### 结语
对于 DevOps 领域的开源软件OSS项目来说这还远远没有结束但 DevOps 利益相关者有权开始询问未来的工具链。然而OSS DevOps 项目确实需要考虑它们的未来,特别是考虑到日益增长的直接影响流水线的安全和合规性问题。
DevOps 平台供应商与开源工具的未来趋势是合作性竞争,即 DevOps 平台供应商向作为其平台基础的开源工具贡献时间、金钱和资源。一个有趣的例子就是 [OpsVerse][5],它用他们为客户管理的开源工具提供了一个 DevOps 平台。
然后,还有一个未来,随着更多的企业构建的工具链迁移到云端,开源 DevOps 工具项目将继续繁荣和创新。
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/open-source-devops-tools
作者:[Will Kelly][a]
选题:[lkxed][b]
译者:[lxbwolf](https://github.com/lxbwolf)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/willkelly
[b]: https://github.com/lkxed
[1]: https://opensource.com/article/22/4/our-favorite-git-commands
[2]: https://opensource.com/article/19/9/how-contribute-gitlab
[3]: https://opensource.com/resources/what-is-kubernetes
[4]: https://enterprisersproject.com/article/2019/1/kubernetes-security-4-tips-manage-risks?intcmp=7013a000002qLH8AAM
[5]: https://www.opsverse.io/
[6]: https://www.redhat.com/architect/devsecops-culture?intcmp=7013a000002qLH8AAM

View File

@ -0,0 +1,38 @@
[#]: subject: "GitHub Copilot Appears To Be In Violation Of The Open Source Licence"
[#]: via: "https://www.opensourceforu.com/2022/10/github-copilot-appears-to-be-in-violation-of-the-open-source-licence/"
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15167-1.html"
GitHub Copilot 似乎违反了开源许可证的规定
======
![](https://img.linux.net.cn/data/attachment/album/202210/23/100112lms67c7e8mow8sv6.jpg)
> 自 Copilot 首次亮相以来Butterick 就对该计划提出了批评。
微软在 2018 年支付 75 亿美元收购了 GitHub此后将这个代码仓库整合到其开发者工具中同时在很大程度上采取了放手的态度。Matthew Butterick 是一名作家、律师,也是一名程序员,他认为微软基于机器学习的代码助手 GitHub Copilot 存在一些问题,它似乎不正确地对待开源代码许可证。
GitHub Copilot 是 Visual Studio 和其他 IDE 的一个插件,通过在你输入时提供代码完成的 “建议” 来运作。Codex 是该系统的动力源。然而Butterick 等开发者认为 AI 在如何学习方面存在问题或者更具体地说AI 是从哪里训练的。
这里的问题是GitHub 所训练的公开代码仓库是有许可证的,当他们的工作被利用时,需要按照许可证进行。虽然微软对其使用代码的问题一直避而不谈,称其为合理使用,但 Copilot 除了提供建议外,还能生成逐字逐句的代码部分。
根据 Codex由微软授权的开发者 OpenAI的说法“Codex 是在数以千万计的公开代码仓库中训练出来的,包括 GitHub 上的代码。”微软自己也含糊地将训练材料描述为数十亿行的公共代码。
--------------------------------------------------------------------------------
via: https://www.opensourceforu.com/2022/10/github-copilot-appears-to-be-in-violation-of-the-open-source-licence/
作者:[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
[1]: https://www.opensourceforu.com/wp-content/uploads/2022/10/github-logo-2-1-696x348.png

View File

@ -0,0 +1,120 @@
[#]: subject: "Kubuntu 22.10 is Now Available!"
[#]: via: "https://news.itsfoss.com/kubuntu-22-10-release/"
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15173-1.html"
Kubuntu 22.10 的新变化
======
> Kubuntu 22.10 可能不是最令人兴奋的升级。但是,它包括了一些有用的变化。
![Kubuntu 22.10 现已发布][1]
Kubuntu 是 Ubuntu 的一个官方版本,它在一个精致的 KDE 驱动的软件包中提供了很多功能。
Kubuntu 22.10 的发布带来了各种改进和一个 [KDE Plasma][2] 的更新版本。
让我们来看看这个版本的亮点。
### Kubuntu 22.10 有什么新变化?
![Kubuntu 22.10 桌面][3]
Kubuntu 22.10 带来了很多更新,其中一些重要的更新包括:
- KDE Plasma 5.25
- Linux 内核 5.19
- PipeWire
- Firefox 104
- Qt 5.15.6
> 💡 Kubuntu 22.10 将被支持九个月,直到 **2023 年 7 月**。如果你想要稳定而不是功能,你应该更喜欢使用 [LTS 版本][4]。
#### KDE Plasma 5.25
![Kubuntu 22.10 KDE 版本][5]
尽管最近 [KDE Plasma 5.26][6] 已经发布了,但 Kubuntu 22.10 还是搭载了 KDE Plasma 5.25。
然而KDE Plasma 5.25 与 5.24 相比仍然是一个重大的更新,它包含了很多改进,例如,加强了对触摸板/触摸屏的支持,升级了用户界面等等。
你可以阅读我们对 KDE Plasma 5.25 的报道来了解更多。
> **[KDE Plasma 5.25:颜色、主题和其他改进][15]**
另外,你可以期待 KDE Plasma 5.26 作为一个小版本发布,而不是作为 Kubuntu 22.10 发布的一部分。
#### 默认采用 PipeWire
像大多数基于 Ubuntu 22.10 的发行版一样,[PipeWire][7] 是这个版本的 Kubuntu 的默认音频/视频处理器。
它取代了 [PulseAudio][8],众所周知,它与 Ubuntu 22.10 不兼容。
#### Linux 内核 5.19
![Kubuntu 22.10 Linux 内核 5.19][9]
Kubuntu 22.10 采用了最新的 Linux 内核 5.19,这应该会带来对 ARM SoC 和 Arc Alchemist GPU 的支持、Btrfs 的各种改进、对 AMD RDNA3 图形的初步支持等等。
#### 测试用的 Wayland 会话
![Kubuntu 22.10 Wayland 会话切换器][10]
Kubuntu 22.10 具有对 Plasma Wayland 会话的初步支持,但它仅用于测试目的,并不是一个完整的集成。
![Kubuntu 22.10 Wayland 会话信息][11]
#### 其他升级
其他一些更新包括:
- 自定义桌面重点颜色
- 默认浏览器是 Firefox 104 Snap
- Qt 5.15.6
- LibreOffice 7.4
- 改进的应用程序商店
要探索更多关于该版本的信息,请参考 [官方发布说明][12]。
### 下载 Kubuntu 22.10
你可以从 [Ubuntu 的中央镜像库][13] 或其 [官方网站][14] 下载最新的 ISO。
> **[Kubuntu 22.10][14]**
*它的官方网站可能需要一段时间来提供 ISO。*
💬 你对这个版本感到兴奋吗?
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/kubuntu-22-10-release/
作者:[Sourav Rudra][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/sourav/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/kubuntu-22-10-release.jpg
[2]: https://kde.org/plasma-desktop/
[3]: https://news.itsfoss.com/content/images/2022/10/Kubuntu_22.10_Desktop.png
[4]: https://itsfoss.com/long-term-support-lts/
[5]: https://news.itsfoss.com/content/images/2022/10/Kubuntu_22.10_KDE_Version.png
[6]: https://news.itsfoss.com/kde-plasma-5-26-release/
[7]: https://pipewire.org/
[8]: https://www.freedesktop.org/wiki/Software/PulseAudio/
[9]: https://news.itsfoss.com/content/images/2022/10/Kubuntu_22.10_Linux_Kernel.png
[10]: https://news.itsfoss.com/content/images/2022/10/Kubuntu_22.10_Wayland_Session.png
[11]: https://news.itsfoss.com/content/images/2022/10/Kubuntu_22.10_Wayland_Session_2.png
[12]: https://wiki.ubuntu.com/KineticKudu/ReleaseNotes/Kubuntu
[13]: https://cdimage.ubuntu.com/kubuntu/releases/22.10/release/
[14]: https://kubuntu.org/getkubuntu/
[15]: https://news.itsfoss.com/kde-plasma-5-25-release/

View File

@ -0,0 +1,147 @@
[#]: subject: "Ubuntu 22.10 Is Here!"
[#]: via: "https://news.itsfoss.com/ubuntu-22-10-release/"
[#]: author: "Jacob Crume https://news.itsfoss.com/author/jacob/"
[#]: collector: "lkxed"
[#]: translator: "wxy"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-15171-1.html"
Ubuntu 22.10 的新变化
======
> Ubuntu 22.10 是一个令人印象深刻的版本,它拥有新的快速切换功能、应用程序散布,以及更多。
![](https://img.linux.net.cn/data/attachment/album/202210/24/101545l1jae18e1881ee19.jpg)
Ubuntu 22.10 “<ruby>充满活力的捻角羚<rt>Kinetic Kudu</rt></ruby>”来了。它带来了许多重大的改进,特别是 Linux 内核 5.19 和 GNOME 43 的体验。
当然,这是一个经过定制的 GNOME 体验,现有的 Ubuntu 用户会很熟悉。
那么Ubuntu 22.10 都有哪些新变化呢?让我们一起来看看。
### Ubuntu 22.10 的新变化
![][2]
除了 GNOME 43 之外Ubuntu 22.10 还包括:
- 一个改进的 <ruby>设置<rt>Settings</rt></ruby> 应用程序。
- 经典的 Unity 应用程序<ruby>散布模式<rt>Spread Mode</rt></ruby>的复活。
- 一些著名的应用程序被移植到 GTK4 和 Libadwaita。
- 全系统支持 WebP。
- PipeWire 采样管默认的音频服务器。
- Linux 内核 5.19。
> 💡 Ubuntu 22.10 将被支持九个月,直到 **2023 年 7 月**。如果你想要稳定而不是功能,你应该更愿意使用 [LTS 版本][3]。
#### 🎨 视觉改进
当第一次测试一个新版本时,视觉上的变化总是最先被注意到的。在 Ubuntu 22.10 中尤其如此,这要归功于 [GNOME 43][4] 所带来的重大改进。
![Ubuntu 22.10 快速设置][5]
首先我们有全新的快速设置菜单它取代了旧的、相当笨拙的系统菜单。与安卓、iOS 和 Windows 11 中的菜单类似,这个新增的菜单允许你打开和关闭 Wi-Fi 和蓝牙,所有这些都无需进入<ruby>设置<rt>Settings</rt></ruby>应用程序。
当然,在这个版本中我们还得到了全新的壁纸。
![Ubuntu 22.10 壁纸][6]
对于这个变化,我除了喜欢并希望从社区中看到更多这样的设计之外,没有什么别的可说的。
此外,更多的应用程序被移植到了 GTK4包括对 Nautilus 文件管理器的改进。
一些有价值的新增功能包括:
- 拖动并选择文件的能力(橡皮筋选择)。
- 自适应视图与一个紧凑的窗口。
- 新的文件上下文菜单。
你可以通过我们的详细报道来探索 Nautilus 的改进。
#### 👴 应用程序散布回来了!
我不太喜欢的 GNOME 的一个部分是多窗口应用程序的切换,我相信很多其他用户都有这样的不满。
![Ubuntu 22.04][7]
幸运的是Ubuntu 22.10 现在提供了一个很好的解决方案,对于长期用户来说应该是很熟悉的。终于,在 2017 年放弃对 Unity 的支持五年后Ubuntu 的开发者们又把应用程序<ruby>散布<rt>Spread</rt></ruby>带了回来。
![Ubuntu 22.10应用程序散布][8]
这是一个重大的改进,我很惊讶 GNOME 自己没有这样做。
#### 🛠️ 设置的改进
虽然不是大多数人日常使用的应用程序,但<ruby>系统设置<rt>System Settings</rt></ruby>是 GNOME 体验的一个核心部分。考虑到这一点,看到它接受了一次重大的视觉改造,以及移植到了 GTK 4 和 Libadwaita真是太棒了。
![Ubuntu 22.10 桌面设置][9]
因此,它现在变得更好看了,而且是自适应的,这意味着它在任何尺寸下都能很好地工作,甚至在像 PinePhone 这样的 Linux 手机上也能很好地工作!
另一个与设置有关的变化是增加了一个新的 “<ruby>Ubuntu 桌面设置<rt>Ubuntu Desktop Settings</rt></ruby>”菜单项。这提供了一个单一的、统一的地方来定制和改变你所有的 Ubuntu 特定设置。
#### Linux 内核 5.19
Ubuntu 22.10 还带来了一个更新的内核,即 [Linux 内核 5.19][10]。这个版本的改进相当少,尽管它确实带来了对一些下一代硬件的改进支持。
你应该注意到这是 Linux 5.x 系列的最后一个版本,因为 Linux 内核下一个版本跳到了 6.0。
#### 其他变化
![Ubuntu 22.10 webp][11]
总的来说有几个细微的调整。但其中一些基本的调整包括:
- 图像应用程序默认支持 .WebP 图像格式。
- GNOME 文本编辑器是默认编辑器。你可以安装 gedit 并使其成为默认的。
- GNOME 图书应用程序已经不再可用。Ubuntu 推荐 [Foliate][12] 作为替代。
- 不再默认安装 To Do 应用程序并且它有了一个新的名字“Endeavour”。
- GNOME 终端仍然是默认的终端应用。如果需要,可以安装 [GNOME 控制台][13]。
- 更新了 Firefox 104、[Thunderbird 102][14] 和 [Libreoffice 7.4][15] 等应用程序。
- 更多的应用程序已经被移植到 GTK4特别是 [Nautilus][16]。
> 注意,我们的列表集中在对桌面终端用户重要的变化上。如果你想知道更多关于服务器和其他使用情况的变化/更新,请参考 [官方发布说明][17]。
### 下载 Ubuntu 22.10
你可以从 [Ubuntu 的中央镜像库][18] 或其 [官方网站][19] 下载最新的 ISO。
**官方网站/仓库可能需要一段时间来提供 ISO 的下载。
> **[下载Ubuntu 22.10][19]**
💬 有兴趣尝试 Ubuntu 22.10 吗?请在评论中告诉我你的想法。
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/ubuntu-22-10-release/
作者:[Jacob Crume][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/jacob/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/ubuntu-22-10-release.png
[2]: https://news.itsfoss.com/content/images/2022/10/ubuntu-22-10.png
[3]: https://itsfoss.com/long-term-support-lts/
[4]: https://news.itsfoss.com/gnome-43-release/
[5]: https://news.itsfoss.com/content/images/2022/10/ubuntu-22-10-quick-setting.jpg
[6]: https://news.itsfoss.com/content/images/2022/10/22.10-wallpaper.png
[7]: https://news.itsfoss.com/content/images/2022/10/ubuntu-22-04-window-minimize.png
[8]: https://news.itsfoss.com/content/images/2022/10/ubuntu-22-10-app-spread.jpg
[9]: https://news.itsfoss.com/content/images/2022/10/ubuntu-22-10-desktop-setting.png
[10]: https://news.itsfoss.com/linux-kernel-5-19-release/
[11]: https://news.itsfoss.com/content/images/2022/10/ubuntu-22-10-webp.png
[12]: https://itsfoss.com/foliate-ebook-viewer/
[13]: https://itsfoss.com/gnome-console/
[14]: https://news.itsfoss.com/thunderbird-102-release/
[15]: https://news.itsfoss.com/libreoffice-7-4-release/
[16]: https://news.itsfoss.com/gnome-files-43/
[17]: https://discourse.ubuntu.com/t/kinetic-kudu-release-notes/27976
[18]: https://cdimage.ubuntu.com/ubuntu/releases/22.10/release/
[19]: https://ubuntu.com/download/desktop

View File

@ -0,0 +1,80 @@
[#]: subject: "Ubuntu but rolling but also stable That's what Rhino Linux aims to be"
[#]: via: "https://news.itsfoss.com/rhino-linux/"
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Ubuntu but rolling but also stable That's what Rhino Linux aims to be
======
A rolling-release Ubuntu distribution? Wait, what? Rhino Linux sounds fascinating..
![Ubuntu but rolling but also stable! That's what Rhino Linux aims to be][1]
Rhino Linux will be the successor of [Rolling Rhino Remix][2]. A Linux distro built by http.llamaz that offered a rolling-release **unofficial** variant of Ubuntu.
To clarify, the project was never aimed to replace other stable distributions and was purely a passion project made for fun.
Considering people started using it as a daily driver and expected more from it, the developer has decided to turn this into a serious project.
Rhino Linux is its next step for it. So, what can you expect?
### Meet Rhino Linux: The Successor
The main goal is to provide a stable Ubuntu experience while still providing a rolling-release model.
The aim remains the same, but the fundamentals for Rhino Linux will receive a complete overhaul. They are potentially making it an impressive rolling-release Ubuntu distribution.
**Sounds exciting! 🤯**
At its core, Rhino Linux will be using a slightly modified version of [XFCE][3] as its desktop environment; it was chosen due to its well-known stability and speed.
The founder of Rhino Linux mentioned the following:
> Ubuntu as a rolling release is still at the very core of our concept. Rhino Linux is not a depature from Rolling Rhino Remix, but rather re-imagines it as the more stable, mature distribution it should have shipped as originally.
![xfce 4.14][4]
Alongside that, [Pacstall][5] will be used as the default package manager on Rhino Linux with one of their repositories.
> 💡Pacstall is an [AUR][6]-inspired package manager for Ubuntu.
The development of which is headed by the founder of Pacstall, [_Plasma_][7]. He has also joined as one of the new developers (Deputy Project Lead), and [Sourajyoti Basak][8] as another core member.
### Moving Forward: Availability and Release
As of writing, Rhino Linux has not received any specific release date, but you can expect it to release sometime in **2023**.
What happens to Rolling Rhino Remix?
The developer clarified that it would continue to be maintained for three months after the release of Rhino Linux. However, it won't have a new release image after its subsequent release on **11.01.2022**.
You can find out more about Rhino Linux by visiting its [official website][9].
_💬 What do you think of Rhino Linux? Can it be a contender for official Ubuntu flavors worth trying?_
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/rhino-linux/
作者:[Sourav Rudra][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/sourav/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/rhino-linux.png
[2]: https://github.com/rollingrhinoremix
[3]: https://www.xfce.org/
[4]: https://news.itsfoss.com/content/images/2022/10/XFCE_4.14.png
[5]: https://github.com/pacstall/pacstall
[6]: https://itsfoss.com/aur-arch-linux/
[7]: https://github.com/Henryws
[8]: https://github.com/wizard-28
[9]: https://rhinolinux.org/

View File

@ -0,0 +1,100 @@
[#]: subject: "Ardour 7.0 Release Marks the end of 32-bit builds; Adds Clip Launching and Apple Silicon Support"
[#]: via: "https://news.itsfoss.com/ardour-7-0-release/"
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Ardour 7.0 Release Marks the end of 32-bit builds; Adds Clip Launching and Apple Silicon Support
======
Ardour 7.0 is a major upgrade with much-needed improvements.
![Ardour 7.0 Release Marks the end of 32-bit builds; Adds Clip Launching and Apple Silicon Support][1]
[Ardour][2] is a popular open-source digital audio workstation software that audio professionals use.
Ardour 7.0 has been in development for a little more than a year since the release of 6.9 and has come a long way since Ardour 5.0.
Let's take a look at the highlights of this release.
### 🆕 Ardour 7.0: What's New?
![ardour 7.0][3]
This release introduces a variety of changes and feature additions, some of the highlights are:
- **Discontinuation of 32-bit Builds.**
- **Clip Launching feature (similar to what other DAWs provide).**
- **Support for Apple Silicon.**
- **Integration of Loop Library.**
- **Audio sample library support by Freesound.**
#### Clip Launching
![ardour 7.0 clip launching][4]
Similar to many mainstream DAWs like Ableton Live, Ardour now has support for clip launching.
Users can now play/stop audio clips and adjust the timing to fit the tempo map of a session. Pretty useful for live performances.
#### Loop Library
![ardour 7.0 loop library][5]
In addition to Clip Launching, users can also take advantage of a vast collection of loops sourced from a few hand-picked creators of [looperman][6].
Users can choose from any of the royalty-free loops, with more to be added in the near future.
#### End of 32-bit Builds
There won't be any further 32-bit builds of Ardour, only a few will remain available on the nightly build channels for now.
You may want to look around at some of the DAWs available for Linux to see what else might offer a 32-bit build.
#### Sound Samples Available by Freesound
![ardour 7.0 freesound integration][7]
Another feature that complements the Loop Library is the integration with [Freesound][8].
With this, users can make use of over 600,000 samples of audio. To do this, users must have a Freesound account linked to their Ardour installation.
#### 🛠️ Other Changes
Other notable changes include:
- **New Themes.**
- **Ripple Editing Modes.**
- **Mixer Scenes.**
- **Improvements to MIDI Editing.**
- **Support for I/O Plugins.**
You can go through the official [release notes][9] for more details of the release.
_💬 Are you going to try out Ardour 7.0? Satisfied with the DAW you currently use?_
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/ardour-7-0-release/
作者:[Sourav Rudra][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/sourav/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/ardour-7-0-release.jpg
[2]: https://ardour.org/
[3]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0.png
[4]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0_Clip_Launching.png
[5]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0_Loop_Library.png
[6]: https://www.looperman.com/
[7]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0_Freesound_Integration.png
[8]: https://freesound.org/
[9]: https://ardour.org/whatsnew.html

View File

@ -0,0 +1,123 @@
[#]: subject: "Ubuntu MATE 22.10 Release Has Some Interesting Upgrades!"
[#]: via: "https://news.itsfoss.com/ubuntu-mate-22-10-release/"
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Ubuntu MATE 22.10 Release Has Some Interesting Upgrades!
======
Ubuntu MATE 22.10 has arrived with subtle and useful changes. Take a lookie!
![Ubuntu MATE 22.10 Release Has Some Interesting Upgrades!][1]
Ubuntu MATE is one of the [official Ubuntu flavours][2] that add interesting improvements with every upgrade.
It is aimed at users who cherish the look and feel of a traditional desktop but also desire the functionality of a modern operating system.
Ubuntu MATE 22.10 release adds a number of betterments and features, let us take a look at those.
### Ubuntu MATE 22.10: What's New?
![ubuntu mate 22.10 desktop][3]
Based on the non-LTS release of [Ubuntu 22.10][4] '_Kinetic Kudu_', Ubuntu MATE 22.10 brings in multiple updates, some key highlights include:
- **Improvements to MATE Desktop.**
- **New AI Wallpapers.**
- **PipeWire is the default audio server.**
- **New MATE User Manager.**
- **Firefox 105 update.**
- **LibreOffice 7.4.**
> 💡Note that Ubuntu MATE upgrades usually include more feature additions. This time, **Martin Wimpress** has been working to bring a similar experience to the Debian MATE edition. You can read more details in our previous coverage.
#### MATE Desktop Upgrades
![ubuntu mate 22.10 desktop view][5]
MATE desktop receives various bug fixes and updates to the **Ayatana indicators** and the **MATE Panel**.
Now, you can align the applets to the **center** alongside the usual left and right alignment options.
This feature officially arrives with **MATE Desktop 1.28 **release, but the Ubuntu MATE team has made it available with this release on top of **MATE Desktop 1.27**.
#### MATE User Manager
![ubuntu mate 22.10 user manager][6]
The MATE user manager is a new addition to the distro, allowing you to add/modify/remove user accounts.
With this, you can choose which users can be administrators, set up auto-login, set profile pictures, and manage group memberships. Pretty handy and a much-needed feature for computers with multiple users.
#### New AI Wallpapers
![ubuntu mate 22.10 ai wallpapers][7]
Another big highlight of this release is the addition of new AI-generated wallpapers.
These look beautiful! 😍
Seeing that AI-generated wallpapers are all the rage right now, the Ubuntu MATE team has included a new bunch of them with Ubuntu MATE 22.10.
It was created by [Simon Butcher][8] using diffusion models to illustrate 'kudu' (Antelope).
#### Linux Kernel 5.19
Ubuntu MATE 22.10 leverages the improvements brought forward by Linux Kernel 5.19, including enhanced support for various ARM SoCs, Arc Alchemist GPUs, and more.
You can read our coverage of the same to learn more.
#### 🛠️ Other Changes and Improvements
As with every other new release, Ubuntu MATE 22.10 replaces [PulseAudio][9] with [PipeWire][10] for better audio handling and the inclusion of additional Bluetooth codecs such as AAC, LDAC, aptX, and aptX HD.
Other notable changes include:
- **Updated apps include Firefox 105, LibreOffice 7.4, Celluloid 0.20 and Evolution 3.46.**
- **Ubuntu MATE HUD supports MATE, XFCE, and Budgie with more configuration ability.**
You can check out Ubuntu MATE 22.10 [official release notes][11] if you are curious.
### Download Ubuntu MATE 22.10
You can download the latest ISO from [Ubuntu's central image repository][12] or its [official website][13].
It might take a while for its official website/repo to make the ISO available.
> 💡Ubuntu MATE 22.10 will be supported for nine months until **July 2023**. If you want stability over features, you should prefer using an [LTS version][14].
[Download Ubuntu MATE 22.10][13]
💬 _Interested in trying Ubuntu MATE 22.10? Let me know your thoughts in the comments._
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/ubuntu-mate-22-10-release/
作者:[Sourav Rudra][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/sourav/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/ubuntu-mate-22-10-release.jpg
[2]: https://itsfoss.com/which-ubuntu-install/
[3]: https://news.itsfoss.com/content/images/2022/10/ubuntu-mate-22-10.png
[4]: https://news.itsfoss.com/ubuntu-22-10-features/
[5]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_MATE_22.10_Desktop.png
[6]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_MATE_22.10_User_Manager.png
[7]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_MATE_22.10_AI_Wallpapers.png
[8]: https://twitter.com/simonjbutcher
[9]: https://www.freedesktop.org/wiki/Software/PulseAudio/
[10]: https://pipewire.org/
[11]: https://ubuntu-mate.org/blog/ubuntu-mate-kinetic-kudu-release-notes/
[12]: https://cdimage.ubuntu.com/ubuntu-mate/releases/22.10/release/
[13]: https://ubuntu-mate.org/download/
[14]: https://itsfoss.com/long-term-support-lts/

View File

@ -0,0 +1,118 @@
[#]: subject: "Ubuntu Budgie 22.10 Release Improves Control Center and Removes Some GNOME Apps"
[#]: via: "https://news.itsfoss.com/ubuntu-budgie-22-10-release/"
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Ubuntu Budgie 22.10 Release Improves Control Center and Removes Some GNOME Apps
======
Ubuntu Budgie 22.10 is an interesting release which removes several GNOME apps, and adds other improvements.
![Ubuntu Budgie 22.10 Release Improves Control Center and Removes Some GNOME Apps][1]
[Ubuntu Budgie][2] is an official flavor of Ubuntu, which is popular for its traditional desktop interface and minimal software bloat.
The release of Ubuntu Budgie 22.10 brings in a few crucial tweaks and additions.
### 🆕 Ubuntu Budgie 22.10: What's New?
![ubuntu budgie 22.10][3]
Based on Ubuntu 22.10 'Kinetic Kudu', Ubuntu Budgie 22.10 features Budgie Desktop 10.6.4 and a host of other improvements.
Some of the notable highlights include:
- **Enhanced Budgie Control Center**
- **Updated Budgie Welcome app**
- **Replacing various GNOME-based apps**
- **Updated Translations**
#### Budgie Desktop and Control Center
![ubuntu budgie 22.10 desktop settings][4]
Budgie Desktop has been updated to V10.6.4, which adds a new global option to control the spacing between applets and features various improvements to the workspace and clock applets.
![ubuntu budgie 22.10 display color profiles][5]
The Budgie Control Center has also received a bunch of tweaks, such as reworked display color profile support, revamped screen-sharing with support for [RDP][6] and [VNC][7], an option for fractional scaling of display, and more.
#### Welcome App Updates
![ubuntu budgie 22.10 welcome app][8]
Ubuntu Budgie 22.10 features the updated [Budgie Welcome app][9] with improved translations and a few changes.
#### Change in Default Apps
The developers of Ubuntu Budgie have started replacing and removing GNOME-based apps in favor of MATE-based apps and other alternatives.
They decided to do so, because of the inconsistent way GNOME-based apps look in Budgie alongside other apps with their rounded-off edges.
The inconsistencies have been caused due to GNOME moving on to the Libadwaita library for its styling and theming needs.
The Libadwaita library was a controversial addition to GNOME, that not many users liked, you can go through our coverage to learn more.
Here are some of the apps that have been removed or replaced:
- GNOME-Calculator replaced by MATE Calculator.
- GNOME-Calendar removed.
- GNOME System Monitor replaced by MATE System Monitor.
- GNOME Screenshot removed.
- GNOME Font Viewer replaced by [Font-Manager][10].
#### 🛠️ Other Changes
Some of the other changes include:
- **Rework of In-Built Theme**
- **Removal of PulseAudio in favor of PipeWire**
- **Native Screenshot Capability**
- **Support for WebP Images**
- **Ability to View Monitor's Refresh Rate**
You can go through the [release notes][11] to know more.
### 📥 Download Ubuntu Budgie 22.10
You can download the latest ISO from [Ubuntu's central image repository][12] or its [official website][13].
It might take a while for its official website to make the ISO available.
[Download Ubuntu Budgie 22.10][13]
> 💡Ubuntu Budgie 22.10 will be supported for nine months until **July 2023**. If you want stability over features, you should prefer using an [LTS version][14].
💬 What do you think of this non-LTS release? Willing to give it a try?
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/ubuntu-budgie-22-10-release/
作者:[Sourav Rudra][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/sourav/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/ubuntu-budgie-22-10-release.png
[2]: https://ubuntubudgie.org/
[3]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_Budgie_22.10.png
[4]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_Budgie_22.10_Desktop_Settings.png
[5]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_Budgie_22.10_Color_Profiles.png
[6]: https://en.wikipedia.org/wiki/Remote_Desktop_Protocol
[7]: https://en.wikipedia.org/wiki/Virtual_Network_Computing
[8]: https://news.itsfoss.com/content/images/2022/10/Ubuntu_Budgie_22.10_Welcome.png
[9]: https://ubuntubudgie.org/2022/02/quick-overview-of-budgie-welcome-application/
[10]: https://itsfoss.com/font-manager/
[11]: https://ubuntubudgie.org/2022/09/ubuntu-budgie-22-10-release-notes/
[12]: https://cdimage.ubuntu.com/ubuntu-budgie/releases/22.10/
[13]: https://ubuntubudgie.org/downloads/
[14]: https://itsfoss.com/long-term-support-lts/

View File

@ -0,0 +1,135 @@
[#]: subject: "Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements"
[#]: via: "https://news.itsfoss.com/xubuntu-22-10-release/"
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements
======
Xubuntu 22.10 provides a refined XFCE experience. Learn more about it here.
![Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements][1]
Xubuntu is an XFCE-powered official Ubuntu flavour.
It is also one of the best lightweight Linux distributions available.
With the latest Xubuntu 22.10 "**Kinetic Kudu**" release, you can expect desktop environment improvements, feature additions, and several refinements across the board.
### Xubuntu 22.10: What's New?
![Xubuntu 22.10 home][2]
Xubuntu 22.10 brings in some exciting upgrades. Some of the highlights include:
- **Xfce 4.16 (or Xfce 4.17 dev)**
- **Catfish appearance update.**
- **New icon refresh and deprecated elementary-xfce-darker-theme.**
- **Mousepad search history.**
- **Thundar file manager improvements.**
- **Xfce task manager.**
> 💡Xubuntu 22.10 will be supported for nine months until **July 2023**. If you want stability over features, you should prefer using an [LTS version][3].
#### XFCE 4.17 Development Version or XFCE 4.16?
The release notes for Xubuntu 22.10 say it features the Xfce 4.17 development version.
However, when I installed the beta version for Xubuntu 22.10 (and updated it to the latest), it said it features Xfce 4.16.
![][4]
Not sure if they pulled out Xfce 4.17 development version or if Xfce 4.16 is here for now.
#### Catfish Appearance
![xubuntu catfish][5]
Catfish is a file search utility on Xubuntu. With the new upgrade, it has a refreshed appearance with tweaks under the hood.
You also get an "**Open With**" context menu when interacting with the files you searched for.
![][6]
A pretty subtle but valuable feature addition for catfish.
#### GNOME 43 Software
Among notable app updates, GNOME's latest Software Center is a nice thing to have. This is how it looks with Xubuntu 22.10:
![][7]
Of course, it may not give you a consistent look with other applications on Xfce, but I think you can give it an excuse.
#### Icon Updates
With elementary-xfce 0.17 icon update, there are many new icons and cleaner options that provide a consistent Xubuntu desktop experience.
![][8]
Additionally, the **elementary-xfce-darkest theme** icon pack has been deprecated.
![][9]
#### Task Manager Right-Click Option
![][10]
You can now copy the full process path to the clipboard. This could be useful to troubleshoot or stop things from the command line when required.
### Other Enhancements
![][11]
There are several other notable changes that include:
- **Linux Kernel 5.19**
- **Mozilla Firefox 105.**
- **Alt-Tab view improved with more prominent icons.**
- **Mosaic puzzle added to SGT Puzzles collection.**
- **Thunar archive plugin now supports compressing zip files.**
- **Mousepad text editor now includes a search history and a few more tweaks.**
To learn more about the changes, check out the [official release notes][12].
### Download Xubuntu 22.10
You can download the latest ISO from [Ubuntu's central image repository][13] or its [official website][14].
It might take a while for its official website to make the ISO available.
[Download Xubuntu 22.10][14]
💬 _What do you think about Xubuntu 22.10? Let me know your thoughts in the comments._
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/xubuntu-22-10-release/
作者:[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/10/xubuntu-22-10-release.jpg
[2]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10.png
[3]: https://itsfoss.com/long-term-support-lts/
[4]: https://news.itsfoss.com/content/images/2022/10/xfce-4-16.jpg
[5]: https://news.itsfoss.com/content/images/2022/10/catfish-xubuntu-22-10.png
[6]: https://news.itsfoss.com/content/images/2022/10/catfish-openwith-1.jpg
[7]: https://news.itsfoss.com/content/images/2022/10/xubuntu-gnome-43-software.jpg
[8]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10-icons.jpg
[9]: https://news.itsfoss.com/content/images/2022/10/xfce-dark-theme.png
[10]: https://news.itsfoss.com/content/images/2022/10/task-manager-copy-command-line.jpg
[11]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10-puzzle.png
[12]: https://wiki.xubuntu.org/releases/22.10/release-notes
[13]: https://cdimage.ubuntu.com/xubuntu/releases/22.10/release/
[14]: https://xubuntu.org/download/

View File

@ -1,142 +0,0 @@
[#]: subject: "Using habits to practice open organization principles"
[#]: via: "https://opensource.com/open-organization/22/6/using-habits-practice-open-organization-principles"
[#]: author: "Ron McFarland https://opensource.com/users/ron-mcfarland"
[#]: collector: "lkxed"
[#]: translator: "Donkey-Hao"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Using habits to practice open organization principles
======
Follow these steps to implement habits that support open culture and get rid of those that don't.
![Selfcare, drinking tea on the porch][1]
Image by: opensource.com
Habits are a long-term interest of mine. Several years ago, I gave a presentation on habits, both good and bad, and how to expand on good habits and change bad ones. Just recently, I read the habits-focused book Smart Thinking by Art Markman. You might ask what this has to do with [open organization principles.][2] There is a connection, and I'll explain it in this two-part article on managing habits.
In this first article, I talk about habits, how they work, and—most important—how you can start to change them. In the second article, I review Markman's thoughts as presented in his book.
### The intersection of principles and habits
Suppose you learned about open organization principles and although you found them interesting and valuable, you just weren't in the habit of using them. Here's how that might look in practice.
Community: If you're faced with a significant challenge but think you can't address it alone, you're likely in the habit of just giving up. Wouldn't it be better to have the habit of building a community of like-minded people that collectively can solve the problem?
Collaboration: Suppose you don't think you're a good collaborator. You like to do things alone. You know that there are cases when collaboration is required, but you don't have a habit of engaging in it. To counteract that, you must build a habit of collaborating more.
Transparency: Say you like to keep most of what you do and know a secret. However, you know that if you don't share information, you're not likely to get good information from others. Therefore, you must create the habit of being more transparent.
Inclusivity: Imagine you are uncomfortable working with people you don't know and who are different from you, whether in personality, culture, or language. You know that if you want to be successful, you must work with a wide variety of people. How do you create a habit of being more inclusive?
Adaptability: Suppose you tend to resist change long after what you're doing is no longer achieving what you had hoped it would. You know you must adapt and redirect your efforts, but how can you create a habit of being adaptive?
### What is a habit?
Before I give examples regarding the above principles, I'll explain some of the relevant characteristics of a habit.
* A habit is a behavior performed repeatedly—so much so that it's now performed without thinking.
* A habit is automatic and feels right at the time. The person is so used to it, that it feels good when doing it, and to do something else would require effort and make them feel uncomfortable. They might have second thoughts afterward though.
* Some habits are good and extremely helpful by saving you a lot of energy. The brain is 2% of the body's weight but consumes 20% of your daily energy. Because thinking and concentration require a lot of energy, your mind is built to save it through developing unconscious habits.
* Some habits are bad for you, so you desire to change them.
* All habits offer some reward, even if it is only temporary.
* Habits are formed around what you are familiar with and what you know, even habits you dont necessarily like.
### The three steps of a habit
1. Cue (trigger): First, a cue or trigger tells the brain to go into automatic mode, using previously learned habitual behavior. Cues can be things like seeing a candy bar or a television commercial, being in a certain place at a certain time of day, or just seeing a particular person. Time pressure can trigger a routine. An overwhelming atmosphere can trigger a routine. Simply put, something reminds you to behave a certain way.
2. Routine: The routine follows the trigger. A routine is a set of physical, mental, and/or emotional behaviors that can be incredibly complex or extremely simple. Some habits, such as those related to emotions, are measured in milliseconds.
3. Reward: The final step is the reward, which helps your brain figure out whether a particular activity is worth remembering for the future. Rewards can range from food or drugs that cause physical sensations to joy, pride, praise, or personal self-esteem.
### Bad habits in a business environment
Habits aren't just for individuals. All organizations have good and bad institutional habits. However, some organizations deliberately design their habits, while others just let them evolve without forethought, possibly through rivalries or fear. These are some organizational habit examples:
* Always being late with reports
* Working alone or working in groups when the opposite is appropriate
* Being triggered by excess pressure from the boss
* Not caring about declining sales
* Not cooperating among a sales team because of excess competition
* Allowing one talkative person to dominate a meeting
### A step-by-step plan to change a habit
Habits don't have to last forever. You can change your own behavior. First, remember that many habits can not be changed concurrently. Instead, find a keystone habit and work on it first. This produces small, quick rewards. Remember that one keystone habit can create a chain reaction.
Here is a four-step framework you can apply to changing any habit, including habits related to open organization principles.
##### Step one: identify the routine
Identify the habit loop and the routine in it (for example, when an important challenge comes up that you can't address alone). The routine (the behaviors you do) is the easiest to identify, so start there. For example: "In my organization, no one discusses problems with anyone. They just give up before starting." Determine the routine that you want to modify, change, or just study. For example: "Every time an important challenge comes up, I should discuss it with people and try to develop a community of like-minded people who have the skills to address it."
##### Step two: experiment with the rewards
Rewards are powerful because they satisfy cravings. But, we're often not conscious of the cravings that drive our behavior. They are only evident afterward. For example, there may be times in meetings when you want nothing more than to get out of the room and avoid a subject of conversation, even though down deep you know you should figure out how to address the problem.
To learn what a craving is, you must experiment. That might take a few days, weeks, or longer. You must feel the triggering pressure when it occurs to identify it fully. For example, ask yourself how you feel when you try to escape responsibility.
Consider yourself a scientist, just doing experiments and gathering data. The steps in your investigation are:
1. After the first routine, start adjusting the routines that follow to see whether there's a reward change. For example, if you give up every time you see a challenge you can't address by yourself, the reward is the relief of not taking responsibility. A better response might be to discuss the issue with at least one other person who is equally concerned about the issue. The point is to test different hypotheses to determine which craving drives your routine. Are you craving the avoidance of responsibility?
2. After four or five different routines and rewards, write down the first three or four things that come to mind right after each reward is received. Instead of just giving up in the face of a challenge, for instance, you discuss the issue with one person. Then, you decide what can be done.
3. After writing about your feeling or craving, set a timer for 15 minutes. When it rings, ask yourself whether you still have the craving. Before giving in to a craving, rest and think about the issue one or two more times. This forces you to be aware of the moment and helps you later recall what you were thinking about at that moment.
4. Try to remember what you were thinking and feeling at that precise instant, and then 15 minutes after the routine. If the craving is gone, you have identified the reward.
##### Step three: isolate the cue or trigger
The cue is often hard to identify because there's usually too much information bombarding you as your behaviors unfold. To identify a cue amid other distractions, you can observe four factors the moment the urge hits you:
Location: Where did it occur? ("My biggest challenges come out in meetings.")
Time: When did it occur? ("Meetings in the afternoon, when I'm tired, are the worst time, because I'm not interested in putting forth any effort.")
Feelings: What was your emotional state? ("I feel overwhelmed and depressed when I hear the problem.")
People: Who or what type of people were around you at the time, or were you alone? ("In the meetings, most other people don't seem interested in the problem either. Others dominate the discussion.")
##### Step four: have a plan
Once you have confirmed the reward driving your behavior, the cues that trigger it, and the behavior itself, you can begin to shift your actions. Follow these three easy steps:
1. First, plan for the cue. ("In meetings, I'm going to look for and focus my attention on important problems that come up.")
2. Second, choose a behavior that delivers the same reward but without the penalties you suffer now. ("I'm going to explore a plan to address that problem and consider what resources and skills I need to succeed. I'm going to feel great when I create a community that's able to address the problem successfully.")
3. Third, make the behavior a deliberate choice each and every time, until you no longer need to think about it. ("I'm going to consciously pay attention to major issues until I can do it without thinking. I might look at agendas of future meetings, so I know what to expect in advance. Before and during every meeting, I will ask why should I be here, to make sure I'm focused on what is important."
##### Plan to avoid forgetting something that must be done
To successfully start doing something you often forget, follow this process:
1. Plan what you want to do.
2. Determine when you want to complete it.
3. Break the project into small tasks as needed.
4. With a timer or daily planner, set up cues to start each task.
5. Complete each task on schedule.
6. Reward yourself for staying on schedule.
### Habit change
Change takes a long time. Sometimes a support group is required to help change a habit. Sometimes, a lot of practice and role play of a new and better routine in a low-stress environment is required. To find an effective reward, you need repeated experimentation.
Sometimes habits are only symptoms of a more significant, deeper problem. In these cases, professional help may be required. But if you have the desire to change and accept that there will be minor failures along the way, you can gain power over any habit.
In this article, I've used examples of community development using the cue-routine-reward process. It can equally be applied to the other open organization principles. I hope this article got you thinking about how to manage habits through knowing how habits work, taking steps to change habits, and making plans to avoid forgetting things you want done. Whether it's an open organization principle or anything else, you can now diagnose the cue, the routine, and the reward. That will lead you to a plan to change a habit when the cue presents itself.
In my next article, I'll look at habits through the lens of Art Markman's thoughts on Smart Thinking.
--------------------------------------------------------------------------------
via: https://opensource.com/open-organization/22/6/using-habits-practice-open-organization-principles
作者:[Ron McFarland][a]
选题:[lkxed][b]
译者:[Donkey-Hao](https://github.com/Donkey-Hao)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/ron-mcfarland
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/coffee_tea_selfcare_wfh_porch_520.png
[2]: https://theopenorganization.org/definition/open-organization-definition/

View File

@ -0,0 +1,74 @@
[#]: subject: "Whats new in GNOME 43?"
[#]: via: "https://opensource.com/article/22/10/whats-new-gnome-43-linux"
[#]: author: "Jim Hall https://opensource.com/users/jim-hall"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Whats new in GNOME 43?
======
I love the [GNOME][1] desktop, and I use it as my daily [Linux desktop environment][2]. I find with GNOME, I can focus on the stuff I need to get done, but I still have flexibility to make the desktop look and act the way I want.
The GNOME Project recently released GNOME 43, the latest version of the GNOME desktop. I met with GNOME developer Emmanuele Bassi to ask a few questions about this latest release:
**Jim Hall (Jim): GNOME has lots of great desktop features. What are some of the new features in GNOME 43?**
**Emmanuele Bassi (Emmanuele):** GNOME 43 has a complete redesign of the system status menu in the Shell. The new design is meant to give quick and easy access to various settings: network connections and VPNs; audio input and output sources and volumes; toggling between light and dark styles. It also has a shortcut for taking a screenshot or starting a screen recording.
GNOME core applications have also been ported to the new major version of the GNOME toolkit, GTK4. GTK4 is more efficient when it comes to its rendering pipeline, which leads to smoother transitions and animations. Additionally, GNOME applications use libadwaita, which provides new UI elements and adaptive layouts that can seamlessly scale between desktop and mobile form factors.
The GNOME file manager, Nautilus, is one of the applications that has been ported over to GTK4 and libadwaita, and it has benefitted from the new features in the core platform; its now faster, and it adapts its UI when the window is resized.
The system settings can now show device security information, including manufacturing errors and hardware misconfiguration, as well as possible security issues like device tampering. Lots of work is planned for future releases, as device security is an area of growing concern.
**Jim: What do you love most about GNOME 43?**
**Emmanuele:** The most important feature of GNOME, one that I constantly take advantage of and that I always miss when I have to deal with other operating systems is how much the OS does not get in the way of what Im doing. Everything is designed to let me concentrate on my job, without interruptions. I dont have bells and whistles constantly on my screen, competing for attention. Everything is neatly tucked away, ready to be used only when I need to.
**Jim: Many folks are familiar with GNOME today, but may not be familiar with its history. How did GNOME get started?**
**Emmanuele:** GNOME started in 1997, 25 years ago, as a project for using existing free and open source components to create a desktop environment for everyone that would be respectful of users and developers freedom. At the time there were only commercial desktops for Unix, or desktops that were based on non-free components. Being able to take the entire desktop, learn from it, and redistribute it has always been a powerful motivator for contributors—even commercial ones.
Over the past 25 years, GNOME contributors have worked not just on making the desktop, but creating a platform capable of developing and distributing applications.
**Jim: Open source projects keep going because of a strong community. What keeps the GNOME community strong?**
**Emmanuele:** I dont pretend to speak for everyone in the project, but for myself I think the main component is the respect of every voice within the community of contributors, which comes from the shared vision of creating an entirely free and open platform. We all know where we want to go, and we are all working towards the same goal. Sometimes, we may end up pulling in different directions, which is why donating to entities like the GNOME Foundation, which sponsor gatherings and conferences, is crucial: they allow a more comprehensive communication between all the involved parties, and at the end we get better results for it.
GNOME also takes very seriously respectful communication between members of the community; we have a strong code of conduct, which is enforced within the community itself and covers all venues of communication, including in person events.
**Jim: GNOME established the Human Interface Guidelines (HIG) to unify the GNOME design and GNOME app interfaces. How did the HIG come about?**
**Emmanuele****:**The Human Interface Guidelines (HIG) came into being after Sun did a usability study on GNOME 1, one of the very first usability studies for a free software project. The findings from that study led to the creation of a standardized document that projects under the GNOME umbrella would have to follow, which is how we ended up with GNOME 2, back in 2002.
The HIG was a rallying point and a symbol, a way to demonstrate that the entire project cared about usability and accessibility, and it provided the tools to both desktop and application developers to create a consistent user experience.
Over the years, the HIG moved away from being a complete checklist of pixels of padding and grids of components, and instead it now provides design principles, UI patterns, conventions, and resources for contributors and application developers. The HIG now has its own implementation library, called libadwaita, which application developers can use when targeting GNOME, and immediately benefit from a deeper integration within the platform without having to re-implement the various styles and patterns manually.
_Thanks to Emmanuele Bassi for answering this interview. You can find GNOME at_[_https://www.gnome.org/_][3]
_Read the release announcement for GNOME 43 at_[_https://release.gnome.org/43/_][4]
_Learn about whats new in GNOME 43 for developers at_[_https://release.gnome.org/43/developers/_][5]
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/whats-new-gnome-43-linux
作者:[Jim Hall][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/jim-hall
[b]: https://github.com/lkxed
[1]: https://opensource.com/article/19/12/gnome-linux-desktop
[2]: https://opensource.com/article/20/5/linux-desktops
[3]: https://www.gnome.org/
[4]: https://release.gnome.org/43/
[5]: https://release.gnome.org/43/developers/

View File

@ -0,0 +1,189 @@
[#]: subject: "Exploring innovative Open Organization charts"
[#]: via: "https://opensource.com/article/22/10/innovative-open-organization-chart"
[#]: author: "Ron McFarland https://opensource.com/users/ron-mcfarland"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Exploring innovative Open Organization charts
======
The ability to react quickly and adapt to changing situations is critical in today's business and work environment. In the past, offering efficient, standardized systems was the way to reduce costs and provide more to the public. In today's rapidly changing world, that's not enough. Collaborating, deciding, and executing quickly on a project requires that the traditional organization chart change to strengthen **adaptability**, **transparency**, **collaboration**, **inclusivity,** and project **community—**all five Open Organization Principles. Today, there are too many interdependencies to stick to the traditional top-down organization chart.
I just read the book [Team of Teams, by Stanley McChrystal][1], which discusses this concern, particularly in military combat situations. It is the efficiency of small, empowered, trusted, goal-oriented teams working together (and with other teams) that will be successful in the future. Their ability to interact with other teams will make a small group scalable within a large organization. McChrystal writes that adaptability, transparency, and cross-silo collaboration are key to their success. These are three of the Open Organization Principles. I think it's equally valid in the business environment and not just in military operations.
### Speed in decision-making and how to address continual unpredictability
When do you make a decision yourself, and when do you take decisions to top management? McChrystal states, "a 70% chance of success today is better than 90% tomorrow when speed of action is critical." These days, the competitors, or enemies, are moving at that pace.
In my article "[The 4 components of a great decision, What makes a "good" open decision?][2]" I wrote that decision-making speed was very important. Well, that's more true than ever, and you can't do that if you need approvals up and down a large vertical organization chart. Quick decisions must be made on the frontline, where the issues are. A horizontal organization that gets the people most directly involved in the decision-making process is required and is part of the strength that McChrystal is talking about.
![A horizontal org chart with connections between teams][3]
Image by:
(Ron McFarland, CC BY-SA 4.0)
These connections should have solid lines, and the vertical lines should be dotted, as communications should go up the line only when need be and horizontally minute by minute in real-time.
### Information reversal
In another presentation, I talked about an upside-down organization chart, which I called the [hierarchy of support][4]. Compare this with a vertical organizational chart.
![Hierarchy of company objectives][5]
Image by:
(Ron McFarland, CC BY-SA 4.0)
A typical vertical organization chart has top management in the top box. The staff provided frontline information to superiors so that they could decide.
Then, lines connect downward to departments under the top box, and directives move downward. Task directives flow from those department managers to the staff under them.
In a rapidly changing, unpredictable environment, the superiors should provide surrounding information to the staff so frontline people can make decisions independently. Imagine turning that organization chart upside down, with top management at the bottom and the staff at the top.
![Hierarchy of company support][6]
Image by:
(Ron McFarland, CC BY-SA 4.0)
With today's information technology, the frontline staff is often better informed than their superiors. Therefore, managers' main job is to support the staff where needed, but the decisions should be made rapidly on the frontline.
McChrystal uses the expression, "Eyes on - Hands off." I think he is suggesting what I'm saying in a different way. He calls top managers giving directives "chess players" and supporting managers "gardeners."
McChrystal started a training company called [Crosslead][7] that trains individuals and companies on how this type of organization works. Their name implies the horizontal, frontline communication I mentioned in my upside-down organization chart.
The book mentions Open Organization Principles throughout:
- **Adaptability**, which he calls "resilience."
- **Collaboration**, which is horizontal within teams and between teams.
- **Community**, which is **Inclusivity** and **Transparency** within teams.
### Getting through the forest by knowing the working environment
Imagine your goal is to get through a forest to your home on the other side. Unfortunately, the forest is rapidly changing because of the weather and climate.
One person gives you a map of the best way to go through the forest, but that map was made in the past and might be outdated. It might be the best way to get home, but blockages along that route may force you to return to your starting location.
Another person has a current satellite image of the forest which shows every possible route and its present condition. Furthermore, he has guides spread throughout the forest who can communicate and advise you on the best route.
Wouldn't the second method be more reliable with a rapidly changing forest?
### McChrystal's organization chart
It starts with a frontline team, a specific goal, and members' specific tasks. The members select a leader depending on the task at hand. Who is most experienced, informed, and qualified to lead them toward the given team goal?
It might well be that the official leader is the least qualified to make decisions, so the system is very slow at best and freezes at worst. Who will most people follow? That will determine the leader of any given task.
McChrystal writes about the "Perry Principle," in which top management could not give orders by sea because there was no communication system in [Admiral Perry's][8] days. McChrystal calls this a "principle" because empowerment was given to frontline staff as a last resort and only when forced. He thinks this should be reversed. Top management should only make the decision themselves when the frontline people can't decide for one reason or another.
The team chart that McChrystal is proposing is on the right.
![Command organizational chart versus team organizational chart][9]
Image by:
Team of Teams, page 96.
An exponential growth in frontline connectedness speeds up the communication and action process in a way that the current hierarchical structure can not handle. The command chart on the left is just too slow in a rapidly changing environment.
By the time the situation is reported, everything changes and reported information is obsolete. Therefore, a frontline leader, like a start-up entrepreneur, must have the authority, initiative, intuition, and creative thinking to make decisions and immediately act on them to achieve the best result. Speed determines success or failure.
Up until now, adaptability has mostly been characteristic of small interactive teams rather than large top-down hierarchies.
In this new environment, that frontline leader's superior must withhold decision-making on the one hand but relentlessly support the frontline on the other. This will lead to frontline decision-making competence to iterate and adjust in a fraction of the normal time.
### Attention directed from efficiency to adaptability
McChrystal introduces the work of [Frederick Winslow Taylor][10], who developed the reductionist theory and the optimization and standardization of processes. This process was the most efficient way to reduce costs and save energy. He believed there was one ideal way for any process.
So, he researched processes, developed instruction sheets, and instructed the frontline staff just to follow directions. It was a hard and fast line between thinking (by the researcher) and action (by the frontline worker). This approach is fine for repeated, well-known, stable processes, but not in changing environments, like factories with complicated but linear predictable activities, but not in changing environments. Unfortunately, this concept took the initiative to improve away from the frontline operator, as all they had to do was act and not think.
When modification was required, the frontline worker froze, unqualified and unskilled at adapting.
McChrystal writes that his military combat environment is not predictable. It is a "complex system." This complexity has countless unpredictable interdependencies in the environment.
When one event takes place, it may have a massive impact or no impact at all. This results in great unpredictability. We have to manage this unpredictability. In the past, communication was from a few to a few with some connected impact. Now, it is many to many, and no one knows who or what the impact is on who or what. It is totally unpredictable.
I believe this reductionist process is still important, but it can only go so far.
Therefore, those basic practice instruction sheets should come in the form of suggestions only and not orders to follow. McChrystal calls these situations _complexity systems_. It's like opening and walking through a door only to learn of other doors to choose from.
Those other doors cannot be foreseen without walking through the previous door. After selecting one of those doors, you discover more doors to choose from. To be most effective, whenever you select a door, you let everyone in the system know which one you picked and ask for advice if available. This is where real-time transparency is vital. In this environment, planning is not helpful, but feedback is.
Being better equipped and more efficient are not enough in complex environments. Being agile and resilient become critical factors. When disturbances come, the system must continue to function and adjust. This is all-important in a world of continual situational change. In this world, planning for disruption is vital. It is "rolling with the punches" or even benefiting from them by developing an immune system to disruption. When shocks come, options have been planned, developed, practiced, and applied when needed. Simply working on one ideal process is not enough. If all the attention is on the execution of one procedure, other more helpful skills may suffer. It is moving away from predicting a single forecast, exploring all possibilities, and preparing for them. McChrystal asks to contrast efficiency and effectiveness. He says, "Efficiency is doing things right. Effectiveness is doing the right thing." He thinks the latter is more important in a complex situation. To do that, people should be skilled in many rarely needed but still necessary tasks.
### Collaboration over vertical communication walls
Furthermore, breaching vertical walls between divisions or teams increases the speed of action, particularly where cross-functional collaboration is vital to the speed of response.
According to McChrystal, both between teams and within teams, collective consciousness is developed over years of joint practice, trust building, cooperation, deep group, and individual understanding, bonding, and service to their greater purpose.
The entire group can improvise in a coordinated way when necessary. Teamwork is a process of reevaluating everyone's move and intent, constant messaging, and real-time adjustment.
### Barriers between teams
As you move down the traditional organization chart, motivation and contextual awareness become more limited and specific, and greater distance from the overall organization's objectives. Members are tight within their team but separated from the other groups within the organization and possibly the entire organization's goals.
![Command of teams organizational chart][11]
Image by:
Team of Teams, page 129
### Real-time communication and connections between teams
In a complex, rapidly changing environment, the below chart is more appropriate, where there is a good deal of continual information flow and connections.
![Inter-team organizational chart][12]
Image by:
Team of Teams, page 129
Team members tackling complex environments must all grasp not just their team's purpose but the overarching goal of the entire organizational system. They must also consider how their activities impact other groups.
To be successful, team participation and team-to-team participation are vital, according to McChrystal. In Jim Whitehurst's [book][13] on letting and encouraging everyone to speak up in meetings, even the quiet people express this same point.
I wrote about it in my first article, [When empowering employee decision-making, intent is everything][14], posted on April 19, 2016. This concept is true when trying to connect teams as well.
Teams working on a problem and collaborating in real time can perform tasks more concurrently rather than sequentially, saving a massive amount of valuable time.
### Wrap up
This article presents several images of new organization chart concepts. Unofficially, to get things done, much horizontal communication has been going on for decades. The difference now is that updates are in minutes and not at weekly or monthly meetings.
I also discussed the importance of the speed of decision-making in today's working environment and that a new real-time communication flow system is needed. I mentioned that at least three critical Organization Principles, namely adaptability, transparency, and collaboration, were vitally important to make communication flow and allow faster decision-making and execution. Furthermore, I also presented that just having a highly efficient and low-cost system is not enough when faced with a rapidly changing, unpredictable working environment. An approach better able to adapt to change needs to be introduced and put into use, namely a new open organization chart.
In the second part of this article, I will discuss how this type of organization can work, including how to develop it and improve it. Also, I'll give examples of how it can work in various situations.
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/innovative-open-organization-chart
作者:[Ron McFarland][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/ron-mcfarland
[b]: https://github.com/lkxed
[1]: https://www.shortform.com/summary/team-of-teams-summary-stanley-mcchrystal?gclid=CjwKCAjwy_aUBhACEiwA2IHHQFl6iYqOX4zSl3JxC-BVubNJo3Ee11s2nF2t4HMN6roJn2yehivPshoCXlQQAvD_BwE
[2]: https://opensource.com/open-organization/17/3/making-better-open-decisions
[3]: https://opensource.com/sites/default/files/2022-10/horizontal-org-chart.png
[4]: https://www.slideshare.net/RonMcFarland1/hierarchy-of-objectives-support
[5]: https://opensource.com/sites/default/files/2022-10/hierarchy-company-objectives.png
[6]: https://opensource.com/sites/default/files/2022-10/hierarchy-company-support.png
[7]: http://www.crosslead.com/
[8]: https://en.wikipedia.org/wiki/Matthew_C._Perry
[9]: https://opensource.com/sites/default/files/2022-10/command-vs-team-chart.png
[10]: https://en.wikipedia.org/wiki/Frederick_Winslow_Taylor
[11]: https://opensource.com/sites/default/files/2022-10/command-of-teams.png
[12]: https://opensource.com/sites/default/files/2022-10/connections-between-teams.png
[13]: https://www.goodreads.com/book/show/23258978-the-open-organization
[14]: https://opensource.com/open-organization/16/4/when-empowering-employee-decision-making-intent-everything

View File

@ -0,0 +1,114 @@
[#]: subject: "Our open source startup journey"
[#]: via: "https://opensource.com/article/22/10/tooljet-open-source-journey"
[#]: author: "Navaneeth PK https://opensource.com/users/navaneeth"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Our open source startup journey
======
[ToolJet][1] is an open source, low-code framework for rapidly building and deploying internal tools. Our codebase is 100% JavaScript and TypeScript.
A lone developer in April 2021 started ToolJet. The public beta launched in June 2021 and was an instant hit. With this traction, ToolJet raised funding, and currently, we have a team of 20 members.
### Why open source?
Before working on ToolJet, I worked with a few enterprise clients as a consultant. Many of these clients were large enough to build and maintain dozens of internal tools. Despite the constant requests from sales, support, and operations teams to add more features and fix the bugs in their internal tools, engineering teams struggled to find the bandwidth to work on the internal utilities.
I tried using a few platforms to build and maintain internal tools. Most of these tools were very expensive, and frequently, they didn't really fit the requirements. We needed modifications, and most utilities didn't support on-premise hosting.
As a Ruby developer, I primarily used ActiveAdmin and RailsAdmin to build internal tools. Both utilities are amazing, but making them work with more than one data source is difficult. I then realized there is a need in the market for a framework that could build user interfaces and connect to multiple data sources. I believe any tool built for developers should be open source. Most of the tools and frameworks that developers use daily result from people from all over the world collaborating in public.
### The first commit
Building something like ToolJet needed a full-time commitment. Selling one of my side projects gave me a runway of 5-6 months, and I immediately started working on an idea I'd had in mind for at least two years.
The first commit (rails new) of ToolJet was on April 1, 2021.
Wait! I said the codebase is 100% JavaScript. Continue reading to discover why.
### Building and pitching investors
I sat in front of my screens for most of April and May, coding and pitching to investors for a pre-seed round.
My work also included creating the drag-and-drop application builder, documenting everything, ensuring there was documentation for setting ToolJet up on popular platforms, creating a website, creating posters and blog posts for launch, and more. The process went well without any major challenges. At this point, the frontend of ToolJet was built using React, with the backend using Ruby on Rails.
While the coding was going well, investor pitches weren't going great. I sent around 40 cold emails to venture capitalist firms and "angel investors" focused on early-stage funding. While most of them ignored the email, some shared their reason for rejection, and some scheduled a call.
Most of the calls were the same; I couldn't convince them of an open source business model.
### The launch
June 7th was the day of the launch. First, we launched on ProductHunt. Six hours passed, and there were only 70 new signups. But we were trending as the #1 product of the day (and ended up as the #3 product of the week). For posterity, here's the original [post][2].
I also posted on [HackerNews][3] around 6 PM, and within an hour, the post was #1. I was very happy that many visitors signed up and starred the repository. Many of these visitors and users reported bugs in the application and documentation. Within eight hours of posting on HN, more than 1,000 GitHub users starred ToolJet's GitHub repository, and there were hundreds of signups for ToolJet cloud. The trend continued for three days, and the repo had 2.4k stars.
![ToolJet repo stats on GitHub][4]
Image by:
GitHub StarTrack for ToolJet. (Navaneeth PK, CC BY-SA 4.0)
### Getting funding
The traction on GitHub was enough to be noticed by the venture capitalist (VC) world. The days following the launch were packed with calls. We had other options, but did not consider seriously consider them, including:
- Bootstrapping: During the early stages of the product, it was hard to find paying customers, and I did not have enough savings to fund the project until that happened.
- Building as a side project: While this strategy works great for smaller projects, I didn't feel it would work for ToolJet because we needed to create dozens of integrations and UI widgets before the platform could become useful for customers. As a side project, it might take months or years to achieve that.
I knew it could take months to build the platform I wanted if ToolJet became just a side project. I wanted to accelerate growth by expanding the team, and VC funding was the obvious choice, given the traction.
The good news is that we raised[$1.55 million in funding][5] within two weeks of the HN launch.
### Stack matters in open source
Soon after the launch, we found that many people wanted to contribute to ToolJet, but they were mostly JavaScript developers. We also realized that for a framework like ToolJet that in the future should have hundreds of data source connectors, only a plugin-based architecture made sense. We decided to migrate from Ruby to TypeScript in August 2021. Even though this took about a month and significant effort, this was one of the best decisions we've made for the project. Today, we have an extensible plugin-based architecture powered by our [plugin development kit][6]. We have contributions from over 200 developers. We've written extensively about this migration [here][7] and [here][8].
### Launching v1.0
Many users have been using ToolJet on production environments since August, and the platform did not show any stability or scalability issues. We were waiting to wrap up the developer platform feature before we called it v1.0. The ToolJet developer platform allows any JavaScript developer to build and publish plugins for ToolJet. Developers are now able to make connectors for ToolJet. Creating a ToolJet connector can take just 30 minutes, including integration tests.
### Building a growing community
![ToolJet star history][9]
Image by:
ToolJet Star History (Navaneeth PK, CC BY-SA 4.0)
We didn't spend money on marketing. Most of our efforts in spreading the news about ToolJet have been writing about our learnings and being active in developer communities. We have a team of three members who take care of community queries.
### The business model
ToolJet won't be a sustainable business without a [commercial product][10] to pay the bills. We've built an enterprise edition of ToolJet, for which customers must pay. There's no limit on usage for the free community edition, and additional features in the enterprise edition are relevant only to large teams. We have very large companies as paying customers right now, but we haven't started monetizing ToolJet aggressively. We have enough money left in the bank to build an even better ToolJet, so our focus currently is on product improvement.
### What's next?
We frequently release better versions of ToolJet with the help of constant feedback and contributions from the open source community. Many major improvements and dozens of connectors and UI components are in progress. We're moving faster than ever towards our initial goal of being the open framework that can connect to hundreds of data sources and build even the most complicated user interfaces!
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/tooljet-open-source-journey
作者:[Navaneeth PK][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/navaneeth
[b]: https://github.com/lkxed
[1]: https://github.com/ToolJet/ToolJet
[2]: https://www.producthunt.com/products/tooljet-0-5-3
[3]: https://news.ycombinator.com/item?id=27421408
[4]: https://opensource.com/sites/default/files/2022-10/tooljet-repo-stats.png
[5]: https://blog.tooljet.com/raising-vc-funding-for-open-source-project
[6]: https://www.npmjs.com/package/@tooljet/cli
[7]: https://blog.tooljet.com/migrating-toojet-from-ruby-on-rails-to-nodejs
[8]: https://blog.tooljet.com/how-we-migrated-tooljet-server-from-ruby-to-node-js
[9]: https://opensource.com/sites/default/files/2022-10/tooljet-star-history.png
[10]: https://opensource.com/article/19/11/product-vs-project

View File

@ -2,7 +2,7 @@
[#]: via: (https://itsfoss.com/nvidia-linux-mint/)
[#]: author: (Ankush Das https://itsfoss.com/author/ankush/)
[#]: collector: (lujun9972)
[#]: translator: (hwlife)
[#]: translator: ( )
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )

View File

@ -2,7 +2,7 @@
[#]: via: (https://opensource.com/article/21/4/ansible-community-logos)
[#]: author: (Fiona Lin https://opensource.com/users/fionalin)
[#]: collector: (lujun9972)
[#]: translator: ( )
[#]: translator: (MareDevi)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )

View File

@ -1,252 +0,0 @@
[#]: subject: (Complete Guide to Configuring SSH in Ubuntu)
[#]: via: (https://itsfoss.com/set-up-ssh-ubuntu/)
[#]: author: (Chris Patrick Carias Stas https://itsfoss.com/author/chris/)
[#]: collector: (lujun9972)
[#]: translator: (hwlife)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
Complete Guide to Configuring SSH in Ubuntu
======
SSH has become the default method of accessing a remote Linux server these days.
SSH stands for Secure Shell and its a powerful, efficient, and popular network protocol used to establish communication between two computers in a remote fashion. And lets not forget the secure part of its name; SSH encrypts all traffic to prevent attacks like hijacking and eavesdropping while offering different authentication methods and a myriad of configuration options.
In this beginners guide, youll learn:
* The basic concept of SSH
* Setting up SSH server (on the system you want to access remotely)
* Connecting to remote server via SSH from the client machine (your personal computer)
### The absolute basics of SSH
Before you see any configuration process, it will be better to go through the absolute basic concept of SSH.
The SSH protocol is based on server-client architecture. The “server” allows the “client” to be connected over a communication channel. This channel is encrypted and the exchange is governed by the use of public and private SSH keys.
![Image credit: SSH][1]
[OpenSSH][2] is one of the most popular open source tools that provides the SSH functionality on Linux, BSD and Windows.
For a successful SSH set up, you need to:
* Have SSH server components on the machine that acts as the server. This is provided by **openssh-server** package.
* Have SSH client component on the machine from where you want to connect to the remote server machine. This is provided by **openssh-client** package and most Linux and BSD distributions come preinstalled with it.
It is important to keep a distinction between the server and client. You might not want your personal computer to act as SSH server unless you have good reasons where you want others to connect to your system via SSH.
Generally, you have a dedicated system working as the server. For example, a [Raspberry Pi running Ubuntu server][3]. You [enable SSH on the Raspberry Pi][4] so that you could control and manage the device from your main personal computer using SSH in a terminal.
With that information, lets see how you can set up a SSH server on Ubuntu.
### Configuring SSH Server on Ubuntu
Setting up SSH is not complicated and just needs a few steps to do it.
#### Prerequisites
* A user with **sudo** privileges on the server machine
* Internet connection to download the required packages
* At least another system in your network. It can be another computer on your LAN, a remote server via Internet, or a virtual machine hosted in your computer.
_**Again, the SSH server installation should be done on the system that you want to act as server and to which you want to connect remotely via SSH.**_
#### Step 1: Install required packages
Lets start by opening a terminal window to enter the necessary commands.
Remember to [update your Ubuntu system][5] before installing new packages or software with to make sure that you are running the latest versions.
```
sudo apt update && sudo apt upgrade
```
The package you need to run SSH Server is provided by openssh-server component from OpenSSH:
```
sudo apt install openssh-server
```
![][6]
#### Step 2: Checking the status of the server
Once the downloading and installation of the package is done the SSH service should be already running, but to be sure we will check it with:
```
service ssh status
```
You may also use the systemd commands:
```
sudo systemctl status ssh
```
You should see something like this, with the word Active highlighted. Hit `q` to return to the command prompt.
![][7]
If in your case the service is not running you will have to activate like this:
```
sudo systemctl enable --now ssh
```
#### Step 3: Allowing SSH through the firewall
Ubuntu comes with a firewall utility called [UFW][8] (UncomplicatedFirewall) which is an interface for **iptables** that in turn manages the networks rules. If the firewall is active, it may prevent the connection to your SSH Server.
To configure UFW so that it allows the wanted access, you need to run the following command:
```
sudo ufw allow ssh
```
The status of UFW can be checked running `sudo ufw status`.
At this time our SSH Server is up and running, just waiting for a connection from a client.
### Connecting to the remote system from your local machine
Your local Linux system should already have SSH client installed. If not, you may always install it using the following command on Ubuntu:
```
sudo apt install openssh-client
```
To connect to your Ubuntu system you need to know the IP address of the computer and use the `ssh` command, like this:
```
ssh [email protected]
```
Change **username** to your actual user in the system and **address** to the IP address of your Ubuntu machine.
If you dont [know the IP address of your computer][9] you can type `ip a` in the terminal of the server and check the output. You should have something like this:
![Using “ip a” to find the IP address][10]
As can be seen here my IP address is **192.168.1.111**. Lets try connecting using the **[[email protected]][11]** format.
```
ssh [email protected]
```
The first time you connect to a SSH server, it will ask for permission to add the host. Type `yes` and hit Enter to continue.
![First time connecting to the server][12]
Immediately SSH tells you that the host was permanently added and then asks for the password assigned to the username. Type in the password and hit Enter one more time.
![Host added, now type in the password][13]
And voila! You will be logged into your Ubuntu system remotely!
![Connected!][14]
Now you can work in your remote systems terminal as normal.
#### Closing the SSH connection
To close the connection you just need to type `exit` and it will close it at once, without asking for confirmation.
![Closing the connection with “exit”][15]
### Stopping and Disabling SSH in Ubuntu
If you want to stop SSH service you will need this command:
```
sudo systemctl stop ssh
```
This will stop the service until you restart it or until the system is rebooted. To restart it, type:
```
sudo systemctl start ssh
```
Now, if you want to disable it from starting during system boot, use this:
```
sudo systemctl disable ssh
```
This wont stop the service from running during the current session, just from loading during startup. If you want to let it start again during system boot, type:
```
sudo systemctl enable ssh
```
#### Other SSH clients
The tool `ssh` is included in most *nix systems, from Linux to macOS, but those are not the only options in existence, here are a couple of clients that can be used from other operating systems:
* [PuTTY][16] is a free SSH client for Windows and its open source. Its full of features and very easy to use. If you are connecting to your Ubuntu machine from a Windows station, PuTTY is a great option.
* [JuiceSSH][17] is an amazing tool for Android users. If you are on the go and need a mobile client to connect to your Ubuntu system, I amply recommend giving JuiceSSH a go. Its been around for almost 10 years and its free to use.
* And finally, [Termius][18] is available for Linux, Windows, macOS, iOS, and Android. It has a free tier version and also several premium options. If you are running a lot of servers and working with teams sharing connections then Termius is a good option for you.
#### Wrapping Up
With these instructions, you can set up SSH as a server service in our Ubuntu systems to be able to connect remotely and securely to your computer in order to work with the command line and perform any required task.
Our other website, Linux Handbook, has various informational articles on SSH. From here, I recommend reading the following:
* [Getting started with SSH on Linux][19]
* [Using SSH Config file to manage multiple SSH connections][20]
* [Adding public key to SSH server for password less authentication][21]
* [SSH hardening tips][22] to secure your SSH server
If you find it overwhelming, [Linux Handbook has a premium video course that explains SSH for beginners][23] along with hands-on labs to follow. This will give you a more streamlined knowledge of the topic.
Happy remote working!
--------------------------------------------------------------------------------
via: https://itsfoss.com/set-up-ssh-ubuntu/
作者:[Chris Patrick Carias Stas][a]
选题:[lujun9972][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/chris/
[b]: https://github.com/lujun9972
[1]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-diagram.png?resize=800%2C259&ssl=1
[2]: https://www.openssh.com/
[3]: https://itsfoss.com/install-ubuntu-server-raspberry-pi/
[4]: https://itsfoss.com/ssh-into-raspberry/
[5]: https://itsfoss.com/update-ubuntu/
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0001.png?resize=800%2C253&ssl=1
[7]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0002.png?resize=800%2C263&ssl=1
[8]: https://itsfoss.com/set-up-firewall-gufw/
[9]: https://itsfoss.com/check-ip-address-ubuntu/
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-find-ip.png?resize=800%2C341&ssl=1
[11]: https://itsfoss.com/cdn-cgi/l/email-protection
[12]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0004.png?resize=800%2C87&ssl=1
[13]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0005.png?resize=800%2C57&ssl=1
[14]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0006.png?resize=800%2C322&ssl=1
[15]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0007.png?resize=800%2C87&ssl=1
[16]: https://www.putty.org/
[17]: https://juicessh.com/
[18]: https://termius.com/
[19]: https://linuxhandbook.com/ssh-basics/
[20]: https://linuxhandbook.com/ssh-config-file/
[21]: https://linuxhandbook.com/add-ssh-public-key-to-server/
[22]: https://linuxhandbook.com/ssh-hardening-tips/
[23]: https://linuxhandbook.com/sshcourse/

View File

@ -1,325 +0,0 @@
[#]: subject: (Try Linux on any operating system with VirtualBox)
[#]: via: (https://opensource.com/article/21/6/try-linux-virtualbox)
[#]: author: (Stephan Avenwedde https://opensource.com/users/hansic99)
[#]: collector: (lujun9972)
[#]: translator: (chai001125)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
Try Linux on any operating system with VirtualBox
======
VirtualBox helps anyone—even a command line novice—set up a virtual
machine.
![Person programming on a laptop on a building][1]
VirtualBox makes it easy for anyone to try Linux. You don't even need experience with the command line to set up a simple virtual machine to tinker with Linux. I'm kind of a power user when it comes to virtual machines, but this article will show even novices how to virtualize a Linux system. In addition, it provides an overview of how to run and install a Linux system for testing purposes with the open source hypervisor [VirtualBox][2].
### Terms
Before starting, you should understand the difference between the two operating systems (OSes) in this setup:
* **Host system:** This is your actual OS on which you install VirtualBox.
* **Guest system:** This is the system you want to run virtualized on top of your host system.
Both systems, host and guest, must interact with each other when it comes to input/output, networking, file access, clipboard, audio, and video.
In this tutorial, I'll use Windows 10 as the _host system_ and [Fedora 33][3] as the _guest system_.
### Prerequisites
When we talk about virtualization, we actually mean [hardware-assisted virtualization][4]. Hardware-assisted virtualization requires a compatible CPU. Almost every ordinary x86 CPU from the last decade comes which this feature. AMD calls it **AMD-V,** and Intel calls it **VT-x**. The virtualization feature adds some additional CPU instructions, and it can be enabled or disabled in the BIOS.
To start with virtualization:
* Make sure that AMD-V or VT-x is enabled in the BIOS.
* Download and install [VirtualBox][5].
### Prepare the virtual machine
Download the image of the Linux distribution you want to try out. It does not matter if it's a 32-bit or 64-bit OS image. You can even start a 64-bit OS image on a 32-bit host system (with limitations in memory usage, of course) and vice versa.
> **Considerations:** If possible, choose a Linux distribution that comes with the [Logical Volume Manager][6] (LVM). LVM decouples the filesystem from the physical hard drives. This allows you to increase the size of your guest system's hard drive if you are running out of space.
Now, open VirtualBox and click on the yellow **New** button:
![VirtualBox New VM][7]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Next, configure how much memory the guest OS is allowed to use:
![Set VM memory size][9]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
My recommendation: **Don't skimp on memory!** When memory is low, the guest system will start paging memory from RAM to the hard drive, worsening the system's performance and responsiveness extremely. If the underlying host system starts paging, you might not notice. For a Linux workstation system with a graphical desktop environment, I recommend at least 4GB of memory.
Next, create the hard disk:
![Create virtual hard disk][10]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Choose the default option, **VDI**:
![Selecting hard disk file type][11]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
In this window, I recommend choosing **dynamically allocated**, as this allows you to increase the size later. If you choose **fixed size**, the disk will be probably faster, but you won't be able to modify it:
![Dynamically allocating hard disk][12]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
With a Linux distribution that uses LVM, you can start with a small hard disk. If you are running out of space, you can increase it on demand.
> **Note**: Fedora's website says [it requires][13] a minimum of 20GB free disk space. I highly recommend you stick to that specification. I chose 8GB here so that I can demonstrate how to increase it later. If you are new to Linux or inexperienced with the command line, choose 20GB.
![Setting hard disk size][14]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
After creating the hard drive, select the newly created virtual machine from the list in VirtualBox's main window and click on **Settings**. In the Settings menu, go to **System** and select the **Processor** tab. By default, VirtualBox assigns only one CPU core to the guest system. On a modern multicore CPU, it should not be any problem to assign at least two cores, which will speed up the guest system significantly:
![Assigning cores to guest system][15]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
#### Network adapter setup
The next thing to take care of is the network setup. By default, VirtualBox creates one NAT connection, which should be OK for most use cases:
![Network settings][16]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
You can create more than one network adapter. Here are the most common types:
* **NAT:** The NAT adapter performs a [network address translation][17]. From the outside, it looks like the host and the guest system use the same IP address. You are not able to access the guest system from within the host system over the network. (Although you could define [port forwarding][18] to access certain services.) When your host system has access to the internet, the guest system will have access, too. NAT requires no further configuration.
* _Choose **NAT** if you only need internet access for the guest system._
* **Bridged adapter:** Here, the guest and the host system share the same physical Ethernet device. Both systems will have independent IP addresses. From the outside, it looks like there are two separate systems in the network, both sharing the same physical Ethernet adapter. This setup is more flexible but requires more configuration.
* _Choose **Bridged adapter** if you want to share the guest system's network services._
* **Host-only adapter:** In this configuration, the guest system can only talk to the host or other guest systems running on the same host. The host system can also connect to the guest system. There is no internet nor physical network access for the guest.
* _Choose **Host-only adapter** for advanced security._
#### Assign the OS image
Navigate to **Storage** and select the virtual optical drive. Click on the **CD icon** on the right, and select **Choose a disk file…**. Then assign the downloaded Linux distribution image you want to install:
![Assigning OS image][19]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
### Install Linux
The virtual machine is now configured. Leave the **Settings** menu and go back to the main window. Click on the **Green arrow** (i.e., the start button). The virtual machine will start up and boot from the virtual optical drive, and you will find yourself in your Linux distribution's installer:
![VirtualBox Fedora installer][20]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
#### Partitioning
The installer will ask you for partitioning information during the installation process. Choose **Custom**:
![Selecting Custom partition configuration][21]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
> **Note:** I'm assuming you're creating this virtual machine just for testing purposes. Also you don't need to care about hibernation for your guest system, as this function is implicitly provided by VirtualBox. Therefore, you can omit the swap partition to save disk space on your host system. Keep in mind that you can add a swap partition later if needed. In [_An introduction to swap space on Linux systems_][22], David Both explains how to add a swap partition and choose the correct size.
Fedora 33 and later offer a [zram][23] partition, a compressed part of the memory used for paging and swap. The zram partition is resized on demand, and it is much faster than a hard disk swap partition.
To keep it simple, just add these two mount points:
![Adding mount points][24]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Apply the changes and proceed with the installation.
### Install VirtualBox Guest Additions
After you finish the installation, boot from the hard drive and log in. Now you can install VirtualBox Guest Additions, which include special device drivers and system applications that provide:
* Shared clipboard
* Shared folders
* Better performance
* Freely scalable window size
To install them, click on the top menu in **Devices** and select **Insert Guest Additions CD image…**:
![Selecting Guest Additions CD image][25]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
On most Linux distributions, the CD image with the Guest Additions is mounted automatically, and they are available in the file browser. Fedora will ask you if you want to run the installation script. Click **Run** and enter your credentials to grant the process root rights:
![Enabling Guest Additions autorun][26]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
When the installation is finished, reboot the system.
### LVM: Enlarge disk space
Creating an 8GB hard disk was a dumb decision, as Fedora quickly starts signaling that it is running out of space:
![Fedora hard disk running out of space][27]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
As I mentioned, a disk space of 20GB is recommended, and 8GB is the _absolute_ minimum for a Fedora 33 installation to boot up. A fresh installation with no additional software (except the VirtualBox Guest Additions) takes nearly the whole 8GB of available space. Don't open the GNOME Software center or anything else that might download files from the internet in this condition.
Luckily, I chose to use LVM, so I can easily fix this mishap.
To increase the filesystem's space within the virtual machine, you must first increase the virtual hard drive on your host system.
Shut down the virtual machine. If your host system is running Windows, open a command prompt and navigate to `C:\Program Files\Oracle\VirtualBox`. Resize the disk to 12,000MB with the following command:
```
`VBoxManage.exe modifyhd "C:\Users\StephanA\VirtualBox VMs\Fedora_33\Fedora_33.vdi" --resize 12000`
```
Boot the virtual machine and open the **Disks** utility. You should see the newly created unassigned free space. Select **Free Space** and click the **+** button:
![Free space before adding][28]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Now, create a new partition. Select the amount of free space you want to use:
![Creating a new partition and setting size][29]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
You don't want to create a filesystem or anything else on your new partition, so select **Other**:
![Selecting "other" for partition volume type][30]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Select **No Filesystem**:
![Setting "No filesystem" on new partition][31]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
The overview should now look like this:
![VirtualBox after adding new partition][32]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
There is a new partition device, **/dev/sda3**. Check your LVM volume group by typing `vgscan`:
![Checking LVM volume group by typing vgscan:][33]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Now you have everything you need. Extend the volume group in the new partition:
```
`vgextend fedora_localhost-live /dev/sda3`
```
![vgextend command output][34]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Because the volume group is larger, you can increase the size of the logical volume. The command `vgdisplay` shows that it has 951 free extends available:
![vgdisplay command output][35]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Increase the logical volume by 951 extends:
```
`lvextend -l+951 /dev/mapper/fedora_localhost--live-root`
```
![lvextend command output][36]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
After you increase the logical volume, the last thing to do is to resize the filesystem:
```
`resize2fs /dev/mapper/fedora_localhost--live-root`
```
![resize2fs command output][37]
(Stephan Avenwedde, [CC BY-SA 4.0][8])
Done! Check the **Disk Usage Analyzer**, and you should see that the extended space is available for the filesystem.
### Summary
With a virtual machine, you can check how a piece of software behaves with a specific operating system or a specific version of an operating system. Besides that, you can also try out any Linux distribution you want to test without worrying about breaking your system. For advanced users, VirtualBox offers a wide range of possibilities when it comes to testing, networking, and simulation.
--------------------------------------------------------------------------------
via: https://opensource.com/article/21/6/try-linux-virtualbox
作者:[Stephan Avenwedde][a]
选题:[lujun9972][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/hansic99
[b]: https://github.com/lujun9972
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/computer_code_programming_laptop.jpg?itok=ormv35tV (Person programming on a laptop on a building)
[2]: https://www.virtualbox.org/
[3]: https://getfedora.org/
[4]: https://en.wikipedia.org/wiki/Hardware-assisted_virtualization
[5]: https://www.virtualbox.org/wiki/Downloads
[6]: https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)
[7]: https://opensource.com/sites/default/files/uploads/virtualbox_new_vm.png (VirtualBox New VM)
[8]: https://creativecommons.org/licenses/by-sa/4.0/
[9]: https://opensource.com/sites/default/files/uploads/virtualbox_memory_size_1.png (Set VM memory size)
[10]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_1.png (Create virtual hard disk)
[11]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_2.png (Selecting hard disk file type)
[12]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_3.png (Dynamically allocating hard disk)
[13]: https://getfedora.org/en/workstation/download/
[14]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_4.png (Setting hard disk size)
[15]: https://opensource.com/sites/default/files/uploads/virtualbox_cpu_settings.png (Assigning cores to guest system)
[16]: https://opensource.com/sites/default/files/uploads/virtualbox_network_settings2.png (Network settings)
[17]: https://en.wikipedia.org/wiki/Network_address_translation
[18]: https://www.virtualbox.org/manual/ch06.html#natforward
[19]: https://opensource.com/sites/default/files/uploads/virtualbox_choose_image3.png (Assigning OS image)
[20]: https://opensource.com/sites/default/files/uploads/virtualbox_running.png (VirtualBox Fedora installer)
[21]: https://opensource.com/sites/default/files/uploads/virtualbox_partitioning_1.png (Selecting Custom partition configuration)
[22]: https://opensource.com/article/18/9/swap-space-linux-systems
[23]: https://fedoraproject.org/wiki/Changes/SwapOnZRAM
[24]: https://opensource.com/sites/default/files/uploads/virtualbox_partitioning_2.png (Adding mount points)
[25]: https://opensource.com/sites/default/files/uploads/virtualbox_guest_additions_2.png (Selecting Guest Additions CD image)
[26]: https://opensource.com/sites/default/files/uploads/virtualbox_guest_additions_autorun.png (Enabling Guest Additions autorun)
[27]: https://opensource.com/sites/default/files/uploads/virtualbox_disk_usage_1.png (Fedora hard disk running out of space)
[28]: https://opensource.com/sites/default/files/uploads/virtualbox_disks_before.png (Free space before adding)
[29]: https://opensource.com/sites/default/files/uploads/virtualbox_new_partition_1.png (Creating a new partition and setting size)
[30]: https://opensource.com/sites/default/files/uploads/virtualbox_new_partition_2.png (Selecting "other" for partition volume type)
[31]: https://opensource.com/sites/default/files/uploads/virtualbox_no_partition_3.png (Setting "No filesystem" on new partition)
[32]: https://opensource.com/sites/default/files/uploads/virtualbox_disk_after.png (VirtualBox after adding new partition)
[33]: https://opensource.com/sites/default/files/uploads/virtualbox_vgscan.png (Checking LVM volume group by typing vgscan:)
[34]: https://opensource.com/sites/default/files/uploads/virtualbox_vgextend_2.png (vgextend command output)
[35]: https://opensource.com/sites/default/files/uploads/virtualbox_vgdisplay.png (vgdisplay command output)
[36]: https://opensource.com/sites/default/files/uploads/virtualbox_lvextend.png (lvextend command output)
[37]: https://opensource.com/sites/default/files/uploads/virtualbox_resizefs.png (resize2fs command output)

View File

@ -2,7 +2,7 @@
[#]: via: "https://opensource.com/article/21/8/terraform-tips"
[#]: author: "Ayush Sharma https://opensource.com/users/ayushsharma"
[#]: collector: "lujun9972"
[#]: translator: " "
[#]: translator: "cool-summer-021"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "

View File

@ -2,7 +2,7 @@
[#]: via: "https://opensource.com/article/22/6/container-orchestration-kubernetes"
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
[#]: collector: "lkxed"
[#]: translator: "Donkey"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "

View File

@ -2,7 +2,7 @@
[#]: via: "https://ostechnix.com/execute-commands-on-remote-linux-systems-via-ssh/"
[#]: author: "sk https://ostechnix.com/author/sk/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: translator: "MjSeven"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "

View File

@ -1,158 +0,0 @@
[#]: subject: "Learn Bash base64 Encode and Decode With Examples"
[#]: via: "https://www.debugpoint.com/bash-base64-encode-decode/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Learn Bash base64 Encode and Decode With Examples
======
Want to learn about the base64 encode and decode method? Here in this tutorial, we explain the base64 encode and decode steps using bash shell scripting with various examples.
![][1]
The base64 encoding method transmits data over any communication medium by converting binary data to text. This method is primarily used for the email encryption process.
The Base64 method, in general, is a binary-to-text encoding scheme representing 8-byte binary data in ASCII string format. This has several advantages while transmitting or channelling data among various mediums especially those that reliably support text content. Hence, it is widely used on World Wide Web. Probably the most used case of this encoding scheme is using it for email attachments.
As per the Base64 representation table, the binary data can be converted to 64 different ASCII characters which are easy to transmit and printable. This encoding method uses letters A to Z, a to Z, 0 to 9 and + and /.
A total of 64 ASCII characters to represent binary from `000000` to `111111`. Each non-final Base64 digit represents exactly 6 bits of data.
![Base64 Index Table][2]
### Bash base64 encode and decode
#### Syntax
Before you learn about the examples, here is the basic syntax.
```
base64 [OPTIONs] [INFILE] [OUTFILE]
```
Option: You can provide any of the options or combine them as explained below.INFILE: Input can be picked up from standard input (like the command line) or files.OUTFILE: You can redirect the output to the standard output, like the terminal or to a file.
| Arguments | Descriptions |
| :- | :- |
| -e or encode | This option is used to encode any data from standard input or any file. It is the default option. |
| -d or decode | This option is used to decode any encoded data from standard input or any file. |
| -n or noerrcheck | By default, base64 checks error while decoding any data. You can use n or noerrcheck option to ignore checking at the time of decoding. |
| -i, ignore-garbage | This option is used to ignore non-alphabet characters while decoding. |
| -u or help | This option is used to get information about the usage of this command. |
#### Example 1 A basic encode
In Linux, the base64 package is installed by default. Hence, you can use it from the command line easily. To simply encode a string or text, you can pass it through the command line via piping and get the encoded text. In this example, the string debugpoint.com is encoded to base64.
```
echo "debugpoint.com" | base64
```
![bash base64 encode and decode - example 1][3]
The result is the base64 encoded string.
#### Explanation
The encoding method uses several steps to convert the input. The input characters are converted to 8-bit binary values. The entire set of the binary string is split into 6-bit binary values, which are converted to decimals.
Each decimal value is translated to the base64 character via the base64 index table.
In the above example, the first character, “d”, is converted to binary `01100100`. The first 6 bits are `011001`, which is 25 in decimal. The 25 refers to the Z in the base64 index table. And this goes on for the entire stream of text. See the example below.
![Base64 Encode and Decode inner working][4]
#### Example 2 A basic decode
To decode the string, simply pass the encoded value to the base64 with the option `--decode`. And it will give you the exact input string.
![bash base64 encode and decode - example 2 (decode the same example)][5]
#### Example 3 Encode a Text file
The same command can be used to encode a text file and redirect the output to another text file. Heres how.
```
base64 example3.txt > example3-encoded.txt
```
![Encode a text file][6]
#### Example 4 Decode a Text File
And to decode a text file that was encoded using base64, simply use the `--decode` or `-d` switch and pass on the text file name.
```
base64 -d example3-encoded.txt
```
#### Example 5 Encode a custom input from the user
Using bash shell programming, you can take input from the user via the terminal and encode it. But for that, you need to write a simple shell script and execute it after giving executable permission.
Heres a simple example which takes input from the user and displays the encoded string.
```
#!/bin/bash
#Sample program to take input, encode to base64 and display on terminal
#Example by www.debugpoint.com
echo "Enter text for encoding to base64:"
read input_text
output_text=`echo -n $input_text | base64`
echo "The Base64 Encoded text is: $output_text"
```
![Custom input - base64 encode and decode using script][7]
#### Example 6 A Simple Authentication using base64
You can implement a simple authentication system using the above encode and decode method. You can ask the user to enter a password or a secret code. Then store the secret code in a file or compare it on the fly.
If the stored encoded string matches with the user input encoded text, then the user is authenticated. However, it is a straightforward way of checking an authentication, but sometimes useful for simple business cases.
```
#!/bin/bash
#Sample program to take input, encode to base64 and display on terminal
#Example by www.debugpoint.com
echo "Type your password"
read pwd1
decoded_text=`echo 'U2lsZW5jZSBpcyBnb2xkZW4h' | base64 --decode`
if [[ $pwd1 == $decoded_text ]]
then
echo "You are a valid user."
else
echo "You are NOT a valid user."
fi
```
![A Simple Authentication using bash base64][8]
### Conclusion
I hope you get to learn the basics of [Base64][9] encode and decode with these examples. Also, learn a bit about its inner workings. Let me know in the comment box below if this helps you or need additional tutorials on this topic.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/bash-base64-encode-decode/
作者:[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/2021/11/base64example-1024x576.jpg
[2]: https://www.debugpoint.com/wp-content/uploads/2021/11/Base64-Index-Table.png
[3]: https://www.debugpoint.com/wp-content/uploads/2021/11/bash-base64-encode-and-decode-example-1.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2021/11/Base64-Encode-and-Decode-inner-working.png
[5]: https://www.debugpoint.com/wp-content/uploads/2021/11/bash-base64-encode-and-decode-example-2-decode-the-same-example.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2021/11/Encode-a-text-file.png
[7]: https://www.debugpoint.com/wp-content/uploads/2021/11/Custom-input-base64-encode-and-decode-using-script.png
[8]: https://www.debugpoint.com/wp-content/uploads/2021/11/A-Simple-Authentication-using-bash-base64.png
[9]: https://linux.die.net/man/1/base64

View File

@ -1,111 +0,0 @@
[#]: subject: "Install Gedit on Ubuntu 22.10 and Make it Default Text Editor"
[#]: via: "https://itsfoss.com/install-gedit-ubuntu/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Install Gedit on Ubuntu 22.10 and Make it Default Text Editor
======
[GNOME has a brand new text editor][1] to replace the good old Gedit editor.
While it was already available with GNOME 42, Ubuntu 22.04 relied on Gedit.
This is changing in Ubuntu 22.10. GNOME Text Editor is the default here and Gedit is not even installed.
![Searching for text editor only brings GNOME Text Editor][2]
While the new editor is good enough, not everyone would like it. This is especially if you use Gedit extensively with additional plugins.
If you are among those people, let me show you how to install Gedit on Ubuntu. Ill also share how you can make it the default text editor.
### Install Gedit on Ubuntu
This is actually a no-brainer. While Gedit is not installed by default, it is still available in Ubuntu repositories.
So, all you have to do is to use the apt command to install it:
```
sudo apt install gedit
```
Gedit is also available in the software center but it is the snap package. You could install that if you want.
![Gedit is also available in Ubuntus Snap Store][3]
#### Install Gedit Plugins (optional)
By default, Gedit gives you the option to access a few plugins. You can enable or disable the plugins from the menu->preference->plugins.
![Accessing plugins in Gedit][4]
You should see the available plugins here. The installed or in-use plugins are checked.
![See the available and installed plugins in Gedit][5]
However, you can take the plugin selection to the next level by installing the gedit-plugins meta package.
```
sudo apt install gedit-plugins
```
This will give you access to additional plugins like bookmarks, bracket completion, Python console and more.
![Additional Gedit plugins][6]
**Tip**: If you notice that Gedit looks a bit out of place for the lack of around bottom corners, you can install a GNOME extension called [Round Bottom Corner][7]. This will force round bottom corners for all applications including Gedit.
### Make Gedit the default text editor
Alright! So you have installed Gedit but the text files still open in GNOME Text Editor with double click action. To open a file with Gedit, you need to right click and then select the open with option.
If you want Gedit to open text files all the time, you can set it as default.
Right click on a text file and go with “open with” option. Select Gedit here and enable the “Always use for this file type” option from the bottom.
![Set Gedit as the default text editor][8]
### Remove Gedit
Dont feel Gedit is up to the mark? Thats rare, but I am not judging you. To remove Gedit from Ubuntu, use the following command:
```
sudo apt remove gedit
```
You may also try uninstalling it from the software center.
### Conclusion
GNOME Text Editor is the next-gen, created-from-scratch editor that blends well with the new GNOME.
Its good enough for simple text editing. However, Gedit has a plugin ecosystem that gives it more feature.
For those who use it extensively for coding and other stuff, installing Gedit is still an option in Ubuntu.
What about you? Will you stick with the default new text editor or would you go back to the good old Gedit?
--------------------------------------------------------------------------------
via: https://itsfoss.com/install-gedit-ubuntu/
作者:[Abhishek Prakash][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/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/gnome-text-editor/
[2]: https://itsfoss.com/wp-content/uploads/2022/10/text-editor-ubuntu.png
[3]: https://itsfoss.com/wp-content/uploads/2022/10/install-gedit-from-ubuntu-software-center.png
[4]: https://itsfoss.com/wp-content/uploads/2022/10/access-plugins-in-gedit.png
[5]: https://itsfoss.com/wp-content/uploads/2022/10/plugins-in-gedit.png
[6]: https://itsfoss.com/wp-content/uploads/2022/10/additional-plugins-gedit.png
[7]: https://extensions.gnome.org/extension/5237/rounded-window-corners/
[8]: https://itsfoss.com/wp-content/uploads/2022/10/set-gedit-default.png

View File

@ -0,0 +1,140 @@
[#]: subject: "How to Get Started with Shell Scripting in Linux"
[#]: via: "https://www.linuxtechi.com/get-started-shell-scripting-linux/"
[#]: author: "Pradeep Kumar https://www.linuxtechi.com/author/pradeep/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Get Started with Shell Scripting in Linux
======
Hello readers, In this post, we will cover how to get started with shell scripting in Linux or UNIX systems.
##### What is a Shell?
A shell is an interpreter in UNIX/Linux like operating systems. It takes commands typed by the user and calls the operating system to run those commands. In simple terms a shell acts as form of wrapper around the OS. For example , you may use the shell to enter a command to list the files in a directory , such as [ls command][1] , or a command to copy ,such as cp.
```
$ ls Desktop Documents Downloads Music Pictures playbook.yaml Public snap Templates test5 Videos $
```
In this example , when you simply type ls and press enter . The $ is the shell prompt , which tells you the the shell awaits your commands.The remaining lines are the names of the files in the current directory.
##### What is Shell Prompt?
The prompt, $, which is called command prompt, is issued by the shell. While the prompt is displayed, you can type a command. The shell reads your input after you press Enter. It determines the command you want executed by looking at the first word of your input. A word is an unbroken set of characters. Spaces and tabs separate words.
### What are different types of Shells
since there is no monopoly of shells , you are free to run any shell as you wish. Thats all well and good , but choosing a shell without knowing the alternative is not very helpful. Below are lists of shells available in UNIX/Linux.
##### The Bourne Shell
The Original Unix Shell is known as sh , short for shell or the Bourne shell , named for steven Bourne , the creator of sh. This is available on almost all the UNIX like operating system. The Basic bourne shell supports only the most limited command line editing, You can type the Characters,remove characters one at a time with the Backspace key and Press enter to execute the command. If command line gets messed up , you can press Ctrl-C to cancel the whole command.
##### The C Shell
It is desgined by Bill Joy at the university of california at Berkeley , the C shell was so named because much of its syntax parallels that of C programming language. This shell adds some neat features to the Bourne shell,especially the ability to recall previous commands to help create future commands.Because it is very likely you will need to execute more than one command to perform a particular task,this C shell capability is very useful.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'linuxtechi_com-medrectangle-4','ezslot_7',340,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-medrectangle-4-0');
##### The Korn Shell
It is created by David Korn at AT&T Bell laboratories , the korn shell or ksh offers the same kind of enhancements offers by the C Shell , with one important difference: The korn shell is backward compatible with the older Bourne shell Synatx. In UNIX like AIX & HP-UX korn shell is the default shell.
##### Bash (The Bourne Again Shell)
Bash offers command-line editing like the korn shell,file name completion like the C shell and a lot of other advance features. Many Users view bash as having the best of the Korn and C shells in one shell. In Linux and Mac OS X system , bash is the default shell.
##### tcsh ( The T C Shell)
Linux systems popularized the T C shell ot Tcsh. Tcsh extends the traditional csh to add command line editing,file name completion and more. For example , tcsh will complete the file and directory names when you press Tab key(the same key used in bash). The older C shell did not support this feature.
### What is a Shell Script?
A Shell Script is a text file that contains one or more commands. In a shell script, the shell assumes each line of text file holds a separate command. These Commands appear for most parts as if you have typed them in at a shell windows.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[250,250],'linuxtechi_com-box-4','ezslot_8',260,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-box-4-0');
##### Why to use Shell Script ?
Shell scripts are used to automate administrative tasks,encapsulate complex configuration details and get at the full power of the operating system.The ability to combine commands allows you to create new commands ,thereby adding value to your operating system.Furthermore ,combining a shell with graphical desktop environment allows you to get the best of both worlds.
In Linux system admin profile, day to day repeated tasks can be automated using shell script which saves time and allow admins to work on quality work.
##### Creating first shell script
Create a text file in your current  working directory with a name myscript.sh , all the shell scripts have an “.sh” extension. First line of a shell script is either #!/bin/sh or #!/bin/bash , it is known as shebang because # symbol is called hash and ! Symbol is called a bang. Where as /bin/sh & /bin/bash shows that commands to be executed either sh or bash shell.
Below are the content of  myscript.sh
```
#!/bin/bash # Written by LinuxTechi echo echo "Current Working Directory: $(pwd)" echo echo "Today' Date & Time: $(date)" DISK=$(df -Th) echo echo "Disk Space on System:" echo "$DISK"
```
Above shell script will display the current working , todays date & time along with file system disk space. We have used [echo command][2] and other [linux commands][3] to build this script.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'linuxtechi_com-medrectangle-3','ezslot_6',320,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-medrectangle-3-0');
Assign the executable permissions using below [chmod command][4]
```
$ chmod a+x myscript.sh
```
Now execute the script.
```
$ sh myscript.sh or $ ./myscript.sh
```
Note: To execute any shell script available in current directory, use  ./<script-name> as shown below,
output,
##### Taking Input from the user in shell script
Read command is used to take inputs from user via keyboard and assign the value to a variable. echo command is used to display the contents.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[250,250],'linuxtechi_com-banner-1','ezslot_9',360,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-banner-1-0');
Lets modify above script so that it starts taking input,
```
#!/bin/bash # Written by LinuxTechi read -p "Your Name: " NAME echo echo "Today' Date & Time: $(date)" echo read -p "Enter the file system:" DISK echo "$(df -Th $DISK)"
```
Now, try to execute the script this time it should prompt to enter details.
```
$ ./myscript.sh Your Name: Pradeep Kumar Today' Date & Time: Sat 15 Oct 05:32:38 BST 2022 Enter the file system:/mnt/data Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/volgrp01-lv01 ext4 14G 24K 13G 1% /mnt/data $
```
Perfect, above output confirms that scripting is prompting for input and processing data.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[250,250],'linuxtechi_com-large-leaderboard-2','ezslot_11',550,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-large-leaderboard-2-0');
Thats conclude the post. I hope you have found it informative. Kindly do post your queries and feedback in below comments section.
Read Also: [How to Debug a Bash Shell Script in Linux][5]
--------------------------------------------------------------------------------
via: https://www.linuxtechi.com/get-started-shell-scripting-linux/
作者:[Pradeep Kumar][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.linuxtechi.com/author/pradeep/
[b]: https://github.com/lkxed
[1]: https://www.linuxtechi.com/linux-ls-command-examples-beginners/
[2]: https://www.linuxtechi.com/echo-command-examples-in-linux/
[3]: https://www.linuxtechi.com/20-linux-commands-interview-questions-answers/
[4]: https://www.linuxtechi.com/chmod-command-examples-in-linux/
[5]: https://www.linuxtechi.com/debugging-shell-scripts-in-linux/

View File

@ -0,0 +1,221 @@
[#]: subject: "Top 10 Best Linux Distributions in 2022 For Everyone"
[#]: via: "https://www.debugpoint.com/best-linux-distributions-2022/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Top 10 Best Linux Distributions in 2022 For Everyone
======
**We compiled a list of the 10 best Linux distributions for everyone in 2022 based on their stability, attractiveness and time required to configure after installation.**
The Linux Distribution space is heavily fragmented to the point that a new fork is being created almost daily. A very few of them are unique and bring something different to the table. Most of them are just the same Ubuntu or Debian based with a different theme or a wrapper.
The Linux distro landscape is so dynamic that it changes every month. Some Linux distributions become more stable with ever-changing packages and components, while others become unstable in quality. Hence, its challenging to pick and choose the best Linux distribution for your school, work or just casual browsing, watching movies, etc. Not to mention, many Linux distributions are discontinued yearly due to a lack of contributions, cost overruns and other reasons.
That said, we compiled the below 10 best Linux distributions in 2022, which are perfect for any user or use case. That includes casual dual-boot users with Windows 10 or 11, students, teachers, developers, creators, etc. Take a look.
### Best Linux Distributions of 2022
#### 1. Fedora KDE
The first Linux distribution, which I think is the best on this list, is Fedora Linux KDE Edition. The primary reason is that Fedora Linux is very stable with the latest tech, and KDE Plasma is super fast and perfect for all users. Moreover, this Fedora and KDE Plasma combination doesnt require further modification or tweaks after installation. Over the last couple of releases and after the latest [Fedora 36][1] release feedback, Fedora Linux with KDE Plasma has become the go-to distribution for every possible use case and workflow.
In addition, KDE Plasma also brings KDE Applications and goodies, eliminating additional software you need. And with the help of Fedora repo and [RPM Fusion][2], you can blindly trust Fedora Linux with KDE Edition for your daily driver.
[![Fedora KDE Edition - Best Linux Distributions of 2022][3]][4]
On a side note, you can also consider the [Fedora Linux workstation][5] edition with GNOME if you prefer a GNOME-styled desktop. In addition, you might consider other [Fedora Spins][6] or [Fedora Labs][7] if you like a different desktop flavour.
You can download Fedora KDE Edition here. Other downloads with [torrent details][8] are present here.
[Download Fedora][9]
#### 2. KDE Neon
The second distribution we would like to feature in this list is KDE Neon. The KDE Neon is based on the Ubuntu LTS release at its base. But the KDE Framework and KDE Applications with KDE Plasma desktop are the latest from the team. The primary reason for featuring this is that it is perfect for you if you want a Ubuntu LTS base distribution but want the latest KDE Applications. In fact, you can use it for your daily driver for years to come, provided you keep your system up to date.
In contrast, the Kubuntu LTS releases are also perfect. But they may not have the latest KDE Framework or applications.
[![KDE Neon - Best Linux Distributions of 2022][10]][11]
You can download the KDE Neon at the below link. Make sure to choose the user edition while downloading.
[Download KDE Neon][12]
#### 3. Ubuntu LTS Releases with GNOME
The Ubuntu LTS releases (with default GNOME Desktop) are the most used Linux Distribution today. Its the most popular, most downloaded and used by users, enterprises and several real-world needs.
There is no doubt about the Ubuntu LTS versions power and stability. It has been time-tested. With the vast community support, Ubuntu LTS versions with customised GNOME might be the perfect fit for your needs.
Most third-party applications and games primarily target Ubuntu, and you get a much bigger support base than all the distributions in this list. But the recent trends of decisions from Canonical (Ubuntus creator), such as forcing users to adopt Snap and other stuff, may raise a concern for you if you are an advanced user.
But for casual users who want to browse the internet, watch movies, listen to music and do personal work, you can blindly trust Ubuntu LTS versions as your best Linux distribution.
[![Ubuntu LTS with GNOME][13]][14]
Finally, you can download Ubuntu 22.04 LTS (the current one) using the below link.
[Download Ubuntu][15]
#### 4. Linux Mint Cinnamon
One of the Linux distributions that “just works” out-of-the-box in “any” type of hardware. The [Linux Mint][16] is fourth on this list. The above three distributions (Fedora, Ubuntu LTS) may not work well in older hardware (PC or Laptop) having low memory and older CPU. But Linux Mint is perfect in those use cases with its unique ability to make everyone welcome.
Furthermore, with Linux Mint, you do not need to install any additional applications after a fresh install. It comes with every possible driver and utility for all use cases. For example, your printer, webcam, and Bluetooth would work in Linux Mint.
In addition, if you are new to Linux or Windows users who plan to migrate, then it is a perfect distribution to start. Its legacy menu-driven Cinnamon desktop is one of the best open-source desktops today.
[![Linux Mint Cinnamon Edition][17]][18]
If you ever get confused or have no time to choose which distribution is best for you, choose the Linux Mint Cinnamon edition. With that said, you can download Linux Mint using the below link.
[Download Linux Mint][19]
#### 5. Pop OS
The Pop OS is developed by American computer manufacturer System76 for their hardware lineup. But it is one of the famous and emerging Linux distributions based on Ubuntu. The Pop OS is primarily known to have perfect for modern hardware (including NVIDIA graphics) and brings some unique features absent in the traditional Ubuntu with GNOME desktop.
For example, you get a well-designed COSMIC desktop with Pop OS (which is currently being written with Rust), a built-in tiling feature, well-optimized power controls, and a stunning Pop Shop. The Pop Shop is a software store designed by its maker to give you a well-categorized set of applications for your study, learning, development, gaming, etc. This distribution is also perfect for gaming if you plan to start your Linux journey with gaming in mind.
In addition, if you want a professional-grade Linux distribution with official help and support, you should check out actual System76 hardware with Pop OS.
[![Pop OS - Best Linux Distributions of 2022][20]][21]
However, you can download the Pop OS for various hardware for free using the link below.
[Download Pop OS][22]
#### 6. MX Linux
MX Linux is a well-designed Linux distribution primarily targeted at older hardware with productivity and stability in mind. Its an emerging Linux distribution that is free from systemd and uses the init system. Based on the Debian Stable branch, it brings Xfce Desktop, KDE Plasma desktop and Fluxbox with its own powerful MX utilities.
You can use MX Linux for all of your needs. But I would not recommend it for gaming or development work. If you need a stable Linux distribution for your older hardware, free from systemd, you can choose MX Linux. Especially the Fluxbox edition.
[![MX Linux][23]][24]
You can download MX Linux from its official website below.
[Download MX Linux][25]
#### 7. Endeavour OS
If you like the concept of “Rolling release”, which gives you all the latest packages and operating system components, Arch Linux is perhaps the best you can have. However, installing Arch Linux might be tricky for new users, although the recent [archinstall][26] does a pretty job.
However, EndeavourOS is a perfect Arch Linux-based distribution which features Xfce, KDE Plasma and other popular desktops out of the box. Armed with the Calamares installer, it is super easy to install Endeavour OS.
However, this might not be the best Linux distribution for beginners. But it is the best one for little advanced users who are already familiar with Linux.
On the brighter side, you get to say, “btw, I use Arch”.
[![EndeavourOS - Best Linux Distributions of 2022][27]][28]
Last but not least, EndeavourOS has excellent community support, and its Telegram channel support is the best in my personal experience. So, if you ever get stuck, help is just a message away.
Download this excellent and emerging Linux distribution using the link below.
[Download Endeavour OS][29]
#### 8. Zorin OS
Zorin OS is a Linux distribution based on Ubuntu Linux and is best for those who want nice looks, power, stability, and a productive system. In this Linux distribution, the default desktop is a blend of Xfce and GNOME 3, heavily customised. One of the advantages of Zorin is it comes with ready-made themes. With those themes, you can make Zorin OS look like Windows and macOS with just one click.
This helps the new users easily migrate to Linux and use Zorin for their day-to-day work.
[![Zorin OS - Best Linux Distributions of 2022][30]][31]
Additionally, Zorin OS maintains three editions Pro, Lite and Core, which cater to different user bases. The Pro edition is a paid version with additional themes and tweaks for a minimal fee.
You can download Zorin OS from the below link.
[Download Zorin OS][32]
#### 9. Debian with Xfce
There are many Linux distributions which are based on Debian. But I have included vanilla Debian in this list because of its excellent stability and power. Debian termed a “Universal Operating System”, is perfect for moderately experienced users of Linux. But if you can set up a daily driver with Debian Stable with Xfce, you can run it for years without reformating or reinstalling for fear of breaking your system.
Debian package repo contains all possible packages, which gives you the ultimate flexibility to set up any custom system you want.
![Debian with Xfce Desktop][33]
A perfect Linux distribution if you know how to set up a Debian box with some experience. You can download and install Debian after choosing the proper installer for your system here. Debian comes with an installer for several architectures. You may [read our guide][34]if you are confused about which one to choose and how to install it.
[Download Debian][35]
#### 10. Ubuntu Studio
The final best Linux distribution we feature in this list is Ubuntu Studio. Ubuntu Studio is an official Ubuntu Linux distribution specially curated for Multimedia production type of work.
Ubuntu Studio comes with the low-latency mainline Linux Kernel to give additional advantages to multiple operations. In addition, Ubuntu Studio brings its native “Ubuntu Studio Controls”, which provides creators with several options to tweak CPU settings for heavy CPU-intensive rendering and processing.
[![Ubuntu Studio 22.04 LTS Desktop][36]][37]
Moreover, a massive list of free and open-source audio, graphics, and video applications is pre-loaded into the ISO, saving time if you plan to build a multimedia workstation.
Ubuntu Studio is powered by the KDE Plasma desktop, the perfect Linux distribution for all creators worldwide.
You can download Ubuntu Studio from the below link.
[Download Ubuntu Studio][38]
### Closing Notes
I hope this list of “curated and best Linux distributions” helps you pick one for yourself, your friends and co-workers. These are based on their current status (active project), prospects (i.e. it has a well-defined vision for the future) and how easy to set up and out-of-the-box experience.
Finally, which Linux distribution should you think should be in the top 10? Let me know in the comment box below.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/best-linux-distributions-2022/
作者:[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/2022/02/fedora-36/
[2]: https://www.debugpoint.com/2020/07/enable-rpm-fusion-fedora-rhel-centos/
[3]: https://www.debugpoint.com/wp-content/uploads/2022/05/Fedora-KDE-Edition-1024x640.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2022/05/Fedora-KDE-Edition.jpg
[5]: https://getfedora.org/en/workstation/download/
[6]: https://spins.fedoraproject.org/
[7]: https://labs.fedoraproject.org/
[8]: https://torrent.fedoraproject.org/
[9]: https://spins.fedoraproject.org/kde/download/index.html
[10]: https://www.debugpoint.com/wp-content/uploads/2022/05/KDE-Neon-1024x578.jpg
[11]: https://www.debugpoint.com/wp-content/uploads/2022/05/KDE-Neon.jpg
[12]: https://neon.kde.org/download
[13]: https://www.debugpoint.com/wp-content/uploads/2022/05/Ubuntu-LTS-with-GNOME-1024x575.jpg
[14]: https://www.debugpoint.com/wp-content/uploads/2022/05/Ubuntu-LTS-with-GNOME.jpg
[15]: https://ubuntu.com/download/desktop
[16]: https://www.debugpoint.com/linux-mint/
[17]: https://www.debugpoint.com/wp-content/uploads/2022/05/Linux-Mint-Cinnamon-Edition-1024x576.jpg
[18]: https://www.debugpoint.com/wp-content/uploads/2022/05/Linux-Mint-Cinnamon-Edition.jpg
[19]: https://linuxmint.com/download.php
[20]: https://www.debugpoint.com/wp-content/uploads/2022/05/Pop-OS-1024x577.jpg
[21]: https://www.debugpoint.com/wp-content/uploads/2022/05/Pop-OS.jpg
[22]: https://pop.system76.com/
[23]: https://www.debugpoint.com/wp-content/uploads/2022/05/MX-Linux-1024x522.jpg
[24]: https://www.debugpoint.com/wp-content/uploads/2022/05/MX-Linux.jpg
[25]: https://mxlinux.org/download-links/
[26]: https://www.debugpoint.com/2022/01/archinstall-guide/
[27]: https://www.debugpoint.com/wp-content/uploads/2022/05/EndeavourOS-1024x574.jpg
[28]: https://www.debugpoint.com/wp-content/uploads/2022/05/EndeavourOS.jpg
[29]: https://endeavouros.com/download/
[30]: https://www.debugpoint.com/wp-content/uploads/2022/05/Zorin-OS-1024x575.jpg
[31]: https://www.debugpoint.com/wp-content/uploads/2022/05/Zorin-OS.jpg
[32]: https://zorin.com/os/download/
[33]: https://www.debugpoint.com/wp-content/uploads/2022/05/Debian-with-Xfce-Desktop.jpg
[34]: https://www.debugpoint.com/2021/01/install-debian-buster/
[35]: https://www.debian.org/distrib/
[36]: https://www.debugpoint.com/wp-content/uploads/2022/04/Ubuntu-Studio-22.04-LTS-Desktop-1024x631.jpg
[37]: https://www.debugpoint.com/wp-content/uploads/2022/04/Ubuntu-Studio-22.04-LTS-Desktop.jpg
[38]: https://ubuntustudio.org/download/

View File

@ -0,0 +1,115 @@
[#]: subject: "How to Update or Upgrade Ubuntu Offline without Internet"
[#]: via: "https://www.debugpoint.com/how-to-update-or-upgrade-ubuntu-offline-without-internet/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Update or Upgrade Ubuntu Offline without Internet
======
**This guide explains the steps to update Ubuntu offline without an active internet connection.**
There are many situations where you may need to update your Ubuntu installation without an internet connection. You may be staying remotely or have a set of network Ubuntu systems that are not connected to the internet. In any case, keeping your system updated with the latest packages is always required.
Of course, updating any system while connected to the internet is always recommended.
But sometimes, it is not possible for security reasons also. Connecting to the internet may bring additional hardening steps for your systems to protect them from hackers and malware.
The following method using [apt-offline][1] helps to fix those use cases and outlines the steps to update your Ubuntu offline without the internet.
### Pre-requisite
- You need to have access to a Ubuntu system that has an internet connection (e.g. your friends, cafe, or lab system)
- A USB pen drive to hold the packages
- Install the apt-offline package in both the systems a) the offline system and b) the system with an internet connection.
### Install apt-offline
both systems
You can install the `apt-offline` using the following command. Remember, you have to get it installed in .
```
sudo apt install apt-offline
```
In case you need the `apt-offline` to be installed in the target system, you can download the deb package from the below link and copy it to the target system via a USB stick. Then run the below command to install.
The download link for Ubuntu 22.04 LTS and other versions is present below. You can choose a mirror and download the deb file.
[download .deb files apt-offline][2]
```
sudo dpkg -i name_of_package.deb
```
### Update Ubuntu offline: Steps
Open a terminal in the offline Ubuntu system and create a signature file using the following command in your home directory.
```
sudo apt-offline set ~/offline-data.sig
```
[![Create the sig file][3]][4]
This creates a file containing the required package paths and details for download.
[![sig file contents][5]][6]
Copy this .sig file to a USB and take it to a Ubuntu system with internet access.
Create a directory (see example below) to hold the downloaded packages in the Ubuntu system with an internet connection.
Open a terminal and run the following command to download the required packages. Remember to change the download directory and .sig file path as per your system.
```
apt-offline get -d ~/offline-data-dir offline-data.sig
```
[![Download the packages to install offline][7]][8]
offline Ubuntu system
You should see the files are downloaded properly. Now copy the entire downloaded directory to the USB drive and plug it into the .
Then run the following command to install the downloaded packages to the offline system. Change the directory path as per your system.
```
sudo apt-offline install offline-data-dir/
```
[![Installing packages - offline update ubuntu][9]][10]
The update should run smoothly if all goes well, and you should have an updated Ubuntu system.
You must repeat the steps above to keep your Ubuntu system up-to-date offline whenever you need to update.
I hope this guide helps you to update your Ubuntu system in an offline mode. If you face any trouble, let me know in the comment box below.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/how-to-update-or-upgrade-ubuntu-offline-without-internet/
作者:[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://github.com/rickysarraf/apt-offline
[2]: https://packages.ubuntu.com/focal/all/apt-offline/download
[3]: https://www.debugpoint.com/wp-content/uploads/2021/03/Create-the-sig-file-1024x204.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2021/03/Create-the-sig-file.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2021/03/sig-file-contents-1024x250.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2021/03/sig-file-contents.jpg
[7]: https://www.debugpoint.com/wp-content/uploads/2021/03/Download-the-packages-to-install-offline-1024x437.jpg
[8]: https://www.debugpoint.com/wp-content/uploads/2021/03/Download-the-packages-to-install-offline.jpg
[9]: https://www.debugpoint.com/wp-content/uploads/2021/03/Installing-packages-offline-update-ubuntu-1024x509.jpg
[10]: https://www.debugpoint.com/wp-content/uploads/2021/03/Installing-packages-offline-update-ubuntu.jpg

View File

@ -0,0 +1,122 @@
[#]: subject: "Why you should consider Rexx for scripting"
[#]: via: "https://opensource.com/article/22/10/rexx-scripting-language"
[#]: author: "Howard Fosdick https://opensource.com/users/howtech"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Why you should consider Rexx for scripting
======
How do you design a programming language to be powerful yet still easy to use? Rexx offers one example. This article describes how Rexx reconciles these two seemingly contradictory goals.
### History of Rexx programming language
Several decades ago, computers were shifting from batch to interactive processing. Developers required a scripting or "glue" language to tie systems together. The tool needed to do everything from supporting application development to issuing operating system commands to functioning as a macro language.
Mike Cowlishaw, IBM Fellow, created a solution in a language he named Rexx. It is widely considered the first general-purpose scripting language.
Rexx was so easy to use and powerful that it quickly permeated all of IBM's software. Today, Rexx is the bundled scripting language on all of IBM's commercial operating systems (z/OS, z/VM, z/VSE, and IBM i). It's no surprise that in the 1990s, IBM bundled Rexx with PC-DOS and then OS/2. Rexx popped up in Windows in the XP Resource Kit (before Microsoft decided to lock in customers with its proprietary scripting languages, VBScript and PowerShell). Rexx also emerged as the scripting language for the popular Amiga PC.
### Open source Rexx
With Rexx spreading across platforms, standardization was needed. The American National Standards Institute (ANSI) stepped forward in 1996.
That opened the floodgates. Open source Rexx interpreters started appearing. Today, more than a half dozen interpreters run on every imaginable platform and operating system, along with many open source tools.
Two Rexx variants deserve mention. _Open Object Rexx_ is a compatible superset of procedural or "classic" Rexx. _ooRexx_ is message-based and provides all the classes, objects, and methods one could hope for. For example, it supports multiple inheritance and mixin classes.
Paralleling the rise in Java's popularity, Mike Cowlishaw invented _NetRexx_. NetRexx is a Rexx variant that fully integrates with everything Java (including its object model) and runs on the Java virtual machine.
ooRexx went open source in 2004; NetRexx in 2011. Today the [Rexx Language Association][1] enhances and supports both products. The RexxLA also supports _Regina_, the most popular classic Rexx interpreter, and _BSF4ooRexx_, a tool that fully integrates ooRexx with Java. Everything Rexx is open source.
### Layered design
So, back to the initial conundrum. How does a programming language combine power with ease of use?
One part of the solution is a _layered architecture_. Operators and a minimal set of instructions form the core of the classic Rexx language:
![Rexx layered design][2]
Image by:
(Howard Fosdick, CC BY-SA 4.0)
Surrounding the core are the language's 70-odd built-in functions:
- Arithmetic
- Comparison
- Conversion
- Formatting
- String manipulation
- Miscellaneous
Additional power is added in the form of _external function libraries_. You can invoke external functions from within Rexx programs as if they were built in. Simply make them accessible by proper reference at the top of your script.
Function libraries are available for everything: GUIs, databases, web services, OS services, system commands, graphics, access methods, advanced math, display control, and more. The result is a highly-capable open source ecosystem.
Finally, recall that Open Object Rexx is a superset of classic Rexx. So you could use procedural Rexx and then transition your skills and code to object programming by moving to ooRexx. In a sense, ooRexx is yet another Rexx extension, this time into object-oriented programming.
### Rexx is human-oriented language
Rexx glues all its instructions, functions, and external libraries together in a consistent, dead-simple syntax. It doesn't rely on special characters, arcane syntax, or reserved words. It's case-insensitive and free-form.
This approach shifts the burden of programming from programmer to machine to the greatest degree possible. The result is a comparatively easy language to learn, code, remember, and maintain. Rexx is intended as a human-oriented language.
Rexx implements the _principle of least astonishment_, the idea that systems should work in ways that people assume or expect. For example, Rexx's default decimal arithmetic—with precision you control—means you aren't surprised by rounding errors.
Another example: All variables contain strings. If the strings represent valid numbers, one can perform arithmetic operations with them. This simple concept of dynamic typing makes all data visible and simplifies tracing and debugging.
Rexx capitalizes on the advantages of interpreters to simplify program development. Tracing facilities allow developers to direct and witness program execution in various ways. For example, one can single-step through code, inspect variable values, change them during execution, and more.
Rexx also raises common error conditions that the programmer can easily trap. This feature makes for more standardized, reliable code.
### Arrays
Rexx's approach to arrays (or tables) is a good example of how it combines simplicity with power.
Like all Rexx variables, you don't have to declare them in advance. They automatically expand to the size of available memory. This feature relieves programmers of the burden of memory management.
To form an array, a so-called _compound variable_ stitches together a _stem variable_ with one or more _subscripts_, as in these examples:
```
my_array.1
my_table.i.j
my_list.index_value
my_list.string_value
my_tree.branch_one
my_tree.branch_one.branch_two
```
Subscripts can represent numeric values, as you may be accustomed to in standard table processing.
Alternatively, they can contain strings. String subscripts allow you to build _associative arrays_ using the same simple syntax as common tables. Some refer to associative arrays as _key-value pairs_ or _content addressable memory_. Allowing array contents to be accessed by arbitrary strings rather than simply numeric values opens up an entirely new world of algorithmic solutions.
With this flexible but consistent syntax, you can build almost any data structure: Lists, two- or three- or n-dimensional tables, key-value pairs, balanced trees, unbalanced trees, dense tables, sparse tables, records, rows, and more.
The beauty is in simplicity. It's all based on the notion of compound variables.
### Wrap up
In the future, I'll walk through some Rexx program examples. One real-world example will show how a short script using associative arrays reduced the runtime of a legacy program from several hours down to less than a minute.
You can join the Rexx Language Association for free. For free Rexx downloads, tools, tutorials, and more, visit [RexxInfo.org][3].
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/rexx-scripting-language
作者:[Howard Fosdick][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/howtech
[b]: https://github.com/lkxed
[1]: http://www.RexxLA.org
[2]: https://opensource.com/sites/default/files/2022-10/rexx_layered_design.jpg
[3]: http://www.RexxInfo.org

View File

@ -0,0 +1,216 @@
[#]: subject: "Setup Docker And Docker Compose With DockSTARTer"
[#]: via: "https://ostechnix.com/setup-docker-and-docker-compose-with-dockstarter/"
[#]: author: "sk https://ostechnix.com/author/sk/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Setup Docker And Docker Compose With DockSTARTer
======
This guide explains **what is DockSTARTer**, how to **install DockSTARTer in Linux** and how to **setup Docker and Docker compose using DockSTARTer** to run containerized applications in Linux.
### What is DockSTARTer?
**DockSTARTer** is a TUI-based utility to easily install Docker and Docker compose in Linux and Unix systems. The main goal of DockSTARTer is to make it quick and easy to get up and running with Docker.
DockSTARTer has both TUI and CLI interfaces. So you can use either of these interfaces to quickly deploy multiple containerized apps in a single docker environment.
Please note that DockSTARTer is not a ready-made set of apps that run out of the box. You still need to choose what to run and how to run.
It also doesn't configure apps and storage for you. You may need to configure the settings of the apps and the storage manually by yourself.
As of writing this, we can run more than 100 docker apps using DockSTARter. Some of the popular apps are Adguard, Bitwarden, CloudFlare DDNS, Duplicacy, Emby, File Browser, Glances, Heimdall, InfluxDB, Jellyfin, Kiwix-serve, Lidarr, Minecraft Server, Nextcloud, openLDAP, Speedtest, Pihole, qBittorent, Rsnapshot, Syncthing, Time Machine, Uptimne Kuma, Vsftpd, Wireguard, youtubedl and a lot more.
DockSTARTer is free and opensource shell script. The source code of DockSTARTer is hosted in GitHub.
### Install DockSTARTer in Linux
DockSTARter can be installed in popular Linux operating systems.
To install DockSTARTer in Arch Linux and its variants such as EndeavourOS, and Manjaro Linux, run the following commands:
```
$ sudo pacman -S curl docker git
```
```
$ bash -c "$(curl -fsSL https://get.dockstarter.com)"
```
```
$ sudo reboot
```
To install DockSTARTer in Debian, Ubuntu, Linux Mint, Pop OS, run:
```
$ sudo apt install curl git
```
```
$ bash -c "$(curl -fsSL https://get.dockstarter.com)"
```
```
$ sudo reboot
```
To install DockSTARTer in Fedora, RHEL, CentOS, AlmaLinux and Rocky Linux, run:
```
$ sudo dnf install curl git
```
```
$ bash -c "$(curl -fsSL https://get.dockstarter.com)"
```
```
$ sudo reboot
```
### Use DockSTARTer to setup Docker and Docker Compose
DockSTARTer allows you to install and configure various apps in Docker.
To run DockSTARTer for the first time, enter the following command:
```
$ ds
```
Choose "Configuration" from the main menu and press ENTER:
And then select "Full setup".
Choose which apps you would like to install. By default, Watchtower app is selected. Use UP and DOWN arrow keys to navigate to app list and press SPACEBAR to select or deselect apps.
Now, DockSTARTer will display the default settings of the selected apps. If you would like to keep these settings for the apps, choose "Yes" and hit ENTER. Or choose "No" and change the settings as you want.
If you like to keep the default settings for VPN, choose "Yes" or choose "No" to change the settings as you please.
Now you will see the global settings for DockSTARTer. Review the global settings such as docker config directory, docker storage directory, docker hostname and time zone etc. If you're OK with the default settings, simply choose "Yes" and hit ENTER. If you want to change these settings, select "No". I want to change the storage directory, hostname and time zone, so I choose "No".
If you chose "No" in the previous wizard, you will be prompted to set docker config directory. There will be 2 choices given. You can either choose to keep the currently selected directory or enter a new one by selecting "Enter New" option. I am going to keep the currently selected directory.
Choose "yes" to set appropriate permissions on the docker configuration directory.
In this step, you need to set a directory for Docker storage. By default, DockSTARTer will create a directory called "storage" in your $HOME directory. If you want to keep the default storage directory, choose "Keep Current". Or choose "Enter New".
Enter the path to your Docker storage directory and hit ENTER. If the directory doesn't exist, DockSTARTer will attempt to create it.
Set the hostname for your Docker system. DockSTARTer recommends system detected values. Here, I am going to choose "Use System" option's setting for my Docker hostname.
Set the user's group ID (PGID). If you're unsure, simply go with the **"Use System"** option.
Set your user account ID (PUID). If you're unsure, simply go with the **"Use System"** option.
Set your system timezone. The system detected values, so just choose "Use System" option and hit ENTER.
Next, you will prompted if you would you like to run compose. Choose "Yes" to do so.
This will pull the Docker images that you choose to install in one the previous steps.
Finally, you will an output something like below after the Docker compose installed all selected apps.
```
[...] 2022-10-18 14:24:30 [WARN ] /home/ostechnix/.docker/compose/.env not found. Copying example template. 2022-10-18 14:24:30 [WARN ] Please verify that ~ is not used in /home/ostechnix/.docker/compose/.env file. 2022-10-18 14:24:30 [NOTICE] Preparing app menu. Please be patient, this can take a while. 2022-10-18 14:36:51 [NOTICE] /home/ostechnix/.docker/compose/.env does not contain any disabled apps. 2022-10-18 14:36:51 [NOTICE] Creating environment variables for enabled apps. Please be patient, this can take a while. 2022-10-18 15:55:29 [NOTICE] Creating environment variables for enabled apps. Please be patient, this can take a while. 2022-10-18 15:55:29 [NOTICE] Adding compose configurations for enabled apps. Please be patient, this can take a while. [+] Running 4/4 ⠿ watchtower Pulled 6.1s ⠿ 1045b2f97fda Pull complete 1.0s ⠿ 35a104a262d3 Pull complete 1.2s ⠿ 1a0671483169 Pull complete 3.1s [+] Running 2/2 ⠿ Network compose_default Created 0.0s ⠿ Container watchtower Started
```
That's it. You can view the list of running Docker containers using command:
```
$ docker ps
```
**Sample output:**
```
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9d3c34dc918f ghcr.io/containrrr/watchtower "/watchtower" 5 minutes ago Up 5 minutes 8080/tcp watchtower
```
### Install new Apps
To install the other apps, just restart DockSTARTer again using the following command:
```
$ ds
```
Select "Configuration" and then "Select Apps".
You will see the list of available apps in the next screen. Just select the app you want to run and follow the on-screen instructions.
### Remove Apps
Removing apps is same as adding new apps.
First, make sure the container app is stopped.
```
$ sudo docker stop <container-id>
```
Start DockeSTARTer, go to **Configuration -> Select Apps** and **uncheck** the apps that you want to remove and choose OK to remove the apps.
### Update DockSTARTer
To update DockSTARTer, simply start it using **"`ds`"** command from the Terminal and then choose "Update DockSTARTer" option.
You can also do it from the commandline by running:
```
$ sudo ds -u
```
### Prune Docker system
To remove all unused containers, networks, volumes, images and build cache, start DockSTARTer and then choose **"Prune Docker System"** option.
You can prune your Docker system from commandline by running the following command as well.
```
$ sudo ds -p
```
**Sample output:**
```
Deleted Containers: 9d3c34dc918fafa62d0e35283be4cbee46280a30dcd59b1aaa8b5fff1e4a085d Deleted Networks: compose_default Deleted Images: untagged: ghcr.io/containrrr/watchtower:latest untagged: ghcr.io/containrrr/watchtower@sha256:bbf9794a691b59ed2ed3089fec53844f14ada249ee5e372ff0e595b73f4e9ab3 deleted: sha256:333de6ea525af9137e1f14a5c1bfaa2e730adca97ab97f74d738dfa99967f14f deleted: sha256:f493af3d0a518d307b430e267571c926557c85222217a8707c52d1cf30e3577e deleted: sha256:62651dc7e144aa8c238c2c2997fc499cd813468fbdc491b478332476f99af159 deleted: sha256:83fe5af458237288fe7143a57f8485b78691032c8c8c30647f8a12b093d29343 Total reclaimed space: 16.92MB
```
### Change variables
You can adjust variables for running Docker containers at any time.
Start DockSTARTer by running **"`ds`"** command and choose "Configuration", and then choose the following settings:
- "Set App Variables" option for adjusting variables for all enabled apps,
- "Set VPN Variables" option for adjusting VPN specific variables,
- "Set Global Variables" option for adjusting global variables.
### Conclusion
DockSTARTer has made the process of running Docker apps much easier! DockSTARTer also has CLI interface, but you can quickly deploy Docker containers without memorizing any commands via the its Text-based interface.
**Resource:**
- **[DockSTARTer Website][1]**
--------------------------------------------------------------------------------
via: https://ostechnix.com/setup-docker-and-docker-compose-with-dockstarter/
作者:[sk][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://ostechnix.com/author/sk/
[b]: https://github.com/lkxed
[1]: https://dockstarter.com/

View File

@ -0,0 +1,283 @@
[#]: subject: "Give Your Linux Desktop a Halloween Makeover"
[#]: via: "https://itsfoss.com/linux-halloween-makeover/"
[#]: author: "Sreenath https://itsfoss.com/author/sreenath/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Give Your Linux Desktop a Halloween Makeover
======
Halloween is around the corner. Boo!
Of course, there are ways to celebrate Halloween, and I believe you might have a few ideas of your own. How about giving your Linux desktop a spooky, dark makeover? Something like the screenshot below?
![ubuntu halloween theming final looks][1]
Customization is a high point of Linux, and there is no end to it. Earlier, we showed you[how to make your Linux look like macOS][2]. Today, Ill share a few tips to keep up with the Halloween spirit.
This is possible with a combination of themes, icons, extensions, fonts, conky, etc. **_While you can do these things on any distribution and desktop environment, its not feasible for me to show them all in a single tutorial._**
Here, I have used Ubuntu with the GNOME desktop environment.
### Getting all the tools
You need several packages and tools. Make sure you have them all (or most of them) before you start the customization.
_Its not mandatory to make all of the changes. But the more you do, the better look and feel you get._
**GNOME Tweaks and GMOME Extensions manager**
Get the Tweaks tool and the extension manager with this command:
```
`sudo apt install gnome-tweaks gnome-extension-manager`
```
In KDE-based systems, you dont any tweak tool to change the look. But surely, you will need the **Kvantum-Manager** app that I discussed in the [KDE theming][3] guide.
**Conky**
This is actually optional. Since the conky-manager project is not receiving any maintenance, it will be a bit tricky to use conky. But anyway, lets use it for the additional look-and-feel.
```
`sudo apt install conky-all`
```
**Neofetch or shell color scripts**
This step is also a personal choice. You can choose [neofetch][4] because its already available in the repository and can be used easily.
```
`sudo apt install neofetch`
```
[Shell-color scripts][5] are another excellent choice. The package is available in AUR and Arch Linux users can install it from there. In Ubuntu, you need to install it manually.
```
`git clone https://gitlab.com/dwt1/shell-color-scripts.git cd shell-color-scripts sudo make install`
```
**Themes, icons, fonts, and wallpaper**
I am using [Sweet][6] theme, [Beautiline][7] icon pack, [simple1e][8] cursors, and [Grey-Minimalistic][9] conky theme. Once downloaded, extract them. You should also get [Creepster][10] font.
Download a [spooky wallpaper][11] from the internet.
Alert! Youll be doing a lot of customization and change. You can go back to the usual look by reverting all the changes you made. An easier way out would be to create a new user with admin access and make all these changes with this new user. This way, your original user account and appearance doesnt get impacted. When Halloween is over, you can delete this additional user.
With all resources in hand, its time to utilize them.
### Install and use the extensions
Open the gnome-extensions app. In Ubuntu 22.04, you can install extensions from within the app, by using the browse section.
![install gnome shell extensions user themes blur my shell and dash to dock][12]
In other versions of Ubuntu and other GNOME distributions, you can [install shell extensions][13] through the browser. For our purpose, install the following extensions :
- [User Themes][14]
- [Dash to Dock][15]
- [Blur my Shell][16]
Also, make sure that all the extensions are enabled.
### Apply theme, icon, and font
You need to copy and paste the extracted theme folder to `~/.themes` directory and icon and cursor folder to the `~/.icons` directory.
Now open GNOME tweaks and apply the settings as shown in the screenshot below.
![set themes with gnome tweaks][17]
To use a [custom font in Ubuntu][18], right-click on the font file that you have downloaded and extracted and select open with Font manager. I am using [Creepster][10] font.
![right click on font file and select open with fonts][19]
Here, press the install button.
![install font using font manager application][20]
Note: In some systems, pressing the install button wont show the “installed” prompt. In that case, you can just close the app because once you press the install button, it has been installed.
Now open the Tweaks app and move to the fonts section. Here, you can change the fonts of various sections as shown in the screenshot below.
![change system fonts using gnome tweaks][21]
Note that, for terminals, a monospace font is required. Here, I am using a regular font and thus it may give you a slightly disoriented look sometimes.
### Apply Dash to Dock Extension settings
First, you need to **turn off the Ubuntu Dock extension** using the GNOME Extensions application.
![Disable Ubuntu Dock][22]
Run the Dash to Dock extension if its not running already.
Now, right-click on the dash to dock application button appearing on the bottom and select dash to dock settings.
![select dash to dock settings][23]
Here, you need to tweak some small things.
First, reduce the icon size using the respective slider.
![setting dash to dock icon size][24]
After that, you need to reduce the opacity of the dock. I prefer a fully transparent dock.
For this, set the opacity to **fixed** and reduce it to zero with the slider, as shown in the screenshot below.
![opacity setting for dash to dock][25]
### GNOME terminal setting
The main tweak you want to get is a custom neofetch look (or a shell color script) with some blurred transparency.
On applying monospace font in GNOME-tweaks earlier, the font in the GNOME terminal is also changed.
First, create a new profile from **preferences**.
![select preferences from hamburger menu][26]
Here, Click + sign to create a new profile. Type in a name and press **create** as shown below:
![create new profile in gnome terminal][27]
Inside the new profile, change the transparency setting and set it around the middle, as shown in the screenshot:
![set transperancy to gnome terminal][28]
Once finished, set this profile as the default. To do this, click on the triangle button associated with the new profile and select **Set as Default**.
![set new profile as default in gnome terminal][29]
#### Setting blur effect
The above step will only create a transparent shell. But if you need a blur effect, which is good for better visibility, you need to go to the Blur my Shell extension settings.
![blur my shell extension settings][30]
Here, go to the **Application** tab. Now, ensure that the terminal is opened and placed conveniently on the desktop. Click on **Add Window** button and select gnome-terminal window, to set the blur effect. Note: This feature is in beta so expect minor glitches.
![applying blur effect to selected windows][31]
This same procedure can be repeated for other apps also, like the Nautilus file manager.
#### Customizing Neofetch
One of the best features of neofetch is its customizability. You can tweak the look with a wide range of methods. For Halloween, I choose a pumpkin image to appear in place of the distro logo.
Neofetch supports adding custom images in a variety of formats. For that purpose, there are a variety of backends supported. Here, I use the jp2a backend, which will use an [ASCII converted image][32].
```
`neofetch --jp2a /path/to/your/image/file.png`
```
![neofetch with custom backend][33]
The above code will create a neofetch instance with the custom image. You can write this code to your .bashrc file, for permanent placement.
_**Unfortunately, this didnt work on my Wayland instance.**_
#### Customizing Shell Color Scripts
If you installed shell color scripts, you have a variety of shell scripts. To list the available scripts, use:
```
``colorscript -l``
```
![ghosts shell color script][34]
You can either get a random script each time by placing `colorscript random` in your .bashrc file. Or you can get any particular script by placing `colorscript -e <name>`
### Setting up Conky
I am using the [Grey-Minimalistic conky theme][9] from Deviantart. Each type of conky theme has a different installation method. So if you are using another conky file, follow its setup method, described in its README files.
Extract the conky theme file. Inside, we have several folders. First, you need to install the associated icons and fonts. That is, install the given font using font-manager. Copy and paste the icon folder to your ~/.icons folder.
![copy and paste conky files to home directory][35]
Now, go to the conky folder. Make sure that, you have [enabled viewing hidden files][36]. Now copy the `.conkyrc` file and `.conky-vision-icons` file to your Home directory, as shown above.
Now start conky to get a look like this.
![conky theme applied][37]
Add the conky to the [list of startup applications][38] so that it starts automatically at each boot.
![add conky to the list of startup applications][39]
### Change wallpaper
You are almost there. The only thing you need to do now is to [change the background wallpaper][40]. You have already downloaded the spooky wallpapers I believe.
![set image as wallpaper from nautilus][41]
### Behold the final look!
If you followed most of the steps above, you should get a desktop that looks like the one in the below screenshots.
![ubuntu halloween theme final look][42]
Is it scary enough for Halloween? What do you think? Let me know in the comments.
--------------------------------------------------------------------------------
via: https://itsfoss.com/linux-halloween-makeover/
作者:[Sreenath][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/sreenath/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/wp-content/uploads/2022/10/ubuntu-halloween-theming-final-looks.jpg
[2]: https://itsfoss.com/make-ubuntu-look-like-macos/
[3]: https://itsfoss.com/properly-theme-kde-plasma/
[4]: https://itsfoss.com/using-neofetch/
[5]: https://gitlab.com/dwt1/shell-color-scripts
[6]: https://www.gnome-look.org/p/1253385
[7]: https://www.gnome-look.org/p/1425426
[8]: https://www.gnome-look.org/p/1405210
[9]: https://www.deviantart.com/bryantlloyd/art/Grey-Minimalistic-634726564
[10]: https://fonts.google.com/specimen/Creepster?query=creepster
[11]: https://www.wallpaperflare.com/search?wallpaper=spooky
[12]: https://itsfoss.com/wp-content/uploads/2022/10/install-gnome-shell-extensions-user-themes-blur-my-shell-and-dash-to-dock.png
[13]: https://itsfoss.com/gnome-shell-extensions/
[14]: https://extensions.gnome.org/extension/19/user-themes/
[15]: https://extensions.gnome.org/extension/307/dash-to-dock/
[16]: https://extensions.gnome.org/extension/3193/blur-my-shell/
[17]: https://itsfoss.com/wp-content/uploads/2022/10/set-themes-with-gnome-tweaks.png
[18]: https://itsfoss.com/install-fonts-ubuntu/
[19]: https://itsfoss.com/wp-content/uploads/2022/10/right-click-on-font-file-and-select-open-with-fonts.png
[20]: https://itsfoss.com/wp-content/uploads/2022/10/install-font-using-font-manager-application.png
[21]: https://itsfoss.com/wp-content/uploads/2022/10/change-system-fonts-using-gnome-tweaks.png
[22]: https://itsfoss.com/wp-content/uploads/2020/06/disable-ubuntu-dock.png
[23]: https://itsfoss.com/wp-content/uploads/2022/10/select-dash-to-dock-settings.png
[24]: https://itsfoss.com/wp-content/uploads/2022/10/setting-dash-to-dock-icon-size.png
[25]: https://itsfoss.com/wp-content/uploads/2022/10/opacity-setting-for-dash-to-dock.png
[26]: https://itsfoss.com/wp-content/uploads/2022/10/select-preferences-from-hamburger-menu.png
[27]: https://itsfoss.com/wp-content/uploads/2022/10/create-new-profile-in-gnome-terminal.png
[28]: https://itsfoss.com/wp-content/uploads/2022/10/set-transperancy-to-gnome-terminal.png
[29]: https://itsfoss.com/wp-content/uploads/2022/10/set-new-profile-as-default-in-gnome-terminal.png
[30]: https://itsfoss.com/wp-content/uploads/2022/10/blur-my-shell-extension-settings.png
[31]: https://itsfoss.com/wp-content/uploads/2022/10/applying-blur-effect-to-selected-windows.png
[32]: https://itsfoss.com/ascii-image-converter/
[33]: https://itsfoss.com/wp-content/uploads/2022/10/neofetch-with-custom-backend.png
[34]: https://itsfoss.com/wp-content/uploads/2022/10/ghosts-shell-color-script.png
[35]: https://itsfoss.com/wp-content/uploads/2022/10/copy-and-paste-conky-files-to-home-directory.png
[36]: https://itsfoss.com/hide-folders-and-show-hidden-files-in-ubuntu-beginner-trick/
[37]: https://itsfoss.com/wp-content/uploads/2022/10/conky-theme-applied.png
[38]: https://itsfoss.com/manage-startup-applications-ubuntu/
[39]: https://itsfoss.com/wp-content/uploads/2022/10/add-conky-to-the-list-of-startup-applications.png
[40]: https://itsfoss.com/change-wallpaper-ubuntu/
[41]: https://itsfoss.com/wp-content/uploads/2022/10/set-image-as-wallpaper-from-nautilus.png
[42]: https://itsfoss.com/wp-content/uploads/2022/10/ubuntu-halloween-theme-final-look.jpg

View File

@ -0,0 +1,140 @@
[#]: 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: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Fedora 37: Top New Features and Release Wiki
======
**An article about Fedora 37 and its new features, release details and everything you need to know.**
Fedora 37 development is wrapped up, and the BETA is [now out][1]. Hence the features and packages are final at this stage.
In this usual feature guide page, I have summarised the essential features you should know about Fedora 37 and get an idea of what to expect. But before that, heres a tentative schedule.
- The beta was out on September 13, 2022.
- **Final Fedora 37 is planned for release on October 25, 2022.**
![Fedora 37 Workstation with GNOME 43][2]
### Fedora 37: Top New Features
#### Kernel
**First** up are the critical items that make the core. Fedora 37 is powered by **Linux Kernel 5.19,** the latest mainline Kernel available now. Linux Kernel 5.19 brings essential features such as a fix for Ratbleed vulnerability, ARM support, Apple M1 NVMe SSD controller support and many such features, which you can read in our [Kernel feature guide][3].
The advantage of using the latest Kernel is that you can be assured that you are using the latest and greatest hardware support available at this moment in time.
**Next** up, the desktop environments are updated in this release.
#### Desktop Environment
Fedora 37 is the first distribution which brings the stunning **GNOME 43** desktop, which brings some excellent features such as:
- [Revamped quick settings][4] with pill-buttons
- Files (nautilus) 43 with GTK4 and libadwaita port
- Files with rubberband, emblems, responsive sidebar-like features
- [Updated GNOME Web with WebExtension API support][5]
And many features you have been waiting for for years. Do check out my [GNOME 43 feature guide][6] to learn more.
Fedora 37 brings **KDE Plasma 5.26** desktop environment with tons of new features, performance improvements and bug fixes. The most noteworthy features of the KDE Plasma desktop include:
- An updated overview screen.
- Dynamic wallpaper for dark and light themes.
- Animated wallpaper support
- Multi-button mouse support
- Updated KDE Framework and applications.
…and much more which you can read in detail in my [KDE Plasma 5.26 feature guide][7].
Since the lightweight desktop LXQt gets a stable update, 1.1.0, it arrives in Fedora 37. **LXQt 1.1.0** brings a default colour palette for dark themes for a uniform look, two variants (simple and compact) of the application menu and re-arranged GTK settings. Furthermore, LXQt 1.1.0 also starts the initial work for the Qt 6.0 porting of desktop components. All these bug fixes and enhancements arrive in the Fedora LXQt edition.
In addition, other primary desktop flavours remain at their current releases since no significant new updates arrive, i.e. **Xfce 4.16 and MATE 1.26**for the respective Fedora flavours.
Lets see what the system-wide changes in this release that impacts all the Fedora flavours are.
#### System wide changes
The most significant change is the official support for **Raspberry Pi 4** boards. Thanks to the works over the years, you can now enjoy Fedora 37 on your favourite Pi boards with out-of-the-box supports.
Fedora Linux is always a pioneer in advancing technology and adopting the latest features before any other distro. With that in mind, the **SDDM display manager now comes with default Wayland** in KDE Plasma (and Kinoite) and different flavours. This completes the Wayland transition from the Fedora distro aspect for this flavour. 
As I [reported earlier][8], Fedora Linux 37 plans to provide us with a preview image of a **Web-based installer** for Anaconda. It might not be available immediately following the release. But it should be within a few days post-release.
Other noteworthy features include changing the **default hostname from “fedora” to “localhost”** to mitigate some third-party system configuration detection. 
Other than that, the **Fedora Core OS** is made to be an official Fedora edition and now stands together with Server, IoT and cloud editions for better discovery and adoption. Fedora Core OS minimal footprint OS is primarily used for container workloads and brings auto updates and additional features.
Following the tradition, this release also features a [brand new wallpaper][9] with both night and day versions. I must say it looks awesome (see the above desktop image).
Finally, also in this release, Fedora **drops 32-bit Java** packages, including JDK 8, 11, and 17, since usage is low. In addition, the openssl1.1 package is also deprecated.
The toolchain, apps and programming stack are updated as follows:
- Glibc 2.36 and Binutils 2.38
- Node.js 18.x
- Perl 5.36
- Python 3.11
### Summary of features in Fedora 37
So, thats about it with the features of this release. Heres a summary of the Fedora 37 features:
- Linux Kernel 5.19
- GNOME 43
- KDE Plasma 5.26
- Xfce 4.16
- MATE 1.24
- LXQt 1.1.0
- A preview image of the new web-based installer
- The SDDM display manager defaults to Wayland (in KDE Plasma and others)
- Official Raspberry Pi 4 support
- Fedora Core OS becomes the official flavour
- Key packages dropping 32-bit support
- And associated toolchain and programming language updates.
If you have spare time, you can[give it a spin][10] or test drive. Just be cautious that it is still BETA.
Also, If you are daring enough, you can upgrade to this release with **caution** because, yknow its BETA. The commands below will help you to do that.
```
sudo dnf install dnf-plugin-system-upgrade
sudo dnf system-upgrade download --ref --releasever=37
```
For Kinoite, Silverblue and other immutable versions, use:
```
rpm-ostree rebase fedora:fedora/37/x86_64/silverblue
```
**So, whats your favourite feature of this release? Let me know in the comment section.**
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/fedora-37/
作者:[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://debugpointnews.com/fedora-37-beta/
[2]: https://www.debugpoint.com/wp-content/uploads/2022/08/Fedora-37-Workstation-with-GNOME-43-1024x572.jpg
[3]: https://www.debugpoint.com/linux-kernel-5-19/
[4]: https://www.debugpoint.com/gnome-43-quick-settings/
[5]: https://www.debugpoint.com/gnome-web-43-tab-view/
[6]: https://www.debugpoint.com/gnome-43/
[7]: https://www.debugpoint.com/kde-plasma-5-26/
[8]: https://debugpointnews.com/fedora-37-anaconda-web-ui-installer/
[9]: https://debugpointnews.com/fedora-37-wallpaper/
[10]: https://getfedora.org/workstation/download/

View File

@ -0,0 +1,89 @@
[#]: subject: "How to Install Viber in Ubuntu and Other Linux"
[#]: via: "https://www.debugpoint.com/install-viber-linux/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Install Viber in Ubuntu and Other Linux
======
**Heres a quick guide on how you can install Viber in Ubuntu and other Linux systems.**
[Viber][1] is a free, secure calling and messaging program for all popular mobile platforms and operating systems.
It has a rich set of features such as voice/video calls, text messages with GIFs, stickers, photos, and videos. In addition, Viber features group chats, group calls and disappearing messages.
Viber is a closed-source program, but available as free for Linux distributions with native executable clients.
Heres how to install it.
### Install Viber on Linux
It is available as an AppImage executable, deb and rpm package. Follow the respective button below to download it directly. The average executable size is ~180MB.
[Download Appimage for all Linux distros][2]
[Deb executable for Ubuntu][3]
RPM package for Fedora
If you have downloaded AppImage, simply change the permission to executable from any file manager. Then run.
- For Ubuntu, Linux Mint, Debian and related distributions, you can install deb package via [many methods][4].
- You may double-click and open via the installed software manager. Or install via dpkg command as below.
```
sudo dpkg -i viber.deb
```
- For Fedora and RPM-based packages, you can install via the following command.
```
sudo dnf localinstall viber.rpm
```
For Arch Linux and other distributions, you can use the Appimage as I explained above.
### Usage
After you finish installing Viber, open it via the application menu. Here are a couple of things you need to remember.
Before you start using Viber from your Laptop/desktop, you need to set it up on your mobile phone. Download and install Viber for your mobile platform from the below links.
- [Google Play Store][5]
- [Apple App Store][6]
Once installed, set up Viber. Remember, it requires your mobile number to register.
After setting up, open the app on the Linux desktop. And you should see a screen like the one below.
![Viber is Running in Linux][7]
Scan the QR code from your mobile phone app, and you should be ready to use Viber on your Linux desktop.
**Note:** Since it is a closed-source app, make sure you understand the terms of this app and privacy-related situations while using Viber.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/install-viber-linux/
作者:[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.viber.com/
[2]: https://download.cdn.viber.com/cdn/desktop/Linux/viber.deb
[3]: https://download.cdn.viber.com/desktop/Linux/viber.rpm
[4]: https://www.debugpoint.com/install-deb-files/
[5]: https://play.google.com/store/apps/details?id=com.viber.voip&hl=en_IN&gl=US
[6]: https://apps.apple.com/us/app/viber-messenger-chats-calls/id382617920
[7]: https://www.debugpoint.com/wp-content/uploads/2022/10/Viber-is-Running-in-Linux-1.jpg

View File

@ -0,0 +1,106 @@
[#]: subject: "How to Clean Up Snap Versions to Free Up Disk Space"
[#]: via: "https://www.debugpoint.com/clean-up-snap/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Clean Up Snap Versions to Free Up Disk Space
======
**This quick guide with a script helps to clean up old snap versions and free some disk space in your Ubuntu systems.**
I was running out of disk space in my test system with Ubuntu. So I was investigating via GNOMEs Disk Usage Analyser to find out which package is consuming the precious SSD space. Apart from the usual cache and home directory to my surprise, I found that Snap and Flatpak consume a considerable amount of storage space.
![Snap size - before cleanup][1]
Although, I always maintain a rule not to use Snap or Flatpak unless necessary. This is mainly because of their installation size and other issues. I prefer vanilla deb and rpm packages. Over the years, I have installed and removed a certain amount of Snap packages in this test system.
The problem arises after uninstallation; Snap keeps some residue files in the system, unknown to the general users.
So I opened the Snap folder `/var/lib/snapd/snaps` and discovered that Snap is keeping track of older versions of previously installed/uninstalled packages.
For example, in the below image, you can see GNOME 3.28, 3.34, and Wine all of these are removed long back. But they are still there. Its happening because of the Snap design, which keeps versions of uninstalled packages after a proper uninstallation.
![Files under snaps directory][2]
Alternatively, you can get the same in the terminal using:
```
snap list --all
```
![snap list all][3]
The default value is 3 for several revisions for retention. That means Snap keeps three older versions of each package, including the active version. This is okay if you do not have constraints on your disk space.
But for servers and other use cases, this can easily run into cost issues, consuming your disk space.
However, you can easily modify the count using the following command. The value can be between 2 to 20.
```
sudo snap set system refresh.retain=2
```
### Clean Up Snap Versions
In a post in SuperUser, Popey, the ex-Engineering Manager at Canonical, [provided a simple script][4] that can clean up old versions of Snaps and keep the latest one.
Heres the script we will use to clean the Snap up.
```
#!/bin/bash
#Removes old revisions of snaps
#CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
done
```
Save the above script as .sh in a directory (for example`clean_snap.sh`), give it executable permission and run.
```
chmod +x clean_snap.sh
```
When I ran the script, it reduced a lot of disk space. The script would also show the name of the package being removed.
![Executing the script][5]
![Snaps size after cleanup][6]
### Closing Notes
There are always debates on how efficient Snaps design is. Many say it is broken by design, bloated, and heavy on systems. Some part of that argument is true, I would not deny it. The whole concept of sandboxing applications is great if implemented and enhanced properly. I believe, Flatpak does a better job compared to Snap.
That said, I hope this helps you clean up some disk space. Although it is tested in Ubuntu, it should work in all Linux distribution that supports Snap.
Also, check out our guide on [how to clean up Ubuntu][7] with additional steps.
Finally, if you are looking to clean up **Flatpak** apps, refer [this guide][8].
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/clean-up-snap/
作者:[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/2021/03/Snap-size-before-cleanup.jpg
[2]: https://www.debugpoint.com/wp-content/uploads/2021/03/Files-under-snaps-directory.jpg
[3]: https://www.debugpoint.com/wp-content/uploads/2021/03/snap-list-all.jpg
[4]: https://superuser.com/a/1330590
[5]: https://www.debugpoint.com/wp-content/uploads/2021/03/Executing-the-script.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2021/03/Snaps-size-after-cleanup.jpg
[7]: https://www.debugpoint.com/2018/07/4-simple-steps-clean-ubuntu-system-linux/
[8]: https://www.debugpoint.com/clean-up-flatpak/

View File

@ -0,0 +1,164 @@
[#]: subject: "How to Remove Snap Packages in Ubuntu Linux"
[#]: via: "https://www.debugpoint.com/remove-snap-ubuntu/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Remove Snap Packages in Ubuntu Linux
======
**A tutorial on how to remove Snap from Ubuntu Linux and getting a snap-free system.**
Snap packages developed by Canonical are beneficial for several use cases. It provides an easy and faster update of applications directly to the end-users. Not only that, it has several other benefits, such as it comes with all dependencies packaged and allows multiple installations of the same applications. Furthermore, it runs in a sandbox mode providing security and other benefits.
Among all these benefits, there are other debatable drawbacks of Snap tech. For example, almost every user who used Snap reported its slower performance, including its startup time, compared to native deb or RPM packages. In addition, due to its design, the application installation size is huge and costs disk space because it packages all the dependencies.
Not only that, but due to its sandbox nature, the Snap apps may not access several areas of your Linux desktop until managed with proper permission.
This guide explains how you can remove the snap from the Ubuntu system altogether.
These steps are tested in [Ubuntu 22.04 LTS Jammy Jellyfish][1]. However, it should work for all applicable Ubuntu versions.
Warning: These steps will remove Software and Firefox, the two critical applications in your Ubuntu system. Make sure you take backups of bookmarks and other Firefox settings before trying these steps.
### Remove Snap Packages in Ubuntu Linux
- Open a terminal and view the list of Snap packages installed in your system using the below command. It shows the snap packages such as Firefox, Software store, themes and other core packages installed by default.
```
snap list
```
![Snap list in Ubuntu][2]
- Remove snap packages in the following order. Firstly remove Firefox. Secondly, snap-store and the other packages that you see in the above command output in your system.
```
sudo snap remove --purge firefoxsudo snap remove --purge snap-storesudo snap remove --purge gnome-3-38-2004
```
```
sudo snap remove --purge gtk-common-themessudo snap remove --purge snapd-desktop-integrationsudo snap remove --purge baresudo snap remove --purge core20sudo snap remove --purge snapd
```
- Finally, remove the snap daemon via apt command.
```
sudo apt remove --autoremove snapd
```
[![remove snap and others][3]][4]
Thats not all. Even if you removed the snaps using the above command, the sudo apt update command again brings back the snap if you dont stop the apt trigger.
- So, to stop that, we need to create an apt preference file in **/etc/apt/preferences.d/ **and create a new preference file to stop snap. Create a new file called **nosnap.pref** in /etc/apt/preferences.d/
```
sudo gedit /etc/apt/preferences.d/nosnap.pref
```
- And add the following lines, then save the file.
```
Package: snapdPin: release a=*Pin-Priority: -10
```
![create a pref file][5]
_The apt preference is a potent tool if you know how to use it. For example, in the above statements, the Pin-Priority -10 means preventing a package from installation._
_Unrelated to this tutorial, for example, if you want to give super high priority to all the packages from distribution code name=bullseye, then one may see these preferences. If you want to learn more, you can visit the [apt man pages][6]._
```
Package: *Pin: release n=bullseyePin-Priority: 900
```
- Returning to the topic, once you save and close the above file, run the below again from the terminal.
```
sudo apt update
```
- Finally, the steps are complete for getting rid of the snap from Ubuntu.
### Installing Software and Firefox as deb files after removing Snap from Ubuntu
You removed Firefox and Sofware applications, so you need those for your work.
You can use the following command to install the apt version of the Gnome Software. Make sure you use the `--install-suggests`. Otherwise, it will install the snap version again!
```
sudo apt install --install-suggests gnome-software
```
And to install firefox, use the official PPA via the below commands.
```
sudo add-apt-repository ppa:mozillateam/ppa
sudo apt update
sudo apt install -t 'o=LP-PPA-mozillateam' firefox
```
[![Add the PPA][7]][8]
[![Install Firefox as deb file from PPA][9]][10]
Once you have installed Firefox, enable the automatic update using the below commands. To learn more, [visit thi][11][s page][11].
```
echo 'Unattended-Upgrade::Allowed-Origins:: "LP-PPA-mozillateam:${distro_codename}";' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-firefox
```
Last but not least, create another preference file for Firefox to give super high priority to the above PPA while running apt. If you dont do this, the apt update command again pulls back firefox snap and brings over its “snap friends”. 😂
```
sudo gedit /etc/apt/preferences.d/mozillateamppa
```
Finally, add these lines and save the file.
```
Package: firefox*Pin: release o=LP-PPA-mozillateamPin-Priority: 501
```
Thats it.
### Revert back to Snap in Ubuntu
If you change your mind, remove the preference file and install the applications using the below commands below.
```
sudo rm /etc/apt/preferences.d/nosnap.prefsudo apt update && sudo apt upgradesudo snap install snap-storesudo apt install firefox
```
### Closing Notes
Wrapping up the tutorial on removing snap in Ubuntu, I would say these are unnecessary efforts to eliminate Snap completely. Mainly these are difficult for new users. I hope this guide helps you to get rid of snap. Cheers.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/remove-snap-ubuntu/
作者:[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/2022/01/ubuntu-22-04-lts/
[2]: https://www.debugpoint.com/wp-content/uploads/2022/04/Snap-list-in-Ubuntu.jpg
[3]: https://www.debugpoint.com/wp-content/uploads/2022/04/remove-snap-and-others-1024x544.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/remove-snap-and-others.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2022/04/create-a-pref-file.jpg
[6]: https://manpages.ubuntu.com/manpages/focal/man5/apt_preferences.5.html
[7]: https://www.debugpoint.com/wp-content/uploads/2022/04/Add-the-PPA-1024x550.jpg
[8]: https://www.debugpoint.com/wp-content/uploads/2022/04/Add-the-PPA.jpg
[9]: https://www.debugpoint.com/wp-content/uploads/2022/04/Install-Firefox-as-deb-file-from-PPA-1024x548.jpg
[10]: https://www.debugpoint.com/wp-content/uploads/2022/04/Install-Firefox-as-deb-file-from-PPA.jpg
[11]: https://www.debugpoint.com/2021/09/remove-firefox-snap-ubuntu/

View File

@ -0,0 +1,113 @@
[#]: subject: "How to Enable and Access USB Drive in VirtualBox"
[#]: via: "https://www.debugpoint.com/enable-usb-virtualbox/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Enable and Access USB Drive in VirtualBox
======
**Heres a precise guide on how you can enable USB in Oracle VirtualBox.**
When you work in a Virtual machine environment, the USB is usually plugged into the host system. But it is a little difficult to access that USB content from the guest system.
In VirtualBox, you need to install some extensions and enable some settings to access USB in. Heres how.
This article assumes that you have already installed VirtualBox and also installed some Linux distribution or operating system inside it.
If not, check out the [articles here][1].
Please note that Oracle VM VirtualBox Extension Pack comes with Oracles Personal Use and Evaluation License (PUEL). This license is different from VirtualBox, which is under GPL. If you are using the below steps for commercial purposes, make sure you [read this page][2] carefully.
### Enable USB in VirtualBox 7.0
#### Install VirtualBox Extension Pack
- Open the VirtualBox download page and download the VirtualBox Extension pack for all supported platforms using [this link][3].
![Download the extension pack][4]
- Then Click on `File > Tools > Extension Pack Manager.`
- Click on the `Install` button in the toolbar and select the downloaded .vbox-extpak file.
- Hit `Install`. Accept the terms, and give the admin password for the installation.
![install extension pack manager][5]
![install extension pack manager after accepting terms][6]
- After successful installation, you can see it in the installed list.
- Restart your host system. Restarting is mandatory.
#### Enable USB in the guest box
- Plugin the USB stick into your host system which you want to access from the guest virtual machine.
- Start VirtualBox and right-click on the VM name where you want to enable USB. Select Settings.
![Launch settings for the virtual machine][7]
- On the left pane, click on USB. Then select the controller version. For example, you can select USB 3.0. Then click on the small plus icon to add a USB filter.
- In this list, you should see your USB stick name (which you plugged in). For this example, I can see my Transcend Jetflash drive, which I plugged in.
- Select it and press OK.
[![Select the USB stick][8]][9]
- Now, start your virtual machine. Open the file manager, and you should see the USB is enabled and mounted on your virtual machine.
- In this demonstration, you can see the Thunar file manager of my [Arch-Xfce][10] virtual machine is showing the contents of my USB stick.
[![Enabling USB and accessing contents from VirtualBox][11]][12]
### Usage notes
Now, here are a couple of things you should remember.
- When you plug in the USB in the host system, keep it mounted. But do not open or access any file before launching the virtual machine.
unmounted in the host system
- Once you start your virtual machine, the USB will be and auto-mounted in the guest system, i.e. your virtual machine.
- After you finish with a USB stick, ensure to eject or unmount it inside a virtual machine. Then it will be accessible again inside your host system.
### Wrapping Up
VirtualBox is a powerful utility and provides easy-to-use features to extensively set up your Virtual Machines. The steps are straightforward, and make sure your USB stick is detected properly in the host system to work.
Also, remember that USB stick detection via extension pack is not related to VirtualBox guest addition. They are completely unrelated and provide separate functions.
Finally, let me know if this guide helps you in the comment box.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/enable-usb-virtualbox/
作者:[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/tag/virtualbox
[2]: https://www.virtualbox.org/wiki/VirtualBox_PUEL
[3]: https://www.virtualbox.org/wiki/Downloads
[4]: https://www.debugpoint.com/wp-content/uploads/2022/10/Download-the-extension-pack.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2022/10/install-extension-pack-manager.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2022/10/install-extension-pack-manager-after-accepting-terms.jpg
[7]: https://www.debugpoint.com/wp-content/uploads/2022/10/Launch-settings-for-the-virtual-machine.jpg
[8]: https://www.debugpoint.com/wp-content/uploads/2022/10/Select-the-USB-stick-1024x399.jpg
[9]: https://www.debugpoint.com/wp-content/uploads/2022/10/Select-the-USB-stick.jpg
[10]: https://www.debugpoint.com/xfce-arch-linux-install-4-16/
[11]: https://www.debugpoint.com/wp-content/uploads/2022/10/Enabling-USB-and-accessing-contents-from-VirtualBox-1024x639.jpg
[12]: https://www.debugpoint.com/wp-content/uploads/2022/10/Enabling-USB-and-accessing-contents-from-VirtualBox.jpg

View File

@ -0,0 +1,91 @@
[#]: subject: "How to Check: Xorg or Wayland Display Server?"
[#]: via: "https://www.debugpoint.com/check-wayland-or-xorg/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Check: Xorg or Wayland Display Server?
======
**Heres how you can quickly check whether you are running Xorg or Wayland Display Server.**
With every passing day, the modern Wayland display server is making its way to all Linux distributions. Although the legacy Xorg is still relevant and will stay, Wayland is undoubtedly better in security and other performance aspects.
However, Xorg will not completely phase out anytime soon. Probably never.
If you are running any Linux distribution, how can you check whether you are running Xorg or Wayland? Heres how.
### Wayland or Xorg: Which one are you running?
- Open a terminal window (CTRL+ALT+T) in your Linux distributions (e.g. Ubuntu, Fedora, Arch…etc.).
- Then type the following command and hit enter.
```
echo $XDG_SESSION_TYPE
```
- The output of the command will tell you whether the current session is Wayland or Xorg (X11).
```
[debugpoint@fedora ~]$ echo $XDG_SESSION_TYPEwayland
```
![This command can give you details about Xorg or Wayland][1]
Thats simple. However, there are other ways as well.
### Other methods
#### Using Settings
If you want a graphical method, open your Linux distribution settings application. In the about section, you should see the Wayland/X11 mentioned under some label.
For example, in the GNOME Settings, you can find it under “Windowing system”, as shown below.
![In GNOME Settings you can find it][2]
#### Using session values
You can also find it out using `loginctl` which is the [systemd][3] login manager. Remember, it only works for systemd-based systems.
Open a terminal and run the below command. You can see the session id value. In this example `c2`.
```
loginctl
```
Now, pass the session id to the following command to get the display server type. Make sure to change c2 to your system spec.
```
loginctl show-session c2 -p Type
```
![Using loginctl to find out][4]
### Wrapping Up
So, these are some of the ways you can find out whether you are running Systemd or Xorg in your Linux system. You can also use the above commands in your shell scripts for further process automation.
Cheers.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/check-wayland-or-xorg/
作者:[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/10/This-command-can-give-you-details-about-Xorg-or-Wayland-1024x612.jpg
[2]: https://www.debugpoint.com/wp-content/uploads/2022/10/In-GNOME-Settings-you-can-find-it.jpg
[3]: https://www.debugpoint.com/tag/systemd/
[4]: https://www.debugpoint.com/wp-content/uploads/2022/10/Using-loginctl-to-find-out.jpg

View File

@ -0,0 +1,56 @@
[#]: subject: "4 open source editors I use for my writing"
[#]: via: "https://opensource.com/article/22/10/open-source-editors"
[#]: author: "Alan Formy-Duval https://opensource.com/users/alanfdoss"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
4 open source editors I use for my writing
======
I've done a lot of writing throughout my career, mostly as an IT consultant creating product documentation as client deliverables. These documents generally provide instructions on installing various operating systems and software products.
Since 2018, I've contributed to opensource.com with articles about open source software. Of course, I use open source editors to write my pieces. Here are the four open source editors that I have used.
### 1. Vi
[Vi][1], also referred to as Vim, is the first open source editor that I learned. This was the editor taught by my computer science classes and that I used for all of my C programming. I have used it as my de facto command line editor since the mid-1990s. There are so many iterations of this tool that I could write a whole series on them. Suffice it to say that I stick to its basic command line form with minimal customization for my daily use.
### 2. LibreOffice Writer
Writer is part of the open source LibreOffice office suite. It is a full-featured word processor maintained by The Document Foundation. It supports industry-standard formats such as the Open Document Format (ODF), Open XML, and MS Office DOC, DOCX. [Learn more about Writer][2] on its official site.
### 3. Ghostwriter
Ghostwriter is a [text editor for Markdown][3]. It has a nice real-time viewer and syntax guide or cheat sheet feature. [Visit the official website][4] to discover more.
### 4. Gedit
Gedit is the basic graphical editor found in many Linux distributions and is described as "a small and lightweight text editor for the GNOME desktop." I have begun using it lately to create articles in the Asciidoc format. The benefit of using Asciidoc is that the syntax is easily manageable and importable into web rendering systems such as Drupal. [See the Gedit Wiki][5] for many tips and tricks.
### Editing text
An extensive list of editing software is available in the open source world. This list will likely grow as I continue writing. The primary goal for me is simplicity in formatting. I want my articles to be easy to import, convert, and publish in a web-focused platform.
Your writing style, feature needs, and target audience will guide you in determining your preferred tools.
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/open-source-editors
作者:[Alan Formy-Duval][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/alanfdoss
[b]: https://github.com/lkxed
[1]: https://opensource.com/article/20/12/vi-text-editor
[2]: https://www.libreoffice.org/discover/writer/
[3]: https://opensource.com/article/21/10/markdown-editors
[4]: https://github.com/KDE/ghostwriter
[5]: https://wiki.gnome.org/Apps/Gedit

View File

@ -0,0 +1,91 @@
[#]: subject: "How to find GNOME Shell version from the Terminal"
[#]: via: "https://www.debugpoint.com/find-gnome-version/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to find GNOME Shell version from the Terminal
======
**Heres a quick guide on finding the GNOME desktop (or Shell) version via the command line and GUI.**
### Find GNOME Shell Version
You need to find the GNOME version number you are running for many use cases. For example, if you are a developer, you might want to find out compatible packages and ensure that all the dependencies are met.
So, to do that, heres how you can find the GNOME version number.
Firstly, open a terminal. And run the following command.
```
gnome-shell --version
```
![version via terminal][1]
It will give you the GNOME shell version number currently running in your system.
Similarly, if you are using the desktop environment, then open Settings. Then click on the About tab.
Here you can see the GNOME Version at the bottom.
![version via settings window][2]
### Usage Notes
There might be situations where you use a different desktop environment (such as MATE or Xfce), which also uses GNOME components and packages.
Those desktop environments dont use the gnome-shell package, of course. So, if you want to find out the GNOME packages and their version used in those specific cases, you can see the contents of this file below. This is for Ubuntu and Debian-based distros only.
```
/var/lib/apt/extended_states
```
For example, the file contains a below GNOME package.
Now that you know the package name, you can further find out its version installed in your system using the below command. Similar DNF command you can find in [this guide][3] for RPM-based distros.
```
apt show gnome-weather
```
**Sample output:**
```
debugpoint@debugpoint-mate:~$ apt show gnome-weather
Package: gnome-weather
Version: 43.0-1
Priority: optional
Section: universe/gnome
Origin: Ubuntu
Maintainer: Ubuntu Developers [ubuntu-devel-discuss@lists.ubuntu.com][4]
Original-Maintainer: Debian GNOME Maintainers [pkg-gnome-maintainers@lists.alioth.debian.org][5]
```
### Wrapping Up
This guide teaches you how to find the version of GNOME and some additional methods.
Cheers.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/find-gnome-version/
作者:[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/10/version-via-terminal.jpg
[2]: https://www.debugpoint.com/wp-content/uploads/2022/10/version-via-settings-window.jpg
[3]: https://www.debugpoint.com/dnf-commands-examples/
[4]: https://www.debugpoint.commailto:ubuntu-devel-discuss@lists.ubuntu.com
[5]: https://www.debugpoint.commailto:pkg-gnome-maintainers@lists.alioth.debian.org

View File

@ -0,0 +1,117 @@
[#]: subject: "How to Upgrade to Ubuntu 22.10 From 22.04 LTS (Jammy to Kinetic)"
[#]: via: "https://www.debugpoint.com/upgrade-ubuntu-22-04-22-10/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Upgrade to Ubuntu 22.10 From 22.04 LTS (Jammy to Kinetic)
======
**Here are the steps on how to upgrade your current Ubuntu 22.04 LTS Jammy Jellyfish to Ubuntu 22.10 Kinetic Kudu.**
Always stay with long-term support release. That is the thumb rule. So, the prior [Ubuntu 22.04 LTS][1] Jammy Jellyfish is supported until April 2027. Thats a long time.
In addition, LTS releases are super stable. They rarely break and become unstable. So, if you use your laptop/desktop or server installation with the LTS version, stay with it.
However, if you want the latest Kernel, GNOME 43, and new technology like Pipewire you might want to make the jump and want to upgrade to [Ubuntu 22.10 Kinetic Kudu][2].
Heres how.
### Upgrade Ubuntu 22.04 LTS (Jammy Jellyfish) to Ubuntu 22.10 (Kinetic Kudu)
**Note**: I hope you are not running Ubuntu 21.10 Impish Indri, released last October. Because thats out of support. But for any reason, if you are still running it, I would recommend you do a fresh install of 22.10. Or, do a step upgrade to 22.04 and then 22.10.
#### Before you upgrade
Before you upgrade, do a little housekeeping. This is super important.
- Take backups of your `/home`, /`downloads` and other files to USB or any separate partition in case the upgrade fails.
- If you have added additional PPA over time, make sure you note them down. However, the upgrade process would disable the PPA before it starts. However, after the upgrade is complete, make sure to enable them manually.
- Note down and disable all the GNOME Extensions. Extensions tend to break after the upgrade if its not updated by the developer aligned with the GNOME version.
- Keep a LIVE USB stick handy.
#### Upgrade steps
- Open Software & Update.
- Go to the Updates tab.
- Select `Notify me of a new Ubuntu version'`and change it to `'For any new version'.`
- This will tell the package manager to look for the Ubuntu 22.10 release details.
![Make sure to change the option for new Ubuntu 22.10 release][3]
- Open a terminal and run below.
```
sudo apt updatesudo apt upgrade
```
Alternatively, you can open the Software Updater as well. Install all the pending packages.
- Once both the commands are complete, open the Software Updates. And you will see a prompt to Upgrade to Ubuntu 22.10 (as shown in the below image).
![New version update prompt from the GUI method][4]
- Now click on the `Upgrade` button and follow the on-screen instructions. The upgrade process takes time, so be patient and wait until it finishes. Make sure you have stable internet connectivity for the entire upgrade process.
If you still dont get the update, wait a day or two and try.
- If you do not see the above prompt, do a manual reboot of your system. Add try again.
**Via terminal**
- Open the following file via the nano file editor in the terminal.
```
nano /etc/update-manager/release-upgrades
```
- Change the `Prompt=LTS` to `Prompt=normal`. Note: If you have changed the updates tab to “For any new version” as mentioned above, then this file should be updated already. But verify once.
![Change the release upgrade file][5]
- Press CTRL+O and CTRL+X to save and exit.
- Finally, you can also run the below command to force the upgrade process from the terminal.
```
sudo do-release-upgrade -c
```
![New version update prompt from the terminal method][6]
The upgrade process will take some time (minimum half-hour or more) based on your internet connection and hardware. Wait until it is complete. Once done, restart and enjoy the Ubuntu 22.10 Kinetic Kudu.
![Upgrade is in progress][7]
While the upgrade process is in progress, take a look at the exciting articles we [recently published on Ubuntu 22.10][8].
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/upgrade-ubuntu-22-04-22-10/
作者:[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/ubuntu-22-04-review/
[2]: https://www.debugpoint.com/ubuntu-22-10/
[3]: https://www.debugpoint.com/wp-content/uploads/2022/10/Make-sure-to-change-the-option-for-new-Ubuntu-22.10-release.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2022/10/New-version-update-prompt-from-the-GUI-method2.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2022/10/Change-the-release-upgrade-file.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2022/10/New-version-update-prompt-from-the-terminal-method.jpg
[7]: https://www.debugpoint.com/wp-content/uploads/2022/10/Upgrade-is-in-progress.jpg
[8]: https://www.debugpoint.com/tag/ubuntu-22-10

View File

@ -0,0 +1,197 @@
[#]: subject: "10 Things to Do After Installing Ubuntu 22.10 [With Bonus Tip]"
[#]: via: "https://www.debugpoint.com/things-to-do-ubuntu-22-10/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "chai001125"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
10 Things to Do After Installing Ubuntu 22.10 [With Bonus Tip]
======
**Heres our recommended list of 10 things after installing Ubuntu 22.10 “Kinetic Kudu” (GNOME Edition).**
![][1]
Ubuntu 22.10 brings exciting new features such as GNOME 43, the latest Kernel, a newly re-designed tray menu, Files features, Pipewire and [many more][2].
I am sure you are excited to try them.
But wait.
Before you head over to enjoy a new installation of Ubuntu, heres an assorted list of customization tips which you cant miss.
### 10 Things to Do After Installing Ubuntu 22.10
#### 1. Update your system
The first thing you need to do after installing Ubuntu 22.10 is to update your system. Often, the latest ISO may not contain all the updates due to time differences. So, to update your system, oprn a terminal window and run the following commands.
```
sudo apt update && sudo apt upgrade
```
Once the commands are complete, you can proceed to the next steps.
#### 2. Remove Firefox Snap and install Flatpak or deb
Since Ubuntu 21.10 last year, the default web browser Firefox comes as a Snap package. Now, if you are an average user, this may not be a problem or a thing to worry about. But many users may not like the Snap package of Firefox for several reasons. For example, the startup time is slow. Unnecessary Snap update notifications when there is a backend update and so on.
So, to completely remove Firefox as Snap, you can follow the guide [on this page][3] that I have written. Its a little complex and may take time. And install a deb version of Firefox from PPA or use the [Flatpak version][4].
As I said, this is an optional tip; you may skip it if you want.
#### 3. Install and Enable Flatpak
While every distribution today ships Flatpak by default, Ubuntu does not. Because it promotes its own sandboxing technology Snap.
But Flatpak applications are the best for everyone. It helps you to quickly install and use several applications without worrying about dependency and other things.
Most of the Flatpak applications are present in a centralised repo @ Flathub.
To enable Flatpak applications in Ubuntu 22.10, follow the below commands.
```
sudo apt install flatpakflatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakreporeboot
```
Also, if you want to learn more about this process, [read this nice guide][5], we published a while ago.
#### 4. Review privacy settings
I recommend you opt out of any data collection after installing Ubuntu. Everyone knows that its difficult to protect your privacy over the internet, no matter how hard you try. These little steps matter.
To configure the privacy, open Settings and select Privacy. Then review the settings listed under privacy.
Also, ensure to disable backend reporting to Ubuntu servers with your usage. Run the following command to do that. Unfortunately, there is no option in the settings to disable it.
```
sudo ubuntu-report -f send no
```
![Turn off location services in Ubuntu 22.10][6]
#### 5. Explore GNOME 43 Features
The most visual and functional change coming in this release is GNOME 43. This is going to impact everyone and your workflow. Because there are some fundamental and core changes. GNOME 43 brings a new pill-shaped tray menu and updated native applications with new features such as Files and GNOME Web.
Do go over the detailed [GNOME 43 features][7] here to learn more. Or explore them yourself.
![Quick Settings Demo in GNOME 43][8]
#### 6. Ensure the audio works with Pipewire
If you work with Audio primarily or your workflow deals with sound capture, playback and other stuff, then make sure your Audio works properly in Ubuntu 22.10, wired or via Bluetooth.
Because there is a change in the audio server in this release for the first time in many years. The legacy PulseAudio is now replaced by the modern Pipewire. So its important for you to verify.
#### 7. Install additional packages
Its important to ensure you can play all video and audio formats on your Ubuntu desktop. If you skipped the extra package installation during the setup, you could install them via the below commands.
```
sudo apt install ubuntu-restricted-extras
```
This should settle any video or audio playback problem in Ubuntu. Especially with GNOME Videos which cant play anything by default.
#### 8. Setup basic apps
The base Ubuntu with GNOME comes with a very basic set of applications. Hence, its almost necessary for everyone to install applications before you use Ubuntu.
Now, necessary apps are different for everyone due to diverse workflow. Hence, heres a quick list of generic apps which I think you can go ahead and install since they are preety much common for all.
- GIMP Advanced photo editor
- VLC Media play that plays anything without the need for additional codecs
- Leafpad A lightweight text editor (even lightweight from default gedit)
- Synaptic A far better package manager
Command to install them:
```
sudo apt install -y gimp vlc leafpad synaptic
```
#### 9. Get some GNOME Extensions
You can extend your GNOME 43s functionality using several cool extensions. That includes customizing the top bar, tray, changing the adwaita accent colour further and more. So, to do that, make sure you install the GNOME Extension manager first via Flatpak using the command below.
```
flatpak install flathub com.mattjakeman.ExtensionManager
```
And once you do, you can go ahead with any extensions you want by searching for them in the above app. However, heres a quick set of necessary extensions which I feel are perfect for your brand-new Ubuntu desktop. You can simply search with these names in the Extension manager apps.
- Caffeine
- Custom Hot Corners
- Dash to Dock
- Blur my shell
- Gradients
- Hide Activities Button
- Net speed simplified
#### 10. Prepare backup
Last but not least, make sure you prepare for backup from the beginning. We always feel the necessity for backup when we run into difficult situations. To do that, the ideal app is Timeshift which is easy to install and use.
Heres the set of commands you can run from the terminal to install. And after installation, you can open and follow the on-screen instructions to set up a backup.
```
sudo add-apt-repository -y ppa:teejee2008/ppasudo apt-get updatesudo apt-get install timeshift
```
### Bonus Tips
If you want to customize your new Ubuntu installation further, here are some bonus tips for you.
#### Install nice fonts
Fonts impact everything. Its one of the small yet impactful settings. However, Ubuntu comes with a default “Ubuntu regular” font, which is also good.
But you can also go ahead and install some nice fonts from Ubuntus official repo. Here is some command to install them.
```
sudo apt install fonts-roboto fonts-cascadia-code fonts-firacode
```
After installation, you can change the font using the [GNOME Tweak tool][9].
#### Install TLP
You must take care of your laptop battery if you are a heavy laptop user. While no battery is everlasting, you can still take some steps to ensure it lasts longer. The TLP is one of the best programs available in Linux, which helps to do that automatically. All you need to do is install it using the following command and run.
```
sudo apt install tlp
```
As per the recommendation, always keep the battery strength between 50% to 80%. Dont overcharge or let it discharge below 50%. Dont keep it plugged into power continuously.
### Wrapping Up
So, there you have it. Ten gettings started tips with some bonus for your Ubuntu desktop journey.
I hope this helps and that you get to install & tweak your desktop with further customization. That said, do let me know what is your best after-install tips in Ubuntu in the comment box.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/things-to-do-ubuntu-22-10/
作者:[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/10/u2210-things-hd-1024x576.jpg
[2]: https://www.debugpoint.com/ubuntu-22-10/
[3]: https://www.debugpoint.com/remove-firefox-snap-ubuntu/
[4]: https://flathub.org/apps/details/org.mozilla.firefox
[5]: https://www.debugpoint.com/how-to-install-flatpak-apps-ubuntu-linux/
[6]: https://www.debugpoint.com/wp-content/uploads/2022/10/Turn-off-location-services-in-Ubuntu-22.10.jpg
[7]: https://www.debugpoint.com/gnome-43/
[8]: https://www.debugpoint.com/wp-content/uploads/2022/08/Quick-Settings-Demo-in-GNOME-43.gif
[9]: https://www.debugpoint.com/customize-your-ubuntu-desktop-using-gnome-tweak/

View File

@ -0,0 +1,130 @@
[#]: subject: "How to Install AWS CLI on Linux Step-by-Step"
[#]: via: "https://www.linuxtechi.com/how-to-install-aws-cli-on-linux/"
[#]: author: "Pradeep Kumar https://www.linuxtechi.com/author/pradeep/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Install AWS CLI on Linux Step-by-Step
======
This post describes how to install latest version of AWS CLI on a linux system step-by-step. AWS CLI is a command line interface which allows us to interact with our AWS account. Developer and sysadmin use aws cli to perform day to day activities and automation.
##### Prerequisites
- Pre-Installed Linux System
- Sudo User with admin rights
- Internet Connectivity
Without any further delay, lets jump into AWS Cli installations steps.
### 1) Download installation file
Open the terminal and run following curl command to download aws cli installation file,
```
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
```
Above command will download file as awscliv2.zip in current working directory.
Execute below [ls command][1] to verify downloaded file,
```
$ ls -l awscliv2.zip -rw-rw-r-- 1 linuxtechi linuxtechi 47244662 Oct 20 10:53 awscliv2.zip $
```
### 2) Unzip downloaded installation file
Run beneath [unzip command][2] to unzip the installer.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'linuxtechi_com-medrectangle-3','ezslot_6',320,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-medrectangle-3-0');
```
$ unzip awscliv2.zip
```
It will create aws folder in present working directory and unzip all required files into it.
```
$ ls -ld aws drwxr-xr-x 3 linuxtechi linuxtechi 4096 Oct 19 17:18 aws $
```
### 3) Run install script
To install aws cli, run following install script,
```
$ sudo ./aws/install
```
Script will install all files under /usr/local/aws-cli and will create symbolic link in /usr/local/bin.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[300,250],'linuxtechi_com-medrectangle-4','ezslot_7',340,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-medrectangle-4-0');
### 4) Verify AWS CLI version
To verify the aws cli version, run
```
$ aws --version aws-cli/2.8.4 Python/3.9.11 Linux/5.15.0-48-generic exe/x86_64.ubuntu.22 prompt/off $
```
### 5) Configure AWS CLI
To verify the AWS Cli installation, lets configure aws cli.
Login to your AWS management console and retrieve AWS access key id and secret access key.
In case it is not created yet then create access key ID and secret access key. Copy these keys somewhere safe.
Now head back to Linux terminal, run following aws command,
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[250,250],'linuxtechi_com-box-4','ezslot_8',260,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-box-4-0');
```
$ aws configure AWS Access Key ID [None]: xxxxxxxxxxxxxxxxxxx AWS Secret Access Key [None]: xxxxxxxxxxxxxxxxxxx Default region name [None]: us-west-2 Default output format [None]: json $
```
Above credentials will be saved in following file,
```
$ cat  ~/.aws/credentials
```
Output of above commands,
Run aws command to list s3 bucket and vpc of your account.
```
$ aws s3 ls $ aws ec2 describe-vpcs
```
Output,
Output above confirms that aws cli has been configured successfully.
Thats all from this post, please do post your queries and feedback in below comments sections.
if(typeof ez_ad_units != 'undefined'){ez_ad_units.push([[250,250],'linuxtechi_com-banner-1','ezslot_9',360,'0','0'])};__ez_fad_position('div-gpt-ad-linuxtechi_com-banner-1-0');
Also Read:[How to Setup EKS Cluster along with NLB on AWS][3]
--------------------------------------------------------------------------------
via: https://www.linuxtechi.com/how-to-install-aws-cli-on-linux/
作者:[Pradeep Kumar][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.linuxtechi.com/author/pradeep/
[b]: https://github.com/lkxed
[1]: https://www.linuxtechi.com/linux-ls-command-examples-beginners/
[2]: https://www.linuxtechi.com/linux-zip-unzip-command-examples/
[3]: https://www.linuxtechi.com/how-to-setup-eks-cluster-nlb-on-aws/

View File

@ -0,0 +1,82 @@
[#]: subject: "Observability-driven development with OpenTelemetry"
[#]: via: "https://opensource.com/article/22/10/observability-driven-development-opentelemetry"
[#]: author: "Ken Hamric https://opensource.com/users/kenkubeshopio"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Observability-driven development with OpenTelemetry
======
Observability-driven development (ODD) is being recognized as "necessary" for complex, microservice-based architectures. Charity Majors coined the term and has written about it in several articles, including [Observability: A Manifesto][1]. She explains the term in this quote:
> Do you bake observability right into your code as you're writing it? The best engineers do a form of "observability-driven-development" — they understand their software as they write it, include instrumentation when they ship it, then check it regularly to make sure it looks as expected. You can't just tack this on after the fact, "when it's done".
### OpenTelemetry provides the plumbing
The OpenTelemetry project has the industry backing to be the 'plumbing' for enabling observability across distributed applications. The OpenTelemetry project is [second only to Kubernetes][2] when measuring the size of its contributor community among [Cloud Native Computing Foundation (CNCF)][3] projects, and was formed when OpenTracing and OpenCensus projects merged in 2019. Since then, almost all of the major players in the industry have announced their support for OpenTelemetry.
[OpenTelemetry][4] covers three observability signals—logs, metrics, and distributed traces. It standardizes the approach to instrumenting your code, collecting the data, and exporting it to a backend system where the analyses can occur and the information can be stored. By standardizing the 'plumbing' to gather these metrics, you can now be assured that you don't have to change the instrumentation embedded in your code when switching from one vendor to another, or deciding to take the analysis and storage in-house with an open source solution such as OpenSearch. Vendors fully support OpenTelemetry as it removes the onerous task of enabling instrumentation across every programming language, every tool, every database, every message bus— and across each version of these languages. An open source approach with OpenTelemetry benefits all!
### Bridging the gap with Tracetest
So you want to do ODD, and you have a standard of how to instrument the code with OpenTelemetry. Now you just need a tool to bridge the gap and help you develop and test your distributed application with OpenTelemetry. This is why my team is building [Tracetest][5], an open source tool to enable the development and testing of your distributed microservice application. It's agnostic to the development language used or the backend OpenTelemetry data source that is chosen.
For years, developers have utilized tools such as Postman, ReadyAPI, or Insomnia to trigger their code, view the response, and create tests against the response. Tracetest extends this old concept to support the modern, observability-driven development needs of teams. Traces are front and center in the tool. Tracetest empowers you to trigger your code to execute, view both the response from that code and the OpenTelemetry trace, and to build tests based on both the response and the data contained in the trace.
![Image of Tracetest functionality.][6]
Image by:
(Ken Hamric, CC BY-SA 4.0)
### Tracetest: Trigger, trace, and test
How does Tracetest work? First, you define a triggering transaction. This can be a [REST][7] or gRPC call. The tool executes this trigger and shows the developer the full response returned. This enables an interactive process of altering the underlying code and executing the trigger to check the response. Second, Tracetest integrates with your existing OpenTelemetry infrastructure to pull in the trace generated by the execution of the trigger, and shows you the full details of the trace. Spans, attributes, and timing are all visible. The developer can adjust their code and add manual instrumentation, re-execute the trigger, and see the results of their changes to the trace directly in the tool. Lastly, Tracetest allows you to build tests based on both the response of the transaction and the trace data in a technique known as trace-based testing.
### What is trace-based testing?
Trace-based testing is a new approach to an old problem. How do you enable integration tests to be written against complex systems? Typically, the old approach involved adding lots of complexity into your test so it had visibility into what was occurring in the system. The test would need a trigger, but it would also need to do extra work to access information contained throughout the system. It would need a database connection and authentication information, ability to monitor the message bus, and even additional instrumentation added to the code to enable the test. In contrast, Trace-based testing removes all the complexity. It can do this because of one simple fact—you have already fully instrumented your code with OpenTelemetry. By leveraging the data contained in the traces produced by the application under the test, Tracetest can make assertions against both the response data and the trace data. Examples of questions that can be asked include:
- Did the response to the gRPC call have a 0 status code and was the response message correct?
- Did both downstream microservices pull the message off the message queue?
- When calling an external system as part of the process—does it return a status code of 200?
- Did all my database queries execute in less than 250ms?
![Image of Observability driven development in Tracetest.][8]
Image by:
(Ken Hamric, CC BY-SA 4.0)
By combining the ability to exercise your code, view the response and trace returned, and then build tests based on both sets of data, Tracetest provides a tool to enable you to do observability-driven development with OpenTelemetry.
### Try Tracetest
If you're ready to get started, [download Tracetest][9] and try it out. It's open source, so you can [contribute to the code][10] and help shape the future of trace-based testing with Tracetest!
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/observability-driven-development-opentelemetry
作者:[Ken Hamric][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/kenkubeshopio
[b]: https://github.com/lkxed
[1]: https://www.honeycomb.io/blog/observability-a-manifesto/
[2]: https://www.cncf.io/blog/2021/12/15/end-of-year-update-on-cncf-and-open-source-velocity-in-2021/
[3]: https://www.cncf.io/
[4]: https://opentelemetry.io/
[5]: http://tracetest.io
[6]: https://opensource.com/sites/default/files/2022-10/tracetest%20functionality.png
[7]: https://www.redhat.com/en/topics/api/what-is-a-rest-api?intcmp=7013a000002qLH8AAM
[8]: https://opensource.com/sites/default/files/2022-10/Tracetest-odd.png
[9]: https://tracetest.io/download
[10]: https://github.com/kubeshop/tracetest/issues

View File

@ -0,0 +1,250 @@
[#]: subject: "How to use journalctl to View and Analyze Systemd Logs [With Examples]"
[#]: via: "https://www.debugpoint.com/systemd-journalctl/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to use journalctl to View and Analyze Systemd Logs [With Examples]
======
**This guide explains the basics of the journalctl utility of [Systemd][1] and its various commands. You can use these commands for troubleshooting desktop and server logs in Linux. This is how you can use journalctl to view and analyze Systemd Logs with different examples.**
### Introduction
Many say that Systemd is not good, it is heavy on the system and it is a debated topic always. But you can not deny that it provides a well set of utilities to manage, troubleshoot a system. Imagine you end up with a broken system with no GUI. You probably messed up boot and GRUB as well. In those kinds of scenarios or in general you can boot from a LIVE system, mount your Linux partition and explore the Systemd logs to find out about the problem.
Systemd has three basic components as follows
- **systemd**: System and service manager for Linux operating systems.
- **systemctl**: Command to introspect and control the state of the systemd system and service manager.
- **systemd-analyze**: Provides system boot-up performance statistics and retrieve other state and tracing information from the system and service manager
Apart from these three, there are additional services that systemd provides such as journald, logind, networkd, etc. In this guide we will talk about the journald service of systemd.
### journald systemd journal daemon
By design, systemd provides a centralized way of handing all operating system logs from processes, applications, etc. All these logging events are handled by journald daemon of systemd. The journald daemon collects all logs from everywhere of the Linux operating systems and stores themes as binary data in files.
The advantages of centralized logging of events, system problems as binary data are many. For example, as the system logs are stored as binary and not text you can translate in many ways such as text, JSON objects for various needs. Also, it is super easy to track down to a single event as the logs are stored sequentially via date/time manipulation of the logs.
Remember the log files that journald collects are in thousands of lines and it gets updated for every event, every boot. So if you have a long time running Linux operating system the journal logs size should in GBs. As the logs are in thousands, its better to filter with basic commands to find out more about the system problems.
#### The journald Configuration File
The configuration file of the journald is present in the below path. It contains various flags on how the logging happens. You can take a look at the file and make the changes necessary. But I would recommend not to modify this file unless you know what you are doing.
```
/etc/systemd/journald.conf
```
#### Where journald stores the binary log files
The journald stores the logs in binary format. They are stored inside a directory under this path.
```
/var/log/journal
```
For example, in the below path there is a directory that contains all the system logs to date.
![journalctl log file path][2]
Do not use cat command or use nano or vi to open these files. They would not be displayed properly.
### Use journalctl to View and Analyze Systemd Logs
#### Basic journald command
The basic command to view logs using journal daemon is
```
journalctl
```
![journalctl][3]
This gives you all the journal entries including errors, warnings, etc from all applications and processes. It shows the list with the oldest log at the top and current logs at the bottom. You need to keep pressing ENTER to scroll through it line by line. You can also use PAGE UP and PAGE DOWN keys to scroll. Press q to exit from this view.
#### How to view journal entries for time zones
By default, the journalctl shows the log time in the current system time zone. However, you can easily provide the timezone in your command to convert the same log to a different time zone. For example, to view the logs in UTC, use the below command.
```
journalctl --utc
```
![journalctl --utc][4]
#### How to view only errors, warnings, etc in journal logs
The logs that a system generates have different priorities. Some logs may be a warning which can be ignored or some may be critical errors. You might want to look at only errors, not warnings. That is also possible using the below command.
To view emergency system messages use:
```
journalctl -p 0
```
![journalctl -p 0][5]
Error codes
```
0: emergency 1: alerts 2: critical 3: errors 4: warning 5: notice 6: info 7: debug
```
When you specify the error code, it shows all messages from that code and above. For example, if you specify the below command, it shows all messages with priority 2, 1 and 0
```
journalctl -p 2
```
#### How to view journal logs for a specific boot
When you are running the journalctl command it shows the information from the current boot that is from the current session which you are running. But it is also possible to view information about past boots as well.
Journal logs keep on updating in every reboot. The journald keeps track of the logs in different boots. To view, the boot-wise logs use the below command.
```
journalctl --list-boots
```
![journalctl list-boots][6]
- The first number shows the unique journald boot track number which you can use in the next command to analyze that specific boot.
- The second number the boot ID which also you can specify in the commands.
- The next two date, time combinations are the duration of the logs stored in the respective file. This is super handy if you want to find out a log or error from a specific date, time.
To view a specific boot number you the first number or the boot ID as below.
```
journalctl -b -45
```
```
journalctl -b 8bab42c7e82440f886a3f041a7c95b98
```
![journalctl -b 45][7]
You can also use `-x` switch which can add an explanation of the systemd error messages in your display. This is a lifesaver in certain situations.
```
journalctl -xb -p 3
```
![journalctl -xb][8]
#### How to view journal logs for a specific time, date duration
The journalctl is powerful enough to provide “english” like argument in the command itself for time and date manipulation.
You can use`--since` switch with a combination of `“yesterday”, “today”, “tomorrow”, or “now”.`
Some of the examples of different commands below. You can modify them as per your need. They are self-explanatory. The date, time format in the below commands are `"YYYY-MM-DD HH:MM:SS"`
```
journalctl --since "2020-12-04 06:00:00"
```
```
journalctl --since "2020-12-03" --until "2020-12-05 03:00:00"
```
```
journalctl --since yesterday
```
```
journalctl --since 09:00 --until "1 hour ago"
```
![journalctl --since 09:00 --until][9]
You can combine the above with the error level switches as well.
#### How to see Kernel specific journal logs
The Linux Kernel messages can be extracted from journal logs as well. To view the Kernel messages from the current boot only use the below command.
```
journalctl -k
```
#### How to see journal logs for a service, PID
You can filter out specific logs from a systemd service unit only from the journald logs. For example, to find out the logs from NetworkManager service use the below command.
```
journalctl -u NetworkManager.service
```
![journalctl NetworkManager service][10]
If you do not know the service name, you can use the below command to list the systemd services in your system.
```
systemctl list-units --type=service
```
#### How to view journal logs for a user, group
If you are analyzing server logs this command is helpful where multiple users are logged in. You can first find out about the user id using the below command from the user name. For example, to find out the id of user “`debugpoint`”
```
id -u debugpoint
```
Then use that ID with `_UID` switch to view the logs generated by the user.
```
journalctl _UID=1000 --since today
```
![journalctl _UID][11]
Similarly use `_GID` switch to find out the same for user groups.
#### How to view journal logs for an executable
You can also find out journald logs of a specific program or executable. For example, if you want to find out the messages of gnome-shell, you can run the below command.
```
journalctl /usr/bin/gnome-shell --since today
```
![journalctl gnome-shell][12]
### Closing notes
I hope this guide helps you to use journalctl to view analyze systemd logs on your Linux desktop or server troubleshooting. The systemd journal management extremely powerful if you know how to use the commands, it makes your life a bit easy during debugging time. All major mainstream Linux distribution uses Systemd these days. Ubuntu, Debian, Fedora, Arch they all use systemd for their default OS offerings. In case if you are wondering about systemd-free Linux distributions, you might want to check out [MX-Linux][13], Gentoo, Slackware, Void Linux.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/systemd-journalctl/
作者:[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://freedesktop.org/wiki/Software/systemd/
[2]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-log-file-path.jpg
[3]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-utc.jpg
[5]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-p-0.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-list-boots.jpg
[7]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-b-45.jpg
[8]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-xb.jpg
[9]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-since-0900-until.jpg
[10]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-NetworkManager-service.jpg
[11]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-_UID.jpg
[12]: https://www.debugpoint.com/wp-content/uploads/2020/12/journalctl-gnome-shell.jpg
[13]: https://www.debugpoint.com/tag/mx-linux

View File

@ -0,0 +1,144 @@
[#]: subject: "How to Install Python 3.10 in Ubuntu and Other Related Linux"
[#]: via: "https://www.debugpoint.com/install-python-3-10-ubuntu/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Install Python 3.10 in Ubuntu and Other Related Linux
======
**Planning to get Python 3.10 installed for your work? Heres how to install Python 3.10 in Ubuntu and related distributions.**
Python 3.10 was released on Oct 25, 2021 with additional features and updates. This release brings better handling of error messages, new pattern-matching features, TypeAlias, user-defined type guards and more. You can read the release highlights [here][1].
As of writing this guide, Python 3.10 is adopted by most of the current distros. For example, Ubuntu 22.04 LTS, and Fedora 36 all have Python 3.10 by default.
That said, if you need Python 3.10 in any non-supported releases right now, you can use the [below reliable PPA][2] to install the latest Python 3.10 in Ubuntu. Heres how.
### How to Install Python 3.10 on Ubuntu
This PPA can be used for Ubuntu 21.10, Ubuntu 21.04, Ubuntu 20.04 LTS, Ubuntu 18.04 LTS, and Linux Mint 20.x, Elementary OS 6 and other related Ubuntu-based distributions. Mostly those dont support 3.10 by default.
- Open a terminal prompt and add the following PPA.
```
sudo add-apt-repository ppa:deadsnakes/ppa
```
- Refresh the cache using the below command.
```
sudo apt update 
```
- And install Python 3.10 using the below command.
```
sudo apt install python3.10
```
### Set Python Versions
Setting up Python 3.10 as default require some additional steps. Follow along.
**Warning**: Many applications in your Ubuntu system depend on the stock version of Python 3.9. Hence, be very sure that your work applications (e.g. GIMP, GNOME Terminal etc.) are compatible with Python 3.10. So, be cautious.
**Quick Tip:** If you want to check which of your installed system packages depends on a specific version, use the following `rdepends` switch of `apt-cache` command. In the below example, I am checking which of the installed packages depends on Python 3.8.
```
apt-cache rdepends python3.8
```
```
[~]$ apt-cache rdepends python3.8
python3.8
Reverse Depends:
python3.8-dbg
virtualbox
python3.8-venv
python3.8-full
libpython3.8-testsuite
libglib2.0-tests
idle-python3.8
idle-python3.8
python3.8-minimal
python3.8-doc
python3.8-dev
python3.8-dbg
python3-uno
gedit
virtualbox
stimfit
python3.8-venv
python3-stfio
python3-escript-mpi
python3-escript
python3-csound
pitivi
obs-studio
liferea
libpython3.8-testsuite
libglib2.0-tests
kitty
kdevelop-python
idle-python3.8
idle-python3.8
rhythmbox-plugins
python3.8-minimal
python3.8-doc
python3.8-dev
python3
python3-uno
python3-all
cluster-glue
gedit
[~]$
```
#### Use Python 3.10 as the default Python3
- First, check the current default version using the below command from the terminal.
```
python3 --version
```
- Use `update-alternatives` to create symbolic links to python3
```
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
```
```
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 2
```
- And choose which one to use as Python3 via the command:
```
sudo update-alternatives --config python3
```
![Install Python 3.10 in Ubuntu][3]
Thats all for the steps. Now you can start using the latest Python in your current Ubuntu version for your work/study. You switch over to the stock version using the above commands and changing the version numbers at any given time.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/install-python-3-10-ubuntu/
作者:[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://docs.python.org/3.10/whatsnew/3.10.html
[2]: https://github.com/deadsnakes
[3]: https://www.debugpoint.com/wp-content/uploads/2021/10/Installed-Python-3.10-in-Ubuntu-1024x472.jpeg

View File

@ -0,0 +1,92 @@
[#]: subject: "PaperDE is a Touch-Friendly Linux Desktop Environment"
[#]: via: "https://news.itsfoss.com/paperde/"
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
PaperDE is a Touch-Friendly Linux Desktop Environment
======
PaperDE is a simple, and touch-friendly desktop environment to look out for.
![PaperDE is a Touch-Friendly Linux Desktop Environment][1]
Seeing that many desktop environments exist, you may ask, why do we need another?
Well, the answer is simple. It is good to have options.
Having various user experiences enables you to experiment with different setups until you find the perfect one. If you are new to the Linux world, you may want to check out some of the best desktop environments available:
So, what does PaperDE bring to the table?
### PaperDE: A Minimal Desktop Environment
![paperde desktop view][2]
[PaperDE][3] aims to be a simple, lightweight desktop environment with a touchscreen-friendly user interface.
Yes, it is not a wildly different idea. But, as per the official screenshots, it looks pretty.
When closely examined, PaperDE looks similar to a mix of desktop environments such as [GNOME][4] and [Budgie][5].
![paperde apps][6]
It is being made from the ground up, with Qt/Wayland and [Wayfire][7] at its core, and features [PipeWire][8] as the default audio/video stack.
Furthermore, the DE will feature a dock bar for easy access to pinned apps and support adding various widgets from the [C-Suite][9] apps to the main screen.
![paperde widgets][10]
When asked about its touchscreen and gesture support on Reddit, one of the developers ([rahmanshaber][11]) mentioned:
> No, gestures doesn't work in real life, as you may use it in a tablet where it didn't came with linux installed. We used UI/ UX design approach that makes it easier to navigate the DE using finger and touch.
### Can You Try PaperDE Now?
The short answer is, yes.
The long answer is, that it is still in the early stages of development.
> 💡They recently released PaperDE 0.2.0 a few days back, you can check out their GitLab [project][12] to learn more.
The developers say that it is only possible to test it out using Arch, and no Flatpak or Snap packages are available to install.
I did try using the AUR package, but it failed to build on Arch Linux.
The developers have said that PaperDE will also be made available in the [official repository][13] of Alpine Linux soon. But, for other packages, maintainers and contributors will have to help.
If you are looking for an experiment to test, you can try it out.
[PaperDE][12]
_💬 Are you excited to see a new desktop environment in the works? Or do you think you do not need another project like this?_
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/paperde/
作者:[Sourav Rudra][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/sourav/
[b]: https://github.com/lkxed
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/paper-de.png
[2]: https://news.itsfoss.com/content/images/2022/10/PaperDE-1.png
[3]: https://cubocore.org/paperde.html
[4]: https://www.gnome.org/
[5]: https://ubuntubudgie.org/
[6]: https://news.itsfoss.com/content/images/2022/10/paperde-apps.png
[7]: https://github.com/wayfirewm/wayfire
[8]: https://pipewire.org/
[9]: https://cubocore.org/coreapps.html
[10]: https://news.itsfoss.com/content/images/2022/10/PaperDE-2.png
[11]: https://gitlab.com/rahmanshaber
[12]: https://gitlab.com/cubocore/paper/paperde
[13]: https://pkgs.alpinelinux.org/packages

View File

@ -0,0 +1,94 @@
[#]: subject: "Use open source commands in Powershell"
[#]: via: "https://opensource.com/article/22/10/set-path-powershell"
[#]: author: "Alan Smithee https://opensource.com/users/alansmithee"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Use open source commands in Powershell
======
When you launch an application on an operating system, there are certain code libraries and utility applications that your OS needs to use for that app to run. Your OS knows how to find these libraries and utilities because it has a _system path,_ a map to common shared data that lots of apps need. Every OS has this, but users arent usually aware of it because they dont usually need to care about it. However, when you start coding or using special network utilities or commands, you might care about your own PATH variable.
The PATH variable makes it so that you can save commands to a consistent location, and use them from anywhere on your system using the command prompt or the more powerful (and open source) [Powershell][1].
For instance, say you want to install the open source application `pscp.exe`, a command-line interface to the famous PuTTY OpenSSH client on Windows. You can download it to your hard drive, but how does your command-line know that it exists? Well at first, it doesnt:
```
PS> pscp
pscp: The term 'pscp' is not recognized as the name of a cmdlet, script file, or operable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
```
If youre using an open source command line, such as Powershell or [Cmder][2], you get a useful error hinting that this might be a problem with your path (or the lack thereof). Heres how to solve that problem.
### Setting a PATH
- First, create a folder called `App` on your Desktop.
- Next, right-click on the Windows menu in the bottom left corner of your screen, and select **System**.
![Image of the Windows menu system.][3]
Image by:
(Alan Smithee, CC BY-SA 4.0)
- In the **System** window that appears, click the link to **Advanced system settings** on the left of the window.
- In the **System properties** window that appears, click the **Environment variables** button at the bottom of the window.
![Image Windows system enviroment variables.][4]
Image by:
(Alan Smithee, CC BY-SA 4.0)
- In the **Environment variables** window, click the **New** button under the **User variables** panel.
![Image of new Windows enviroment variables.][5]
Image by:
(Alan Smithee, CC BY-SA 4.0)
- In the dialog box that appears, enter `PATH` for the **Variable name** field, and `%USERPROFILE\Desktop\App` for the **Variable value** field. Click the **OK** button to save your changes.
![Image of Windows path set.][6]
Image by:
(Alan Smithee, CC BY-SA 4.0)
Place commands and applications you want to have access to from a command prompt in `Desktop\Apps` and Powershell, Cmder, and even Cmd will find them:
```
PS> pscp version
pscp: Release 0.XY
Build platform: 64-bit x86 Windows
PS>
```
### Automatic PATH settings
Many applications get automatically added to the system path during installation. However, not all of them do, either because you missed a check box during the install process, or because the application developer expects you to add it yourself. When automatic paths fail, you now know how to forge your own path.
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/10/set-path-powershell
作者:[Alan Smithee][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/alansmithee
[b]: https://github.com/lkxed
[1]: https://opensource.com/article/18/2/powershell-people
[2]: http://cmder.app/
[3]: https://opensource.com/sites/default/files/2022-10/windows-menu-system.png
[4]: https://opensource.com/sites/default/files/2022-10/windows-system-environment-variables.png
[5]: https://opensource.com/sites/default/files/2022-10/windows-environment-variables-new.png
[6]: https://opensource.com/sites/default/files/2022-10/windows-path-set.png

View File

@ -0,0 +1,110 @@
[#]: subject: "How to Recover Arch Linux Install via chroot"
[#]: via: "https://www.debugpoint.com/recover-arch-linux/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
How to Recover Arch Linux Install via chroot
======
**This quick guide explains some of the steps which may come in handy to recover an Arch Linux Install.**
Being a rolling release, sometimes things break in Arch Linux. Not because of your own actions but hundreds of other reasons, such as a new Kernel vs your hardware or software compatibility. But still, Arch Linux is still better and provides the latest packages and applications.
But sometimes, it gives you trouble, and you end up with a blinking cursor and nothing else.
So, in those scenarios, instead of re-formatting or reinstalling, you may want to try to recover the installation, including the data, before giving up your hope. This guide outlines some steps in that direction.
### Recover Arch Linux Installation
- The first step is to create a bootable LIVE USB with Arch Linux. Download the .ISO from this link and create a bootable .ISO. You can check out this guide on how to create bootable .ISO using Etcher. Remember this step requires another working stable system, obviously, as your current system is not usable.
[download arch linux][1]
- You need to know on **which partition your Arch Linux** is installed. This is a crucial step. If you dont know, you can use GParted to find out. Or check in your Grub menu, Or you can run the below command to find out. This will list all your disk partitions, size, and labels.
```
sudo lsblk -o name,mountpoint,label,size,uuid
```
- Once done, plug in the USB stick and boot from it. And you should see the Arch Linux prompt in the LIVE medium.
- Now, mount to the Arch Linux partition using the below. Change the `/dev/sda3` to your respective partition.
```
mount /dev/sda3 /mnt
arch-chroot /mnt
```
- The arch-chroot command will mount your Arch Linux partition in the terminal, so log in using your Arch credentials. Now, you have the following options based on what you want at this stage.
- You can take backups of your data by going through /home folders. In case the troubleshooter doesnt work. You may copy the files to an external USB or another partition.
- Verify the log files, especially the pacman logs, because an unstable system may be caused by upgrading some packages, such as graphics driver or any other driver. Based on the log, you may want to downgrade any specific package if you want.
- You may use the below command to view the last 200 lines of the pacman log file to find out any failing items or dependency removal.
```
tail -n 200 /var/log/pacman.log | less
```
- The above command gives you 200 lines from the end of the pacman.log file to verify. Now, carefully check which of the packages were updated since your successful boot.
- And note down the package name and version somewhere. And you may try to downgrade packages one-by-one or if you think a specific package created a problem. Use the -U switch of pacman command to downgrade.
```
pacman -U <package name>
```
- You can run the following to start your Arch system after downgrading if any.
```
exec /sbin/init
```
- Check the status of your display manager and whether if there are any errors. Sometimes, the display manager creates a problem which cant communicate with X Server. For example, if you are using lightdm, then you can check its status via the below.
```
systemctl status lightdm
```
- Or, you may want to start it via the below command and check the error.
```
lightdm --test-mode --debug
```
- Here is an example of lightdm failure, which caused an unstable Arch system.
![lightdm - test mode][2]
- Or check via kicking off the X server using `startx`.
- In my experience, if you see errors in the above command, try to install another display manager, such as **sddm** and enable it. It may eliminate the error.
- Try the above steps based on the state of your system, and troubleshoot. For errors specific to display manager lightdm, we have a [guide][3] which you may want to check out.
- If you are using sddm, then check out [these troubleshooting steps][4] if something works.
### Closing Notes
Every installation is different. And above steps may/may not work for you. But it is worth a try, and as per my experience, it works. If it works, well, good for you. Either way, let me know how it goes in the comment box below.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/recover-arch-linux/
作者:[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://archlinux.org/download/
[2]: https://www.debugpoint.com/wp-content/uploads/2021/03/lightdm-test-mode.jpg
[3]: https://www.debugpoint.com/2021/03/failed-to-start-lightdm/
[4]: https://wiki.archlinux.org/title/SDDM#Troubleshooting

View File

@ -0,0 +1,202 @@
[#]: subject: "Endless OS Desktop Linux Done Right for the Masses"
[#]: via: "https://www.debugpoint.com/endless-os-review-2021/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Endless OS Desktop Linux Done Right for the Masses
======
**We review the popular Endless OS as Linux Desktop with the new features and updates of the latest version 4.0.**
![Endless OS Desktop version 4.0][1]
Endless OS is a [OSTree based][2] free and open-source[Linux Distribution][3]. This Linux distribution is packaged from Debian/Ubuntu, but not directly based on it. OSTree is an atomic upgrade system for Linux-based OSes. This is a unique way to provide package updates to Linux-distribution, where OSTree packages everything in a server and then replicates to the client.
The main advantage is that your underlying Linux operating system always remain intact, and it is read-only. OSTree only operates in user space.
In that sense, Endless OS never breaks, and it remains fresh as you install for the first time. Today, only very few Linux Distribution are based on OSTree technology such as Fedora SIlverblue and Fedora Kinoite.
That said, let take a deep dive on the Endless OS as a whole and check out the updates to the new version.
### Endless OS Review
#### Version 4.0 Updates
As of writing this post, Endless OS latest version is 4.0 which has been released on Nov 22, 2021. This release brings better app grid switching with indicators, switch user option and a Long term support model. With this new support model, this version 4.0 will continue to receive update even after Endless OS 5.0 released. You can learn more about the updates in this [post][4].
#### Downloading Endless OS
Before I go into the installer, I would like to spend a few words on the installer/.ISO of this distribution. Endless OS brings two separate installers. An .ISO file specifically designed for Windows system to install as dual-boot. This installer is an EXE file which you can download in Windows machine and start the installation! This something unique I found.
With all the Windows hate aside, this actually helps to adopt this Linux distribution far more easily for the average user. An average user may not even know what a partition or a GRUB is. So, in those situations, it downloads, does the partition and installs it without any complex user input. This is really impressive. You can learn more about the Windows installation [here][5].
Other .ISO images are dedicated to
- Basic desktop installer with language selection
- A specially designed .ISO for virtual machine
- .ISO images for ARM hardware such as Raspberry Pi, Pinebook Pro etc.
Go ahead and open the below link and get your .ISO copy. Remember, the full installer ISO files are much larger > 10 GB. So, if you are planning to test, use the basic installer.
![Download options of Endless OS][6]
[download Endless OS][7]
#### Unique Installation of Endless OS
Apart from the Windows installation as described above, you need to know a couple of things. The Endless OS can not be installed at the moment as dual boot with other Linux distributions. What? Yes.
As per the information I found, the .ISO is not designed to handle other Linux distribution as dual boot. However, you can try it in virtual machine with any Linux host OS.
The basic installer gives you two options. Try in LIVE media or reformat the entire disk and install. Yes, entire disk. So be very careful if youre trying to install in actual hardware.
During my test, I had to install it in a virtual machine ([virt-manager][8]) because I dont want to reformat my entire SSD.
The installation went smooth. No error whatsoever. However, it took a little longer (probably 10 to 15 minutes extra) than other Linux distribution installation in same hardware.
![Two options to Install and Try Endless OS][9]
![This OS requires entire disk][10]
#### First Login and Setup
After the successful installation, you get to choose Language, user account, privacy options. These are standard GNOME options which we see in Fedora Workstation GNOME Edition. One of the important item is the terms of use. As this Linux is targeted for mass deployment for schools, non-profits or labs you might want to go through the terms.
User creation dialog have an option to set up parental control for the user being created, which is neat.
#### How the Endless OS with GNOME desktop looks
When you first boot up, you see a desktop with icons and a search bar.
This is the application list menu, which is the default desktop screen. You can search any items in your desktop and launch them via the search bar. The search bar also gives you the option to directly search Google via Chromium, which is the default browser.
This default desktop screen contains preloaded applications and well organized app folders for native GNOME apps.
The bottom panel is awesome, really. It is well optimized in terms of looks and width. Not too narrow or wide. In the far left, you have Endless OS icon, which is a toggle for show applications and show desktop options.
Then, you have the favorites as icons. The favorites icons have the app indicator notifying that it is open. If some app is not marked as favorites, they also show up in the bottom panel when opened with app indicator. This is super neat.
To the right, the system tray is classified intro three sections. First one gives you the volume controls, network and Wi-Fi settings. In the middle you have date, time and calendar on mouse-hover. And at the extreme right you have the options to log out, switch user, power off and other information. All these menu comes up when you mouse-hover into it. You do not need to click them.
#### Hot Corner and Workspace
Endless OS is based on GNOME 3.38 version. Not GNOME. Hence, the workspace design is kind of unique. To the extreme right bottom there is a hot corner. When you click on that, it brings up the current workspace with a list of running applications. When you mouse hover, you can close them or select them without leaving the view.
#### Things that I feel Endless OS done right with GNOME
If you have used GNOME in Ubuntu or Fedora, and then experienced it in Endless OS, you might find some UI tweaks works out of the box. You do not need to set up Extensions or change settings. Here are a couple of them I found that I wish GNOME with Fedora or Ubuntu would feature by default.
- Clicking on desktop empty section shows the desktop by minimizing all open applications. And pressing ALT+TAB brings up the open app windows again. You cant imagine how comfortable this behavior is.
- The show desktop and app toggle at the bottom right of the panel and its default mapping with Super key. This just works.
- All windows have Minimize, Maximize, and Close icons at the top right by default. You do not need additional tweaks to get it working.
- Hot corner implementation at the far right.
- Panel design in terms of width, app icons with app indicators. They are all default implementations.
- System tray menu popup in mouse over by default. You do not need an extra click to open it up. This is such a breathing while using the mouse.
Heres a quick video showing all the above features.
#### Unique Features that make it perfect for non-technical users
Perhaps the unique selling point of this Linux desktop is minimal user intervention during installation + post-install tweaks. And you can start using this desktop without internet connection right away. A perfect desktop for those places where internet is not always available.
Think about a school at a remove place where Internet connectivity is costly or not available. But you need to have a stable, free and easy-to-use Linux Desktop for kids to learn the computing. You can burn a CD/DVD or create USB with language specific .ISO and deploy it offline.
And post-installation does not require any additional settings at all. All the options are well defaulted and just works.
#### Software and Applications
One point to note that, Endless OS use Flatpak to deploy applications. There is no way to install other than Flatpak. For example, you can not use apt or apt-get at all because the file system is read only.
Thats why, the .ISO itself is larger and contains all required applications, language packs preloaded. Ideal for schools, labs and other forms of deployments.
However, if you need additional applications, you can install it using the customized App Center for GNOME with internet connection.
The App Center have curated categories at the left which shows the Flatpak applications. The App center is configured to fetch application metadata directly from Flathub.
![App Center in Endless OS][11]
Oh, this OS supports NVIDIA cards out-of-the-box with either the proprietary driver for supported cards or nouveau for older ones.
#### Help Center
Think about a situation, where a student is learning computer for the first time using Endless OS. If the person want to change the login screen photo, how does he/she do?
Here comes the great built-in help center of this OS which I feel one of the important feature. All the person need to do is type something in the desktop search bar and pull up help.
This is so helpful, isnt it?
![Trying Help in Endless OS-1][12]
![Trying Help in Endless OS-2][13]
#### How about the performance?
I have only managed to install it in a virtual machine. So, it has comfortable response time while using the desktop. The animations and other gestures are instant. I kept it running for more than 15 hours in a virtual machine.
After 15 hours, it was consuming around 1 to 2% CPU and 1 GB of memory. Most of the CPU is consumed by gnome-shell, followed by Xorg. I am not sure why gnome-shell was consuming so much, might be memory leak bug. Not sure though.
![Performance of Endless OS][14]
#### What about disk space?
As this Linux distribution plans to be a self-sufficient distro without internet, the installation size is a little larger compared to other distributions such as Ubuntu or Fedora. A default virtual machine installation takes around ~11 GB of disk space.
#### Is it a perfect Linux Distribution? Well, not really.
I try many Linux distributions and desktops for this blog and my work. Very few are perfect and ready to use just after installation. I mean, you dont need to go over “10 things to do after installing **” with this Linux distribution.
But, some minor improvements are welcome from the team in the future. First item I feel, an .ISO which is dedicated to be installed side-by-side with Ubuntu, fedora and other Linux. This is really needed.
Probably some support for Snap packages in the future.
And the final drawback might be the availability of applications only as Flatpak. Not every app have an official flatpak version today. That limits its capability to some extent, but not more.
#### If things go wrong how to get help and Support?
Theres a great online active community of Endless OS where you get support from its creators. And the documentation is also very impressive which contains all necessary details ranging from installation to usage. You can visit the community and documentation using the below links.
- [https://support.endlessos.org/en/home][15]
- [https://community.endlessos.com/][16]
### Closing Notes
Endless OS is one of those few Linux distributions which I felt really well thought of and designed. It is perfect for schools, labs, and remote/offline situations. And perfectly designed to be used by anyone without prior knowledge of much computing, even experience of Windows. Even the Windows users would feel comfortable using this modified GNOME desktop. That said, I am hoping that the team should bring up options to install it alongside other Linux distributions. Then it might be a daily driver distribution for many Linux users and get more attention it deserves.
If you want only one Linux operating system in your machine which is super stable and run for years, then go ahead and try this distribution. You will be amazed by how much time you save without worrying about terminal, commands, updates/upgrades and sudden package dependency surprises.
To wrap up this Endless OS review, what you think about Endless OS? Is it a perfect distro? Let me know in the comment box below.
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/endless-os-review-2021/
作者:[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/2021/11/Endless-OS-Desktop-version-4.0-1024x582.jpg
[2]: https://ostree.readthedocs.io/en/stable/
[3]: https://www.debugpoint.com/category/distributions
[4]: https://support.endlessos.org/en/endless-os/release-notes/4-0
[5]: https://support.endlessos.org/en/installation/windows-installer/dual-boot
[6]: https://www.debugpoint.com/wp-content/uploads/2021/11/Download-options-of-Endless-OS.jpg
[7]: https://endlessos.com/download/
[8]: https://www.debugpoint.com/2020/11/virt-manager/
[9]: https://www.debugpoint.com/wp-content/uploads/2021/11/Two-options-to-Install-and-Try-Endless-OS-1024x734.jpg
[10]: https://www.debugpoint.com/wp-content/uploads/2021/11/This-OS-requires-entire-disk.jpg
[11]: https://www.debugpoint.com/wp-content/uploads/2021/11/App-Center-in-Endless-OS-1024x625.jpg
[12]: https://www.debugpoint.com/wp-content/uploads/2021/11/Trying-Help-in-Endless-OS-1-1024x576.jpg
[13]: https://www.debugpoint.com/wp-content/uploads/2021/11/Trying-Help-in-Endless-OS-2.jpg
[14]: https://www.debugpoint.com/wp-content/uploads/2021/11/Performance-of-Endless-OS.jpg
[15]: https://support.endlessos.org/en/home
[16]: https://community.endlessos.com/

View File

@ -0,0 +1,143 @@
[#]: subject: "Using habits to practice open organization principles"
[#]: via: "https://opensource.com/open-organization/22/6/using-habits-practice-open-organization-principles"
[#]: author: "Ron McFarland https://opensource.com/users/ron-mcfarland"
[#]: collector: "lkxed"
[#]: translator: "Donkey-Hao"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
利用习惯练习开放式组织原则
======
你可以按照以下步骤,来养成符合开放文化的习惯,并改掉那些不符合开放文化的习惯。
![Selfcare, drinking tea on the porch][1]
很久以来,我就对习惯很感兴趣。几年前,我做了一次关于习惯利弊的演讲,并且介绍了如何改变坏习惯、养成好习惯。不久前,我阅读了 Art Markman 教授的 《Smart Thinking》一书这本书主要讨论的也是习惯。或许你会问习惯与 [开放式组织的原则][2] 有什么关系?这其中有一定的联系!我将会分成两篇文章,来解释你可以如何管理你的习惯。
在本文中,我们将讨论习惯如何工作的,以及更重要的是你如何去开始改变你的习惯。在下一篇文章中,我们将回顾 Markman 教授在他书中所表达的思想。
### 开放式组织原则和习惯的交集
设想你学习过开放式组织的原则,尽管你认为它们很有趣并且很有价值,但是你还没有对这些原则形成自己的习惯。以下就是你现实中会表现出来的样子。
社区:如果你面对一项重要挑战,但是你不知道如何独自解决它,你很有可能会由于习惯而放弃这项挑战。养成与由志同道合的人组成的社区,共同解决问题的习惯,不是更好吗?
协作:假设你认为你不善于合作,你喜欢独立完成任务。你知道有一些需要合作才能完成的事情,但是你并没有参与合作的习惯。为了弥补这种情况,你必须养成与他人更多合作的习惯。
信息共享:假如说你喜欢将你所做的事以及所知道的东西当作秘密。但是,你知道如果你不共享信息,你也无法从他人那里获取有用的信息。因此,你必须拥有共享信息的习惯。
包容性:想象一下,你与你不熟悉的人,或者是在个性、文化还是语言上都与你不同的人一起工作,你会感到不自在。但是,你知道如果你想要成功的话,你必须要和各种各样的人一同工作。那你该如何培养包容的习惯呢?
适应能力:假设当你所做的事情不再能达到你所希望的结果之后,你往往会拒绝改变。但是,你知道你必须适应这种情况,并重新调整你的努力,那你如何才能养成适应的习惯呢?
### 习惯是什么?
在我给出关于上述开放式组织原则的示例之前,我想先解释一下习惯的一些相关特征。
* 习惯是重复很多次的行为,最终习惯会成为你下意识的行为。
* 习惯是自动的并且当时会感觉良好。当一个人在养成习惯后,做习惯行为会使他感觉很好,但是当他跳出习惯做事时,会感到不舒服。或许之后他会再次考虑尝试。
* 一些习惯是有益的,并且能够节省你很多的能量。大脑只占身体质量的 2%,但是却会消耗 20% 的能量。因为大脑在思考和集中精力上需要消耗很多能量,你可以通过培养下意识的习惯来节省能量。
* 一些习惯对你有害,因此你渴望改变这些坏习惯。
* 所有的习惯都会给你回报,即使回报是短暂的。
* 习惯是基于你熟悉的事情和你知道的东西而形成的,即使你可能并不一定需要这个习惯。
### 养成习惯的 3 个步骤
1、提示触发器首先提示或者触发器会告诉大脑进入之前学习的习惯性行为的自动模式之中。这里的提示可以是某件事比如每天在确定的时间点、在确定的地点看到一包糖果或者看到电视购物节目亦或者看到某个特定的人。时间压力会触发你去做例行事项routine。在令人崩溃的环境下也会触发例行事项。简而言之某件事提醒你开始做一些固定的事情。
2、例行事项routine例行事项会被触发。一个例行事项是一系列的身体、心理或者情绪上的表现可以是非常复杂的也可以十分简单。诸如与心情相关的一些习惯可以在很短时间内被触发。
3、奖励最后一步是奖励奖励会帮助你的大脑计算一个特定的行为是否值得记住。奖励的范围很广泛可以是食物或者其他令你感到快乐的东西。
### 商业环境中的坏习惯
习惯不仅仅是个人行为。所有的组织或多或少都有一些好的坏的制度习惯。然而,一些组织会有先见之明地设计好他们的习惯,而其他组织却不会设计习惯,只是随着竞争或者担心落伍而演变。以下是一些组织的坏习惯示例:
* 总是晚提交报告
* 单独工作或者分组合作,然而采用相反的方法才合适
* 上级对下级施压很大
* 不关心销售额的下降
* 由于内卷,销售团队之间不协同合作
* 让一个健谈的人主导会议
### 逐步改变习惯
习惯不是一成不变的,你可以改变你的行为习惯。首先,要知道不能一下子改变所有坏习惯。相反,先找到一个关键的习惯进行改变,这会产生小而快速的奖励。请记住,改变了一个关键的习惯后,会产生连锁反应。
以下是你可以用来改变任何习惯的四步框架,其中还包括与开放式组织原则相关的习惯。
##### 第一步:调整例行事项
确定你的习惯循环和例行事项,例如,当面临一件你无法独自解决的重大挑战之时。例行事项(你表现出的行为)最容易确定,所以先从它下手:例如,“在我的组织中,没人愿意和别人讨论问题。大家都会早早地放弃”。决定好你想要调整、改变或者学习的事情:例如:“每次重大挑战到来的时候,我应该和他人讨论一下,并且尝试建立一个志同道合、有能力解决问题的社区。”
##### 第二步:有奖励的实验
奖励是很重要的,因为它会满足你强烈的渴望。但是,我们通常没有意识到强烈的渴望会驱动我们的行为。只有在事后,才会被我们察觉。比方说,开会时很多次你都想尽快离开会议室,避免讨论话题,即使内心清楚你应该弄明白如何解决问题。
要了解强烈的渴望是什么,你必须要实验。这可能会花费你几天、几周甚至更久的时间。你必须要感受到触发压力,才能完全识别它。例如,问问你自己当你试图推卸责任时的感受。
把你自己当作科学家,进行实验并收集数据。这是你调查研究的步骤:
1、第一个行为结束后开始调整后面的行为看看有没有奖励变化。例如如果你每次碰到自己无法解决的挑战时都放弃那么奖励就是不承担责任的解脱。更好的解决方法是与至少一个同样关心该问题的人讨论该问题。关键是要测试不同的假设以确定哪种渴望驱使你的日常生活。你真的想逃避责任吗
2、在经历四至五个不同的例行事项和奖励之后写下在收到每个奖励后立即想到的前三、四件事。例如你不会在面对挑战时放弃而是与其他人讨论这个问题。然后你决定可以做什么。
3、写下你的感受或渴望后设置一个 15 分钟的计时器。当计时器结束时,问问自己是否依旧渴望。在屈服于渴望之前,请休息一会儿并再考虑一两次这个问题。这会迫使你意识到这一刻,并帮助你稍后回忆起你当时的想法。
4、试着记住你在那一刻的想法和感受然后在例行事项后 15 分钟。如果渴望消失了,你就已经确定了回报是什么。
##### 第三步:分析出坏习惯的提示或触发器
坏习惯的提示信息很难鉴定,因为通常有太多信息干扰你未定型的行为。要在干扰中鉴别提示,你可以在你的坏习惯出现的时候,观察以下四个因素:
地点:它在哪里发生?例如:“我最大的挑战在会议中出现。”
时间:它什么时候出现?例如:“如果我累了,下午的会议就是在浪费时间,因为我没兴趣付出努力。”
感受:你当时的情绪状态是怎样的?例如:“当我听到这个问题时,我感到压力山大并且很沮丧。”
人们:当时有谁或者哪一类人在你周围,还是你是独自一人?例如:“在会议上,大多数人似乎对这个问题也不感兴趣。剩下的人主导会议讨论。”
##### 第四步:制定养成好习惯的计划
一旦你确定奖励可以驱动你的行为,某些提示会触发你的坏习惯,那你就可以开始改变你的行动。请跟随以下三个简单的步骤:
1、首先规划好习惯的提示。例如“在会议上我将发现并将我的注意力集中在重要的问题上。”
2、其次选择一种能带来相同回报的好行为但不会遭受你现在坏习惯的惩罚。例如“我将找到解决这个问题的方法并考虑我需要哪些资源和技能才能成功。当我创建一个能够成功解决问题的社区时我会感觉很棒。”
3、最后让你选择的行为成为深思熟虑的选择直到你不再需要考虑它就能下意识地做它了。例如“我将有意识地关注重要问题直到我可以不假思索地做到这一点。我会查看近期会议的安排表这样我就可以提前知道会发生什么。在每次会议开始前和会议期间我会问自己为什么我会来开会来确保我集中注意于重要的事情。”
##### 指定计划来避免忘记必做事项
为了成功地开始做你经常忘记的事情,请按照以下步骤:
1、 计划你想要做什么
2、 决定何时完成
3、 将计划分为必要的小任务
4、 用计时器或者日常计划进行提示,并开始每项任务
5、 按计划完成每个任务
6、 按时完成后就奖励自己
### 习惯的改变
习惯的改变需要很长时间。有时候互助小组会帮助你改变习惯。有时候,在低压力环境中,进行大量的练习和角色预演能够更好地帮助你改变。想要找到有效的奖励,你需要不断的尝试。
有时,习惯是更重要、更深层次问题的反映。在这些情况下,你可能需要专业帮助。但是,如果你有改变的愿望,并接受在此过程中会有一些小失败,你就可以控制任何习惯。
在本文中,我使用了使用 *提示-例行事项-奖励* 三个过程的社区开发示例。它同样可以应用于其他开放式组织的原则。我希望这篇文章能让你思考如何通过了解习惯如何运作、采取措施改变习惯,以及制定计划避免忘记你想做的事情,来管理习惯。无论是开放式组织原则,还是其他任何东西,你现在都可以判断出提示、常规和奖励。当提示出现时,这将引导你制定改变习惯的计划。
在我的下一篇文章中,我将通过 Art Markman 教授在《Smart Thinking》中观点来继续讨论习惯。
--------------------------------------------------------------------------------
via: https://opensource.com/open-organization/22/6/using-habits-practice-open-organization-principles
作者:[Ron McFarland][a]
选题:[lkxed][b]
译者:[Donkey-Hao](https://github.com/Donkey-Hao)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/ron-mcfarland
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/coffee_tea_selfcare_wfh_porch_520.png
[2]: https://theopenorganization.org/definition/open-organization-definition/

View File

@ -1,145 +0,0 @@
[#]: subject: "The story behind Joplin, the open source note-taking app"
[#]: via: "https://opensource.com/article/22/9/joplin-interview"
[#]: author: "Richard Chambers https://opensource.com/users/20i"
[#]: collector: "lkxed"
[#]: translator: "MareDevi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
开源笔记软件Joplin背后的故事
======
Laurent Cozic与我坐下来讨论了Joplin是如何开始的以及这个开源笔记软件的下一步计划。
在这次采访中我见到了笔记软件Joplin的创建者Laurent Cozic。[Joplin][2]是[20i][3]奖励的赢家,所以我想了解是什么让它如此成功,以及他如何实现的。
**您能总结一下什么是Joplin吗**
[Joplin][4]是一个开源的笔记软件。它可以你捕获你的想法并从任何设备安全地访问它们。
**显然,还有很多其他的笔记应用,那么除了免费使用之外,它还有什么不同呢?**
对我们的许多用户来说,它是开源的这一事实是一个非常重要的方面,因为这意味着没有供应商对数据的封锁,而且数据可以很容易地被导出并以各种方式访问。
我们还关注用户的安全和数据隐私,特别是端到端加密同步功能,以及通过对应用的任何连接保持透明。我们还与安全研究人员合作,以保证软件更加安全。
最后Joplin可以通过几种不同的方式进行定制--通过插件可以添加新的功能和主题来定制应用程序的外观。我们还公开了一个数据API它允许第三方应用程序访问Joplin的数据。
**[[相关阅读5款Linux上的笔记应用]][5]**
**这是一个竞争非常激烈的市场,那么是什么激发了您创建它的想法?**
这是有原因的的。我从2016年开始研究它因为我不喜欢现有的商业记事应用程序笔记、附件或标签不能轻易被其他工具导出或操作。
这主要是由于供应商的封锁,另外还有供应商缺乏动力,因为他们没有动力帮助用户将他们的数据转移到其他应用程序。还有一个问题是,这些公司通常会以纯文本形式保存笔记,而这有可能造成数据隐私和安全方面的问题。
因此,我决定开始创建一个简单且具有同步功能的移动和终端应用程序,使我的笔记能够轻松地在我的设备上访问。之后又创建了桌面应用程序,项目从此开始发展。
![Chrome OS上Joplin的图片][6]
图片来自: (Opensource.com, CC BY-SA 4.0)
**编写Joplin花了多长时间呢?**
自2016年以来我一直在断断续续地工作但并不是专门去维护。不过在过去的两年里我更加专注于它。
**对于准备创建自己的开源应用的人,你有什么建议?**
挑选一个你自己使用的项目和你喜欢的技术来工作。
管理一个开源项目有时是很困难的,所以必须要有足够的兴趣去让它变得更有价值。那么我想 "早发布,多发布 "在这里也适用,这样你就可以衡量用户的兴趣,以及是否有必要花时间进一步开发这个项目。
**有多少人参与了Joplin的开发?**
有3-4人参与开发。目前我们还有6名学生在谷歌代码之夏(Google Summer of Code)项目中工作。
**许多人都创建开源项目但Joplin对您来说是一个巨大的成功。关于如何获得关注你能否给开发者提供一些建议?**
没有简单的公式,说实话,我不认为我可以在另一个项目中复制这种成功!你必须对你所做的事情充满热情,但同时也要严谨、有组织、稳步前进,确保代码质量保持高水平,并拥有大量的测试单元以防止倒退。
同时,对于你收到的用户反馈保持开放的态度,并在此基础上改进项目。
一旦你掌握了这些,剩下的可能就全靠运气了——如果你做的项目让很多人都感兴趣,事情可能会顺利进行!
**一旦你得到关注,但如果你没有传统的营销预算,你如何保持这种势头?**
我认为这是在于倾听项目周围的社区。举个例子来说我从未计划过建立一个论坛但有人在GitHub上提出了这个建议所以我创建了一个论坛它成为了一个分享想法、讨论功能、提供支持等很好的方式。社区也普遍欢迎新人这形成了一种良性循环。
除此以外,定期就项目进行沟通也很重要。
我们没有一个公开的路线图因为大多数功能的ETA通常是 "我不知道"但我试图就即将到来的功能、新版本等进行沟通。我们也会就重要的事件进行沟通特别是谷歌的代码之夏或者当我们有机会赢得像20i FOSS奖的时候。
最后,我们很快将在伦敦举行一次面对面的聚会,这是与社区和合作者保持联系的另一种方式。
**用户的反馈是如何影响路线图的?**
很明显贡献者们经常仅仅因为他们需要某个特性而从事某些工作。但除此之外我们还根据论坛和GitHub问题追踪器上的信息追踪对用户来说似乎最重要的功能。
例如移动应用程序现在具有很高的优先级因为我们经常从用户那里听到它的限制和问题是有效使用Joplin的一个问题。
![桌面使用Joplin的图片][8]
图片来自: (Opensource.com, CC BY-SA 4.0)
**您如何跟进开发和编写代码的最新进展?**
主要是通过阅读Hacker News!
**你有个人最喜欢的自由/开源软件可以推荐吗?**
在不太知名的项目中,[SpeedCrunch][9]作为一个计算器非常好。它有很多功能,而且很好的是它能保留以前所有计算的历史。
我还使用[KeepassXC][10]作为密码管理器。在过去的几年里,它一直在稳步改进。
最后,[Visual Studio Code][11]作为一个跨平台的文本编辑器非常棒。
**我原以为Joplin是以Janis的名字命名的但维基百科告诉我来自是Scoot Joplin。你为什么选择这个名字?**
我起初想把它命名为 "jot-it",但我想的这个名字已经被人取走了。
由于我那时经常听斯科特-乔普林的拉格泰姆音乐(我相当痴迷于此),我决定使用他的名字。
我认为产品名称的含义并不太重要,只要名称本身易于书写、发音、记忆,并与一些积极的东西(或至少没有消极的东西)有关。
我觉得"Joplin"符合所有条件。
**关于Joplin的计划您还有什么可以说的吗也许是对一个新功能的独家预告**
如前所述,我们非常希望在用户体验设计和新功能方面对移动应用进行改进。
我们也在考虑创建一个“插件商店”,以便更容易地浏览和安装插件。
**感谢Laurent — 祝Joplin的未来好运.**
*[这篇访谈最初发表在20i博客上已获得许可进行转载。][12]*
--------------------------------------------------------------------------------
via: https://opensource.com/article/22/9/joplin-interview
作者:[Richard Chambers][a]
选题:[lkxed][b]
译者:[MareDevi](https://github.com/MareDevi)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/20i
[b]: https://github.com/lkxed
[1]: https://opensource.com/sites/default/files/lead-images/wfh_work_home_laptop_work.png
[2]: https://joplinapp.org/
[3]: https://www.20i.com/foss-awards/winners
[4]: https://opensource.com/article/19/1/productivity-tool-joplin
[5]: https://opensource.com/article/22/8/note-taking-apps-linux
[6]: https://opensource.com/sites/default/files/2022-09/joplin-chrome-os.png
[7]: https://opensource.com/article/21/10/google-summer-code
[8]: https://opensource.com/sites/default/files/2022-09/joplin-desktop.png
[9]: https://heldercorreia.bitbucket.io/speedcrunch/
[10]: https://opensource.com/article/18/12/keepassx-security-best-practices
[11]: https://opensource.com/article/20/6/open-source-alternatives-vs-code
[12]: https://www.20i.com/blog/joplin-creator-laurent-cozic/

View File

@ -0,0 +1,240 @@
[#]: subject: (Complete Guide to Configuring SSH in Ubuntu)
[#]: via: (https://itsfoss.com/set-up-ssh-ubuntu/)
[#]: author: (Chris Patrick Carias Stas https://itsfoss.com/author/chris/)
[#]: collector: (lujun9972)
[#]: translator: (Donkey-Hao)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
在 Ubuntu 中配置 SSH 的完整指南
======
如今 SSH 已成为了登录远程服务器的默认方式。
SSH 的全称是 `Secure Shell` (安全的 Shell它功能强大、效率高并且使用主流的网络协议在两个远程终端之间建立连接。让我们不要忘记它名称的安全部分SSH 会加密所有的通信流量,以防止如劫持、窃听等攻击,同时提供不同的身份认证方式和无数个配置选项。
在这份新手指南中,你会学到:
1、SSH 的基本概念
2、设置 SSH 服务器(在你想要远程登录的系统上)
3、从客户端你的电脑通过 SSH 连接远程服务器
### SSH 的基本概念
在学习配置过程前,让我们先了解一下 SSH 的全部基础概念。
SSH 协议基于客户端-服务器(CS)架构。“服务器”允许“客户端”通过通信进行连接。该信道是经过加密的,信息交换通过 SSH 公私钥进行管理。
![Image credit: SSH][1]
[OpenSSH][2] 是最流行的开源工具之一,在 Linux、BSD 和 Windows 系统上提供 SSH 功能。
想要成功配置 SSH你需要
1、在服务器端部署 SSH 服务器组件(server components),由 `openssh-server` 包提供。
2、在你远程访问服务器的客户端上部署 SSH 客户端组件,由 `openssh-client` 包提供,大多数 Linux 和 BSD 发行版都已经预装好了。
区分服务器和客户端是十分重要的事情。或许你不想要你的 PC 作为 SSH 服务器,除非你有充分理由希望其他人通过 SSH 连接你的系统。
普遍来说,你有一个专用的服务器系统。例如,一个 [允许 Ubuntu 的树莓派][3]。你启动 [树莓派的 SSH 服务][4],这样你可以在你 PC 中的终端,通过 SSH 控制并管理设备。
有了这些信息,让我们看看如何在 Ubuntu 上设置 SSH 服务器。
### 在 Ubuntu 服务器中配置 SSH
设置 SSH 并不复杂,只需要以下几步。
#### 前提
1、在服务器端拥有 `sudo` 权限的用户
2、可以下载所需包的互联网连接
3、你的网络中至少有另一个系统。可以是局域网中的另一台电脑远程服务器或者主机中安装的虚拟机。
_**再次强调,在你想要通过 SSH 远程登录的系统上安装 SSH 服务**_
#### 第一步:安装所需包
让我们从打开终端输入一些必要命令开始。
注意,在安装新的包或者软件前,要 [更新你的 Ubuntu 系统][5],以确保运行的是最新版本的程序。
```
sudo apt update && sudo apt upgrade
```
你要运行 SSH 服务器的包由 OpensSSH 的 `openssh-server` 组件提供:
```
sudo apt install openssh-server
```
![][6]
#### 第二步:检查服务器状态
但你下载并安装完包后SSH 服务器应该已经运行了,但是为了确保万无一失我们需要检查一下:
```
service ssh status
```
你还可以使用 `systemd` 命令:
```
sudo systemctl status ssh
```
你应该会看到这样的结果,其中 `active` 是高亮的。输入 `q` 退出该页面。
![][7]
如果你的结果中 SSH 服务没有运行,使用这个命令运行它:
```
sudo systemctl enable --now ssh
```
#### 第三步:运行 SSH 通过防火墙
Ubuntu 带有名为 [UFW][8](简单的防火墙——UncomplicatedFirewall) 的防火墙,这是管理网络规则的 `iptables` 的一个接口。如果启动了防火墙,它可能会阻止你连接服务器。
想要配置 UFW 允许你的接入,你需要运行如下命令:
```
sudo ufw allow ssh
```
UFW 的运行状态可以通过运行`sudo ufw status` 来检查。
现在,我们的 SSH 服务器已经开始运行了,在等待来自客户端的连接。
### 连接远程服务器
你本地的 Linux 系统已经安装了 SSH 客户端。如果没有,你可以在 Ubuntu 中使用如下命令安装:
```
sudo apt install openssh-client
```
要连接你的 Ubuntu 系统,你需要知道它的 IP 地址,然后使用 `ssh` 命令,就像这样:
```
ssh username@address
```
**用户名**(username) 改为系统上真正的用户名,并将 **地址**(address) 改为你服务器的 IP 地址。
如果你 [不知道 IP 地址][9],可以在服务器的终端输入 `ip a` 查看结果。应该会看到这样的结果:
![Using “ip a” to find the IP address][10]
可以看到我的 IP 地址是 **192.168.1.111**。让我们使用 **[[email protected]][11]** 格式进行连接。
```
ssh [email protected]
```
第一次连接 SSH 服务器时,它会请求添加主机。输入 `yes` 并回车即可。
![First time connecting to the server][12]
SSH 会立即告诉你该主机已经被永久添加了,并要求你输入指定用户的口令,输入口令并再次按回车即可。
![Host added, now type in the password][13]
瞧,你远程登录了你的 Ubuntu 系统!
![Connected!][14]
现在,你可以在远程服务器的终端里和寻常一样工作了。
#### 关闭 SSH 连接
你只需要输入 `exit` 即可关闭连接,它会立马关闭不需要确认。
![Closing the connection with “exit”][15]
### 在 Ubuntu 中关闭并禁止 SSH Stopping and Disabling SSH in Ubuntu
如果你想要停止 SSH 服务,需要运行该命令:
```
sudo systemctl stop ssh
```
该命令会关闭 SSH 服务,直到重启它或者系统重启。想要重启它,输入:
```
sudo systemctl start ssh
```
现在,如果你想要禁止 SSH 跟随系统启动,使用该命令:
```
sudo systemctl disable ssh
```
该命令不会停止当前的 SSH 会话,只会在启动的时候生效。如果你想要它跟随系统启动,输入:
```
sudo systemctl enable ssh
```
#### 其他 SSH 客户端
大多数 `*nix` 系统中都有 `ssh` 工具,从 Linux 到 macOS但这些并不是唯一存在的选项这里有几个可以在其他操作系统中使用的客户端
* [PuTTY][16] 是一个免费并开源的 Windows 系统上的 SSH 客户端。它功能强大并且简单易用。如果你从 Windows 系统上连接你的 Ubuntu 服务器PuTTY 是最好的选择。
* [JuiceSSH][17] 对 Android 用户来说是十分优秀的工具。如果你在旅途中需要一个移动客户端来连接你的 Ubuntu 系统,我强烈建议你试试 JuiceSSH。它已经出现了将近 10 年,并且可以免费使用。
* 最后是 [Termius][18],它可用于 Linux、Windows、macOS、iOS 和 Android。它有一个免费版本和几个高级选项。如果你运行大量服务器并进行共享连接的团队合作那么 Termius 对你来说是一个不错的选择。
#### 总结
在这份指导中,你可以在 Ubuntu 系统中设置 SSH 作为服务器,允许来自你电脑的远程安全的连接,便于你通过命令行开展工作。
我们的网站—— Linux Handbook——有许多关于 SSH 的文章。在此我推荐以下文章:
* [Linux SSH 入门教程][19]
* [利用 SSH 配置文件管理多个 SSH 连接][20]
* [向SSH服务器添加公钥以进行无密码身份验证][21]
* [保护你的 SSH 服务器的 SSH 加固技巧][22]
如果你觉得它太难了,[Linux Handbook 网站有一个高级视频课程,为初学者解释 SSH][23] 以及动手实验。这将使你对该内容有更简化的知识。
远程工作快乐!
--------------------------------------------------------------------------------
via: https://itsfoss.com/set-up-ssh-ubuntu/
作者:[Chris Patrick Carias Stas][a]
选题:[lujun9972][b]
译者:[Donkey-Hao](https://github.com/Donkey-Hao)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/chris/
[b]: https://github.com/lujun9972
[1]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-diagram.png?resize=800%2C259&ssl=1
[2]: https://www.openssh.com/
[3]: https://itsfoss.com/install-ubuntu-server-raspberry-pi/
[4]: https://itsfoss.com/ssh-into-raspberry/
[5]: https://itsfoss.com/update-ubuntu/
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0001.png?resize=800%2C253&ssl=1
[7]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0002.png?resize=800%2C263&ssl=1
[8]: https://itsfoss.com/set-up-firewall-gufw/
[9]: https://itsfoss.com/check-ip-address-ubuntu/
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-find-ip.png?resize=800%2C341&ssl=1
[11]: https://itsfoss.com/cdn-cgi/l/email-protection
[12]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0004.png?resize=800%2C87&ssl=1
[13]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0005.png?resize=800%2C57&ssl=1
[14]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0006.png?resize=800%2C322&ssl=1
[15]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/05/ssh-0007.png?resize=800%2C87&ssl=1
[16]: https://www.putty.org/
[17]: https://juicessh.com/
[18]: https://termius.com/
[19]: https://linuxhandbook.com/ssh-basics/
[20]: https://linuxhandbook.com/ssh-config-file/
[21]: https://linuxhandbook.com/add-ssh-public-key-to-server/
[22]: https://linuxhandbook.com/ssh-hardening-tips/
[23]: https://linuxhandbook.com/sshcourse/

View File

@ -0,0 +1,264 @@
[#]: subject: (Try Linux on any operating system with VirtualBox)
[#]: via: (https://opensource.com/article/21/6/try-linux-virtualbox)
[#]: author: (Stephan Avenwedde https://opensource.com/users/hansic99)
[#]: collector: (lujun9972)
[#]: translator: (chai001125)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
使用 VirtualBox 安装 Linux 虚拟机
======
VirtualBox 能帮助任何人(即使是命令行新手)安装一个新的虚拟机。
![Person programming on a laptop on a building][1]
VirtualBox 能让任何人都可以轻松安装 Linux 虚拟机。你不需要有使用命令行的经验,就可以自己安装一个简单的 Linux 虚拟机。在虚拟机方面,我精通很多东西,但这篇文章将向新手展示如何安装一个 Linux 虚拟机。此外,这篇文章还概述了如何使用开源虚拟机管理程序 [VirtualBox][2] ,来运行以及安装一个测试目的的 Linux 系统。
### 一些术语
在开始之前你需要了解在本安装教程中的两个操作系统OS之间的区别
* **主机系统host system** 这指的是你安装 VirtualBox 的操作系统(即本机的操作系统)。
* **访客系统guest system** 这指的是你想要在主机系统之上运行的虚拟化系统。
在输入/输出、网络、文件访问、剪贴板、音频和视频方面,主机系统和访客系统都必须能够交互。
在本教程中,我将使用 Windows 10 作为 _主机系统_[Fedora 33][3] 作为 _访客系统_
### 安装前的准备
当我们谈论虚拟化时,实际上,我们指的是 [硬件辅助虚拟化][4]。硬件辅助虚拟化需要兼容的 CPU。过去十年来几乎每个普通的 x86 CPU 都有这一功能。AMD 公司称这样的 x86 CPU 是具有 **AMD 虚拟化技术AMD-V** 的处理器,英特尔公司则称其是具有 **Intel 虚拟化技术VT-x** 的处理器。虚拟化功能增加了一些额外的 CPU 指令,你可以在 BIOS 中启用或禁用这些指令。
在安装虚拟机之前:
* 确保在 BIOS 中启用了虚拟化技术AMD-V 或 VT-x
* 下载并安装好 [VirtualBox][5]。
### 准备虚拟机
下载你要用的 Linux 发行版的镜像文件。下载 32 位还是 64 位的操作系统映像都没有关系,因为在 32 位的主机系统上也可以启动 64 位的操作系统映像(当然内存的使用会受限),反之亦然。
> **注意事项:** 如果可以的话,请下载附带有 [逻辑卷管理器][6]LVM的 Linux 发行版。LVM 会将文件系统与物理硬盘驱动器解耦。如果你的空间不足时,这能够让你增加访客系统的硬盘驱动器的大小。
现在,打开 VirtualBox然后单击黄色的**新建**按钮:
![VirtualBox New VM][7]
接下来,配置访客操作系统允许使用多少内存:
![Set VM memory size][9]
我的建议是:**不要吝啬访客操作系统的内存!**
当访客操作系统的内存不足时访客系统将开始从随机存取存储器RAM转换到硬盘驱动器hard drive进行内存的分页这样会极大地恶化系统的性能和响应能力。如果底层的主机系统开始分页你很可能不会注意到。对于具有图形化桌面环境的 Linux 工作站系统,我建议至少分配 4GB 内存。
接下来,创建虚拟磁盘:
![Create virtual hard disk][10]
虚拟磁盘的格式选择默认的选项 **VDIVirtualBox 磁盘映像)** 就可以了:
![Selecting hard disk file type][11]
在以下的窗口中,我建议选择**动态分配**,因为这允许你在之后增加虚拟磁盘的大小。如果你选择了**固定大小**,磁盘的速度可能会更快,但你将无法修改虚拟磁盘的大小了:
![Dynamically allocating hard disk][12]
建议你使用附带有逻辑卷管理器LVM的 Linux 发行版,这样你就可以先创建一个较小的硬盘。如果之后你的访客系统的空间快用完了,你可以按需增加磁盘的大小。
> **注意**:我选择的访客系统为 Fedora在 Fedora 的官网说明:[Fedora 至少需要分配 20GB 的空闲磁盘空间][13]。我强烈建议你遵守该规范。在这里,我选择了 8GB以便稍后演示如何用命令行增加磁盘空间。如果你是 Linux 新手,或者对命令行没有经验,请依旧选择 20GB。
![Setting hard disk size][14]
创建好硬盘驱动器后,从 VirtualBox 主窗口的列表中选择新创建的虚拟机,然后单击**设置**。在设置菜单中,点击**系统**,然后选择**处理器**标签。默认情况下VirtualBox 只向访客系统分配一个 CPU 内核。在现代多核 CPU 计算机上,分配至少两个内核是没有任何问题的,这能显著地加快访客系统的速度:
![Assigning cores to guest system][15]
#### 设置网络适配器
接下来,要处理的是网络设置。默认情况下, VirtualBox 会创建一个 NAT 连接,这对于大多数情况来说,是没有问题、不用做其他更改的:
![Network settings][16]
你也可以创建多个网络适配器。以下是网络适配器最常见的类型:
* **NAT** NAT适配器能自动执行 [网络地址转换][17]。从外部看,主机和访客系统使用着相同的 IP 地址。你无法通过网络从主机系统内访问访客系统。(尽管,你也可以通过定义 [端口转发][18]来访问某些服务。当你的主机系统可以访问互联网时则你的访客系统也可以访问互联网。NAT 不再需要进一步的配置。
* _如果你只需要让访客系统接入互联网就可以的话请选择 **NAT**。_
* **桥接适配器Bridged adapter** 在此配置中,访客系统和主机系统可以共享相同的物理以太网设备。这两个系统都将拥有独立的 IP 地址。从外部看,网络中会有两个独立的系统,它们共享相同的物理以太网适配器。这种设置更灵活,但需要更多的配置。
* _如果你想要共享访客系统的网络服务的话请选择 **桥接适配器**。_
* **仅限主机的适配器Host-only adapter** 在此配置中,访客系统只能与主机,或在同一主机上运行的其他访客系统,相互通信。主机系统也可以连接到访客系统。但访客系统不能接入互联网或物理网络。
* _如果你想要获得高安全性请选择 **仅限主机的适配器**。_
#### 分配操作系统映像
在设置菜单中,点击**存储**,然后选择虚拟光盘驱动器。单击右侧的 **光盘图标**,然后点击**选择一个磁盘文件...**,然后分配你想要安装的、已下载的 Linux 发行版映像:
![Assigning OS image][19]
### 安装 Linux
现在,就已经配置好了虚拟机。右上角关闭**设置**菜单,返回主窗口。点击**绿色箭头**(即“开始”按钮)。虚拟机将从虚拟光盘驱动器启动,你将发现你已经进入到 Linux 发行版的安装程序中:
![VirtualBox Fedora installer][20]
#### 设置分区
安装程序将在安装过程中要求你提供分区信息。选择**自定义Custom**
![Selecting Custom partition configuration][21]
> **注意:** 我假设,你创建这一虚拟机的目的是为了测试。此外,你也无需关心访客系统的休眠,因为此功能会由 VirtualBox 来隐式地提供。因此,你可以省略交换分区,以节省主机系统的磁盘空间。请记住,如果你需要的话,你可以稍后自己添加交换分区。在 [Linux 系统交换空间的介绍][22] 这篇文章中,作者 David Both 进一步解释了如何添加交换分区,并选择交换分区正确的大小。
Fedora 33 及之后更高的版本提供了一个 [zram 分区][23]zram 分区可以用于存放分页和交换、并经过压缩过后的硬盘数据。zram 分区可以按需地调整大小,并且它比硬盘交换分区快得多。
为了简单我们只添加以下两个挂载点mount point
![Adding mount points][24]
保存更改,接下来我们继续安装。
### 安装 VirtualBox 增强功能 Guest Additions
完成安装后,从硬盘驱动器启动,并登录到虚拟机。现在,你可以安装 VirtualBox 增强功能,其中包括特殊的设备驱动程序和系统应用程序,他们能提供以下内容:
* 共享剪贴板
* 共享文件夹
* 更好的性能
* 可自由扩展的窗口大小
点击顶部菜单栏的**设备**,然后选择**插入增强功能的CD映像...**,来安装 VirtualBox 增强功能:
![Selecting Guest Additions CD image][25]
在大多数 Linux 发行版上带有增强功能的CD映像会自动挂载并且能够在 File Browser 文件管理器中找到。Fedora 会问你是否要运行安装脚本。单击**运行**,并授予该安装进程 root 权限:
![Enabling Guest Additions autorun][26]
安装完成后,需要重新启动系统。
### LVM扩大磁盘空间
我在之前给 Fedora 虚拟机分配了 8GB 硬盘空间,是一个愚蠢的决定,因为 Fedora 很快就会告警空间不足:
![Fedora hard disk running out of space][27]
正如我提到的Fedora 官网建议安装时分配 20GB 的磁盘空间。因为 8GB 是 Fedora 33 安装启动就需要的最少空间。没有新安装其他软件(除了 VirtualBox Guest Additions启动项就几乎占用了整个 8GB 的可用空间。这时候,不要打开 GNOME 软件中心或任何其他可能从互联网下载文件的东西。
幸运的是,我选择了附带有 LVM 的 Fedora这样我就可以用命令行轻松地修复这个问题。
要增加虚拟机中文件系统的空间,你必须先增加主机系统上分配的虚拟硬盘驱动器。
关闭虚拟机。如果你的主机系统运行的是 Windows请打开终端并进入到 `C:\Program Files\Oracle\VirtualBox` 目录下。使用以下命令,将磁盘大小扩大到 12,000MB
```
`VBoxManage.exe modifyhd "C:\Users\StephanA\VirtualBox VMs\Fedora_33\Fedora_33.vdi" --resize 12000`
```
然后启动虚拟机,并打开**磁盘**的利用。你可以看到你刚刚新创建且未分配的可用空间。选择**可用空间**,然后单击 **+** 按钮:
![Free space before adding][28]
现在,创建一个新的分区。选择你要使用的可用空间的大小:
![Creating a new partition and setting size][29]
You don't want to create a filesystem or anything else on your new partition, so select **Other**:
如果你不想在新分区上创建文件系统或任何其他内容,请选择**其他**
![Selecting "other" for partition volume type][30]
选择**无文件系统**
![Setting "No filesystem" on new partition][31]
现在,磁盘空间应该如下图所示:
![VirtualBox after adding new partition][32]
虚拟机有了一个新的分区设备:**/dev/sda3**。通过输入 `vgscan` ,来检查你的 LVM 卷组,找到 **fedora_localhost_live** 这一LVM 卷组
![Checking LVM volume group by typing vgscan:][33]
现在,已经万事俱备了。在新分区 **/dev/sda3** 中扩展卷组 **fedora_localhost_live**
```
`vgextend fedora_localhost-live /dev/sda3`
```
![vgextend command output][34]
由于卷组较大,你可以增加逻辑卷的大小。命令 `vgdisplay` 显示了共有 951 个可用的空闲扩展:
![vgdisplay command output][35]
将逻辑卷增加 951 个扩展:
```
`lvextend -l+951 /dev/mapper/fedora_localhost--live-root`
```
![lvextend command output][36]
在增加了逻辑卷后,最后一件事就是调整文件系统的大小:
```
`resize2fs /dev/mapper/fedora_localhost--live-root`
```
![resize2fs command output][37]
这样磁盘空间就增加完成了!检查**磁盘使用分析器**,你就可以看到扩展空间已经可用于文件系统了。
### 总结
使用虚拟机,你可以检查在一个特定的操作系统或一个特定版本的操作系统,软件是如何操作的。除此之外,你还可以尝试任何想测试的 Linux 发行版而不必担心系统损坏。对于高级用户来说VirtualBox 在测试、网络和模拟方面提供了广泛的可能性。
--------------------------------------------------------------------------------
via: https://opensource.com/article/21/6/try-linux-virtualbox
作者:[Stephan Avenwedde][a]
选题:[lujun9972][b]
译者:[chai001125](https://github.com/chai001125)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://opensource.com/users/hansic99
[b]: https://github.com/lujun9972
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/computer_code_programming_laptop.jpg?itok=ormv35tV (Person programming on a laptop on a building)
[2]: https://www.virtualbox.org/
[3]: https://getfedora.org/
[4]: https://en.wikipedia.org/wiki/Hardware-assisted_virtualization
[5]: https://www.virtualbox.org/wiki/Downloads
[6]: https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)
[7]: https://opensource.com/sites/default/files/uploads/virtualbox_new_vm.png (VirtualBox New VM)
[8]: https://creativecommons.org/licenses/by-sa/4.0/
[9]: https://opensource.com/sites/default/files/uploads/virtualbox_memory_size_1.png (Set VM memory size)
[10]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_1.png (Create virtual hard disk)
[11]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_2.png (Selecting hard disk file type)
[12]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_3.png (Dynamically allocating hard disk)
[13]: https://getfedora.org/en/workstation/download/
[14]: https://opensource.com/sites/default/files/uploads/virtualbox_create_hd_4.png (Setting hard disk size)
[15]: https://opensource.com/sites/default/files/uploads/virtualbox_cpu_settings.png (Assigning cores to guest system)
[16]: https://opensource.com/sites/default/files/uploads/virtualbox_network_settings2.png (Network settings)
[17]: https://en.wikipedia.org/wiki/Network_address_translation
[18]: https://www.virtualbox.org/manual/ch06.html#natforward
[19]: https://opensource.com/sites/default/files/uploads/virtualbox_choose_image3.png (Assigning OS image)
[20]: https://opensource.com/sites/default/files/uploads/virtualbox_running.png (VirtualBox Fedora installer)
[21]: https://opensource.com/sites/default/files/uploads/virtualbox_partitioning_1.png (Selecting Custom partition configuration)
[22]: https://opensource.com/article/18/9/swap-space-linux-systems
[23]: https://fedoraproject.org/wiki/Changes/SwapOnZRAM
[24]: https://opensource.com/sites/default/files/uploads/virtualbox_partitioning_2.png (Adding mount points)
[25]: https://opensource.com/sites/default/files/uploads/virtualbox_guest_additions_2.png (Selecting Guest Additions CD image)
[26]: https://opensource.com/sites/default/files/uploads/virtualbox_guest_additions_autorun.png (Enabling Guest Additions autorun)
[27]: https://opensource.com/sites/default/files/uploads/virtualbox_disk_usage_1.png (Fedora hard disk running out of space)
[28]: https://opensource.com/sites/default/files/uploads/virtualbox_disks_before.png (Free space before adding)
[29]: https://opensource.com/sites/default/files/uploads/virtualbox_new_partition_1.png (Creating a new partition and setting size)
[30]: https://opensource.com/sites/default/files/uploads/virtualbox_new_partition_2.png (Selecting "other" for partition volume type)
[31]: https://opensource.com/sites/default/files/uploads/virtualbox_no_partition_3.png (Setting "No filesystem" on new partition)
[32]: https://opensource.com/sites/default/files/uploads/virtualbox_disk_after.png (VirtualBox after adding new partition)
[33]: https://opensource.com/sites/default/files/uploads/virtualbox_vgscan.png (Checking LVM volume group by typing vgscan:)
[34]: https://opensource.com/sites/default/files/uploads/virtualbox_vgextend_2.png (vgextend command output)
[35]: https://opensource.com/sites/default/files/uploads/virtualbox_vgdisplay.png (vgdisplay command output)
[36]: https://opensource.com/sites/default/files/uploads/virtualbox_lvextend.png (lvextend command output)
[37]: https://opensource.com/sites/default/files/uploads/virtualbox_resizefs.png (resize2fs command output)

View File

@ -0,0 +1,160 @@
[#]: subject: "Learn Bash base64 Encode and Decode With Examples"
[#]: via: "https://www.debugpoint.com/bash-base64-encode-decode/"
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
[#]: collector: "lkxed"
[#]: translator: "chai001125"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
通过示例来学习 Bash base64 的编码和解码
======
你想了解 Base64 编码和解码的方法吗?在本教程中,我们使用 bash shell 脚本和各种示例解释了 Base64 编码和解码步骤。
![][1]
Base64 编码方法通过将二进制数据转换为文本,如此编码数据可以在任何通信媒体进行传输。这种编码方法主要用于电子邮件加密的过程。
总体而言Base64 编码方法是一种二进制到文本的编码方案,以 ASCII 字符串格式表示 8 字节的二进制数据。使用这种编码方法在各种媒介之间传输数据时有几个优势尤其是对于那些能可靠支持文本内容的媒介。因此Base64 编码方法在万维网上被广泛使用。这种编码方案最常用于电子邮件附件的编码上。
根据 Base64 编码表,二进制数据可以经 Base64 编码后可以转换为 64 个不同的 ASCII 字符,包含大写字母 A 到 Z小写字母 a 到 Z数字 0 到 9 ,以及符号 + 和 /,这些字符在传输和打印上十分便捷。
这 64 个 ASCII 字符代表着从 `000000``111111` 的二进制值。每个非末尾的 Base64 编码后的 ASCII 字符恰好代表 6 位二进制值。
![Base64 Index Table][2]
### Bash base64 的编码和解码
#### 句法
在我们提供示例之前,首先介绍 Base64 的基本语法。
```
base64 [OPTIONs] [INFILE] [OUTFILE]
```
选项Option参照下面的表格你可以提供任何的选项或组合多个选项。
输入INFILE你可以从标准输入如命令行或文件中输入。
输出OUTFILE你可以将输出重定向到标准输出如终端或文件中。
| 选项 | 描述 |
| :- | :- |
| -e 或者 encode | 此选项用于对标准输入的数据或从文件中读入的数据进行编码。这是默认选项。 |
| -d 或者 decode | 此选项用于对标准输入的数据或从文件中读入的已 base64 编码数据进行解码。 |
| -n 或者 noerrcheck | 默认情况下base64 在解码数据时,会自动检查是否有错误。你可以使用 n 或 noerrcheck 选项,在解码时忽略检查。 |
| -i, ignore-garbage | 此选项用于在解码时忽略非字母字符。 |
| -u 或者 help | 此选项用于获取有关使用此命令的信息。 |
#### 示例 1基本编码
在 Linux 中,默认已安装好 base64 软件包。因此,你可以轻松地从命令行使用 base64。要对一个字符串或文本进行编码你可以通过管道将其传递到命令行并获取待编码的文本。在下面的示例中对字符串 debugpoint.com 进行了 base64 编码。
```
echo "debugpoint.com" | base64
```
![bash base64 encode and decode - example 1][3]
结果是经过 base64 编码后的字符串。
#### 解释
Base64 编码方法使用下面的几个步骤来转换输入的数据。首先,每个输入字符转换为 8 位二进制值,接着,二进制字符串拆分为一组组 6 位的二进制值,然后,每个 6 位的二进制值被转换为十进制值。
最后,每个十进制值都通过 base64 编码索引表转换为 base64 字符。
在上面的示例中,第一个字符 `d` 被转换为二进制 `01100100`。前 6 位是 `011001`,转换为十进制是 `25`。`25` 在 base64 编码索引表中对应着 `Z`。整个输入的文本流都像如此编码。请参阅以下编码过程的示例。
![Base64 Encode and Decode inner working][4]
#### 示例 2基本解码
要解码字符串,需要将编码值传递给 base64选项为 `--decode`,它将输出你之前输入的字符串。
![bash base64 encode and decode - example 2 (decode the same example)][5]
#### 示例 3对文本文件进行编码
示例 1 中的同一命令也可用于编码文本文件,并将输出重定向到另一个文本文件。方法如下。
```
base64 example3.txt > example3-encoded.txt
```
![Encode a text file][6]
#### 示例 4对文本文件进行解码
要解码使用 base64 编码的文本文件,只需使用 `--decode``-d` 选项,并传递文本文件名。
```
base64 -d example3-encoded.txt
```
#### 示例 5对用户输入的数据进行编码
使用 bash shell 编程,你可以通过终端接收用户的输入,并对其进行 base64 编码。你需要先编写一个简单的 shell 脚本,并在授予可执行权限后执行。
以下就是一个简单的示例,它从用户那里获得输入,然后进行 base64 编码,最终显示编码的字符串。
```
#!/bin/bash
#Sample program to take input, encode to base64 and display on terminal
#Example by www.debugpoint.com
echo "Enter text for encoding to base64:"
read input_text
output_text=`echo -n $input_text | base64`
echo "The Base64 Encoded text is: $output_text"
```
![Custom input - base64 encode and decode using script][7]
#### 示例 6用 base64 进行简单的身份认证
你可以运用上述的编码和解码方法,实现一个简单的身份验证系统。你可以让用户输入密码或密码,然后将密码存储在文件中。或者进行实时比较。
如果存储的编码字符串与用户输入的文本再编码的字符串相匹配,则用户可以通过验证。虽然这是一种检查身份验证的很简单的方法,但有时这对一些简单的业务案例很有用。
```
#!/bin/bash
#Sample program to take input, encode to base64 and display on terminal
#Example by www.debugpoint.com
echo "Type your password"
read pwd1
decoded_text=`echo 'U2lsZW5jZSBpcyBnb2xkZW4h' | base64 --decode`
if [[ $pwd1 == $decoded_text ]]
then
echo "You are a valid user."
else
echo "You are NOT a valid user."
fi
```
![A Simple Authentication using bash base64][8]
### 结论
我希望你能通过这些示例,学会 [Base64][9] 编码和解码的基础知识。此外,你也了解到 Base64 的内部编码方式。如果这对你很有帮助,或你还需要有关此主题的其他教程,请在下面的评论区中告诉我吧。
--------------------------------------------------------------------------------
via: https://www.debugpoint.com/bash-base64-encode-decode/
作者:[Arindam][a]
选题:[lkxed][b]
译者:[chai001125](https://github.com/chai001125)
校对:[校对者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/2021/11/base64example-1024x576.jpg
[2]: https://www.debugpoint.com/wp-content/uploads/2021/11/Base64-Index-Table.png
[3]: https://www.debugpoint.com/wp-content/uploads/2021/11/bash-base64-encode-and-decode-example-1.jpg
[4]: https://www.debugpoint.com/wp-content/uploads/2021/11/Base64-Encode-and-Decode-inner-working.png
[5]: https://www.debugpoint.com/wp-content/uploads/2021/11/bash-base64-encode-and-decode-example-2-decode-the-same-example.jpg
[6]: https://www.debugpoint.com/wp-content/uploads/2021/11/Encode-a-text-file.png
[7]: https://www.debugpoint.com/wp-content/uploads/2021/11/Custom-input-base64-encode-and-decode-using-script.png
[8]: https://www.debugpoint.com/wp-content/uploads/2021/11/A-Simple-Authentication-using-bash-base64.png
[9]: https://linux.die.net/man/1/base64

View File

@ -0,0 +1,110 @@
[#]: subject: "Install Gedit on Ubuntu 22.10 and Make it Default Text Editor"
[#]: via: "https://itsfoss.com/install-gedit-ubuntu/"
[#]: author: "Abhishek Prakash https://itsfoss.com/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
# 在 Ubuntu 22.10 上安装 Gedit 并将其设为默认文本编辑器
[GNOME 有一个全新的文本编辑器][1]来取代旧的 Gedit 编辑器。
虽然 GNOME 42 已经可以使用它,但 Ubuntu 22.04 依赖于 Gedit。
这在 Ubuntu 22.10 中发生了变化。 GNOME 文本编辑器是默认程序,甚至没有安装 Gedit。
![搜索文本编辑器只出现 GNOME 文本编辑器][2]
虽然新编辑器足够好,但并不是每个人都喜欢它。如果你将 Gedit 与其他插件一起频繁使用,则尤其如此。
如果你属于这些人,让我向你展示如何在 Ubuntu 上安装 Gedit。我还将分享如何将其设为默认文本编辑器。
### 在 Ubuntu 上安装 Gedit
这实际上是不费吹灰之力的。虽然默认未安装 Gedit但它仍然可以在 Ubuntu 仓库中找到。
所以,你所要做的就是使用 apt 命令来安装它:
```
sudo apt install gedit
```
Gedit 也可以在软件中心中找到,但它是 snap 包。如果你愿意,你可以安装它。
![Gedit 也可以在 Ubuntu 的 Snap 商店中找到][3]
#### 安装 Gedit 插件(可选)
默认情况下Gedit 为你提供访问一些插件的选项。你可以从 menu->preference->plugins 启用或禁用插件。
![在 Gedit 中访问插件][4]
你可以在这里看到可用的插件。检查已安装或正在使用的插件。
![查看 Gedit 中可用和已安装的插件][5]
但是,你可以通过安装 gedit-plugins 元数据包将插件选择提升到一个新的水平。
```
sudo apt install gedit-plugins
```
这将使你可以访问其他插件如书签、括号补全、Python 控制台等。
![其他 Gedit 插件][6]
**提示**:如果你发现 Gedit 因缺少底角而显得有些格格不入,你可以安装一个名为 [Round Bottom Corner][7] 的 GNOME 扩展。这将为包括 Gedit 在内的所有应用强制圆底角。
### 使 Gedit 成为默认文本编辑器
好了!你已经安装了 Gedit但文本文件仍然在双击操作后使用 GNOME 文本编辑器打开。要使用 Gedit 打开文件,你需要右键单击,然后选择“打开方式”选项。
如果你希望一直使用 Gedit 打开文本文件,你可以将其设置为默认程序。
右键单击文本文件并选择“打开方式”选项。在此处选择 Gedit 并从底部启用“始终用于此文件类型”选项。
![设置 Gedit 为默认文本编辑器][8]
### 删除 Gedit
觉得 Gedit 没达到预期么?这很少见,但我不会评判你。要从 Ubuntu 中删除 Gedit请使用以下命令
```
sudo apt remove gedit
```
你也可以尝试从软件中心卸载它。
### 总结
GNOME 文本编辑器是下一代从头开始创建的编辑器,它与新的 GNOME 完美融合。
对于简单的文本编辑来说已经足够了。然而Gedit 有一个插件生态系统,赋予它更多功能。
对于那些将它广泛用于编码和其他事情的人来说,安装 Gedit 仍然是 Ubuntu 中的一个选项。
那你呢?你会坚持使用默认的新文本编辑器还是回到旧的 Gedit
---
via: https://itsfoss.com/install-gedit-ubuntu/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者 ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux 中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/
[b]: https://github.com/lkxed
[1]: https://itsfoss.com/gnome-text-editor/
[2]: https://itsfoss.com/wp-content/uploads/2022/10/text-editor-ubuntu.png
[3]: https://itsfoss.com/wp-content/uploads/2022/10/install-gedit-from-ubuntu-software-center.png
[4]: https://itsfoss.com/wp-content/uploads/2022/10/access-plugins-in-gedit.png
[5]: https://itsfoss.com/wp-content/uploads/2022/10/plugins-in-gedit.png
[6]: https://itsfoss.com/wp-content/uploads/2022/10/additional-plugins-gedit.png
[7]: https://extensions.gnome.org/extension/5237/rounded-window-corners/
[8]: https://itsfoss.com/wp-content/uploads/2022/10/set-gedit-default.png