mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-02-25 00:50:15 +08:00
Merge branch 'master' of https://github.com/LCTT/TranslateProject into translating
This commit is contained in:
commit
19f8520d27
75
published/20210104 10 ways Ansible is for everyone.md
Normal file
75
published/20210104 10 ways Ansible is for everyone.md
Normal file
@ -0,0 +1,75 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (Donkey-Hao)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-14739-1.html)
|
||||
[#]: subject: (10 ways Ansible is for everyone)
|
||||
[#]: via: (https://opensource.com/article/21/1/ansible)
|
||||
[#]: author: (James Farrell https://opensource.com/users/jamesf)
|
||||
|
||||
分享 10 篇 Ansible 文章
|
||||
======
|
||||
|
||||
> 通过这些 Ansible 文章扩展你的知识和技能。
|
||||
|
||||

|
||||
|
||||
我希望能够激发刚刚接触 Ansible 的初学者的兴趣。这里有一系列总结文章,我已将其包括在内,以供你随意后续查阅。
|
||||
|
||||
### 适合初学者的 Ansible
|
||||
|
||||
这五篇文章对于 Ansible 新手来说是一个非常好的起点。前三篇文章由 Seth Kenlon 撰写。
|
||||
|
||||
* 如果你不了解 Ansible ,[现在可以做这 7 件事][2] 来入手。这是很好的入门指导,它收集了用于管理硬件、云、容器等的链接。
|
||||
* 在 《[编排与自动化有何区别?][3]》 这篇文章中,你会学到一些术语和技术路线,将会激发你对 Ansible 感兴趣。
|
||||
* 文章 《[如何用 Ansible 安装软件][4]》 覆盖了一些脚本概念和一些 Ansible 的好惯例,给出了一些本地或远程管理软件包的案例。
|
||||
* 在 [我编写 Ansible 剧本时学到的 3 个教训][5] 中,使自己养成 Jeff Geerling 所传授的好习惯,他是一位真正的 Ansible 资深人士。源代码控制、文档、测试、简化和优化是自动化成功的关键。
|
||||
* 《[我使用 Ansible 的第一天][6]》 介绍了记者 David Both 在解决重复性开发任务时的思考过程。这篇文章从 Ansible 的基础开始,并说明了一些简单的操作和任务。
|
||||
|
||||
### 尝试 Ansible 项目
|
||||
|
||||
一旦你掌握了基础和并拥有良好习惯,就可以开始一些具体主题和实例了。
|
||||
|
||||
* Ken Fallon 在 《[使用 Ansible 管理你的树莓派机群][7]》 一文中介绍了一个部署和管理树莓派设备机群的示例。它介绍了受限环境中的安全和维护概念。
|
||||
* 在 《[将你的日历与 Ansible 融合以避免日程冲突][8]》一文中,Nicolas Leiva 快速介绍了如何使用前置任务和条件在自动日程安排中中强制执行隔离窗口
|
||||
* Nicolas 在 《[创建一个整合你的谷歌日历的 Ansible 模块][9]》中完成了他的日历隔离的理念。他的文章深入探讨了在 Go 中编写自定义 Ansible 模块以实现所需的日历连接。 Nicolas 介绍了构建和调用 Go 程序并将所需数据传递给 Ansible 并接收所需输出的不同方法。
|
||||
|
||||
### 提升你的 Ansible 技巧
|
||||
|
||||
Kubernetes 是近来的热门话题,以下文章提供了一些很好的示例来学习新技能。
|
||||
|
||||
* 在 《[适用于 Kubernets 自动编排你的 Ansible 模块][10]》 文章中,Seth Kenlon 介绍了 Ansible Kubernetes 模块, 介绍了用于测试的基本 Minikube 环境,并提供了一些用于<ruby>荚<rt>Pod</rt></ruby> 控制的 `k8s` 模块的基本示例。
|
||||
* Jeff Geerling 在 《[使用 Ansible 的 Helm 模块构建 Kubernetes Minecraft 服务器][11]》 中解释了 Helm Chart 应用程序、Ansible 集合以及执行一个有趣的项目以在 k8s 集群中设置你自己的 Minecraft 服务器的概念。
|
||||
|
||||
我希望你的 Ansible 旅程已经开始,并能常从这些文章中充实自己。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/1/ansible
|
||||
|
||||
作者:[James Farrell][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[Donkey](https://github.com/Donkey-Hao)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/jamesf
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/innovation_lightbulb_gears_devops_ansible.png?itok=TSbmp3_M (gears and lightbulb to represent innovation)
|
||||
[2]: https://opensource.com/article/20/9/ansible
|
||||
[3]: https://opensource.com/article/20/11/orchestration-vs-automation
|
||||
[4]: https://opensource.com/article/20/9/install-packages-ansible
|
||||
[5]: https://opensource.com/article/20/1/ansible-playbooks-lessons
|
||||
[6]: https://opensource.com/article/20/10/first-day-ansible
|
||||
[7]: https://opensource.com/article/20/9/raspberry-pi-ansible
|
||||
[8]: https://opensource.com/article/20/10/calendar-ansible
|
||||
[9]: https://opensource.com/article/20/10/ansible-module-go
|
||||
[10]: https://opensource.com/article/20/9/ansible-modules-kubernetes
|
||||
[11]: https://opensource.com/article/20/10/kubernetes-minecraft-ansible
|
||||
[12]: https://opensource.com/article/20/1/ansible-news-edition-six
|
||||
[13]: https://opensource.com/article/20/2/ansible-news-edition-seven
|
||||
[14]: https://opensource.com/article/20/3/ansible-news-edition-eight
|
||||
[15]: https://opensource.com/article/20/4/ansible-news-edition-nine
|
||||
[16]: https://opensource.com/article/20/5/ansible-news-edition-ten
|
||||
[17]: https://opensource.com/how-submit-article
|
@ -3,17 +3,16 @@
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14740-1.html"
|
||||
|
||||
编写你的第一段 JavaScript 代码
|
||||
======
|
||||
JavaScript 是为 Web 而生的,但它可以做的事远不止于此。本文将带领你了解它的基础知识,然后你可以下载我们的备忘清单,以便随时掌握详细信息。
|
||||
|
||||
![开源编程][1]
|
||||
> JavaScript 是为 Web 而生的,但它可以做的事远不止于此。本文将带领你了解它的基础知识,然后你可以下载我们的备忘清单,以便随时掌握详细信息。
|
||||
|
||||
图源:Opensource.com
|
||||

|
||||
|
||||
JavaScript 是一种充满惊喜的编程语言。许多人第一次遇到 JavaScript 时,它通常是作为一种 Web 语言出现的。所有主流浏览器都有一个 JavaScript 引擎;并且,还有一些流行的框架,如 JQuery、Cash 和 Bootstrap 等,它们可以帮助简化网页设计;甚至还有用 JavaScript 编写的编程环境。它似乎在互联网上无处不在,但事实证明,它对于 [Electron][2] 等项目来说也是一种有用的语言。Electron 是一个构建跨平台桌面应用程序的开源工具包,它使用的语言就是 JavaScript。
|
||||
|
||||
@ -21,11 +20,11 @@ JavaScript 语言的用途多到令人惊讶,它拥有各种各样的库,而
|
||||
|
||||
### 安装 JavaScript
|
||||
|
||||
随着你的 JavaScript 水平不断提高,你可能会发现自己需要高级的 JavaScript 库和运行时。不过,刚开始学习的时候,你是根本不需要安装 JavaScript 的。因为所有主流的 Web 浏览器都包含一个 JavaScript 引擎来运行代码。你可以使用自己喜欢的文本编辑器编写 JavaScript,将其加载到 Web 浏览器中,接着你就能看到代码的作用。
|
||||
随着你的 JavaScript 水平不断提高,你可能会发现自己需要高级的 JavaScript 库和运行时环境。不过,刚开始学习的时候,你是根本不需要安装 JavaScript 环境的。因为所有主流的 Web 浏览器都包含一个 JavaScript 引擎来运行代码。你可以使用自己喜欢的文本编辑器编写 JavaScript,将其加载到 Web 浏览器中,接着你就能看到代码的作用。
|
||||
|
||||
### 上手 JavaScript
|
||||
|
||||
要编写你的第一个 JavaScript 代码,请打开你喜欢的文本编辑器,例如 [Notepad++][3]、[Atom][4] 或 [VSCode][5] 等。因为它是为 Web 开发的,所以 JavaScript 可以很好地与 HTML 配合使用。因此,我们先来尝试一些基本的 HTML:
|
||||
要编写你的第一个 JavaScript 代码,请打开你喜欢的文本编辑器,例如 [Atom][4] 或 [VSCode][5] 等。因为它是为 Web 开发的,所以 JavaScript 可以很好地与 HTML 配合使用。因此,我们先来尝试一些基本的 HTML:
|
||||
|
||||
```
|
||||
<html>
|
||||
@ -66,9 +65,9 @@ JavaScript 语言的用途多到令人惊讶,它拥有各种各样的库,而
|
||||
|
||||
![在浏览器中显示带有 JavaScript 的 HTML][7]
|
||||
|
||||
如你所见,`<p>` 标签仍然包含字符串 “Nothing here”,但是当它被渲染时,JavaScript 会改变它,使其包含 “Hello world”。是的,JavaScript 具有重建(或只是帮助构建)网页的能力。
|
||||
如你所见,`<p>` 标签仍然包含字符串 `"Nothing here"`,但是当它被渲染时,JavaScript 会改变它,使其包含 `"Hello world"`。是的,JavaScript 具有重建(或只是帮助构建)网页的能力。
|
||||
|
||||
这个简单脚本中的 JavaScript 做了两件事。首先,它创建一个名为 `myvariable` 的变量,并将字符串 “Hello world!” 放置其中。然后,它会在当前文档(浏览器呈现的网页)中搜索 ID 为 “example” 的所有 HTML 元素。当它找到 `example` 时,它使用了 `innerHTML` 函数将 HTML 元素的内容替换为 `myvariable` 的内容。
|
||||
这个简单脚本中的 JavaScript 做了两件事。首先,它创建一个名为 `myvariable` 的变量,并将字符串 `"Hello world!"` 放置其中。然后,它会在当前文档(浏览器呈现的网页)中搜索 ID 为 `example` 的所有 HTML 元素。当它找到 `example` 时,它使用了 `innerHTML` 函数将 HTML 元素的内容替换为 `myvariable` 的内容。(LCTT 译注:这里作者笔误了,`innerHTML` 是“属性”而非“函数”。)
|
||||
|
||||
当然,我们也可以不用自定义变量。因为,使用动态创建的内容来填充 HTML 元素也是容易的。例如,你可以使用当前时间戳来填充它:
|
||||
|
||||
@ -94,7 +93,7 @@ JavaScript 语言的用途多到令人惊讶,它拥有各种各样的库,而
|
||||
|
||||
在编程中,<ruby>语法<rt>syntax</rt></ruby> 指的是如何编写句子(或“行”)的规则。在 JavaScript 中,每行代码必须以分号(`;`)结尾,以便运行代码的 JavaScript 引擎知道何时停止阅读。(LCTT 译注:从实用角度看,此处的“必须”其实是不正确的,大多数 JS 引擎都支持不加分号。Vue.js 的作者尤雨溪认为“没有应该不应该,只有你自己喜欢不喜欢”,他同时表示,“Vue.js 的代码全部不带分号”。详情可以查看他在知乎上对于此问题的 [回答][10]。)
|
||||
|
||||
单词(或 <ruby>“字符串”<rt>strings</rt></ruby>)必须用引号(`"`)括起来,而数字(或 <ruby>“整数”<rt>integers</rt></ruby>)则不用。
|
||||
单词(或 <ruby>字符串<rt>strings</rt></ruby>)必须用引号(`"`)括起来,而数字(或 <ruby>整数<rt>integers</rt></ruby>)则不用。
|
||||
|
||||
几乎所有其他东西都是 JavaScript 语言的约定,例如变量、数组、条件语句、对象、函数等等。
|
||||
|
||||
@ -111,7 +110,7 @@ document.getElementById("example").innerHTML = typeof(myvariable);
|
||||
</string>
|
||||
```
|
||||
|
||||
接着,你就会发现 Web 浏览器中显示出 “string” 字样,因为该变量包含的数据是 “Hello world!”。在 `myvariable` 中存储不同类型的数据(例如整数),浏览器就会把不同的数据类型打印到示例网页上。尝试将 `myvariable` 的内容更改为你喜欢的数字,然后重新加载页面。
|
||||
接着,你就会发现 Web 浏览器中显示出 “string” 字样,因为该变量包含的数据是 `"Hello world!"`。在 `myvariable` 中存储不同类型的数据(例如整数),浏览器就会把不同的数据类型打印到示例网页上。尝试将 `myvariable` 的内容更改为你喜欢的数字,然后重新加载页面。
|
||||
|
||||
### 在 JavaScript 中创建函数
|
||||
|
||||
@ -160,7 +159,7 @@ document.getElementById("example").innerHTML = typeof(myvariable);
|
||||
|
||||
学习 JavaScript 既简单又有趣。网络上有很多网站提供了相关教程,还有超过一百万个 JavaScript 库可帮助你与设备、外围设备、物联网、服务器、文件系统等进行交互。在你学习的过程中,请将我们的 [JavaScript 备忘单][9] 放在身边,以便记住语法和结构的细节。
|
||||
|
||||
正文中的配图来自:Seth Kenlon,CC BY-SA 4.0
|
||||
> **[JavaScript 备忘单][9]**
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -169,7 +168,7 @@ via: https://opensource.com/article/21/7/javascript-cheat-sheet
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -3,12 +3,13 @@
|
||||
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14738-1.html"
|
||||
|
||||
Mattermost 7.0 发布,扩展了工作流平台
|
||||
======
|
||||
|
||||
![Mattermost][1]
|
||||
|
||||
自 2016 年开源以来,Mattermost 一直在开发一个具有不断增加的用例的消息传递平台。6 月 16 日,Mattermost 7.0 平台发布,其中包括了新的语音呼叫、工作流模板和用于开源技术的应用框架。新版本扩展了 2021 年 10 月发布的 6.0 版本引入的功能。一直以来,Mattermost 都在与包括 Slack、Atlassian 和 Asana 在内的几家大公司,竞争不断增长的协作工具市场。另一方面,Mattermost 侧重于对开发者的支持,尽管该平台也可用于安全和 IT 运营。
|
||||
@ -17,11 +18,11 @@ Mattermost 的软件同时提供有商业版和开源版,目前它们都升级
|
||||
|
||||
Tien 认为开源也关乎社区贡献。Mattermost 开源项目有超过 4000 名个人贡献者,他们贡献了超过 30000 行代码。
|
||||
|
||||
以前,Mattermost 依赖集成第三方呼叫服务(例如 Zoom)来启用语音呼叫功能。在 7.0 版本中,它通过开源 WebRTC 协议引入了呼叫功能的直接集成,所有现代 Web 浏览器都支持该协议。直接集成呼叫功能的目标是为写作提供单一平台,这符合 Tien 对该平台的总体愿景。现在,除了提供集成工具以实现协作之外,该平台还会增加“工作流模板”功能,以帮助(用户)组织构建可重复的流程。
|
||||
以前,Mattermost 依赖集成第三方呼叫服务(例如 Zoom)来启用语音呼叫功能。在 7.0 版本中,它通过开源 WebRTC 协议引入了呼叫功能的直接集成,所有现代 Web 浏览器都支持该协议。直接集成呼叫功能的目标是为协作提供单一平台,这符合 Tien 对该平台的总体愿景。现在,除了提供集成工具以实现协作之外,该平台还会增加“工作流模板”功能,以帮助(用户)组织构建可重复的流程。
|
||||
|
||||
工作流概念采用了 <ruby>剧本<rt>playbooks</rt></ruby>,其中包含了为“特定类型的操作”所执行的动作和操作的清单。例如,在发生服务故障或网络安全事件时,公司可以为事件响应创建工作流模板。
|
||||
工作流概念采用了 <ruby>剧本<rt>playbook</rt></ruby>,其中包含了为“特定类型的操作”所执行的动作和操作的清单。例如,在发生服务故障或网络安全事件时,公司可以为事件响应创建工作流模板。
|
||||
|
||||
这个清单可以链接到 Mattermost 操作,例如让特定用户发起呼叫,并协助生成报告。Tien 表示,Mattermost 还与常见的开发者工具集成,并且工作流模板的功能将随着时间的推移而扩展,以便使用第三方工具来实现更多自动化。
|
||||
这个清单可以链接到 Mattermost <ruby>操作<rt>operation</rt></ruby>,例如让特定用户发起呼叫,并协助生成报告。Tien 表示,Mattermost 还与常见的开发者工具集成,并且工作流模板的功能将随着时间的推移而扩展,以便使用第三方工具来实现更多自动化。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -30,7 +31,7 @@ via: https://www.opensourceforu.com/2022/06/mattermost-extends-workflow-platform
|
||||
作者:[Laveesh Kocher][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -0,0 +1,75 @@
|
||||
[#]: subject: "Mysterious GeckoLinux Creator Reveals a New Debian Remix Distro"
|
||||
[#]: via: "https://news.itsfoss.com/debian-remix-spiral-linux/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Mysterious GeckoLinux Creator Reveals a New Debian Remix Distro
|
||||
======
|
||||
GeckoLinux creator unveils a new Linux distribution based on Debian, focusing on simplicity and usability.
|
||||
|
||||
![spiral linux][1]
|
||||
|
||||
The creator of GeckoLinux (providing an improved openSUSE experience) remains anonymous.
|
||||
|
||||
And, I won’t comment if it is a good or bad thing, but now the developer is back with another similar project based on Debian.
|
||||
|
||||
**SpiralLinux**, a Debian-based distribution that aims to make Debian usable for the end-users.
|
||||
|
||||
### SpiralLinux: A Distro Built from Debian
|
||||
|
||||
![spirallinux][2]
|
||||
|
||||
It is no surprise that most of the user-friendly Linux distributions have Debian as its original base. Ubuntu has managed to do a lot of improvements on top of it to make it a good desktop experience, even for users without prior Linux experience.
|
||||
|
||||
So, how is this different?
|
||||
|
||||
Well, the creator says that this project aims to help you use Debian with all its core strengths without customizing a lot of things.
|
||||
|
||||
SpiralLinux is a close-to-vanilla experience if you want to use Debian on your desktop. You can also upgrade to the latest stable Debian version (or unstable/testing) as you require without losing the user-friendly customizations.
|
||||
|
||||
In other words, SpiralLinux makes Debian fit for desktop usage with minimal efforts to the end-user.
|
||||
|
||||
And, to achieve this, SpiralLinux uses official Debian package repositories providing a live installation method to let you setup a customized Debian system.
|
||||
|
||||
Additionally, you have the following features in SpiralLinux:
|
||||
|
||||
* VirtualBox support out-of-the-box
|
||||
* Preinstalled proprietary media codecs and non-free package repositories
|
||||
* Preinstalled proprietary firmware
|
||||
* Printer support
|
||||
* Flatpak support through a GUI (software center)
|
||||
* zRAM swap enabled by default
|
||||
* Multiple desktop environments (Cinnamon, XFCE, Gnome, Plasma, MATE, Budgie, LXQt)
|
||||
|
||||
Considering Debian always sticks to the open-source and free packages, the end-user has to figure out the codecs, drivers, and other packages to make a lot of things work for a proper desktop experience.
|
||||
|
||||
And, it seems like SpiralLinux could live as a useful alternative to Debian just like GeckoLinux is to openSUSE.
|
||||
|
||||
### Download SpiralLinux
|
||||
|
||||
If you always wanted to try Debian, but did not want to fiddle around a lot for initial configuration, you can try SpiralLinux.
|
||||
|
||||
You can head to its official webpage hosted on GitHub to explore more about it.
|
||||
|
||||
[SpiralLinux][3]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/debian-remix-spiral-linux/
|
||||
|
||||
作者:[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/wp-content/uploads/2022/06/spiral-linux-debian-remix-distro.jpg
|
||||
[2]: https://news.itsfoss.com/wp-content/uploads/2022/06/spirallinux.jpg
|
||||
[3]: https://spirallinux.github.io/
|
@ -0,0 +1,55 @@
|
||||
[#]: subject: "The Final Version Of 7-Zip 22.00 Is Now Available"
|
||||
[#]: via: "https://www.opensourceforu.com/2022/06/the-final-version-of-7-zip-22-00-is-now-available/"
|
||||
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
The Final Version Of 7-Zip 22.00 Is Now Available
|
||||
======
|
||||
![7-zip-2200-500x312][1]
|
||||
|
||||
7-Zip is a well-known open source file archiver for Windows, Mac, and Linux. 7-Zip 22.00 is now available; it is the first stable release of 2022. The most recent release was 7-Zip 21.07, which was released in December 2021. Users of 7-Zip can obtain the most recent version of the application from the official website. Downloads are available for Windows 64-bit, 32-bit, and ARM versions. The programme is still compatible with out-of-date versions of Windows, such as XP and Vista. All officially supported Windows versions, including server versions, are also supported. 7-Zip 22.00 for Linux is already available for download, but the Mac OS version is not.
|
||||
|
||||
7-Zip 22.00 includes several new features that enhance the application’s functionality. The archiver now supports the extraction of Apple File System APFS images. Several years ago, Apple introduced the Apple File System in Mac OS 10.13 and iOS. The file system has been designed with flash and solid state drive storage in mind.
|
||||
|
||||
7-Zip 22.00 includes several enhancements to its TAR archive support. Using the switches -ttar -mm=pax or -ttar -mm=posix, 7-Zip can now create TAR archives in POSIX tar format. Additionally, using the switches ttar -mm=pax -mtp=3 -mtc -mta, 7-Zip can store file timestamps with high precision in tar/pax archives.
|
||||
|
||||
* snoi: save owner/group ids in the archive or copy owner/group ids from the archive to the extracted files.
|
||||
* snon: keep owner/group names in the archive
|
||||
|
||||
7-Zip 22.00 for Windows adds support for the -snz switch, which propagates the Zone.
|
||||
|
||||
To extract files, use the identifier stream. Windows uses the stream for security purposes; it can be used to determine whether a file was created locally or downloaded from the Internet.
|
||||
|
||||
7-Zip 22.00 includes several new features that enhance the application’s functionality. The archiver now supports the extraction of Apple File System APFS images. Several years ago, Apple introduced the Apple File System in Mac OS 10.13 and iOS. The file system has been designed with flash and solid state drive storage in mind.
|
||||
|
||||
7-Zip 22.00 includes several enhancements to its TAR archive support. Using the switches -ttar -mm=pax or -ttar -mm=posix, 7-Zip can now create TAR archives in POSIX tar format. Additionally, using the switches ttar -mm=pax -mtp=3 -mtc -mta, 7-Zip can store file timestamps with high precision in tar/pax archives.
|
||||
|
||||
Finally, Linux users can use the following two new switches with TAR archives:
|
||||
|
||||
* snoi: save owner/group ids in the archive or copy owner/group ids from the archive to the extracted files.
|
||||
* snon: keep owner/group names in the archive
|
||||
|
||||
7-Zip 22.00 for Windows adds support for the -snz switch, which propagates the Zone.
|
||||
|
||||
To extract files, use the identifier stream. Windows uses the stream for security purposes; it can be used to determine whether a file was created locally or downloaded from the Internet.
|
||||
|
||||
In the “add to archive” configuration dialogue, 7-Zip 22.00 includes a new options window. It includes options for changing the timestamp precision, changing other time-related configuration options, and preventing the source files’ last access time from changing.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.opensourceforu.com/2022/06/the-final-version-of-7-zip-22-00-is-now-available/
|
||||
|
||||
作者:[Laveesh Kocher][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.opensourceforu.com/wp-content/uploads/2022/06/7-zip-2200-500x312-1.jpg
|
@ -0,0 +1,69 @@
|
||||
[#]: subject: "This Open-Source Project Proves Chrome Extensions Can Track You"
|
||||
[#]: via: "https://news.itsfoss.com/chrome-extension-tracking/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
This Open-Source Project Proves Chrome Extensions Can Track You
|
||||
======
|
||||
Is this a reason to ditch Chromium-based browsers and start using Firefox? Maybe, you decide.
|
||||
|
||||
![chrome extension tracker][1]
|
||||
|
||||
Even with all the privacy extensions and fancy protection features, there are still ways to identify you or track you.
|
||||
|
||||
Note that it is not the case for all browsers, here, we focus on Chromium-based browsers and Google Chrome as the prime suspect.
|
||||
|
||||
While detecting installed extensions in a Chromium browser was already possible, numerous extensions implemented certain protections to prevent it.
|
||||
|
||||
However, a security researcher, also known as “**z0ccc**”, discovered a new method to detect installed Chrome browser extensions, which can be further used to track you through browser fingerprinting.
|
||||
|
||||
**In case you did not know**: Browser fingerprinting refers to the tracking method where various information about your device/browser gets collected to create a unique fingerprint ID (hash) to identify you across the internet. Information like browser name, version, operating system, extensions installed, screen resolution, and similar technical data.
|
||||
|
||||
It sounds like a harmless data collection technique, but you can be tracked online with this tracking method.
|
||||
|
||||
### Detecting Google Chrome Extensions
|
||||
|
||||
The researcher shared an open-source project “**Extension Fingerprints**” which you can use to test if Chrome extensions installed on your browser are being detected.
|
||||
|
||||
The new technique involves a time-difference method where the tool compares the time to fetch resources for the extensions. A protected extension takes more time to fetch compared to other extensions not installed on your browser. So, that helps identify some extensions from the list of over 1000 extensions.
|
||||
|
||||
The point is—even with all the advancements and techniques to prevent tracking, extensions from the Google Web Store can be detected.
|
||||
|
||||
![][2]
|
||||
|
||||
And, with the installed extensions detected, you can be tracked online using browser fingerprinting.
|
||||
|
||||
Surprisingly, even if you have extensions like **uBlocker, AdBlocker,**or**Privacy Badger** (some popular privacy-focused extensions), they all get detected using this method.
|
||||
|
||||
You can explore all the technical details on its [GitHub page][3]. And, if you want to test it yourself, head to its [Extension Fingerprints site][4] to check for yourself.
|
||||
|
||||
### Firefox To The Rescue?
|
||||
|
||||
It seems like it, considering [I keep coming back to Firefox][5] for various reasons.
|
||||
|
||||
The discovered method should work with all the Chromium-based browsers. I tested it with Brave and Google Chrome. The researcher also mentions that the tool does not work with Microsoft Edge using extensions from Microsoft’s store. But, it is possible with the same method of tracking.
|
||||
|
||||
Mozilla Firefox is safe from this because the extension IDs for every browser instance are unique, as the researcher suggested.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/chrome-extension-tracking/
|
||||
|
||||
作者:[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/wp-content/uploads/2022/06/opensource-project-tracker-chrome-extensions.jpg
|
||||
[2]: https://news.itsfoss.com/wp-content/uploads/2022/06/extension-fingerprints.jpg
|
||||
[3]: https://github.com/z0ccc/extension-fingerprints
|
||||
[4]: https://z0ccc.github.io/extension-fingerprints/
|
||||
[5]: https://news.itsfoss.com/why-mozilla-firefox/
|
@ -0,0 +1,90 @@
|
||||
[#]: subject: "Should Businesses Opt for Serverless Computing?"
|
||||
[#]: via: "https://www.opensourceforu.com/2021/12/should-businesses-opt-for-serverless-computing/"
|
||||
[#]: author: "Krishna Mohan Koyya https://www.opensourceforu.com/author/krishna-mohan-koyya/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Should Businesses Opt for Serverless Computing?
|
||||
======
|
||||
Serverless computing removes the server from the equation and enables businesses to give undivided attention to the application functionality. Does that make serverless computing the automatic choice? Let’s find out.
|
||||
|
||||
![Severless-Cloud-Computing-Featured-image-OSFY-Oct-2021][1]
|
||||
|
||||
Until recently, almost every product manager organised his or her engineering resources into two separate teams — the development team and the operations team. The development team is usually involved in coding, testing and building the application functionality, whereas the operations team takes the responsibility of delivery, deployment, and operational maintenance of the application.
|
||||
|
||||
When a development team builds an e-commerce application, the operations team sets up the server to host that application. Setting up a server involves several aspects, which include:
|
||||
|
||||
* Choosing the appropriate hardware and operating system
|
||||
* Applying the required set of patches
|
||||
* Installing applicable server environments like JDK, Python, Tomcat, NodeJS, etc
|
||||
* Deploying, configuring, and provisioning the actual application
|
||||
* Opening and securing appropriate ports
|
||||
* Setting up required database engines
|
||||
|
||||
… and the list just goes on.
|
||||
|
||||
Besides this, managers also break their heads on capacity planning. After all, any non-trivial application is expected to be 100 per cent available, reliable and scalable all the time. This requires optimal investment in the hardware. As we all know, shortage of hardware at crucial periods results in business loss, and on the other hand, redundant hardware hurts the bottomline. Capacity planning is crucial, irrespective of whether the application is targeted for the on-premises data centre or for cloud infrastructure.
|
||||
By now, it is clear that businesses spend a lot of time not only in building the functionality but also in delivering it.
|
||||
|
||||
Serverless computing aims at offering a seamless way to deliver the functionality without worrying about the server setup and maintenance. In other words, a serverless computing platform offers a ready-to-use environment in such a way that the businesses build and deploy the applications as a set of smaller functions as quickly as possible. That is why this approach is referred to as Function as a Service (FaaS).
|
||||
|
||||
Remember that there is still a server in serverless computing, but it is taken care of by the FaaS vendors like AWS, Microsoft, and Google.
|
||||
|
||||
For example, AWS offers a serverless computing environment in the name of Lambda functions. Developers can choose to build the applications as a set of Lambda functions that can be written in NodeJS, Java, Python, and a few other languages. AWS offers a ready-to-use environment to deploy these functions. It also offers ready-to-use database servers, file servers, application gateways, authentication servers, etc.
|
||||
|
||||
Similarly, Microsoft Azure offers an environment to build and deploy Azure functions in languages like C#.
|
||||
|
||||
### Why serverless?
|
||||
|
||||
There are two main factors driving the popularity of serverless computing.
|
||||
|
||||
#### Ready-to-use environment
|
||||
|
||||
Obviously, this is the topmost selling point in favour of serverless computing. Businesses need not procure/book hardware or instances in advance, or worry about licences and setting up and provisioning the server. And they need not bother about scaling up and down. All of this is taken care of by the FaaS vendor.
|
||||
Optimal cost: Since FaaS vendors always charge the clients based on the utilisation of the environment (pay as you use model), businesses need not worry about upfront costs and wastage of resources. For example, AWS charges the clients based on the number of requests a Lambda function receives, number of queries run on a table, etc.
|
||||
|
||||
### Challenges with serverless computing
|
||||
|
||||
Like with any other approach, serverless computing is also not the perfect approach that everyone can blindly follow. It has its own set of limitations. Here are a few of them.
|
||||
|
||||
#### Vendor locking
|
||||
|
||||
The first and most important problem associated with serverless computing is that functions like Lambda or Azure are to be written using vendor-supplied APIs. For example, the functions that are written using an AWS Lambda API cannot be deployed into Google Cloud and vice versa. Hence, serverless computing forces businesses to commit to a vendor, for years. The success or failure of the application depends not only on the functionality but also on the ability of the vendor with respect to performance, etc.
|
||||
|
||||
#### Programming language
|
||||
|
||||
No serverless computing platform supports all the possible programming languages. Moreover, it may not support all the versions of a given programming language. The application development teams are constrained to choose only the languages that are offered. This may turn out to be very crucial in terms of the capabilities of the team.
|
||||
|
||||
#### Optimal cost, really?
|
||||
|
||||
It all depends on the usage of the resources. If your application is attracting a huge load, like millions of requests per second, the bill that you foot might be exorbitant. At such a scale, having your own server on-premises or on the cloud might work cheaper. It doesn’t mean that applications with Web-scale are not suitable for serverless computing. It all boils down to the way you architect around the platform and the deal you sign with the vendor.
|
||||
|
||||
#### Ecosystem
|
||||
|
||||
No application is written for an isolated environment. It requires other components like data stores, databases, security engines, gateways, messaging servers, queues, cache, etc. Every platform offers its own set of such tools. For instance, AWS offers Dynamo DB as one of the NoSQL solutions. Obviously, other vendors offer their own NoSQL solutions. The teams are thus forced to architect the applications based on the chosen platform. Though most of the commercial FaaS vendors offer one or another component for a particular requirement, not every component may be best-in-class.
|
||||
|
||||
### What about containers?
|
||||
|
||||
Many of us migrated to containerised deployment models in the last decade, since they offer a lightweight alternative to the costly machines, physical or virtual. With orchestration tools like Kubernetes, we love to deploy containerised applications and meet Web-scale requirements. Containers offer a certain degree of isolation from the underlying environment, which makes deployment relatively easy. However, we still need investments in hardware (on-premises or cloud), licences, networking, provisioning, etc, which demands forward planning, applicable technical skills, and careful monitoring. Serverless computing frees us even from these responsibilities, albeit with its own set of pros and cons.
|
||||
|
||||
### Road ahead
|
||||
|
||||
We are in the days of continuous development, continuous integration, and continuous deployment. Every business is facing competition. Time to market (TTM) plays a significant role in gaining and retaining customers. In this backdrop, businesses love to spend more time churning out the functionality as quickly as possible rather than struggling with the nitty-gritty of deployment and maintenance. Serverless computing has the potential to meet these demands. Big players are committing huge investments to make FaaS as seamless and as affordable as possible. The future looks bright for serverless computing.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.opensourceforu.com/2021/12/should-businesses-opt-for-serverless-computing/
|
||||
|
||||
作者:[Krishna Mohan Koyya][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.opensourceforu.com/author/krishna-mohan-koyya/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.opensourceforu.com/wp-content/uploads/2021/10/Severless-Cloud-Computing-Featured-image-OSFY-Oct-2021.jpg
|
@ -0,0 +1,184 @@
|
||||
[#]: subject: "7 summer book recommendations from open source enthusiasts"
|
||||
[#]: via: "https://opensource.com/article/22/6/2022-opensourcecom-summer-reading-list"
|
||||
[#]: author: "Joshua Allen Holm https://opensource.com/users/holmja"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
7 summer book recommendations from open source enthusiasts
|
||||
======
|
||||
Members of the Opensource.com community recommend this mix of books covering everything from a fun cozy mystery to non-fiction works that explore thought-provoking topics.
|
||||
|
||||
![Ceramic mug of tea or coffee with flowers and a book in front of a window][1]
|
||||
|
||||
Image by: Photo by [Carolyn V][2] on [Unsplash][3]
|
||||
|
||||
It is my great pleasure to introduce Opensource.com's 2022 summer reading list. This year's list contains seven wonderful reading recommendations from members of the Opensource.com community. You will find a nice mix of books covering everything from a fun cozy mystery to non-fiction works that explore thought-provoking topics. I hope you find something on this list that interests you.
|
||||
|
||||
Enjoy!
|
||||
|
||||
![Book title 97 Things Every Java Programmer Should Know][4]
|
||||
|
||||
Image by: O'Reilly Press
|
||||
|
||||
**[97 Things Every Java Programmer Should Know: Collective Wisdom from the Experts, edited by Kevlin Henney and Trisha Gee][5]**
|
||||
|
||||
*[Recommendation written by Seth Kenlon][6]*
|
||||
|
||||
Written by 73 different authors working in all aspects of the software industry, the secret to this book's greatness is that it actually applies to much more than just Java programming. Of course, some chapters lean into Java, but there are topics like Be aware of your container surroundings, Deliver better software, faster, and Don't hIDE your tools that apply to development regardless of language.
|
||||
|
||||
Better still, some chapters apply to life in general. Break problems and tasks into small chunks is good advice on how to tackle any problem, Build diverse teams is important for every group of collaborators, and From puzzles to products is a fascinating look at how the mind of a puzzle-solver can apply to many different job roles.
|
||||
|
||||
Each chapter is just a few pages, and with 97 to choose from, it's easy to skip over the ones that don't apply to you. Whether you write Java code all day, just dabble, or if you haven't yet started, this is a great book for geeks interested in code and the process of software development.
|
||||
|
||||
![Book title A City is Not a Computer][7]
|
||||
|
||||
Image by: Princeton University Press
|
||||
|
||||
**[A City is Not a Computer: Other Urban Intelligences, by Shannon Mattern][8]**
|
||||
|
||||
*[Recommendation written by Scott Nesbitt][9]*
|
||||
|
||||
These days, it's become fashionable (if not inevitable) to make everything *smart*: Our phones, our household appliances, our watches, our cars, and, especially, our cities.
|
||||
|
||||
With the latter, that means putting sensors everywhere, collecting data as we go about our business, and pushing information (whether useful or not) to us based on that data.
|
||||
|
||||
This begs the question, does embedding all that technology in a city make it smart? In *A City Is Not a Computer*, Shannon Mattern argues that it doesn't.
|
||||
|
||||
A goal of making cities smart is to provide better engagement with and services to citizens. Mattern points out that smart cities often "aim to merge the ideologies of technocratic managerialism and public service, to reprogram citizens as 'consumers' and 'users'." That, instead of encouraging citizens to be active participants in their cities' wider life and governance.
|
||||
|
||||
Then there's the data that smart systems collect. We don't know what and how much is being gathered. We don't know how it's being used and by whom. There's *so much* data being collected that it overwhelms the municipal workers who deal with it. They can't process it all, so they focus on low-hanging fruit while ignoring deeper and more pressing problems. That definitely wasn't what cities were promised when they were sold smart systems as a balm for their urban woes.
|
||||
|
||||
*A City Is Not a Computer* is a short, dense, well-researched polemic against embracing smart cities because technologists believe we should. The book makes us think about the purpose of a smart city, who really benefits from making a city smart, and makes us question whether we need to or even should do that.
|
||||
|
||||
![Book title git sync murder][10]
|
||||
|
||||
Image by: Tilted Windmill Press
|
||||
|
||||
**[git sync murder, by Michael Warren Lucas][11]**
|
||||
|
||||
*[Recommendation written by Joshua Allen Holm][12]*
|
||||
|
||||
Dale Whitehead would rather stay at home and connect to the world through his computer's terminal, especially after what happened at the last conference he attended. During that conference, Dale found himself in the role of an amateur detective solving a murder. You can read about that case in the first book in this series, *git commit murder*.
|
||||
|
||||
Now, back home and attending another conference, Dale again finds himself in the role of detective. *git sync murder* finds Dale attending a local tech conference/sci-fi convention where a dead body is found. Was it murder or just an accident? Dale, now the "expert" on these matters, finds himself dragged into the situation and takes it upon himself to figure out what happened. To say much more than that would spoil things, so I will just say *git sync murder* is engaging and enjoyable to read. Reading *git commit murder* first is not necessary to enjoy *git sync murder*, but I highly recommend both books in the series.
|
||||
|
||||
Michael Warren Lucas's *git murder* series is perfect for techies who also love cozy mysteries. Lucas has literally written the book on many complex technical topics, and it carries over to his fiction writing. The characters in *git sync murder* talk tech at conference booths and conference social events. If you have not been to a conference recently because of COVID and miss the experience, Lucas will transport you to a tech conference with the added twist of a murder mystery to solve. Dale Whitehead is an interesting, if somewhat unorthodox, cozy mystery protagonist, and I think most Opensource.com readers would enjoy attending a tech conference with him as he finds himself thrust into the role of amateur sleuth.
|
||||
|
||||
![Book title Kick Like a Girl][13]
|
||||
|
||||
Image by: Inner Wings Foundation
|
||||
|
||||
**[Kick Like a Girl, by Melissa Di Donato Roos][14]**
|
||||
|
||||
*[Recommendation written by Joshua Allen Holm][15]*
|
||||
|
||||
Nobody likes to be excluded, but that is what happens to Francesca when she wants to play football at the local park. The boys won't play with her because she's a girl, so she goes home upset. Her mother consoles her by relating stories about various famous women who have made an impact in some significant way. The historical figures detailed in *Kick Like a Girl* include women from throughout history and from many different fields. Readers will learn about Frida Kahlo, Madeleine Albright, Ada Lovelace, Rosa Parks, Amelia Earhart, Marie Curie, Valentina Tereshkova, Florence Nightingale, and Malala Yousafzai. After hearing the stories of these inspiring figures, Francesca goes back to the park and challenges the boys to a football match.
|
||||
|
||||
*Kick Like a Girl* features engaging writing by Melissa Di Donato Roos (SUSE's CEO) and excellent illustrations by Ange Allen. This book is perfect for young readers, who will enjoy the rhyming text and colorful illustrations. Di Donato Roos has also written two other books for children, *How Do Mermaids Poo?* and *The Magic Box*, both of which are also worth checking out.
|
||||
|
||||
![Book title Mine!][16]
|
||||
|
||||
Image by: Doubleday
|
||||
|
||||
**[Mine!: How the Hidden Rules of Ownership Control Our Lives, by Michael Heller and James Salzman][17]**
|
||||
|
||||
*[Recommendation written by Bryan Behrenshausen][18]*
|
||||
|
||||
"A lot of what you know about ownership is wrong," authors Michael Heller and James Salzman write in *Mine!* It's the kind of confrontational invitation people drawn to open source can't help but accept. And this book is certainly one for open source aficionados, whose views on ownership—of code, of ideas, of intellectual property of all kinds—tend to differ from mainstream opinions and received wisdom. In this book, Heller and Salzman lay out the "hidden rules of ownership" that govern who controls access to what. These rules are subtle, powerful, deeply historical conventions that have become so commonplace they just seem incontrovertible. We know this because they've become platitudes: "First come, first served" or "You reap what you sow." Yet we see them play out everywhere: On airplanes in fights over precious legroom, in the streets as neighbors scuffle over freshly shoveled parking spaces, and in courts as juries decide who controls your inheritance and your DNA. Could alternate theories of ownership create space for rethinking some essential rights in the digital age? The authors certainly think so. And if they're correct, we might respond: Can open source software serve as a model for how ownership works—or doesn't—in the future?
|
||||
|
||||
![Book Title Not All Fairy Tales Have Happy Endings][19]
|
||||
|
||||
Image by: Lulu.com
|
||||
|
||||
**[Not All Fairy Tales Have Happy Endings: The Rise and Fall of Sierra On-Line, by Ken Williams][20]**
|
||||
|
||||
*[Recommendation written by Joshua Allen Holm][21]*
|
||||
|
||||
During the 1980s and 1990s, Sierra On-Line was a juggernaut in the computer software industry. From humble beginnings, this company, founded by Ken and Roberta Williams, published many iconic computer games. King's Quest, Space Quest, Quest for Glory, Leisure Suit Larry, and Gabriel Knight are just a few of the company's biggest franchises.
|
||||
|
||||
*Not All Fairy Tales Have Happy Endings* covers everything from the creation of Sierra's first game, [Mystery House][22], to the company's unfortunate and disastrous acquisition by CUC International and the aftermath. The Sierra brand would live on for a while after the acquisition, but the Sierra founded by the Williams was no more. Ken Williams recounts the entire history of Sierra in a way that only he could. His chronological narrative is interspersed with chapters providing advice about management and computer programming. Ken Williams had been out of the industry for many years by the time he wrote this book, but his advice is still extremely relevant.
|
||||
|
||||
Sierra On-Line is no more, but the company made a lasting impact on the computer gaming industry. *Not All Fairy Tales Have Happy Endings* is a worthwhile read for anyone interested in the history of computer software. Sierra On-Line was at the forefront of game development during its heyday, and there are many valuable lessons to learn from the man who led the company during those exciting times.
|
||||
|
||||
![Book title The Soul of a New Machine][23]
|
||||
|
||||
Image by: Back Bay Books
|
||||
|
||||
**[The Soul of a New Machine, by Tracy Kidder][24]**
|
||||
|
||||
*[Recommendation written by Guarav Kamathe][25]*
|
||||
|
||||
I am an avid reader of the history of computing. It's fascinating to know how these intelligent machines that we have become so dependent on (and often take for granted) came into being. I first heard of [The Soul of a New Machine][26] via [Bryan Cantrill][27]'s [blog post][28]. This is a non-fiction book written by [Tracy Kidder][29] and published in 1981 for which he [won a Pulitzer prize][30]. Imagine it's the 1970s, and you are part of the engineering team tasked with designing the [next generation computer][31]. The backdrop of the story begins at Data General Corporation, a then mini-computer vendor who was racing against time to compete with the 32-bit VAX computers from Digital Equipment Corporation (DEC). The book outlines how two competing teams within Data General, both wanting to take a shot at designing the new machine, results in a feud. What follows is a fascinating look at the events that unfold. The book provides insights into the minds of the engineers involved, the management, their work environment, the technical challenges they faced along the way and how they overcame them, how stress affected their personal lives, and much more. Anybody who wants to know what goes into making a computer should read this book.
|
||||
|
||||
There is the 2022 suggested reading list. It provides a variety of great options that I believe will provide Opensource.com readers with many hours of thought-provoking entertainment. Be sure to check out our previous reading lists for even more book recommendations.
|
||||
|
||||
* [2021 Opensource.com summer reading list][32]
|
||||
* [2020 Opensource.com summer reading list][33]
|
||||
* [2019 Opensource.com summer reading list][34]
|
||||
* [2018 Open Organization summer reading list][35]
|
||||
* [2016 Opensource.com summer reading list][36]
|
||||
* [2015 Opensource.com summer reading list][37]
|
||||
* [2014 Opensource.com summer reading list][38]
|
||||
* [2013 Opensource.com summer reading list][39]
|
||||
* [2012 Opensource.com summer reading list][40]
|
||||
* [2011 Opensource.com summer reading list][41]
|
||||
* [2010 Opensource.com summer reading list][42]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/6/2022-opensourcecom-summer-reading-list
|
||||
|
||||
作者:[Joshua Allen Holm][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/holmja
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/sites/default/files/lead-images/tea-cup-mug-flowers-book-window.jpg
|
||||
[2]: https://unsplash.com/@sixteenmilesout?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[3]: https://unsplash.com/s/photos/tea?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[4]: https://opensource.com/sites/default/files/2022-06/97_Things_Every_Java_Programmer_Should_Know_1.jpg
|
||||
[5]: https://www.oreilly.com/library/view/97-things-every/9781491952689/
|
||||
[6]: https://opensource.com/users/seth
|
||||
[7]: https://opensource.com/sites/default/files/2022-06/A_City_is_Not_a_Computer_0.jpg
|
||||
[8]: https://press.princeton.edu/books/paperback/9780691208053/a-city-is-not-a-computer
|
||||
[9]: https://opensource.com/users/scottnesbitt
|
||||
[10]: https://opensource.com/sites/default/files/2022-06/git_sync_murder_0.jpg
|
||||
[11]: https://mwl.io/fiction/crime#gsm
|
||||
[12]: https://opensource.com/users/holmja
|
||||
[13]: https://opensource.com/sites/default/files/2022-06/Kick_Like_a_Girl.jpg
|
||||
[14]: https://innerwings.org/books/kick-like-a-girl
|
||||
[15]: https://opensource.com/users/holmja
|
||||
[16]: https://opensource.com/sites/default/files/2022-06/Mine.jpg
|
||||
[17]: https://www.minethebook.com/
|
||||
[18]: https://opensource.com/users/bbehrens
|
||||
[19]: https://opensource.com/sites/default/files/2022-06/Not_All_Fairy_Tales.jpg
|
||||
[20]: https://kensbook.com/
|
||||
[21]: https://opensource.com/users/holmja
|
||||
[22]: https://en.wikipedia.org/wiki/Mystery_House
|
||||
[23]: https://opensource.com/sites/default/files/2022-06/The_Soul_of_a_New_Machine.jpg
|
||||
[24]: https://www.hachettebookgroup.com/titles/tracy-kidder/the-soul-of-a-new-machine/9780316204552/
|
||||
[25]: https://opensource.com/users/gkamathe
|
||||
[26]: https://en.wikipedia.org/wiki/The_Soul_of_a_New_Machine
|
||||
[27]: https://en.wikipedia.org/wiki/Bryan_Cantrill
|
||||
[28]: http://dtrace.org/blogs/bmc/2019/02/10/reflecting-on-the-soul-of-a-new-machine/
|
||||
[29]: https://en.wikipedia.org/wiki/Tracy_Kidder
|
||||
[30]: https://www.pulitzer.org/winners/tracy-kidder
|
||||
[31]: https://en.wikipedia.org/wiki/Data_General_Eclipse_MV/8000
|
||||
[32]: https://opensource.com/article/21/6/2021-opensourcecom-summer-reading-list
|
||||
[33]: https://opensource.com/article/20/6/summer-reading-list
|
||||
[34]: https://opensource.com/article/19/6/summer-reading-list
|
||||
[35]: https://opensource.com/open-organization/18/6/summer-reading-2018
|
||||
[36]: https://opensource.com/life/16/6/2016-summer-reading-list
|
||||
[37]: https://opensource.com/life/15/6/2015-summer-reading-list
|
||||
[38]: https://opensource.com/life/14/6/annual-reading-list-2014
|
||||
[39]: https://opensource.com/life/13/6/summer-reading-list-2013
|
||||
[40]: https://opensource.com/life/12/7/your-2012-open-source-summer-reading
|
||||
[41]: https://opensource.com/life/11/7/summer-reading-list
|
||||
[42]: https://opensource.com/life/10/8/open-books-opensourcecom-summer-reading-list
|
99
sources/tech/20220621 An Introduction to Teradata.md
Normal file
99
sources/tech/20220621 An Introduction to Teradata.md
Normal file
@ -0,0 +1,99 @@
|
||||
[#]: subject: "An Introduction to Teradata"
|
||||
[#]: via: "https://www.opensourceforu.com/2022/06/an-introduction-to-teradata/"
|
||||
[#]: author: "Saurabh Kumar https://www.opensourceforu.com/author/saurabh-kumar/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
An Introduction to Teradata
|
||||
======
|
||||
Teradata is one of the most popular relational database management systems (RDBMS) appropriate for huge data warehousing applications. It is highly scalable and capable of handling large volumes of data. This article provides a basic understanding of Teradata architecture, and the types of spaces and tables it has.
|
||||
|
||||
![an-introduction-of-teradata-featured-image][1]
|
||||
|
||||
As per official Teradata documentation: “Teradata database is a massively parallel analytics engine that can help businesses achieve breakthrough results across all industries. Whether companies need to improve profitability, mitigate risks, innovate products, enhance the customer experience, or achieve other objectives, analytics paves the way to success.”
|
||||
|
||||
### Teradata architecture
|
||||
|
||||
**Node:** This is an essential building block of the Teradata database system and is made up of hardware and software components. A server can also be considered as a node.
|
||||
|
||||
*PE (parsing engine):* This is a type of vproc (virtual processor) for session control, task dispatching and SQL parsing in the multi-tasking and possibly parallel-processing environment of the Teradata database. Vproc is a software process running in an SMP (symmetric multiprocessing) environment or a node. The vproc or the access module processor (AMP) are responsible for storing and retrieving data.
|
||||
|
||||
The different components of a parsing engine are listed below.
|
||||
|
||||
* Parser: This decomposes SQL queries into relational data management processing steps.
|
||||
* Query optimizer: This determines the most efficient path to access data.
|
||||
* Step generator: This produces processing steps and encapsulates them into packages.
|
||||
* Dispatcher: This transmits the encapsulated steps from the parser to the relevant AMPs, and performs monitoring and error-handling functionalities during step processing.
|
||||
* Session controller: This manipulates session-control activities (e.g., log on, log off and authentication) and restores a session only after client or server failures.
|
||||
|
||||
*Message passing layer:* This is also called BYNET (Banyan network), and is the networking layer in the Teradata system. It allows interaction between PE and AMP, and also between the nodes. It receives the execution plan from the PE and sends it to AMP. Similarly, it receives the outputs from the AMP and sends them to PE. In the Teradata system, there are always two BYNET systems. These are called BYNET 0 and BYNET 1. But this is generally referred to as a single BYNET system. If one BYNET fails, the second one takes its place. But when data is large, both BYNETs can be made functional, which enhances the communication between PE and AMPs.
|
||||
|
||||
*Disk:* This component organises and stores the data while performing data manipulation activities. Teradata database employs redundant array of independent disks (RAID) storage technology to provide data security at the disk level. When AMPs are associated with disks, it is called Vdisks (virtual disks).
|
||||
|
||||
> Note: Each AMP is allowed to read and write on its own disk only. That is why it is also called shared-nothing architecture.
|
||||
|
||||
Teradata acts as a single data store that receives a large number of concurrent requests from various client applications. It is defined as an information repository supported by tools and utilities that make it, as part of Teradata Warehouse, a complete and active RDBMS.
|
||||
|
||||
### Types of spaces in Teradata
|
||||
|
||||
*Permanent space:* This is the maximum amount of space allocated to the user/database to hold data rows. It is used for database objects (like permanent tables, indexes, etc) creation, and to hold their data. The total permanent space is divided among the total number of AMPs. Whenever the per AMP limit exceeds the allocated space of AMP, a ‘No more room in database’ error is generated. Permanent tables, journals, fallback tables, and secondary index sub-tables use permanent space. All databases have a predefined upper limit of permanent space. Teradata doesn’t physically preallocate permanent space for databases and users when they are defined during object definition time.
|
||||
|
||||
![Figure 1: Teradata architecture][2]
|
||||
|
||||
*Spool space:* This is the unused permanent space that is used by the system to keep the intermediate results of the SQL query. Once the query is complete, the spool space is released. The volatile tables use the spool space. Users without spool space can’t execute any query. Data is active up to the current session only. It is divided among the number of AMPs. Whenever the per AMP limit exceeds the allocated space, the user will get a spool space error.
|
||||
|
||||
*Temporary space:* This is the unused permanent space used by global temporary tables (GTT). It is divided by the number of AMPs. Data is active up to the current session only. It is reserved prior to spool space for any user defined operations. Temp space is allocated at the database level or user level, but not at the table level. This is the amount of space used for GTT, and these results remain available to the user until the session is terminated.
|
||||
Tables created in temp space will survive a restart. A query example is given below:
|
||||
|
||||
```
|
||||
CREATE DATABASE new_db FROM existing_db
|
||||
AS PERMANENT = 2000000, SPOOL = 5000000, TEMP = 2000000;
|
||||
```
|
||||
|
||||
A new database must be created from an existing database.
|
||||
|
||||
Permanent space can be used for tables in the database. Spool space is allocated for the maximum amount of workspace available for requests. Temp space is allocated for temp tables in the database.
|
||||
|
||||
### Types of tables in Teradata
|
||||
|
||||
**Permanent tables:** These remain in the system until they are dropped. The table definition is stored in the data dictionary. Data and structure can be shared across multiple sessions and users. Data is stored in the permanent space, and ‘collect statistics’ is supported. Indexes can be created. COMPRESS columns, as well as DEFAULT and TITLE clauses are supported. Partition primary index (PPI) is also supported. If the primary index clause is not defined in the ‘Create table’ statement, then Teradata will create the first column as primary by default.
|
||||
|
||||
*Global temporary tables (GTT):* This is a kind of temporary table. The table definition is stored in the data dictionary. It requires a minimum of 512 bytes from the permanent space to store table definitions in the data dictionary. The structure can be shared across multiple users but data will remain private to the session (and its user). Data is stored in the temporary space. Data will be purged for that session once the session ends. ‘Collect statistics’ is supported. Indexes can be created. COMPRESS columns, as well as DEFAULT and TITLE clauses are supported. PPI is also supported.
|
||||
|
||||
This table can be identified from the data dictionary table (dbc.tables) using the ‘CommitOpt’ column. If its value is ‘D’ (on commit Delete rows) or ‘P’ (on commit Preserve rows), then it’s a GTT. If the primary index clause is not specified while creating the table, then Teradata will create the first column as primary by default. One session can generate up to 2000 global temporary tables at a time.
|
||||
|
||||
*Volatile tables:* These are created in the spool space for temporary use, and their life span extends for the duration of the session only. The table definition is not stored in the data dictionary. Structure and data is private to the session and its user. Data is stored in the spool space. The table gets dropped once the session ends, i.e., when ‘login again…no volatile tables’ shows up. ‘Collect statistics’ is supported. Indexes cannot be created. The COMPRESS column is supported, but the DEFAULT and TITLE clauses are not supported. PPI is supported. If the primary index clause is not specified while creating the table, then Teradata will create the first column as primary by default.
|
||||
|
||||
```
|
||||
ON COMIT DELETE ROWS (Default)
|
||||
ON COMIT PRESERVE ROWS (If we want to retain rows)
|
||||
```
|
||||
|
||||
*Derived tables:* This temporary table is derived from one or more other tables as the result of a sub-query. Derived tables are local to the query and exist only for the duration of the query. The table is automatically deleted once the query is done. Data is stored in the spool space. Table definition is not stored in the data dictionary. The first column in a derived table acts like a PI column for it.
|
||||
|
||||
### Properties of Teradata tables
|
||||
|
||||
* Fallback: This protects data by storing a second copy of each row of a table on a different AMP in the same cluster. If an AMP fails, the system accesses the fallback rows to meet requests.
|
||||
* Journals: BEFORE JOURNAL holds the image of impacted rows before any changes are made. AFTER JOURNAL holds the image of affected rows after changes are done. In DUAL BEFORE/AFTER JOURNAL, two images are taken and are stored in two separate AMPs.
|
||||
* Checksum: This detects some forms of lost writes. A lost write is a write of a file system block that received successful status on completion, but the write either never actually occurred or was written to an incorrect location. As a result, subsequent reads of the same block return the old data. NONE, LOW, MEDIUM, and HIGH levels are available in the checksum.
|
||||
|
||||
Teradata is a powerful RDBMS and can help in transforming how businesses work. We have just discussed its basics in this article and a lot still needs to be unearthed. We hope you find this basic information useful to explore the features and capabilities of Teradata further.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.opensourceforu.com/2022/06/an-introduction-to-teradata/
|
||||
|
||||
作者:[Saurabh 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.opensourceforu.com/author/saurabh-kumar/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.opensourceforu.com/wp-content/uploads/2022/05/an-introduction-of-teradata-featured-image.jpg
|
||||
[2]: https://www.opensourceforu.com/wp-content/uploads/2022/05/Figure-2-Teradata-Architecture.jpg
|
@ -0,0 +1,178 @@
|
||||
[#]: subject: "EdUBudgie Linux: Ubuntu Spin with Budgie Desktop for Students, Teachers"
|
||||
[#]: via: "https://www.debugpoint.com/2022/06/edubudgie-linux-22-04/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
EdUBudgie Linux: Ubuntu Spin with Budgie Desktop for Students, Teachers
|
||||
======
|
||||
EduBudgie is a new Ubuntu LTS flavour featuring the stunning Budgie desktop. We will give you a tour.
|
||||
|
||||
![EdUBudgie Linux 22.04 Budgie Desktop][1]
|
||||
|
||||
A Linux Hobbyist and educator ([Adam Dix][2]) announced that a new Budgie desktop Ubuntu spin is now available. The current version is based on the recently released Ubuntu 22.04 LTS “Jammy Jellyfish” and Budgie Desktop 10.6.
|
||||
|
||||
### Why another distro?
|
||||
|
||||
As per the creator of this distribution, the primary goal is to give an out-of-the-box experience with FOSS operating system, especially for the underprivileged education sector. How? Firstly, the distro pre-loads most of the new required educational software in its ISO image. Secondly, EduBudgie focuses on running in Chromebooks if needed. Because, as per the Google educational initiatives, millions of well-made Chromebooks are still out there. And EduBudgie can be installed easily on those hardware (either dual boot or a fresh install). And this will make the Chromebooks usable for the underfunded schools worldwide.
|
||||
|
||||
Besides, there are not many Educational Linux Linux distros out there. Hence, this distro aims to save time and cost for schools and university administrations by installing additional packages, solving dependencies, etc.
|
||||
|
||||
### EdUBudgie Linux 22.04 Review
|
||||
|
||||
#### Installation
|
||||
|
||||
The latest ISO image size of EdUBudgie Linux is 5.7 GB which is relatively higher. The primary reason is that many apps are pre-loaded into the ISO to help educators.
|
||||
|
||||
The installer is Ubuntu’s Ubiquity installer for EdUBudgie, and installation takes around 5 minutes with basic packages. There were no errors or problems during installation during our quick test.
|
||||
|
||||
However, this distro requires a minimum of ~32 GB of disk space on the root partition for installation. It is a hard requirement for installation.
|
||||
|
||||
![EdUBudgie requirement on disk space][3]
|
||||
|
||||
#### First Look
|
||||
|
||||
Budgie desktop looks sleek and beautiful by itself. The primary taskbar cum system tray is at the top. The main application menu is at the left of the top bar. In the middle, you get the fixed app shortcuts which act as a Dock. The system tray is on the right side of the bar.
|
||||
|
||||
The application menu is your traditional “Budgie app menu” and looks nice and clean.
|
||||
|
||||
Moreover, it has a GRID view and a search and list view. Also, the power options are present inside the App menu itself.
|
||||
|
||||
![App Menu Grid View][4]
|
||||
|
||||
![App Menu List View][5]
|
||||
|
||||
The overall look perfectly balances a professional and not too fancy look. It uses the chromeos-compact GTK2 theme with the win10 icon pack.
|
||||
|
||||
#### Applications
|
||||
|
||||
Let me give you a basic example. The application stack of EdUBudgie Linux is well-curated. It’s a mix of GNOME apps, Mint apps and Budgie. An essential app is a Calculator for a student. So, the EdUBudie brings the excellent Qalculate advanced calculator for the need. As you can see, much thought went into curating pre-loaded apps.
|
||||
|
||||
Let’s have a quick recap of the apps by their categories.
|
||||
|
||||
##### Accessories and Educational Apps
|
||||
|
||||
Firstly, in the Accessories section, you get the Nemo file manager (from Linux Mint). Perhaps Nemo is the second-best File manager after Dolphin if you compare the features. Hence, it’s a good choice.
|
||||
|
||||
In addition, it brings the new GNOME Screenshot tool, new [Gnome Text Editor][6], a To-Do List and Break Timer to remind you to take breaks during your study sessions.
|
||||
|
||||
Secondly, the main Educational applications are chosen to cater to different classes of students. Here’s a list:
|
||||
|
||||
* gbrainy: A educational quiz, games that feature math and other subjects to keep your mind active
|
||||
* GeoGebra: Famous open-source program to plot complex mathematical graphs.
|
||||
* Kig: An interactive Geometry application which makes you think about your ideas. This is one of the best [KDE apps][7] out there.
|
||||
* KWordQuiz: Improve your English language vocabulary using this excellent app.
|
||||
* OpenBoard: A necessary tool for taking notes, and rough drawing and perhaps one of the [best whiteboard app][8]s.
|
||||
* Scratch: A click-and-point programmable animation program developed by MIT for junior students. It helps to learn about the basics of logic and flows in programming.
|
||||
|
||||
The impressive list, isn’t it?
|
||||
|
||||
Here are some of the images of the above apps for your reference.
|
||||
|
||||
![Scratch][9]
|
||||
|
||||
![Kig][10]
|
||||
|
||||
![GeoGebra][11]
|
||||
|
||||
![gbrainy][12]
|
||||
|
||||
Let’s talk about the Science and Programming applications.
|
||||
|
||||
##### Science and Programming
|
||||
|
||||
The programming applications include Geany and Visual Studio Code Editor, an excellent choice as IDE for development. In addition, it contains the following applications for various needs.
|
||||
|
||||
* BASIC-256: A program to learn BASIC for young students
|
||||
* KAlgebra: Math expression solver and graph plotter
|
||||
* Kalzium: View and understand the Chemical periodic table of elements
|
||||
* KGeography: View the maps of continents and countries
|
||||
* KiCad App Suite: CAD drawing
|
||||
* LibreCAD: Free CAD Drawing app
|
||||
|
||||
##### Office and Graphics Apps
|
||||
|
||||
Office-suite is an important aspect of any educational operating system. EduBUdgie brings the WPS Office as a default office program for documents, spreadsheets and presentations. This is an interesting choice over LibreOffice.
|
||||
|
||||
In addition, you can use Calibre e-book management and Wondershare EdrawMind for diagrams and flowcharts. However, Wondershare EdrawMind is not open-source and comes with limited features. You can use free and open-source Dia, which is also pre-loaded.
|
||||
|
||||
The Graphics suite of apps includes all famous open-source apps. A quick list is presented below.
|
||||
|
||||
* Blender 3D Drawing
|
||||
* Darktable RAW Photo manager
|
||||
* GIMP for raster image processing
|
||||
* Inkscape for Vector Image
|
||||
* Krita
|
||||
* Scribus
|
||||
|
||||
Finally, EdUBudgie uses Geary email client, Google Chrome default web browser and Tilix terminal.
|
||||
|
||||
##### Remote Communication
|
||||
|
||||
Finally, look at the essential apps needed in today’s world. Due to the Pandemic, the schools and universities also conduct classes online. Furthermore, in-person communication is problematic for various reasons for students. With that in mind, EdUBudgie brings communication apps for everyone.
|
||||
|
||||
Firstly, the famous Zoom client is pre-installed, which helps you to participate in video conferences and meetings. Secondly, Skype and Microsoft Teams Linux clients are installed to join discussions on Microsoft networks. Besides that, Rambox brings a super-productivity boost to your study where you can create workspaces with multiple apps such as mails, messenger, Slack, etc.
|
||||
|
||||
![EdUBudgie Brings well-curated Communication Apps for Linux][13]
|
||||
|
||||
##### A mix of backend tech
|
||||
|
||||
As you can see from the above list of applications, the apps are chosen from different distros. It consists of KDE Plasma, Linux Mint, GNOME and other tech-based apps. Hence, all the backend packages such as Qt, Java (OpenJDK), and GTK4 are well tested and punched into the ISO. This is a significant feat by itself.
|
||||
|
||||
#### Performance
|
||||
|
||||
You may be wondering about performance because there are so many applications. Well, with a significant workload which includes multiple heavy apps (Teams, Skype etc.) running simultaneously, it consumes around 62% of your available RAM (i.e. 2.4 GB of 4 GB RAM). Also, the CPU is at 20% on average.
|
||||
|
||||
It is an excellent performance metric considering all the apps and their memory footprint. The Budgie desktop itself is well optimized and contributes to this performance.
|
||||
|
||||
In addition, the idle state performance is also good, i.e. 1 GB of memory and CPU is within 5%. The idle state resources used by X.Org, lightdm and systemd.
|
||||
|
||||
Finally, EdUBudgie Linux uses 19 GB of disk space for its base installation.
|
||||
|
||||
![EdUBudgie Linux Performance (average workload)][14]
|
||||
|
||||
![EdUBudgie Linux Performance (idle)][15]
|
||||
|
||||
### Closing Notes
|
||||
|
||||
I am impressed by this distribution on how it is well designed and focused on only one purpose. Not to mention the super-fast performance of the Budgie desktop itself. Also, thanks to the mix of GTK4, Budgie desktop components and icon themes, it looks professional.
|
||||
|
||||
Moreover, the stability, performance and long-term support (via Ubuntu LTS) are just add-ons to the excellent list of features. You can use this distribution for your daily driver, making it more appealing even if you are not a student.
|
||||
|
||||
You can download EdUBudgie Linux at their [official website][16].
|
||||
|
||||
That said, I hope you find this review helpful and don’t forget to check out our other [reviews here][17].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/06/edubudgie-linux-22-04/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/06/EdUBudgie-Linux-22.04-Budgie-Desktop.jpg
|
||||
[2]: https://www.linkedin.com/in/adam-dix-0339358/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/06/EdUBudgie-requirement-on-disk-space.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/06/App-Menu-Grid-View.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/06/App-Menu-List-View.jpg
|
||||
[6]: https://www.debugpoint.com/2021/12/gnome-text-editor/
|
||||
[7]: https://www.debugpoint.com/tag/kde-apps/
|
||||
[8]: https://www.debugpoint.com/2022/02/top-whiteboard-applications-linux/
|
||||
[9]: https://www.debugpoint.com/wp-content/uploads/2022/06/Scratch.jpg
|
||||
[10]: https://www.debugpoint.com/wp-content/uploads/2022/06/Kig.jpg
|
||||
[11]: https://www.debugpoint.com/wp-content/uploads/2022/06/GeoGebra.jpg
|
||||
[12]: https://www.debugpoint.com/wp-content/uploads/2022/06/gbrainy.jpg
|
||||
[13]: https://www.debugpoint.com/wp-content/uploads/2022/06/EdUBudgie-Brings-well-curated-Communication-Apps-for-Linux.jpg
|
||||
[14]: https://www.debugpoint.com/wp-content/uploads/2022/06/EdUBudgie-Linux-Performance-average-workload.jpg
|
||||
[15]: https://www.debugpoint.com/wp-content/uploads/2022/06/EdUBudgie-Linux-Performance-idle.jpg
|
||||
[16]: https://www.edubudgie.com/download
|
||||
[17]: https://www.debugpoint.com/tag/linux-distro-review
|
@ -0,0 +1,176 @@
|
||||
[#]: subject: "How SREs can achieve effective incident response"
|
||||
[#]: via: "https://opensource.com/article/22/6/effective-incident-response-site-reliability-engineers"
|
||||
[#]: author: "Robert Kimani https://opensource.com/users/robert-charles"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
How SREs can achieve effective incident response
|
||||
======
|
||||
Get back to business and continue services in a timely manner by implementing a thorough incident response strategy.
|
||||
|
||||
![Person using a laptop][1]
|
||||
|
||||
Incident response includes monitoring, detecting, and reacting to unplanned events such as security breaches or other service interruptions. The goal is to get back to business, satisfy service level agreements (SLAs), and provide services to employees and customers. Incident response is the planned reaction to a breach or interruption. One goal is to avoid unmanaged incidents.
|
||||
|
||||
### Establish an on-call system
|
||||
|
||||
One way of responding is to establish an on-call system. These are the steps to consider when you're setting up an on-call system:
|
||||
|
||||
1. Design an [effective on-call system][2]
|
||||
2. Understand managed vs. unmanaged incidents
|
||||
3. Build and implement an effective postmortem process
|
||||
4. Learn the tools and templates for postmortems
|
||||
|
||||
### Understand managed and unmanaged incidents
|
||||
|
||||
An *unmanaged incident* is an issue that an on-call engineer handles, often with whatever team member happens to be available to help. More often than not, unmanaged incidents become serious issues because they are not handled correctly. Issues include:
|
||||
|
||||
* No clear roles.
|
||||
* No incident command.
|
||||
* Random team members involved (freelancing), the primary killer of the management process.
|
||||
* Poor (or lack of) communication.
|
||||
* No central body running troubleshooting.
|
||||
|
||||
A *managed incident* is one handled with clearly defined procedures and roles. Even when an incident isn't anticipated, it's still met with a team that's prepared. A managed incident is ideal. It includes:
|
||||
|
||||
* Clearly defined roles.
|
||||
* Designated incident command that leads the effort.
|
||||
* Only the ops-team defined by the incident command updates systems.
|
||||
* A dedicated communications role exists until a communication person is identified. The Incident Command can fill in this role.
|
||||
* A recognized command post such as a "war room." Some organizations have a defined "war room bridge number" where all the incidents are handled.
|
||||
|
||||
Incident management takes place in a war room. The Incident Command is the role that leads the war room. This role is also responsible for organizing people around the operations team, planning, and communication.
|
||||
|
||||
The Operations Team is the only team that can touch the production systems. Hint: Next time you join an incident management team, the first question to ask is, Who is running the Incident Command?
|
||||
|
||||
### Deep dive into incident management roles
|
||||
|
||||
Incident management roles clearly define who is responsible for what activities. These roles should be established ahead of time and well-understood by all participants.
|
||||
|
||||
**Incident Command**: Runs the war room and assigns responsibilities to others.
|
||||
|
||||
**Operations Team**: Only role allowed to make changes to the production system.
|
||||
|
||||
**Communication Team**: Provides periodic updates to stakeholders such as the business partners or senior executives.
|
||||
|
||||
**Planning Team**: Supports operations by handling long-term items such as providing bug fixes, postmortems, and anything that requires a planning perspective.
|
||||
|
||||
As an SRE, you'll probably find yourself in the Operations Team role, but you may also have to fill other roles.
|
||||
|
||||
### Build and implement an effective postmortem process
|
||||
|
||||
Postmortem is a critical part of incident management that occurs once the incident is resolved.
|
||||
|
||||
#### Why postmortem?
|
||||
|
||||
* Fully understand/document the incident using postmortems. You can ask questions such as "What could have been done differently?"
|
||||
* Conduct a deep dive "root cause" analysis, producing valuable insights.
|
||||
* Learn from the incident. This is the primary benefit of doing postmortems.
|
||||
* Identify opportunities for prevention as part of postmortem analysis, e.g., identify a monitoring enhancement to catch an issue sooner in the future.
|
||||
* Plan and follow through with assigned activities as part of the postmortem.
|
||||
|
||||
#### Blameless postmortem: a fundamental tenet of SRE
|
||||
|
||||
No finger-pointing. People are quite honestly scared about postmortems because one person or team may be held responsible for the outage. Avoid finger-pointing at all costs; instead, focus solely on systems and processes and *not* on individuals. Isolating individuals/teams can create an unhealthy culture. For instance, the next time someone commits a mistake, they will not come forward and accept it. They may hide the activity due to the fear of being blamed.
|
||||
|
||||
Though there is no room for finger-pointing, the postmortem must call out improvement opportunities. This approach helps avoid further similar incidents.
|
||||
|
||||
#### When is a postmortem needed?
|
||||
|
||||
Is a postmortem necessary for all incidents or only for certain situations? Here are some suggestions for when a postmortem is useful:
|
||||
|
||||
* End-user experience impact beyond a threshold (SLO). If the SLO in place is impacted due to:
|
||||
* Unavailable services
|
||||
* Unacceptable performance
|
||||
* Erratic functionality
|
||||
* Data loss.
|
||||
* Organization/group-specific requirements with different policies and protocols to follow.
|
||||
|
||||
#### Six minimum items required in a postmortem
|
||||
|
||||
The postmortem should include the following six components:
|
||||
|
||||
1. Summary: Provide a succinct incident summary.
|
||||
2. Impact (must include any financial impact): Executives will look for impact and financial information.
|
||||
3. Root cause(s): Identify the root cause, if possible.
|
||||
4. Resolution: What the team actually did to fix the issue.
|
||||
5. Monitoring (issue detection): Specify how the incident was identified. Hopefully, this was a monitoring system rather than an end-user complaint.
|
||||
6. Action items with due dates and owners: This is important. Do not simply conduct a postmortem and forget the incident. Establish action items, assign owners, and follow through on these. Some organizations may also include a detailed timeline of occurrences in the postmortem, which can be useful to walk through the sequence of events.
|
||||
|
||||
Before the postmortem is published, a supervisor or senior team member(s) must review the document to avoid any errors or misrepresentation of facts.
|
||||
|
||||
#### Find postmortem tools and templates
|
||||
|
||||
If you haven't done postmortems before, you may be wondering how to get started. You've learned a lot about postmortems thus far, but how do you actually implement one?
|
||||
|
||||
That's where tools and templates come into play. There are many tools available. Consider the following:
|
||||
|
||||
1. Existing ITSM tools in your organization. Popular examples include ServiceNow, Remedy, Atlassian ITSM, etc. Existing tools likely provide postmortem tracking capabilities.
|
||||
2. Open source tools are also available, the most popular being [Morgue][3], released by Etsy. Another popular choice is [PagerDuty][4].
|
||||
3. Develop your own. Remember, SREs are also software engineers! It doesn't have to be fancy, but it must have an easy-to-use interface and a way to store the data reliably.
|
||||
4. Templates. These are documents that you can readily use to track your postmortems. There are many templates available, but the most popular ones are:
|
||||
|
||||
* Google: [Postmortem Culture: Learning from Failure][5] and [Example Postmortem][6]
|
||||
* Pagerduty: [The Postmortem][7]
|
||||
* Atlassian: Root Cause Analysis – The 5 whys?
|
||||
[Incident Postmortem Template][8]
|
||||
[Incident Postmortems][9]
|
||||
* [Splunk On-Call, formerly VictorOps][12]
|
||||
* Other [GitHub Template resources][13]
|
||||
* A custom in-house template: This may be the most effective option as it suits your organization's needs.
|
||||
|
||||
### Wrap up
|
||||
|
||||
Here are the key points for the above incident response discussion:
|
||||
|
||||
* Effective on-call system is necessary to ensure service availability and health.
|
||||
* Balance workload for on-call engineers.
|
||||
* Allocate resources.
|
||||
* Use multi-region support.
|
||||
* Promote a safe and positive environment.
|
||||
* Incident management must facilitate a clear separation of duties.
|
||||
* Incident command, operations, planning, and communication.
|
||||
* Blameless postmortems help prevent repeated incidents.
|
||||
|
||||
Incident management is only one side of the equation. For an SRE organization to be effective, it must also have a change management system in place. After all, changes cause many incidents.
|
||||
|
||||
The next article looks at ways to apply effective change management.
|
||||
|
||||
#### Further reading
|
||||
|
||||
* [Blameless Postmortems and a Just Culture][16]
|
||||
* [Postmortem Checklist][17]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/6/effective-incident-response-site-reliability-engineers
|
||||
|
||||
作者:[Robert Kimani][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/robert-charles
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/sites/default/files/lead-images/laptop_screen_desk_work_chat_text.png
|
||||
[2]: https://opensource.com/article/22/6/introduction-site-reliability-engineering
|
||||
[3]: https://github.com/etsy/morgue
|
||||
[4]: https://github.com/PagerDuty/postmortem-docs
|
||||
[5]: https://sre.google/sre-book/postmortem-culture/
|
||||
[6]: https://sre.google/sre-book/example-postmortem/
|
||||
[7]: https://postmortems.pagerduty.com/
|
||||
[8]: https://www.atlassian.com/incident-management/postmortem/templates
|
||||
[9]: https://www.atlassian.com/incident-management/handbook/postmortems
|
||||
[10]: https://www.atlassian.com/incident-management/postmortem/templates
|
||||
[11]: https://www.atlassian.com/incident-management/handbook/postmortems
|
||||
[12]: https://help.victorops.com/
|
||||
[13]: https://github.com/dastergon/postmortem-templates
|
||||
[14]: https://www.atlassian.com/incident-management/postmortem/templates
|
||||
[15]: https://www.atlassian.com/incident-management/handbook/postmortems
|
||||
[16]: https://www.etsy.com/codeascraft/blameless-postmortems/
|
||||
[17]: https://docs.google.com/document/d/1iaEgF0ICSmKKLG3_BT5VnK80gfOenhhmxVnnUcNSQBE/edit
|
@ -1,93 +0,0 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (Donkey)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (10 ways Ansible is for everyone)
|
||||
[#]: via: (https://opensource.com/article/21/1/ansible)
|
||||
[#]: author: (James Farrell https://opensource.com/users/jamesf)
|
||||
|
||||
Ansible 适合所有人的 10 种方式
|
||||
======
|
||||
|
||||
通过 2020 年的前 10 篇 Ansible 文章和 5 篇新闻摘要扩展你的知识和技能。
|
||||
![gears and lightbulb to represent innovation][1]
|
||||
|
||||
又到了一年的年末,我们再次来到 Opensource.com 上发表了一组关于 Ansible 的精彩文章。我认为在逐步推进一系列主题中回顾它们会很好。我希望能够激励对 Ansible 有兴趣的初学者。还有一系列总结文章,我已将其包括在内,以供你随意后续查阅。
|
||||
|
||||
### 适合初学者的 Ansible
|
||||
|
||||
今年列表中的前五篇文章对于 Ansible 新手来说是一个非常好的起点。前三篇文章由 Opensource.com 编辑 Seth Kenlon 撰写。
|
||||
|
||||
* 如果你不了解 Ansible ,[_现在可以做这 7 件事_][2] 来入手。这是很好的入门指导,它收集了用于管理硬件、云、容器等的链接。
|
||||
|
||||
* 在 [_编排与自动化有何区别?_][3] 这篇文章中,你会学到一些术语和技术路线,将会激发你对 Ansible 感兴趣。
|
||||
* 文章 [_如何用 Ansible 安装软件_][4] 覆盖了一些初级概念和一些 Ansible 的好习惯,给出了一些本地或远程管理软件包的案例。
|
||||
* 从 [_我在编写 Ansible Playbooks 时学到的 3 堂课_][5] 中,使自己养成 Jeff Geerling 所传授的好习惯,他是一位真正的 Ansible 资深人士。 源代码控制、文档、测试、简化和优化是自动化成功的关键。
|
||||
* [_我使用 Ansible 的第一天_][6] 介绍了记者 David Both 在解决重复性开发任务时的思考过程。这篇文章从 Ansible 的基础开始,并说明了一些简单的操作和任务。
|
||||
|
||||
|
||||
|
||||
### 尝试 Ansible 项目
|
||||
一旦你掌握了基础和并拥有良好习惯,就可以开始一些具体主题和实例了。
|
||||
|
||||
* Ken Fallon 在 [_使用 Ansible 管理你的 Raspberry Pi fleet_][7] 一文中介绍了一个部署和管理 RPi 单元的示例。它介绍了受限环境中的安全和维护概念。
|
||||
* 在 [_将你的日历与 Ansible 融合以避免日程冲突_][8] 文章中, Nicolas Leiva 快速介绍了如何使用前置任务和条件在自动日程安排中中强制执行隔离窗口
|
||||
* Nicolas 在 [_创建一个融合你的谷歌日历的 Ansible 模块_][9] 中完成了他的日历隔离的理念。他的文章深入探讨了在 Go 中编写自定义 Ansible 模块以实现所需的日历连接。 Nicolas 介绍了构建和调用 Go 程序并将所需数据传递给 Ansible 并接收所需输出的不同方法。
|
||||
|
||||
|
||||
|
||||
### 提升你的 Ansible 技巧
|
||||
|
||||
Kubernetes 是近来的热门话题,以下文章提供了一些很好的示例来学习新技能。
|
||||
|
||||
* 在 [_适用于 Kubernets 自动编排你的 Ansible 模块_][10] 文章中, Seth Kenlon 介绍了 Ansible Kubernetes 模块, 介绍了用于测试的基本 Minikube 安装,并提供了一些用于 pod 控制的“k8s”模块的基本示例。
|
||||
* Jeff Geerling 在 [_使用 Ansible 的 Helm 模块构建 Kubernetes Minecraft 服务器_][11] 中解释了 Helm Chart 应用程序、Ansible 集合以及执行一个有趣的项目以在 k8s 集群中设置您自己的 Minecraft 服务器的概念。
|
||||
|
||||
|
||||
|
||||
### 其他 Ansible 新闻
|
||||
几年, Mark Phillips 写了 “网络上的 Ansible” 这一系列文章,覆盖许多 Ansible 主题。它们包含指向有趣的 Ansible 开发的链接,范围从基本指导、模块编写、 Kubernetes 、视频演示到 Ansible 社区新闻。所有有兴趣和任何水平的人都可以查看一下,有很高的参考价值!
|
||||
|
||||
* [_容器,网络,安全,以及更多 Ansible 新闻_][12]
|
||||
* [_CI/CD 管道和 Windows 用户的提示,以及更多 Ansible 新闻_][13]
|
||||
* [_馆藏标志着Ansible生态系统的重大转变,以及更多Ansible新闻_][14]
|
||||
* [_Jeff Geerling 的 Ansible 101 视频,以及更多 Ansible 新闻_][15]
|
||||
* [_初学者指南、Windows、网络和更多 Ansible 新闻_][16]
|
||||
|
||||
|
||||
|
||||
### 2021 快乐!
|
||||
|
||||
我希望你的 Ansible 旅程已经开始,并能常从 Opensource.com 中的文章充实自己。在评论中告诉我们接下来你可能从哪方面了解 Ansible ,如果你想分享一些信息,请考虑在 Opensource.com 上 [写一篇文章][17] 。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/1/ansible
|
||||
|
||||
作者:[James Farrell][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[Donkey](https://github.comDonkey-Hao)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/jamesf
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/innovation_lightbulb_gears_devops_ansible.png?itok=TSbmp3_M (gears and lightbulb to represent innovation)
|
||||
[2]: https://opensource.com/article/20/9/ansible
|
||||
[3]: https://opensource.com/article/20/11/orchestration-vs-automation
|
||||
[4]: https://opensource.com/article/20/9/install-packages-ansible
|
||||
[5]: https://opensource.com/article/20/1/ansible-playbooks-lessons
|
||||
[6]: https://opensource.com/article/20/10/first-day-ansible
|
||||
[7]: https://opensource.com/article/20/9/raspberry-pi-ansible
|
||||
[8]: https://opensource.com/article/20/10/calendar-ansible
|
||||
[9]: https://opensource.com/article/20/10/ansible-module-go
|
||||
[10]: https://opensource.com/article/20/9/ansible-modules-kubernetes
|
||||
[11]: https://opensource.com/article/20/10/kubernetes-minecraft-ansible
|
||||
[12]: https://opensource.com/article/20/1/ansible-news-edition-six
|
||||
[13]: https://opensource.com/article/20/2/ansible-news-edition-seven
|
||||
[14]: https://opensource.com/article/20/3/ansible-news-edition-eight
|
||||
[15]: https://opensource.com/article/20/4/ansible-news-edition-nine
|
||||
[16]: https://opensource.com/article/20/5/ansible-news-edition-ten
|
||||
[17]: https://opensource.com/how-submit-article
|
Loading…
Reference in New Issue
Block a user