mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-03-03 01:10:13 +08:00
commit
566d85defa
107
published/20181107 Gitbase: Exploring Git repos with SQL.md
Normal file
107
published/20181107 Gitbase: Exploring Git repos with SQL.md
Normal file
@ -0,0 +1,107 @@
|
||||
[#]: subject: "Gitbase: Exploring Git repos with SQL"
|
||||
[#]: via: "https://opensource.com/article/18/11/gitbase"
|
||||
[#]: author: "Francesc Campoy https://opensource.com/users/francesc/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14470-1.html"
|
||||
|
||||
Gitbase:使用 SQL 探索 Git 仓库
|
||||
======
|
||||
|
||||
> Gitbase 是一个由 Go 驱动的开源项目,它使得我们可以在 Git 仓库上运行 SQL 查询。
|
||||
|
||||

|
||||
|
||||
Git 已经成为了代码版本控制的事实标准。虽然 Git 已经很流行了,但想用它来对源代码仓库的历史和内容进行深度分析,仍然是一件复杂的事情。
|
||||
|
||||
另一方面,SQL 则是一个经过实际检验、适合查询大型代码库的的语言,毕竟 Spark 和 BigQuery 等项目都采用了 SQL 作为查询语言。
|
||||
|
||||
因此,在 source{d} 公司,我们顺理成章地结合了这两种技术来创建了 Gitbase:这是一个用 SQL 对 Git 仓库进行大规模分析的“代码即数据”解决方案。
|
||||
|
||||
[Gitbase][2] 是一个完全开源的项目,它站在一系列巨人的肩膀上,是它们使 Gitbase 的发展成为可能。本文旨在指出其中的主要部分。
|
||||
|
||||
![][3]
|
||||
|
||||
*[Gitbase 试验场][4] 提供了一种使用 Gitbase 的可视化方式。*
|
||||
|
||||
### 使用 Vitess 解析 SQL
|
||||
|
||||
Gitbase 将 SQL 作为用户接口。这意味着我们需要解析基于 MySQL 协议传输的 SQL 请求,并理解它们。幸运的是,我们在 YouTube 的朋友和他们的 [Vitess][5] 项目已经实现了这一点。Vitess 是一个数据库集群系统,用于 MySQL 的水平扩展。
|
||||
|
||||
我们直接截取一些重要的代码片段,并把它做成了一个 [开源项目][6]。这个项目允许任何人在几分钟内编写一个 MySQL 服务器(正如我在 [justforfunc][7] 的专题:[CSVQL - 用 SQL 处理 CSV][8] 中所展示的那样)。
|
||||
|
||||
### 用 go-git 读取 Git 储存库
|
||||
|
||||
当成功解析了一个请求,我们还需要读取数据集里的 Git 仓库,才能够知道该如何回复它。为此,我们集成了 source{d} 最成功的仓库 [go-git][9]。go-git 是一个高度可扩展的纯 Go 语言的 Git 实现。
|
||||
|
||||
这使得我们能够轻松地分析以 [siva][10] 文件格式存储在磁盘上的源代码仓库(siva 也是一个 source{d} 的开源项目),或是直接使用 `git clone` 克隆的仓库。
|
||||
|
||||
### 使用 Enry 检测编程语言,使用 Babelfish 解析文件
|
||||
|
||||
Gitbase 并没有将其分析能力局限于 Git 历史记录上。它还使用(显然也是)我们的开源项目 [Enry][11] 集成了语言检测功能,并使用 [Babelfish][12] 实现了程序解析的功能。Babelfish 是一个用于通用源代码解析的自托管服务器,它可以将代码文件转化为<ruby>通用抽象语法树<rt>Universal Abstract Syntax Trees</rt></ruby>(UAST)。
|
||||
|
||||
这两个功能在 Gitbase 中呈现为用户函数 `LANGUAGE` 和 `UAST`。结合使用两个函数,许多查询请求都成为了可能,比如“找到上个月修改次数最多的函数名称”。
|
||||
|
||||
### 让它快速运行
|
||||
|
||||
Gitbase 经常要分析非常大的数据集,比如公共 Git 档案,其中有来自 GitHub 的 3TB 源代码(见 [公告][13])。为了做到这一点,每份 CPU 处理能力都很重要。
|
||||
|
||||
这就是为什么我们又集成了另外两个项目:Rubex 和 Pilosa。
|
||||
|
||||
### 使用 Rubex 和 Oniguruma 加快正则表达式的速度
|
||||
|
||||
[Rubex][14] 是 Go 的 `regexp` 标准库包的一个准替代品。之所以还不能完成替代,是因为他们没有在 `regexp.Regexp` 类型上实现 `LiteralPrefix` 方法,不过我也是直到现在才听说这个方法。
|
||||
|
||||
Rubex 的高性能得归功于高度优化的 C 语言库 [Oniguruma][15],它使用 [cgo][16] 来调用这个库。
|
||||
|
||||
### 使用 Pilosa 索引加快查询速度
|
||||
|
||||
索引基本上是每个关系型数据库的众所周知的特性,但 Vitess 却没有实现索引,因为它不是真正需要。
|
||||
|
||||
还好开源的 [Pilosa][17] 再一次拯救了我们,它是一个用 Go 实现的分布式位图索引,使得 Gitbase 可以用于大规模的数据集。Pilosa 是开源的,它极大地加快了对多个海量数据集的查询。
|
||||
|
||||
### 总结
|
||||
|
||||
我想通过这篇博文,亲自感谢开源社区,是他们让我们在如此短的时间内创建了 Gitbase,这是谁也没想到的。在 source{d} 公司,我们是开源的坚定信仰者,`github.com/src-d` 下的每一行代码(包括我们的 OKR 和投资者委员会)都可以证明这一点。
|
||||
|
||||
你想尝试一下 Gitbase 吗?最快、最简单的方法就是使用 source{d} 引擎。从 `sourced.tech/engine` 下载它,只需一个命令就能让 Gitbase 运行起来。
|
||||
|
||||
想了解更多吗?请查看我在 [Go SF meetup][18] 的演讲录音。
|
||||
|
||||
这篇文章 [最初发表在][20] Medium 上,经授权后在此重新发布。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/18/11/gitbase
|
||||
|
||||
作者:[Francesc Campoy][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/francesc/
|
||||
[b]: https://github.com/lkxed/
|
||||
[1]: https://opensource.com/sites/default/files/lead-images/bus_cloud_database.png
|
||||
[2]: https://github.com/src-d/gitbase
|
||||
[3]: https://opensource.com/sites/default/files/uploads/gitbase.png
|
||||
[4]: https://github.com/src-d/gitbase-web
|
||||
[5]: https://github.com/vitessio/vitess
|
||||
[6]: https://github.com/src-d/go-mysql-server
|
||||
[7]: http://justforfunc.com/
|
||||
[8]: https://youtu.be/bcRDXAraprk
|
||||
[9]: https://github.com/src-d/go-git
|
||||
[10]: https://github.com/src-d/siva
|
||||
[11]: https://github.com/src-d/enry
|
||||
[12]: https://github.com/bblfsh/bblfshd
|
||||
[13]: https://blog.sourced.tech/post/announcing-pga/
|
||||
[14]: https://github.com/moovweb/rubex
|
||||
[15]: https://github.com/kkos/oniguruma
|
||||
[16]: https://golang.org/cmd/cgo/
|
||||
[17]: https://github.com/pilosa/pilosa
|
||||
[18]: https://www.meetup.com/golangsf/events/251690574/
|
||||
[19]: https://youtu.be/OXL2KxOTmBQ
|
||||
[20]: https://medium.com/sourcedtech/gitbase-exploring-git-repos-with-sql-95ec0986386c
|
411
published/20200916 Analyze Linux startup performance.md
Normal file
411
published/20200916 Analyze Linux startup performance.md
Normal file
@ -0,0 +1,411 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (jiamn)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-14462-1.html)
|
||||
[#]: subject: (Analyze Linux startup performance)
|
||||
[#]: via: (https://opensource.com/article/20/9/systemd-startup-configuration)
|
||||
[#]: author: (David Both https://opensource.com/users/dboth)
|
||||
|
||||
Linux 启动性能分析
|
||||
======
|
||||
|
||||
> 用 systemd-analyze 洞悉并解决 Linux 启动性能问题。
|
||||
|
||||

|
||||
|
||||
系统管理员的一部分工作就是分析系统性能,发现并解决引起性能不佳、启动时间长的问题。系统管理员也需要去检查 systemd 的配置和使用的其它方面。
|
||||
|
||||
systemd 初始化系统提供了 `systemd-analyze` 工具,可以帮助发现性能问题和其他重要的 systemd 信息。在以前的文章《[分析 systemd 日历和时间跨度][2]》里,我用了 `systemd-analyze` 去分析 systemd 里的时间戳和时间跨度,但是这个工具还有很多其他用法,这个文章里我将再揭示一些。
|
||||
|
||||
(LCTT 译注:systemd 是目前主流 Linux 发行版采用的系统管理系统)
|
||||
|
||||
(LCTT 译注:为了区分英文的 “boot” 和 “startup” 的不同涵义,此处将 “boot” 翻译为“引导”,“startup” 翻译为“启动”。)
|
||||
|
||||
### 概述启动
|
||||
|
||||
Linux 启动过程是值得学习关注的地方,因为 `systemd-analyze` 工具很多功能聚焦在<ruby>启动<rt>startup</rt></ruby>过程。但是首先,要理解<ruby>引导<rt>boot</rt></ruby>和<ruby>启动<rt>startup</rt></ruby>。引导阶段从 BIOS 加电自检(POST)开始,结束于内核完成加载并控制主机系统,然后是开始了启动过程,也是 systemd 日志的开始点。
|
||||
|
||||
这个系列的第二篇文章《[理解 Linux 启动时的 systemd][3]》中,我详细讨论了启动阶段的内容和过程。在这篇文章里,我想研究一下启动过程,看看需要多少时间和大部分时间花费在哪里。
|
||||
|
||||
下面我将展示的结果来自我的主要工作站,这比虚拟机的结果要有趣得多。这个工作站包括一块 华硕 TUF X299 Mark 2 主板、一个英特尔 i9-7960X CPU(16 核 32 线程),64 G 内存。下面的一些命令非 root 用户也可以使用,但是我在这篇文章里使用了 root 用户,以避免在用户之间切换。
|
||||
|
||||
检查启动过程有几种方法,最简单的 `systemd-analyze` 命令显示了启动的几个主要部分耗费的时间,包括内核启动、装载运行 initrd(即初始 ramdisk,这是一个用来初始化一些硬件、挂载 `/` 根文件系统的临时系统镜像),还有用户空间(加载所有使主机达到可用状态的程序和守护程序)。如果没有像该命令传递子命令,默认是 `systemd-analyze time`:
|
||||
|
||||
```
|
||||
[root@david ~]$ systemd-analyze
|
||||
Startup finished in 53.921s (firmware) + 2.643s (loader) + 2.236s (kernel) + 4.348s (initrd) + 10.082s (userspace) = 1min 13.233s
|
||||
graphical.target reached after 10.071s in userspace
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
这个输出中最值得注意的数据是在固件(BIOS)中花费的时间:几乎 54 秒。这是一个不太正常的时间,我的其他物理系统都没有花费这么长的时间来通过 BIOS。
|
||||
|
||||
我的 System76 Oryx Pro 笔记本在 BIOS 阶段只花了 8.506 秒,我家里所有的系统都在 10 秒以内。在线搜索一阵之后,我发现这块主板以其超长的 BIOS 引导时间而闻名。我的主板从不“马上启动”,总是挂起,我需要关机再开机,BIOS 报错,按 `F1` 进入 BIOS 设置,选择要引导的驱动器完成引导,多花费的时间就是这样用掉的。
|
||||
|
||||
不是所有主机都会显示固件数据(LCTT 译注:固件引导中不涉及 systemd)。我的不科学的实验使我相信,这个数据只显示给英特尔 9 代或以上的处理器。但这可能是不正确的。
|
||||
|
||||
这个关于引导、启动的概述提供了很好的(虽然有限)的信息,但是还有很多关于启动的信息,我将在下面描述。
|
||||
|
||||
### 分配责任
|
||||
|
||||
你可以用 `systemd-analyze blame` 来发现哪个 systemd 单元的初始化时间最长。其结果按照初始化时间长短排序,从多到少:
|
||||
|
||||
```
|
||||
[root@david ~]$ systemd-analyze blame
|
||||
5.417s NetworkManager-wait-online.service
|
||||
3.423s dracut-initqueue.service
|
||||
2.715s systemd-udev-settle.service
|
||||
2.519s fstrim.service
|
||||
1.275s udisks2.service
|
||||
1.271s smartd.service
|
||||
996ms upower.service
|
||||
637ms lvm2-monitor.service
|
||||
533ms lvm2-pvscan@8:17.service
|
||||
520ms dmraid-activation.service
|
||||
460ms vboxdrv.service
|
||||
396ms initrd-switch-root.service
|
||||
<截断:删去了好多时间不长的条目>
|
||||
```
|
||||
|
||||
因为很多服务是并行开始的,在 BIOS 之后所有单元加在一起的总数大大超过了 `systemd-analyze time` 汇总数。很多都是小数,不能显著的节省时间。
|
||||
|
||||
这个命令提供的数据指明了改善启动时间的办法。无用的服务可以禁用(`disable`)。在这个启动过程中,似乎没有任何一个服务需要花费过长的时间。你可能会在每次启动时看到不同的结果。(LCTT 译注:并行启动服务的原因)
|
||||
|
||||
### 关键链
|
||||
|
||||
就像项目管理中的关键路径一样,关键链显示了在启动过程中发生的时间关键的事件链(LCTT 译注:systemd 可以定义服务间的依赖,构成关键链)。如果启动缓慢,这些是你想查看的 systemd 单元,因为它们是导致延迟的单元。这个工具不会显示所有启动的单元,只显示这个关键事件链中的单元。(LCTT 译注:相当于最短路径。并不显示依赖不在关键链上的服务单元)
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze critical-chain
|
||||
The time when unit became active or started is printed after the "@" character.
|
||||
The time the unit took to start is printed after the "+" character.
|
||||
|
||||
graphical.target @10.071s
|
||||
└─lxdm.service @10.071s
|
||||
└─plymouth-quit.service @10.047s +22ms
|
||||
└─systemd-user-sessions.service @10.031s +7ms
|
||||
└─remote-fs.target @10.026s
|
||||
└─remote-fs-pre.target @10.025s
|
||||
└─nfs-client.target @4.636s
|
||||
└─gssproxy.service @4.607s +28ms
|
||||
└─network.target @4.604s
|
||||
└─NetworkManager.service @4.383s +219ms
|
||||
└─dbus-broker.service @4.434s +136ms
|
||||
└─dbus.socket @4.369s
|
||||
└─sysinit.target @4.354s
|
||||
└─systemd-update-utmp.service @4.345s +9ms
|
||||
└─auditd.service @4.301s +42ms
|
||||
└─systemd-tmpfiles-setup.service @4.254s +42ms
|
||||
└─import-state.service @4.233s +19ms
|
||||
└─local-fs.target @4.229s
|
||||
└─Virtual.mount @4.019s +209ms
|
||||
└─systemd-fsck@dev-mapper-vg_david2\x2dVirtual.service @3.742s +274ms
|
||||
└─local-fs-pre.target @3.726s
|
||||
└─lvm2-monitor.service @356ms +637ms
|
||||
└─dm-event.socket @319ms
|
||||
└─-.mount
|
||||
└─system.slice
|
||||
└─-.slice
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
前面有 `@` 的数字表示单元激活开始启动所使用的绝对秒数。前面有 `+` 的数字显示单元启动所需的时间。
|
||||
|
||||
### 系统状态
|
||||
|
||||
有时候你需要确定系统的当前状态,`systemd-analyze dump` 命令转储了当前系统状态的大量数据。有主要的启动时间戳,一个每个 systemd 单元的列表,并对每个单元状态进行了完整描述:
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze dump
|
||||
Timestamp firmware: 1min 7.983523s
|
||||
Timestamp loader: 3.872325s
|
||||
Timestamp kernel: Wed 2020-08-26 12:33:35 EDT
|
||||
Timestamp initrd: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp userspace: Wed 2020-08-26 12:33:42 EDT
|
||||
Timestamp finish: Wed 2020-08-26 16:33:56 EDT
|
||||
Timestamp security-start: Wed 2020-08-26 12:33:42 EDT
|
||||
Timestamp security-finish: Wed 2020-08-26 12:33:42 EDT
|
||||
Timestamp generators-start: Wed 2020-08-26 16:33:42 EDT
|
||||
Timestamp generators-finish: Wed 2020-08-26 16:33:43 EDT
|
||||
Timestamp units-load-start: Wed 2020-08-26 16:33:43 EDT
|
||||
Timestamp units-load-finish: Wed 2020-08-26 16:33:43 EDT
|
||||
Timestamp initrd-security-start: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-security-finish: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-generators-start: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-generators-finish: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-units-load-start: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-units-load-finish: Wed 2020-08-26 12:33:38 EDT
|
||||
-> Unit system.slice:
|
||||
Description: System Slice
|
||||
Instance: n/a
|
||||
Unit Load State: loaded
|
||||
Unit Active State: active
|
||||
State Change Timestamp: Wed 2020-08-26 12:33:38 EDT
|
||||
Inactive Exit Timestamp: Wed 2020-08-26 12:33:38 EDT
|
||||
Active Enter Timestamp: Wed 2020-08-26 12:33:38 EDT
|
||||
Active Exit Timestamp: n/a
|
||||
Inactive Enter Timestamp: n/a
|
||||
May GC: no
|
||||
<截断:删除了大量的输出行>
|
||||
```
|
||||
|
||||
在我的主工作站上,这个命令生成了 49680 行输出,大概 1.66MB,这个命令非常快,不需要等待。
|
||||
|
||||
我很喜欢为各种连接设备(如存储设备)提供的大量细节。每个 systemd 单元有一个部分,包括各种运行时、缓存、日志目录的模式、启动单元的命令行、PID、开始时间戳,以及内存和文件限制等细节。
|
||||
|
||||
`systemd-analyze` 的手册页里展示了 `systemd-analyze --user dump` 选项,目的是显示用户管理器的内部状态。但这个选项对我来说是失败的,互联网搜索之后表明它可能有一些问题。在 systemd 里,`--user` 实例用来管理和控制处理器给每个用户的进程资源。处理能力按分给每个用户的进程都属于一个控制组,我将在以后的文章中介绍。
|
||||
|
||||
### 分析图表
|
||||
|
||||
大多数啥都不懂的猥琐老板(PHB)和许多优秀的管理者都发现漂亮的图表比我通常喜欢的基于文本的系统性能数据更容易阅读和理解。但有时,即使是我也喜欢一个好的图表,`systemd-analyze` 提供了显示引导/启动数据的 [SVG][4] 矢量图表。
|
||||
|
||||
下面的命令生成一个矢量图文件,来显示在引导和启动过程发生的事件。生成这个文件只需要几秒:
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze plot > /tmp/bootup.svg
|
||||
```
|
||||
|
||||
这个命令创建了一个 SVG 文件,SVG 是一个定义了一系列图形矢量的文本文件,包括 Image Viewer、Ristretto、Okular、Eye of Mate、LibreOffice Draw 在内的这些可以生成图形的应用,可以用 SVG 来创建图像。
|
||||
|
||||
我用 LibreOffice Draw(LCTT 译注:一个办公文档软件)来渲染一幅图形。这张图形很大,你需要放到很大才能看清细节。这里是它的一小部分:
|
||||
|
||||
![The bootup.svg file displayed in LibreOffice Draw.][5]
|
||||
|
||||
图中时间轴上零点(0)的左边是引导阶段,零点的右边是启动阶段。这一小部分显示了内核、initrd 和 initrd 启动的进程。
|
||||
|
||||
这张图一目了然地显示了什么时候启动,启动需要多少时间,以及主要的依赖项。关键路径用红色高亮显示。
|
||||
|
||||
另外一个生成图形输出的命令是 `systemd-analyze plot`,它生成了 [DOT][7] 格式的文本依赖图。产生的数据流通过 `dot` 工具进行处理,这是一组用来从多种类型数据中生成矢量图文件的程序。这些 SVG 文件也能被上面列出的工具处理。
|
||||
|
||||
首先,生成文件,在我的主工作站花了 9 分钟:
|
||||
|
||||
```
|
||||
[root@david ~]# time systemd-analyze dot | dot -Tsvg > /tmp/test.svg
|
||||
Color legend: black = Requires
|
||||
dark blue = Requisite
|
||||
dark grey = Wants
|
||||
red = Conflicts
|
||||
green = After
|
||||
|
||||
real 8m37.544s
|
||||
user 8m35.375s
|
||||
sys 0m0.070s
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
我不会在这里重现输出,因为产生的图形就像一大堆意大利面条。但是你应该试试,看看我想让你看到的结果。
|
||||
|
||||
### 条件
|
||||
|
||||
在阅读 systemd-analyze(1) 的手册页时,我发现了一个更有趣的功能,但又有点通用,就是条件子命令。(是的,我确实在读手册页,而且我神奇地通过这种方式学到了很多东西!)。这个 `condition` 子命令能用来测试 systemd 单元文件中的条件和断言。
|
||||
|
||||
它也可以在脚本中用来评估一个或多个条件 —— 如果所有条件都满足,则返回 0;如果有条件不满足,则返回 1。在其它情况下,它都会输出其结果文本。
|
||||
|
||||
下面的例子来自手册页,稍微有点复杂。它测试了内核版本是否在 4.0 和 5.1 之间,主机是否使用交流电供电,系统结构是否是 ARM,以及 `/etc/os-release` 目录是否存在。我添加了 `echo $?` 来打印返回值。
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze condition 'ConditionKernelVersion = ! <4.0' \
|
||||
'ConditionKernelVersion = >=5.1' \
|
||||
'ConditionACPower=|false' \
|
||||
'ConditionArchitecture=|!arm' \
|
||||
'AssertPathExists=/etc/os-release' ; \
|
||||
echo $?
|
||||
test.service: AssertPathExists=/etc/os-release succeeded.
|
||||
Asserts succeeded.
|
||||
test.service: ConditionArchitecture=|!arm succeeded.
|
||||
test.service: ConditionACPower=|false failed.
|
||||
test.service: ConditionKernelVersion=>=5.1 succeeded.
|
||||
test.service: ConditionKernelVersion=!<4.0 succeeded.
|
||||
Conditions succeeded.
|
||||
0
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
条件和断言的列表大约从 systemd.unit(5) 手册页的第 600 行左右开始。
|
||||
|
||||
### 列出配置文件
|
||||
|
||||
`systemd-analyze` 工具提供了一种将各种配置文件的内容发送到 STDOUT 的方法,如图所示。其基本目录是 `/etc/`。
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze cat-config systemd/system/display-manager.service
|
||||
# /etc/systemd/system/display-manager.service
|
||||
[Unit]
|
||||
Description=LXDM (Lightweight X11 Display Manager)
|
||||
#Documentation=man:lxdm(8)
|
||||
Conflicts=getty@tty1.service
|
||||
After=systemd-user-sessions.service getty@tty1.service plymouth-quit.service livesys-late.service
|
||||
#Conflicts=plymouth-quit.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/sbin/lxdm
|
||||
Restart=always
|
||||
IgnoreSIGPIPE=no
|
||||
#BusName=org.freedesktop.lxdm
|
||||
|
||||
[Install]
|
||||
Alias=display-manager.service
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
打了这么多字却和标准的 `cat` 命令做的差不多。我发现下一条命令小有帮助,它能在标准的 systemd 所在的位置搜索具有指定模式的内容:
|
||||
|
||||
```
|
||||
[root@david ~]# systemctl cat backup*
|
||||
# /etc/systemd/system/backup.timer
|
||||
# This timer unit runs the local backup program
|
||||
# (C) David Both
|
||||
# Licensed under GPL V2
|
||||
#
|
||||
|
||||
[Unit]
|
||||
Description=Perform system backups
|
||||
Requires=backup.service
|
||||
|
||||
[Timer]
|
||||
Unit=backup.service
|
||||
OnCalendar=*-*-* 00:15:30
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
||||
|
||||
|
||||
# /etc/systemd/system/backup.service
|
||||
# This service unit runs the rsbu backup program
|
||||
# By David Both
|
||||
# Licensed under GPL V2
|
||||
#
|
||||
|
||||
[Unit]
|
||||
Description=Backup services using rsbu
|
||||
Wants=backup.timer
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment="HOME=/root"
|
||||
ExecStart=/usr/local/bin/rsbu -bvd1
|
||||
ExecStart=/usr/local/bin/rsbu -buvd2
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
这两个命令在每个文件的内容前面都有一个注释行,包含文件的完整路径和名称。
|
||||
|
||||
### 单元文件检查
|
||||
|
||||
当创建了一个新的单元文件,可以利用 `verify` 子命令帮助检查语法是否正确。它能指出来不正确的拼写,并列出缺失的服务单元。
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze verify /etc/systemd/system/backup.service
|
||||
```
|
||||
|
||||
秉承 Unix/Linux 的“沉默是金”的宗旨,没有输出意味着扫描的文件中没有错误。
|
||||
|
||||
### 安全性
|
||||
|
||||
`security` 子命令检查指定服务的安全级别。它只能针对服务单元,其他类型的单元文件不起作用:
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze security display-manager
|
||||
NAME DESCRIPTION >
|
||||
✗ PrivateNetwork= Service has access to the host's network >
|
||||
✗ User=/DynamicUser= Service runs as root user >
|
||||
✗ CapabilityBoundingSet=~CAP_SET(UID|GID|PCAP) Service may change UID/GID identities/capabilities >
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_ADMIN Service has administrator privileges >
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_PTRACE Service has ptrace() debugging abilities >
|
||||
✗ RestrictAddressFamilies=~AF_(INET|INET6) Service may allocate Internet sockets >
|
||||
✗ RestrictNamespaces=~CLONE_NEWUSER Service may create user namespaces >
|
||||
✗ RestrictAddressFamilies=~… Service may allocate exotic sockets >
|
||||
✗ CapabilityBoundingSet=~CAP_(CHOWN|FSETID|SETFCAP) Service may change file ownership/access mode/capabilities unres>
|
||||
✗ CapabilityBoundingSet=~CAP_(DAC_*|FOWNER|IPC_OWNER) Service may override UNIX file/IPC permission checks >
|
||||
✗ CapabilityBoundingSet=~CAP_NET_ADMIN Service has network configuration privileges >
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_MODULE Service may load kernel modules
|
||||
<截断>
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG Service may issue vhangup() >
|
||||
✗ CapabilityBoundingSet=~CAP_WAKE_ALARM Service may program timers that wake up the system >
|
||||
✗ RestrictAddressFamilies=~AF_UNIX Service may allocate local sockets >
|
||||
|
||||
→ Overall exposure level for backup.service: 9.6 UNSAFE ?
|
||||
lines 34-81/81 (END)
|
||||
```
|
||||
|
||||
是的,表情符是输出的一部分。但是,当然,许多服务需要几乎完全访问所有的东西,以便完成它们的工作。我针对几个服务运行了这个程序,包括我自己的备份服务;结果可能有所不同,但最底下一行似乎大多是一样的。
|
||||
|
||||
这个工具对于在严格的安全环境检查和修复用户空间的服务单元是很有用的。我不认为我们的大多数都能用到它。
|
||||
|
||||
### 最后总结
|
||||
|
||||
这个强力的工具提供了一些有趣而惊人的有用选项。本文探讨的大部分内容是关于使用 systemd-analyze 来深入了解 Linux 使用 systemd 的启动性能。它还可以分析 systemd 的其他方面。
|
||||
|
||||
其中有些工具的作用有限,有几个应该完全忘记。但在解决启动和其他 systemd 功能的问题时,大多数都能起到很好的作用。
|
||||
|
||||
### 资源
|
||||
|
||||
互联网上关于 systemd 有很多信息,但是很多过于简略、晦涩,甚至是误导。除了这篇文章中提到的资源外,以下网页提供了关于systemd启动的更详细和可靠的信息。这个列表在我开始写这一系列文章后有所增长,以反映我所做的研究。
|
||||
|
||||
* [systemd.unit(5) 手册页][9] 包含了一份单元文件部分及其配置选项的清单,并对每个部分进行了简明的描述。
|
||||
* Fedora 项目有一个很好的实用 [systemd 指南][10]。它包含了配置、管理和维护使用 systemd 的 Fedora 计算机所需的几乎所有知识。
|
||||
* Fedora 项目还有一份很好的 [备忘录][11],将旧的 SystemV 命令与 systemd 命令进行了对照。
|
||||
* Red Hat 文档包含了对 [单元文件结构][12] 的详细描述和其他重要的信息。
|
||||
* 关于 systemd 技术的细节和创建它的原因,可以去看 Freedesktop.org [systemd 详述][13]。
|
||||
* [Linux.com][14] 的“更多 systemd 乐趣”提供了很多高级的 systemd [信息和技巧][15]。
|
||||
|
||||
此外,systemd 设计者和主要开发者 Lennart Poettering 也为 Linux 系统管理员撰写了一系列深度技术文档,尽管这些文章写于 2010 年 4 月到 2011 年 9 月,现在看也是非常适应时宜。关于 systemd 及其生态系统的其他好文章,大部分都是基于这些文章的。
|
||||
|
||||
* [Rethinking PID 1][16]
|
||||
* [systemd for Administrators, Part I][17]
|
||||
* [systemd for Administrators, Part II][18]
|
||||
* [systemd for Administrators, Part III][19]
|
||||
* [systemd for Administrators, Part IV][20]
|
||||
* [systemd for Administrators, Part V][21]
|
||||
* [systemd for Administrators, Part VI][22]
|
||||
* [systemd for Administrators, Part VII][23]
|
||||
* [systemd for Administrators, Part VIII][24]
|
||||
* [systemd for Administrators, Part IX][25]
|
||||
* [systemd for Administrators, Part X][26]
|
||||
* [systemd for Administrators, Part XI][27]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/20/9/systemd-startup-configuration
|
||||
|
||||
作者:[David Both][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[jiamn](https://github.com/jiamn)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/dboth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/find-file-linux-code_magnifying_glass_zero.png?itok=E2HoPDg0 (Magnifying glass on code)
|
||||
[2]: https://opensource.com/article/20/7/systemd-calendar-timespans
|
||||
[3]: https://opensource.com/article/20/5/systemd-startup?utm_campaign=intrel
|
||||
[4]: https://en.wikipedia.org/wiki/Scalable_Vector_Graphics
|
||||
[5]: https://opensource.com/sites/default/files/uploads/bootup.svg-graph.png (The bootup.svg file displayed in LibreOffice Draw.)
|
||||
[6]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[7]: https://en.wikipedia.org/wiki/DOT_(graph_description_language)
|
||||
[8]: mailto:getty@tty1.service
|
||||
[9]: https://man7.org/linux/man-pages/man5/systemd.unit.5.html
|
||||
[10]: https://docs.fedoraproject.org/en-US/quick-docs/understanding-and-administering-systemd/index.html
|
||||
[11]: https://fedoraproject.org/wiki/SysVinit_to_Systemd_Cheatsheet
|
||||
[12]: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_basic_system_settings/managing-services-with-systemd_configuring-basic-system-settings#Managing_Services_with_systemd-Unit_File_Structure
|
||||
[13]: https://www.freedesktop.org/wiki/Software/systemd/
|
||||
[14]: http://Linux.com
|
||||
[15]: https://www.linux.com/training-tutorials/more-systemd-fun-blame-game-and-stopping-services-prejudice/
|
||||
[16]: http://0pointer.de/blog/projects/systemd.html
|
||||
[17]: http://0pointer.de/blog/projects/systemd-for-admins-1.html
|
||||
[18]: http://0pointer.de/blog/projects/systemd-for-admins-2.html
|
||||
[19]: http://0pointer.de/blog/projects/systemd-for-admins-3.html
|
||||
[20]: http://0pointer.de/blog/projects/systemd-for-admins-4.html
|
||||
[21]: http://0pointer.de/blog/projects/three-levels-of-off.html
|
||||
[22]: http://0pointer.de/blog/projects/changing-roots
|
||||
[23]: http://0pointer.de/blog/projects/blame-game.html
|
||||
[24]: http://0pointer.de/blog/projects/the-new-configuration-files.html
|
||||
[25]: http://0pointer.de/blog/projects/on-etc-sysinit.html
|
||||
[26]: http://0pointer.de/blog/projects/instances.html
|
||||
[27]: http://0pointer.de/blog/projects/inetd.html
|
@ -0,0 +1,256 @@
|
||||
[#]: subject: (Build a router with mobile connectivity using Raspberry Pi)
|
||||
[#]: via: (https://opensource.com/article/21/3/router-raspberry-pi)
|
||||
[#]: author: (Lukas Janėnas https://opensource.com/users/lukasjan)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (hwlife)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-14474-1.html)
|
||||
|
||||
使用树莓派建立一个带有移动网络连接功能的路由器
|
||||
======
|
||||
|
||||
> 在你的网络路由器上使用 OpenWRT 获得更多控制功能。
|
||||
|
||||
![Mesh networking connected dots][1]
|
||||
|
||||
树莓派是一种小型单板电脑,尽管只有信用卡大小,但是能做许多事情。实际上,这个小电脑几乎可以成为你想让它成为的任何东西,只要你打开想象力。
|
||||
|
||||
树莓派爱好者已经做了许多不同的项目,从简单的程序到复杂的自动化项目和解决方案,如气象站,甚至智能家居设备。这篇文章将展示怎样使用 OpenWRT 项目将你的树莓派变成带有 LTE 移动网络连接功能的路由器。
|
||||
|
||||
### 关于 OpenWRT 和 LTE
|
||||
|
||||
[OpenWRT][2] 是一个利用 Linux 内核为嵌入式设备开发的开源项目,它已经存在超过 15 年了,拥有一个庞大而活跃的社区。
|
||||
|
||||
有许多使用 OpenWRT 的方法,但是它的主要目的还是用在路由器上。它提供了包管理功能和一个完全可写的文件系统,并且因为它的的开源属性,你可以查看和修改代码,并贡献到开源生态。如果你想对你的路由器获得更多的控制,这就是你想要的系统。
|
||||
|
||||
<ruby>长期演进技术<rt>Long-term evolution</rt></ruby>(LTE)是一个基于 GSM/EGDE 和 UMTS/HSPA 技术的无线宽带通信标准。我使用的 LTE 调制解调器是一个 USB 设备,可以为树莓派电脑增加 3G 或 4G(LTE)蜂窝连接。
|
||||
|
||||
![Teltonika TRM240 modem][3]
|
||||
|
||||
### 安装前的准备
|
||||
|
||||
对这个项目来说,你需要:
|
||||
|
||||
* 一个带有电源线的树莓派
|
||||
* 一台运行 Linux 的电脑
|
||||
* 一张至少 16GB 的 SD 储存卡
|
||||
* 以太网线
|
||||
* LTE 调制解调器(我使用的是 Teltonika [TRM240][5])
|
||||
* 一张移动网络的 SIM 卡
|
||||
|
||||
### 安装 OpenWRT
|
||||
|
||||
首先,下载最新的 [兼容树莓派的 OpenWRT 的发布版本][6]。在 OpenWRT 官网,你可以看到 4 个镜像:两个 **ext4** 文件系统的和两个 **squashfs** 文件系统的。我使用 **ext4** 文件系统。你可以下载 **factory** 或者 **sysupgrade** 镜像,这两个都运行良好。
|
||||
|
||||
![OpenWRT image files][7]
|
||||
|
||||
下载了镜像后,你按照 [以下的说明][8] 需要解压并安装它到 SD 卡上。这将会花些时间安装固件,需要些耐心。一旦安装完成,在你的 SD 卡上将会有两个分区。一个是用来放 bootloader ,另一个是 OpenWRT 系统。
|
||||
|
||||
|
||||
### 启动系统
|
||||
|
||||
要启动你的新系统,插入 SD 卡到树莓派,用以太网线把树莓派和你的路由器(或者交换机)相连,然后点亮。
|
||||
|
||||
如果你有使用树莓派的经验,你可能习惯于通过终端使用 SSH 访问过它,或者通过显示器和键盘连接到树莓派。OpenWRT 工作有一点点不同。你与这个系统交互是通过网页浏览器,所以你必须能够通过网络来访问你的树莓派。
|
||||
|
||||
缺省状态下,树莓派使用的 IP 地址是:192.168.1.1。用来配置树莓派的计算机必须和树莓派在同一个子网中。如果你的网络没有使用 192.168.1.x 地址,或者你不能确定,在 GNOME 打开 “<ruby>设置<rt>Settings</rt></ruby>” ,导航到网络设置,选择 “<ruby>手动<rt>Manual</rt></ruby>” ,然后键入以下的 IP 地址和子网掩码:
|
||||
|
||||
* IP 地址:192.168.1.15
|
||||
* 网络掩码:255.255.255.0
|
||||
|
||||
![IP addresses][9]
|
||||
|
||||
在你的电脑上打开浏览器然后导航到 192.168.1.1 。这将打开一个验证网页,你可以登录到你的树莓派。
|
||||
|
||||
![OpenWRT login page][10]
|
||||
|
||||
首次登录不需要密码,所以直接点击 “<ruby>登录<rt>Login</rt></ruby>” 按钮继续。
|
||||
|
||||
### 设置网络连接
|
||||
|
||||
树莓派只有一个以太网口,而普通路由器有两个:一个是 WAN(有线区域网络)口,另一个是 LAN (本地区域网络)。
|
||||
|
||||
你有两个选择:
|
||||
|
||||
1. 使用你的以太网口接入互联网
|
||||
2. 使用 WIFI 接入互联网
|
||||
|
||||
#### 使用以太网连接
|
||||
|
||||
你决定使用以太网,导航到 “<ruby>网络<rt>Network</rt></ruby> → <ruby>接口<rt>Interfaces</rt></ruby>”。在这个设置页面,按下与 “LAN” 接口对应的蓝色 “<ruby>编辑<rt>Edit</rt></ruby>” 按钮。
|
||||
|
||||
![LAN interface][11]
|
||||
|
||||
应该会出现一个弹窗,在这个窗口中,你需要键入与你将要连接树莓派的路由器子网匹配的 IP 地址。如果需要的话,修改子网掩码,并输入树莓派将要连接的路由器的 IP 地址。
|
||||
|
||||
![Enter IP in the LAN interface][12]
|
||||
|
||||
保存设置,然后通过以太网将你的树莓派连接到路由器。你现在可以用这个新的 IP 地址访问树莓派。
|
||||
|
||||
当你在把树莓派投入生产环境使用之前,确保为你的 OpenWRT 设置一个密码!
|
||||
|
||||
#### 使用 WiFi 连接
|
||||
|
||||
如果你想通过 WiFi 将树莓派连接到互联网,导航到 “<ruby>网络<rt>Network</rt></ruby> → <ruby>无线<rt>Wireless</rt></ruby>” 。在 “<ruby>无线<rt>Wireless</rt></ruby>” 菜单里,按下蓝色的 “<ruby>扫描<rt>Scan</rt></ruby>” 按钮查找你的家庭网络。
|
||||
|
||||
![Scan the network][13]
|
||||
|
||||
在弹出的窗口中,找到你的 WiFi 网络然后连接它。不要忘记 “<ruby>保存并应用<rt>Save and Apply</rt></ruby>” 设置。
|
||||
|
||||
在这 “<ruby>网络<rt>Network</rt></rby> → <ruby>接口<rt>Interfaces</rt></ruby>” 部分,你应该看到了一个新的接口。
|
||||
|
||||
![New interface][14]
|
||||
|
||||
当你在把树莓派投入生产环境使用之前,确保为你的 OpenWRT 设置一个密码!
|
||||
|
||||
### 安装必要的软件包
|
||||
|
||||
默认状态下,路由器并没有安装许多软件包。OpenWRT 提供了一个包管理器,带有一系列你需要安装的。导航到 “<ruby>系统<rt>System</rt></ruby> → <ruby>软件<rt>Software</rt></ruby>” 然后通过按下标有 “<ruby>更新列表…<rt>Update lists...</rt></ruby>” 的按钮来更新你的包管理器。
|
||||
|
||||
![Updating packages][15]
|
||||
|
||||
你将会看到许多软件包;你需要安装以下这些:
|
||||
|
||||
* `usb-modeswitch`
|
||||
* `kmod-mii`
|
||||
* `kmod-usb-net`
|
||||
* `kmod-usb-wdm`
|
||||
* `kmod-usb-serial`
|
||||
* `kmod-usb-serial-option`
|
||||
* `kmod-usb-serial-wwan`(如果没有安装的话)
|
||||
|
||||
另外,[下载这个调制解调器管理软件包][16],然后在弹出的窗口中按下标有 “<ruby>上传软件包…<rt>Upload Package...</rt></ruby>” 的按钮来安装它。重启树莓派让安装包生效。
|
||||
|
||||
### 设置移动网络接口
|
||||
|
||||
所有这些软件包被安装完之后,你可以设置移动网络接口。在连接调制解调器到树莓派之前,请阅读 [调制解调器的说明书][17],对其进行设置。然后连接你的移动调制解调器到树莓派,然后等待一会直到调制解调器启动。
|
||||
|
||||
导航到 “<ruby>网络<rt>Network</rt></ruby> → <ruby>接口<rt>Interfaces</rt></ruby>”。在页面底部,按下 “<ruby>添加一个新接口…<rt>Add new interface...</rt></ruby>” 按钮。在弹出的窗口中,给你的接口起一个名字(比如 “mobile”),然后从下拉列表中选择 “ModemManager” 。
|
||||
|
||||
![Add a new mobile interface][18]
|
||||
|
||||
按下一个标有 “<ruby>创建接口<rt>Create Interface</rt></ruby>” 的按钮。你应该看到一个新的弹出窗口。这是设置接口的一个主窗口。在这个窗口中,选择你的调制解调器,然后键入像<ruby>接入点名称<rt>Access Point Name</rt></ruby>(APN)或是 PIN 码之类的信息。
|
||||
|
||||
![Configuring the interface][19]
|
||||
|
||||
**注意:** 如果在列表中没有调制解调器设备出现,尝试重启树莓派或者安装 `kmod-usb-net-qmi-wwan` 软件包 。
|
||||
|
||||
当你已经配置完你的接口,按下 “<ruby>保存<rt>Save</rt></ruby>” 然后 “<ruby>保存并应用<rt>Save and Apply</rt></ruby>”。给系统一些生效的时间。如果一切正常,你应该看到像这样的一些东西。
|
||||
|
||||
![Configured interface][20]
|
||||
|
||||
如果你想通过接口查看你的网络连接,你可以使用 SSH 连接到你的树莓派 shell。在终端里,键入:
|
||||
|
||||
```
|
||||
ssh root@192.168.1.1
|
||||
```
|
||||
|
||||
缺省 IP 地址是 192.168.1.1:如果你修改了它,就用修改后的 IP 地址连接。当连接后,在终端里执行命令:
|
||||
|
||||
```
|
||||
ping -I ppp0 google.com
|
||||
```
|
||||
|
||||
如果一切正常运行,那么你应该从 Google 的服务器接收到 ping 回包 。
|
||||
|
||||
![Terminal interface][21]
|
||||
|
||||
`ppp0` 是你创建的移动网络接口的默认接口名称。你可以通过使用 `ifconfig` 命令检查你的接口。它只显示活动的接口。
|
||||
|
||||
### 设置防火墙
|
||||
|
||||
要让移动网接口运行,你需要为移动网络接口和本地网络接口配置防火墙,以便引导流量到正确的接口。
|
||||
|
||||
导航到 “<ruby>网络<rt>Network</rt></ruby> → <ruby>防火墙<rt>Firewall</rt></ruby>”。在页面的底部,你应该看到一个叫做 “<ruby>区域<rt>Zones</rt></ruby>” 的部分。
|
||||
|
||||
![Firewall zones][22]
|
||||
|
||||
设置防火墙最简单的方法就是调整 “wan” 区域。在 “<ruby>已覆盖的网络<rt>Covered networks</rt></ruby>” 选项里按下 “<ruby>编辑<rt>Edit</rt></ruby>” 按钮,选择你的移动网络接口,然后 “<ruby>保存并应用<rt>Save and Apply</rt></ruby>” 你的设置。如果你不想用 WiFi 连接你的树莓派,你可以从 “<ruby>已覆盖的网络<rt>Covered networks</rt></ruby>” 里删除 “wwan” 接口,或者关闭 WiFi 连接。
|
||||
|
||||
![Firewall zone settings][23]
|
||||
|
||||
如果你想为每个接口设置一个独立区域,只需创建一个新区域然后分配必要的接口即可。举个例子,你可能想有一个覆盖移动网络接口的区域,并且通过它来转发 LAN 接口流量。按下 “<ruby>添加<rt>Name</rt></ruby>” 按钮,然后给你的区域 “<ruby>命名<rt>Name</rt></ruby>”, 检查 “伪装” 复选框,选中 “<ruby>已覆盖的网络<rt>Covered networks</rt></ruby>” ,并选择哪些区域可以转发其流量。
|
||||
|
||||
![Firewall zone settings][24]
|
||||
|
||||
然后 “<ruby>保存并应用<rt>Save and Apply</rt></ruby>” 这些修改。现在你有一个新的区域。
|
||||
|
||||
### 设置一个接入点
|
||||
|
||||
最后一步是为你的设备接入互联网设置一个网络接入点。要设置一个接入点,导航到 “<ruby>网络<rt>Network</rt></ruby> → <ruby>无线<rt>Wireless</rt></ruby>” 。你将会看到一个 WiFi 设备接口,一个名为 OpenWRT 的禁用的接入点,以及一个用于通过 WiFi 连接互联网的连接(如果你之前没有禁用或删除它)。在这个禁用的接口上,按下 “<ruby>编辑<rt>Edit</rt></ruby>” 按钮,然后 “<ruby>启用<rt>Enable</rt></ruby>” 该接口。
|
||||
|
||||
![Enabling wireless network][25]
|
||||
|
||||
如果你想,你可以通过编辑 “ESSID” 选项来修改接口名称。你也可以选择它要关联的网络。默认情况下,它会与 LAN 接口关联。
|
||||
|
||||
![Configuring the interface][26]
|
||||
|
||||
要为这个接口添加密码,选择 “<ruby>无线安全<rt>Wireless Security</rt></ruby>” 选项,选择 “WPA2-PSK” 加密方式然后在 “<ruby>密钥<rt>Key</rt></ruby>” 选项字段键入接口的密码。
|
||||
|
||||
![Setting a password][27]
|
||||
|
||||
然后 “<ruby>保存并应用<rt>Save and Apply</rt></ruby>” 设置。如果设置正确的话,当用你的设备扫描可用接入点的话,你应该可以看到你分配了名称的新接入点。
|
||||
|
||||
### 额外的软件包
|
||||
|
||||
如果你愿意,你可以通过网页界面为你的路由器下载额外的软件包。只需到 “<ruby>系统<rt>System</rt></ruby> → <ruby>软件<rt>Software</rt></ruby>” 然后安装你想从列表或者互联网上下载的软件包并上传它。如果你在列表中没有看到任何软件包,请按下 “<ruby>更新列表…<rt>Update lists...</rt></ruby>” 按钮。
|
||||
|
||||
你也可以添加其他拥有适合与 OpenWRT 一起使用的软件包的仓库。软件包和它们的网页界面是分开安装的。软件包名称是以 “luci-” 开始的是网页界面软件包。
|
||||
|
||||
![Packages with luci- prefix][28]
|
||||
|
||||
### 试试看
|
||||
|
||||
这就是我的树莓派路由设置的过程。
|
||||
|
||||
![Raspberry Pi router][29]
|
||||
|
||||
从树莓派建立一个路由器不是很困难。缺点是树莓派只有一个以太网接口。你可以用一个 USB-to-Ethernet 适配器来增加更多的网口。不要忘记在接口的网站上设置网口。
|
||||
|
||||
OpenWRT 支持大量的移动调制解调器,你可以用管理调制解调器的通用工具 modemmanager 为它们设置移动网络接口。
|
||||
|
||||
你有没有把你的树莓派当作路由器使用?请在评论中告诉我们情况。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/3/router-raspberry-pi
|
||||
|
||||
作者:[Lukas Janėnas][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlilfe)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/lukasjan
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/mesh_networking_dots_connected.png?itok=ovINTRR3 (Mesh networking connected dots)
|
||||
[2]: https://openwrt.org/
|
||||
[3]: https://opensource.com/sites/default/files/uploads/lte_modem.png (Teltonika TRM240 modem)
|
||||
[4]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[5]: https://teltonika-networks.com/product/trm240/
|
||||
[6]: https://downloads.openwrt.org/releases/19.07.7/targets/brcm2708/bcm2710/
|
||||
[7]: https://opensource.com/sites/default/files/uploads/imagefiles.png (OpenWRT image files)
|
||||
[8]: https://opensource.com/article/17/3/how-write-sd-cards-raspberry-pi
|
||||
[9]: https://opensource.com/sites/default/files/uploads/ipaddresses.png (IP addresses)
|
||||
[10]: https://opensource.com/sites/default/files/uploads/openwrt-login.png (OpenWRT login page)
|
||||
[11]: https://opensource.com/sites/default/files/uploads/lan-interface.png (LAN interface)
|
||||
[12]: https://opensource.com/sites/default/files/uploads/lan-interface-ip.png (Enter IP in the LAN interface)
|
||||
[13]: https://opensource.com/sites/default/files/uploads/scannetwork.png (Scan the network)
|
||||
[14]: https://opensource.com/sites/default/files/uploads/newinterface.png (New interface)
|
||||
[15]: https://opensource.com/sites/default/files/uploads/updatesoftwarelist.png (Updating packages)
|
||||
[16]: https://downloads.openwrt.org/releases/packages-21.02/aarch64_cortex-a53/luci/luci-proto-modemmanager_git-21.007.43644-ab7e45c_all.ipk
|
||||
[17]: https://wiki.teltonika-networks.com/view/TRM240_SIM_Card
|
||||
[18]: https://opensource.com/sites/default/files/uploads/addnewinterface.png (Add a new mobile interface)
|
||||
[19]: https://opensource.com/sites/default/files/uploads/configureinterface.png (Configuring the interface)
|
||||
[20]: https://opensource.com/sites/default/files/uploads/configuredinterface.png (Configured interface)
|
||||
[21]: https://opensource.com/sites/default/files/uploads/terminal.png (Terminal interface)
|
||||
[22]: https://opensource.com/sites/default/files/uploads/firewallzones.png (Firewall zones)
|
||||
[23]: https://opensource.com/sites/default/files/uploads/firewallzonesettings.png (Firewall zone settings)
|
||||
[24]: https://opensource.com/sites/default/files/uploads/firewallzonepriv.png (Firewall zone settings)
|
||||
[25]: https://opensource.com/sites/default/files/uploads/enablewirelessnetwork.png (Enabling wireless network)
|
||||
[26]: https://opensource.com/sites/default/files/uploads/interfaceconfig.png (Configuring the interface)
|
||||
[27]: https://opensource.com/sites/default/files/uploads/interfacepassword.png (Setting a password)
|
||||
[28]: https://opensource.com/sites/default/files/uploads/luci-packages.png (Packages with luci- prefix)
|
||||
[29]: https://opensource.com/sites/default/files/uploads/raspberrypirouter.jpg (Raspberry Pi router)
|
183
published/20210401 Partition a drive on Linux with GNU Parted.md
Normal file
183
published/20210401 Partition a drive on Linux with GNU Parted.md
Normal file
@ -0,0 +1,183 @@
|
||||
[#]: subject: (Partition a drive on Linux with GNU Parted)
|
||||
[#]: via: (https://opensource.com/article/21/4/linux-parted-cheat-sheet)
|
||||
[#]: author: (Seth Kenlon https://opensource.com/users/seth)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (hwlife)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-14463-1.html)
|
||||
|
||||
在 Linux 上使用 GNU Parted 对磁盘分区
|
||||
======
|
||||
|
||||
> 了解对新的储存设备分区的基础知识,然后下载我们的速查表,让信息近在咫尺。
|
||||
|
||||

|
||||
|
||||
在 21 世纪,我们往往认为数据存储是理所当然的。我们有许多存储介质,相对价格便宜,而且有许多不同的可用类型。然而,不论你获得的免费云存储空间有多少,没有比有一个物理硬盘空间来存储重要的数据更好了(或容量真的很大的,而当你又在一个慢速网络上时)。然而,没有几块硬盘买回来就是现成的,至少在理想的状况下可以直接使用的。无论你是买了一块新硬盘,还用不同分区安装一个系统,你需要知道怎么在 Linux 上为磁盘分区。
|
||||
|
||||
这篇文章介绍了 GNU Parted ,它磁盘分区最好的工具之一。如果你偏向使用图形化程序,而不算终端命令行,请阅读我的《[为 Linux 格式化驱动器][2]》这篇文章。
|
||||
|
||||
### 磁盘标签、分区和文件系统
|
||||
|
||||
技术上来说,一个硬盘驱动器不需要很多软件,就可用作存储设备。然而,在没有分区表和文件系统等现代惯例的情况下使用硬盘是困难的、不切实际的,而且对你的数据不安全。
|
||||
|
||||
关于硬盘驱动器,这里有三个你需要知道的重要概念:
|
||||
|
||||
* <ruby>磁盘标签<rt>disk label</rt></ruby>(或者 <ruby>分区表<rt>partition table</rt></ruby>)是放置在磁盘驱动器起始位置的元数据,它告诉计算机可用的存储是何种类型、以及它在磁盘驱动器的位置等信息。
|
||||
* <ruby>分区<rt>partition</rt></ruby> 是一个识别文件系统位置的边界。举个例子,如果你有一个 512GB 的硬盘,你可以用占用所有磁盘容量(512GB)分成一个分区,或者分成两个分区,每个占用 256GB ,或者分成三个分区,占用各种不同大小的空间等等。
|
||||
* <ruby>文件系统<rt>filesystem</rt></ruby> 是一个硬盘驱动器和计算机两者约定俗成的存储方案。计算机必须知道怎样读取文件系统来拼凑存储在驱动器上的数据,并且必须知道怎样写入数据到文件系统并保持数据的完整性。
|
||||
|
||||
GNU Parted 程序管理着前两个概念:磁盘标签和分区。Parted 对文件系统有所了解,但是它把文件系统的实现细节交给了其他类似 `mkfs` 这样的工具。
|
||||
|
||||
> 下载 [GNU Parted 速查表][3]
|
||||
|
||||
### 确定磁盘驱动器的位置
|
||||
|
||||
使用 GNU Parted 之前,你必须确定你的驱动器在你的系统上的位置。首先,将你要格式化的磁盘驱动器连接到你的系统,然后用 `parted` 命令查看连接到你的计算机的设备:
|
||||
|
||||
```
|
||||
$ parted /dev/sda print devices
|
||||
/dev/sda (2000GB)
|
||||
/dev/sdb (1000GB)
|
||||
/dev/sdc (1940MB)
|
||||
```
|
||||
|
||||
你最新连接设备的名称在字母表上晚于连接时间更长的设备。举个例子,`/dev/sdc` 最有可能是我刚刚连接的磁盘。我能通过它的容量大小来确认,相比于我的工作站上的主要驱动器的 TB 大小来说,因为我知道我插入的 U 盘只有 2GB(1940MB,足够接近)大小。如果你不能确定,你可以得到的更多关于你想要分区的驱动器的信息:
|
||||
|
||||
```
|
||||
$ parted /dev/sdc print
|
||||
Model: Yoyodyne Tiny Drive 1.0 (scsi)
|
||||
Disk /dev/sdc: 1940MB
|
||||
Sector size (logical/physical): 512B/512B
|
||||
Partition Table: msdos
|
||||
Disk Flags:
|
||||
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 2048kB 1024kB BS Bloat Hidden
|
||||
2 2049kB 1939MB 1937MB FAT32 MyDrive
|
||||
```
|
||||
|
||||
有些驱动器比其他驱动器有更多的元数据。这个磁盘表明它的物理驱动器品牌是 Yoyodyne ,此外,在磁盘的起始处包含了一个小的隐藏分区,后面是一个兼容 Windows 的臃肿的 FAT32 分区。这确实是我要重新打算格式化的驱动器。
|
||||
|
||||
继续之前,_确认_ 你已经确定了要分区的正确驱动器。 _对错误的驱动器重新分区会导致数据丢失。_ 为了安全起见,在本文中所有具有潜在破环性的命令都指向在你的系统中不太可能有的 `/dev/sdX` 设备。
|
||||
|
||||
### 创建磁盘标签(或者分区表)
|
||||
|
||||
要在磁盘上创建一个分区,驱动器必须要有一个<ruby>磁盘标签<rt>disk label</rt></ruby>。磁盘标签也被叫做 <ruby>分区表<rt>partition table</rt></ruby>,所以 Parted 对两个术语都接受。
|
||||
|
||||
要创建一个磁盘卷标,使用 `mklabel` 或 `mktable` 子命令:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX mklabel gpt
|
||||
```
|
||||
|
||||
这个命令在 `/dev/sdX` 的驱动器前面创建了一个 **gpt** 标签,删除了任何可能存在的标签。这是一个快速的过程,因为所有被替换的信息都是关于分区的元数据。
|
||||
|
||||
### 创建分区
|
||||
|
||||
要在磁盘创建分区,使用 `mkpart` 子命令,后跟可选的分区名称,再跟分区的开始和结束位置。如果你在磁盘上只需要一个分区,那么大小调整是容易的:开始位置输入 1 ,结束位置输入 100% 。使用 `--align opt` 参数允许 Parted 调整分区边界位置便于磁盘获得最佳性能:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX --align opt \
|
||||
mkpart example 1 100%
|
||||
```
|
||||
|
||||
用 `print` 子命令查看你的新分区:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX print
|
||||
Model: Yoyodyne Tiny Drive 1.0 (scsi)
|
||||
Disk /dev/sdi: 1940MB
|
||||
Sector size (logical/physical): 512B/512B
|
||||
Partition Table: gpt
|
||||
Disk Flags:
|
||||
|
||||
Number Start End Size
|
||||
1 1049kB 1939MB 1938MB
|
||||
```
|
||||
|
||||
你不必将整个磁盘用作一个分区。分区的优势是在一个磁盘上可以存在多个文件系统,它们之间不会相互干扰。在确定分区大小的时候,你可以使用 `unit` 子命令来设置你想用的测量方法。Parted 可以理解<ruby>扇区<rt>sector</rt></ruby>、<ruby>柱面<rt>cylinder</rt></ruby>、<ruby>磁头<rt>head</rt></ruby>、<ruby>字节<rt>byte</rt></ruby>、KB、MB、GB、TB 和百分比。(LCTT 译注:具体使用方法请参阅手册页)
|
||||
|
||||
你也可以指定你打算使用的分区的文件系统。这并不会创建文件系统,但是它为你以后方便使用提供了元数据。
|
||||
|
||||
将磁盘对半分,一个是 XFS 文件系统,另一个是 EXT4 文件系统:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX --align opt \
|
||||
mkpart xfs 1 50%
|
||||
$ parted /dev/sdX --align opt \
|
||||
mkpart ext4 51% 100%
|
||||
```
|
||||
|
||||
### 命名分区
|
||||
|
||||
除了标记分区用于什么文件系统之外,你也可以为每个分区命名。一些文件管理器和工具可以读取分区名称,能够帮助你区分驱动器。例如,我经常有几个不同的驱动器连接到我的媒体工作站,每个属于一个不同的项目。当创建这些驱动器的时候,我同时命名了分区和文件系统,这样,无论我怎么看我的系统,有重要数据的位置都会被清楚地标示出来。
|
||||
|
||||
要命名一个分区,你必须知道它的序号:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX print
|
||||
[...]
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 990MB 989MB xfs example
|
||||
2 1009MB 1939MB 930MB ext4 noname
|
||||
```
|
||||
|
||||
要命名分区 1:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX name 1 example
|
||||
$ parted /dev/sdX print
|
||||
[...]
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 990MB 989MB xfs example
|
||||
2 1009MB 1939MB 930MB ext4 noname
|
||||
```
|
||||
|
||||
### 创建文件系统
|
||||
|
||||
要让你的驱动器能够正常使用,你必须在新分区上创建一个文件系统。GNU Parted 并不做这些,因为它只是一个分区管理器。在磁盘上创建文件系统的 Linux 命令是 `mkfs`,但也有一些有用的工具可以让你用来创建特定类型的文件系统。例如,`mkfs.ext4` 创建 EXT4 文件系统,`mkfs.xfs` 创建 XFS 文件系统等等。
|
||||
|
||||
你的分区位于磁盘驱动器的“内部” ,所以你不是在 `/dev/sdX` 上创建文件系统,而是在 `/dev/sdX1` 上为第一个分区创建文件系统,在 `/dev/sdX2` 上为第二个分区创建,以此类推。
|
||||
|
||||
这里是一个创建 XFS 文件系统的例子:
|
||||
|
||||
```
|
||||
$ sudo mkfs.xfs -L mydrive /dev/sdX1
|
||||
```
|
||||
|
||||
### 下载我们的速查表
|
||||
|
||||
Parted 是一个灵活而强大的工具。你可以发出命令,如本文所示的那样,或者激活一个交互模式以不断 “连接” 你指定的驱动器:
|
||||
|
||||
```
|
||||
$ parted /dev/sdX
|
||||
(parted) print
|
||||
[...]
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 990MB 989MB xfs example
|
||||
2 1009MB 1939MB 930MB ext4 noname
|
||||
|
||||
(parted) name 1 mydrive
|
||||
(parted)
|
||||
```
|
||||
|
||||
如果你打算经常使用 Parted ,[下载我们的 GNU Parted 速查表][3],让信息近在咫尺。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/4/linux-parted-cheat-sheet
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/coverimage_cheat_sheet.png?itok=lYkNKieP (Cheat Sheet cover image)
|
||||
[2]: https://opensource.com/article/18/11/partition-format-drive-linux#gui
|
||||
[3]: https://opensource.com/downloads/parted-cheat-sheet
|
@ -0,0 +1,279 @@
|
||||
[#]: subject: (How to Deploy Seafile Server with Docker to Host Your Own File Synchronization and Sharing Solution)
|
||||
[#]: via: (https://itsfoss.com/deploy-seafile-server-docker/)
|
||||
[#]: author: (Hunter Wittenborn https://itsfoss.com/author/hunter/)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (hwlife)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-14468-1.html)
|
||||
|
||||
怎样用 Docker 部署 Seafile 服务器来托管你自己的文件同步和共享解决方案
|
||||
======
|
||||
|
||||

|
||||
|
||||
首先,什么是 Seafile ?
|
||||
|
||||
[Seafile][1] 是一个自托管文件同步程序,采用客户端/服务器模式,即你有笔记本、手机等多个设备,能够连接到一个中心服务器。
|
||||
|
||||
不像类似 [Nextcloud 或 ownCloud][2] 这些更流行的替代品一样,Seafile 试图遵循 “只做一件事,但是要做好” 的理念。同样,Seafile 没有内置额外的类似联系人或者日历聚合的功能。
|
||||
|
||||
相反,Seafile 只专注于文件同步、共享及与之相关的事情,仅此而已。但正因为如此,它最终做的非常好。
|
||||
|
||||
### 使用 Docker 和 NGINX 部署 Seafile 服务器
|
||||
|
||||
> **高级教程**
|
||||
>
|
||||
> 我们的许多教程都是针对初学者的。这篇则不然,它是为那些经常鼓捣 DIY 项目和喜欢自托管的高级用户设计的。这个教程假定你可以熟练的使用命令行,而且你至少对我们将要使用的程序有一定的了解。
|
||||
|
||||
虽然整个过程完全可以不使用 NGINX ,但是使用 NGINX 更加容易配置,而且在将来更加容易的自托管更多的服务。
|
||||
|
||||
如果你想完全使用 Docker 环境,你也可以 [在 Docker 内部设置 NGINX][3] ,但是它这会使事情变得更加复杂,并且不能够带来太多好处。同样,在本教程里也不会涉及这些。
|
||||
|
||||
#### 安装设置 NGINX
|
||||
|
||||
在这个教程中,我会使用 Ubuntu,因此会使用 `apt` 来安装软件包。如果你使用 Fedora 或者一些其他非 Debian 发行版,请使用你的发行版的 [包管理器][4]。
|
||||
|
||||
[NGINX][5] 既是一个网页浏览器,又是一个代理服务器。它将起到 Seafile 服务器和互联网之间网络连接的作用,同时也使一些任务更容易处理。
|
||||
|
||||
要安装 NGINX ,使用以下命令:
|
||||
|
||||
```
|
||||
sudo apt install nginx
|
||||
```
|
||||
|
||||
如果你想使用 HTTPS(也就是浏览器中的小挂锁),你需要安装 [Certbot][6]:
|
||||
|
||||
```
|
||||
sudo apt install certbot python3-certbot-nginx
|
||||
```
|
||||
|
||||
下一步,你需要设置 NGINX 来连接我们之后将要设置的 Seafile 实例。
|
||||
|
||||
首先,运行以下命令:
|
||||
|
||||
```
|
||||
sudo nano /etc/nginx/sites-available/seafile.conf
|
||||
```
|
||||
|
||||
键入下方的文本到文件中:
|
||||
|
||||
```
|
||||
server {
|
||||
server_name localhost;
|
||||
location / {
|
||||
proxy_pass http://localhost:8080;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**重要**: 将 `server_name` 一行的 `localhost` 替换为你要访问你的服务器的地址(比如 `seafile.example.com` 或者 `192.168.0.0`)。不确定要输入什么吗?
|
||||
|
||||
* 如果你只是为了测试,使用 `localhost` 。这个设置将 **只允许你从你的电脑访问服务器** ,仅此而已。
|
||||
* 如果你想通过你的本地 Wi-Fi 连接使用 Seafile(与你在同一 Wi-Fi 网络上),你应该键入 [你的计算机 IP 地址][7]。你也可以考虑 [设置一个静态 IP 地址][8],尽管这不是必须的。
|
||||
* 如果你有一个公网 IP 地址,你知道它指向你的系统,就使用它。
|
||||
* 如果你有一个域名(比如 `example.com`、`example.org`)和公网 IP 地址,更改你的 DNS 设置,将域名指向你的系统的 IP 地址。这也需要将公网 IP 指向你的系统。
|
||||
|
||||
现在你需要复制配置文件到 NGINX 的查找目录中,然后重启 NGINX :
|
||||
|
||||
```
|
||||
sudo ln -s /etc/nginx/sites-available/seafile.conf /etc/nginx/sites-enabled/seafile.conf
|
||||
sudo systemctl restart nginx
|
||||
```
|
||||
|
||||
如果你要安装 Cerbot,你也需要运行以下命令来设置 HTTPS :
|
||||
|
||||
```
|
||||
sudo certbot
|
||||
```
|
||||
|
||||
如果要重定向 HTTP 流量 到 HTTPS ,选择 `2` 。
|
||||
|
||||
现在可以来确认我们目前设置的一切都是否正常工作。如果你访问你的站点,你应该看到一个屏幕上写着 `502 Bad Gateway` 字样。
|
||||
|
||||
![][9]
|
||||
|
||||
#### 安装 Docker 和 Docker Compose
|
||||
|
||||
现在要进入有趣的部分了!
|
||||
|
||||
首先,你需要安装 [Docker][10] 和 [Docker Compose][11] 。Docker Compose 需要利用 `docker-compose.yml` 文件,这将使管理多个 Docker [容器][12] 的 Seafile 需求变得更加容易。
|
||||
|
||||
Docker 和 Docker Compose 可以用以下的命令来安装:
|
||||
|
||||
```
|
||||
sudo apt install docker.io docker-compose
|
||||
```
|
||||
|
||||
检查 Docker 是否安装并运行,运行以下命令:
|
||||
|
||||
```
|
||||
sudo docker run --rm hello-world
|
||||
```
|
||||
|
||||
如果你完全安装成功,你应该在终端能看到这几行文字:
|
||||
|
||||
![][13]
|
||||
|
||||
如果你想避免在 `docker` 命令的开始添加 `sudo` 的话,你可以运行以下的命令将你自己添加到 `docker` 组:
|
||||
|
||||
```
|
||||
sudo groupadd docker
|
||||
sudo usermod -aG docker $USER
|
||||
```
|
||||
|
||||
这个教程的其余部分假定你已经运行了以上两个命令。如果你没有运行,在所有 `docker` 或 `docker-compose` 的命令都添加 `sudo` 。
|
||||
|
||||
#### 安装 Seafile 服务器
|
||||
|
||||
这部分比之前部分明显容易的多。你所需要做的是输入一些文本到文件,然后运行一些命令。
|
||||
|
||||
打开一个终端,然后创建一个 Seafile 服务器用来储存内容的目录,并进入目录中:
|
||||
|
||||
```
|
||||
mkdir ~/seafile-server && cd ~/seafile-server
|
||||
```
|
||||
|
||||
![][14]
|
||||
|
||||
转到你创建的目录然后运行以下命令:
|
||||
|
||||
```
|
||||
nano docker-compose.yml
|
||||
```
|
||||
|
||||
下一步,在弹出的窗口中键入以下文本内容:
|
||||
|
||||
```
|
||||
version: '2.0'
|
||||
services:
|
||||
db:
|
||||
image: mariadb
|
||||
container_name: seafile-mysql
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=password
|
||||
- MYSQL_LOG_CONSOLE=true
|
||||
volumes:
|
||||
- ./data/mariadb:/var/lib/mysql
|
||||
networks:
|
||||
- seafile-net
|
||||
|
||||
memcached:
|
||||
image: memcached
|
||||
container_name: seafile-memcached
|
||||
entrypoint: memcached -m 256
|
||||
networks:
|
||||
- seafile-net
|
||||
|
||||
seafile:
|
||||
image: seafileltd/seafile-mc
|
||||
container_name: seafile
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ./data/app:/shared
|
||||
environment:
|
||||
- DB_HOST=db
|
||||
- DB_ROOT_PASSWD=password
|
||||
- TIME_ZONE=Etc/UTC
|
||||
- SEAFILE_ADMIN_EMAIL=me@example.com
|
||||
- SEAFILE_ADMIN_PASSWORD=password
|
||||
- SEAFILE_SERVER_LETSENCRYPT=false
|
||||
- SEAFILE_SERVER_HOSTNAME=docs.seafile.com
|
||||
depends_on:
|
||||
- db
|
||||
- memcached
|
||||
networks:
|
||||
- seafile-net
|
||||
|
||||
networks:
|
||||
seafile-net:
|
||||
```
|
||||
|
||||
在保存文件之前,一些参数需要更改:
|
||||
|
||||
* `MYSQL_ROOT_PASSWORD`:更换强壮的密码,你不必记住它,所以不要尝试挑选简单的密码。如果你需要帮助生成一个,请使用 [密码生成器][15] 。我建议使用 20 位字符长度并且避免使用任何的特殊字符(`!@#$%^&*` 等符号)。
|
||||
* `DB_ROOT_PASSWD`:更改你为 `MYSQL_ROOT_PASSWORD` 设置的值 。
|
||||
* `SEAFILE_ADMIN_EMAIL`:设置管理员帐户的电子邮件地址。
|
||||
* `SEAFILE_ADMIN_PASSWORD`:设置管理员帐户密码。避免与`MYSQL_ROOT_PASSWORD` 或者 `DB_ROOT_PASSWD` 密码相同。
|
||||
* `SEAFILE_SERVER_HOSTNAME`:在 NGINX 配置中设置 Seafile 的服务器主机名。
|
||||
|
||||
完成之后,你可以运行 `docker-compose` 整个运行起来:
|
||||
|
||||
```
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
可能需要花一到两分钟,取决于你的网速,因为需要拉下几个 Seafile 需要运行的几个容器。
|
||||
|
||||
完成以后,还需要几分钟来完成。你也可以通过以下命令来检查运行状态:
|
||||
|
||||
```
|
||||
docker logs seafile
|
||||
```
|
||||
|
||||
当完成了,你将会看到如下输出:
|
||||
|
||||
![][17]
|
||||
|
||||
下一步,你只需要在你的浏览器里键入你设置的 `SEAFILE_SERVER_HOSTNAME` 的地址,然后你应该看到登录屏幕的页面。
|
||||
|
||||
![][18]
|
||||
|
||||
就这样!现在一切功能齐全,准备用客户端来使用。
|
||||
|
||||
#### 安装 Seafile 客户端
|
||||
|
||||
Seafile 移动客户端在 [Google Play][19]、[F-Droid][20] 和 [苹果商店][21] 都是可用的。Seafile 也有 Linux、Windows 和 Mac 桌面客户端可用,可在 [此处][22] 找到。
|
||||
|
||||
通过 `seafile-gui` 软件包,可以在 Ubuntu 系统轻松获得 Seafile :
|
||||
|
||||
```
|
||||
sudo apt install seafile-gui
|
||||
```
|
||||
|
||||
通过 `seafile-client` 软件包 Seafile 也包含在 Arch 用户的 AUR 包管理器中。
|
||||
|
||||
### 结语
|
||||
|
||||
请尽情探索客户端及其所能提供的一切。我将在未来的一篇文章中详细阐述 Seafile 客户端的所有功能。(敬请期待 😃)
|
||||
|
||||
总的来说,如果有什么错误,或者你有什么问题,请在下方评论 – 我会尽我所能回应。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/deploy-seafile-server-docker/
|
||||
|
||||
作者:[Hunter Wittenborn][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/hunter/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.seafile.com/en/home/
|
||||
[2]: https://itsfoss.com/nextcloud-vs-owncloud/
|
||||
[3]: https://linuxhandbook.com/nginx-reverse-proxy-docker/
|
||||
[4]: https://itsfoss.com/package-manager/
|
||||
[5]: https://www.nginx.com/
|
||||
[6]: https://certbot.eff.org/
|
||||
[7]: https://itsfoss.com/check-ip-address-ubuntu/
|
||||
[8]: https://itsfoss.com/static-ip-ubuntu/
|
||||
[9]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/nginx_bad_gateway.png?resize=489%2C167&ssl=1
|
||||
[10]: https://www.docker.com/
|
||||
[11]: https://docs.docker.com/compose/
|
||||
[12]: https://www.docker.com/resources/what-container
|
||||
[13]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-docker-helloworld.png?resize=752%2C416&ssl=1
|
||||
[14]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-dir.png?resize=731%2C174&ssl=1
|
||||
[15]: https://itsfoss.com/password-generators-linux/
|
||||
[16]: https://itsfoss.com/cdn-cgi/l/email-protection
|
||||
[17]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-running.png?resize=752%2C484&ssl=1
|
||||
[18]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-login.jpg?resize=800%2C341&ssl=1
|
||||
[19]: https://play.google.com/store/apps/details?id=com.seafile.seadroid2
|
||||
[20]: https://f-droid.org/repository/browse/?fdid=com.seafile.seadroid2
|
||||
[21]: https://itunes.apple.com/cn/app/seafile-pro/id639202512?l=en&mt=8
|
||||
[22]: https://www.seafile.com/en/download/
|
@ -3,16 +3,18 @@
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14445-1.html"
|
||||
|
||||
Linux 终端新手指南
|
||||
======
|
||||
学习 Linux 终端命令、参数的区别,以及如何使用它们来控制你的计算机。
|
||||
![橙色背景的终端命令提示符][1]
|
||||
|
||||
距离我的住处几条街远的地方,有一家咖啡馆,我在每个周日都会去那里参加固定的 “<ruby>龙与地下城<rt>Dungeons & Dragons, D&D</rt><ruby>” 游戏。他们有一份菜单,前几次我去点餐时,我总是要翻看好几分钟,才能确定要点些什么。熟悉了之后,我就不用看菜单了,因为我清楚地知道他们在卖什么,也清楚地知道自己想要什么。现在点餐对我来说很简单,只要说一声“老规矩”就好了,接下来就是等待一杯咖啡、一碗薯片和烤饼被送来(通常在我们 <ruby>做出决定<rt>roll for initiative</rt></ruby>「译者注:这是 D&D 玩家的黑话,它指的是在比赛开始前掷骰子的行为」的那一刻,员工都不大方便,但这也不是他们的问题)。
|
||||
> 学习 Linux 终端命令、参数的区别,以及如何使用它们来控制你的计算机。
|
||||
|
||||

|
||||
|
||||
距离我的住处几条街远的地方,有一家咖啡馆,我在每个周日都会去那里参加固定的 “<ruby>龙与地下城<rt>Dungeons & Dragons</rt></ruby>”(D&D) 游戏。他们有一份菜单,前几次我去点餐时,我总是要翻看好几分钟,才能确定要点些什么。熟悉了之后,我就不用看菜单了,因为我清楚地知道他们在卖什么,也清楚地知道自己想要什么。现在点餐对我来说很简单,只要说一声“老规矩”就好了,接下来就是等待一杯咖啡、一碗薯片和烤饼被送来(通常不方便的是,在我们 <ruby>做出决定<rt>roll for initiative</rt></ruby> 的那一刻,但这也不是他们的问题)。(LCTT 译注:<ruby>做出决定<rt>roll for initiative</rt></ruby> 是 D&D 玩家的黑话,它指的是在比赛开始前掷骰子的行为)
|
||||
|
||||
与餐厅的菜单类似,计算机的图形界面也为用户提供了操作选项。这里有图标、窗口和按钮,你可以搜索你想要的东西,点击项目,拖动其他项目,操纵图形界面,直到你的任务完成。不过,一段时间后,这可能会变得繁琐,甚至是效率低下。既然你清楚地知道需要做什么,那么,如果只需告诉计算机你想要发生什么,无需耗费大量的体力和脑力来搜索项目、舞动鼠标,就能达到目的,岂不是更好吗?
|
||||
|
||||
@ -20,24 +22,23 @@ Linux 终端新手指南
|
||||
|
||||
Linux 终端是一个基于文本的交互界面,它是用来控制 Linux 计算机的。虽然它只是帮助 Linux 用户完成任何特定任务的众多工具之一,但是它被广泛地认为是最有效的方法。除了编写代码,这无疑是最直接的方法。事实上,它是如此受欢迎,以至于苹果公司将操作系统的基础改为 Unix,从而获得了 [Bash 和 Z shell][2],而微软公司开发了它自己的开源命令行 [PowerShell][3]。
|
||||
|
||||
### What is a Linux command?
|
||||
### Linux 命令是什么
|
||||
|
||||
**<ruby>命令<rt>commands</rt></ruby>** 是一种特殊的关键词,你可以在终端中使用它,告诉计算机去执行一个动作。大多数命令是很小的应用程序,它们与你的操作系统的其他部分一起安装。你可能没有意识到它们的存在,因为它们通常被保存在相对模糊的目录中,如 `/bin`、`/sbin`、`/usr/bin` 和 `/usr/sbin`,但你的终端知道在哪里可以找到它们(多亏了一个叫 [PATH][4] 的东西)。其他的命令是内置在终端中的。你不必担心一个命令是安装的还是内置的,无论是哪一种,终端都能执行。更棒的是,在大多数 Linux 发行版上,当终端找不到一个命令时,它会在互联网上搜索提供该命令的软件包,然后会主动为你提供安装软件包、运行该命令的服务。
|
||||
<ruby>命令<rt>commands</rt></ruby> 是一种特殊的关键词,你可以在终端中使用它,告诉计算机去执行一个动作。大多数命令是很小的应用程序,它们与你的操作系统的其他部分一起安装。你可能没有意识到它们的存在,因为它们通常被保存在相对模糊的目录中,如 `/bin`、`/sbin`、`/usr/bin` 和 `/usr/sbin`,但你的终端知道在哪里可以找到它们(多亏了一个叫 [PATH][4] 的东西)。其他的命令是内置在终端中的。你不必担心一个命令是安装的还是内置的,无论是哪一种,终端都能执行。更棒的是,在大多数 Linux 发行版上,当终端找不到一个命令时,它会在互联网上搜索提供该命令的软件包,然后会主动为你提供安装软件包、运行该命令的服务。
|
||||
|
||||
下面是一个简单的命令:
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls
|
||||
```
|
||||
|
||||
`ls` 命令是 "list" 的缩写,它会列出当前目录的内容。试一试吧!先打开一个终端窗口,然后打开一个文件管理器窗口(Linux 上叫 “<ruby>文件<rt>Files</rt></ruby>”,macOS 上叫 “<ruby>访达<rt>Finder</rt></ruby>”,Windows 上叫 “<ruby>资源管理器<rt>Windows Explorer</rt><ruby>”)。比较一下这两个窗口,它们是同一数据的两种不同表现方式。
|
||||
`ls` 命令是 “list” 的缩写,它会列出当前目录的内容。试一试吧!先打开一个终端窗口,然后打开一个文件管理器窗口(Linux 上叫 “<ruby>文件<rt>Files</rt></ruby>”,macOS 上叫 “<ruby>访达<rt>Finder</rt></ruby>”,Windows 上叫 “<ruby>资源管理器<rt>Windows Explorer</rt><ruby>”)。比较一下这两个窗口,它们是同一数据的两种不同表现方式。
|
||||
|
||||
### Linux 命令中的参数是什么
|
||||
|
||||
**<ruby>参数<rt>argument</rt></ruby>** 是命令中的任意一个“不是命令本身”的部分。例如,要列出一个特定目录的内容,你可以提供该目录的名称作为参数。
|
||||
<ruby>参数<rt>argument</rt></ruby> 是命令中的任意一个“不是命令本身”的部分。例如,要列出一个特定目录的内容,你可以提供该目录的名称作为参数。
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls Documents
|
||||
```
|
||||
|
||||
@ -45,28 +46,27 @@ $ ls Documents
|
||||
|
||||
### Linux 命令中的选项是什么
|
||||
|
||||
命令的 **<ruby>选项<rt>options</rt></ruby>**,也叫 **<ruby>标志<rt>flags</rt></ruby>** 或 **<ruby>开关<rt>switches</rt></ruby>**,它是命令参数的一部分。命令参数是跟在命令后面的任何东西,而选项通常(但不总是)用<ruby>一个连接号<rt>-</rt></ruby>或<ruby>两个连接号<rt>--</rt></ruby>来划分。请看下面这个例子:
|
||||
命令的 <ruby>选项<rt>option</rt></ruby>,也叫 <ruby>标志<rt>flag</rt></ruby> 或 <ruby>开关<rt>switch</rt></ruby>,它是命令参数的一部分。命令参数是跟在命令后面的任何东西,而选项通常(但不总是)用一个连接号(`-`)或两个连接号(`--`)来划分。请看下面这个例子:
|
||||
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls --classify Documents
|
||||
```
|
||||
|
||||
在这个例子中,`--classify` 是一个选项。它也有一个简短的版本,因为终端用户更喜欢少打点字来提高效率。
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls -F Documents
|
||||
```
|
||||
|
||||
短的选项通常可以合并。下面是一个 `ls` 命令,它将 `-l` 选项与 `--human-readable`、`--classify` 和 `--ignore-backups` 选项结合了起来:
|
||||
短的选项通常可以合并。下面是一个 `ls` 命令,它将 `-l` 选项与 `--human-readable`(`-h`)、`--classify`(`-F`) 和 `--ignore-backups`(`-B`) 选项结合了起来:
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls -lhFB
|
||||
```
|
||||
|
||||
一些选项本身可以带参数。例如,`ls` 的 `--format` 选项可以让你改变信息的呈现方式。默认情况下,目录的内容是以列的形式提供给你的,但如果你需要它们显示为逗号分隔的列表,你可以把 `--format` 设置为 `comma`。
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls --format=comma Documents
|
||||
alluvial, android-info.txt, arduinoIntro, dmschema,
|
||||
headers.snippet, twine, workshop.odt
|
||||
@ -74,7 +74,7 @@ headers.snippet, twine, workshop.odt
|
||||
|
||||
等于号(`=`)是可选的,所以这样做也可以:
|
||||
|
||||
```shell
|
||||
```
|
||||
$ ls --format comma Documents
|
||||
alluvial, android-info.txt, arduinoIntro, dmschema,
|
||||
headers.snippet, twine, workshop.odt
|
||||
@ -101,7 +101,7 @@ via: https://opensource.com/article/21/8/linux-terminal
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][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/) 荣誉推出
|
||||
|
||||
@ -111,11 +111,11 @@ via: https://opensource.com/article/21/8/linux-terminal
|
||||
[2]: https://opensource.com/business/16/3/top-linux-shells
|
||||
[3]: https://opensource.com/article/18/2/powershell-people
|
||||
[4]: https://opensource.com/article/17/6/set-path-linux
|
||||
[5]: https://opensource.com/article/21/7/linux-terminal-basics-see-what-files-are-your-computer
|
||||
[5]: https://linux.cn/article-13669-1.html
|
||||
[6]: https://opensource.com/article/21/7/linux-terminal-basics-opening-and-closing-directories
|
||||
[7]: https://opensource.com/article/21/7/terminal-basics-moving-around-your-computer
|
||||
[8]: https://opensource.com/article/21/7/terminal-basics-moving-files-linux-terminal
|
||||
[8]: https://linux.cn/article-13677-1.html
|
||||
[9]: https://opensource.com/article/21/7/terminal-basics-rename-file-linux-terminal
|
||||
[10]: https://opensource.com/article/21/7/terminal-basics-copying-files-linux-terminal
|
||||
[11]: https://opensource.com/article/21/7/terminal-basics-removing-files-and-folders-linux-terminal
|
||||
[11]: https://linux.cn/article-13687-1.html
|
||||
[12]: https://opensource.com/downloads/bash-scripting-ebook
|
@ -3,43 +3,44 @@
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "hwlife"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14444-1.html"
|
||||
|
||||
用archinstall自动化脚本安装Arch Linux [完全指南]
|
||||
用 archinstall 自动化脚本安装 Arch Linux
|
||||
======
|
||||
在这篇指南中,我们解释了使用自动化脚本 archinstall 安装 ArchLinux 的超级容易的方法。
|
||||
适合初学者到高级用户。
|
||||
|
||||
对许多新用户来说,安装 ArchLinux 仍然是一件头疼的事情。它需要命令行,Linux系统的内部工作机制包括启动引导过程,内核和 Grub 概念等大量的知识。对许多人来说并不知道这些知识。但是新用户仍然想要安装和体验 ArchLinux 。
|
||||

|
||||
|
||||
我个人感觉在计算机年代,操作系统的安装应该是简单的事情。对于最终用户安装系统应该尽可能的简单。毕竟,所有操作系统的存在只有一个目的 - 帮助最终用户执行某些任务并协助他们。
|
||||
> 在这篇指南中,我们解释了使用自动化脚本 `archinstall` 安装 Arch Linux 的超级容易的方法。适合初学者到高级用户。
|
||||
|
||||
对许多新用户来说,安装 Arch Linux 仍然是一件头疼的事情。它需要命令行,以及包括启动引导过程、内核和 Grub 概念在内的 Linux 系统的内部工作机制等大量的知识。对许多人来说并不知道这些知识。但是新用户仍然想要安装和体验 Arch Linux 。
|
||||
|
||||
我个人感觉在计算机年代,操作系统的安装应该是简单的事情。对于最终用户安装系统应该尽可能的简单。毕竟,所有操作系统的存在只有一个目的 —— 帮助最终用户执行某些任务并协助他们。
|
||||
|
||||
### archinstall 自动化脚本是什么?
|
||||
|
||||
也就是说,不久前我们讨论过在裸机上安装 ArchLinux 。从那以后,ArchLinux团队想出了一个叫做 [archinstall][1] 自动化和交互脚本。如今用这个脚本安装 ArchLinux 是一件容易的事情,任何人都能够完成。
|
||||
话说,不久前我们讨论过在裸机上安装 Arch Linux。从那以后,Arch Linux 团队弄出来了一个叫做 [archinstall][1] 自动化和交互脚本。如今用这个脚本安装 Arch Linux 是一件容易的事情,任何人都能够完成。
|
||||
|
||||
这就导致我们使用这个叫做 archinstall 的自动化脚本,于是就有了 ArchLinux 安装指南的打算。
|
||||
这就让我们有了使用这个叫做 `archinstall` 的自动化脚本撰写这篇 Arch Linux 安装指南的打算。
|
||||
|
||||
让我们开始吧。
|
||||
|
||||
### 使用 archinstall 脚本安装 Arch Linux 的指南
|
||||
|
||||
我将这个指南分为三个部分。第一部分是下载 Arch Linux的 .ISO 文件,创建一个磁盘引导分区。第二部分是实际安装,最后是用一个实例桌面来最终配置。
|
||||
|
||||
我将这个指南分为三个部分。第一部分是下载 Arch Linux 的 .ISO 文件,创建一个磁盘引导分区。第二部分是实际安装,最后是用一个示例桌面来完成配置。
|
||||
|
||||
#### 第一部分:下载 .ISO 文件
|
||||
|
||||
访问以下链接。下载 Arch Linux 的 .ISO 文件。你能够用一个直接的 HTTP 地址下载或者使用种子/磁力链接下载文件。
|
||||
|
||||
[Download Arch Linux][2]
|
||||
> [下载 Arch Linux][2]
|
||||
|
||||
一旦下载完成,用 [Etcher][3] 或者其他的工具创建一个可启动的U盘。
|
||||
一旦下载完成,用 [Etcher][3] 或者其他的工具创建一个可启动的 U 盘。
|
||||
|
||||
完成以后,插入U盘并且重启计算机。
|
||||
完成以后,插入 U 盘并且重启计算机。
|
||||
|
||||
你开始下一部分之前,确定你连接了互联网。一般来说,如果你是有线网,那就很好。如果你在 Arch 就要通过命令行 – [遵从本指南][4] 配置 Wi-Fi。只要确保你已经连接到互联网就行。
|
||||
你开始下一部分之前,确定你连接了互联网。一般来说,如果你是有线网,那就很好。如果你在 Arch 就要通过命令行配置 Wi-Fi,请 [遵从此指南][4]。只要确保你已经连接到互联网就行。
|
||||
|
||||
#### 第二部分:使用 archinstall 安装
|
||||
|
||||
@ -47,75 +48,64 @@
|
||||
|
||||
![First prompt for archinstall][5]
|
||||
|
||||
这个命令将会验证网络连接是否连接到 Arch Linxu 的镜像。一旦完成,一系列问题(像这样)将会弹出。你需要做的将是阅读和回复。
|
||||
这个命令将会验证网络连接是否连接到 Arch Linux 的镜像站点。一旦完成,就会弹出一系列(像这样的)问题。你需要做的将是阅读和回复。
|
||||
|
||||
所以,对这个指南来说,我给出了让你开始的最基础和最容易的一种方法。如果你足够自信,你也可以尝试其他选择。但是我建议遵循以下概述的基本选择,下次你在尝试其他的选择。
|
||||
|
||||
够公平吧?OK。
|
||||
|
||||
因此,第一个问题是键盘布局类型。通过两个字节国家特定布局代码来显示。你也可以键入它们或者输入它们边上的数字。对于美国-英语来说,我键入 us 。
|
||||
因此,第一个问题是键盘布局类型。通过两个字节国家特定布局代码来显示。你也可以键入它们或者输入它们边上的数字。对于美国-英语来说,我键入 `us` 。
|
||||
|
||||
![Keyboard Type – archinstall][6]
|
||||
|
||||
下一步是键盘语言,我键入数字 65 选择美国。
|
||||
|
||||
下一步是键盘语言,我键入数字 `65` 选择美国。
|
||||
|
||||
![Keyboard Language – archinstall][7]
|
||||
|
||||
下一个是硬盘驱动器部分。这个脚本自动探测你的目标系统的可用驱动器。举个例子,在以下图片中,它显示 17GB /dev/vda 是一个主要的块设备。这就是我要安装系统的地方。不要跳过这个步骤。
|
||||
下一个是硬盘驱动器部分。这个脚本自动探测你的目标系统的可用驱动器。举个例子,在以下图片中,它显示 17GB `/dev/vda` 是一个主要的块设备。这就是我要安装系统的地方。不要跳过这个步骤。
|
||||
|
||||
[][8]
|
||||
在这个指南中,我键入数字 `2` 选中 `/dev/vda` 块设备。请根据你们每人的系统键入相应的数字。
|
||||
|
||||
另见 :怎样在 Arch Linux上安装 Cinnamon 桌面
|
||||
|
||||
在这个指南中,我键入数字 2 选中 /dev/vda 块设备。然后,根据你们每人的系统键入相应的数字。
|
||||
|
||||
一旦你做完这步,你应该在设置这个设备的边上看到一个双箭头 >> 。如果你已经选中它,按下回车键进入下一步。
|
||||
一旦你做完这步,你应该在设置这个设备的边上看到一个双箭头 `>>`。如果你已经选中它,按下回车键进入下一步。
|
||||
|
||||
![Choose Block Device -1][9]
|
||||
|
||||
![Choose Block Device -2][10]
|
||||
|
||||
在下一个选项中,你要小心。这个脚本问是否你想清除设备然后进行自动分区。否则你要手动分区硬盘驱动器。为了简单起见,我选择 0 选项。
|
||||
在下一个选项中,你要非常小心。这个脚本问是否你想清除设备然后进行自动分区。否则你要手动分区硬盘驱动器。为了简单起见,我选择选项 `0`。
|
||||
|
||||
![Select partition option – archinstall][11]
|
||||
|
||||
在下组问题中,如下图所示。更多的是文件系统类型,主机名,根用户密码,等等。按照屏幕上的操作。便于帮助你,我已经在下表中加入了用于本指南的问题和答案。
|
||||
|
||||
在下面一组问题中,如下图所示。更多的是文件系统类型、主机名、root 用户密码,等等。按照屏幕上的操作。便于帮助你,我已经在下表中加入了用于本指南的问题和答案。
|
||||
|
||||
问题 | 选项
|
||||
---|---
|
||||
问题 | 选项
|
||||
选择主要的文件系统 | ext4
|
||||
你想用 zram 作为交换分区吗?| n
|
||||
键入磁盘加密密码 |保留为空直接按下回车
|
||||
选择主要的文件系统 | `ext4`
|
||||
你想用 zram 作为交换分区吗?| `n`
|
||||
键入磁盘加密密码 | 保留为空直接按下回车
|
||||
主机名或计算机名 | 键入你要键入的名字
|
||||
键入根密码 | 键入你要键入的密码
|
||||
键入程序预配置文件名 –
|
||||
0 – 桌面
|
||||
1 – 最小化
|
||||
2 – 服务器
|
||||
3 – xorg | 选择 3 – xorg
|
||||
键入 root 密码 | 键入你要键入的密码
|
||||
键入程序预配置文件名:0 – 桌面;1 – 最小化;2 – 服务器;3 – xorg | 选择 `3` xorg
|
||||
安装显卡驱动 | 根据你的系统选择数字。否则缺省不选按下回车键
|
||||
安装声卡驱动| 选择 pulseaudio
|
||||
安装声卡驱动 | 选择 `pulseaudio`
|
||||
|
||||
![Various options in archinstall -1][12]
|
||||
|
||||
在选择内核,选择linux的下个问题里。这个脚本将要为你安装你额外添加的软件包 - 像 firefox ,nano ,等等。
|
||||
在选择内核的下个问题里,选择 `linux`。这个脚本将要为你安装你额外添加的软件包,像 firefox、nano ,等等。
|
||||
|
||||
用 NetworkManager 选择网络接口,并且为时区选择缺省选项。
|
||||
用 NetworkManager 选择网络接口,并且为时区选择缺省选项。
|
||||
|
||||
![Various options in archinstall -2][13]
|
||||
|
||||
就是这样。一旦你已经完成上述步骤,这个脚本将会生成并且等待你按下回车开始安装过程。
|
||||
就是这样。一旦你已经完成上述步骤,这个脚本将会生成,并且等待你按下回车开始安装过程。
|
||||
|
||||
![archinstall starts downloading packages][14]
|
||||
|
||||
等待直到步骤完成。这将花一些时间下载安装所有软件包,这依赖你的系统和网络连接速度。有时 Arch 镜像是慢的,所以等待直到它完成。
|
||||
等待直到这一步骤完成。这将花一些时间下载安装所有软件包,这依赖你的系统和网络连接速度。有时 Arch 镜像是缓慢的,所以等待直到它完成。
|
||||
|
||||
#### 第三部分 - 安装桌面环境
|
||||
|
||||
当你用以上方法安装完基本系统以后,你可以安装像 GNOME,KDE Plasma,MATE,Xfce 等额外的桌面环境。我们在以下页面中为它们每个都提供了安装指南。你可以访问你选择的桌面环境安装页面并且直接跳到这些页面底部提取安装桌面环境的命令。
|
||||
当你用以上方法安装完基本系统以后,你可以安装像 GNOME、KDE Plasma、MATE、Xfce 等额外的桌面环境。我们在以下页面中为它们每个都提供了安装指南。你可以访问你选择的桌面环境安装页面,并且直接跳到这些页面底部提取安装桌面环境的命令。
|
||||
|
||||
* [Xfce][15]
|
||||
* [GNOME][16]
|
||||
@ -123,44 +113,30 @@
|
||||
* [Cinnamon][8]
|
||||
* [LXQt][18]
|
||||
|
||||
|
||||
举个例子,如果你想要安装 GNOME 桌面基本套件,你可以简单的运行以下命令来安装。
|
||||
|
||||
|
||||
```
|
||||
|
||||
sudo pacman -S --needed gnome gnome-tweaks nautilus-sendto gnome-nettool gnome-usage gnome multi-writer adwaita-icon-theme chrome-gnome-shell xdg-user-dirs-gtk fwupd arc-gtk-theme seahosrse gdm firefox gedit
|
||||
|
||||
sudo pacman -S --needed gnome gnome-tweaks nautilus-sendto gnome-nettool gnome-usage gnome multi-writer adwaita-icon-theme chrome-gnome-shell xdg-user-dirs-gtk fwupd arc-gtk-theme seahosrse gdm firefox gedit
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
systemctl enable gdm
|
||||
|
||||
systemctl enable gdm
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
systemctl enable NetworkManager
|
||||
|
||||
systemctl enable NetworkManager
|
||||
```
|
||||
|
||||
一旦你完成了以上这些,键入 reboot 重启。
|
||||
一旦你完成了以上这些,键入 `reboot` 重启。
|
||||
|
||||
恭喜你。你已经使用这个指南和厉害的 archinstall 脚本安装完成了 Arch Linux。
|
||||
恭喜你。你已经使用这个指南通过厉害的 `archinstall` 脚本安装完成了 Arch Linux。
|
||||
|
||||
### 结语
|
||||
|
||||
我相信,这是团队开发的令人印象深刻的脚本之一。并且确实增加了使用 Arch Linux 的用户基数和覆盖范围。
|
||||
我相信,这是由该团队开发的令人印象深刻的脚本之一。并且确实增加了使用 Arch Linux 的用户基数和覆盖范围。
|
||||
|
||||
使用这个脚本有什么问题吗?在下方评论让我知道。
|
||||
|
||||
* * *
|
||||
|
||||
我们带来了最新的技术,软件新闻和重大事件。可以通过 [Telegram][19], [Twitter][20], [YouTube][21], 和 [Facebook][22] 与我们保持联系,不要错过一个更新!
|
||||
|
||||
##### 也要读
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/01/archinstall-guide/
|
||||
@ -168,7 +144,7 @@ via: https://www.debugpoint.com/2022/01/archinstall-guide/
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -0,0 +1,218 @@
|
||||
[#]: subject: "Manage your passwords in the Linux terminal"
|
||||
[#]: via: "https://opensource.com/article/22/1/manage-passwords-linux-terminal"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "hwlife"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14480-1.html"
|
||||
|
||||
在 Linux 终端里管理你的密码
|
||||
======
|
||||
|
||||
> pass 是一个经典的 UNIX 式密码管理系统,使用 GnuPG(GPG)作为加密方式,终端是它的主要界面。
|
||||
|
||||

|
||||
|
||||
如今,我们每个人都有几十个密码。幸运的是,这些密码大部分几乎都是网站的,你可能通过互联网浏览器访问大部分网站,而许多浏览器都有内置的密码管理器。最流行的互联网浏览器也有一个同步的功能,可以帮助你在各种设备上运行的浏览器之间分发密码,所以当你需要时,绝不会找不到你的登录信息。如果这不能够满足你,还有类似 [BitWarden][2] 这样优秀的开源项目也可以托管你加密后的密码,确保只有你自己才能解锁它们。这些方案有助于你轻松维护独特的密码,我使用这些方便系统来管理一些密码。但是我的主密码存储库比以上这些方式简单的多。我主要是使用 [pass][3] ,这是一个经典的 UNIX 式密码管理系统,使用 GnuPG(GPG)作为加密方式,终端是它的主要界面。
|
||||
|
||||
### 安装 pass
|
||||
|
||||
你可以从你的发行版仓库中安装 `pass` 命令。
|
||||
|
||||
在 Fedora、Mageia 和类似的发行版上,你可以用你的包管理器来安装它:
|
||||
|
||||
```
|
||||
$ sudo dnf install pass
|
||||
```
|
||||
|
||||
在 Elementary、Mint 和其它基于 Debian 的发行版上:
|
||||
|
||||
```
|
||||
$ sudo apt install pass
|
||||
```
|
||||
|
||||
在 macOS 上,你可以使用 [Homebrew][4] 来安装它:
|
||||
|
||||
```
|
||||
$ brew install pass
|
||||
```
|
||||
|
||||
### 设置 GnuPG
|
||||
|
||||
在使用 `pass` 之前,你需要一个有效的 PGP(<ruby>良好隐私<rt>Pretty Good Privacy</rt></ruby>)密钥。如果你已经维护了一个 PGP 密钥,你可以跳过这个步骤,或者你可以选择为使用 `pass` 而创建一个新的密钥。最常见的开源 PGP 实现是 GnuPG(GPG),它随 Linux 一起提供。对于 macOS,你可以从 [gpgtools.org][5]、Homebrew 或者 [Macports][6] 安装它。要创建 GnuPG 密码,运行这个命令:
|
||||
|
||||
```
|
||||
$ gpg --generate-key
|
||||
```
|
||||
|
||||
你会被提示输入你的名字和电子邮件,并且为密钥创建一个密码。你的密钥是一个数字文件,你的密码只有你自己知道。它俩组合起来能够“加锁”和“解锁”加密信息,比如包含密码的文件。
|
||||
|
||||
GPG 密钥更像是一个房门钥匙或者汽车钥匙,如果你失去了它,它“锁起来”的任何东西都会变得无法获得。仅仅知道你的密码是不够的。
|
||||
|
||||
如果你已经管理了几个 SSH 密钥,你可能已经习惯了这一点了。如果你对数字加密密钥是个新手,可能得花些时间来适应。备份你的 `~/.gnupg` 目录,这样当你下次心血来潮决定尝试一个令人兴奋的新发行版时,你就不会意外地删除它。
|
||||
|
||||
做一个备份,并保持备份安全。
|
||||
|
||||
### 设置 pass
|
||||
|
||||
要开始使用 `pass` ,你必须初始化一个 _密码仓库_ ,它定义为一个储存位置,配置为使用特定加密密钥。你可以通过与密钥相关联的名称或数字指纹来指明要用于密码存储的 GPG 密钥。你自己的名字通常更容易选择:
|
||||
|
||||
```
|
||||
$ pass init seth
|
||||
mkdir: created directory '/home/seth/.password-store/'
|
||||
Password store initialized for seth
|
||||
```
|
||||
|
||||
如果你忘记了你的名称,你可以使用 `gpg` 命令查看数字指纹和关联你名称的密钥:
|
||||
|
||||
```
|
||||
$ gpg --list-keys
|
||||
gpg --list-keys
|
||||
/home/seth/.gnupg/pubring.kbx
|
||||
-----------------------------
|
||||
pub ed25519 2022-01-06 [SC] [expires: 2024-01-06]
|
||||
2BFF94286461216C907CBA52F067996F13EF10D8
|
||||
uid [ultimate] Seth Kenlon <[seth@example.com][7]>
|
||||
sub cv25519 2022-01-06 [E] [expires: 2024-01-06]
|
||||
```
|
||||
|
||||
用指纹初始化密码库与用你的名字初始化密码库基本相同:
|
||||
|
||||
```
|
||||
$ pass init 2BFF94286461216C907CBA52F067996F13EF10D8
|
||||
```
|
||||
|
||||
### 存储密码
|
||||
|
||||
使用 `pass add` 命令添加密码到你的密码仓库:
|
||||
|
||||
```
|
||||
$ pass add [www.example.com][8]
|
||||
Enter password for [www.example.com][8]:
|
||||
```
|
||||
|
||||
提示你键入你要添加的密码。
|
||||
|
||||
密码现在存储到了你的密码仓库中。你可以自己查看一下:
|
||||
|
||||
```
|
||||
$ ls /root/.password-store/
|
||||
www.example.com.gpg
|
||||
```
|
||||
|
||||
当然,这个文件是不可读的,并且你尝试对它运行 `cat` 或 `less` 时,在你的终端上会显示乱码(如果扰乱了你的显示,可以使用 `reset` 命令来恢复你的终端。)
|
||||
|
||||
### 用 pass 编辑密码
|
||||
|
||||
我使用不同的用户名称进行不同的上网活动,所以网站的用户名常常和密码同样重要。`pass` 是有这个功能的,即使它默认状态下并不提示你。你可以使用 `pass edit` 命令添加用户名到密码文件:
|
||||
|
||||
```
|
||||
$ pass edit www.example.com
|
||||
```
|
||||
|
||||
这会打开一个编辑器(一般是你设置为 `EDITOR` 或者 `VISUAL` [环境变量][10] 的编辑器) 显示 `www.example.com` 文件的内容。目前,那仅仅是一个密码,但是你可以添加用户名甚至网址或者你想要添加的任何信息。它是个加密了的文件,所以你可以把你要放的任何东西放到里边。
|
||||
|
||||
```
|
||||
bd%dc$3a49af49498bb6f31bc964718C
|
||||
user: seth123
|
||||
url: example.com
|
||||
```
|
||||
|
||||
保存文件然后关闭。
|
||||
|
||||
### 从 pass 获取密码
|
||||
|
||||
要查看密码文件的内容,使用 `pass show` 命令:
|
||||
|
||||
```
|
||||
$ pass show www.example.com
|
||||
bd%dc$3a49af49498bb6f31bc964718C
|
||||
user: seth123
|
||||
url: www.example.org
|
||||
```
|
||||
|
||||
### 查找密码
|
||||
|
||||
有时候很难记住一个密码是归入到 `www.example.com` 还是 `example.com`,又或者一些类似 `app.example.com` 的网址。此外,一些网站架构使用不同的 URL 来实现不同的网站功能,所以你可能在 `www.example.com` 网址下填写过密码,你同时也用相同的登录信息在合作网站 `www.example.org` 下使用过密码。
|
||||
|
||||
如果有疑问,可以使用 `grep` 命令。`pass grep` 命令显示整个搜索项目的实例,无论是在文件名中还是在文件内容中:
|
||||
|
||||
```
|
||||
$ pass grep example
|
||||
www.example.com:
|
||||
url: www.example.org
|
||||
```
|
||||
|
||||
### 在浏览器中使用 pass
|
||||
|
||||
我使用 `pass` 来获取互联网密码以外的信息,但是网站是我经常需要密码的地方。我常常在电脑上的某个地方打开一个终端,所以我通过 `Alt+Tab` 键切换到终端用 `pass` 来获取信息并不麻烦。但是我并不这么做是因为有一些插件可以将 `pass` 与网页浏览器整合在一起。
|
||||
|
||||
#### pass 托管脚本
|
||||
|
||||
首先,安装 `pass` 托管脚本:
|
||||
|
||||
```
|
||||
$ curl -sSL github.com/passff/passff-host/release/latest/download/install_host_app.sh
|
||||
```
|
||||
|
||||
这个脚本放置了一个 Python 脚本,帮助你的浏览器访问你的密码和 GPG 密码。用你所用的浏览器的名字运行它(或者不写参数,查看全部选项):
|
||||
|
||||
```
|
||||
$ bash ./install_host_app.sh firefox
|
||||
```
|
||||
|
||||
如果你使用多个浏览器,你可以为每一个浏览器安装它。
|
||||
|
||||
#### pass 附件
|
||||
|
||||
一旦你已经安装了这个托管程序,你可以为你的浏览器安装一个附件或者扩展。在你的浏览器附件或者扩展管理器里搜索 `PassFF` 插件。
|
||||
|
||||
![PassFF][12]
|
||||
|
||||
安装了这个附件,然后关闭并重新打开浏览器。
|
||||
|
||||
导航到一个你在密码仓库中存有密码的网站。在你的登录文本框右侧会显示一个小小的 “P” 图标。
|
||||
|
||||
![PassFF browser prompt][14]
|
||||
|
||||
点击 “P” 按钮会看到你的密码仓库中与你网站名称匹配的一个列表。
|
||||
|
||||
![PassFF browser menu][15]
|
||||
|
||||
点击“纸和笔”的图标填写表单,或者通过“纸飞机”的图标填写并自动提交表单。
|
||||
|
||||
轻松的密码管理,而且完全整合了!
|
||||
|
||||
### 尝试用 pass 作为你的 Linux 密码管理器
|
||||
|
||||
对于那些想用日常使用的工具来管理密码和个人信息的用户来说,`pass` 命令是一个很好的选择。如果你已经依赖 GPG 和终端,那么你可能会喜欢 `pass` 系统。对于那些不想让他们的密码被束缚在特定程序上的用户来说,这也是一个重要的选择。可能你并不只使用一个浏览器,或者你不喜欢这种想法,即如果你决定停止使用一个应用程序,可能很难从它那里提取你的密码。使用 `pass` ,你可以在一个 UNIX 式的直接系统中保持对你的秘密的控制。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/1/manage-passwords-linux-terminal
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/linux_keyboard_desktop.png?itok=I2nGw78_ (Linux keys on the keyboard for a desktop computer)
|
||||
[2]: http://bitwarden.com
|
||||
[3]: https://www.passwordstore.org/
|
||||
[4]: https://opensource.com/article/20/6/homebrew-mac
|
||||
[5]: https://gpgtools.org/
|
||||
[6]: https://opensource.com/article/20/11/macports
|
||||
[7]: mailto:seth@example.com
|
||||
[8]: http://www.example.com
|
||||
[9]: http://www.example.com.gpg
|
||||
[10]: https://opensource.com/article/19/8/what-are-environment-variables
|
||||
[11]: http://www.example.org
|
||||
[12]: https://opensource.com/sites/default/files/uploads/passff.jpg (PassFF)
|
||||
[13]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[14]: https://opensource.com/sites/default/files/uploads/passff-button-web.jpg (PassFF browser prompt)
|
||||
[15]: https://opensource.com/sites/default/files/uploads/passff-menu-web.jpg (PassFF browser menu)
|
@ -0,0 +1,174 @@
|
||||
[#]: subject: "View your Linux server's network connections with netstat"
|
||||
[#]: via: "https://opensource.com/article/22/2/linux-network-security-netstat"
|
||||
[#]: author: "Sahana Sreeram https://opensource.com/users/sahanasreeram01gmailcom"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "hwlife"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14461-1.html"
|
||||
|
||||
使用 netstat 查看你的 Linux 服务器网络连接
|
||||
======
|
||||
|
||||
> netstat 命令为你的 Linux 服务器提供了监测和网络故障排除的重要观察手段。
|
||||
|
||||

|
||||
|
||||
在 [之前的文章中][2],我分享了一些管理你的个人 Linux 服务器的首要步骤。我简要的提到了监测网络连接的监听端口,我想通过 Linux 系统的 `netstat` 命令来扩展开讲讲。
|
||||
|
||||
服务监测和端口扫描是标准的行业惯例。有很好的软件,如 [Prometheus][3] 协助这个过程自动化,[SELinux][4] 协助上下文和保护系统访问权限。然而,我相信了解你的服务器是如何连接到其他网络和设备的,是建立正常服务器基准的关键,能够帮助你识别有可能表明错误和入侵等异常情况。作为一个初学者,我已经掌握了 `netstat` 命令为我的服务器提供了监测和网络故障排除的重要观察手段。
|
||||
|
||||
`netstat` 和类似的一些网络监测工具被归入 [net-tools 软件包][5] 里,用来显示关于活动连接的信息。因为运行在开放的端口的服务往往容易被利用,定期进行网络监测能够帮助你及早探测到可疑的活动。
|
||||
|
||||
### 安装 netstat
|
||||
|
||||
`netstat` 经常预装在 Linux 发行版上。如果 `netstat` 没有在你的服务器上安装,用你的包管理器安装它。下面是在基于 Debian 的系统上:
|
||||
|
||||
```
|
||||
$ sudo apt-get install net-tools
|
||||
```
|
||||
|
||||
在基于 Fedora 的系统上:
|
||||
|
||||
```
|
||||
$ dnf install net-tools
|
||||
```
|
||||
|
||||
### 使用 netstat
|
||||
|
||||
就其本身而言,`netstat` 命令显示了全部建立成功的连接。你可以使用 `netstat` 的参数指定进一步预期的输出。举个例子,要显示所有监听和非监听的连接,使用 `--all`(`-a` 为简写)的参数。这将返回许多结果,所以在例子中我用管道符输出给 `head` 命令来显示输出的前 15 行:
|
||||
|
||||
```
|
||||
$ netstat --all | head -n 15
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 *:27036 *:* LISTEN
|
||||
tcp 0 0 localhost:27060 *:* LISTEN
|
||||
tcp 0 0 *:16001 *:* LISTEN
|
||||
tcp 0 0 localhost:6463 *:* LISTEN
|
||||
tcp 0 0 *:ssh *:* LISTEN
|
||||
tcp 0 0 localhost:57343 *:* LISTEN
|
||||
tcp 0 0 *:ipp *:* LISTEN
|
||||
tcp 0 0 *:4713 *:* LISTEN
|
||||
tcp 0 0 10.0.1.222:48388 syd15s17-in-f5.1e:https ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:48194 ec2-35-86-38-2.us:https ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:56075 103-10-125-164.va:27024 ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:46680 syd15s20-in-f10.1:https ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:52730 syd09s23-in-f3.1e:https ESTABLISHED
|
||||
```
|
||||
|
||||
要只显示 TCP 端口,使用 `--all` 和 `--tcp` 参数,或者简写成 `-at` :
|
||||
|
||||
```
|
||||
$ netstat -at | head -n 5
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 *:27036 *:* LISTEN
|
||||
tcp 0 0 localhost:27060 *:* LISTEN
|
||||
tcp 0 0 *:16001 *:* LISTEN
|
||||
```
|
||||
|
||||
要只显示 UDP 端口,使用 `--all` 和 `--udp` 参数,或者简写成 `-au` :
|
||||
|
||||
```
|
||||
$ netstat -au | head -n 5
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
udp 0 0 *:27036 *:*
|
||||
udp 0 0 10.0.1.222:44741 224.0.0.56:46164 ESTABLISHED
|
||||
udp 0 0 *:bootpc
|
||||
```
|
||||
|
||||
`netstat` 命令参数常常是简单易懂的。举个例子,要显示带有全部进程 ID(PID)和数字地址的监听 TCP 和 UDP 的端口:
|
||||
|
||||
```
|
||||
$ sudo netstat --tcp --udp --listening --programs --numeric
|
||||
Active Internet connections (only servers)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Addr State PID/Program name
|
||||
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
|
||||
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 2500/dnsmasq
|
||||
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1726/sshd
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1721/cupsd
|
||||
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 4023/sshd: tux@
|
||||
tcp6 0 0 :::111 :::* LISTEN 1/systemd
|
||||
tcp6 0 0 :::22 :::* LISTEN 1726/sshd
|
||||
tcp6 0 0 ::1:631 :::* LISTEN 1721/cupsd
|
||||
tcp6 0 0 ::1:6010 :::* LISTEN 4023/sshd: tux@
|
||||
udp 0 0 0.0.0.0:40514 0.0.0.0:* 1499/avahi-daemon:
|
||||
udp 0 0 192.168.122.1:53 0.0.0.0:* 2500/dnsmasq
|
||||
udp 0 0 0.0.0.0:67 0.0.0.0:* 2500/dnsmasq
|
||||
udp 0 0 0.0.0.0:111 0.0.0.0:* 1/systemd
|
||||
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1499/avahi-daemon:
|
||||
udp6 0 0 :::111 :::* 1/systemd
|
||||
udp6 0 0 :::44235 :::* 1499/avahi-daemon:
|
||||
udp6 0 0 :::5353 :::* 1499/avahi-daemon:
|
||||
```
|
||||
|
||||
这个常用组合简写版本是 `-tulpn` 。
|
||||
|
||||
要显示一个指定服务的信息,[使用 grep 命令过滤][6]:
|
||||
|
||||
```
|
||||
$ sudo netstat -anlp | grep cups
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1721/cupsd tcp6 0 0 ::1:631 :::* LISTEN 1721/cupsd
|
||||
unix 2 [ ACC ] STREAM LISTENING 27251 1/systemd /var/run/cups/cups.sock
|
||||
unix 2 [ ] DGRAM 59530 1721/cupsd
|
||||
unix 3 [ ] STREAM CONNECTED 55196 1721/cupsd /var/run/cups/cups.sock
|
||||
```
|
||||
|
||||
### 接下来的步骤
|
||||
|
||||
一旦你运行了 `netstat` 命令,你就可以采取措施来保护你的系统,确保只有你主动使用的服务在你的网络上被监听。
|
||||
|
||||
1. 识别通常被利用的端口和服务。一般来说,关闭你实际不使用的端口。
|
||||
2. 留意不常见的端口号,认识了解在你系统上使用的合法端口。
|
||||
3. 密切注意 SELinux 错误。有时你需要做的只是更新上下文,以匹配你对系统做的合法更改,但是要阅读错误警告,以确保 SELinux 提醒你的不是可疑或者恶意的活动。
|
||||
|
||||
如果你发现一个端口正在运行一个可疑的服务,或者你只是简单的想要关闭你不再使用的端口,你可以遵从以下这些步骤,通过防火墙规则手动拒绝端口访问:
|
||||
|
||||
如果你在使用 `firewall-cmd` ,运行这些命令:
|
||||
|
||||
```
|
||||
$ sudo firewall-cmd –remove-port=<port number>/tcp
|
||||
$ sudo firewall-cmd –runtime-to-permanent
|
||||
```
|
||||
|
||||
如果你在使用 UFW,运行以下的命令:
|
||||
|
||||
```
|
||||
$ sudo ufw deny <port number>
|
||||
```
|
||||
|
||||
下一步,使用 `systemctl` 来停止这个服务:
|
||||
|
||||
```
|
||||
$ systemctl stop <service>
|
||||
```
|
||||
|
||||
### 理解 netstat
|
||||
|
||||
`netstat` 是一个快速收集你的服务器网络连接信息的有用工具。定期网络监测是了解你的系统的重要组成部分,对帮助你保持你的系统安全有着重要意义。将这一步纳入你的日常管理中,你可以使用类似 `netstat` 或者 `ss` ,以及 [Nmap 等开源端口扫描器或者 Wireshark 等嗅探器][7] ,它们都允许设定 [计划任务][8]。
|
||||
|
||||
随着服务器存储了大量的个人数据,确保个人服务器的安全日益重要。通过了解你的服务器怎样连接到互联网,你可以降低你的机器的风险,同时你仍可以在数字时代大量的连接中获得益处。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/linux-network-security-netstat
|
||||
|
||||
作者:[Sahana Sreeram][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/sahanasreeram01gmailcom
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/rack_server_sysadmin_cloud_520.png?itok=fGmwhf8I (A rack of servers, blue background)
|
||||
[2]: https://opensource.com/article/21/4/securing-linux-servers
|
||||
[3]: https://opensource.com/article/19/11/introduction-monitoring-prometheus
|
||||
[4]: https://opensource.com/business/13/11/selinux-policy-guide
|
||||
[5]: http://sourceforge.net/projects/net-tools/
|
||||
[6]: https://opensource.com/article/21/3/grep-cheat-sheet
|
||||
[7]: https://redhat.com/sysadmin/troubleshoot-dhcp-nmap-tcpdump-and-wireshark
|
||||
[8]: https://opensource.com/article/22/2/redhat.com/sysadmin/nmap-scripting-engine
|
@ -0,0 +1,129 @@
|
||||
[#]: subject: "Read and Organize Markdown Files in Linux Terminal With Glow"
|
||||
[#]: via: "https://itsfoss.com/glow-cli-tool-markdown/"
|
||||
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "hwlife"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14457-1.html"
|
||||
|
||||
用 Glow 在 Linux 终端阅读和管理 Markdown 文件
|
||||
======
|
||||
|
||||

|
||||
|
||||
> Glow 是一个能让你在 Linux 终端渲染 Markdown 文件的命令行工具。你也可以用它来管理 Markdown 文件。
|
||||
|
||||
我喜欢 Markdown。虽然我不是一个专业的 Markdown 用户,但我几乎用 Markdown 写我的大部分文章。
|
||||
|
||||
如果你是我们的常客,你可能已经看到过 [Markdown 指南][1]、编辑器以及 Obsidian 之类的工具。我将再加个工具到这个名单中,它叫做 [Glow][2],并且不像之前涵盖的程序,Glow 能够让你在终端里阅读 Markdown 文件。
|
||||
|
||||
等等!难道不能在终端里使用 [阅读文本文件的常规 Linux 命令][3],如 `cat`、`less`,甚至是像 Vim 之类的编辑器来阅读 Markdown 文件吗?
|
||||
|
||||
当然可以。但它会原样显示所有的代码来显示原始的 Markdown 文件,而不是显示正确的格式化文本。
|
||||
|
||||
![Glow renders the Markdown file][4]
|
||||
|
||||
注意:Glow 不是一个编辑器。你不能用它去编写 Markdown 文本。
|
||||
|
||||
### Markdown 爱好者将会喜欢 Glow 的功能
|
||||
|
||||
Glow 可以用两种格式来使用:[命令行界面和终端用户界面][5]。
|
||||
|
||||
简单的对一个 Markdown 文件使用 Glow 命令将在屏幕上显示整个渲染后的内容。
|
||||
|
||||
```
|
||||
glow markdown_file
|
||||
```
|
||||
|
||||
![Markdown display with Glow][6]
|
||||
|
||||
这是很不错,但是 Glow 可以做的更好。它有额外的参数打开<ruby>终端用户界面<rt>terminal user interface</rt></ruby>(TUI)模式,并且允许你用它来做更多的事情。
|
||||
|
||||
你可以使用页面参数(`-p`)来在页面模式下显示渲染后的文本(类似 `less` 命令显示文本没有弄乱屏幕一样)。
|
||||
|
||||
```
|
||||
glow -p markdown_file
|
||||
```
|
||||
|
||||
在页面视图中,你可以使用 `less` 命令相同的方法,使用 `/` 键来搜索特定的文本。你可以按下`q` 键退出这个视图。
|
||||
|
||||
![Pager view similar to the less command][7]
|
||||
|
||||
不止这些。你可以使用 `-a` 选项,它将查找当前目录及子目录中的所有 Markdown 文件。
|
||||
|
||||
```
|
||||
glow -a
|
||||
```
|
||||
|
||||
你可以用方向键在屏幕上滚动文件。上下键向上和向下移动,左右键按照页数移动。
|
||||
|
||||
![With -a option, Glow finds and displays all Markdown files in current directory][8]
|
||||
|
||||
你可以查看显示在底部的帮助选项。在这个视图中,查找选项允许你根据文件名查找文件(不是它们的内容)。
|
||||
|
||||
![You can search files by their name][9]
|
||||
|
||||
这里也有标签。当然,你可以通过 `Tab` 键在标签中来回移动。
|
||||
|
||||
<ruby>隐藏<rt>stashed</rt></ruby>标签像一个书签。当你浏览文件或是查看它们的内容时,你可以按下 `s` 键来创建一个隐藏标签(书签)。这个书签将只会在当前目录下可见。
|
||||
|
||||
你可以按下 `x` 键来移除书签(不是文件)或者按下 `m` 键来添加一个备注。
|
||||
|
||||
![You can bookmark files by stashing them with s key][10]
|
||||
|
||||
<ruby>新闻<rt>news</rt></ruby>标签显示更新日志和来自 Glow 开发者(们)的其他消息。
|
||||
|
||||
![The news tab shows messages from the developers][11]
|
||||
|
||||
当你已经找到你想找的文件,你可以通过按下回车键来查看它们。因为你在终端用户界面模式,所以你这里会有额外的键盘选项。可以通过按下 `?` 键来显示选项。
|
||||
|
||||
![You can view keyboard shortcuts by pressing the ? key][12]
|
||||
|
||||
### 在 Linux 上安装 Glow
|
||||
|
||||
Glow 可以在 Linux 和 macOS 上使用。你可以在 macOS 和 [Linux 上使用 Homebrew][13] 来安装它,然而,我建议你在这里使用 Linux 安装包。
|
||||
|
||||
Glow 在 Void、Solus 和 Arch Linux 的仓库里是可用的。你可以用它们的包管理器来安装它们。
|
||||
|
||||
在基于 Arch 的发行版上,使用:
|
||||
|
||||
```
|
||||
sudo pacman -S glow
|
||||
```
|
||||
|
||||
对于 Ubuntu、Debian、Fedora 和 SUSE,它们有用于在各种架构的 .DEB 和 .RPM 二进制包,你可以在它们的发布页找到它们。
|
||||
|
||||
> [下载用于其它 Linux 发行版的 Glow][14]
|
||||
|
||||
### 总结
|
||||
|
||||
总之,Glow 是在终端里的一个美化视图和管理 Markdown 的便利工具。像许多其他的命令行工具一样,它不是每个人都适合。如果你经常在终端,并喜欢 Markdown 文件,你可以尝试使用一下。当你用过后,请在评论区里分享你使用它的体验。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/glow-cli-tool-markdown/
|
||||
|
||||
作者:[Abhishek Prakash][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/abhishek/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/markdown-guide/
|
||||
[2]: https://github.com/charmbracelet/glow
|
||||
[3]: https://linuxhandbook.com/view-file-linux/
|
||||
[4]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/markdown-display-with-cat.png?resize=1572%2C962&ssl=1
|
||||
[5]: https://itsfoss.com/gui-cli-tui/
|
||||
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/markdown-display-with-glow.png?resize=800%2C490&ssl=1
|
||||
[7]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/pager-view-with-glow.png?resize=800%2C451&ssl=1
|
||||
[8]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/glow-collection.png?resize=800%2C451&ssl=1
|
||||
[9]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/find-files-in-glow.png?resize=800%2C451&ssl=1
|
||||
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/stash-feature-glow.png?resize=800%2C374&ssl=1
|
||||
[11]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/glow-news-tab.png?resize=800%2C451&ssl=1
|
||||
[12]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/display-help-in-file-view-in-glow.png?resize=800%2C490&ssl=1
|
||||
[13]: https://itsfoss.com/homebrew-linux/
|
||||
[14]: https://github.com/charmbracelet/glow/releases
|
@ -0,0 +1,103 @@
|
||||
[#]: subject: "How I configure Vim as my default editor on Linux"
|
||||
[#]: via: "https://opensource.com/article/22/2/configure-vim-default-editor"
|
||||
[#]: author: "David Both https://opensource.com/users/dboth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14475-1.html"
|
||||
|
||||
我如何在 Linux 上把 Vim 配置为默认编辑器
|
||||
======
|
||||
|
||||
> Vim 是我最喜爱的编辑器。对于那些默认使用其他编辑器的程序,我对系统所做的这些改变可以使得 Vim 成为它们默认编辑器。
|
||||
|
||||

|
||||
|
||||
我使用 Linux 大概有 25 年了,在那之前我还使用了几年的 Unix。在这段时间里,我对一些日常使用的工具形成了偏好。Vim 是我使用的最重要的工具之一。
|
||||
|
||||
我在 90 年代初学习 Solaris 时,就开始使用 Vi 了,因为有人告诉我,它在任何系统上都能使用。从我的经验来看,确实是这样。我也试过其他编辑器,它们都能够胜任工作。但是,对于我来说,Vim 的使用效果最好。我经常使用它,以至于形成了肌肉记忆,甚至我在使用其他编辑器时也会下意识地去按 Vim 的快捷键。
|
||||
|
||||
另外,我只是单纯地喜欢 Vim 而已。
|
||||
|
||||
许多配置文件使用的名字是 Vi 而不是 Vim,你可以运行 `vi` 命令。不过,`vi` 命令其实是 `vim` 命令的一个链接。
|
||||
|
||||
许多 Linux 工具使用的编辑器都是在模拟或是直接调用的 [Nano][2]、[Emacs][3] 或者 Vim。其他的一些工具允许用户(比如那些有着明确偏好的用户)使用他们喜欢的编辑器。举两个对我影响最大的例子,一个是 Bash 命令行,它默认使用 Emacs;另一个是 Alpine 文本模式的邮件客户端,它默认使用 Pico。事实上,Pico 是专门为 Pine 邮件客户端编写的,而 Pine 是 Alpine 的前身。
|
||||
|
||||
并非所有使用外部编辑器的程序都是可配置的。有些程序只使用开发者指定的编辑器。对于那些可配置的应用程序,有不同的方法来选择你喜欢的编辑器。
|
||||
|
||||
### 在 Linux 命令行中编辑
|
||||
|
||||
除了实际编辑文本文件外,另一个我经常使用,且和编辑密切相关的工具是 Bash shell。Bash 的默认编辑器是 Emacs。虽然我也用过 Emacs,但我肯定更喜欢 Vim。所以很多年前,我把 Bash 命令行的默认编辑器从 Emacs 换成了 Vim,这对我来说更舒服。
|
||||
|
||||
有很多种方法可以配置 Bash。你可以使用一个本地配置文件,比如 `/home/yourhomedirectory/.bashrc`,它只对你的用户账户进行默认修改,而不对同一系统的其他用户进行修改。我个人倾向于让这些改变成为全局性的,基本上就是我的个人账户和 root。如果你也想全局配置,你可以创建你自己的配置文件,并把它放在 `/etc/profile.d` 目录中。
|
||||
|
||||
我在 `/etc/profile.d` 中添加了一个名为 `myBashConfig.sh` 的文件。`/etc/profile.d` 目录中存放了所有已安装的 shell 的启动文件。在启动终端会话时,每个 shell 仅会根据文件名的扩展名,读取为其准备的启动文件。例如,Bash shell 只读取扩展名为 `.sh` 的文件。
|
||||
|
||||
```
|
||||
<截断>
|
||||
alias vim='vim -c "colorscheme desert" '
|
||||
# 把 vi 设置为 Bash 的默认编辑器
|
||||
set -o vi
|
||||
# 为所有检查 $EDITOR 变量的程序设置默认编辑器为 vi
|
||||
EDITOR=vi
|
||||
<截断>
|
||||
```
|
||||
|
||||
在这个全局 Bash 配置文件段中,`set -o vi` 将 Vi 设置为默认编辑器。这个 `set` 命令中的 `-o` 选项将 `vi` 定义为编辑器。为使配置生效,你需要关闭所有正在运行的 Bash 会话,并打开新的会话。
|
||||
|
||||
现在,你现在可以使用所有你熟悉的 Vim 命令,包括光标移动。只要按下 `Esc` 键就可以进入 Vim 编辑模式。我特别喜欢多次使用 `b` 将光标移回多个字的功能。
|
||||
|
||||
### 将 Vim 设置为其他程序的默认值
|
||||
|
||||
一些 Linux 命令行工具和程序会检查 `$EDITOR` 环境变量来决定使用哪个编辑器。你可以用下面的命令检查这个变量的当前值。我在一个新安装的虚拟机上运行过该命令,以查看默认的编辑器到底是什么。
|
||||
|
||||
```
|
||||
# echo $EDITOR
|
||||
/usr/bin/nano
|
||||
#
|
||||
```
|
||||
|
||||
默认情况下,检查 `$EDITOR` 环境变量的 Fedora 程序会使用 Nano 编辑器。在 `myBashConfig.sh` 中添加一行 `EDITOR=vi`(如上面的片段所示),可以将默认值改为 Vi(Vim)编辑器。然而,不是所有使用外部编辑器的命令行程序都会检查这个环境变量。
|
||||
|
||||
### 在 Alpine 中编辑电子邮件
|
||||
|
||||
几周前,我认为 Pico 不太适合作为我的电子邮件编辑器。我可以使用它,而且在从 Thunderbird 转到 [Alpine][4] 之后的一段时间内我也用了一段时间。但我发现,Pico 妨碍了我,我总是习惯使用 Vim 按键序列,这影响了我的工作效率。
|
||||
|
||||
我在 Alpine 的用户帮助中看到,默认编辑器是可以修改的。我决定把它改成 Vim。实际上这很容易做到。
|
||||
|
||||
在 Alpine 主菜单上,按 `S` 键进入设置,然后按 `C` 键进行配置。在 “<ruby>编辑器设置<rt>Composer Preferences</rt></ruby>” 部分,按 `X` 选择 “<ruby>启用外部编辑器命令<rt>Enable Alternate Editor Command</rt></ruby>” 和 “<ruby>隐式启用外部编辑器<rt>Enable Alternate Editor Implicitly</rt></ruby>” 项目。在往下滚动几页的 “<ruby>高级用户设置<rt>Advanced User Preferences</rt></ruby>” 部分,找到 `Editor 那一行。如果它还没有被修改的话,它应该是这样的:
|
||||
|
||||
```
|
||||
Editor = <No Value Set>
|
||||
```
|
||||
|
||||
用光标栏突出显示 `Editor` 这一行,然后按回车键来编辑。将 `<No Value Set>` 改为 `vim`,再按回车键,然后按 `E` 键退出,最后按 `Y` 键保存修改。
|
||||
|
||||
要用 Vim 编辑电子邮件,只需进入电子邮件正文,Vim 就会自动启动,就像 Pico 那样。所有我喜欢的编辑功能都还在,因为它实际上是在使用 Vim。甚至退出 Vim 的 `Esc :wq` 序列也是一样的。
|
||||
|
||||
### 总结
|
||||
|
||||
与其他编辑器相比,我更喜欢 Vim,对我的系统进行的这些改动后,那些默认使用其他编辑器的应用程序,将使用 Vim 来替代它们的默认编辑器。有些程序使用 `$EDITOR` 环境变量,因此你只需要做一次修改就够了。其他有用户配置选项的程序,如 Alpine,则必须为每个程序单独设置。
|
||||
|
||||
这种可以选择你喜欢的外部编辑器的能力,非常符合 Unix 哲学的宗旨:“每个程序都只做一件事,而且要做得出色”。既然已经有几个优秀的编辑器,为什么还要再写一个呢?而且它也符合 Linux 哲学的宗旨:“使用你最喜欢的编辑器”。
|
||||
|
||||
当然,你可以把你的默认文本编辑器改为 Nano、Pico、Emacs 或任何其他你喜欢的编辑器。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/configure-vim-default-editor
|
||||
|
||||
作者:[David Both][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/dboth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/laptop_screen_desk_work_chat_text.png?itok=UXqIDRDD (Person using a laptop)
|
||||
[2]: https://opensource.com/article/20/12/gnu-nano
|
||||
[3]: https://opensource.com/tags/emacs
|
||||
[4]: https://opensource.com/article/21/5/alpine-linux-email
|
@ -0,0 +1,129 @@
|
||||
[#]: subject: "Manage your calendar from the Linux terminal with the konsolekalendar command"
|
||||
[#]: via: "https://opensource.com/article/22/2/manage-calendar-linux-konsolekalender-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14486-1.html"
|
||||
|
||||
在 Linux 终端管理你的日历
|
||||
======
|
||||
|
||||
> KDE 很适合在 Linux 上进行基于终端的日程安排。konsolekalendar 命令让你从终端查看和管理 iCal 日历。
|
||||
|
||||

|
||||
|
||||
我是一个 [KDE 用户][2],多年来我一直在 Plasma 桌面上进行着看似无尽的探索。如果你在公开场合问我,我可能会声称自己对我每天使用的桌面了如指掌。但实际上,我只是刚刚触及到表面而已。似乎每天我都能学到一个新的 KDE 技巧,让我的生活变得更轻松或更有趣,我最新的发现是 `konsolekalendar` 命令,它让你从终端查看和管理 iCal 日历。
|
||||
|
||||
### Akonadi
|
||||
|
||||
Akonadi 项目是一个底层 KDE 框架,帮助 Plasma 桌面跟踪所有的个人信息管理器(PIM)数据。它主要是为开发者服务的,包括很多可以让程序员用来创建应用的库,通过这些程序你可以访问你的联系人、笔记、电子邮件、日历等等。Akonadi 中包括一些终端命令,比如 `akonadictl` 可以启动和停止 Akonadi 服务,但它们大多是为了排除故障。然而,`konsolekalendar` 是一个面向用户的命令,可以让你完全访问 Kontact 套件的所有数据,包括 KMail、Notes 和日历。
|
||||
|
||||
如果你正在运行 KDE 的 Plasma 桌面,那么你已经安装了 Kontact 套件。
|
||||
|
||||
![Kontact UI][3]
|
||||
|
||||
你也安装好了 Akonadi 和它的工具,所以你所需要的基于终端的日历完成了!
|
||||
|
||||
### 从终端查看你的日历
|
||||
|
||||
由于 [NextCloud][5] 和 [Radicale][6] 等项目的存在,你可以托管自己的 iCal 日历服务,或者你可能已经在流行的供应商(例如,Google)那里拥有一个 iCal 账户。当你使用 Kontact 管理日历时,你订阅了一个日历对象(用 Akonadi 的术语说是一个“<ruby>集合<rt>collection</rt></ruby>”)。当你对你的本地日历进行更新时,这些变化会被送回你的 iCal 服务器以同步你的日历服务器和客户端。
|
||||
|
||||
无论你是否使用过 Kontact 的日历功能,你在 Kontact 中都有一些默认的日历对象。你有一个叫**个人日历**和**生日和纪念日**的日历对象。
|
||||
|
||||
以下是如何显示当天的日历(默认为**个人日历**):
|
||||
|
||||
```
|
||||
$ konsolekalendar
|
||||
Date: Saturday, January 15, 2022
|
||||
10:00 AM - 11:00 AM
|
||||
Summary: Covid booster shot
|
||||
UID: 8d8a1e38-c88c-4d84-99e5-23...
|
||||
----------------------------------
|
||||
Date: Saturday, January 15, 2022
|
||||
12:00 PM - 01:00 PM
|
||||
Summary: Lunch
|
||||
UID: 7aa89a...
|
||||
----------------------------------
|
||||
Date: Saturday, January 15, 2022
|
||||
01:00 PM - 04:45 PM
|
||||
Summary: Afternoon coding
|
||||
UID: 9cde38b...
|
||||
----------------------------------
|
||||
Date: Saturday, January 15, 2022
|
||||
06:00 PM - 10:00 PM
|
||||
Summary: Planescape game
|
||||
UID: c73f7e98-722f-48a2-8006-66...
|
||||
----------------------------------
|
||||
```
|
||||
|
||||
### 添加一个事件
|
||||
|
||||
要查看你订阅的所有日历,请使用 `--list-calendars` 选项:
|
||||
|
||||
```
|
||||
$ konsolekalendar --list-calendars
|
||||
----------------------------------
|
||||
3 - (Read only) Birthdays & Anniversaries
|
||||
11 - Personal Calendar
|
||||
60 - (Read only) Open Invitations
|
||||
61 - (Read only) Declined Invitations
|
||||
66 - Dnd
|
||||
67 - Work
|
||||
68 - Museum
|
||||
```
|
||||
|
||||
左边的数字是日历的 ID。要添加一个事件到一个特定的日历,请使用 `--calendar` 选项,然后是日历 ID:
|
||||
|
||||
```
|
||||
$ konsolekalendar --add --calendar 66 \
|
||||
--date 2022-01-16 \
|
||||
--time 20:00 --end-time 23:59 \
|
||||
--summary "Another game" \
|
||||
--description "Remember to bring dice" \
|
||||
Success: "Another game" inserted
|
||||
```
|
||||
|
||||
### 删除一个事件
|
||||
|
||||
你也可以删除事件。每个事件都有一个唯一的 ID(UID),在每个事件列表的底部提供:
|
||||
|
||||
```
|
||||
$ konsolekalendar --list
|
||||
Date: Saturday, January 15, 2022
|
||||
06:00 PM - 10:00 PM
|
||||
Summary: Planescape game
|
||||
UID: c73f7e98-722f-48a2-8006-66aa8ddcf789
|
||||
```
|
||||
|
||||
要删除一个事件,请使用 `--delete` 选项,同时使用 `--uid` 选项:
|
||||
|
||||
```
|
||||
$ konsolekalendar --delete \
|
||||
--uid c73f7e98-722f-48a2-8006-66aa8ddcf789
|
||||
```
|
||||
|
||||
### 终端中的 Akonadi
|
||||
|
||||
你用 `konsolekalendar` 所做的一切都会立即在 Akonadi 中执行,并在 Kontact 中得到同样快的反映。使用一个并不意味着你必须放弃另一个。由于它们共享 Akonadi 后端,两者查看和编辑相同的数据。`konsolekalendar` 命令是一项正在进行的工作。未来的计划包括与 Kontact 的笔记和日记部分的整合,而且还有很多比本文所涉及的更多的选项。如果你在使用 KDE 桌面,试试 `konsolekalendar`,体验一下终端的 PIM!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/manage-calendar-linux-konsolekalender-kde
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/calendar.jpg?itok=jEKbhvDT (Calendar close up snapshot)
|
||||
[2]: https://opensource.com/article/17/5/7-cool-kde-tweaks-will-improve-your-life
|
||||
[3]: https://opensource.com/sites/default/files/uploads/kontact.jpg (Kontact UI)
|
||||
[4]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[5]: https://opensource.com/article/21/1/nextcloud-productivity
|
||||
[6]: https://radicale.org/v3.html
|
@ -3,14 +3,16 @@
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14453-1.html"
|
||||
|
||||
使用 KDE 的 Ark 在 Linux 桌面上归档文件
|
||||
======
|
||||
在 KDE 上创建、检查和扩展压缩的档案。
|
||||
![手工将 Linux 的文件夹放进抽屉里][1]
|
||||
|
||||
> 在 KDE 上创建、检查和扩展压缩的档案。
|
||||
|
||||

|
||||
|
||||
当我完成一个项目时,我经常喜欢把为这个项目创建的所有文件放到一个档案中。这不仅可以 [节省空间][2],而且可以让这些文件远离我的视线,防止它们在我使用 [find][3] 和 [grep][4] 搜索我当前想要的文件时作为结果出现。一旦文件被归档,它们就会被你的文件系统视为一个单独的对象,这意味着你不能像浏览普通文件夹那样来浏览它们。你可以把它们解压缩来列出档案的内容,或者打开一个终端,运行适当的归档命令,比如 [tar][5] 命令。又或者你可以使用一个像 Ark 这样的应用程序来列出、预览、修改和管理你的档案。
|
||||
|
||||
@ -18,15 +20,13 @@
|
||||
|
||||
KDE Plasma 桌面预装了 Ark,你也可以从软件包管理器中获取。在 Fedora、Mageia 和类似的系统中,你可以运行:
|
||||
|
||||
|
||||
```shell
|
||||
```
|
||||
$ sudo dnf install ark
|
||||
```
|
||||
|
||||
在 Debian、Elementary 和类似的系统中,你可以运行:
|
||||
|
||||
|
||||
```shell
|
||||
```
|
||||
$ sudo apt install ark
|
||||
```
|
||||
|
||||
@ -36,7 +36,7 @@ $ sudo apt install ark
|
||||
|
||||
熟悉归档的最好方法就是自己创建一个档案,然后探索它。所有的这些都可以通过 Ark 来完成。
|
||||
|
||||
首先,从你的应用程序菜单中启动 Ark,然后进入<ruby>“归档”<rt>Archive</rt></ruby>菜单,选择<ruby>“新建”<rt>New</rt></ruby>。
|
||||
首先,从你的应用程序菜单中启动 Ark,然后进入“<ruby>档案<rt>Archive</rt></ruby>”菜单,选择“<ruby>新建<rt>New</rt></ruby>”。
|
||||
|
||||
![用 Ark 创建一个新的档案][8]
|
||||
|
||||
@ -54,23 +54,23 @@ Ark 不会自动创建空的档案,但在你设置好名称和位置后,只
|
||||
|
||||
归档有两个好处:合并和压缩。通过把文件添加到档案里,你将许多文件整合到了同一个地方。因为它们已经存在于档案中,所以,如果你想要摆脱这些文件的干扰,你完全以把原始的副本删除掉。
|
||||
|
||||
要查看你通过压缩文件节省了多少磁盘空间,你可以进入<ruby>“档案”<rt>Archive</rt></ruby>菜单,选择<ruby>“属性”<rt>Properties</rt></ruby>。它会显示出文件在归档前/后的大小,同时还有很多其他有用的元数据。
|
||||
要查看你通过压缩文件节省了多少磁盘空间,你可以进入“<ruby>档案<rt>Archive</rt></ruby>”菜单,选择“<ruby>属性<rt>Properties</rt></ruby>”。它会显示出文件在归档前/后的大小,同时还有很多其他有用的元数据。
|
||||
|
||||
![档案的属性和元数据][11]
|
||||
|
||||
(图源 Seth Kenlon / [CC BY-SA 4.0][9])
|
||||
|
||||
Ark 可以做的事情还有很多,但是现在先关闭 Ark,假装你已经使用完毕。你的档案会在你声明保存它的位置(在这个例子中,它的名字是`example.tar.gz`,位于我的用户主目录中。)
|
||||
Ark 可以做的事情还有很多,但是现在先关闭 Ark,假装你已经使用完毕。你的档案会存放在你声明保存它的位置(在这个例子中,它的名字是 `example.tar.gz`,位于我的用户主目录中。)
|
||||
|
||||
### 查看档案中的文件
|
||||
|
||||
Ark 可以打开任何档案,就像打开一个普通的文件夹一样。要在 Ark 中打开一个档案,只需在文件管理器中左键点击它(单击/双击,取决于你的系统设置)。你也可以右键点击它,并选择<ruby>“用 Ark 打开”<rt>Open with Ark</rt></ruby>。
|
||||
Ark 可以打开任何档案,就像打开一个普通的文件夹一样。要在 Ark 中打开一个档案,只需在文件管理器中左键点击它(单击/双击,取决于你的系统设置)。你也可以右键点击它,并选择“<ruby>用 Ark 打开<rt>Open with Ark</rt></ruby>”。
|
||||
|
||||
一旦档案在 Ark 中打开,你就可以在文件管理器中进行大部分操作,包括删除文件、添加新文件、预览文件内容等等。
|
||||
|
||||
### 从档案中删除文件
|
||||
|
||||
有时候,你会把一个文件放到一个你不需要的档案中。此时,当你想从档案中删除一个文件时,你可以右键单击该文件并选择<ruby>“删除”<rt>Delete</rt></ruby>。
|
||||
有时候,你会把一个文件放到一个你不需要的档案中。此时,当你想从档案中删除一个文件时,你可以右键单击该文件并选择“<ruby>删除<rt>Delete</rt></ruby>”。
|
||||
|
||||
![右键菜单][12]
|
||||
|
||||
@ -78,13 +78,13 @@ Ark 可以打开任何档案,就像打开一个普通的文件夹一样。要
|
||||
|
||||
### 向档案中添加文件
|
||||
|
||||
向档案中添加文件是更加容易的。你只需从文件管理器中把该文件拖拽到 Ark 里。另外,你也可以选择 Ark 右键菜单中<ruby>“添加文件”<rt>Add Files</rt></ruby>。
|
||||
向档案中添加文件是更加容易的。你只需从文件管理器中把该文件拖拽到 Ark 里。另外,你也可以选择 Ark 右键菜单中“<ruby>添加文件<rt>Add Files</rt></ruby>”。
|
||||
|
||||
### 从档案中提取单个文件
|
||||
|
||||
当处理一个档案时,许多人会选择解开整个档案,然后寻找他们真正需要的一两个文件。对于小档案,这勉强说得过去,但对于大档案来说,这会占用你大量的时间和磁盘空间,哪怕只是暂时的。
|
||||
当处理一个档案时,许多人会选择解开整个档案,然后寻找他们真正需要的一两个文件。对于小型档案,这勉强说得过去,但对于大型档案来说,这会占用你大量的时间和磁盘空间,哪怕只是暂时的。
|
||||
|
||||
有了 Ark,你可以只提取你需要的文件,只要把它们从 Ark 窗口拖到你要保存的地方就行。另外,你也可以选择右键菜单中的<ruby>“提取”<rt>Extract</rt></ruby>。
|
||||
有了 Ark,你可以只提取你需要的文件,只要把它们从 Ark 窗口拖到你要保存的地方就行。另外,你也可以选择右键菜单中的“<ruby>提取<rt>Extract</rt></ruby>”。
|
||||
|
||||
### 预览档案中的文件
|
||||
|
||||
@ -107,7 +107,7 @@ via: https://opensource.com/article/22/2/archives-files-linux-ark-kde
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][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,43 +3,44 @@
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14450-1.html"
|
||||
|
||||
如何在 KDE Plasma 桌面上配置任务切换器
|
||||
======
|
||||
本指南解释了如何在 KDE Plasma 桌面中配置任务切换器
|
||||
|
||||
> 本指南解释了如何在 KDE Plasma 桌面中配置任务切换器。
|
||||
|
||||
![Configure KDE Plasma Task Switcher][1]
|
||||
|
||||
### 什么是任务切换器?
|
||||
|
||||
[任务切换器][2]是一个帮助你在当前桌面会话中切换打开的窗口或应用的组件。通常,当你按下 `Alt+Tab `时,它会显示为一个图标列表。
|
||||
[任务切换器][2] 是一个帮助你在当前桌面会话中切换打开的窗口或应用的组件。通常,当你按下 `Alt+Tab` 时,它会显示为一个图标列表。
|
||||
|
||||
![Thumbnail Grid Task Switcher][3]
|
||||
|
||||
而这在 KDE Plasma 中是可以根据你的具体需要高度配置的。你可以定制它的外观,图标的排序,相同应用的分组等等。
|
||||
而这在 KDE Plasma 中是可以根据你的具体需要高度配置的。你可以定制它的外观、图标的排序、相同应用的分组等等。
|
||||
|
||||
### 改变 KDE Plasma 的任务切换器
|
||||
### 改变 KDE Plasma 的任务切换器选项
|
||||
|
||||
打开“系统设置”。在“工作区”组下,点击“窗口管理 > 任务切换器”。
|
||||
打开“<ruby>系统设置<rt>System Settings</rt></ruby>”。在“<ruby>工作区<rt>Workspace</rt></ruby>”组下,点击“<ruby>窗口管理<rt>Window Management</rt></ruby> > <ruby>任务切换器<rt>Task Switcher</rt></ruby>”。
|
||||
|
||||
在主标签上,可视化部分有一个下拉菜单。这个下拉菜单包含几个任务切换器选项,你可以尝试一下。
|
||||
在<ruby>主<rt>Main</rt></ruby>标签上,<ruby>可视化<rt>Visualisation</rt></ruby>部分有一个下拉菜单。这个下拉菜单包含几个任务切换器选项,你可以尝试一下。
|
||||
|
||||
选择你喜欢的选项并点击预览按钮。如果你感到满意,那么你可以点击应用。
|
||||
选择你喜欢的选项并点击“预览”按钮。如果你感到满意,那么你可以点击“<ruby>应用<rt>Apply</rt></ruby>”按钮。
|
||||
|
||||
![Configure Task Switcher in KDE][4]
|
||||
|
||||
这就是你该如何改变 KDE Plasma 桌面中的任务切换器。
|
||||
这就是如何改变 KDE Plasma 桌面中的任务切换器的方法。
|
||||
|
||||
### 替代切换器
|
||||
|
||||
替代选项卡也包含同样的任务切换器的可视化选项。然而,你可以为替代方案配置集设置 Alt+Tab 以外的不同组合键。这样,你可以同时体验两组不同组合的任务切换器。
|
||||
<ruby>替代<rt>Alternative</rt></ruby>选项卡也包含同样的任务切换器的可视化选项。然而,你可以为替代方案配置集设置 `Alt+Tab` 以外的不同组合键。这样,你可以同时体验两组不同组合的任务切换器。
|
||||
|
||||
### 可视化
|
||||
|
||||
截至编写本指南时的 [KDE Plasma 5.24][5],不同的任务切换器有以下选项。
|
||||
截至编写本指南时的 [KDE Plasma 5.24][5],有以下不同的任务切换器:
|
||||
|
||||
* Breeze
|
||||
* Breeze Dark
|
||||
@ -54,11 +55,9 @@
|
||||
* Thumbnail Grid
|
||||
* Thumbnails
|
||||
|
||||
|
||||
|
||||
下面是上述任务切换器的截图。
|
||||
|
||||
![Various Task Switcher][6]
|
||||
![][6]
|
||||
|
||||
![][7]
|
||||
|
||||
@ -80,7 +79,7 @@
|
||||
|
||||
### 多显示器或显示屏中的任务切换器
|
||||
|
||||
如果你有一个多显示器或显示屏设置,你不需要做任何事情。任务切换器将根据你的鼠标光标所在的位置显示出来。这意味着它将显示在活动显示器上。
|
||||
如果你有一个多显示器(显示屏)环境,你不需要做任何事情。任务切换器将根据你的鼠标光标所在的位置显示出来。这意味着它将显示在活动显示器上。
|
||||
|
||||
### 任务切换器与相同的应用分组
|
||||
|
||||
@ -88,25 +87,21 @@
|
||||
|
||||
![Same application grouping][16]
|
||||
|
||||
但你可能想知道如果只出现一次,如何在相同的应用实例中切换。你可以通过任务切换器中的 `Alt+``(默认值)来切换相同的应用。下面是你可以根据你的需要和工作来改变的选项。
|
||||
但你可能想知道如果只出现一次,如何在相同的应用实例中切换。你可以通过任务切换器中的 `Alt+\``(默认值)来切换相同的应用。下面是你可以根据你的需要和工作来改变的选项。
|
||||
|
||||
### 下载更多的任务切换器
|
||||
|
||||
如果你对上述所有的选项不满意,你可以通过相同的设置窗口从KDE商店下载更多的任务切换器。
|
||||
如果你对上述所有的选项不满意,你可以通过同一个设置窗口从 KDE 商店下载更多的任务切换器。
|
||||
|
||||
点击上图标注 #5 的 Get New Task Switchers ,选择你最喜欢的一个。然后点击安装。完成安装后,回到主设置窗口,应用新下载的可视化。
|
||||
点击上图标注 ❺ 的 “<ruby>获取新的任务切换器<rt>Get New Task Switchers</rt></ruby>” ,选择你最喜欢的一个。然后点击“<ruby>安装<rt>Install</rt></ruby>”。完成安装后,回到主设置窗口,应用新下载的可视化。
|
||||
|
||||
记住,这些额外的项目是用户贡献的,在某些情况下可能会破坏你当前的主题。所以要慎重使用。在任何时候,你都可以点击重置按钮,回到原来的任务切换器视觉效果。
|
||||
记住,这些额外的项目是用户贡献的,在某些情况下可能会破坏你当前的主题,所以要慎重使用。在任何时候,你都可以点击重置按钮,回到原来的任务切换器视觉效果。
|
||||
|
||||
### 结束语
|
||||
|
||||
我希望这篇指南能帮助你在K DE Plasma 桌面上设置一个漂亮而有效的任务切换器。正如我所说的,自定义选项很多,你可以随意发挥。
|
||||
我希望这篇指南能帮助你在 KDE Plasma 桌面上设置一个漂亮而有效的任务切换器。正如我所说的,自定义选项很多,你可以随意发挥。
|
||||
|
||||
干杯。
|
||||
|
||||
* * *
|
||||
|
||||
我们带来最新的技术、软件新闻和重要的东西。通过 [Telegram][17]、[Twitter][18]、[YouTube][19] 和 [Facebook][20] 保持联系,永远不会错过任何更新!
|
||||
感谢阅读。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -115,7 +110,7 @@ via: https://www.debugpoint.com/2022/02/configure-task-switcher-kde/
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][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/) 荣誉推出
|
||||
|
@ -0,0 +1,117 @@
|
||||
[#]: subject: "Nautilus File Manager Looks Amazing with GTK4 and Libadwaita – A Deep Dive"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/gnome-files-43/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14442-1.html"
|
||||
|
||||
GTK4 和 Libadwaita 让 GNOME 43 的文件管理器看起来很出色
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 我们测试了 GNOME “<ruby>文件<rt>Files</rt></ruby>” v43 的开发版本,在这里将向你深入披露其外观、功能和性能的细节。
|
||||
|
||||
GNOME <ruby>文件<rt>Files</rt></ruby>(以前的 Nautilus)也许是当今 GNOME 生态空间中使用最多的桌面应用。而且,自其首次发布以来,它从未接受过什么大修,而其他的 GNOME 应用乃至桌面本身都转移到了一个较新的技术栈。
|
||||
|
||||
现在一切都变了。GNOME 开发者正在为整个桌面和 “文件” 采用 GTK4 和 libadwaita。
|
||||
|
||||
GNOME “文件” v43 将在 2022 年晚些时候与 GNOME 43 一起发布,必将令人印象深刻。这个急需的 [重制][1] 带来了原生的深色模式、很棒的 UI 以及出色的 libadwaita 触控和 GTK4 性能提升。
|
||||
|
||||
### GNOME “文件” v43
|
||||
|
||||
我们安装了 GNOME “文件” v43 的 Flatpak 开发版本,下面是我们的发现。
|
||||
|
||||
第一印象,你应该注意到漂亮的 UI 触控,这要感谢 Libadwaita。关闭按钮是漂亮的圆形,而地址栏、选择高亮和整个文件窗口都有适当的间距和圆角。
|
||||
|
||||
所有的组件都没有出现边框高亮线。
|
||||
|
||||
下面是 v43(左)和 v42(右)的深浅模式的快速比较。
|
||||
|
||||
![GNOME Files 43 and 42 – Light Mode Comparison][2]
|
||||
|
||||
![GNOME Files 43 and 42 – Dark Mode Comparison][3]
|
||||
|
||||
地址栏的文件夹分隔符保持不变。然而,字体却有了些许润色。地址栏的上下文菜单改变了,“<ruby>在终端打开<rt>Open in Terminal</rt></ruby>”选项没有了。取而代之的是 “<ruby>在其它应用中打开<rt>Open in Other application</rt></ruby>” 菜单。引入了一个新的选项 “<ruby>创建链接<rt>Create Link</rt></ruby>”。我想许多用户会怀念 “在终端打开” 的选项。
|
||||
|
||||
> 3/3 更新(感谢 Rashid):“在终端打开” 选项是 Nautilus 扩展包的一部分。因此,Flatpak 构建版不能“看到”它。因此,它本身并没有被删除。
|
||||
|
||||
![New option in address bar menu][4]
|
||||
|
||||
另一个重要的变化是你应该注意到两个主工具条菜单:a)视图按钮和 b)汉堡主菜单。这些上下文菜单项显示了菜单项及键盘快捷键。这也使它们看起来更显眼一些。
|
||||
|
||||
![The Hamburger menu now have keyboard shortcuts][5]
|
||||
|
||||
文件夹的上下文菜单现在有一个向上的小箭头,指向从它弹出的文件夹。文件夹的右键上下文菜单以组为单位组织得很好。例如,打开动作是分组的,而剪切、复制、粘贴在上下文菜单中以横杠的形式明显分开。
|
||||
|
||||
![Context Menu for folder changes][6]
|
||||
|
||||
我还注意到一个新的选项 “<ruby>粘贴到该文件夹<rt>Paste into the folder</rt></ruby>”,这个很好。
|
||||
|
||||
Nautilus 搜索几乎与 “文件” v42 相同,只是在 “文件” v43 中你可以通过创建日期/时间搜索。
|
||||
|
||||
~~然而,我注意到一个令人兴奋的变化。上下文菜单中的文件关联的应用名称被删除了。例如,如果你今天试图在 “文件” v42 中打开一个文本文件,它在上下文菜单中显示与之相关的应用名称。在 “文件” v43 中,它只显示 “打开”。我觉得这种改变是不必要的。之前的情况更好。~~
|
||||
|
||||
> 3/3 更新(感谢 Rashid):当我在试用 v43 的沙盒 Flatpak 版本时,它并没有看到系统关联。所以,这不是一个变化。但是,我又想知道,如果有人试图真正使用 Flatpak 版本怎么办。
|
||||
|
||||
![A subtle change in context menu for file association][7]
|
||||
|
||||
所以,这就是我在这个应用的新 GTK4 版本中发现的整体变化。但它看起来不错?不是吗。此外,如果你是直接从 Ubuntu 20.04 LTS 来的,其中包含 “文件” 3.38,那么也许你的体验会是“哇”!如果你将 “文件” v43 与 “文件” v3.38 进行比较,大部分区域都发生了变化。对于这些用户来说,这将是一个相当不错的体验。
|
||||
|
||||
你应该记住,v43 仍在开发中,因此在未来最终发布时,可能会发生变化。
|
||||
|
||||
### 愿望清单
|
||||
|
||||
如果比较各种 Linux 文件管理器,其他的文件管理器的选项远多于今天的 GNOME “文件”。
|
||||
|
||||
是这样的。
|
||||
|
||||
例如,Nemo 或 Dolphin - 这两个最好的文件管理器在各方面都胜过 “文件”。比较一下功能,GNOME “文件” 没有一些流行的功能:
|
||||
|
||||
* 双面板或分割视图
|
||||
* 从上下文菜单中打开一个根文件夹是困难的
|
||||
* 一个用于文件夹浏览的向上箭头
|
||||
* 没有从上下文菜单中创建一个新文件(文本、电子表格等)的选项
|
||||
* 更多的排序和搜索功能
|
||||
|
||||
我们希望这些功能能尽快出现在 GNOME “文件” 中。
|
||||
|
||||
### 何时能用
|
||||
|
||||
如上所述,这个版本的 GNOME “文件” 将与 GNOME 43 一起提供。因此,从 Linux 发行计划的角度来看,你应该在 2022 年 10 月的 Ubuntu 22.10 和今年晚些时候的 Fedora 37 上拥有它。
|
||||
|
||||
不幸的是,[Ubuntu 22.04 LTS][9](Jammy Jellyfish)和带有 [GNOME 42][10] 的 [Fedora 36][11] 将不会有 GNOME “文件” 43。主要原因是时间表不匹配,而且它是要移植到 GTK4 和彻底测试的复杂应用之一。然而,大部分上述的内部功能仍然会在 “文件” 42 中。但它可能缺少漂亮的 UI 变化和主题。
|
||||
|
||||
尽管如此,我相信这个流行的文件管理器看起来不错,当它发布时,用户应该会很兴奋地使用它。让我知道你对 GNOME “文件” 43 的新变化的看法,请在下面的评论框中留言。
|
||||
|
||||
加油!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/gnome-files-43/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://gitlab.gnome.org/GNOME/nautilus
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/03/GNOME-Files-43-and-42-Light-Mode-Comparison-1024x502.jpg
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/03/GNOME-Files-43-and-42-Dark-Mode-Comparison-1024x493.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/03/New-option-in-address-bar-menu-1024x267.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/03/The-Hamburger-menu-now-have-keyboard-shortcuts-1024x331.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2022/03/Context-Menu-for-folder-changes-1024x560.jpg
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/03/A-subtle-change-in-context-menu-for-file-association-1024x524.jpg
|
||||
[9]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[10]: https://www.debugpoint.com/2021/12/gnome-42/
|
||||
[11]: https://www.debugpoint.com/2022/02/fedora-36/
|
||||
[12]: https://t.me/debugpoint
|
||||
[13]: https://twitter.com/DebugPoint
|
||||
[14]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[15]: https://facebook.com/DebugPoint
|
@ -3,11 +3,11 @@
|
||||
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "aREversez"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14485-1.html"
|
||||
|
||||
Ubuntu vs Arch: 孰优孰劣?
|
||||
Ubuntu vs Arch:孰优孰劣?
|
||||
======
|
||||
|
||||
Ubuntu 与 Arch Linux 为用户提供了完全不同的桌面体验。
|
||||
@ -18,35 +18,35 @@ Ubuntu 与 Arch Linux 为用户提供了完全不同的桌面体验。
|
||||
|
||||
在这篇文章中,我将从各方面介绍 Ubuntu 和 Arch Linux 的不同之处,希望可以帮助你解决这一选择难题。
|
||||
|
||||
![][2]
|
||||

|
||||
|
||||
### 1、目标用户
|
||||
|
||||
Arch Linux 旨在为那些喜欢鼓捣喜欢折腾的用户提供 **DIY** 体验,自定义 Linux 系统的各种元素。
|
||||
Arch Linux 旨在为那些喜欢鼓捣、喜欢折腾的用户提供 **DIY** 体验,自定义 Linux 系统的各种元素。
|
||||
|
||||
比如,构建软件包,用以自定义桌面。
|
||||
比如,构建软件包,以及自定义桌面。
|
||||
|
||||
这种开箱即用的体验取决于 [安装设置了 Arch Linux][3] 的用户。所以,Arch Linux 可以轻易迎合寻找不同包以及桌面环境等元素的用户。
|
||||
Arch Linux 的上手体验取决于 [安装设置它][3] 的用户。所以,Arch Linux 可以轻易迎合寻找不同包以及桌面环境等元素的用户。
|
||||
|
||||
而另一方面,Ubuntu 的目标用户是那些想使用**操作方便,预先配置好的** Linux 系统。
|
||||
而另一方面,Ubuntu 的目标用户是那些想使用 **操作方便,预先配置好的** Linux 系统。
|
||||
|
||||
这类用户希望系统预装基础工具,确保一切都会按照预期进行。换言之,他们想要的是一个理想的系统,无需担心设置问题。
|
||||
这类用户希望系统预装必要的工具,确保一切都会按照预期进行。换言之,他们想要的是一个理想的系统,无需担心设置问题。
|
||||
|
||||
Ubuntu 也不希望用户花费大把时间来提升自己的体验,所以它选择以满足绝大多数用户的需求为基准。
|
||||
|
||||
### 2、安装
|
||||
### 2、系统安装
|
||||
|
||||
不得不说,Ubuntu 提供了简洁直观的安装方式,因为它提供的 GUI 大大方便了软件安装。
|
||||
不得不说,Ubuntu 提供了简洁直观的安装方式,因为它提供的图形用户界面大大方便了安装。
|
||||
|
||||
![][4]
|
||||
|
||||
如果有需要,你甚至可以 [在 Ubuntu 服务器上安装一个 GUI][5]。
|
||||
如果有需要,你甚至可以 [在 Ubuntu 服务器上安装一个图形用户界面][5]。
|
||||
|
||||
但要安装 Arch Linux,你就不得不使用终端(命令行)。
|
||||
|
||||
![][6]
|
||||
|
||||
还好,[Arch Linux 现在有了安装指导][7] 可以参考,这使得通过终端安装 Arch Linux 变得更加容易了。
|
||||
还好,[Arch Linux 现在有了引导式的安装程序][7],这使得通过终端安装 Arch Linux 变得更加容易了。
|
||||
|
||||
![][8]
|
||||
|
||||
@ -56,41 +56,41 @@ Ubuntu 也不希望用户花费大把时间来提升自己的体验,所以它
|
||||
|
||||
![][9]
|
||||
|
||||
Ubuntu 旨在**方便用户**。为此,Ubuntu 项目的领导者 Canonical 公司提供了自定义的 GNOME 桌面环境体验。
|
||||
Ubuntu 旨在 **方便用户**。为此,Ubuntu 项目的领导者 Canonical 公司提供了自定义的 GNOME 桌面环境体验。
|
||||
|
||||
尽管你可能无法像在 KDE Plasma 上那样自由地定制桌面,你依然可以有很多其他选择。感兴趣的话,可以点击了解 [KDE vs GNOME][10]。
|
||||
|
||||
Ubuntu 也会定期收集用户体验反馈信息,尽可能地帮助用户提高工作效率。
|
||||
|
||||
Arch Linux **更加关注功能** 以及其他技术方面,而不是用户的桌面体验。用户体验完全取决于用户在安装 Arch Linux 时是如何设置的。
|
||||
Arch Linux **更加注重功能** 以及其他技术方面,而不是用户的桌面体验。用户体验完全取决于用户在安装 Arch Linux 时是如何设置的。
|
||||
|
||||
使用 Arch Linux 时,你能依赖的只有桌面环境提供的开箱即用工具,没有为用户量身定制的改进。如果你想体验一些不一样的东西,你就必须对系统加以调整。
|
||||
|
||||
![Arch Linux with GNOME][11]
|
||||
|
||||
不过,好在 Arch Linux 允许用户选择 KDE Plasma, GNOME, 或者 [其他桌面环境][12],所以你可以充分利用这一优势,根据自己的喜好来选择桌面环境。
|
||||
不过,好在 Arch Linux 允许用户选择 KDE Plasma、GNOME 或者 [其他桌面环境][12],所以你可以充分利用这一优势,根据自己的喜好来选择桌面环境。
|
||||
|
||||
不仅如此,在安装 Arch Linux 时,你还可以选择平铺式窗口管理器。
|
||||
|
||||
总体来说,如果使用 Ubuntu,你的桌面体验和其他用户的体验别无二致,因为 Ubuntu 可以自定义的元素极少。
|
||||
|
||||
相反,如果使用 Arch Linux,你就可以**自由定义桌面体验**。但请注意,这可能只适合 Linux 老手,如果你刚开始使用 Linux,恐怕做起来比较困难。
|
||||
相反,如果使用 Arch Linux,你就可以 **自由定义桌面体验**。但请注意,这可能只适合 Linux 老手,如果你刚开始使用 Linux,恐怕做起来比较困难。
|
||||
|
||||
### 4、文件系统
|
||||
|
||||
大多数用户不会在意 Linux 发行版的文件系统。
|
||||
大多数用户不需要关心他们的 Linux 发行版所使用的文件系统。
|
||||
|
||||
因此,Ubuntu 坚持使用 **ext4** 作为文件系统。ext4 具有现代计算机所需的全部基本功能,是一种非常优秀的最常见的文件系统。
|
||||
|
||||
如果你不想使用 **ext4**,而想选择具备其他各种优势的文件系统,那么你可以考虑 Arch Linux。
|
||||
然而,如果你不想使用 **ext4**,而想选择具备其他各种优势的文件系统,那么你可以考虑 Arch Linux。
|
||||
|
||||
![][13]
|
||||
|
||||
你可以选择 btrfs, ext4, xfs, 或者 f2fs。针对这些文件系统的优势,本文不再详述,但是如果你选择 **ext4** 之外的文件系统,你需要确保知道自己要做些什么。
|
||||
你可以选择 btrfs、ext4、xfs 或者 f2fs。针对这些文件系统的优势,本文不再详述,但是如果你选择 **ext4** 之外的文件系统,请确保你知道自己在做什么。
|
||||
|
||||
### 5、软件生态
|
||||
|
||||
Ubuntu 支持的软件更多,因此 [绝大多数 Linux 主流发行版][14] 都是基于 Ubuntu 的。
|
||||
Ubuntu 支持的软件更多,这就是为什么 [大多数主流 Linux 发行版][14] 都是基于 Ubuntu 的。
|
||||
|
||||
![][15]
|
||||
|
||||
@ -102,31 +102,31 @@ Ubuntu 支持的软件更多,因此 [绝大多数 Linux 主流发行版][14]
|
||||
|
||||
如果你使用的是 Arch Linux,那么你也可以通过官方仓库安装许多软件。
|
||||
|
||||
可惜的是,相较于 Ubuntu,Arch Linux 可能不会得到一些软件开发者的官方支持。
|
||||
可惜的是,相较于 Ubuntu,一些应用开发者可能不会正式支持 Arch Linux。
|
||||
|
||||
此外,你会发现,Arch Linux [安装和管理软件包都需要使用 pacman][18]。pacman 是一个 GUI,用于软件安装与管理,依赖于你所选择安装的桌面环境。
|
||||
此外,你会发现,Arch Linux [安装和管理软件包都需要使用 pacman][18]。使用哪个图形界面的安装程序进行软件的安装和管理,取决于你所选择安装的桌面环境。
|
||||
|
||||
![][19]
|
||||
|
||||
举个例子,如果你安装的是 GNOME 桌面,你可以使用 GNOME 的软件中心;如果是 KDE Plasma 桌面,可以使用 Discover。
|
||||
举个例子,如果你安装的是 GNOME 桌面,你可以使用 GNOME 的 “软件” 应用;如果是 KDE Plasma 桌面,可以使用 “发现” 应用。
|
||||
|
||||
这些软件包管理器都不会内置 Snap 或 Flatpak,所以你只能根据需要自行安装。
|
||||
这些软件包管理器都不会内置 Snap 或 Flatpak 支持,所以你只能根据需要自行安装。
|
||||
|
||||
为了获取更多的软件,你可以使用 [AUR][20]。请注意,AUR 是一个以社区为主导的软件仓库,所以官方建议你不要完全依赖它。
|
||||
为了获取更多的软件,你可以使用 [AUR][20]。请注意,AUR 是社区构建的软件仓库,所以官方建议你不要完全依赖它。
|
||||
|
||||
![][21]
|
||||
|
||||
即便如此,AUR 也经常被看做是 Arch Linux 的优势之一,毕竟社区提供的软件包比 Ubuntu 提供的更为丰富。
|
||||
|
||||
你可以通过使用一些 [AUR 助手][22],提升体验质量。
|
||||
你可以通过使用一些 [AUR 辅助工具][22] 来提升体验质量。
|
||||
|
||||
总体来说,如果你想仅靠一个工具就能轻松安装并且管理软件,那么 Ubuntu 当属不二之选。
|
||||
|
||||
### 6、极简 vs 臃肿
|
||||
|
||||
极简还是臃肿,这完全取决于个人的偏好,因为在配置 Arch Linux 时,一切尽在你的掌握之中。所以你可以在满足需要的情况下,只安装最少数量的包。
|
||||
极简还是臃肿,这完全取决于个人的偏好,因为在配置 Arch Linux 时,一切尽在你的掌握之中。所以你可以在满足需要的情况下,只安装最少数量的包。
|
||||
|
||||
与之相反,Ubuntu 预装了许多软件。在一些人看来,这些软件都很实用。
|
||||
相比之下,Ubuntu 预装了许多软件。在一些人看来,这些软件都很实用。
|
||||
|
||||
![][23]
|
||||
|
||||
@ -142,13 +142,13 @@ Ubuntu 支持的软件更多,因此 [绝大多数 Linux 主流发行版][14]
|
||||
|
||||
就像前文所提到的,Arch Linux 允许你控制系统的一切,它赋予用户极大的自由度,让用户可以尽情定制体验。
|
||||
|
||||
这不仅仅局限于桌面环境或是平铺式窗口管理器。
|
||||
这不仅仅局限于桌面环境或是平铺式窗口管理器,而是更多。
|
||||
|
||||
你还可以选择自己喜欢的音频服务器,比如 PulseAudio 或者 pipewire。
|
||||
例如,你还可以选择自己喜欢的音频服务器,比如 PulseAudio 或者 pipewire。
|
||||
|
||||
你也可以选择特定的 Linux 内核,比如安全性更高的版本、能够提升用户体验的 Zen 内核或者某个 Linux 内核的长期支持版本。
|
||||
你也可以选择特定的 Linux 内核,比如提供了安全性更高的加固版本、能够提升用户体验的 Zen 内核或者某个长期支持版本的 Linux 内核。
|
||||
|
||||
不同于 Arch Linux,Ubuntu 一直坚持使用的 Linux 内核都是能够通过全面测试而且以 PulseAudio 作为默认音频服务器的(笔者写这篇文章时情况如此)。
|
||||
不同于 Arch Linux,Ubuntu 一直坚持使用经过全面测试的 Linux 内核,而且默认使用 PulseAudio 作为音频服务器(笔者写这篇文章时情况如此)。
|
||||
|
||||
但说到底,哪个能满足你的需求,哪个才是最好的。
|
||||
|
||||
@ -160,21 +160,21 @@ Ubuntu 拥有坚实的用户基础,可以提供广泛的社区支持。与其
|
||||
|
||||
你也可以在论坛(包括 [It’s FOSS 社区][26])发布问题,寻求帮助。
|
||||
|
||||
Arch Linux 用户比较少,所以不提供类似的社区支持。不过,ArchWiki 提供了几乎涉及 Arch Linux 各个方面的高质量技术文档,算是弥补了这一不足。
|
||||
Arch Linux 用户比较少,所以不提供类似的社区支持。不过,Arch Linux 的维基提供了几乎涉及各个方面的高质量技术文档,算是弥补了这一不足。
|
||||
|
||||
![arch wiki][27]
|
||||
|
||||
如果你想探索,[ArchWiki][28] 有着最丰富的技术文档。
|
||||
如果你想探索,[Arch Linux 维基][28] 有着最丰富的技术文档。
|
||||
|
||||
### 9、发布周期
|
||||
|
||||
Ubuntu 提供 [长期支持版本][29],每隔 5 年发布一次镜像更新,企业版则需要更长的时间。
|
||||
Ubuntu 提供 [长期支持版本][29],在五年或更长时间(针对企业)提供小的更新维护。
|
||||
|
||||
![][30]
|
||||
|
||||
Ubuntu 还提供了非长期支持版本,每 9 个月发布一次更新,每半年发布一个新版本。非长期支持版本适合那些想体验最新软件包与功能的用户,每次升级都可能伴随着重大更新。
|
||||
Ubuntu 还提供了非长期支持版本,可以得到九个月的更新维护,而每半年发布一个新版本。非长期支持版本适合那些想体验最新软件包与功能的用户,每次升级都可能伴随着重大更新。
|
||||
|
||||
长期支持版本更适合想要在每次更新中都能获得突破性体验的用户。
|
||||
长期支持版本更适合于那些不希望每次更新都有破坏性变化的用户。
|
||||
|
||||
更多信息可以参考我们的文章:[Ubuntu 发行周期与生命周期结束][31]
|
||||
|
||||
@ -182,19 +182,19 @@ Arch Linux 属于 [滚动发行版][32],所以不用担心发布周期的问
|
||||
|
||||
![][33]
|
||||
|
||||
这样一来,Arch Linux 系统的软件包会一直保持最新状态,质量也是最高的。这听起来确实不错,但有时也会给一些用户造成不便。
|
||||
这可以确保你一直在使用最新和最强的软件包。这有时是件好事,但当它破坏一些东西时,对一些用户来说可能会很不方便。
|
||||
|
||||
### 10、硬件兼容性
|
||||
|
||||
![][34]
|
||||
|
||||
Ubuntu 是一款面向台式电脑的主流发行版,所以在发行之前,需要测试它与各种硬件的兼容性。
|
||||
Ubuntu 是一款面向台式电脑的主流发行版,所以在发布之前,它需要测试与各种硬件的兼容性。
|
||||
|
||||
我可以打包票,**Ubuntu 开箱即用的硬件兼容性非常优秀**。
|
||||
|
||||
Arch Linux 不像 Ubuntu 那样进行过大量的测试,所以它不一定能在你的硬件上正常运行。
|
||||
|
||||
不过,正因为 Arch Linux 有着最新最强大的 Linux 内核包,所以有时它的表现要优于 Ubuntu。
|
||||
不过,正因为 Arch Linux 有着最新最强的 Linux 内核包,所以有时它的表现要优于 Ubuntu。
|
||||
|
||||
如果你不太清楚自己硬件的兼容性,你最好请教一下周围的人,确保你在安装 Arch Linux 时不会出现别人已经遇到过的问题。
|
||||
|
||||
@ -204,19 +204,19 @@ Arch Linux 不像 Ubuntu 那样进行过大量的测试,所以它不一定能
|
||||
|
||||
如果你不想让你的系统崩溃,或是不想遇到错误,**Ubuntu 应该是更好的选择**.
|
||||
|
||||
Arch Linux 的话,情况就不好说了。更新之后,它可能会正常运行,也可能会大不如前。
|
||||
Arch Linux 的话,情况就不好说了。它可以工作得很好,也可以因为一次更新而倒下。
|
||||
|
||||
Arch Linux 本身并不算稳定,你需要自行维护它,确保在自定义以及更新过程中不会出现故障。
|
||||
Arch Linux 本身并不算稳定,你需要自行维护它,确保在自定义以及更新过程中不会出现任何问题。
|
||||
|
||||
### 再三考虑: 你该选哪个?
|
||||
|
||||
考虑到稳定性、兼容性、软件生态以及上手速度等因素,对于那些只想顺利完成工作而不想麻烦折腾的人来说,Ubuntu 是一个完美的选择。
|
||||
|
||||
而对那些为适应自己工作内容想要定制桌面体验,以及寻求最新功能和最强性能的用户来说,Arch Linux 最合适不过了。
|
||||
而对那些想要定制桌面体验而适应自己工作内容,以及寻求最新功能和最强性能的用户来说,Arch Linux 最合适不过了。
|
||||
|
||||
如果你想探索未知,Arch Linux 可以给你带来非常奇妙的体验。但对于一些人来说,Arch Linux 使用起来可能比 Ubuntu 要困难许多。
|
||||
|
||||
那么,考虑到以上所有因素,**你觉得自己会选哪个?**期待你能在下方评论区留言。
|
||||
那么,考虑到以上所有因素,**你觉得自己会选哪个?** 期待你能在下方评论区留言。
|
||||
|
||||
### 常见问题解答:如果你还没决定到底用哪一个
|
||||
|
||||
@ -226,9 +226,9 @@ Arch Linux 本身并不算稳定,你需要自行维护它,确保在自定义
|
||||
|
||||
对,也不对。就技术层面来讲,Arch Linux 确实更好,但是你也需要考虑它的稳定性、软件生态以及维护它所需要的学习时间。也就是说,在得出答案之前,你需要根据自己的喜好,再三考虑一番。
|
||||
|
||||
**哪个更快? Ubuntu 还是 Arch?**
|
||||
**哪个更快?Ubuntu 还是 Arch?**
|
||||
|
||||
Arch Linux 更快,因为它安装体积极小。不过,根据你的配置不同,情况可能也会有所不同。
|
||||
Arch Linux 更快,因为它安装的东西很少。不过,根据你的配置不同,情况可能也会有所不同。
|
||||
|
||||
注意,Ubuntu 与 Arch Linux 相比,速度并不会差很多。只不过因为它开箱即用的包会更多,所以有些人会认为 Ubuntu 比较臃肿。
|
||||
|
||||
@ -245,7 +245,7 @@ via: https://itsfoss.com/ubuntu-vs-arch/
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[aREversez](https://github.com/aREversez)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
@ -260,7 +260,7 @@ via: https://itsfoss.com/ubuntu-vs-arch/
|
||||
[7]: https://news.itsfoss.com/arch-new-guided-installer/
|
||||
[8]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/arch-install-terminal.png?resize=800%2C279&ssl=1
|
||||
[9]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/ubuntu-20-04-ux.jpg?resize=800%2C407&ssl=1
|
||||
[10]: https://itsfoss.com/kde-vs-gnome/
|
||||
[10]: https://linux.cn/article-14320-1.html
|
||||
[11]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/arch-linux-gnome.png?resize=732%2C413&ssl=1
|
||||
[12]: https://itsfoss.com/what-is-desktop-environment/
|
||||
[13]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/arch-linux-filesystem.png?resize=800%2C149&ssl=1
|
@ -0,0 +1,152 @@
|
||||
[#]: subject: "Linux Mint Debian Edition 5 – Perfection with Stability [Review]"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/linux-mint-debian-edition-5-review/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14467-1.html"
|
||||
|
||||
Linux Mint Debian Edition(LMDE) 5 – 完美稳定
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 我们对最近发布的 Linux Mint Debian Edition 5(LMDE 5)的性能、稳定性和用户友好性等方面进行了评测。这里是我们的发现。
|
||||
|
||||
在 Linux Mint Debian Edition LMDE 4(Debbie)发布两年多后,Linux Mint 团队宣告了 Linux Mint Debian Edition LMDE 5(LMDE 5)的发布。LMDE 5 基于 [Debian 11 Bullseye][1] ,它带来了长期支持的 Linux 内核 5.10 和 Debian 软件包源。除内核版本以外,大多数的应用程序和软件包与 Linux Mint 20.3 几乎完全相同。
|
||||
|
||||
让我们深入了解一下。
|
||||
|
||||
### LMDE 5 评测
|
||||
|
||||
我们测试 Linux Mint Debian Edition 5(LMDE 5)是在现有的较旧的硬件下:
|
||||
|
||||
* 英特尔酷睿 i3 第一代
|
||||
* 4GB DDR3 内存
|
||||
* 博通芯片
|
||||
* 英伟达® GeForce® 315M
|
||||
* 固态硬盘
|
||||
|
||||
#### ISO 下载、现场介质和安装
|
||||
|
||||
从新设计的 Linux Mint 网站找到并下载 ISO 文件是很容易的。<ruby>现场介质<rt>Live media</rt></ruby>启动很顺利,通过桌面上的安装图标启动了安装程序。
|
||||
|
||||
LMDE 使用的一款修改版的 Debian 安装器。它不是 Calamares 。普通的 Debian 安装器是很难操作的,[在我看来] 有点 [让新用户感到困惑][2] 。但是,Linux Mint 团队使其非常容易安装,只需几个步骤,并从 Debian 安装器中移除了所有使人困惑的选项。
|
||||
|
||||
你只需要提供安装位置、键盘布局、名字和密码,就可以开始安装了。安装器的分区系统使用 GParted ,它很方便好用。
|
||||
|
||||
因此,在我的测试的虚拟机和物理机硬件中,安装过程都很顺利。
|
||||
|
||||
在物理机系统中安装花费了 4 到 5 分钟,而虚拟机系统中的安装时间约为 3 分钟。
|
||||
|
||||
#### 第一印象
|
||||
|
||||
![Linux Mint Debian Edition 5 \(LMDE5\) Desktop][3]
|
||||
|
||||
如果你熟悉 Linux Mint 早期的 Cinnamon 桌面,那么你不会在这个 Debian 版本中找到什么不同。它们是一样的。如果你是第一次使用 Linux Mint 的 Cinnamon 桌面环境,那么在你完成你的安装后,你会看到一个漂亮而干净的桌面。
|
||||
|
||||
桌面图标、完美调整过的颜色和主题、底部任务栏、系统托盘,这一切都配合有序,让你能够立刻上手。
|
||||
|
||||
不管你使用低端还是高端的硬件,LMDE 都能快速响应,应用程序能够很好的工作。应用程序的切换和整体桌面的响应都很可靠。
|
||||
|
||||
你得到的是经过良好测试的应用程序和软件包,而基于 Debian 的稳定性,很少会出现故障。这意味着不必担心软件包的冲突、更新缺失,以及 Linux 系统的常见问题。
|
||||
|
||||
#### 预装的应用程序
|
||||
|
||||
Linux Mint(不仅仅是 Debian 版本)的优势之一是它的预装的应用程序。许多 Linux 发行版由于 ISO 大小等原因,在 ISO 安装程序中不包括必要的应用程序。
|
||||
|
||||
但是,Linux Mint 团队全心全意为它们的用户考虑,打包了所有你需要的必要应用程序。这照顾到了大多数用户的需求。它有助于减少最终用户在安装 LMDE 5 后搜索和安装兼容应用程序方面的负担。
|
||||
|
||||
例如,在 LMDE 5 中,已默认安装下面的必备软件,随时待用:
|
||||
|
||||
* 绘图应用
|
||||
* 多媒体:Celluloid 媒体播放器、Hypnotix、Rythmbox
|
||||
* Torrent 客户端:Transmission 3.0
|
||||
* 完整的办公套件:LibreOffice 7.0
|
||||
* Email 客户端:Thunderbird 91.0
|
||||
* 网页浏览器:Firefox 97.0
|
||||
|
||||
这不是所有。对于下面的所有的具体使用情况,你都会得到一个专门的原生应用程序。用户不需要为这些寻找一个单独的应用程序:
|
||||
|
||||
* 屏幕截图和屏幕保护程序
|
||||
* 减少眼睛疲劳的工具
|
||||
* USB 格式化工具和镜像写入器
|
||||
* 便签
|
||||
* Synaptic 软件包管理器
|
||||
* 系统备份和恢复
|
||||
* 防火墙工具
|
||||
|
||||
#### LMDE5 的性能表现怎么样?
|
||||
|
||||
看到一个发行版按照预期的表现,总是令人感兴趣的。而 LMDE 5 的性能表现远超预期。
|
||||
|
||||
在空闲状态下,它消耗 750 MB 的内存和 2% 的 CPU 。
|
||||
|
||||
![Performance During the light workload][5]
|
||||
|
||||
接下来,我使用下面的任务让它完成繁重的工作负载:
|
||||
|
||||
* Firefox(打开三个标签页,其中一个播放 YouTube 视频)
|
||||
* LibreOffice Calc(打开一个表格)
|
||||
* 绘图应用程序(打开一个实例)
|
||||
* 设置
|
||||
* 一个终端窗口
|
||||
* 文件管理器
|
||||
|
||||
在上述的工作负载中,它消耗了大约 1.5 GB 的内存和 14% 的 CPU 。显然,大部分的资源都被 Firefox 消耗了。
|
||||
|
||||
![Performance During heavy workload][6]
|
||||
|
||||
在我看来,这是一个完美的指标,而且对旧硬件进行了很好的优化分配。上述指标是在物理机系统上测量的。
|
||||
|
||||
#### 连接性
|
||||
|
||||
连接性是任何操作系统的不可或缺的一部分。LMDE 5 能够连接到 Wi-Fi(使用一款老旧的博通芯片)和连接到蓝牙音箱,而不需任意的额外调整。
|
||||
|
||||
在我的测试期间,音量控制与蓝牙守护进程配合得很好。
|
||||
|
||||
此外,我们也测试了 USB 接口设备的热插拔,它们可以自动侦测和挂载,而没有遇到任何问题。
|
||||
|
||||
所以,没有什么意外,这也是意料之中的。
|
||||
|
||||
### 有什么错误吗?
|
||||
|
||||
我在测试期间没有遇到任何错误。一切都运行良好。
|
||||
|
||||
但是当我关闭我的物理测试系统的笔记本盖板时,我发现一个错误。在它进入待机状态后,不能将其唤醒。我无法看到登录屏幕,屏幕是黑色的,没有任何光标。我必须因重启才能进入系统。
|
||||
|
||||
这可能是我测试设备上的特定硬件设备的问题。我相信它在新的硬件系统上不会有任何的问题。
|
||||
|
||||
### 总结
|
||||
|
||||
总结一下 LMDE 5 的评测,它显然是最稳定、最优化的 Linux 发行版。如果你计划在未来两年或更长的时间段内使用一款用于日常用途的系统,你可以信赖这个版本。因此,如果你需要一款非基于 Ubuntu 的稳定的、快速的、低维护率的长期日用系统,并运行在你的旧机器或新机器上,这会是一个完美的选择。请试试。
|
||||
|
||||
你可以 [在官方网站上][7] 下载 LMDE 5 。
|
||||
|
||||
感谢阅读。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/linux-mint-debian-edition-5-review/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[robsean](https://github.com/robsean)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2021/05/debian-11-features/
|
||||
[2]: https://www.debugpoint.com/2021/01/install-debian-buster/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/03/Linux-Mint-Debian-Edition-5-LMDE5-Desktop-1024x580.jpg
|
||||
[4]: https://www.debugpoint.com/2021/12/zorin-os-16-lite-review-xfce/
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/03/Performance-During-light-workload-1024x606.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2022/03/Performance-During-heavy-workload-1024x601.jpg
|
||||
[7]: https://linuxmint.com/edition.php?id=297
|
||||
[8]: https://t.me/debugpoint
|
||||
[9]: https://twitter.com/DebugPoint
|
||||
[10]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[11]: https://facebook.com/DebugPoint
|
@ -3,14 +3,16 @@
|
||||
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14441-1.html"
|
||||
|
||||
在 Ubuntu 22.04 中使用新的强调色选项为你的 Ubuntu 桌面添加一些颜色
|
||||
在 Ubuntu 22.04 中使用新的强调色
|
||||
======
|
||||
|
||||
传统上,Ubuntu 一直使用橙色和茄子色的强调色。如果你想在不改变 Yaru 主题的情况下添加一个不同的颜色主题,它由第三方[名为 Yaru 颜色的主题][1]提供。
|
||||

|
||||
|
||||
传统上,Ubuntu 一直使用橙色和紫红色的强调色。如果你想在不改变 Yaru 主题的情况下添加一个不同的颜色主题,可以选择使用由第三方提供的 [名为 Yaru 颜色的主题][1]。
|
||||
|
||||
但是这一点随着 Ubuntu 22.04 的到来而改变。从即将推出的新的 LTS 开始,你将能够改变你的 Ubuntu 桌面的强调色,而不需要任何额外的工具。
|
||||
|
||||
@ -18,21 +20,23 @@
|
||||
|
||||
### 改变 Ubuntu 22.04 的强调色
|
||||
|
||||
我已经在使用 Ubuntu 22.04 预发布版本。你还不会得到这个版本,但知道这个 [Ubuntu 22.04 的新功能][2]是件好事。
|
||||
我已经在使用 Ubuntu 22.04 预发布版本。你还不会得到这个版本,但已经确定会有这个 [Ubuntu 22.04 新功能][2]。
|
||||
|
||||
在设置中,在外观标签下,你会看到颜色选项。它将给你十个颜色选项,包括默认橙色、树皮色、鼠尾草色、橄榄色、绿色、普鲁士绿、蓝色、紫色、洋红色和红色。
|
||||
在设置中,在外观标签下,你会看到颜色选项。它将给你十个颜色选项,包括默认的橙色、树皮色、鼠尾草色、橄榄色、铬绿、普鲁士绿、蓝色、紫色、洋红色和红色。
|
||||
|
||||
你可以从这里选择你喜欢的颜色。
|
||||
|
||||
![Changing accent colors in Ubuntu 22.04][3]
|
||||
|
||||
它改变了什么?所有你在桌面上有橙色元素的地方。所以,文件夹的颜色会被改变,日历条目,软件中心的标志,浏览器中的文本选择高亮等等。
|
||||
它改变了什么?所有你在桌面上有橙色元素的地方。所以,文件夹的颜色会被改变,以及日历条目、软件中心的标志、浏览器中的文本选择高亮等等。
|
||||
|
||||
![Effect of accent color change][4]
|
||||
|
||||
这段视频展示了所有强调色的作用。
|
||||
|
||||
你应该将颜色与浅色和深色主题混合。有些颜色在浅色主题下看起来不错,而有些则在深色主题下看起来更好。
|
||||

|
||||
|
||||
你应该将颜色与浅色和深色主题结合起来。有些颜色在浅色主题下看起来不错,而有些则在深色主题下看起来更好。
|
||||
|
||||
### 改变强调色还是坚持使用默认颜色?
|
||||
|
||||
@ -51,14 +55,14 @@ via: https://itsfoss.com/accent-color-ubuntu/
|
||||
作者:[Abhishek Prakash][a]
|
||||
选题:[lujun9972][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/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/abhishek/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/folder-color-ubuntu/
|
||||
[2]: https://itsfoss.com/ubuntu-22-04-release-features/
|
||||
[2]: https://linux.cn/article-14177-1.html
|
||||
[3]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/accent-colors-ubuntu-22-04.png?resize=800%2C572&ssl=1
|
||||
[4]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/changed-accent-color-ubuntu-22-04.png?resize=797%2C453&ssl=1
|
||||
[5]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/accent-colors-elementary-os-6.webp?resize=780%2C667&ssl=1
|
@ -0,0 +1,155 @@
|
||||
[#]: subject: "CrunchBang++ Linux – The Ultimate Lightweight and Stable Linux Distribution"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/crunchbang-linux-review/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lxbwolf"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14454-1.html"
|
||||
|
||||
CrunchBang++ Linux —— 极致轻量和稳定的 Linux 发行版本
|
||||
======
|
||||
|
||||
> 我们来对基于 Debian 的、由 Openbox 驱动的轻量级 Linux 发型版本 Crunchbang++ Linux 进行了评测,并为你提供了如何使用它的指导。
|
||||
|
||||
CrunchBang 项目已经停止维护,CrunchBang++ Linux 是这个独特的项目的继承者。早期的 CrunchBang Linux 很受欢迎,因为它使用非常少的系统资源,对低端硬件也很友好。而 CrunchBang++ 也有一个 32 位的安装程序(现在很少见),可以在过时的硬件或 PC 上正常运行。
|
||||
|
||||
在我们之前介绍 [顶级轻量级 Linux 发行版][1] 的文章中,有读者评论想让我们介绍 CrunchBang++。因此,我们想从性能、无障碍访问和其他因素等方面对这个超级轻量级的 Linux 发行版做一个深入的研究。让我们深入了解一下。
|
||||
|
||||
### CrunchBang++ Linux 测评
|
||||
|
||||
![CrunchBang++ Linux Desktop with Openbox][2]
|
||||
|
||||
#### 现场介质和安装
|
||||
|
||||
目前为止,CrunchBang++ 基于最新的 Debian 11 Bullseye,并提供 32 位和 64 位 ISO 变体。你可以从其 [官方网站][3] 下载。本文中,我们使用 64 位的安装程序,其大小为 1.6 GB,与当今流行的 Linux 发行版的 ISO 大小相比,是很小的。例如,最新的 Ubuntu 64 位桌面 ISO 就很大,已经超过了 3.2 GB。
|
||||
|
||||
安装程序的启动菜单提供了测试<ruby>现场镜像<rt>Live Image</rt></ruby>和启动安装程序的选项。你可以先从现场镜像开始。但是,你不能从现场介质安装!相反,你必须再次启动并选择重新安装选项。<ruby>现场桌面<rt>Live desktop</rt></ruby>的用户 ID 和密码都是 “live”。
|
||||
|
||||
![Installation in the boot menu][4]
|
||||
|
||||
在物理机和虚拟机([virt-manager][5])上的安装都很顺利。CrunchBang++ 使用 Debian 的原生安装程序,这有点复杂。但你可以按照屏幕上的指示轻松地安装它。如果你不熟悉 Debian 安装程序,你可以参照我们的 [Debian 安装指南][6]。
|
||||
|
||||
在虚拟机和物理系统上安装过程平均需要约 5 到 10 分钟。
|
||||
|
||||
#### 桌面初窥
|
||||
|
||||
CrunchBang++ 给你经典的 Openbox 窗口管理器体验。登录屏幕出乎意料的干净和完美,只有输入凭证的选项。
|
||||
|
||||
如果你是第一次运行它,有一个欢迎脚本会引导你检查网速,更新你的系统,等等。
|
||||
|
||||
![The welcome script][7]
|
||||
|
||||
Openbox 本身是快速和干净的。桌面以其预先配置的 SBPP Openbox 主题带来了一个整洁的外观,其组件如下:
|
||||
|
||||
* [gmrun][8]:一个轻量的应用程序启动器
|
||||
* [Tint2][9]:桌面顶层的控制面板
|
||||
* [dmenu][10]:动态菜单系统
|
||||
|
||||
你可以通过右键菜单的简单配置选项来配置它们。
|
||||
|
||||
默认情况下,可以通过顶部面板切换两个工作区。顶部面板也有基本的托盘图标以满足你的需要。
|
||||
|
||||
* 音量控制
|
||||
* 网络连接
|
||||
* 语言工具
|
||||
* 电量监控
|
||||
* 剪贴板管理
|
||||
|
||||
作为一个窗口管理器,这里没有应用程序视图。但有了 gmrun 应用程序启动器,启动任何应用程序都超级容易。当你需要启动任何应用程序时,Openbox 右键菜单会给你所有的选项。
|
||||
|
||||
#### 无障碍访问和应用程序
|
||||
|
||||
CrunchBang++ 只包括最低限度的应用程序,以保持 ISO 和安装的轻便。以下是预装的应用程序。
|
||||
|
||||
* GIMP
|
||||
* Thunar 文件管理器
|
||||
* Catfish 文件搜索
|
||||
* Gnumeric
|
||||
* VLC 媒体播放器
|
||||
* Filezilla
|
||||
* 远程桌面客户端
|
||||
* Transmission Torrent 客户端
|
||||
* Screenshot 工具
|
||||
* Geany 文本编辑器
|
||||
|
||||
强大的 Synaptic 软件包管理器会满足你所有的软件需求。LibreOffice 不是默认安装的,所以你需要单独安装它。没有用于集中设置的工具,所以有时你可能会觉得缺少一个设置管理器。
|
||||
|
||||
#### 性能和资源占用情况
|
||||
|
||||
CrunchBang++ 的性能对于轻量级发行版来说是完美的。
|
||||
|
||||
这个发行版使用了 585 MB 的内存,空闲状态下 CPU 占用为 1%。如果你让系统在非活动状态下运行一个小时或更长时间,内存占用会进一步减少到 350 MB 左右。这是一个令人印象深刻的指标。
|
||||
|
||||
![Performance During Idle State][12]
|
||||
|
||||
为了测试重压工作负载,我们在 CrunchBang++ 中打开了以下应用程序的一个实例:
|
||||
|
||||
* Firefox 两个标签页
|
||||
* Thunar 文件管理器
|
||||
* GIMP
|
||||
* Gnumeric
|
||||
* 文本编辑器
|
||||
* 终端
|
||||
* Catfish 文件搜索
|
||||
|
||||
整个工作负载占用内存 1.07 GB,CPU 占用为 5% - 7%。
|
||||
|
||||
这个发行版的默认安装占用了 4 GB 的硬盘空间。
|
||||
|
||||
![Performance During Heavy workload State][13]
|
||||
|
||||
#### 连接性
|
||||
|
||||
我们对它进行了下面列出的各种连接性测试。除了蓝牙,它通过了每一项测试。
|
||||
|
||||
* Wi-Fi 检测和连接 —— 完美通过测试
|
||||
* 它在多个显示器和分辨率配置下能正确工作(由于有预装的 ARandR)
|
||||
* 自动检测 USB(即使在虚拟机模式下) —— 正常通过测试
|
||||
|
||||
没有用于蓝牙的启用、发现和连接的工具(有点像 Xfce 桌面)。所以,如果你安装一个实用程序,你应该都能搞定。
|
||||
|
||||
#### CrunchBang++ 的一些缺点
|
||||
|
||||
在我看来,这个 Linux 发行版应该由有一些经验的用户来使用,他们在 Linux 中遇到的问题一般都能通过查阅资料解决,并且在需要时也能自如地使用终端。
|
||||
|
||||
我还发现了一些我认为默认安装需要(而没有安装)的项目。在这个发行版中没有办法配置鼠标、键盘。没有预装任何工具。然而,你可以通过终端对它们进行调整。你可能需要安装额外的应用程序来配置这些。
|
||||
|
||||
在“最近使用的应用程序”的右键菜单和 Nitrogen 壁纸更换器中有些错误。然而,对于你的日常使用来说,它们并不是一个障碍。
|
||||
|
||||
所以,总的来说,我认为它很稳定,尽管有所缺失,但可以很好地工作。
|
||||
|
||||
### 总结
|
||||
|
||||
在结束对 CrunchBang++ 的测评时,我不得不说它是一个高效和实用的 Linux 发行版。它可能不是一个闪闪发光的桌面,但它是一个稳定的、生产级的 Linux 发行版,可以在任何硬件上运行。你可以很容易地把它作为你的日常使用系统,并在不用重装你的整个系统的情况下使用它多年。CrunchBang++ 是贡献者们创造出的伟大的软件。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/crunchbang-linux-review/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[lxbwolf](https://github.com/lxbwolf)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2022/03/lightweight-linux-distributions-2022/
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/04/CrunchBang-Linux-Desktop-with-Openbox-1024x576.jpg
|
||||
[3]: https://crunchbangplusplus.org/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/Installation-in-boot-menu.jpg
|
||||
[5]: https://www.debugpoint.com/2020/11/virt-manager/
|
||||
[6]: https://www.debugpoint.com/2021/01/install-debian-buster/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/04/The-welcome-script.jpg
|
||||
[8]: https://github.com/WdesktopX/gmrun
|
||||
[9]: https://gitlab.com/o9000/tint2
|
||||
[10]: https://tools.suckless.org/dmenu/
|
||||
[11]: https://www.debugpoint.com/2021/01/extix-21-1-review/
|
||||
[12]: https://www.debugpoint.com/wp-content/uploads/2022/04/Performance-During-Idle-State.jpg
|
||||
[13]: https://www.debugpoint.com/wp-content/uploads/2022/04/Performance-During-Heavy-workload-State.jpg
|
||||
[14]: https://t.me/debugpoint
|
||||
[15]: https://twitter.com/DebugPoint
|
||||
[16]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[17]: https://facebook.com/DebugPoint
|
@ -0,0 +1,129 @@
|
||||
[#]: subject: "Peergos: An Open-Source Google Drive Alternative That You Can Self-Host"
|
||||
[#]: via: "https://itsfoss.com/peergos/"
|
||||
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14466-1.html"
|
||||
|
||||
Peergos:一个可以自行托管的开源 Google 云端硬盘替代品
|
||||
======
|
||||
|
||||

|
||||
|
||||
<ruby>Google 云端硬盘<rt>Google Drive</rt></ruby> 是最受欢迎的云存储服务之一。而且,由于合理的原因,它提供了灵活的定价、区域定价和许多其他优势。
|
||||
|
||||
不幸的是,它不提供端对端加密。此外,它不是一个开源的产品。
|
||||
|
||||
那么,我们是否有开源的 Google 云端硬盘的替代品?
|
||||
|
||||
当然,有 [免费的云存储服务][1],但它们不是开源的,也不是完全安全/私密的。
|
||||
|
||||
不用担心,我们有一个优秀的开源解决方案,即 **Peergos**。
|
||||
|
||||
### Peergos:一个带有迷你社交网络平台的点对点开源云存储服务
|
||||
|
||||
![][2]
|
||||
|
||||
[Peergos][3] 不仅仅是 Google 云端硬件的一个普通替代品,也不仅仅是一个私人网络存储平台。
|
||||
|
||||
有了 Peergos,你会得到一个建立在 [IPFS 协议][4](点对点)之上的端到端加密的私人网络空间。使用这样的协议使它成为一个去中心化的存储平台。
|
||||
|
||||
不仅限于其安全/隐私,你还可以使用新闻源在平台上与你的朋友进行社交。
|
||||
|
||||
例如,你上传照片并与你的朋友分享,其他用户(你的朋友)可以在他们的新闻源中看到它们,并像社交媒体平台一样互动。
|
||||
|
||||
你还可以添加待办事项,组织日历,并根据需要与合作者/朋友分享。
|
||||
|
||||
换句话说,你也可以把 Pergos 视为 [Nextcloud][5] 在某种程度上的替代品。
|
||||
|
||||
你可以选择自行托管 Peergos,也可以选择他们的云服务,开始是免费的(200MB 存储空间),可以升级到 50GB,价格为 **£5/月**,或者 500GB,价格为 **£25/月**。
|
||||
|
||||
让我强调一下 Pergos 的一些主要特性。
|
||||
|
||||
### Peergos 的特点
|
||||
|
||||
![][6]
|
||||
|
||||
考虑到你在 Peergos 获得的各种功能,以下是亮点:
|
||||
|
||||
* 端对端加密存储。
|
||||
* 能够分享你的照片、视频和文件。
|
||||
* 如果需要,生成链接让其他用户下载你的文件。
|
||||
* 保持你的活动私密,不记录你的使用情况。
|
||||
* 你可以自我托管 Peergos,让你完全控制。
|
||||
* 私有元数据,保持你的联系人列表、文件大小、目录结构和其他信息的隐蔽性。
|
||||
* 提供一个去中心化的存储,你可以无缝访问。
|
||||
* 开源,并经过审计。
|
||||
* 社交媒体网络能力。
|
||||
* 待办事项列表和任务管理。
|
||||
* 协作功能。
|
||||
* 支持 Markdown。
|
||||
* 查看 PDF 文件的能力。
|
||||
* 访问日历,创建和组织事件。
|
||||
* 网站目录,如果你自行托管,可以使用个性化的 URL 或本地端口访问。
|
||||
|
||||
Peergos 是一个功能丰富的产品,可以让你存储你的文件,而不用担心对公司的信任问题。
|
||||
|
||||
虽然它不是完全匿名的,但 Pergos 作为一项服务不会记录你的任何信息。
|
||||
|
||||
此外,如果你想完全控制一切,你可以自行托管。
|
||||
|
||||
### 开始使用 Pergos
|
||||
|
||||
你需要 [注册][7](云选项)或按照其 [GitHub 页面][8] 中的说明自行托管它。
|
||||
|
||||
![][9]
|
||||
|
||||
200MB 的免费空间是相当低的。然而,如果你想存储你的一些重要文件,以及选择照片集,这对一些人来说可能是有用的。
|
||||
|
||||
高级升级版可以选择上升到 500GB 的存储空间,每月 **25 英镑**。
|
||||
|
||||
![][10]
|
||||
|
||||
在该平台上切换是相当容易的,用户界面看起来也不错。
|
||||
|
||||
![][11]
|
||||
|
||||
它支持深色模式,所以你可以随时切换它。可用的共享选项应该足以满足各种合作的需要。
|
||||
|
||||
使用组来控制对共享文件的访问是一个有趣的想法。
|
||||
|
||||
![][12]
|
||||
|
||||
> - 访问 [Peergos][3]
|
||||
|
||||
### 总结
|
||||
|
||||
Peergos 是一个独特的产品,你可以自行托管。它是开源的,并为隐私爱好者提供了所有好东西来存储文件和安全地进行合作。
|
||||
|
||||
云服务可能因其免费存储空间少而不具吸引力。但是,如果你真的喜欢这个概念,你可以选择升级到一个具有更多存储空间的高级计划。
|
||||
|
||||
如果你想要一个 Google Drive 的开源替代品,Peergos 可以是一个有趣的选择。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/peergos/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/cloud-services-linux/
|
||||
[2]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/04/peergos-home.png?resize=800%2C623&ssl=1
|
||||
[3]: https://peergos.org/
|
||||
[4]: https://ipfs.io/
|
||||
[5]: https://itsfoss.com/nextcloud/
|
||||
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/04/peergos-social.png?resize=800%2C633&ssl=1
|
||||
[7]: https://peergos.net/?signup=true
|
||||
[8]: https://github.com/peergos/peergos
|
||||
[9]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-sign-up.png?resize=800%2C684&ssl=1
|
||||
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-signup.png?resize=800%2C481&ssl=1
|
||||
[11]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-dark.png?resize=800%2C513&ssl=1
|
||||
[12]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-sharing.png?resize=800%2C715&ssl=1
|
@ -0,0 +1,73 @@
|
||||
[#]: subject: "Is this the End of the road for elementary OS?"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/end-of-elementary-os/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "hwlife"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14449-1.html"
|
||||
|
||||
elementary OS 系统走到头了吗?
|
||||
======
|
||||
|
||||
> Cassidy James 是 elementary OS 系统的创始人,根据他最近的声明得知他已经辞职。下面是我们对这一话题的看法,以及可能的未来。
|
||||
|
||||
![elementary OS 6 ODIN Desktop][1]
|
||||
|
||||
早在十年前,当 elementary OS 首次发布时,它率先带领 Linux 桌面领域迈出了新的一步。Cassidy 有一个愿景,从那时只有开发者和贡献者在使用的 Linux 桌面,到全世界用户都能够使用它。它的 Pantheon 桌面是最好的桌面之一,从一开始就是为美学和生产力而设计的。
|
||||
|
||||
多年来,elementary OS 已经成长起来了。它的用户群和受欢迎程度一直在增加,因为它的稳定性、基于 Ubuntu 长期支持版,对于那些希望在 Linux 中拥有类似 macOS 的用户界面的人来说,是一个完美的桌面。它的基于 Flatpak 的应用商店也是在 Linux 生态系统中最好的应用商店之一,具有一套精心打造的应用程序。
|
||||
|
||||
如果你用免费软件经营公司,除非你有一个在背后支撑的企业和其它盈利模式,否则这些优势和良好的用户反馈,是无法变成盈利的。
|
||||
|
||||
### 为什么会出现这种情况,这是 elementary OS 系统的终点吗?
|
||||
|
||||
elementary OS 有一个 “付费下载” 的收入模式,这是自愿的。但是疫情已经两年了,这方面的销售收入也在下降,该公司的领导层为了维持公司运转,已经削减了全职员工的工资和医疗福利。
|
||||
|
||||
> “自从我全职投入 elementary 公司以来,每一个版本的销售业绩都要比上一个表现要好,直到 OS 6 和 6.1 的业绩表现远远低于预期,部分原因是持续的全球疫情,人们看起来在能免费下载操作系统的时候,不再想支付可选的金额来下载它。很明显,我们需要重新确定我们公司财务的优先次序,同时坚定我们的开源、以隐私为中心和道德的筹资信念。”Cassidy 在他的告别信中说道。
|
||||
|
||||
全球经济在疫情的打击下,所有人和事都无法幸免。[elementary OS 6 Odin][2] 的发布并不顺利。有一些错误、英伟达显卡的问题和其他问题,全球疫情和贡献的减少也影响了软件的质量。这最终影响到了自愿付费下载的收入。
|
||||
|
||||
自愿付费下载模式、GitHub 的赞助,用来维持企业运转和大型项目是远远不够的。如果你看看其他的主流开源项目,如 Fedora Linux、GNOME、KDE Plasma,它们都有来自 Red Hat、IBM、Google 等大企业的大量赞助。而这是有原因的,这些大公司都从这些开源项目中获得商业利益。但是对于 elementary OS 来说,情况就有点不同了。
|
||||
|
||||
> Cassidy 又写道,“结果,Dani 要求我辞职,并完全离开 elementary。在我寻找另一个职位时,这并不是我的本意,但是 Dani 一直坚持(要我离开)。最后,我决定,最好的行动方案确实是我继续前行;我放弃了我对 elementary 十多年的激情,接受了 Dani 的提议,让她成为 elementary 公司唯一的、100% 的所有者。我已经签署了我的辞呈。从今天起,她现在拥有公司的所有股份和责任。我祝愿她在延续公司的遗产方面取得最好的成绩。”
|
||||
|
||||
### 展望未来
|
||||
|
||||
确实,我能在告别信中感受到 Cassidy 的感情。放弃你多年来建立的项目和激情是不容易的。那里有你在为社区获得更大利益的愿景而投入的无数个日日夜夜。你的感情与之相连。放弃并不容易。
|
||||
|
||||
没有人能够预测未来。所以,我们不知道在未来的日子里 elementary OS 系统作为一个项目会发生什么。当情况发生了,开源公司最终会成为一个有更多受众和贡献者的社区项目。我觉得新的领导人需要看看 elementary OS 在 Linux 发行版或桌面领域方面的未来路线图。
|
||||
|
||||
因为带有 GTK4/libadwaita 的 GNOME 42+ 看起来很有前途,elementary OS 可能会因为 GNOME 而失去用户群。在这种情景下,唯一的卖点只有 Pantheon 桌面,这就需要更多的打磨和市场化能力,同时新的领导层也需要寻找更好的收入模式。
|
||||
|
||||
我们希望,作为一个社区,elementary OS 能够继续推出新版本,如果必要的话,让它成为没有 GitHub 赞助墙的社区项目。而我认为寻找企业基金和捐赠也可以成为维持项目运行的长期选择之一。
|
||||
|
||||
任何开源项目都不应该停止。我希望新的领导层能够找到更好的收入模式来维持这个项目。只要思想不滑坡,方法总比困难多。
|
||||
|
||||
所以,关于这整个情况你有什么看法?在下方评论让我知道。
|
||||
|
||||
谢谢。
|
||||
|
||||
*部分引用自 [Cassidy 的博客][4]*
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/end-of-elementary-os/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2021/08/elementary-OS-6-ODIN-Desktop-1024x576.jpeg
|
||||
[2]: https://www.debugpoint.com/2021/08/elementary-os-6-odin-review/
|
||||
[3]: https://www.debugpoint.com/2021/05/elementary-os-6-beta/
|
||||
[4]: https://cassidyjames.com/blog/farewell-elementary/
|
||||
[5]: https://t.me/debugpoint
|
||||
[6]: https://twitter.com/DebugPoint
|
||||
[7]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[8]: https://facebook.com/DebugPoint
|
@ -0,0 +1,96 @@
|
||||
[#]: subject: "Xfce Terminal 1.0.0 is a Feature-Packed Major Upgrade After a Year"
|
||||
[#]: via: "https://news.itsfoss.com/xfce-terminal-1-0-0-release/"
|
||||
[#]: author: "Jacob Crume https://news.itsfoss.com/author/jacob/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14459-1.html"
|
||||
|
||||
Xfce Terminal 1.0.0:时隔一年后的一次功能丰富的重大升级
|
||||
======
|
||||
|
||||
> 在其上一个主要版本发布一年后,Xfce Terminal 1.0.0 终于来了。兴奋地想了解一下新的改进吗?让我们来看看!
|
||||
|
||||

|
||||
|
||||
作为几乎在所有采用 Xfce 的发行版上流行的终端模拟器,Xfce Terminal 刚刚由新的维护者(及新的版本计划)发布了它的第一次重大升级。
|
||||
|
||||
让我们来看看这个版本的一些亮点。
|
||||
|
||||
### 新的维护者和版本管理方案
|
||||
|
||||
Igor Zakharov 从 2016 年到 2020 年一直在领导它的开发工作。不幸的是,在 2021 年它就没有被维护过,直到新的维护者 [Sergios][1] Anestis Kefalidis(也是 Thunar 文件管理器的开发者)接手。
|
||||
|
||||
而且,自从 Sergios 接管了这个项目后,版本管理方案也发生了变化。经过与社区的协商,采用了 Thunar 的旧版本计划。
|
||||
|
||||
例如,1.1.x 版本将是开发版本,而 1.2.0 版本将是下一个主要升级版本。
|
||||
|
||||
现在,随着 Xfce Terminal 1.0.0 的发布,一些令人兴奋的新特性已经被纳入。
|
||||
|
||||
### 新特性
|
||||
|
||||
Xfce Terminal 1.0.0 的一些新特性包括:
|
||||
|
||||
* 改进了自定义选项
|
||||
* 支持叠加滚动条
|
||||
* 命令行选项的改进
|
||||
* 更多使用 XfceTitledDialog
|
||||
|
||||
#### 更好的自定义选项
|
||||
|
||||
和现在许多应用的更新一样,Xfce Terminal 1.0.0 包括大量新的自定义选项。也许我最喜欢的是,图像背景功能现在有一个“填充”风格选项。伴随着这一点的是暂时禁用不安全的粘贴对话框的能力,它也被改造了。
|
||||
|
||||
最后,Xfce Terminal 也成为首批支持新的 Xfce 快捷键编辑器的应用之一。因此,用户不再需要潜心研究配置文件,而是有了一个可以使用的简单 UI。
|
||||
|
||||
![][2]
|
||||
|
||||
有了这么多新的定制选项,我相信很多人都会对一个只是包含这些的版本感到满意。但是!开发者设法加入了更多令人兴奋的新功能,其中下一个是改进的命令行参数。
|
||||
|
||||
#### 更好的命令行参数
|
||||
|
||||
在这个版本中,修复了 `-tab` 和 `-window` 命令行参数,变得更加直观。这修复了 Xfce Terminal 中一个 [长期存在的错误][3],它已经存在了近 6 年。
|
||||
|
||||
尽管等待了很久,但现在它已经被修复了。迟到总比不到好,是吧?
|
||||
|
||||
不管怎么说,看到每一个新版本的错误被修复总是很好的,这个趋势在这里继续。
|
||||
|
||||
#### 更多使用 Xfce 专用的小工具
|
||||
|
||||
虽然我相信很多用户可能会认为这是一个退步,但 Xfce Terminal 使用更多的 Xfce 专用小工具带来了很多好处。虽然这对非 Xfce 用户确实意味着要安装更多的依赖关系,但它意味着与 Xfce 更好的整合。
|
||||
|
||||
可以说,大多数的 Xfce Terminal 用户都坚持使用同样的 Xfce 桌面环境。所以,这种改变应该会带来更大的一致性和用户体验的改善。
|
||||
|
||||
#### 其他变化
|
||||
|
||||
这个版本的其他变化包括:
|
||||
|
||||
* “输出滚动”偏好设定的改进
|
||||
* 右键点击行为的自定义选项
|
||||
* 为缩小代码库而进行的代码重写
|
||||
|
||||
关于完整的功能列表,请随时参考 [发布说明][4]。发布说明中还提到了下一个主要版本的未来计划,即 v1.2.0。
|
||||
|
||||
### 总结
|
||||
|
||||
总的来说,Xfce Terminal 1.0.0 看起来是一个不错的版本,也说明了其新的维护者的奉献精神。
|
||||
|
||||
如果你想试试 Xfce Terminal 1.0.0,它应该会在接下来的几周内进入你的发行库,如果现在还没有的话。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/xfce-terminal-1-0-0-release/
|
||||
|
||||
作者:[Jacob Crume][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[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/lujun9972
|
||||
[1]: https://www.youtube.com/channel/UCu8-J-XWcXQhoCopBiJ5-uw/videos
|
||||
[2]: https://news.itsfoss.com/wp-content/uploads/2022/04/xfce4-terminal.png
|
||||
[3]: https://bugzilla.xfce.org/show_bug.cgi?id=12926
|
||||
[4]: http://users.uoa.gr/~sdi1800073/sources/xfce_blog12.html
|
@ -0,0 +1,131 @@
|
||||
[#]: subject: "Ex-Snap Advocate at Ubuntu Creates a Tool to Help You Migrate from Snap to Flatpak"
|
||||
[#]: via: "https://news.itsfoss.com/unsnap-migrate-snap-to-flatpak/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14482-1.html"
|
||||
|
||||
Ubuntu 的前 Snap 倡导者创建了一个工具,帮助你从 Snap 迁移到 Flatpak
|
||||
======
|
||||
|
||||
> 吃惊!Canonical 的前 Snap 倡导者开发了一个工具,帮助你快速抛弃 Snap 并使用 Flatpak。
|
||||
|
||||

|
||||
|
||||
不喜欢使用 Snap?
|
||||
|
||||
好吧,你可以一直坚持使用传统的二进制包(deb/rpm),或者选择 [Flatpak][1]。
|
||||
|
||||
但是,如果你已经用上了 Snap 商店的应用,怎么办?
|
||||
|
||||
手动删除 Snap 应用,和 Snap 说再见,安装 Flatpak,并安装所有 Flatpak 需要的软件包,这将是非常耗时的。
|
||||
|
||||
这就是 “Unsnap” 派上用场的地方。
|
||||
|
||||
Unsnap 是一个开源工具,由 Canonical 的前 Snap 倡导者 **Alan Pope** 开发,帮助你从Snap 快速迁移到 Flatpak。
|
||||
|
||||
### Unsnap:它是如何工作的
|
||||
|
||||
> 请注意,该工具仍处于前 alpha 阶段,你可以测试它,但如果你想实际使用并帮助改进,你可能要做一些研究。
|
||||
|
||||
基本上,该工具生成的脚本可以帮助你做以下事情(按特定顺序):
|
||||
|
||||
* 备份现有的 Snap 软件包。
|
||||
* 安装 Flatpak(如果尚未存在)。
|
||||
* 启用 Flathub。
|
||||
* 为 Snap 应用安装相同的 Flatpak 应用。
|
||||
* 移除已安装的 Flatpak 应用的 Snap 应用。
|
||||
* 删除所有 Snap 软件包。
|
||||
|
||||
虽然脚本是在你运行工具时自动生成的,但你可以选择手动或自动逐个运行这些脚本来切换到 Flatpak 应用。
|
||||
|
||||
### 如何测试 Unsnap?
|
||||
|
||||
![][2]
|
||||
|
||||
看了上面的截图,你可能对它的实现方式有了一个模糊的概念。你也可以参考它的 [GitHub 页面][3] 了解最新信息。
|
||||
|
||||
作为参考,让我为你强调一下步骤:
|
||||
|
||||
#### 1、克隆 GitHub 仓库
|
||||
|
||||
请确保你已经 [在你的 Linux 发行版上安装了 Git][4]。完成后,你可以输入以下命令:
|
||||
|
||||
```
|
||||
git clone https://github.com/popey/unsnap
|
||||
```
|
||||
|
||||
#### 2、切换到该目录
|
||||
|
||||
当你克隆了仓库,你的系统上就会有 `unsnap` 目录。
|
||||
|
||||
输入以下命令切换到目录:
|
||||
|
||||
```
|
||||
cd unsnap
|
||||
```
|
||||
|
||||
#### 3、运行该工具
|
||||
|
||||
在切换到目标目录后,只需使用命令运行 `unsnap` 工具:
|
||||
|
||||
```
|
||||
./unsnap
|
||||
```
|
||||
|
||||
它将检查现有的 Snap 和 Flatpak 软件包等等,进行设置。
|
||||
|
||||
正如你在上面的截图中注意到的,它已经检测到我的系统有了 Flatpak 环境,所以它跳过了为这些任务生成脚本。
|
||||
|
||||
在这个过程中,它还会了解你系统上安装的 Snap 应用,以便在你运行生成的脚本时找到相应的 Flatpak 应用。
|
||||
|
||||
如果你想立即运行所有的脚本,你可以输入:
|
||||
|
||||
```
|
||||
./unsnap auto
|
||||
```
|
||||
|
||||
![][2]
|
||||
|
||||
如果你想要不使用自动选项进行控制,你可以发现生成的脚本驻留在一个日志目录内,如下图所示:
|
||||
|
||||
![][2a]
|
||||
|
||||
下面是你应该遵循的脚本的执行顺序:
|
||||
|
||||
* `00-backup`
|
||||
* `01-install-flatpak`
|
||||
* `02-enable-flathub`
|
||||
* `03-install-flatpaks`
|
||||
* `04-remove-snaps`
|
||||
* `99-remove-snapd`
|
||||
|
||||
在我的例子中,我已经设置了 Flatpak,所以我继续运行备份脚本,然后安装 Flatpak 软件包,如此循环。下面是它看起来的样子:
|
||||
|
||||
![][2b]
|
||||
|
||||
你应该记住,这个工具正在积极开发中,可能不会像预期那样工作。所以,你如果依赖众多的 Snap 应用,你应该在虚拟机或测试机上试验使用该工具,并等待该工具随着稳定版本的推出而改进。
|
||||
|
||||
请在下面的评论中告诉我你对 Unsnap 的看法。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/unsnap-migrate-snap-to-flatpak/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/flatpak-guide/
|
||||
[2]: https://news.itsfoss.com/wp-content/uploads/2022/04/unsnap-auto.png
|
||||
[3]: https://github.com/popey/unsnap
|
||||
[4]: https://itsfoss.com/install-git-ubuntu/
|
||||
[2a]: https://news.itsfoss.com/wp-content/uploads/2022/04/unsnap-scripts.png
|
||||
[2b]: https://news.itsfoss.com/wp-content/uploads/2022/04/unsnap-install-flatpaks.png
|
@ -0,0 +1,62 @@
|
||||
[#]: subject: "Linux Mint 21 Code Name Announced with New Upgrade Utility and More"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/linux-mint-21-announcement/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14448-1.html"
|
||||
|
||||
Linux Mint 21 公布了代号、新的升级工具及更多内容
|
||||
======
|
||||
|
||||

|
||||
|
||||
> Mint 团队公布了即将到来的 Linux Mint 21 的代号、一个用于轻松升级的工具,以及令团队惊叹的 Warpinator 使用案例。
|
||||
|
||||
### Linux Mint 21 公告和其他更新
|
||||
|
||||
首先,Linux Mint 21 的代号是 “Vanessa”,它将基于 [Ubuntu 22.04 LTS Jammy Jellyfish][1]。像往常一样,它将提供三个旗舰版本:Xfce、Cinnamon 和 MATE。
|
||||
|
||||
其次,很明显,Mint 团队将选择 Ubuntu 22.04 LTS 作为 Linux Mint 21 的基础以获得长期支持。它将采用 [5.15 版本的 Linux 内核][2],这是一个长期支持版的内核。
|
||||
|
||||
除此之外,项目负责人 Clement Lefebvre 还宣布了 [一个新的升级工具][3](mintupgrade2),这样一来,计划升级到 Linux Mint 21 的用户可以更轻松地完成升级步骤。根据历史经验,升级到 Mint 的主要版本是一个涉及大量终端操作的复杂过程,这对普通用户来说通常是困难的。
|
||||
|
||||
![随 Linux Mint 21 公布的 Mint 升级工具][4]
|
||||
|
||||
因此,考虑到其用户基础,Mint 团队为用户开发这个升级工具还是很有必要的。Clement Lefebvre 承诺,新的工具将是完全图形化的,附带有易于管理的步骤和说明。它将支持语言的本地化,还将为复杂的升级过程提供预先检查,同时也将为用户提供易于理解的可配置的指南。
|
||||
|
||||
这个工具将成为从 Linux Mint 20 升级到 21 的主要工具,它会在五、六月份左右发布。此外,这个新工具承诺提供关于自定义 PPA 和孤儿包的警告,以减少你在升级前的担忧。老实说,这将是 Mint 团队为其用户带来的最好的工具之一。
|
||||
|
||||
#### 其他更新
|
||||
|
||||
除了以上更新外,团队还提到,文件传输工具 Warpinator 被世界上的多个用户用于一些奇怪的需求 —— 这是团队之前从未想过的。例如,有人用 Warpinator 在 Windows 和 V 社的 Steam Deck 游戏机之间传输文件,参见 [这个视频][5]。
|
||||
|
||||
说到这里,Warpinator 现在提供了一个 [针对 iOS][6] 用户的测试发行版。你现在可以在你的苹果系统与任何其他系统之间快速传输文件,包括安卓、Linux 和 Windows。Mint 团队开发的这个应用真不错。
|
||||
|
||||
你可以在官方[博客][7]中阅读关于 Linux Mint 21 的公告和更多内容。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/linux-mint-21-announcement/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[2]: https://www.debugpoint.com/2021/11/linux-kernel-5-15/
|
||||
[3]: https://github.com/linuxmint/mintupgrade2
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/Mint-upgrade-2-utility-announced-with-Linux-Mint-21.jpg
|
||||
[5]: https://www.youtube.com/watch?v=sHdQT6kI6Q8
|
||||
[6]: https://www.reddit.com/r/linuxmint/comments/rn04lw/interest_in_warpinator_for_ios/
|
||||
[7]: https://blog.linuxmint.com/?p=4293
|
||||
[8]: https://t.me/debugpoint
|
||||
[9]: https://twitter.com/DebugPoint
|
||||
[10]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[11]: https://facebook.com/DebugPoint
|
@ -0,0 +1,104 @@
|
||||
[#]: subject: "Vivaldi 5.2 Adds a Reading List Panel & New Privacy Statistics Bar"
|
||||
[#]: via: "https://news.itsfoss.com/vivaldi-5-2-release/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14452-1.html"
|
||||
|
||||
Vivaldi 5.2 增加了阅读列表面板和新的隐私统计栏
|
||||
======
|
||||
|
||||
> Vivaldi 5.2 已经准备好了,增加了新的功能,使该浏览器对桌面和移动用户更加有用。
|
||||
|
||||

|
||||
|
||||
对于那些希望获得更好的浏览体验的用户来说,Vivaldi 一直以来都是一个很好的选择。
|
||||
|
||||
尽管它不是完全的<ruby>自由及开放源代码软件<rt>Free and Open Source Software</rt></ruby>(FOSS)(用户界面是专有的,其他部分是开源的),但对于那些需要处理多个标签页,以及希望有更多特性的 Linux 用户来说,它是一个可行的选择。
|
||||
|
||||
事实上,它现在是 [Linux 用户的最佳选择之一][1]。
|
||||
|
||||
Vivaldi 5.2 增加了更多有用的升级,对于你目前使用的浏览器来说,它现在成为了一个吸引人的可选替代品。
|
||||
|
||||
### Vivaldi 5.2:新功能
|
||||
|
||||
Vivaldi 5.2 通过一个新的阅读面板和一个独立的隐私统计栏,增强了使用体验。
|
||||
|
||||
其安卓版也得到了一些令人兴奋的升级,让我们来看看吧!
|
||||
|
||||
下面是更多的介绍:
|
||||
|
||||
#### 阅读列表面板
|
||||
|
||||
![][2]
|
||||
|
||||
此前,Vivaldi 的侧面板已经有了大量的选项,包括电子邮件、RSS、日历等。
|
||||
|
||||
现在,一直存在于地址栏中的阅读列表(保存页面以便以后阅读)现在也可以在侧面板中使用。
|
||||
|
||||
出现在侧面板中后,阅读列表变得比以前更容易访问。因此,你能够在你需要的时候,随时检查/浏览阅读列表,而不必从当前的任务中切换出来。
|
||||
|
||||
你可以在下面的视频中查看该功能的运行情况:
|
||||
|
||||

|
||||
|
||||
你可以在侧面板里管理、搜索和组织阅读列表。
|
||||
|
||||
你也可以使用快捷命令,把任何页面保存到到阅读列表中。别忘了,你的阅读列表还能够与你的手机(安卓)或任何其他已连接的设备同步。
|
||||
|
||||
#### 隐私统计栏
|
||||
|
||||
![][4]
|
||||
|
||||
尽管 Vivaldi 已经有了阻止跟踪器的内置保护功能,但你并不能正确了解这些跟踪器的信息。
|
||||
|
||||
有了新的统计栏,你就可以集中地看到在浏览过程中被阻止的所有跟踪器的跟踪行为。
|
||||
|
||||
大多数用户可能不关心这个问题。但是,查看统计信息可以让你知道什么追踪器更普遍,并获得对它们的了解。
|
||||
|
||||
你也可以在下面的视频中了解它的实际使用:
|
||||
|
||||

|
||||
|
||||
#### 其他改进措施
|
||||
|
||||
除了隐私统计栏,Vivaldi 5.2 还提供了其他改进,比如:
|
||||
|
||||
* 支持把 [Qwant][6] 搜索引擎作为默认的搜索引擎。
|
||||
* 优化了标签的拖/放操作。
|
||||
* 改进了 Vivaldi Mail、Calendar 和 Feed Reader 的功能。
|
||||
|
||||
若想了解更多信息,你可以参考 [官方发布公告][7]。
|
||||
|
||||
### 下载 Vivaldi 5.2
|
||||
|
||||
你可以从它的官方网站下载最新的发布包(deb/rpm)来安装。
|
||||
|
||||
> [下载 Vivaldi 5.2][8]
|
||||
|
||||
如果你是通过官方的仓库 [在 Linux 上安装的 Vivaldi][9],它可能已经在你的软件更新列表里了,即使现在没有,你也应该很快就能在软件更新列表中找到它。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/vivaldi-5-2-release/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/best-browsers-ubuntu-linux/
|
||||
[2]: https://news.itsfoss.com/wp-content/uploads/2022/04/vivaldi-side-panel.jpg
|
||||
[3]: https://youtu.be/hhGQUO8u9iQ
|
||||
[4]: https://news.itsfoss.com/wp-content/uploads/2022/04/Privacy-statistics-vivaldi-5-2.jpg
|
||||
[5]: https://youtu.be/MAY5s_MpnxY
|
||||
[6]: https://www.qwant.com/
|
||||
[7]: https://vivaldi.com/press/vivaldi-adds-a-reading-list-panel-shows-statistics-on-blocked-trackers-and-ads/
|
||||
[8]: https://vivaldi.com/download/
|
||||
[9]: https://itsfoss.com/install-vivaldi-ubuntu-linux/
|
@ -0,0 +1,85 @@
|
||||
[#]: subject: "Xubuntu 22.04 LTS – New Features and Release Details"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/xubuntu-22-04-lts/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14478-1.html"
|
||||
|
||||
Xubuntu 22.04 LTS - 新功能和发布细节
|
||||
======
|
||||
|
||||
> Xubuntu 22.04 LTS(Jammy Jellyfish)的新功能列表以及关于该版本的其他信息。
|
||||
|
||||
![Xubuntu 22.04 Desktop][1]
|
||||
|
||||
### Xubuntu 22.04 LTS - 新功能
|
||||
|
||||
Xubuntu 22.04 LTS 采用的是 Linux 内核 5.15,基础软件包来自 Ubuntu 22.04 LTS。除此以外,默认的桌面环境版本是 Xfce 4.16。Xfce 桌面环境自 2020 年 12 月发布以来,没有发布任何重要的版本。
|
||||
|
||||
尽管如此,自 Xubuntu 21.10(最后一个版本)就在使用的 Xfce 桌面 4.16 版本,桌面组件和原生应用得到了一些改进和错误修复。
|
||||
|
||||
也许这个版本的重要工作是在 Greybird 主题中对 GTK4 和 libhandy 的初步支持(通过 3.23.1 版本)。这意味着来自 GNOME 生态系统的 GTK4 应用在 Xubuntu 的主题下看起来不错。
|
||||
|
||||
### 应用更新
|
||||
|
||||
默认的文件管理器 Thunar 4.16.10 增加了一些性能改进,包括回归修复、翻译更新和一些变化。虽然在翻阅更新日志的时候,我找不到任何对用户可见的实质性报告。但如果你有兴趣,你可以 [在这][2] 详细阅读新闻。
|
||||
|
||||
事实上,Thunar 现在正在和 Xfce 4.17 一起开发,包含了一些令人兴奋的变化。但不幸的是,我们都需要在短期支持版本中等待,因为要在长期支持版本中实现这些功能还为时过早。
|
||||
|
||||
除此之外,Xfce Terminal 在这个版本中仍然是 0.8.10。与 Thunar 类似,Xfce Terminal 1.0.0 重大更新也不会在这个长期支持版本中出现。
|
||||
|
||||
除了这两个,其他的桌面组件仍然是最后的稳定版本,包括 Xfce Panel 4.16.3、Xfce Window Manager 4.16.1 和 Xfce Desktop 4.16。值得一提的是,Xfce 仍在进行 GTK4 的过渡工作,目前还没有太明确的时间表。
|
||||
|
||||
此外,原生应用的版本被提升到最新的稳定迭代版本。但一个重大变化是,继 Ubuntu 之后, Xubuntu 22.04 中的 Firefox 可执行文件现在是 Snap 版本。因此,在理想情况下,用户不会感觉到任何差异,但由于其沙盒性质,可能会在扩展程序和其他工具方面面临一些问题。
|
||||
|
||||
除此之外,Xubuntu 22.04 还期望从社区竞赛中获得一些漂亮的壁纸,其中一个作为默认壁纸。竞赛结果还没有出来。不过,你可以在 [本页面][4] 上找到一些令人兴奋的投稿。
|
||||
|
||||
### 总结和下载
|
||||
|
||||
总结一下,主要的核心框架、应用和它们的版本都在下面。
|
||||
|
||||
* GNOME 42
|
||||
* GTK 3.24.32
|
||||
* MATE 1.26
|
||||
* Xfce 4.16
|
||||
* Firefox 99
|
||||
* Thunderbird 91.8
|
||||
* Atril Document Viewer 1.26
|
||||
* Engrampa Archive Manager 1.26
|
||||
* Ristretto Image Viewer 0.12.2
|
||||
* LibreOffice 7.3.x
|
||||
* Catfish 4.16.3
|
||||
* Mousepad 0.5.8
|
||||
|
||||
最后,要下载 Xubuntu 22.04 的 BETA 版本,请参考下面的 ISO 文件的链接。你可以尝试在虚拟机上安装或在物理系统中尝试。
|
||||
|
||||
* [xubuntu-22.04-beta-desktop-amd64.iso][5]
|
||||
* [其他下载选项包括torrent, checksum][6]
|
||||
|
||||
_信息来自 [官方更新日志][7]_
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/xubuntu-22-04-lts/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/04/Xubuntu-22.04-Desktop-1024x575.jpg
|
||||
[2]: https://archive.xfce.org/src/xfce/thunar/4.16/
|
||||
[4]: https://contest.xubuntu.org/wallpaper_contest/xubuntu-22-04-community-wallpaper-contest/?action=view
|
||||
[5]: https://cdimage.ubuntu.com/xubuntu/releases/22.04/beta/xubuntu-22.04-beta-desktop-amd64.iso
|
||||
[6]: https://cdimage.ubuntu.com/xubuntu/releases/22.04/beta/
|
||||
[7]: https://wiki.xubuntu.org/releases/22.04/release-notes
|
||||
[8]: https://t.me/debugpoint
|
||||
[9]: https://twitter.com/DebugPoint
|
||||
[10]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[11]: https://facebook.com/DebugPoint
|
@ -0,0 +1,110 @@
|
||||
[#]: subject: "Create Your Own Custom Light and Dark Wallpaper for GNOME"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/custom-light-dark-wallpaper-gnome/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14471-1.html"
|
||||
|
||||
如何创建你的自定义 GNOME 深浅壁纸
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 一份简单的指南:如何针对 GNOME 桌面环境来创建你的自定义的深色和浅色壁纸。
|
||||
|
||||
[GNOME 42][1] 将备受期待的深浅主题带到 GNOME 桌面环境。它也带来壁纸的深色和浅色版本,当你切换深色或浅色主题时,它会自动地转换。
|
||||
|
||||
因此,默认情况下,GNOME 给予你一套预配置的深色和浅色壁纸。但是如果你想要在主题更改时自动地转换成另一种不同的壁纸要怎么做呢?
|
||||
|
||||
下面是如何在 GNOME 中配置和创建你自己的深浅壁纸的方法。
|
||||
|
||||
### 如何针对 GNOME 桌面环境来创建自定义的深浅壁纸
|
||||
|
||||
第一,确保你手边有两个版本的壁纸。一般来说,它们应该是标准的 PNG 或 JPG 图像文件。例如,我们针对这个示例使用下面的两张壁纸。
|
||||
|
||||
![Sample light and dark wallpaper for demo][2]
|
||||
|
||||
但是,如果你没有合适的深浅壁纸,或者正在查找更多的壁纸,在这篇指南的结尾,我将让你知道如何获取它们,或者如何自己准备它们。请跟着我阅读。
|
||||
|
||||
第二,我们需要为我们自己创建一个模式文件。壁纸的自动更换是由一个名为 `adwaita.xml` 的 XML 文件处理的,它定义了特定的深色和浅色的背景标记。因此,我们将为壁纸创建我们自己的 XML 文件。
|
||||
|
||||
为做到这一点,[从 GitLab 复制][3] `adwaita.xml` 的内容,并创建一个新的 XML 文件。你能够会在这个文件中看到两个标记 – `filename` 和 `filename-dark`。这两个 XML 标记包含这两个壁纸的完整的限定的路径。现在,在这两个标记下添加你的图像文件的路径,如我下图所示。。
|
||||
|
||||
![Change the XML file][4]
|
||||
|
||||
第三,把这个文件保存到 `/home/<your_name>/.local/share/gnome-background-properties`,(请将 `<your_name>` 替换为你的用户名)文件名任意。如果这里没有 `gnome-background-properties` 目录,就创建它。针对这个示例,我使用 `my_cool_backgrounds.xml` 文件名。
|
||||
|
||||
![Save the file][5]
|
||||
|
||||
这样,你就准备好了所有的东西。最后,打开 “<ruby>设置<rt>Settings</rt></ruby>” 并转到 “<ruby>外观<rt>Appearance</rt></ruby>” 标签页,你应该会看到一个新的壁纸选项。
|
||||
|
||||
选择你自己的自定义的深浅壁纸,尽情享受。
|
||||
|
||||
![Appearance tab has now your own custom light and dark wallpaper][7]
|
||||
|
||||
### 如何下载或制作你自己的动态壁纸
|
||||
|
||||
当然,你必然会想,谁有时间去查找和创建壁纸的日夜版本?这里有一些网站来向你提供预制好的动态壁纸,你可以轻松地下载和安装。
|
||||
|
||||
我推荐的一个网站是 [dynamicwallpaper.club][8] ,它有一些高达 6K 的极好的高质量的壁纸,可用于 macOS。你可以轻松地下载它们。
|
||||
|
||||
此外,如果你打算从上述网站下载,请记住该网站的图像文件是 [heic][9] 格式的,因为这个网站是针对 macOS 的。<ruby>高效视频编码<rt>High-Efficiency Video Coding</rt></ruby>(HEIC)是苹果的专有的 HEIF(<ruby>高效图像文件<rt>High-Efficiency Image File</rt></ruby>)专有版本。
|
||||
|
||||
那么,如何在 Linux 系统中转换它们? 好吧,在 Ubuntu 或 Fedora Linux 中,你需要一个驱动程序来查看和转换动态的 heic 图像文件。打开一个终端,运行下面的命令开安装驱动程序。
|
||||
|
||||
Ubuntu 用户 –
|
||||
|
||||
```
|
||||
sudo apt install heif-gdk-pixbuf
|
||||
```
|
||||
|
||||
Fedora 用户 –
|
||||
|
||||
```
|
||||
sudo dnf install libheif
|
||||
```
|
||||
|
||||
只针对使用 KDE Plasma 的 Fedora/Ubuntu 用户(没有这个插件的帮助,Plasma 应用程序就不能打开 heic 格式的图像文件):
|
||||
|
||||
```
|
||||
sudo apt install qt-heif-image-plugin
|
||||
sudo dnf install qt-heif-image-plugin
|
||||
```
|
||||
|
||||
最后,使用你喜欢的图像查看器打开 heic 图像文件,并将其保存为 JPG/PNG 图像文件。
|
||||
|
||||
最好,不要忘记在下面的评论区告诉我,你是否能够针对 GNOME 桌面环境来创建你自己的自定义的深浅壁纸了。
|
||||
|
||||
![Custom Light and Dark wallpaper in GNOME – transition][10]
|
||||
|
||||
感谢阅读。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/custom-light-dark-wallpaper-gnome/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[robsean](https://github.com/robsean)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2022/03/gnome-42-release/
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/04/Sample-light-and-dark-wallpaper-for-demo.jpg
|
||||
[3]: https://gitlab.gnome.org/GNOME/gnome-backgrounds/-/tree/main/backgrounds
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/Change-the-XML-file-1024x568.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/04/Save-the-file-1024x548.jpg
|
||||
[6]: https://www.debugpoint.com/2021/12/gnome-text-editor/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/04/Apperance-tab-has-now-your-own-custom-light-and-dark-wallpaper-1024x657.jpg
|
||||
[8]: https://dynamicwallpaper.club
|
||||
[9]: https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format
|
||||
[10]: https://www.debugpoint.com/wp-content/uploads/2022/04/Custom-Light-and-Dark-wallpaper-in-GNOME-transition-1024x556.gif
|
||||
[11]: https://t.me/debugpoint
|
||||
[12]: https://twitter.com/DebugPoint
|
||||
[13]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[14]: https://facebook.com/DebugPoint
|
@ -0,0 +1,73 @@
|
||||
[#]: subject: "Firefox 99 Brings These Two Changes for Linux Users"
|
||||
[#]: via: "https://news.itsfoss.com/firefox-99-release/"
|
||||
[#]: author: "Shobhit Singh https://news.itsfoss.com/author/shobhit/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "zd200572"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14455-1.html"
|
||||
|
||||
Firefox 99 为 Linux 用户带来了两点改变
|
||||
======
|
||||
|
||||
> 最新发布的 Firefox 浏览器为桌面 Linux 用户带来了两点改变。
|
||||
|
||||

|
||||
|
||||
Mozilla 的 Firefox 是最受欢迎的开源浏览器之一,这也是它在许多 Linux 发行版(如 Mint 和 Ubuntu)中用作默认浏览器的原因。
|
||||
|
||||
最近,Mozilla 发布了 Firefox 99.0 版本,为 Linux 版本带来了新的安全性和 UI 特性。
|
||||
|
||||
### 更新了什么呢?
|
||||
|
||||
* 现在,你可以使用键盘快捷键 `n` 在<ruby>阅读器模式<rt>ReaderMode</rt></ruby>中切换“<ruby>讲述<rt>Narrate</rt></ruby>”模式。
|
||||
* 你可以在 PDF 查看器中找到对搜索音调符号的附加支持。
|
||||
* 添加了 GTK 叠加滚动条。
|
||||
* Linux 沙箱已得到加强:暴露于 Web 内容的进程不再有权访问 X Window 系统(X11)。
|
||||
* Firefox 现在在德国和法国支持信用卡自动填充和捕获。
|
||||
|
||||
在本文中,我们将深入研究这些内容,并进一步扩展Linux版本特定的变化。
|
||||
|
||||
### GTK 叠加滚动条
|
||||
|
||||
这个版本的 Firefox 为滚动条做了一个新的、时尚的、更窄的设计。如果不在使用中,滚动条也会隐藏,这让浏览器给人以更现代和优雅的感觉。
|
||||
|
||||
![][1]
|
||||
|
||||
但在稳定版中这个特性默认没有启用。开启这个特性,转到 `about:config`,搜索 `widget.gtk.overlay-scrollbars.enabled`。这个值默认是 `false`,双击它将设置为 `true`,这将启用新的滚动条。
|
||||
|
||||
![][2]
|
||||
|
||||
### Linux 沙箱得到加强
|
||||
|
||||
这是一个安全更新,目的是将 Firefox 进程与系统的其余部分隔离开来。沙箱环境是一个应用可以在不影响任何外部应用,或与任何外部应用程序交互的情况下运行的环境。这个特别的更新禁止了 Web 进程和 X 服务器的任何互动。X 服务器(X11)是大多数 Linux 发行版中使用的默认 GUI 服务器。
|
||||
|
||||
Snap、Flatpak 和 Appimage 已经提供了其应用程序的沙盒版本。如果你是一个 Snap 或者 Appimage 用户,这是个好消息。然而,有 [报道称][3] 这会破坏硬件加速功能。
|
||||
|
||||
_硬件加速是应用程序将某些任务加载到硬件的过程,从而提高性能和提高硬件使用效率。糟糕的硬件加速是 Linux 上电池性能不佳的原因之一。_
|
||||
|
||||
### 结束语
|
||||
|
||||
总之,这是 Firefox 最后一次大的两位数版本号更新,很高兴看到 Firefox 对隐私和安全的一贯决心。此版本中未解决的一些问题,例如与硬件加速相关的错误,希望在下次更新中得到解决。
|
||||
|
||||
这就把我们带到了 Firefox 100。每日构建版本的 Firefox 100 已经发布。完整的稳定版本将在 2022.5.3 发布。它承诺提供诸如画中画格式的字幕和改进的硬件加速等功能。你可以通过在每日构建中的 `about:preferences#experimental` 启用 `Firefox 100 User-Agent String` 来尝试 Firefox 的这些实验性版本。
|
||||
|
||||
想要了解更多?查看一些不为人知的 [Firefox 功能,以获得更好的浏览体验][4]。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/firefox-99-release/
|
||||
|
||||
作者:[Shobhit Singh][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者ID](https://github.com/zd200572)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/shobhit/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://news.itsfoss.com/wp-content/uploads/2022/04/Before-After_gtk_overlay-scrollbars-edited.png
|
||||
[2]: https://news.itsfoss.com/wp-content/uploads/2022/04/Overlay-scrollbar-config-option.png
|
||||
[3]: https://bbs.archlinux.org/viewtopic.php?id=275415
|
||||
[4]: https://itsfoss.com/firefox-useful-features/
|
@ -0,0 +1,102 @@
|
||||
[#]: subject: "How to Activate the Dark and Light Wallpaper Variants in GNOME 42"
|
||||
[#]: via: "https://itsfoss.com/dark-light-wallpaper-gnome/"
|
||||
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14472-1.html"
|
||||
|
||||
如何启用 GNOME 42 中的深色和浅色双主题壁纸
|
||||
======
|
||||
|
||||
GNOME 42 的主要 [功能][1] 之一就是提供了深色和浅色模式的双主题壁纸。
|
||||
|
||||
![GNOME 42 中的深色和浅色壁纸][2]
|
||||
|
||||
基本上,有了这个功能,当你切换到浅色模式时,系统就会使用浅色版本的壁纸。而当你 [在 GNOME 中切换到深色模式][3]时,壁纸就会切换成深色的版本。
|
||||
|
||||
下面是一个双主题壁纸的例子,你可以比较一下:
|
||||
|
||||
![GNOME 中的深色和浅色双主题壁纸:浅色][4]
|
||||
|
||||
![GNOME 中的深色和浅色双主题壁纸:深色][4a]
|
||||
|
||||
这种双主题壁纸可在“<ruby>设置<rt>Settings</rt></ruby> > <ruby>外观<rt>Appearance</rt></ruby>”的“<ruby>背景<rt>Background</rt></ruby>”部分中启用。
|
||||
|
||||
然而,在某些情况下,设置中可能没有双主题壁纸,你可能会看到一个空的“背景”部分,像下面这样:
|
||||
|
||||
![没有双主题壁纸][5]
|
||||
|
||||
这是我的同事 Sreenath 在更新他的 Endeavour OS 系统、得到新的 GNOME 42 桌面时注意到的情况。
|
||||
|
||||
### 在 GNOME 42 中启用深色和浅色双主题壁纸
|
||||
|
||||
如果你也在 GNOME 42 中面临同样的情况,我这里有一个快速而简单的解决方案。你只需要使用软件包管理器,安装 `gnome-backgrounds` 软件包,问题就会得到解决。
|
||||
|
||||
首先,请 [检查桌面环境细节][6],确保你正在运行 GNOME 42。你可以在系统设置的“<ruby>关于<rt>About</rt></ruby>”部分查看你的桌面版本。
|
||||
|
||||
当你确定你的系统安装了 GNOME 42,请继续执行剩下的步骤。
|
||||
|
||||
对于 [基于 Arch 的发行版][7],请使用 [pacman 命令][8],如下:
|
||||
|
||||
```
|
||||
sudo pacman -S gnome-backgrounds
|
||||
```
|
||||
|
||||
等待命令执行完毕。
|
||||
|
||||
![][9]
|
||||
|
||||
你不需要重新启动,甚至不需要注销。改动将立即生效。
|
||||
|
||||
你只需进入“<ruby>设置<rt>Settings</rt></ruby> > <ruby>外观<rt>Appearance</rt></ruby>”,然后选择“<ruby>背景<rt>Background</rt></ruby>”部分,应该就会看到各种具有双重模式的壁纸。
|
||||
|
||||
选择其中的一对,它就会根据你的系统主题来设置图像。
|
||||
|
||||
![GNOME 中的深色和浅色壁纸][10]
|
||||
|
||||
太好了。但你只能得到 GNOME 团队或者发行版的开发者提供的少数双主题壁纸。如果你想拥有一套自己的深色和浅色模式的壁纸呢?那么,你可以自己制作壁纸,只是需要一点调整和耐心。
|
||||
|
||||
### 制作你自己的双主题壁纸(针对高级用户)
|
||||
|
||||
我假设你知道自己在干什么,你可以搜索下面的步骤,以在深色和浅色双主题壁纸中添加额外的壁纸时:
|
||||
|
||||
* 下载两张图片
|
||||
* 把浅色壁纸重命名为 `image-l.jpg`,把深色壁纸重命名为 `image-d.jpg`
|
||||
* 如果你想让新壁纸对所有用户可用,请在 `/usr/share` 目录下新建一个 `gnome-background-properties` 目录。否则,如果你只想自己使用,请在 `.local/share` 中新建这个目录
|
||||
* 将这段 [GNOME 官方 GitLab 仓库中的代码][11] 拷贝到文本编辑器中,并在 `<filename>` 标签中分别修改相应的浅色或深色图片的位置
|
||||
* 将其保存在你之前创建的 `gnome-background-properties` 目录下
|
||||
* 现在可以在系统设置里修改背景壁纸了
|
||||
|
||||
需要更多帮助吗?WOGUE 有一个很好的视频,里面展示了这些步骤的操作。
|
||||
|
||||

|
||||
|
||||
我希望你喜欢这个快速小技巧。祝你体验愉快!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/dark-light-wallpaper-gnome/
|
||||
|
||||
作者:[Abhishek Prakash][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/abhishek/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://news.itsfoss.com/gnome-42-features/
|
||||
[2]: https://itsfoss.com/wp-content/uploads/2022/04/fedora-36-gnome-42-dark-800x450.jpg
|
||||
[3]: https://itsfoss.com/fedora-dark-mode/
|
||||
[4]: https://itsfoss.com/wp-content/uploads/2022/04/GNOME_Light_Desktop.jpg
|
||||
[4a]: https://itsfoss.com/wp-content/uploads/2022/04/GNOME_Dark_Desktop.jpg
|
||||
[5]: https://itsfoss.com/wp-content/uploads/2022/04/no-dark-light-wallpaper-in-gnome-800x326.png
|
||||
[6]: https://itsfoss.com/find-desktop-environment/
|
||||
[7]: https://itsfoss.com/arch-based-linux-distros/
|
||||
[8]: https://itsfoss.com/pacman-command/
|
||||
[9]: https://itsfoss.com/wp-content/uploads/2022/04/add-dark-light-wallpapers-gnome-800x366.png
|
||||
[10]: https://itsfoss.com/wp-content/uploads/2022/04/dark-light-wallpapers-gnome-800x370.jpg
|
||||
[11]: https://gitlab.gnome.org/GNOME/gnome-backgrounds/-/blob/main/backgrounds/adwaita.xml.in
|
195
published/20220410 10 Best Indie RPG Games for Linux in 2022.md
Normal file
195
published/20220410 10 Best Indie RPG Games for Linux in 2022.md
Normal file
@ -0,0 +1,195 @@
|
||||
[#]: subject: "10 Best Indie RPG Games for Linux in 2022"
|
||||
[#]: via: "https://itsfoss.com/best-indie-rpg-games-linux/"
|
||||
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14479-1.html"
|
||||
|
||||
2022 年 10 款最佳的 Linux 独立 RPG 游戏
|
||||
======
|
||||
|
||||

|
||||
无论是在 Windows、Linux 还是 macOS 上,你都能找到很多独立游戏玩。
|
||||
|
||||
你有可能会找到十分激动人心的游戏,这些游戏往往是被低估的,这使得探索独立游戏成为了一件令人兴奋的事。
|
||||
|
||||
但是,在本文中,我只关注 Linux 平台上最佳的独立(即由小团队开发的)RPG 游戏。
|
||||
|
||||
即使你只有一套入门级的游戏硬件也没有关系,大多数独立游戏在许多计算机(甚至只有集成显卡)上都能正常工作。
|
||||
|
||||
请注意,本列表包括来自 Steam 的游戏(没有特定的排名顺序),它们有些是免费的,有些则是付费的。
|
||||
|
||||
> 如果你是一个狂热的游戏玩家,在游戏上花费了大量的时间和金钱,你应该订阅 Humble Monthly。这个来自 [Humble Bundle][1](这是一个推广链接,请阅读原文站点的 [推广政策][2])的月度订阅计划让你每个月只需花 12 美元就能获得 100 美元的游戏。
|
||||
>
|
||||
> 并不是所有游戏都能在 Linux 上玩,但这仍然是笔划算的交易,因为你从 Humble Bundle 网站购买任何游戏或书籍都能获得额外的 10% 折扣。
|
||||
>
|
||||
> 最棒的是,你的每一次购买都是对一个慈善组织的支持。因此,你不仅仅是在玩游戏,你也在为世界带来改变。
|
||||
>
|
||||
> - [订阅 Humble Monthly][1]
|
||||
|
||||
### 1. Valheim
|
||||
|
||||
![][3]
|
||||
|
||||
Valheim 是一个令人印象深刻的独立游戏,它目前仍处于内测阶段。
|
||||
|
||||
这是一个关于探险和生存的游戏,你可以同时与最多 10 名玩家一起玩。当然,你也可以选择自己一个人玩。
|
||||
|
||||
对于一个独立开发的游戏来说,它里面的世界看起来美极了,而且随着时间的推移,这个游戏也在不断改进。它是一款付费游戏,在 Steam 上的售价为 19.99 美元,它原生支持 Linux 平台。
|
||||
|
||||
> - [Valheim][4]
|
||||
|
||||
### 2. Undertale
|
||||
|
||||

|
||||
|
||||
Undertale 是一款有趣的 RPG 游戏,你不需要在游戏中杀任何人。你可以利用其战斗系统,通过谈判来摆脱危险。
|
||||
|
||||
游戏围绕着一个掉入地下怪物世界的人类而展开。令人惊讶的是,你可以和一个骷髅约会,甚至可以和所有的 boss 成为朋友。
|
||||
|
||||
因此,当你开始玩这个游戏时,你会有一个快乐的体验。
|
||||
|
||||
> - [Undertal(Steam)][5]
|
||||
> - [Humble Bundle 商店][6]
|
||||
|
||||
### 3. ARK:Survival Evolved
|
||||
|
||||
![][7]
|
||||
|
||||
ARK Survival Evolved 是一款生存和探索游戏,它发生在一个美丽环境下,里面有恐龙和其他生物。
|
||||
|
||||
为了生存和逃跑,你需要制作、采集资源、狩猎、驯服生物、繁殖它们,以及做更多的事情。
|
||||
|
||||
它可能不完全像是一个独立游戏,但它尽力给你一个接近 3A 大作的游戏体验。
|
||||
|
||||
> - [ARK: Survival Evolved][8]
|
||||
|
||||
### 4. Wildermyth
|
||||
|
||||
![][9]
|
||||
|
||||
它是一个剧情决策 RPG 游戏,你的战术、战斗以及所做的决定将影响游戏中的世界和人物。
|
||||
|
||||
你可以和你的角色们一起对抗邪恶,并跟随他们完成整个职业生涯。它不是一个普通的独立 RPG 游戏,而是一个提供角色深度的游戏,让你沉浸其中。
|
||||
|
||||
这个游戏售价为 24.99 美元,可在 Linux 上运行。
|
||||
|
||||
> - [Wildermyth][10]
|
||||
|
||||
### 5. Mount & Blade:Warband
|
||||
|
||||
![][11]
|
||||
|
||||
经典的战争动作 RPG 游戏之一,它让你有机会建立一支军队,扩大你的王国,并为王位而战!
|
||||
|
||||
虽然它最初是在 2010 年推出的,但是它有几个 DLC 可以供你扩大和探索更多的可玩性。
|
||||
|
||||
游戏的基本费用为 9.99 美元。你可以根据需要购买额外的 DLC。
|
||||
|
||||
> - [Mount & Blade][12]
|
||||
|
||||
### 6. Rakuen
|
||||
|
||||
![][13]
|
||||
|
||||
Rakuen 是一款有趣的冒险 RPG 游戏,它的主角是一个住在医院里的小男孩。
|
||||
|
||||
故事围绕着小男孩通过帮助医院里的邻居来完成挑战,同时还要对付他们在幻想世界里的另一个自己。
|
||||
|
||||
男孩的妈妈承诺,只要他完成了所有这些挑战,就会护送他到他最喜欢的故事书中的幻想世界。互动过程中,你的情绪会像过山车一样,经历快乐、悲伤、思考和难忘的回忆。
|
||||
|
||||
该游戏在 Steam 上的价格为 9.9 美元。
|
||||
|
||||
> - [Rakuen][14]
|
||||
|
||||
### 7. Darkwood
|
||||
|
||||
![][15]
|
||||
|
||||
Darkwood 是一款独一无二的生存恐怖 RPG 游戏,它采用上帝视角。
|
||||
|
||||
你可能认为它会是一个上帝视角的基本体验,但令人印象深刻的是,它设法提供了一个沉浸式的体验,在这个游戏中,你的决定至关重要。这个自由漫游的世界中没有任何任务标记,所以它会是一个具有挑战性的体验。
|
||||
|
||||
> - [Darkwood][16]
|
||||
|
||||
### 8. WAFKU
|
||||
|
||||
![][17]
|
||||
|
||||
WAFKU 是一个充满动作元素的大型多人在线 RPG 宇宙。
|
||||
|
||||
它以一组有趣的人物为特色,并给人以回合制战术战斗的奇妙体验。每个等级都有一套独特的技能。而且,你会在游戏中发现所有的 18 种技能。
|
||||
|
||||
因此,你可以探索/选择适合你的游戏风格。
|
||||
|
||||
你可以建造自己的世界,控制生态系统,还可以参与政治生活。听起来很有意思,不是吗?
|
||||
|
||||
> - [WAFKU][18]
|
||||
|
||||
### 9. Mechajammer
|
||||
|
||||
![][19]
|
||||
|
||||
Mechajammer 是一款有趣的 RPG 游戏,它具有令人兴奋的视觉效果。
|
||||
|
||||
它采用了回合制赛博朋克的设定,因此你会有一种新鲜的体验。你可以选择一辆车或武器,挑选一个帮派的支线任务,以及做其他一些事情。
|
||||
|
||||
它很好的融合了开放世界探索和回合制战斗,这对你来说会是个挑战。你可以做很多方面的定制,包括调整角色的能力。
|
||||
|
||||
它或许不是一个受欢迎的选择,但它是一个硬核的经典风格的 RPG 游戏,因此口碑还是不错的。
|
||||
|
||||
> - [Mechajammer][20]
|
||||
|
||||
### 10. Finding Paradise
|
||||
|
||||
![][21]
|
||||
|
||||
玩够了战斗/动作游戏?来点故事驱动的 RPG 体验如何?
|
||||
|
||||
Finding Paradise 是一款很棒的故事驱动型 RPG 游戏,它围绕着实现一个垂死者的遗愿而展开。
|
||||
|
||||
> - [Finding Paradise][22]
|
||||
|
||||
### 总结
|
||||
|
||||
以上是在 Steam 上为 Linux 用户提供的一些评价最好的 RPG 游戏。
|
||||
|
||||
事实上,Linux 上还有非常多的独立 RPG 游戏,本文只列举了其中几个我们最喜欢的。你有喜欢的游戏吗?请在下面的评论区中告诉我们吧!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/best-indie-rpg-games-linux/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[lkxed](https://github.com/lkxed)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.humblebundle.com/?partner=itsfoss
|
||||
[2]: https://itsfoss.com/affiliate-policy/
|
||||
[3]: https://itsfoss.com/wp-content/uploads/2022/03/valheim-linux.jpg
|
||||
[4]: https://store.steampowered.com/app/892970/Valheim/
|
||||
[5]: https://store.steampowered.com/app/391540/Undertale/
|
||||
[6]: https://www.humblebundle.com/store/undertale?partner=itsfoss
|
||||
[7]: https://itsfoss.com/wp-content/uploads/2022/03/ark-survival-linux.jpg
|
||||
[8]: https://store.steampowered.com/app/346110/ARK_Survival_Evolved/
|
||||
[9]: https://itsfoss.com/wp-content/uploads/2022/03/wildermyth.jpg
|
||||
[10]: https://store.steampowered.com/app/763890/Wildermyth/
|
||||
[11]: https://itsfoss.com/wp-content/uploads/2022/03/mount-blade-linux.jpg
|
||||
[12]: https://store.steampowered.com/app/48700/Mount__Blade_Warband/
|
||||
[13]: https://itsfoss.com/wp-content/uploads/2022/03/rakeun-linux.jpg
|
||||
[14]: https://store.steampowered.com/app/559210/Rakuen/
|
||||
[15]: https://itsfoss.com/wp-content/uploads/2022/03/darkwood-linux.jpg
|
||||
[16]: https://store.steampowered.com/app/274520/Darkwood/
|
||||
[17]: https://itsfoss.com/wp-content/uploads/2022/03/wafku-linux.jpg
|
||||
[18]: https://store.steampowered.com/app/215080/WAKFU/
|
||||
[19]: https://itsfoss.com/wp-content/uploads/2022/03/mechajammer-linux.jpg
|
||||
[20]: https://store.steampowered.com/app/485400/Mechajammer/
|
||||
[21]: https://itsfoss.com/wp-content/uploads/2022/03/finding-paradise.jpg
|
||||
[22]: https://store.steampowered.com/app/337340/Finding_Paradise/
|
@ -0,0 +1,69 @@
|
||||
[#]: subject: "Kubuntu 22.04 LTS – New Features and Release Details"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/kubuntu-22-04-lts/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-14483-1.html"
|
||||
|
||||
Kubuntu 22.04 LTS - 新功能和发布细节
|
||||
======
|
||||
|
||||
> Kubuntu 22.04 LTS(Jammy Jellyfish)的新功能列表以及关于该版本的其他信息。
|
||||
|
||||
![Kubuntu 22.04 LTS Desktop][1]
|
||||
|
||||
### Kubuntu 22.04 LTS 新功能
|
||||
|
||||
也许在可用性、外观和稳定性方面,最受欢迎的基于 Ubuntu 的 Linux 发行版是 Kubuntu。Kubuntu 22.04 LTS 采用的是 Linux 内核 5.15 LTS,采用同 Ubuntu 22.04 LTS 一样的基础软件包。此外,它还带有 [KDE Plasma 5.24.x 系列][2],这是 Plasma 桌面当前的 LTS 版本。
|
||||
|
||||
此外,KDE Plasma 5.24.x 系列是 KDE Plasma 桌面的第 26 个版本,带来了一些令人惊叹的功能,如概览效果、新通知等。尽管到今天为止它还不是最新的 Plasma,但它是最新的稳定版本。
|
||||
|
||||
另一方面,如果你将上一个 Kubuntu 20.04 LTS 与这个版本相比较,你可以期待看到一大堆变化。首先,Kubuntu 20.04 Focal Fossa 带有 KDE Plasma 5.18,而如今是 5.24 系列。你可以看到大量的新功能和一个完全不同的桌面,做了更好的无障碍和性能的改进。其次,KDE Plasma 5.24 由 Qt 5.15.2 和 KDE Frameworks 5.90 支持,这也是自上一个 Kbuntu Focal Fossa 以来的一个跳跃。
|
||||
|
||||
毋庸置疑,你能体验到的重要功能是 Plasma 桌面新设计的概览屏幕。你可以使用 `Meta+W` 组合键启动它,而且支持多个虚拟屏幕。新的概览屏幕会让你想起 GNOME 的应用视图。该视图在顶部给你提供了虚拟桌面的缩略图,在中间,你可以看到虚拟桌面打开的窗口列表。它还为你提供了一个搜索选项,可以使你更快地找到你的应用。
|
||||
|
||||
![Kubuntu 22.04 Overview screen][3]
|
||||
|
||||
这个版本的 Plasma 还带来了一个自定义的强调色选项,会触发你对美丽桌面的灵感。除此之外,更新的 Breeze Classic 主题和重新设计的字体大小使这个版本成为 LTS 发布中的一个完美版本。
|
||||
|
||||
### 其他变化
|
||||
|
||||
由于 Kubuntu 22.04 LTS 基于 [Ubuntu 22.04][5],其核心应用和软件包给你提供了他们稳定版本中最好的东西,总结如下:
|
||||
|
||||
* KDE Plasma 5.24.x
|
||||
* KDE Frameworks 5.92
|
||||
* Qt 5.15.x
|
||||
* Firefox 99
|
||||
* Thunderbird 91.8
|
||||
* LibreOffice 7.3.x
|
||||
|
||||
最后,要下载这个版本的 BETA 版本,请参考下面的 ISO 文件链接。你可以尝试在虚拟机上安装或在物理系统中尝试。
|
||||
|
||||
* [kubuntu-22.04-beta-desktop-amd64.iso][6]
|
||||
* <http://cdimage.ubuntu.com/kubuntu/releases/22.04/beta/>
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/kubuntu-22-04-lts/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/04/Kubuntu-22.04-LTS-Desktop-1024x580.jpg
|
||||
[2]: https://www.debugpoint.com/2022/03/kde-plasma-5-24-review/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/04/Kubuntu-22.04-Overview-screen-1024x580.jpg
|
||||
[5]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[6]: http://cdimage.ubuntu.com/kubuntu/releases/22.04/beta/kubuntu-22.04-beta-desktop-amd64.iso
|
||||
[7]: https://t.me/debugpoint
|
||||
[8]: https://twitter.com/DebugPoint
|
||||
[9]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[10]: https://facebook.com/DebugPoint
|
@ -1,121 +0,0 @@
|
||||
[#]: subject: "Maui Shell’s First Alpha Release Looks Promising"
|
||||
[#]: via: "https://news.itsfoss.com/maui-shell-alpha-release/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Maui Shell’s First Alpha Release Looks Promising
|
||||
======
|
||||
|
||||
Even before its release, [Maui shell][1] has been praised as the future of the Linux desktop user interface.
|
||||
|
||||
And, for all the right reasons:
|
||||
|
||||
It attempts to bring convergence to the mainstream, just like Canonical tried with Unity. Regarding looks, you get modern aesthetics inspired by various existing desktop experiences.
|
||||
|
||||
Overall, it could provide a good desktop experience thanks to various KDE technologies being used under the hood.
|
||||
|
||||
If you didn’t know already, the team behind [Nitrux OS][2] is developing the Maui shell.
|
||||
|
||||
Recently, they announced the first alpha release of the shell. Let me mention the key highlights of the release.
|
||||
|
||||
### Maui Shell Alpha: What’s New?
|
||||
|
||||
![][3]
|
||||
|
||||
With the first alpha release, they focus on introducing missing features and fixing some of the biggest issues found with the initial testing.
|
||||
|
||||
You can check out Jacob’s [first impressions on using Maui shell on a Linux phone][4] if you are curious.
|
||||
|
||||
While it is still the “alpha” release, numerous problems experienced by early testers and developers may have been fixed.
|
||||
|
||||
Some of the most significant changes include:
|
||||
|
||||
#### Improving Cask
|
||||
|
||||
**Cask** is the shell container with elements like cards, popups, panels, dock, and more.
|
||||
|
||||
The first alpha release focused more on improving Cask.
|
||||
|
||||
![][5]
|
||||
|
||||
The panel now includes the ability to handle sound, Bluetooth, dark mode, brightness, dark mode, and media controls.
|
||||
|
||||
Media control has a new look and can be expanded to get more options.
|
||||
|
||||
The dock and launcher also received some visual tweaks, with subtle shadows/bold text. You will notice the most used apps on the first page of the launcher, along with the categories and quick access.
|
||||
|
||||
They mention that it will be configurable for the users.
|
||||
|
||||
There’s also an option to enable an adaptive color scheme, where the shell takes colors from wallpaper and change it to light/dark mode.
|
||||
|
||||
While you can also toggle light/dark mode manually, it only works with the adaptive color feature disabled.
|
||||
|
||||
![][6]
|
||||
|
||||
In addition to all this, you will also find improvements to the panel cards, session cards, and notification cards.
|
||||
|
||||
![][7]
|
||||
|
||||
#### Functionality Upgrades
|
||||
|
||||
A new session startup program called “**starcask-wayland**” is in place to set up all the necessary parts before launching the shell, including autostart services, setting environment variables, etc.
|
||||
|
||||
You will also find a new [PolKit][8] agent added to handle authentication.
|
||||
|
||||
The release note also mentions the backend stack being used for all the new functionalities introduced:
|
||||
|
||||
* BlueDevil, to handle Bluetooth connections
|
||||
* Plasma-nm for Network connections
|
||||
* KSolid
|
||||
* KIO for file manager functions
|
||||
* PulseAudio
|
||||
* MauiKit
|
||||
* Kirigami
|
||||
|
||||
|
||||
|
||||
#### Other Improvements
|
||||
|
||||
This alpha release involves setting up the most basic functionalities needed in a modern desktop experience.
|
||||
|
||||
Things like calendar integration are still in progress, and the overall completion of Cask (or the Shell container) is expected to be complete with its beta release in the future.
|
||||
|
||||
The beta release is expected in **June**, with the final stable release scheduled for **September**.
|
||||
|
||||
You can learn more about the technical changes, known issues, how you can contribute, and more details in its [official announcement post][9].
|
||||
|
||||
### How to Test Maui Shell Alpha Release?
|
||||
|
||||
You will have to wait for the next Nitrux release or build it from the source if you want to get your hands on the first alpha release of Maui shell.
|
||||
|
||||
Note that you should not try it on your production system, considering the shell is in heavy development.
|
||||
|
||||
You can refer to the [announcement][9] for testing instructions or explore the [GitHub page][10].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/maui-shell-alpha-release/
|
||||
|
||||
作者:[Ankush Das][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://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://news.itsfoss.com/maui-shell-unveiled/
|
||||
[2]: https://news.itsfoss.com/reasons-to-try-nitrux-os/
|
||||
[3]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjUwNyIgd2lkdGg9Ijc4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[4]: https://news.itsfoss.com/tested-maui-shell/
|
||||
[5]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQ1NCIgd2lkdGg9Ijc4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[6]: https://i0.wp.com/i.ytimg.com/vi/8WVkcMONYd0/hqdefault.jpg?w=780&ssl=1
|
||||
[7]: https://i0.wp.com/i.ytimg.com/vi/xmJjsR8_-pQ/hqdefault.jpg?w=780&ssl=1
|
||||
[8]: https://wiki.archlinux.org/title/Polkit
|
||||
[9]: https://nxos.org/maui/maui-shell-alpha-release/
|
||||
[10]: https://github.com/Nitrux/maui-shell/
|
@ -1,96 +0,0 @@
|
||||
[#]: subject: "Xfce Terminal 1.0.0 is a Feature-Packed Major Upgrade After a Year"
|
||||
[#]: via: "https://news.itsfoss.com/xfce-terminal-1-0-0-release/"
|
||||
[#]: author: "Jacob Crume https://news.itsfoss.com/author/jacob/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geelpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Xfce Terminal 1.0.0 is a Feature-Packed Major Upgrade After a Year
|
||||
======
|
||||
|
||||
The popular terminal emulator found on almost all Xfce-powered distributions, Xfce Terminal has just released its first major upgrade under a new maintainer (and a new versioning scheme).
|
||||
|
||||
Let us take a look at some highlights of the release.
|
||||
|
||||
### New Maintainer & Versioning Scheme
|
||||
|
||||
Igor Zakharov was leading the development from 2016 until 2020. Unfortunately, it was left unmaintained in 2021 when the new maintainer, [Sergios][1] Anestis Kefalidis (also a developer of Thunar file manager), took over the responsibility.
|
||||
|
||||
And, since Sergios took over the project, the versioning scheme has changed. After consultation with the community, Thunar’s old versioning scheme was adopted.
|
||||
|
||||
For instance, version 1.1.x will be the development release, and 1.2.0 will be the next major upgrade.
|
||||
|
||||
Now, with the release of Xfce Terminal 1.0.0, a number of exciting new features have been packed in.
|
||||
|
||||
### New Features
|
||||
|
||||
Some new features in Xfce Terminal 1.0.0 include:
|
||||
|
||||
* Improved customization options
|
||||
* Overlay scrollbar support
|
||||
* Command-line option improvements
|
||||
* More use of XfceTitledDialog
|
||||
|
||||
|
||||
|
||||
#### Better Customization Options
|
||||
|
||||
As with many application updates these days, Xfce Terminal 1.0.0 includes plenty of new customization options. Perhaps my favorite, the image background feature now has a ‘Fill’ style option. This is accompanied by the ability to temporarily disable the unsafe paste dialog, which has also been revamped.
|
||||
|
||||
Finally, XFCE Terminal has also become one of the first apps to support the new XFCE shortcuts editor. As a result, users no longer need to dive into configuration files, instead of being given a simple UI to use.
|
||||
|
||||
![][2]
|
||||
|
||||
With so many new customization options, I’m sure many people would be happy with a release containing just these. But alas! The developer has managed to squeeze in yet more exciting new features, the next of which is the improved command-line arguments.
|
||||
|
||||
#### Better Command Line Arguments
|
||||
|
||||
With this release, ‘–tab’ and ‘–window’ command line arguments have been fixed to be more intuitive. This fixes a rather [longstanding bug][3] in XFCE Terminal that has been known for almost 6 years.
|
||||
|
||||
Despite the long wait, it has now been fixed. Better late than never, eh?
|
||||
|
||||
Anyway, it is always great to see bugs squashed with every new release, and this trend continues here.
|
||||
|
||||
#### More Use Of Xfce-Specific Widgets
|
||||
|
||||
Although I’m sure many users will probably see this as a downgrade, XFCE Terminal’s use of more XFCE-specific widgets brings numerous advantages. While it does mean more dependencies for non-XFCE users, it means better integration with XFCE.
|
||||
|
||||
It is safe to say that most of the Xfce terminal users stick to the same desktop environment. So, this change should result in greater consistency and UX improvements.
|
||||
|
||||
#### Other Changes
|
||||
|
||||
Other changes in this release include:
|
||||
|
||||
* ‘Scrolling on ouput’ preference improvements
|
||||
* Right-click behavior customization options
|
||||
* Code reworking for a smaller codebase
|
||||
|
||||
|
||||
|
||||
For a full list of features, feel free to refer to the [release notes][4]. The release notes also mention future plans for the next major release, v1.2.0.
|
||||
|
||||
### Wrapping Up
|
||||
|
||||
Overall, Xfce Terminal 1.0.0 is looking to be a great release and goes to show the dedication of its new maintainer.
|
||||
|
||||
If you want to try Xfce Terminal 1.0.0, it should be landing in your distribution’s repositories in the following weeks, if not already.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/xfce-terminal-1-0-0-release/
|
||||
|
||||
作者:[Jacob Crume][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://news.itsfoss.com/author/jacob/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.youtube.com/channel/UCu8-J-XWcXQhoCopBiJ5-uw/videos
|
||||
[2]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjUwOSIgd2lkdGg9Ijc4MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[3]: https://bugzilla.xfce.org/show_bug.cgi?id=12926
|
||||
[4]: http://users.uoa.gr/~sdi1800073/sources/xfce_blog12.html
|
@ -1,63 +0,0 @@
|
||||
[#]: subject: "Linux Mint 21 Code Name Announced with New Upgrade Utility and More"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/linux-mint-21-announcement/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Linux Mint 21 Code Name Announced with New Upgrade Utility and More
|
||||
======
|
||||
THE MINT TEAM ANNOUNCED THE UPCOMING LINUX MINT 21 CODENAME, A UTILITY
|
||||
FOR EASY UPGRADE AND WARPINATOR USE CASES THAT STUNS THE TEAM.
|
||||
### Linux Mint 21 Announcement and Other Updates
|
||||
|
||||
Firstly, Linux Mint 21 code name is “Vanessa”, and it will be based on [Ubuntu 22.04 LTS Jammy Jellyfish][1]. As usual, it will feature its three flagship versions: Xfce, Cinnamon, and MATE.
|
||||
|
||||
Secondly, it is evident that the Mint team chooses Ubuntu 22.04 LTS as the base of Linux Mint 21 for long term support, and it will feature the [Linux Kernel 5.15,][2] which is LTS Kernel.
|
||||
|
||||
In addition to that, the project leader Clement Lefebvre announced [a new upgrade utility][3] (mintupgrade2) that will make life easier for people planning to upgrade to Linux Mint 21. Historically, upgrading to major versions of Mint is a complex terminal-driven process and generally difficult for average users.
|
||||
|
||||
![Mint upgrade 2 utility announced with Linux Mint 21][4]
|
||||
|
||||
So, looking at the user base, it is a significant step for the team to develop this utility for their users. Clement Lefebvre promises that the new utility will be completely graphical, have manageable steps and instructions to follow, localization with language, armed with pre-checks for the complex upgrade processes, configurable and easy to understand instructions to users.
|
||||
|
||||
This tool will be the primary utility for Linux Mint 20 to 21 upgrade when released around the May-June timeframe. Moreover, the new utility promises to give you warnings about custom PPAs and orphaned packages, reducing your worries before upgrading. Honestly, this will be one of the best tools that the Mint team brings to the table for their users.
|
||||
|
||||
#### Other updates
|
||||
|
||||
Not only these updates, but the team also informed that the file transfer tool Warpinator is used by several users worldwide for some strange use cases – which the team never thought of before. For example, people used Warpinator to transfer files between Windows and Steam deck from Valve, displayed [here][5].
|
||||
|
||||
With that said, Warpinator now has a BETA release [for iOS][6] users. You can now quickly transfer files between your Apple systems to any other system, including Android, Linux, or Windows. Fantastic piece of application from the team.
|
||||
|
||||
_You can read about Linux Mint 21 announcement and more in the official [blog][7]._
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][8], [Twitter][9], [YouTube][10], and [Facebook][11] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/linux-mint-21-announcement/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[2]: https://www.debugpoint.com/2021/11/linux-kernel-5-15/
|
||||
[3]: https://github.com/linuxmint/mintupgrade2
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/Mint-upgrade-2-utility-announced-with-Linux-Mint-21.jpg
|
||||
[5]: https://www.youtube.com/watch?v=sHdQT6kI6Q8
|
||||
[6]: https://www.reddit.com/r/linuxmint/comments/rn04lw/interest_in_warpinator_for_ios/
|
||||
[7]: https://blog.linuxmint.com/?p=4293
|
||||
[8]: https://t.me/debugpoint
|
||||
[9]: https://twitter.com/DebugPoint
|
||||
[10]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[11]: https://facebook.com/DebugPoint
|
@ -0,0 +1,105 @@
|
||||
[#]: subject: "EndeavourOS Apollo Release Introduces a new Worm Window Manager"
|
||||
[#]: via: "https://news.itsfoss.com/endeavouros-apollo-release/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
EndeavourOS Apollo Release Introduces a new Worm Window Manager
|
||||
======
|
||||
|
||||
EndeavourOS is an Arch-based distro that focuses on a terminal-centric user experience along with all the other goodies.
|
||||
|
||||
With its latest Apollo release, the EndeavourOS team has made efforts to improve the community editions, resolve some existing issues, and add a new window manager.
|
||||
|
||||
### EndeavourOS Apollo: What’s New?
|
||||
|
||||
The most significant changes include a brand-new Window Manager “Worm” and having FirewallD installed (and enabled) by default.
|
||||
|
||||
Let us take a brief look at the changes along with other improvements.
|
||||
|
||||
#### New Worm Window Manager
|
||||
|
||||
![][1]
|
||||
|
||||
Worm is a lightweight window manager developed by one of the community editions team members (Codic12). It is written in [Nim][2].
|
||||
|
||||
Presently, it is based on X11 and does not support Wayland.
|
||||
|
||||
The window manager focuses on performance while being able to work with floating/tiling modes with essential window decorations that include minimize, maximize, and close buttons.
|
||||
|
||||
The layout can even operate nicely on a semi-embedded device like Pi Zero.
|
||||
|
||||
#### Linux Kernel 5.17
|
||||
|
||||
[Linux Kernel 5.17][3] is all about supporting next-gen hardware. If you are looking to try an Arch-based distro on the latest hardware configuration, EndeavourOS should be a nice option to start with.
|
||||
|
||||
#### FirewallD Installed and Enabled
|
||||
|
||||
![][4]
|
||||
|
||||
While not everyone appreciates having a firewall enabled by default, with the latest Apollo release, EndeavourOS will have it baked in and active after installation.
|
||||
|
||||
#### New Quickstart App
|
||||
|
||||
![][5]
|
||||
|
||||
A GUI app to launch after the first boot (quickstart) was added to help you choose/install common and helpful apps.
|
||||
|
||||
It provides the selection of applications using the Arch repo and not the [AUR][6].
|
||||
|
||||
#### A New Nvidia Driver Installer
|
||||
|
||||
The existing nvidia-installer-dkms app was rewritten as an improved command-line tool to make the process easier and more efficient.
|
||||
|
||||
The tool is still in its beta phase, but it is a good addition for users with Nvidia graphics.
|
||||
|
||||
#### Improvements to the Installer
|
||||
|
||||
Various improvements to the installation process were made, like the addition of an internet check before installation, a fix for DE selection, and more technical work to improve the experience.
|
||||
|
||||
#### Other Improvements
|
||||
|
||||
![][7]
|
||||
|
||||
Along with the key highlights, there are plenty of important fixes and changes that include:
|
||||
|
||||
* Disable Bluetooth by default, but active in the Live environment.
|
||||
* Applying compression on installed files for btrfs.
|
||||
* Community editions with dedicated display manager, including Light DM, Slick greeter, Lxdm, ly, and GDM.
|
||||
* Automatically choosing the closest EndeavourOS mirror.
|
||||
|
||||
|
||||
|
||||
You can learn more about the latest release in their [official announcement][8].
|
||||
|
||||
### Download EndeavourOS Apollo
|
||||
|
||||
The latest ISO is available on their official website. You can head to the [downloa][9][d][9] [page][9] and get the ISO from one of the mirrors available.
|
||||
|
||||
[EndeavourOS][9]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/endeavouros-apollo-release/
|
||||
|
||||
作者:[Ankush Das][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://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjU3NiIgd2lkdGg9IjEwMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIi8+
|
||||
[2]: https://en.wikipedia.org/wiki/Nim_(programming_language)
|
||||
[3]: https://news.itsfoss.com/linux-kernel-5-17-release/
|
||||
[4]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjY3OSIgd2lkdGg9IjkwMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[5]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjU4MyIgd2lkdGg9Ijk2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[6]: https://itsfoss.com/aur-arch-linux/
|
||||
[7]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjUyNCIgd2lkdGg9Ijg1NCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[8]: https://endeavouros.com/news/the-apollo-release-has-landed/
|
||||
[9]: https://endeavouros.com/latest-release/
|
@ -0,0 +1,107 @@
|
||||
[#]: subject: "Ubuntu MATE 22.04 – New Features and Release Details"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/ubuntu-mate-22-04-lts/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Ubuntu MATE 22.04 – New Features and Release Details
|
||||
======
|
||||
A LIST OF NEW FEATURES OF THE UBUNTU MATE 22.04 LTS (JAMMY JELLYFISH)
|
||||
THAT INCLUDES WHAT CHANGED SINCE THE PRIOR LTS RELEASE.
|
||||
![Ubuntu MATE 22.04 LTS Desktop][1]
|
||||
|
||||
### Ubuntu MATE 22.04 LTS – New Features
|
||||
|
||||
Ubuntu MATE 22.04 LTS “Jammy Jellyfish” releases on April 21, 2022, with the developers’ two years’ worth of continuous work.
|
||||
|
||||
While looking at the changes in Ubuntu MATE 22.04 LTS, I was surprised to see the number of changes it brings compared to the other official Ubuntu flavours, excluding KDE Plasms while based on [Ubuntu 22.04 LTS][2].
|
||||
|
||||
The primary reason is that Ubuntu MATE 22.04 LTS brings the latest , a major version upgrade since Ubuntu MATE 20.04 featuring MATE Desktop 1.24.
|
||||
|
||||
In addition to that, this is a first point release of the MATE desktop environment, which means you are bound to experience the performance boost because bugs and memory leaks are eliminated.
|
||||
|
||||
While trying the available ISO, I felt the is fantastic. It is super fast in terms of responses on the desktop. Thanks to the great work done by the MATE desktop team.
|
||||
|
||||
![Such a nice and clean login screen of Ubuntu MATE 22.04 LTS][3]
|
||||
|
||||
#### Themes and other changes
|
||||
|
||||
Moreover, this LTS release is the first variant that officially launches the with all the Yaru colour themes plus the native “Chelsea cucumber” green version. And it looks stunning.
|
||||
|
||||
Furthermore, the team also included dark and light app indicators of popular applications in the system tray, which automatically changes appearance when you transition from dark to light theme or vice-versa.
|
||||
|
||||
![MATE variant of Yaru themes][4]
|
||||
|
||||
This release includes three new GNOME applications due to popular demand: . Interestingly, they are GNOME apps based on the 41.0 release and they look stunning in the MATE environment considering they are using GTK4 and libadwaita.
|
||||
|
||||
[][5]
|
||||
|
||||
SEE ALSO: Pop OS 22.04 LTS - New Features and Release Updates
|
||||
|
||||
Besides those, the team included all popular package formats by default in the installation. That means , and you do not need to play around to set them up the first time.
|
||||
|
||||
Finally, this release brings back the message indicators with 22.2.0 in the default installation. Ayatana Indicators now supports backwards compatibility to Ubuntu indicators and doesn’t require additional setup.
|
||||
|
||||
Last but not least, a colossal set of impactful tiny changes, under the hood improvements and application updates makes it one of the most memorable releases from the Ubuntu MATE team.
|
||||
|
||||
### Summary of the changes
|
||||
|
||||
To sum up the essential changes in Ubuntu MATE 22.04 LTS:
|
||||
|
||||
* Performance boosted and optimized MATE Desktop 1.26.1
|
||||
* Linux Kernel 5.15 LTS
|
||||
* MATE variant of Yaru theme with accent colours
|
||||
* Automatic dark and light icon switching in the system tray, based on user themes
|
||||
* MATE Tweak improvements that make the desktop layout switch more effortless than ever
|
||||
* MATE HUD now supports updated rofi theme engine
|
||||
* The ISO size is reduced by 41% as the team dropped NVIDIA drivers from the ISO (you can still install via option during setup)
|
||||
* Three new apps from GNOME: GNOME Clocks, Maps and Weather
|
||||
* Out of the box support for Flatpak, Snap and AppImage
|
||||
* Raspberry Pi image will be available post-release
|
||||
* Firefox 99.0
|
||||
* Evolution 3.44
|
||||
* LibreOffice 7.3+
|
||||
|
||||
|
||||
|
||||
Finally, Ubuntu MATE 22.04 LTS is now available as a BETA download via the below links. You may want to give it a try before the final release.
|
||||
|
||||
* [ubuntu-mate-22.04-beta-desktop-amd64.iso][6]
|
||||
* [Checksums, torrents and other information][7]
|
||||
|
||||
|
||||
|
||||
[_Via official changelog._][8]
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][9], [Twitter][10], [YouTube][11], and [Facebook][12] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/ubuntu-mate-22-04-lts/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/04/Ubuntu-MATE-22.04-LTS-Desktop-1024x577.jpg
|
||||
[2]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/04/Such-a-nice-and-clean-login-screen-of-Ubuntu-MATE-22.04-LTS.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/MATE-variant-of-Yaru-themes-1024x558.jpg
|
||||
[5]: https://www.debugpoint.com/2022/04/pop-os-22-04-lts/
|
||||
[6]: https://cdimage.ubuntu.com/ubuntu-mate/releases/22.04/beta/ubuntu-mate-22.04-beta-desktop-amd64.iso
|
||||
[7]: https://cdimage.ubuntu.com/ubuntu-mate/releases/22.04/beta/
|
||||
[8]: https://ubuntu-mate.org/blog/ubuntu-mate-jammy-jellyfish-release-notes/
|
||||
[9]: https://t.me/debugpoint
|
||||
[10]: https://twitter.com/DebugPoint
|
||||
[11]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[12]: https://facebook.com/DebugPoint
|
@ -0,0 +1,99 @@
|
||||
[#]: subject: "Razer and Lambda Team Up to Unveil a Linux Laptop for Deep Learning"
|
||||
[#]: via: "https://news.itsfoss.com/tensorbook-razer-lambda/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Razer and Lambda Team Up to Unveil a Linux Laptop for Deep Learning
|
||||
======
|
||||
|
||||
Razer is known for its gaming peripherals and hardware.
|
||||
|
||||
On the other hand, Lambda offers workstations, servers, and GPU clusters equipped with their software stack to facilitate deep learning as conveniently as possible.
|
||||
|
||||
They have collaborated to present a sleek-looking modern laptop (powered by Ubuntu 20.04) tailored for deep learning on the go.
|
||||
|
||||
And, it isn’t like any [other Linux laptops][1] available.
|
||||
|
||||
In case you are curious, deep learning is a type of machine learning where you teach a computer to process information similar to how humans do (by example). You can explore [Wikipedia][2] for more details.
|
||||
|
||||
### Tensorbook: The Deep Learning Laptop
|
||||
|
||||
![][3]
|
||||
|
||||
The Tensorbook is a Linux-powered laptop with state-of-the-art specifications to help you efficiently work with deep learning training/development anywhere. And, Lambda’s software stack supports all the tools to conveniently update PyTorch, Tensorflow, CUDA, etc., with just a single command.
|
||||
|
||||
Of course, the name isn’t a surprise, considering tensor cores help speed up the machine learning training/process.
|
||||
|
||||
![][4]
|
||||
|
||||
Razer did not add any of their usual signature patterns with this laptop, like a green accent/color, logo, or RGB elements. Well, for the greater good, this is tailored for deep learning. So, it is only fair that it isn’t too flashy.
|
||||
|
||||
You only find the lambda logo as the primary on the lid and a Razer x Lambda text on the bottom bezel of the screen. And, the purple accent goes all over, Lambda taking the lead on its branding here.
|
||||
|
||||
The specifications for the laptop involve:
|
||||
|
||||
* **GPU**: GeForce RTX 3080 Max-Q 16 GB VRAM
|
||||
* **CPU:** Intel i7-11800H
|
||||
* **RAM:** 64 GB 3200 MHz DDR4
|
||||
* **Storage:** 2 TB NVMe PCIe 4.0
|
||||
* **Display:** 165 Hz 1440p 15.6-inch
|
||||
|
||||
|
||||
|
||||
In addition to the solid core configuration, the connectivity options include:
|
||||
|
||||
* 3 x USB 3.2 Gen 2 Type-A ports
|
||||
* 1 x HDMI 2.1
|
||||
* 1 x UHS-III SD Card Reader
|
||||
* 3.5 mm Headphone/Microphone jack
|
||||
* 2 x Thunderbolt 4 ports
|
||||
* Wi-Fi 6E
|
||||
* Bluetooth 5.2
|
||||
|
||||
|
||||
|
||||
Undoubtedly, the laptop is a sleek powerhouse with all the components packed in it.
|
||||
|
||||
The RTX 3080 GPU should be capable enough to help with your deep learning tasks, whether you are a professional or a beginner.
|
||||
|
||||
Of course, it isn’t pitched for gaming, but with what you have, along with a high refresh rate screen, you can comfortably game on it when you want.
|
||||
|
||||
![][5]
|
||||
|
||||
The machine learning training benchmarks claim that it is way ahead of the M1 Max chip.
|
||||
|
||||
So, you will not have any trouble with training models.
|
||||
|
||||
### Pricing and Availability
|
||||
|
||||
It is a premium offering, so the price tag suits the same, starting at **$3499**. You can customize it for enterprise settings to pack in Windows 10 and Ubuntu.
|
||||
|
||||
An extended warranty and premium support is available if you want to pay the extra.
|
||||
|
||||
You can customize and proceed with the purchase on Lambda’s official website.
|
||||
|
||||
[Tensorbook][6]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/tensorbook-razer-lambda/
|
||||
|
||||
作者:[Ankush Das][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://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/get-linux-laptops/
|
||||
[2]: https://en.wikipedia.org/wiki/Deep_learning
|
||||
[3]: https://i.ytimg.com/vi/wMh6Dhq7P_Q/hqdefault.jpg
|
||||
[4]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjgwMCIgd2lkdGg9IjcyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[5]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjYwMCIgd2lkdGg9IjgyMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[6]: https://lambdalabs.com/deep-learning/laptops/tensorbook
|
@ -0,0 +1,105 @@
|
||||
[#]: subject: "Ubuntu Budgie 22.04 LTS – New Features and Release Details"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/ubuntu-budgie-22-04-lts/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Ubuntu Budgie 22.04 LTS – New Features and Release Details
|
||||
======
|
||||
A LIST OF NEW FEATURES IN THE UBUNTU BUDGIE 22.04 LTS RELEASE.
|
||||
Ubuntu Budgie is the official Ubuntu flavour that features the Budgie Desktop Environment. It is uniquely designed to give you an alternative desktop experience while depending upon the GNOME stack. Written in C and Vala, the Budgie desktop uses GTK 3.x series for its components.
|
||||
|
||||
![Ubuntu Budgie 22.04 LTS Desktop][1]
|
||||
|
||||
### Ubuntu Budgie 22.04 LTS – New Features
|
||||
|
||||
[Ubuntu 22.04 LT][2]S is the base for Ubuntu Budgie 22.04 LTS, which features the [Linux Kernel 5.15 LTS][3] and underlying base packages. The Linux KErnel 5.15 brings proper support for all the latest CPU, GPU and SoC lineup from the popular manufacturers. Let’s take a look at the Budgie core improvements in this release.
|
||||
|
||||
Firstly, this release brings the latest Budgie 10.6 series which brings several improvements since the last LTS version of Ubuntu Budgie. The major changes include the budgie-indicator-applet, which has now swapped to support ayatana-indicators. Also, ayatana-indicator-applet and ayatana-webmail installation are now possible, supporting desktop notification integration with Evolution and Thunderbird email client.
|
||||
|
||||
Secondly, the system tray now looks more professional with proper spacing between the icons, and the app indicator is now shown at the beginning of the system tray.
|
||||
|
||||
In addition to that, the GNOME Control Center (settings) is now hidden from the main menu, and the Budgie Control Center replaces it. The Budgie control centre was introduced in version 10.6 onwards, and it gives you the necessary options to configure Budgie desktop components.
|
||||
|
||||
Moreover, the desktop layout and appearance get updated WhiteSur icon and GTK themes, GTK4+ compatible Arch themes and the Pocillo icon theme. All the underlying icons and layout themes match with their latest upstream version in this release.
|
||||
|
||||
Furthermore, the important Budgie Welcome tool now features both Brave browser and Microsoft Edge as an option to install. And a new Chrome OS desktop layout is available in this release for those who like the Chrome OS layout.
|
||||
|
||||
![New Chrome OS Layout in Ubuntu Budgie 22.04 LTS][4]
|
||||
|
||||
One of the interesting changes in this release is related to the Firefox web browser. Recently Ubuntu made the transition to Firefox Snap instead of the deb version. So, Budgie also removed the deb version of Firefox from this release and added the snap version. But also, Canonical’s Firefox ESR (extended support release) PPA is now a browser option for all supported releases.
|
||||
|
||||
[][2]
|
||||
|
||||
SEE ALSO: Ubuntu 22.04 LTS "Jammy Jellyfish" - New Features and Release Details
|
||||
|
||||
Finally, a few stunning default wallpaper and the inclusion of the Mesa 22 3D graphics layer make it a somewhat interesting release of Ubuntu Budgie.
|
||||
|
||||
### Summary and Download
|
||||
|
||||
Here is a quick recap and summary of the changes with applications.
|
||||
|
||||
* Linux Kernel 5.15 LTS
|
||||
* Budgie Desktop 10.6.1
|
||||
* Budgie Control Center instead of GNOME Control Center
|
||||
* New Chrome OS Layout
|
||||
* Updated Themes and Icons to match their upstream versions
|
||||
* Cosmetic changes to the top panel
|
||||
* Firefox Snap replaces Firefox deb (with Firefox ESR PPA as an alternative)
|
||||
* Mesa 22
|
||||
|
||||
|
||||
* Firefox 99.x
|
||||
* LibreOffice 7.3.x
|
||||
* Nemo File Manager 5.2.4
|
||||
* Tilix Terminal 1.2.4
|
||||
* Gedit text editor 41.0
|
||||
* RISCV64 architecture support from this release
|
||||
|
||||
|
||||
|
||||
Last but not the least, this may be the last Ubuntu Budgie LTS release with the Budgie desktop as the team may move to EFL desktop in the coming years which you can [read here.][5] But I guess this official flavour will continue to serve users via a fork.
|
||||
|
||||
Overall, a moderate long term support release considering the above new features and updates. Ubuntu Budgie 22.04 LTS is available to download using the below link as Beta. You may want to give it a try before the final release.
|
||||
|
||||
* [ubuntu-budgie-22.04-beta-desktop-amd64.iso][6]
|
||||
|
||||
* [ubuntu-budgie-22.04-beta-desktop-amd64.iso.torrent][7]
|
||||
|
||||
*
|
||||
|
||||
|
||||
_Via [release notes][8]._
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][9], [Twitter][10], [YouTube][11], and [Facebook][12] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/ubuntu-budgie-22-04-lts/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/04/Ubuntu-Budgie-22.04-LTS-Desktop-1024x579.jpg
|
||||
[2]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[3]: https://www.debugpoint.com/2021/11/linux-kernel-5-15/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/New-Chrome-OS-Layout-in-Ubuntu-Budgie-22.04-LTS-1024x596.jpg
|
||||
[5]: https://www.debugpoint.com/2021/09/solus-exit-gtk/
|
||||
[6]: https://cdimage.ubuntu.com/ubuntu-budgie/releases/22.04/beta/ubuntu-budgie-22.04-beta-desktop-amd64.iso
|
||||
[7]: https://cdimage.ubuntu.com/ubuntu-budgie/releases/22.04/beta/ubuntu-budgie-22.04-beta-desktop-amd64.iso.torrent
|
||||
[8]: https://ubuntubudgie.org/2022/03/ubuntu-budgie-22-04-lts-release-notes/
|
||||
[9]: https://t.me/debugpoint
|
||||
[10]: https://twitter.com/DebugPoint
|
||||
[11]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[12]: https://facebook.com/DebugPoint
|
@ -0,0 +1,71 @@
|
||||
[#]: subject: "Elon Musk Believes Twitter Algorithm Should Be Open-Source"
|
||||
[#]: via: "https://news.itsfoss.com/elon-musk-twitter-open-source/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "lkxed"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Elon Musk Believes Twitter Algorithm Should Be Open-Source
|
||||
======
|
||||
|
||||
So, Elon Musk made it to the news again, as usual.
|
||||
|
||||
However, this time, it was very interesting. He made an offer to buy Twitter for about **$43 billion.**
|
||||
|
||||
Technically, he offered way more than the market price in a bid to acquire Twitter, which is why many outlets have claimed it as an attempt at a “hostile takeover”.
|
||||
|
||||
While that may or may not succeed, considering the aggressive offer. At a TED talk, Elon Musk also shared some of his thoughts on how Twitter should move forward to promote free speech.
|
||||
|
||||
### Twitter Algorithm Should be Open-Source
|
||||
|
||||
Elon Musk believes that Twitter should open-source the algorithm to promote transparency in the platform.
|
||||
|
||||
Of course, Twitter as a platform is exploding and unpredictable at the moment. The Twitter team also takes quick actions on certain matters, whether you think it is right or wrong.
|
||||
|
||||
While Twitter’s internal decisions could sound good on paper, there are always issues with such massive platforms without transparency.
|
||||
|
||||
So, Elon Musk might have a point here. Whether you believe or trust Twitter’s decision, transparency/open-source will only help strengthen the existing values.
|
||||
|
||||
Well, no wonder, we love open-source here.
|
||||
|
||||
To quote his words, he mentions:
|
||||
|
||||
> “_And so one of the things that I believe Twitter should do is open-source the algorithm and make any changes to people’s tweets, if they’re emphasized or de-emphasized, that action should be made apparent so anyone can see that action has been taken. So, there’s no sort of behind-the-scenes manipulation, either algorithmically or manually_“
|
||||
|
||||
See more
|
||||
|
||||
> How would Elon Musk change Twitter if he were to buy it? First, he’d make it open source. Watch [@ElonMusk][1]’s wide ranging live [#TED2022][2] interview with [@TEDChris][3] on [@YouTube][4] here: <https://t.co/dFFUxNqLZe> [pic.twitter.com/Okm3y5HpEy][5]
|
||||
>
|
||||
> — TED Talks (@TEDTalks) [April 14, 2022][6]
|
||||
|
||||
On the other side, when we talk about Twitter as an open-source platform in some way, I can’t stop thinking about [Mastodon][7]. You can also find us on [Mastodon][8], if you haven’t explored it yet.
|
||||
|
||||
Sure, Twitter has a lot of growth potential and it is constantly expanding for better or worse. But, can the concept of open-source help the platform? Personally, I think yes, but it is too big a change to expect overnight.
|
||||
|
||||
Of course, no one can predict Elon Musk’s future actions for Twitter either, even if he manages to acquire it. Honestly, he’s just as unpredictable as any complex algorithm.
|
||||
|
||||
_So, what would be your take on this? Do you believe what Elon Musk has to say? Feel free to share your thoughts in the comments down below._
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/elon-musk-twitter-open-source/
|
||||
|
||||
作者:[Ankush Das][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://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://twitter.com/elonmusk?ref_src=twsrc%5Etfw
|
||||
[2]: https://twitter.com/hashtag/TED2022?src=hash&ref_src=twsrc%5Etfw
|
||||
[3]: https://twitter.com/TEDchris?ref_src=twsrc%5Etfw
|
||||
[4]: https://twitter.com/YouTube?ref_src=twsrc%5Etfw
|
||||
[5]: https://t.co/Okm3y5HpEy
|
||||
[6]: https://twitter.com/TEDTalks/status/1514739086908555272?ref_src=twsrc%5Etfw
|
||||
[7]: https://joinmastodon.org/
|
||||
[8]: https://mastodon.social/@itsfoss
|
@ -0,0 +1,104 @@
|
||||
[#]: subject: "Lubuntu 22.04 LTS – New Features and Release Details"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/lubuntu-22-04-lts/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Lubuntu 22.04 LTS – New Features and Release Details
|
||||
======
|
||||
A LIST OF NEW FEATURES AND IMPROVEMENTS IN THE LUBUNTU 22.04 LTS
|
||||
RELEASE.
|
||||
Lubuntu is the LXQt-based Linux Distribution based on Ubuntu Linux. It is one of the super lightweight distros that brings both worlds’ power. With Lubuntu 22.04, you get the latest Ubuntu tech with a lightweight desktop environment. A perfect combination if you still favour the legacy desktops.
|
||||
|
||||
![Lubuntu 22.04 LTS Desktop – isn’t it nice and clean][1]
|
||||
|
||||
### Lubuntu 22.04 – New Features
|
||||
|
||||
The Lubuntu 22.04 LTS based on Ubuntu 22.04 LTS, which features the Linux Kernel 5.15 LTS. The Linux Kernel 5.15 LTS brings the underlying Kernel support for the latest line of the hardware across processors, GPU and ARM chips. It also brings performance improvements across kernel modules and the secure and stable kernel to date.
|
||||
|
||||
Perhaps the vital change in Lubuntu 22.04 LTS is the latest [LXQt desktop version 0.17][2] (based on Qt 5.15). If you are a Lubuntu 20.04 Focal Fossa user, then you should notice significant changes in LXQt 0.17 compared to LXQt 0.14 from Focal Fossa. It is worth mentioning here that [LXQt 1.0.0][3] is the current stable release, and it will not be featured in this version due to schedule and planning mismatch.
|
||||
|
||||
Firstly, LXQt 0.17 brings PCManFM-Qt 0.17, which brings a few changes such as displaying the creation time of files, options to create launchers and shortcuts from the menu and a fix for blurred thumbnails.
|
||||
|
||||
![Creation time][4]
|
||||
|
||||
![Launcher option and root instance in File Manager][5]
|
||||
|
||||
Secondly, the LXQt power manager improves the idle watchers with separate AC and batter options.
|
||||
|
||||
Other than that, the LXQt panel can not behave like a dock with an auto-hide feature when overlapped with the application window.
|
||||
|
||||
![Autohide in LXQt 0.17][6]
|
||||
|
||||
In addition, LXImage Qt image viewer brings “autofit” features when browsing images, a new thumbnail option in settings. Also many more bug fixes across the LXQt desktop in version 0.17, which lands in Lubutnu 22.04 LTS.
|
||||
|
||||
[][7]
|
||||
|
||||
SEE ALSO: Kubuntu 22.04 LTS - New Features and Release Details
|
||||
|
||||
Moreover, the default Browser is the Firefox Snap version, resulting in little slowness on this fast desktop. But it is completely a workload and hardware dependent. What I mean is, you may not feel Firefox Snap is slow in the latest Intel or AMD processor lineup, but it would feel slower compared to the Firefox deb version.
|
||||
|
||||
Furthermore, Lubuntu 22.04 brings the Calamares installer (not the default Ubuntu installer) and adds the KDE Plasma’s Discover software manager. I believe these two are an excellent addition to this release and going to help users.
|
||||
|
||||
Finally, an awesome default wallpaper featuring the official “Jammy Jellyfish” mascot enriches the overall Lubuntu desktop experience.
|
||||
|
||||
### Summary and Download
|
||||
|
||||
With that said, here is a summary of the applications and packages in Lubuntu 22.04 LTS.
|
||||
|
||||
* Based on Ubuntu 22.04 LTS
|
||||
* LXQt Desktop 0.17.0 with Qt 5.15 support
|
||||
* Linux Kernel 5.15
|
||||
* PCManFM-Qt 0.17.0
|
||||
* Discover 5.24
|
||||
* LibreOffice 7.3.2.x
|
||||
* VLC Media Player 3.0.16
|
||||
* Qterminal 0.17
|
||||
* Featherpad text editor 1.0.1
|
||||
* Calamares installer 3.2.41
|
||||
|
||||
|
||||
|
||||
Overall, a perfect update of Lubuntu since the last LTS version, considering the latest LXQt desktop with the latest Qt support, new installer, Discover software manager and underlying applications. Lubuntu 22.04 LTS is now available to download using the below link as Beta. You may want to give it a spin before the final release.
|
||||
|
||||
* [lubuntu-22.04-beta-desktop-amd64.iso][8]
|
||||
* [lubuntu-22.04-beta-desktop-amd64.iso.torrent][9]
|
||||
|
||||
|
||||
|
||||
_A note on Lubuntu users: The official website of Lubuntu is [lubuntu.me][10]. There is another website with .net domain, which is not official. So, always get the info and download it from [lubuntu.me][10]._
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][11], [Twitter][12], [YouTube][13], and [Facebook][14] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/lubuntu-22-04-lts/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/04/Lubuntu-22.04-LTS-Desktop-isnt-it-nice-and-clean-1024x580.jpg
|
||||
[2]: https://www.debugpoint.com/2021/04/lxqt-0-17-release/
|
||||
[3]: https://www.debugpoint.com/2021/11/lxqt-1-0-release/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2021/04/Creation-time-1024x206.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2021/04/Launcher-option-and-root-instance-in-File-Manager.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2021/04/Autohide-in-LXQt-0.17.gif
|
||||
[7]: https://www.debugpoint.com/2022/04/kubuntu-22-04-lts/
|
||||
[8]: https://cdimage.ubuntu.com/lubuntu/releases/22.04/beta/lubuntu-22.04-beta-desktop-amd64.iso
|
||||
[9]: https://cdimage.ubuntu.com/lubuntu/releases/22.04/beta/lubuntu-22.04-beta-desktop-amd64.iso.torrent
|
||||
[10]: https://lubuntu.me/
|
||||
[11]: https://t.me/debugpoint
|
||||
[12]: https://twitter.com/DebugPoint
|
||||
[13]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[14]: https://facebook.com/DebugPoint
|
@ -1,83 +0,0 @@
|
||||
[#]: subject: "Is this the End of the road for elementary OS?"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/end-of-elementary-os/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Is this the End of the road for elementary OS?
|
||||
======
|
||||
Cassidy James, the founder of elementary OS, has resigned from his role
|
||||
as per his recent note. Here’s our take on this topic with possible
|
||||
future.
|
||||
Cassidy James, the founder of elementary OS, has resigned from his role as per his recent note. Here’s our take on this topic with possible future.
|
||||
|
||||
![elementary OS 6 ODIN Desktop][1]
|
||||
|
||||
When elementary OS was first released a decade back, it was a radical step in the Linux Desktop space. Cassidy had a vision that the developers and contributors since, and it’s been adopted by users worldwide. Its Pantheon Desktop is one of the best desktops designed from the ground up with aesthetics and productivity in mind.
|
||||
|
||||
Over the years, elementary has grown. The user base and popularity have increased because it was stable, based on Ubuntu LTS and a perfect desktop for those who want a macOS like a user interface in Linux. The Flatpak based App Store is one of the best app stores in the Linux ecosystem with curated applications.
|
||||
|
||||
But all these good works and user feedback are not profitable if you run a company with free software unless you have a corporate backup and other revenue models.
|
||||
|
||||
### Why this situation and is this the end of the elementary OS?
|
||||
|
||||
The elementary has a “pay for a download” revenue model, which is optional. But with the pandemic situation for two years, the revenue from the sales dropped, and the leadership had cut short the salaries of the full-time employees and medical benefits to sustain the company.
|
||||
|
||||
_“Each release since I joined elementary full time performed even better sales-wise than the last, until OS 6 and 6.1 which performed far worse than expected, likely in part due to the ongoing global pandemic—people were seemingly less likely to pay an optional amount to download an operating system when they could just get it for free. It became clear we needed to re-prioritize our company finances while staying firm in our open-source, privacy-centric, and ethical funding beliefs,”_ said Cassidy in his farewell note.
|
||||
|
||||
The pandemic hit everyone and everything financially across the world. The [elementary OS 6 Odin][2] release did not go well. There were some bugs, issues with Nvidia cards and other problems – the Covid pandemic and lack of contribution impacted the quality of the software. This eventually impacted the optional paid download revenue.
|
||||
|
||||
The optional paid download model, the GitHub sponsorship, is insufficient to sustain a business or a large scale project. If you look at other open-source mainstream projects – such as Fedora Linux, GNOME, KDE Plasma – they all have substantial corporate donations from big enterprises such as Red Hat, IBM, Google, etc. And there is a reason for it. All these big corporations have commercial benefits from these open source projects down the line. But things were a little different for elementary OS.
|
||||
|
||||
[][3]
|
||||
|
||||
SEE ALSO: elementary OS 6 Beta Released. Download and Test Now!
|
||||
|
||||
Cassidy also writes, _“As a result, Dani has asked me to resign and completely step away from elementary. When seeking out another position, this was not my intention, but Dani has been adamant. In the end, I have decided that the best course of action is indeed for me to move on; I’m giving up on my decade-plus passion for elementary and have accepted an offer for Dani to be the sole, 100% owner of elementary, Inc. I’ve signed my resignation. As of today, she now owns the entirety of the company shares and responsibility. I wish her the best in continuing its legacy.”_
|
||||
|
||||
### Looking Ahead
|
||||
|
||||
Honestly, I can feel Cassidy’s emotion in his farewell note. It isn’t easy to give up a project or passion you have built over the years. There are countless hours you invest in a vision for the greater good of the community. Your emotions are attached to it. And it isn’t easy to give up.
|
||||
|
||||
No one can predict the future. So, we don’t know what will happen to the elementary OS as a project in the coming days. When this situation occurs, an open-source company eventually becomes a community project with a much wider audience and contributions. I feel the new leaders need to look at the future road map of elementary in Linux Distribution or Desktop space.
|
||||
|
||||
Because GNOME 42+ with GTK4/libadwaita looks promising, the elementary OS may lose its user base to GNOME. In this scenario, the only selling point is the Pantheon Desktop, which needs to be more polished and marketable while the new leadership looks for better revenue models.
|
||||
|
||||
We hope, as a community, the elementary OS continues to push releases, if required, to make it a community project without the GitHub sponsorship wall. And I think looking for funding or donations from enterprises also can be one of the long term options to sustain.
|
||||
|
||||
No open-source project should be discontinued. I hope the new leadership should look for a better revenue model to sustain the project. Nothing is impossible if you keep a positive mind.
|
||||
|
||||
So, what are your opinions about this entire situation? Let me know in the comment box down below.
|
||||
|
||||
Cheers.
|
||||
|
||||
_Via [Cassidy’s blog][4]_
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][5], [Twitter][6], [YouTube][7], and [Facebook][8] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/end-of-elementary-os/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2021/08/elementary-OS-6-ODIN-Desktop-1024x576.jpeg
|
||||
[2]: https://www.debugpoint.com/2021/08/elementary-os-6-odin-review/
|
||||
[3]: https://www.debugpoint.com/2021/05/elementary-os-6-beta/
|
||||
[4]: https://cassidyjames.com/blog/farewell-elementary/
|
||||
[5]: https://t.me/debugpoint
|
||||
[6]: https://twitter.com/DebugPoint
|
||||
[7]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[8]: https://facebook.com/DebugPoint
|
@ -0,0 +1,88 @@
|
||||
[#]: subject: "How the C programming language has grown"
|
||||
[#]: via: "https://opensource.com/article/22/3/how-c-programming-language-has-grown"
|
||||
[#]: author: "Jim Hall https://opensource.com/users/jim-hall"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
How the C programming language has grown
|
||||
======
|
||||
Here's my interview with Brian Kernighan, co-author (with Dennis Ritchie) of The C Programming Language book, to discuss the C programming language and its 50-year history.
|
||||
|
||||
![The original C programming guide by two of the language authors, circa 1978][1]
|
||||
|
||||
The C programming language will turn fifty years old in 2022. Yet despite its long history, C remains one of the top "most-used" programming languages in many "popular programming languages" surveys. For example, check out the [TIOBE Index][2], which tracks the popularity of different programming languages. Many Linux applications are written in C, such as the GNOME desktop.
|
||||
|
||||
I interviewed [Brian Kernighan][3], co-author (with Dennis Ritchie) of *The C Programming Language* book, to learn more about the C programming language and its history.
|
||||
|
||||
**Where did the C programming language come from?**
|
||||
|
||||
C is an evolution of a sequence of languages intended for system programming—that is, writing programs like compilers, assemblers, editors, and ultimately operating systems. The Multics project at MIT, with Bell Labs as a partner, planned to write everything in a high-level language (a new idea at the time, roughly 1965). They were going to use IBM's PL/1, but it was very complicated, and the promised compilers didn't arrive in time.
|
||||
|
||||
After a brief flirtation with a subset called EPL (by Doug McIlroy of Bell Labs), Multics turned to BCPL, a much simpler and cleaner language designed and implemented by Martin Richards of Cambridge, who I think was visiting MIT at the time. When Ken Thompson started working on what became Unix, he created an even simpler language, based on BCPL, that he called B. He implemented it for the PDP-7 used for the first proto-Unix system in 1969.
|
||||
|
||||
BCPL and B were both "typeless" languages; that is, they had only one data type, integer. The DEC PDP-11, which arrived on the scene in about 1971 and was the computer for the first real Unix implementation, supported several data types, notably 8-bit bytes as well as 16-bit integers. For that, a language that also supported several data types was a better fit. That's the origin of C.
|
||||
|
||||
**How was C used within Bell Labs and the early versions of Unix?**
|
||||
|
||||
C was originally used only on Unix, though after a while, there were also C compilers for other machines and operating systems. Mostly it was used for system-programming applications, which covered quite a spectrum of interesting areas, along with a lot of systems for managing operations of AT&T's telephone network.
|
||||
|
||||
**What was the most interesting project written in C at Bell Labs?**
|
||||
|
||||
Arguably, the most interesting, memorable, and important C program was the Unix operating system itself. The first version of Unix in 1971 was in PDP-11 assembly language, but by the time of the fourth edition, around 1973, it was rewritten in C. That was truly crucial since it meant that the operating system (and all its supporting software) could be ported to a different kind of computer basically by recompiling everything. Not quite that simple in practice, but not far off.
|
||||
|
||||
**You co-authored The C Programming Language book with Dennis Ritchie. How did that book come about, and how did you and Dennis collaborate on the book?**
|
||||
|
||||
I had written a tutorial on Ken Thompson's B language to help people get started with it. I upgraded that to a tutorial on C when it became available. And after a while, I twisted Dennis's arm to write a C book with me. Basically, I wrote most of the tutorial material, except for the system call chapter, and Dennis had already written the reference manual, which was excellent. Then we worked back and forth to smooth out the tutorial parts; the reference manual stayed pretty much the same since it was so well done from the beginning. The book was formatted with the *troff* formatter, one of many tools on Unix, and I did most of the formatting work.
|
||||
|
||||
**When did C become a thing that other programmers outside of Bell Labs used for their work?**
|
||||
|
||||
I don't really remember well at this point, but I think C mostly followed along with Unix for the first half dozen years or so. With the development of compilers for other operating systems, it began to spread to other systems besides Unix. I don't recall when we realized that C and Unix were having a real effect, but it must have been in the mid to late 1970s.
|
||||
|
||||
**Why did C become such an influential programming language?**
|
||||
|
||||
The primary reason in the early days was its association with Unix, which spread rapidly. If you used Unix, you wrote in C. Later on, C spread to computers that might not necessarily run Unix, though many did because of the portable C compiler that Steve Johnson wrote. The workstation market, with companies like Sun Microsystems, MIPS (which became SGI), and others, was enabled by the combination of Unix and C. The IBM PC came somewhat later, about 1982, and C became one of the standard languages, under MS-DOS and then Windows. And today, most Internet of Things (IoT) devices will use C.
|
||||
|
||||
**C remains a popular programming language today, some 50 years after its creation. Why has C remained so popular?**
|
||||
|
||||
I think C hit a sweet spot with efficiency and expressiveness. In earlier times, efficiency really mattered since computers were slow and had limited memory compared to what we are used to today. C was very efficient, in the sense that it could be compiled into efficient machine code, and it was simple enough that it was easy to see how to compile it. At the same time, it was very expressive, easy to write, and compact. No other language has hit that kind of spot quite so well, at least in my humble but correct opinion.
|
||||
|
||||
**How has the C programming language grown or changed over the years?**
|
||||
|
||||
C has grown modestly, I guess, but I haven't paid much attention to the evolving C standards. There are enough changes that code written in the 1980s needs a bit of work before it will compile, but it's mostly related to being honest about types. Newer features like complex numbers are perhaps useful, but not to me, so I can't make an informed comment.
|
||||
|
||||
**What programming problems can be solved most easily in C?**
|
||||
|
||||
Well, it's a good language for anything, but today, with lots of memory and processing power, most programmers are well served by languages like Python that take care of memory management and other more high-level constructs. C remains a good choice for lower levels where squeezing cycles and bytes still matter.
|
||||
|
||||
**C has influenced other programming languages, including C++, Java, Go, and Rust. What are your thoughts on these other programming languages?**
|
||||
|
||||
Almost every language is in some ways a reaction to its predecessors. To over-simplify a fair amount, C++ adds mechanisms to control access to information, so it's better than C for really large programs. [Java][4] is a reaction to the perceived complexity of C++. Go is a reaction to the complexity of C++ and the restrictions of [Java][4]. [Rust][5] is an attempt to deal with memory management issues in C (and presumably C++) while coming close to C's efficiency.
|
||||
|
||||
They all have real positive attributes, but somehow no one is ever quite satisfied, so there will always be more languages that, in their turn, react to what has gone before. At the same time, the older languages, for the most part, will remain around because they do their job well, and there's an embedded base where they are perfectly fine, and it would be infeasible to reimplement in something newer.
|
||||
|
||||
Thanks to Brian for sharing this great history of the C programming language!
|
||||
|
||||
Would you like to learn C programming? Start with these popular C programming articles from the last year: [5 ways to learn the C programming language in 2022][6].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/3/how-c-programming-language-has-grown
|
||||
|
||||
作者:[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/sites/default/files/uploads/2482009942_6caea217e0_c.jpg
|
||||
[2]: https://www.tiobe.com/tiobe-index/
|
||||
[3]: https://opensource.com/article/22/1/interview-brian-kernighan
|
||||
[4]: https://opensource.com/tags/java
|
||||
[5]: https://opensource.com/tags/rust
|
||||
[6]: https://opensource.com/article/22/1/c-programming
|
@ -1,5 +1,5 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: translator: (Starryi)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
@ -1,422 +0,0 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (jiamn)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (Analyze Linux startup performance)
|
||||
[#]: via: (https://opensource.com/article/20/9/systemd-startup-configuration)
|
||||
[#]: author: (David Both https://opensource.com/users/dboth)
|
||||
|
||||
Analyze Linux startup performance
|
||||
======
|
||||
Use systemd-analyze to get insights and solve problems with Linux
|
||||
startup performance.
|
||||
![Magnifying glass on code][1]
|
||||
|
||||
Part of the system administrator's job is to analyze the performance of systems and to find and resolve problems that cause poor performance and long startup times. Sysadmins also need to check other aspects of systemd configuration and usage.
|
||||
|
||||
The systemd init system provides the `systemd-analyze` tool that can help uncover performance problems and other important systemd information. In a previous article, [_Analyzing systemd calendar and timespans_][2], I used `systemd-analyze` to analyze timestamps and timespans in systemd timers, but this tool has many other uses, some of which I will explore in this article.
|
||||
|
||||
### Startup overview
|
||||
|
||||
The Linux startup sequence is a good place to begin exploring because many `systemd-analyze` tool functions are targeted at startup. But first, it is important to understand the difference between boot and startup. The boot sequence starts with the BIOS power-on self test (POST) and ends when the kernel is finished loading and takes control of the host system, which is the beginning of startup and the point when the systemd journal begins.
|
||||
|
||||
In the second article in this series, [_Understanding systemd at startup on Linux_][3], I discuss startup in a bit more detail with respect to what happens and in what sequence. In this article, I want to examine the startup sequence to look at the amount of time it takes to go through startup and which tasks take the most time.
|
||||
|
||||
The results I'll show below are from my primary workstation, which is much more interesting than a virtual machine's results. This workstation consists of an ASUS TUF X299 Mark 2 motherboard, an Intel i9-7960X CPU with 16 cores and 32 CPUs (threads), and 64GB of RAM. Some of the commands below can be run by a non-root user, but I will use root in this article to prevent having to switch between users.
|
||||
|
||||
There are several options for examining the startup sequence. The simplest form of the `systemd-analyze` command displays an overview of the amount of time spent in each of the main sections of startup, the kernel startup, loading and running `initrd` (i.e., initial ramdisk, a temporary system image that is used to initialize some hardware and mount the `/` [root] filesystem), and userspace (where all the programs and daemons required to bring the host up to a usable state are loaded). If no subcommand is passed to the command, `systemd-analyze time` is implied:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]$ systemd-analyze
|
||||
Startup finished in 53.921s (firmware) + 2.643s (loader) + 2.236s (kernel) + 4.348s (initrd) + 10.082s (userspace) = 1min 13.233s
|
||||
graphical.target reached after 10.071s in userspace
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
The most notable data in this output is the amount of time spent in firmware (BIOS): almost 54 seconds. This is an extraordinary amount of time, and none of my other physical systems take anywhere near as long to get through BIOS.
|
||||
|
||||
My System76 Oryx Pro laptop spends only 8.506 seconds in BIOS, and all of my home-built systems take a bit less than 10 seconds. After some online searches, I found that this motherboard is known for its inordinately long BIOS boot time. My motherboard never "just boots." It always hangs, and I need to do a power off/on cycle, and then BIOS starts with an error, and I need to press F1 to enter BIOS configuration, from where I can select the boot drive and finish the boot. This is where the extra time comes from.
|
||||
|
||||
Not all hosts show firmware data. My unscientific experiments lead me to believe that this data is shown only for Intel generation 9 processors or above. But that could be incorrect.
|
||||
|
||||
This overview of the boot startup process is interesting and provides good (though limited) information, but there is much more information available about startup, as I'll describe below.
|
||||
|
||||
### Assigning blame
|
||||
|
||||
You can use `systemd-analyze blame` to discover which systemd units take the most time to initialize. The results are displayed in order by the amount of time they take to initialize, from most to least:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]$ systemd-analyze blame
|
||||
5.417s NetworkManager-wait-online.service
|
||||
3.423s dracut-initqueue.service
|
||||
2.715s systemd-udev-settle.service
|
||||
2.519s fstrim.service
|
||||
1.275s udisks2.service
|
||||
1.271s smartd.service
|
||||
996ms upower.service
|
||||
637ms lvm2-monitor.service
|
||||
533ms lvm2-pvscan@8:17.service
|
||||
520ms dmraid-activation.service
|
||||
460ms vboxdrv.service
|
||||
396ms initrd-switch-root.service
|
||||
<SNIP – removed lots of entries with increasingly small times>
|
||||
```
|
||||
|
||||
Because many of these services start in parallel, the numbers may add up to significantly more than the total given by `systemd-analyze time` for everything after the BIOS. All of these are small numbers, so I cannot find any significant savings here.
|
||||
|
||||
The data from this command can provide indications about which services you might consider to improve boot times. Services that are not used can be disabled. There does not appear to be any single service that is taking an excessively long time during this startup sequence. You may see different results for each boot and startup.
|
||||
|
||||
### Critical chains
|
||||
|
||||
Like the critical path in project management, a _critical chain_ shows the time-critical chain of events that take place during startup. These are the systemd units you want to look at if startup is slow, as they are the ones that would cause delays. This tool does not display all the units that start, only those in this critical chain of events:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze critical-chain
|
||||
The time when unit became active or started is printed after the "@" character.
|
||||
The time the unit took to start is printed after the "+" character.
|
||||
|
||||
graphical.target @10.071s
|
||||
└─lxdm.service @10.071s
|
||||
└─plymouth-quit.service @10.047s +22ms
|
||||
└─systemd-user-sessions.service @10.031s +7ms
|
||||
└─remote-fs.target @10.026s
|
||||
└─remote-fs-pre.target @10.025s
|
||||
└─nfs-client.target @4.636s
|
||||
└─gssproxy.service @4.607s +28ms
|
||||
└─network.target @4.604s
|
||||
└─NetworkManager.service @4.383s +219ms
|
||||
└─dbus-broker.service @4.434s +136ms
|
||||
└─dbus.socket @4.369s
|
||||
└─sysinit.target @4.354s
|
||||
└─systemd-update-utmp.service @4.345s +9ms
|
||||
└─auditd.service @4.301s +42ms
|
||||
└─systemd-tmpfiles-setup.service @4.254s +42ms
|
||||
└─import-state.service @4.233s +19ms
|
||||
└─local-fs.target @4.229s
|
||||
└─Virtual.mount @4.019s +209ms
|
||||
└─systemd-fsck@dev-mapper-vg_david2\x2dVirtual.service @3.742s +274ms
|
||||
└─local-fs-pre.target @3.726s
|
||||
└─lvm2-monitor.service @356ms +637ms
|
||||
└─dm-event.socket @319ms
|
||||
└─-.mount
|
||||
└─system.slice
|
||||
└─-.slice
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
The numbers preceded with `@` show the absolute number of seconds since startup began when the unit becomes active. The numbers preceded by `+` show the amount of time it takes for the unit to start.
|
||||
|
||||
### System state
|
||||
|
||||
Sometimes you need to determine the system's current state. The `systemd-analyze dump` command dumps a _massive_ amount of data about the current system state. It starts with a list of the primary boot timestamps, a list of each systemd unit, and a complete description of the state of each:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze dump
|
||||
Timestamp firmware: 1min 7.983523s
|
||||
Timestamp loader: 3.872325s
|
||||
Timestamp kernel: Wed 2020-08-26 12:33:35 EDT
|
||||
Timestamp initrd: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp userspace: Wed 2020-08-26 12:33:42 EDT
|
||||
Timestamp finish: Wed 2020-08-26 16:33:56 EDT
|
||||
Timestamp security-start: Wed 2020-08-26 12:33:42 EDT
|
||||
Timestamp security-finish: Wed 2020-08-26 12:33:42 EDT
|
||||
Timestamp generators-start: Wed 2020-08-26 16:33:42 EDT
|
||||
Timestamp generators-finish: Wed 2020-08-26 16:33:43 EDT
|
||||
Timestamp units-load-start: Wed 2020-08-26 16:33:43 EDT
|
||||
Timestamp units-load-finish: Wed 2020-08-26 16:33:43 EDT
|
||||
Timestamp initrd-security-start: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-security-finish: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-generators-start: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-generators-finish: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-units-load-start: Wed 2020-08-26 12:33:38 EDT
|
||||
Timestamp initrd-units-load-finish: Wed 2020-08-26 12:33:38 EDT
|
||||
-> Unit system.slice:
|
||||
Description: System Slice
|
||||
Instance: n/a
|
||||
Unit Load State: loaded
|
||||
Unit Active State: active
|
||||
State Change Timestamp: Wed 2020-08-26 12:33:38 EDT
|
||||
Inactive Exit Timestamp: Wed 2020-08-26 12:33:38 EDT
|
||||
Active Enter Timestamp: Wed 2020-08-26 12:33:38 EDT
|
||||
Active Exit Timestamp: n/a
|
||||
Inactive Enter Timestamp: n/a
|
||||
May GC: no
|
||||
<SNIP – Deleted a bazillion lines of output>
|
||||
```
|
||||
|
||||
On my main workstation, this command generated a stream of 49,680 lines and about 1.66MB. This command is very fast, so you don't need to wait for the results.
|
||||
|
||||
I do like the wealth of detail provided for the various connected devices, such as storage. Each systemd unit has a section with details such as modes for various runtimes, cache, and log directories, the command line used to start the unit, the process ID (PID), the start timestamp, as well as memory and file limits.
|
||||
|
||||
The man page for `systemd-analyze` shows the `systemd-analyze --user dump` option, which is intended to display information about the internal state of the user manager. This fails for me, and internet searches indicate that there may be a problem with it. In systemd, `--user` instances are used to manage and control the resources for the hierarchy of processes belonging to each user. The processes for each user are part of a control group, which I'll cover in a future article.
|
||||
|
||||
### Analytic graphs
|
||||
|
||||
Most pointy-haired-bosses (PHBs) and many good managers find pretty graphs easier to read and understand than the text-based system performance data I usually prefer. Sometimes, though, even I like a good graph, and `systemd-analyze` provides the capability to display boot/startup data in an [SVG][4] vector graphics chart.
|
||||
|
||||
The following command generates a vector graphics file that displays the events that take place during boot and startup. It only takes a few seconds to generate this file:
|
||||
|
||||
|
||||
```
|
||||
`[root@david ~]# systemd-analyze plot > /tmp/bootup.svg`
|
||||
```
|
||||
|
||||
This command creates an SVG, which is a text file that defines a series of graphic vectors that applications, including Image Viewer, Ristretto, Okular, Eye of Mate, LibreOffice Draw, and others, use to generate a graph. These applications process SVG files to create an image.
|
||||
|
||||
I used LibreOffice Draw to render a graph. The graph is huge, and you need to zoom in considerably to make out any detail. Here is a small portion of it:
|
||||
|
||||
![The bootup.svg file displayed in LibreOffice Draw.][5]
|
||||
|
||||
(David Both, [CC BY-SA 4.0][6])
|
||||
|
||||
The bootup sequence is to the left of the zero (0) on the timeline in the graph, and the startup sequence is to the right of zero. This small portion shows the kernel, `initrd`, and the processes `initrd` started.
|
||||
|
||||
This graph shows at a glance what started when, how long it took to start up, and the major dependencies. The critical path is highlighted in red.
|
||||
|
||||
Another command that generates graphical output is `systemd-analyze plot`. It generates textual dependency graph descriptions in [DOT][7] format. The resulting data stream is then piped through the `dot` utility, which is part of a family of programs that can be used to generate vector graphic files from various types of data. These SVG files can also be processed by the tools listed above.
|
||||
|
||||
First, generate the file. This took almost nine minutes on my primary workstation:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# time systemd-analyze dot | dot -Tsvg > /tmp/test.svg
|
||||
Color legend: black = Requires
|
||||
dark blue = Requisite
|
||||
dark grey = Wants
|
||||
red = Conflicts
|
||||
green = After
|
||||
|
||||
real 8m37.544s
|
||||
user 8m35.375s
|
||||
sys 0m0.070s
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
I won't reproduce the output here because the resulting graph is pretty much spaghetti. But you should try it and view the result to see what I mean.
|
||||
|
||||
### Conditionals
|
||||
|
||||
One of the more interesting, yet somewhat generic, capabilities I discovered while reading the `systemd-analyze(1)` man page is the `condition` subcommand. (Yes—I do read the man pages, and it is amazing what I have learned this way!) This `condition` subcommand can be used to test the conditions and asserts that can be used in systemd unit files.
|
||||
|
||||
It can also be used in scripts to evaluate one or more conditions—it returns a zero (0) if all are met or a one (1) if any condition is not met. In either case, it also spews text about its findings.
|
||||
|
||||
The example below, from the man page, is a bit complex. It tests for a kernel version between 4.0 and 5.1, that the host is running on AC power, that the system architecture is anything but ARM, and that the directory `/etc/os-release` exists. I added the `echo $?` statement to print the return code.
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze condition 'ConditionKernelVersion = ! <4.0' \
|
||||
'ConditionKernelVersion = >=5.1' \
|
||||
'ConditionACPower=|false' \
|
||||
'ConditionArchitecture=|!arm' \
|
||||
'AssertPathExists=/etc/os-release' ; \
|
||||
echo $?
|
||||
test.service: AssertPathExists=/etc/os-release succeeded.
|
||||
Asserts succeeded.
|
||||
test.service: ConditionArchitecture=|!arm succeeded.
|
||||
test.service: ConditionACPower=|false failed.
|
||||
test.service: ConditionKernelVersion=>=5.1 succeeded.
|
||||
test.service: ConditionKernelVersion=!<4.0 succeeded.
|
||||
Conditions succeeded.
|
||||
0
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
The list of conditions and asserts starts around line 600 on the `systemd.unit(5)` man page.
|
||||
|
||||
### Listing configuration files
|
||||
|
||||
The `systemd-analyze` tool provides a way to send the contents of various configuration files to `STDOUT`, as shown here. The base directory is `/etc/`:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze cat-config systemd/system/display-manager.service
|
||||
# /etc/systemd/system/display-manager.service
|
||||
[Unit]
|
||||
Description=LXDM (Lightweight X11 Display Manager)
|
||||
#Documentation=man:lxdm(8)
|
||||
Conflicts=[getty@tty1.service][8]
|
||||
After=systemd-user-sessions.service [getty@tty1.service][8] plymouth-quit.service livesys-late.service
|
||||
#Conflicts=plymouth-quit.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/sbin/lxdm
|
||||
Restart=always
|
||||
IgnoreSIGPIPE=no
|
||||
#BusName=org.freedesktop.lxdm
|
||||
|
||||
[Install]
|
||||
Alias=display-manager.service
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
This is a lot of typing to do nothing more than a standard `cat` command does. I find the next command a tiny bit helpful. It can search out files with the specified pattern within the standard systemd locations:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# systemctl cat backup*
|
||||
# /etc/systemd/system/backup.timer
|
||||
# This timer unit runs the local backup program
|
||||
# (C) David Both
|
||||
# Licensed under GPL V2
|
||||
#
|
||||
|
||||
[Unit]
|
||||
Description=Perform system backups
|
||||
Requires=backup.service
|
||||
|
||||
[Timer]
|
||||
Unit=backup.service
|
||||
OnCalendar=*-*-* 00:15:30
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
||||
|
||||
# /etc/systemd/system/backup.service
|
||||
# This service unit runs the rsbu backup program
|
||||
# By David Both
|
||||
# Licensed under GPL V2
|
||||
#
|
||||
|
||||
[Unit]
|
||||
Description=Backup services using rsbu
|
||||
Wants=backup.timer
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment="HOME=/root"
|
||||
ExecStart=/usr/local/bin/rsbu -bvd1
|
||||
ExecStart=/usr/local/bin/rsbu -buvd2
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
[root@david ~]#
|
||||
```
|
||||
|
||||
Both of these commands preface the contents of each file with a comment line containing the file's full path and name.
|
||||
|
||||
### Unit file verification
|
||||
|
||||
After creating a new unit file, it can be helpful to verify that its syntax is correct. This is what the `verify` subcommand does. It can list directives that are spelled incorrectly and call out missing service units:
|
||||
|
||||
|
||||
```
|
||||
`[root@david ~]# systemd-analyze verify /etc/systemd/system/backup.service`
|
||||
```
|
||||
|
||||
Adhering to the Unix/Linux philosophy that "silence is golden," a lack of output messages means that there are no errors in the scanned file.
|
||||
|
||||
### Security
|
||||
|
||||
The `security` subcommand checks the security level of specified services. It only works on service units and not on other types of unit files:
|
||||
|
||||
|
||||
```
|
||||
[root@david ~]# systemd-analyze security display-manager
|
||||
NAME DESCRIPTION >
|
||||
✗ PrivateNetwork= Service has access to the host's network >
|
||||
✗ User=/DynamicUser= Service runs as root user >
|
||||
✗ CapabilityBoundingSet=~CAP_SET(UID|GID|PCAP) Service may change UID/GID identities/capabilities >
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_ADMIN Service has administrator privileges >
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_PTRACE Service has ptrace() debugging abilities >
|
||||
✗ RestrictAddressFamilies=~AF_(INET|INET6) Service may allocate Internet sockets >
|
||||
✗ RestrictNamespaces=~CLONE_NEWUSER Service may create user namespaces >
|
||||
✗ RestrictAddressFamilies=~… Service may allocate exotic sockets >
|
||||
✗ CapabilityBoundingSet=~CAP_(CHOWN|FSETID|SETFCAP) Service may change file ownership/access mode/capabilities unres>
|
||||
✗ CapabilityBoundingSet=~CAP_(DAC_*|FOWNER|IPC_OWNER) Service may override UNIX file/IPC permission checks >
|
||||
✗ CapabilityBoundingSet=~CAP_NET_ADMIN Service has network configuration privileges >
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_MODULE Service may load kernel modules
|
||||
<SNIP>
|
||||
✗ CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG Service may issue vhangup() >
|
||||
✗ CapabilityBoundingSet=~CAP_WAKE_ALARM Service may program timers that wake up the system >
|
||||
✗ RestrictAddressFamilies=~AF_UNIX Service may allocate local sockets >
|
||||
|
||||
→ Overall exposure level for backup.service: 9.6 UNSAFE 😨
|
||||
lines 34-81/81 (END)
|
||||
```
|
||||
|
||||
Yes, the emoji is part of the output. But, of course, many services need pretty much complete access to everything in order to do their work. I ran this program against several services, including my own backup service; the results may differ, but the bottom line seems to be mostly the same.
|
||||
|
||||
This tool would be very useful for checking and fixing userspace service units in security-critical environments. I don't think it has much to offer for most of us.
|
||||
|
||||
### Final thoughts
|
||||
|
||||
This powerful tool offers some interesting and amazingly useful options. Much of what this article explores is about using `systemd-analyze` to provide insights into Linux's startup performance using systemd. It can also analyze other aspects of systemd.
|
||||
|
||||
Some of these tools are of limited use, and a couple should be forgotten completely. But most can be used to good effect when resolving problems with startup and other systemd functions.
|
||||
|
||||
### Resources
|
||||
|
||||
There is a great deal of information about systemd available on the internet, but much is terse, obtuse, or even misleading. In addition to the resources mentioned in this article, the following webpages offer more detailed and reliable information about systemd startup. This list has grown since I started this series of articles to reflect the research I have done.
|
||||
|
||||
* The [systemd.unit(5) manual page][9] contains a nice list of unit file sections and their configuration options along with concise descriptions of each.
|
||||
* The Fedora Project has a good, practical [guide to systemd][10]. It has pretty much everything you need to know in order to configure, manage, and maintain a Fedora computer using systemd.
|
||||
* The Fedora Project also has a good [cheat sheet][11] that cross-references the old SystemV commands to comparable systemd ones.
|
||||
* Red Hat documentation contains a good description of the [Unit file structure][12] as well as other important information.
|
||||
* For detailed technical information about systemd and the reasons for creating it, check out Freedesktop.org's [description of systemd][13].
|
||||
* [Linux.com][14]'s "More systemd fun" offers more advanced systemd [information and tips][15].
|
||||
|
||||
|
||||
|
||||
There is also a series of deeply technical articles for Linux sysadmins by Lennart Poettering, the designer and primary developer of systemd. These articles were written between April 2010 and September 2011, but they are just as relevant now as they were then. Much of everything else good that has been written about systemd and its ecosystem is based on these papers.
|
||||
|
||||
* [Rethinking PID 1][16]
|
||||
* [systemd for Administrators, Part I][17]
|
||||
* [systemd for Administrators, Part II][18]
|
||||
* [systemd for Administrators, Part III][19]
|
||||
* [systemd for Administrators, Part IV][20]
|
||||
* [systemd for Administrators, Part V][21]
|
||||
* [systemd for Administrators, Part VI][22]
|
||||
* [systemd for Administrators, Part VII][23]
|
||||
* [systemd for Administrators, Part VIII][24]
|
||||
* [systemd for Administrators, Part IX][25]
|
||||
* [systemd for Administrators, Part X][26]
|
||||
* [systemd for Administrators, Part XI][27]
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/20/9/systemd-startup-configuration
|
||||
|
||||
作者:[David Both][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/dboth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/find-file-linux-code_magnifying_glass_zero.png?itok=E2HoPDg0 (Magnifying glass on code)
|
||||
[2]: https://opensource.com/article/20/7/systemd-calendar-timespans
|
||||
[3]: https://opensource.com/article/20/5/systemd-startup?utm_campaign=intrel
|
||||
[4]: https://en.wikipedia.org/wiki/Scalable_Vector_Graphics
|
||||
[5]: https://opensource.com/sites/default/files/uploads/bootup.svg-graph.png (The bootup.svg file displayed in LibreOffice Draw.)
|
||||
[6]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[7]: https://en.wikipedia.org/wiki/DOT_(graph_description_language)
|
||||
[8]: mailto:getty@tty1.service
|
||||
[9]: https://man7.org/linux/man-pages/man5/systemd.unit.5.html
|
||||
[10]: https://docs.fedoraproject.org/en-US/quick-docs/understanding-and-administering-systemd/index.html
|
||||
[11]: https://fedoraproject.org/wiki/SysVinit_to_Systemd_Cheatsheet
|
||||
[12]: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_basic_system_settings/managing-services-with-systemd_configuring-basic-system-settings#Managing_Services_with_systemd-Unit_File_Structure
|
||||
[13]: https://www.freedesktop.org/wiki/Software/systemd/
|
||||
[14]: http://Linux.com
|
||||
[15]: https://www.linux.com/training-tutorials/more-systemd-fun-blame-game-and-stopping-services-prejudice/
|
||||
[16]: http://0pointer.de/blog/projects/systemd.html
|
||||
[17]: http://0pointer.de/blog/projects/systemd-for-admins-1.html
|
||||
[18]: http://0pointer.de/blog/projects/systemd-for-admins-2.html
|
||||
[19]: http://0pointer.de/blog/projects/systemd-for-admins-3.html
|
||||
[20]: http://0pointer.de/blog/projects/systemd-for-admins-4.html
|
||||
[21]: http://0pointer.de/blog/projects/three-levels-of-off.html
|
||||
[22]: http://0pointer.de/blog/projects/changing-roots
|
||||
[23]: http://0pointer.de/blog/projects/blame-game.html
|
||||
[24]: http://0pointer.de/blog/projects/the-new-configuration-files.html
|
||||
[25]: http://0pointer.de/blog/projects/on-etc-sysinit.html
|
||||
[26]: http://0pointer.de/blog/projects/instances.html
|
||||
[27]: http://0pointer.de/blog/projects/inetd.html
|
@ -1,5 +1,5 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: translator: (hwlife)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
@ -1,303 +0,0 @@
|
||||
[#]: subject: (Build a router with mobile connectivity using Raspberry Pi)
|
||||
[#]: via: (https://opensource.com/article/21/3/router-raspberry-pi)
|
||||
[#]: author: (Lukas Janėnas https://opensource.com/users/lukasjan)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
||||
Build a router with mobile connectivity using Raspberry Pi
|
||||
======
|
||||
Use OpenWRT to get more control over your network's router.
|
||||
![Mesh networking connected dots][1]
|
||||
|
||||
The Raspberry Pi is a small, single-board computer that, despite being the size of a credit card, is capable of doing a lot of things. In reality, this little computer can be almost anything you want to be. You just need to open up your imagination.
|
||||
|
||||
Raspberry Pi enthusiasts have made many different projects, from simple programs to complex automation projects and solutions like weather stations or even smart-home devices. This article will show how to turn your Raspberry Pi into a router with LTE mobile connectivity using the OpenWRT project.
|
||||
|
||||
### About OpenWRT and LTE
|
||||
|
||||
[OpenWRT][2] is an open source project that uses Linux to target embedded devices. It's been around for more than 15 years and has a large and active community.
|
||||
|
||||
There are many ways to use OpenWRT, but its main purpose is in routers. It provides a fully writable filesystem with package management, and because it is open source, you can see and modify the code and contribute to the ecosystem. If you would like to have more control over your router, this is the system you want to use.
|
||||
|
||||
Long-term evolution (LTE) is a standard for wireless broadband communication based on the GSM/EDGE and UMTS/HSPA technologies. The LTE modem I'm using is a USB device that can add 3G or 4G (LTE) cellular connectivity to a Raspberry Pi computer.
|
||||
|
||||
![Teltonika TRM240 modem][3]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
### Prerequisites
|
||||
|
||||
For this project, you will need:
|
||||
|
||||
* A Raspberry Pi with a power cable
|
||||
* A computer, preferably running Linux
|
||||
* A microSD card with at least 16GB
|
||||
* An Ethernet cable
|
||||
* An LTE modem (I am using a Teltonika [TRM240][5])
|
||||
* A SIM card for mobile connectivity
|
||||
|
||||
|
||||
|
||||
### Install OpenWRT
|
||||
|
||||
To get started, download the latest [Raspberry Pi-compatible release of OpenWRT][6]. On the OpenWRT site, you see four images: two with **ext4** and two with **squashfs** filesystems. I use the **ext4** filesystem. You can download either the **factory** or **sysupgrade** image; both work great.
|
||||
|
||||
![OpenWRT image files][7]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Once you download the image, you need to extract it and install it on the SD card by [following these instructions][8]. It can take some time to install the firmware, so be patient. Once it's finished, there will be two partitions on your microSD card. One is used for the bootloader and the other one for the OpenWRT system.
|
||||
|
||||
### Boot up the system
|
||||
|
||||
To boot up your new system, insert the microSD card into the Raspberry Pi, connect the Pi to your router (or a switch) with an Ethernet cable, and power it on.
|
||||
|
||||
If you're experienced with the Raspberry Pi, you may be used to accessing it through a terminal over SSH, or just by connecting it to a monitor and keyboard. OpenWRT works a little differently. You interact with this software through a web browser, so you must be able to access your Pi over your network.
|
||||
|
||||
By default, the Raspberry Pi uses this IP address: 192.168.1.1. The computer you use to configure the Pi must be on the same subnet as the Pi. If your network doesn't use 192.168.1.x addresses, or if you're unsure, open **Settings** in GNOME, navigate to network settings, select **Manual**, and enter the following IP address and Netmask:
|
||||
|
||||
* **IP address:** 192.168.1.15
|
||||
* **Netmask:** 255.255.255.0
|
||||
|
||||
|
||||
|
||||
![IP addresses][9]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Open a web browser on your computer and navigate to 192.168.1.1. This opens an authentication page so you can log in to your Pi.
|
||||
|
||||
![OpenWRT login page][10]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
No password is required yet, so just click the **Login** button to continue.
|
||||
|
||||
### Configure network connection
|
||||
|
||||
The Raspberry Pi has only one Ethernet port, while normal routers have a couple of them: one for WAN (wired area network) and the other for LAN (local area network). You have two options:
|
||||
|
||||
1. Use your Ethernet port for network connectivity
|
||||
2. Use WiFi for network connectivity
|
||||
|
||||
|
||||
|
||||
**To use Ethernet:**
|
||||
|
||||
Should you decide to use Ethernet, navigate to **Network → Interfaces**. On the configuration page, press the blue **Edit** button that is associated with the **LAN** interface.
|
||||
|
||||
![LAN interface][11]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
A pop-up window should appear. In that window, you need to enter the IP address to match the subnet of the router to which you will connect the Raspberry Pi. Change the Netmask, if needed, and enter the IP address of the router the Raspberry Pi will connect to.
|
||||
|
||||
![Enter IP in the LAN interface][12]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Save this configuration and connect your Pi to the router over Ethernet. You can now reach the Raspberry Pi with this new IP address.
|
||||
|
||||
Be sure to set a password for your OpenWRT router before you put it into production use!
|
||||
|
||||
**To use WiFi**
|
||||
|
||||
If you would like to connect the Raspberry Pi to the internet through WiFi, navigate to **Network → Wireless**. In the **Wireless** menu, press the blue **Scan** button to locate your home network.
|
||||
|
||||
![Scan the network][13]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
In the pop-up window, find your WiFi network and connect to it. Don't forget to **Save and Apply** the configuration.
|
||||
|
||||
In the **Network → Interfaces** section, you should see a new interface.
|
||||
|
||||
![New interface][14]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Be sure to set a password for your OpenWRT router before you put it into production use!
|
||||
|
||||
### Install the necessary packages
|
||||
|
||||
By default, the router doesn't have a lot of packages. OpenWRT offers a package manager with a selection of packages you need to install. Navigate to **System → Software** and update your package manager by pressing the button labeled "**Update lists…**".
|
||||
|
||||
![Updating packages][15]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
You will see a lot of packages; you need to install these:
|
||||
|
||||
* usb-modeswitch
|
||||
* kmod-mii
|
||||
* kmod-usb-net
|
||||
* kmod-usb-wdm
|
||||
* kmod-usb-serial
|
||||
* kmod-usb-serial-option
|
||||
* kmod-usb-serial-wwan (if it's not installed)
|
||||
|
||||
|
||||
|
||||
Additionally, [download this modemmanager package][16] and install it by pressing the button labeled **Upload Package…** in the pop-up window. Reboot the Raspberry Pi for the packages to take effect.
|
||||
|
||||
### Set up the mobile interface
|
||||
|
||||
After all those packages are installed, you can set up the mobile interface. Before connecting the modem to the Raspberry Pi read, the [modem instructions][17] to set it up. Then connect your mobile modem to the Raspberry Pi and wait a little until the modem boots up.
|
||||
|
||||
Navigate to **Network → Interface**. At the bottom of the page, press the **Add new interface…** button. In the pop-up window, give your interface a name (e.g., **mobile**) and select **ModemManager** from the drop-down list.
|
||||
|
||||
![Add a new mobile interface][18]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Press the button labeled **Create Interface**. You should see a new pop-up window. This is the main window for configuring the interface. In this window, select your modem and enter any other information like an Access Point Name (APN) or a PIN.
|
||||
|
||||
![Configuring the interface][19]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
**Note:** If no modem devices appear in the list, try rebooting your Raspberry Pi or installing the kmod-usb-net-qmi-wwan package.
|
||||
|
||||
When you are done configuring your interface, press **Save** and then **Save and Apply**. Give some time for the system to take effect. If everything went well, you should see something like this.
|
||||
|
||||
![Configured interface][20]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
If you want to check your internet connection over this interface, you can use ssh to connect to your Raspberry Pi shell. In the terminal, enter:
|
||||
|
||||
|
||||
```
|
||||
`ssh root@192.168.1.1`
|
||||
```
|
||||
|
||||
The default IP address is 192.168.1.1; if you changed it, then use that IP address to connect. When connected, execute this command in the terminal:
|
||||
|
||||
|
||||
```
|
||||
`ping -I ppp0 google.com`
|
||||
```
|
||||
|
||||
If everything is working, then you should receive pings back from Google's servers.
|
||||
|
||||
![Terminal interface][21]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
**ppp0** is the default interface name for the mobile interface you created. You can check your interfaces using **ifconfig**. It shows active interfaces only.
|
||||
|
||||
### Set up the firewall
|
||||
|
||||
To get the mobile interface working, you need to configure a firewall for the **mobile** interface and the **lan** interface to direct traffic to the correct interface.
|
||||
|
||||
Navigate to **Network → Firewall**. At the bottom of the page, you should see a section called **Zones**.
|
||||
|
||||
![Firewall zones][22]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
The simplest way to configure the firewall is to adjust the **wan** zone. Press the **Edit** button and in the **Covered networks** option, select your **mobile** interface, and **Save and Apply** your configuration. If you don't want to use WiFi to connect to the internet, you can remove **wwan** from the **Covered networks** or disable the WiFi connection.
|
||||
|
||||
![Firewall zone settings][23]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
If you want to set up individual zones for each interface, just create a new zone and assign the necessary interfaces. For example, you may want to have a mobile zone that covers the mobile interface and is used to forward LAN interface traffic through it. Press the **Add** button, then **Name** your zone, check the **Masquerading** check box, select **Covered Networks**, and choose which zones can forward their traffic.
|
||||
|
||||
![Firewall zone settings][24]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Then **Save and Apply** the changes. Now you have a new zone.
|
||||
|
||||
### Set up an Access Point
|
||||
|
||||
The last step is to configure a network with an Access Point for your devices to connect to the internet. To set up an Access Point, navigate to **Network → Wireless**. You will see a WiFi device interface, a disabled Access Point named **OpenWRT**, and a connection that is used to connect to the internet over WiFi (if you didn't disable or delete it earlier). On the **Disable** interface, press the **Edit** button, then **Enable** the interface.
|
||||
|
||||
![Enabling wireless network][25]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
If you want, you can change the interface name by editing the **ESSID** option. You can also select which network it will be associated with. By default, it with be associated with the **lan** interface.
|
||||
|
||||
![Configuring the interface][26]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
To add a password for this interface, select the **Wireless Security** tab. In the tab, select the encryption **WPA2-PSK** and enter the password for the interface in the **Key** option field.
|
||||
|
||||
![Setting a password][27]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
Then **Save and Apply** the configuration. If the configuration was set correctly, when scanning available Access Points with your device, you should see a new Access Point with the name you assigned.
|
||||
|
||||
### Additional packages
|
||||
|
||||
If you want, you can download additional packages for your router through the web interface. Just go to **System → Software** and install the package you want from the list or download it from the internet and upload it. If you don't see any packages in the list, press the **Update lists…** button.
|
||||
|
||||
You can also add other repositories that have packages that are good to use with OpenWRT. Packages and their web interfaces are installed separately. The packages that start with the prefix **luci-** are web interface packages.
|
||||
|
||||
![Packages with luci- prefix][28]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
### Give it a try
|
||||
|
||||
This is what my Raspberry Pi router setup looks like.
|
||||
|
||||
![Raspberry Pi router][29]
|
||||
|
||||
(Lukas Janenas, [CC BY-SA 4.0][4])
|
||||
|
||||
It not difficult to build a router from a Raspberry Pi. The downside is that a Raspberry Pi has only one Ethernet port. You can add more ports with a USB-to-Ethernet adapter. Don't forget to configure the port on the interface's website.
|
||||
|
||||
OpenWRT supports a large number of mobile modems, and you can configure the mobile interface for any of them with the modemmanager, which is a universal tool to manage modems.
|
||||
|
||||
Have you used your Raspberry Pi as a router? Let us know how it went in the comments.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/3/router-raspberry-pi
|
||||
|
||||
作者:[Lukas Janėnas][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/lukasjan
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/mesh_networking_dots_connected.png?itok=ovINTRR3 (Mesh networking connected dots)
|
||||
[2]: https://openwrt.org/
|
||||
[3]: https://opensource.com/sites/default/files/uploads/lte_modem.png (Teltonika TRM240 modem)
|
||||
[4]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[5]: https://teltonika-networks.com/product/trm240/
|
||||
[6]: https://downloads.openwrt.org/releases/19.07.7/targets/brcm2708/bcm2710/
|
||||
[7]: https://opensource.com/sites/default/files/uploads/imagefiles.png (OpenWRT image files)
|
||||
[8]: https://opensource.com/article/17/3/how-write-sd-cards-raspberry-pi
|
||||
[9]: https://opensource.com/sites/default/files/uploads/ipaddresses.png (IP addresses)
|
||||
[10]: https://opensource.com/sites/default/files/uploads/openwrt-login.png (OpenWRT login page)
|
||||
[11]: https://opensource.com/sites/default/files/uploads/lan-interface.png (LAN interface)
|
||||
[12]: https://opensource.com/sites/default/files/uploads/lan-interface-ip.png (Enter IP in the LAN interface)
|
||||
[13]: https://opensource.com/sites/default/files/uploads/scannetwork.png (Scan the network)
|
||||
[14]: https://opensource.com/sites/default/files/uploads/newinterface.png (New interface)
|
||||
[15]: https://opensource.com/sites/default/files/uploads/updatesoftwarelist.png (Updating packages)
|
||||
[16]: https://downloads.openwrt.org/releases/packages-21.02/aarch64_cortex-a53/luci/luci-proto-modemmanager_git-21.007.43644-ab7e45c_all.ipk
|
||||
[17]: https://wiki.teltonika-networks.com/view/TRM240_SIM_Card
|
||||
[18]: https://opensource.com/sites/default/files/uploads/addnewinterface.png (Add a new mobile interface)
|
||||
[19]: https://opensource.com/sites/default/files/uploads/configureinterface.png (Configuring the interface)
|
||||
[20]: https://opensource.com/sites/default/files/uploads/configuredinterface.png (Configured interface)
|
||||
[21]: https://opensource.com/sites/default/files/uploads/terminal.png (Terminal interface)
|
||||
[22]: https://opensource.com/sites/default/files/uploads/firewallzones.png (Firewall zones)
|
||||
[23]: https://opensource.com/sites/default/files/uploads/firewallzonesettings.png (Firewall zone settings)
|
||||
[24]: https://opensource.com/sites/default/files/uploads/firewallzonepriv.png (Firewall zone settings)
|
||||
[25]: https://opensource.com/sites/default/files/uploads/enablewirelessnetwork.png (Enabling wireless network)
|
||||
[26]: https://opensource.com/sites/default/files/uploads/interfaceconfig.png (Configuring the interface)
|
||||
[27]: https://opensource.com/sites/default/files/uploads/interfacepassword.png (Setting a password)
|
||||
[28]: https://opensource.com/sites/default/files/uploads/luci-packages.png (Packages with luci- prefix)
|
||||
[29]: https://opensource.com/sites/default/files/uploads/raspberrypirouter.jpg (Raspberry Pi router)
|
@ -1,194 +0,0 @@
|
||||
[#]: subject: (Partition a drive on Linux with GNU Parted)
|
||||
[#]: via: (https://opensource.com/article/21/4/linux-parted-cheat-sheet)
|
||||
[#]: author: (Seth Kenlon https://opensource.com/users/seth)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
||||
Partition a drive on Linux with GNU Parted
|
||||
======
|
||||
Learn the basics of partitioning a new storage device, then download our
|
||||
cheat sheet to keep info close at hand.
|
||||
![Cheat Sheet cover image][1]
|
||||
|
||||
In the 21st century, we tend to take data storage for granted. We have lots of it, it's relatively affordable, and there are many different types of storage available. No matter how much cloud storage space you're given for free, there's nothing quite like having a physical hard drive for your really important (or really big, when you live on a slow network) data. However, few hard drives are sold right off the shelf, ready to use—in an ideal configuration, at least. Whether you're buying a new drive or setting up a system with a different configuration, you need to know how to partition a drive on Linux.
|
||||
|
||||
This article demonstrates GNU Parted, one of the best tools for partitioning drives. If you prefer to use a graphical application instead of a terminal command, read my article on [formatting drives for Linux][2].
|
||||
|
||||
### Disk labels, partitions, and filesystems
|
||||
|
||||
A hard drive doesn't _technically_ require much software to serve as a storage device. However, using a drive without modern conventions like a partition table and filesystem is difficult, impractical, and unsafe for your data.
|
||||
|
||||
There are three important concepts you need to know about hard drives:
|
||||
|
||||
* A **disk label** or **partition table** is metadata placed at the start of a drive, serving as a clue for the computer reading it about what kind of storage is available and where it's located on the drive.
|
||||
* A **partition** is a boundary identifying where a filesystem is located. For instance, if you have a 512GB drive, you can have a partition on that device that takes up the entire drive (512GB), or two partitions that each take 256GB each, or three partitions taking up some other variation of sizes, and so on.
|
||||
* A **filesystem** is a storage scheme agreed upon by a hard drive and a computer. A computer must know how to read a filesystem to piece together all the data stored on the drive, and it must know how to write data back to the filesystem to maintain the data's integrity.
|
||||
|
||||
|
||||
|
||||
The GNU Parted application manages the first two concepts: disk labels and partitions. Parted has some awareness of filesystems, but it leaves the details of filesystem implementation to other tools like `mkfs`.
|
||||
|
||||
**[Download the [GNU Parted cheat sheet][3]]**
|
||||
|
||||
### Locating the drive
|
||||
|
||||
Before using GNU Parted, you must be certain where your drive is located on your system. First, attach the hard drive you want to format to your system, and then use the `parted` command to see what's attached to your computer:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sda print devices
|
||||
/dev/sda (2000GB)
|
||||
/dev/sdb (1000GB)
|
||||
/dev/sdc (1940MB)
|
||||
```
|
||||
|
||||
The device you most recently attached gets a name later in the alphabet than devices that have been attached longer. In this example, `/dev/sdc` is most likely the drive I just attached. I can confirm that by its size because I know that the USB thumb drive I attached is only 2GB (1940MB is close enough), compared to my workstation's main drives, which are terabytes in size. If you're not sure, then you can get more information about the drive you think is the one you want to partition:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdc print
|
||||
Model: Yoyodyne Tiny Drive 1.0 (scsi)
|
||||
Disk /dev/sdc: 1940MB
|
||||
Sector size (logical/physical): 512B/512B
|
||||
Partition Table: msdos
|
||||
Disk Flags:
|
||||
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 2048kB 1024kB BS Bloat Hidden
|
||||
2 2049kB 1939MB 1937MB FAT32 MyDrive
|
||||
```
|
||||
|
||||
Some drives provide more metadata than others. This one identifies itself as a drive from Yoyodyne, which is exactly the branding on the physical drive. Furthermore, it contains a small hidden partition at the front of the drive with some bloatware followed by a Windows-compatible FAT32 partition. This is definitely the drive I intend to reformat.
|
||||
|
||||
Before continuing, _make sure_ you have identified the correct drive you want to partition. _Repartitioning the wrong drive results in lost data._ For safety, all potentially destructive commands in this article reference the `/dev/sdX` device, which you are unlikely to have on your system.
|
||||
|
||||
### Creating a disk label or partition table
|
||||
|
||||
To create a partition on a drive, the drive must have a disk label. A disk label is also called a _partition table_, so Parted accepts either term.
|
||||
|
||||
To create a disk label, use the `mklabel` or `mktable` subcommand:
|
||||
|
||||
|
||||
```
|
||||
`$ parted /dev/sdX mklabel gpt`
|
||||
```
|
||||
|
||||
This command creates a **gpt** label at the front of the drive located at `/dev/sdX`, erasing any label that may exist. This is a quick process because all that's being replaced is metadata about partitions.
|
||||
|
||||
### Creating a partition
|
||||
|
||||
To create a partition on a drive, use the `mkpart` subcommand, followed by an optional name for your partition, followed by the partition's start and end points. If you only need one partition on your drive, then sizing is easy: start at 1 and end at 100%. Use the `--align opt` option to allow Parted to adjust the position of the partition boundaries for best performance:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdX --align opt \
|
||||
mkpart example 1 100%
|
||||
```
|
||||
|
||||
View your new partition with the `print` subcommand:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdX print
|
||||
Model: Yoyodyne Tiny Drive 1.0 (scsi)
|
||||
Disk /dev/sdi: 1940MB
|
||||
Sector size (logical/physical): 512B/512B
|
||||
Partition Table: gpt
|
||||
Disk Flags:
|
||||
|
||||
Number Start End Size
|
||||
1 1049kB 1939MB 1938MB
|
||||
```
|
||||
|
||||
You don't have to use the whole disk for one partition. The advantage to a partition is that more than one filesystem can exist on a drive without interfering with the other partition(s). When sizing partitions, you can use the `unit` subcommand to set what kind of measurements you want to use. Parted understands sectors, cylinders, heads, bytes, kilobytes, megabytes, gigabytes, terabytes, and percentages.
|
||||
|
||||
You can also specify what filesystem you intend to use a partition for. This doesn't create the filesystem, but it does provide metadata that could be useful to you later.
|
||||
|
||||
Here's a 50-50 split, one for an XFS filesystem and another for an EXT4 filesystem:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdX --align opt \
|
||||
mkpart xfs 1 50%
|
||||
$ parted /dev/sdX --align opt \
|
||||
mkpart ext4 51% 100%
|
||||
```
|
||||
|
||||
### Naming a partition
|
||||
|
||||
In addition to marking what filesystem a partition is for, you can also name each partition. Some file managers and utilities read partition names, which can help you identify drives. For instance, I often have several different drives attached on my media workstation, each belonging to a different project. When creating these drives, I name both the partition and the filesystem so that, no matter how I'm looking at my system, the locations with important data are clearly labeled.
|
||||
|
||||
To name a partition, you must know its number:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdX print
|
||||
[...]
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 990MB 989MB xfs example
|
||||
2 1009MB 1939MB 930MB ext4 noname
|
||||
```
|
||||
|
||||
To name partition 1:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdX name 1 example
|
||||
$ parted /dev/sdX print
|
||||
[...]
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 990MB 989MB xfs example
|
||||
2 1009MB 1939MB 930MB ext4 noname
|
||||
```
|
||||
|
||||
### Create a filesystem
|
||||
|
||||
For your drive to be useful, you must create a filesystem in your new partition. GNU Parted doesn't do that because it's only a partition manager. The Linux command to create a filesystem on a drive is `mkfs`, but there are helpful utilities aliased for you to use to create a specific kind of filesystem. For instance, `mkfs.ext4` creates an EXT4 filesystem, while `mkfs.xfs` creates an XFS filesystem, and so on.
|
||||
|
||||
Your partition is located "in" the drive, so instead of creating a filesystem on `/dev/sdX`, you create your filesystem in `/dev/sdX1` for the first partition, `/dev/sdX2` for the second partition, and so on.
|
||||
|
||||
Here's an example of creating an XFS filesystem:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo mkfs.xfs -L mydrive /dev/sdX1`
|
||||
```
|
||||
|
||||
### Download our cheat sheet
|
||||
|
||||
Parted is a flexible and powerful command. You can issue it commands, as demonstrated in this article, or activate an interactive mode so that you're constantly "connected" to a drive you specify:
|
||||
|
||||
|
||||
```
|
||||
$ parted /dev/sdX
|
||||
(parted) print
|
||||
[...]
|
||||
Number Start End Size File system Name Flags
|
||||
1 1049kB 990MB 989MB xfs example
|
||||
2 1009MB 1939MB 930MB ext4 noname
|
||||
|
||||
(parted) name 1 mydrive
|
||||
(parted)
|
||||
```
|
||||
|
||||
If you intend to use Parted often, [download our GNU Parted cheat sheet][3] so that you have all the subcommands you need close at hand.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/4/linux-parted-cheat-sheet
|
||||
|
||||
作者:[Seth Kenlon][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/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/coverimage_cheat_sheet.png?itok=lYkNKieP (Cheat Sheet cover image)
|
||||
[2]: https://opensource.com/article/18/11/partition-format-drive-linux#gui
|
||||
[3]: https://opensource.com/downloads/parted-cheat-sheet
|
@ -1,282 +0,0 @@
|
||||
[#]: subject: (How to Deploy Seafile Server with Docker to Host Your Own File Synchronization and Sharing Solution)
|
||||
[#]: via: (https://itsfoss.com/deploy-seafile-server-docker/)
|
||||
[#]: author: (Hunter Wittenborn https://itsfoss.com/author/hunter/)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
||||
How to Deploy Seafile Server with Docker to Host Your Own File Synchronization and Sharing Solution
|
||||
======
|
||||
|
||||
First off, what is Seafile?
|
||||
|
||||
[Seafile][1] is a self-hosted file synchronization program that works with the server-client model, as in you have several devices like your laptop and phone that connect to a central server.
|
||||
|
||||
Unlike some more popular alternatives like [Nextcloud or ownCloud][2], Seafile tries to follow the philosophy of “do one thing only, but do it well”. Likewise, Seafile doesn’t have extra goodies built in like Contacts or Calendar integration.
|
||||
|
||||
Seafile instead focuses solely on file syncing, sharing, and the things surrounding it, and that’s it. As a result of that though, it ends up doing so _extremely_ well.
|
||||
|
||||
### Deploying Seafile Server with Docker and NGINX
|
||||
|
||||
Advanced tutorial
|
||||
|
||||
Most tutorials on It’s FOSS are focused on beginners. This one is not. It is intended for advanced users who tinker a lot with DIY projects and prefer to self-host.
|
||||
This tutorial presumes that you are comfortable using the command line, and that you are at least decently knowledgeable with the programs we’ll be using.
|
||||
|
||||
While the whole process could be done without using NGINX at all, using NGINX will allow for an easier setup, as well as making it significantly easier to self-host more services in the future.
|
||||
|
||||
If you want to use a full-on Docker setup, you could set up [NGINX inside of Docker][3] as well, but it will only make things more complex and doesn’t add too much of a benefit, and likewise won’t be covered in this tutorial.
|
||||
|
||||
#### Installing and Setting Up NGINX
|
||||
|
||||
_**I will be using Ubuntu in this tutorial and will thus be using apt to install packages. If you use Fedora or some other non-Debian distribution, please use your distribution’s [package manager][4].**_
|
||||
|
||||
[NGINX][5], as well as being a web server, is what’s known as a proxy. It will function as the connection between the Seafile server and the internet, whilst also making several tasks easier to deal with.
|
||||
|
||||
To install NGINX, use the following command:
|
||||
|
||||
```
|
||||
sudo apt install nginx
|
||||
```
|
||||
|
||||
If you want to use HTTPS (that little padlock in your browser), you will also need to install [Certbot][6]:
|
||||
|
||||
```
|
||||
sudo apt install certbot python3-certbot-nginx
|
||||
```
|
||||
|
||||
Next, you need to configure NGINX to connect to the Seafile instance that we set up later.
|
||||
|
||||
First, run the following command:
|
||||
|
||||
```
|
||||
sudo nano /etc/nginx/sites-available/seafile.conf
|
||||
```
|
||||
|
||||
Enter the following text into the file:
|
||||
|
||||
```
|
||||
server {
|
||||
server_name localhost;
|
||||
location / {
|
||||
proxy_pass http://localhost:8080;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Important**: Replace **localhost** on the **server_name** line with the address you’ll be accessing your server from (i.e. **seafile.example.com** or **192.168.0.0**). Not sure what to put?
|
||||
|
||||
* If you are testing just for the sake of it, use localhost. This setup will **only allow you to access the server from your computer**, and that’s it.
|
||||
* If you want to use Seafile across your local WiFi connection(any device on the same WiFi network as you), you should enter [your computer’s IP address][7]. You may also want to look into [setting a static IP address][8], though it isn’t necessary.
|
||||
* If you have a public IP address that you know points to your system, use that.
|
||||
* If you have a domain name(i.e. **example.com**, **example.org**) _and_ a public IP address for your system, change your DNS settings to point the domain name to your system’s IP address. This will also require the public IP address to point to your system.
|
||||
|
||||
|
||||
|
||||
Now you need to copy the config file to the directory NGINX looks at for files, then restart NGINX:
|
||||
|
||||
```
|
||||
sudo ln -s /etc/nginx/sites-available/seafile.conf /etc/nginx/sites-enabled/seafile.conf
|
||||
sudo systemctl restart nginx
|
||||
```
|
||||
|
||||
If you set up Certbot, you’ll also need to run the following to set up HTTPS:
|
||||
|
||||
```
|
||||
sudo certbot
|
||||
```
|
||||
|
||||
If asked to redirect HTTP traffic to HTTPS, choose **2**.
|
||||
|
||||
Now would be a good time to make sure everything we’ve set up so far is working. If you visit your site, you should get a screen that says something on the lines of `502 Bad Gateway`.
|
||||
|
||||
![][9]
|
||||
|
||||
#### Install Docker and Docker Compose
|
||||
|
||||
Now to get into the fun stuff!
|
||||
|
||||
First things first, you need to have [Docker][10] and [Docker Compose][11] installed. Docker Compose is needed to utilize a docker-compose.yml file, which will make managing the various Docker [containers][12] Seafile needs easier.
|
||||
|
||||
Docker and Docker Compose can be installed with the following command:
|
||||
|
||||
```
|
||||
sudo apt install docker.io docker-compose
|
||||
```
|
||||
|
||||
To check if Docker is installed and running, run the following:
|
||||
|
||||
```
|
||||
sudo docker run --rm hello-world
|
||||
```
|
||||
|
||||
You should see something along the lines of this in your terminal if it completed successfully:
|
||||
|
||||
![][13]
|
||||
|
||||
If you would like to avoid adding `sudo` to the beginning of the `docker` command, you can run the following commands to add yourself to the `docker` group:
|
||||
|
||||
```
|
||||
sudo groupadd docker
|
||||
sudo usermod -aG docker $USER
|
||||
```
|
||||
|
||||
The rest of this tutorial assumes you ran the above two commands. If you didn’t, add `sudo` to all commands that start with `docker` or `docker-compose`.
|
||||
|
||||
#### Installing Seafile Server
|
||||
|
||||
This part is significantly easier than the part before this. All you need to do is put some text into a file and run a few commands.
|
||||
|
||||
Open up a terminal. Then create a directory where you’d like the contents of the Seafile server to be stored and enter the directory:
|
||||
|
||||
```
|
||||
mkdir ~/seafile-server && cd ~/seafile-server
|
||||
```
|
||||
|
||||
![][14]
|
||||
|
||||
Go to the directory you created and run the following:
|
||||
|
||||
```
|
||||
nano docker-compose.yml
|
||||
```
|
||||
|
||||
Next, enter the text below into the window that pops up:
|
||||
|
||||
```
|
||||
version: '2.0'
|
||||
services:
|
||||
db:
|
||||
image: mariadb
|
||||
container_name: seafile-mysql
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=password
|
||||
- MYSQL_LOG_CONSOLE=true
|
||||
volumes:
|
||||
- ./data/mariadb:/var/lib/mysql
|
||||
networks:
|
||||
- seafile-net
|
||||
|
||||
memcached:
|
||||
image: memcached
|
||||
container_name: seafile-memcached
|
||||
entrypoint: memcached -m 256
|
||||
networks:
|
||||
- seafile-net
|
||||
|
||||
seafile:
|
||||
image: seafileltd/seafile-mc
|
||||
container_name: seafile
|
||||
ports:
|
||||
- "8080:80"
|
||||
volumes:
|
||||
- ./data/app:/shared
|
||||
environment:
|
||||
- DB_HOST=db
|
||||
- DB_ROOT_PASSWD=password
|
||||
- TIME_ZONE=Etc/UTC
|
||||
- [email protected]
|
||||
- SEAFILE_ADMIN_PASSWORD=password
|
||||
- SEAFILE_SERVER_LETSENCRYPT=false
|
||||
- SEAFILE_SERVER_HOSTNAME=docs.seafile.com
|
||||
depends_on:
|
||||
- db
|
||||
- memcached
|
||||
networks:
|
||||
- seafile-net
|
||||
|
||||
networks:
|
||||
seafile-net:
|
||||
```
|
||||
|
||||
Before saving the file, a few things will need to be changed:
|
||||
|
||||
* **MYSQL_ROOT_PASSWORD**: Change to a stronger password, you _don’t_ need to remember this, so don’t try to pick anything easy. If you need help making one, use a [password generator][15]. I’d recommend 20 characters long and avoiding any special characters(all the **[[email protected]][16]#$%^&*** symbols).
|
||||
* **DB_ROOT_PASSWD**: Change to the value you set for ****MYSQL_ROOT_PASSWORD****.
|
||||
* ****SEAFILE_ADMIN_EMAIL****: Sets the email address for the admin account.
|
||||
* **SEAFILE_ADMIN_PASSWORD**: Sets the password for the admin account. Avoid making this the same as **MYSQL_ROOT_PASSWORD** or **DB_ROOT_PASSWD**.
|
||||
* **SEAFILE_SERVER_HOSTNAME**: Set to the address you set in the NGINX configuration.
|
||||
|
||||
|
||||
|
||||
With that done, you can bring up the whole thing with `docker-compose`:
|
||||
|
||||
```
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
It might take a minute or two depending on your internet connection, as it has to pull down several containers that Seafile needs to run.
|
||||
|
||||
After it’s done, give it a few more minutes to finish up. You can also check the status of it by running the following:
|
||||
|
||||
```
|
||||
docker logs seafile
|
||||
```
|
||||
|
||||
When it’s done, you’ll see the following output:
|
||||
|
||||
![][17]
|
||||
|
||||
Next, just type the address you set for ****SEAFILE_SERVER_HOSTNAME**** into your browser, and you should be at a login screen.
|
||||
|
||||
![][18]
|
||||
|
||||
And there you go! Everything’s now fully functional and ready to be used with the clients.
|
||||
|
||||
#### Installing the Seafile Clients
|
||||
|
||||
Seafile on mobile is available on [Google Play][19], [F-Droid][20], and on the [iOS App Store][21]. Seafile also has desktop clients available for Linux, Windows, and Mac, available [here][22].
|
||||
|
||||
Seafile is readily available on Ubuntu systems via the `seafile-gui` package:
|
||||
|
||||
```
|
||||
sudo apt install seafile-gui
|
||||
```
|
||||
|
||||
Seafile is also in the AUR for Arch users via the `seafile-client` package.
|
||||
|
||||
### Closing Up
|
||||
|
||||
Feel free to explore the clients and all they have to offer. I’ll go into all of what the Seafile clients are capable of in a future article (stay tuned 😃).
|
||||
|
||||
If something’s not working right, or you just have a question in general, feel free to leave it in the comments below – I’ll try to respond whenever I can!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/deploy-seafile-server-docker/
|
||||
|
||||
作者:[Hunter Wittenborn][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/hunter/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.seafile.com/en/home/
|
||||
[2]: https://itsfoss.com/nextcloud-vs-owncloud/
|
||||
[3]: https://linuxhandbook.com/nginx-reverse-proxy-docker/
|
||||
[4]: https://itsfoss.com/package-manager/
|
||||
[5]: https://www.nginx.com/
|
||||
[6]: https://certbot.eff.org/
|
||||
[7]: https://itsfoss.com/check-ip-address-ubuntu/
|
||||
[8]: https://itsfoss.com/static-ip-ubuntu/
|
||||
[9]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/nginx_bad_gateway.png?resize=489%2C167&ssl=1
|
||||
[10]: https://www.docker.com/
|
||||
[11]: https://docs.docker.com/compose/
|
||||
[12]: https://www.docker.com/resources/what-container
|
||||
[13]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-docker-helloworld.png?resize=752%2C416&ssl=1
|
||||
[14]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-dir.png?resize=731%2C174&ssl=1
|
||||
[15]: https://itsfoss.com/password-generators-linux/
|
||||
[16]: https://itsfoss.com/cdn-cgi/l/email-protection
|
||||
[17]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-running.png?resize=752%2C484&ssl=1
|
||||
[18]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2021/04/seafile-login.jpg?resize=800%2C341&ssl=1
|
||||
[19]: https://play.google.com/store/apps/details?id=com.seafile.seadroid2
|
||||
[20]: https://f-droid.org/repository/browse/?fdid=com.seafile.seadroid2
|
||||
[21]: https://itunes.apple.com/cn/app/seafile-pro/id639202512?l=en&mt=8
|
||||
[22]: https://www.seafile.com/en/download/
|
@ -2,7 +2,7 @@
|
||||
[#]: via: (https://itsfoss.com/markdown-guide/)
|
||||
[#]: author: (Bill Dyer https://itsfoss.com/author/bill/)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: translator: (hwlife)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
|
@ -1,259 +0,0 @@
|
||||
[#]: subject: "Manage your passwords in the Linux terminal"
|
||||
[#]: via: "https://opensource.com/article/22/1/manage-passwords-linux-terminal"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Manage your passwords in the Linux terminal
|
||||
======
|
||||
Pass is a classic UNIX-style password management system that uses GnuPG
|
||||
(GPG) for encryption, and the terminal as its primary interface.
|
||||
![Linux keys on the keyboard for a desktop computer][1]
|
||||
|
||||
These days, we all have a few dozen passwords. Fortunately, the bulk of those passwords are probably for websites, and you probably access most websites through your internet browser, and most browsers have a built-in password manager. The most common internet browsers also have a synchronization feature to help you distribute your passwords between the browsers you run across all your devices, so you're never without your login information when you need it. If that's not enough for you, there are excellent open source projects like [BitWarden][2] that can host your encrypted passwords, ensuring that only you have the key to unlock them. These solutions help make maintaining unique passwords easy, and I use these convenient systems for a selection of passwords. But my main vault of password storage is a lot simpler than any of these methods. I primarily use [pass][3], a classic UNIX-style password management system that uses GnuPG (GPG) for encryption, and the terminal as its primary interface.
|
||||
|
||||
### Install pass
|
||||
|
||||
You can install the `pass` command from your distribution repository.
|
||||
|
||||
On Fedora, Mageia, and similar distributions, you can install it with your package manager:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo dnf install pass`
|
||||
```
|
||||
|
||||
On Elementary, Mint, and other Debian-based distributions:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo apt install pass`
|
||||
```
|
||||
|
||||
On macOS, you can install it using [Homebrew][4]:
|
||||
|
||||
|
||||
```
|
||||
`$ brew install pass`
|
||||
```
|
||||
|
||||
### Configuring GnuPG
|
||||
|
||||
Before you can use `pass`, you need a valid PGP ("Pretty Good Privacy") key. If you already maintain a PGP key, you can skip this step, or you can choose to create a new key exclusively for use with `pass`. The most common open source PGP implementation is GnuPG (GPG), which ships with Linux, and you can install it on macOS from [gpgtools.org][5], Homebrew, or [Macports][6]. To create a GnuPG key, run this command:
|
||||
|
||||
|
||||
```
|
||||
`$ gpg --generate-key`
|
||||
```
|
||||
|
||||
You're prompted for your name and email address and create a password for the key. Your key is a digital file, and your password is known only to you. Combined, these two things can lock and unlock encrypted information, such as a file containing a password.
|
||||
|
||||
A GPG key is much like a house key or a car key. Should you lose it, anything locked by it becomes unobtainable. Just knowing your password is not enough.
|
||||
|
||||
If you already manage several SSH keys, you're probably used to this. If you're new to digital encryption keys, it can take some getting used to. Backup your `~/.gnupg` directory, so you don't accidentally erase it the next time you decide to try an exciting new distro on a whim.
|
||||
|
||||
Make a backup and keep the backup safe.
|
||||
|
||||
### Configuring pass
|
||||
|
||||
To start using `pass`, you must initialize a _password store_, which is defined as a storage location configured to use a specific encryption key. You can indicate what GPG key you want to use for your password store by either the name associated with the key or the digital fingerprint. Your own name is usually the easier option:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ pass init seth
|
||||
mkdir: created directory '/home/seth/.password-store/'
|
||||
Password store initialized for seth
|
||||
|
||||
```
|
||||
|
||||
If you've managed to forget your name, you can see the digital fingerprint and name associated with your key with the `gpg` command:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ gpg --list-keys
|
||||
gpg --list-keys
|
||||
/home/seth/.gnupg/pubring.kbx
|
||||
\-----------------------------
|
||||
pub ed25519 2022-01-06 [SC] [expires: 2024-01-06]
|
||||
2BFF94286461216C907CBA52F067996F13EF10D8
|
||||
uid [ultimate] Seth Kenlon <[seth@example.com][7]>
|
||||
sub cv25519 2022-01-06 [E] [expires: 2024-01-06]
|
||||
|
||||
```
|
||||
|
||||
Initializing a password store with the fingerprint is basically the same as with your name:
|
||||
|
||||
|
||||
```
|
||||
`$ pass init 2BFF94286461216C907CBA52F067996F13EF10D8`
|
||||
```
|
||||
|
||||
### Store a password
|
||||
|
||||
Add a password to your password store with the `pass add` command:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ pass add [www.example.com][8]
|
||||
Enter password for [www.example.com][8]:
|
||||
|
||||
```
|
||||
|
||||
Enter the password you want to add when prompted.
|
||||
|
||||
The password now gets stored in your password store. You can take a look for yourself:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ ls /root/.password-store/
|
||||
[www.example.com.gpg][9]
|
||||
|
||||
```
|
||||
|
||||
Of course, the file is unreadable, and if you attempt to run `cat` or `less` on it, you'll get unprintable characters in your terminal (use `reset` to fix your terminal if its display gets too untidy.)
|
||||
|
||||
### Edit a password with pass
|
||||
|
||||
I use different user names for different activities online, so the username for a site is often just as important as the password. The `pass` system allows for this, even though it doesn't prompt you for it by default. You can add a user name to a password file using the `pass edit` command:
|
||||
|
||||
|
||||
```
|
||||
`$ pass edit www.example.com`
|
||||
```
|
||||
|
||||
This opens a text editor (specifically the editor you have set as your `EDITOR` or `VISUAL` [environment variable][10]) displaying the contents of the `www.example.com` file. Currently, that's just a password, but you can add a user name and even another URL or any information you want. It's an encrypted file, so you're free to keep what you want in it.
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
bd%dc$3a49af49498bb6f31bc964718C
|
||||
user: seth123
|
||||
url: example.com
|
||||
|
||||
```
|
||||
|
||||
Save the file and close it.
|
||||
|
||||
### Get a password from pass
|
||||
|
||||
To see the contents of a password file, use the `pass show` command:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ pass show [www.example.com][8]
|
||||
bd%dc$3a49af49498bb6f31bc964718C
|
||||
user: seth123
|
||||
url: [www.example.org][11]
|
||||
|
||||
```
|
||||
|
||||
### Search for a password
|
||||
|
||||
Sometimes it's tough to remember whether a password is filed under `www.example.com` or just `example.com` or even something like `app.example.com`. Furthermore, some website infrastructures use different URLs for different site functions, so you might file a password away under `www.example.com` even though you also use the same login information for the partner site `www.example.org`.
|
||||
|
||||
When in doubt, use `grep`. The `pass grep` command shows all instances of a search term, either in a file name or in the contents of a file:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ pass grep example
|
||||
[www.example.com][8]:
|
||||
url: [www.example.org][11]
|
||||
|
||||
```
|
||||
|
||||
### Using pass with a browser
|
||||
|
||||
I use `pass` for information beyond just internet passwords, but websites are where I most often need passwords. I usually have a terminal open somewhere on my computer, so it's not much trouble to **Alt+Tab** to a terminal and get the information I need with `pass`. But that's not what I do because there are plugins to integrate `pass` with web browsers.
|
||||
|
||||
#### Pass host script
|
||||
|
||||
First, install the `pass` host script:
|
||||
|
||||
|
||||
```
|
||||
`$ curl -sSL github.com/passff/passff-host/release/latest/download/install_host_app.sh`
|
||||
```
|
||||
|
||||
This install script places a Python script that helps your browser access your password store and GPG keys. Run it along with the name of the browser you use (or nothing, to see all options):
|
||||
|
||||
|
||||
```
|
||||
`$ bash ./install_host_app.sh firefox`
|
||||
```
|
||||
|
||||
If you use multiple browsers, you can install it for each.
|
||||
|
||||
#### Pass Add-on
|
||||
|
||||
Once you've installed the host application, you can install an add-on or extension for your browser. Search for the `PassFF` plugin in your browser's add-on or extension manager.
|
||||
|
||||
![PassFF][12]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][13])
|
||||
|
||||
Install the add-on, and then close and re-launch your browser.
|
||||
|
||||
Navigate to a site you've got a password for in your password store. There's now a small **P** icon in the right of your login text fields.
|
||||
|
||||
![PassFF browser prompt][14]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][13])
|
||||
|
||||
Click on the **P** button to see a list of matching site names in your password store.
|
||||
|
||||
![PassFF browser menu][15]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][13])
|
||||
|
||||
Click the pen-and-paper icon to fill in the form or the paper-airplane icon to fill and auto-submit the form.
|
||||
|
||||
Easy password management and fully integrated!
|
||||
|
||||
### Try pass as your Linux password manager
|
||||
|
||||
The `pass` command is a great option for users who want to manage passwords and personal information using tools they already use on a daily basis. If you rely on GPG and a terminal already, then you may enjoy the `pass` system. It's also an important option for users who don't want their passwords tied to a specific application. Maybe you don't use just one browser, or you don't like the idea that it might be difficult to extract your passwords from an application if you decide to stop using it. With `pass`, you maintain control of your secrets in a UNIX-like and straightforward system.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/1/manage-passwords-linux-terminal
|
||||
|
||||
作者:[Seth Kenlon][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/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/linux_keyboard_desktop.png?itok=I2nGw78_ (Linux keys on the keyboard for a desktop computer)
|
||||
[2]: http://bitwarden.com
|
||||
[3]: https://www.passwordstore.org/
|
||||
[4]: https://opensource.com/article/20/6/homebrew-mac
|
||||
[5]: https://gpgtools.org/
|
||||
[6]: https://opensource.com/article/20/11/macports
|
||||
[7]: mailto:seth@example.com
|
||||
[8]: http://www.example.com
|
||||
[9]: http://www.example.com.gpg
|
||||
[10]: https://opensource.com/article/19/8/what-are-environment-variables
|
||||
[11]: http://www.example.org
|
||||
[12]: https://opensource.com/sites/default/files/uploads/passff.jpg (PassFF)
|
||||
[13]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[14]: https://opensource.com/sites/default/files/uploads/passff-button-web.jpg (PassFF browser prompt)
|
||||
[15]: https://opensource.com/sites/default/files/uploads/passff-menu-web.jpg (PassFF browser menu)
|
@ -1,203 +0,0 @@
|
||||
[#]: subject: "View your Linux server's network connections with netstat"
|
||||
[#]: via: "https://opensource.com/article/22/2/linux-network-security-netstat"
|
||||
[#]: author: "Sahana Sreeram https://opensource.com/users/sahanasreeram01gmailcom"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
View your Linux server's network connections with netstat
|
||||
======
|
||||
The netstat command provides important insight into your Linux server,
|
||||
both for monitoring and network troubleshooting.
|
||||
![A rack of servers, blue background][1]
|
||||
|
||||
I shared some important first steps to help manage your personal Linux server in a [previous article][2]. I briefly mentioned monitoring network connections for listening ports, and I want to expand on this by using the `netstat` command for Linux systems.
|
||||
|
||||
Service monitoring and port scanning are standard industry practices. There's very good software like [Prometheus][3] to help automate the process, and [SELinux][4] to help contextualize and protect system access. However, I believe that understanding how your server connects to other networks and devices is key to establishing a baseline of what's normal for your server, which helps you recognize abnormalities that may suggest a bug or intrusion. As a beginner, I've discovered that the `netstat` command provides important insight into my server, both for monitoring and network troubleshooting.
|
||||
|
||||
Netstat and similar network monitoring tools, grouped together in the [net-tools package][5], display information about active network connections. Because services running on open ports are often vulnerable to exploitation, practicing regular network monitoring can help you detect suspicious activity early.
|
||||
|
||||
### Install netstat
|
||||
|
||||
Netstat is frequently pre-installed on Linux distributions. If netstat is not installed on your server, install it with your package manager. On a Debian-based system:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo apt-get install net-tools`
|
||||
```
|
||||
|
||||
For Fedora-based systems:
|
||||
|
||||
|
||||
```
|
||||
`$ dnf install net-tools`
|
||||
```
|
||||
|
||||
### Use netstat
|
||||
|
||||
On its own, the `netstat` command displays all established connections. You can use the `netstat` options above to specify the intended output further. For example, to show all listening and non-listening connections, use the `--all` (`-a` for short) option. This returns a lot of results, so in this example I pipe the output to `head` to display just the first 15 lines of output:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ netstat --all | head -n 15
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 *:27036 *:* LISTEN
|
||||
tcp 0 0 localhost:27060 *:* LISTEN
|
||||
tcp 0 0 *:16001 *:* LISTEN
|
||||
tcp 0 0 localhost:6463 *:* LISTEN
|
||||
tcp 0 0 *:ssh *:* LISTEN
|
||||
tcp 0 0 localhost:57343 *:* LISTEN
|
||||
tcp 0 0 *:ipp *:* LISTEN
|
||||
tcp 0 0 *:4713 *:* LISTEN
|
||||
tcp 0 0 10.0.1.222:48388 syd15s17-in-f5.1e:https ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:48194 ec2-35-86-38-2.us:https ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:56075 103-10-125-164.va:27024 ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:46680 syd15s20-in-f10.1:https ESTABLISHED
|
||||
tcp 0 0 10.0.1.222:52730 syd09s23-in-f3.1e:https ESTABLISHED
|
||||
|
||||
```
|
||||
|
||||
To show only TCP ports, use the `--all` and `--tcp` options, or `-at` for short:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ netstat -at | head -n 5
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
tcp 0 0 *:27036 *:* LISTEN
|
||||
tcp 0 0 localhost:27060 *:* LISTEN
|
||||
tcp 0 0 *:16001 *:* LISTEN
|
||||
|
||||
```
|
||||
|
||||
To show only UDP ports, use the `--all` and `--udp` options, or `-au` for short:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ netstat -au | head -n 5
|
||||
Active Internet connections (servers and established)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Address State
|
||||
udp 0 0 *:27036 *:*
|
||||
udp 0 0 10.0.1.222:44741 224.0.0.56:46164 ESTABLISHED
|
||||
udp 0 0 *:bootpc
|
||||
|
||||
```
|
||||
|
||||
The options for netstat are often intuitive. For example, to show all listening TCP and UDP ports with process ID (PID) and numerical address:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ sudo netstat --tcp --udp --listening --programs --numeric
|
||||
Active Internet connections (only servers)
|
||||
Proto Recv-Q Send-Q Local Address Foreign Addr State PID/Program name
|
||||
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
|
||||
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 2500/dnsmasq
|
||||
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1726/sshd
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1721/cupsd
|
||||
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 4023/sshd: tux@
|
||||
tcp6 0 0 :::111 :::* LISTEN 1/systemd
|
||||
tcp6 0 0 :::22 :::* LISTEN 1726/sshd
|
||||
tcp6 0 0 ::1:631 :::* LISTEN 1721/cupsd
|
||||
tcp6 0 0 ::1:6010 :::* LISTEN 4023/sshd: tux@
|
||||
udp 0 0 0.0.0.0:40514 0.0.0.0:* 1499/avahi-daemon:
|
||||
udp 0 0 192.168.122.1:53 0.0.0.0:* 2500/dnsmasq
|
||||
udp 0 0 0.0.0.0:67 0.0.0.0:* 2500/dnsmasq
|
||||
udp 0 0 0.0.0.0:111 0.0.0.0:* 1/systemd
|
||||
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1499/avahi-daemon:
|
||||
udp6 0 0 :::111 :::* 1/systemd
|
||||
udp6 0 0 :::44235 :::* 1499/avahi-daemon:
|
||||
udp6 0 0 :::5353 :::* 1499/avahi-daemon:
|
||||
|
||||
```
|
||||
|
||||
The short version of this common combination is `-tulpn`.
|
||||
|
||||
To display information about a specific service, [filter with `grep`][6]:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ sudo netstat -anlp | grep cups
|
||||
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1721/cupsd tcp6 0 0 ::1:631 :::* LISTEN 1721/cupsd
|
||||
unix 2 [ ACC ] STREAM LISTENING 27251 1/systemd /var/run/cups/cups.sock
|
||||
unix 2 [ ] DGRAM 59530 1721/cupsd
|
||||
unix 3 [ ] STREAM CONNECTED 55196 1721/cupsd /var/run/cups/cups.sock
|
||||
|
||||
```
|
||||
|
||||
### Next steps
|
||||
|
||||
Once you've run the `netstat` command, you can take steps to secure your system by ensuring that only services that you actively use are listening on your network.
|
||||
|
||||
1. Recognize commonly exploited ports and services. As a general rule, close the ports you're not actually using.
|
||||
2. Be on the lookout for uncommon port numbers, and learn to recognize legitimate ports in use on your system.
|
||||
3. Pay close attention to SELinux errors. Sometimes all you need to do is update contexts to match a legitimate change you've made to your system, but read the errors to make sure that SELinux isn't alerting you of suspicious or malicious activity.
|
||||
|
||||
|
||||
|
||||
If you find that a port is running a suspicious service, or you simply want to close a port that you no longer use, you can manually deny port access through firewall rules by following these steps:
|
||||
|
||||
If you're using `firewall-cmd`, run these commands:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ sudo firewall-cmd –remove-port=<port number>/tcp
|
||||
$ sudo firewall-cmd –runtime-to-permanent
|
||||
|
||||
```
|
||||
|
||||
If you're using UFW, run the following command:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo ufw deny <port number>`
|
||||
```
|
||||
|
||||
Next, stop the service itself using `systemctl`:
|
||||
|
||||
|
||||
```
|
||||
`$ systemctl stop <service>`
|
||||
```
|
||||
|
||||
### Learn netstat
|
||||
|
||||
Netstat is a useful tool to quickly collect information about your server's network connections. Regular network monitoring is important an important part of getting to know your system, and it helps you keep your system safe. To incorporate this step into your administrative routine, you can use network monitoring tools like netstat or ss, as well as open source port [scanners such as Nmap or sniffers like Wireshark][7], which allow for [scheduled tasks][8].
|
||||
|
||||
As servers house larger amounts of personal data, it's increasingly important to ensure the security of personal servers. By understanding how your server connects to the Internet, you can decrease your machine's vulnerability, while still benefiting from the growing connectivity of the digital age.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/linux-network-security-netstat
|
||||
|
||||
作者:[Sahana Sreeram][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/sahanasreeram01gmailcom
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/rack_server_sysadmin_cloud_520.png?itok=fGmwhf8I (A rack of servers, blue background)
|
||||
[2]: https://opensource.com/article/21/4/securing-linux-servers
|
||||
[3]: https://opensource.com/article/19/11/introduction-monitoring-prometheus
|
||||
[4]: https://opensource.com/business/13/11/selinux-policy-guide
|
||||
[5]: http://sourceforge.net/projects/net-tools/
|
||||
[6]: https://opensource.com/article/21/3/grep-cheat-sheet
|
||||
[7]: https://redhat.com/sysadmin/troubleshoot-dhcp-nmap-tcpdump-and-wireshark
|
||||
[8]: https://opensource.com/article/22/2/redhat.com/sysadmin/nmap-scripting-engine
|
@ -2,7 +2,7 @@
|
||||
[#]: via: "https://www.debugpoint.com/2022/02/twister-ui-2022/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
@ -1,111 +0,0 @@
|
||||
[#]: subject: "How I configure Vim as my default editor on Linux"
|
||||
[#]: via: "https://opensource.com/article/22/2/configure-vim-default-editor"
|
||||
[#]: author: "David Both https://opensource.com/users/dboth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
How I configure Vim as my default editor on Linux
|
||||
======
|
||||
Vim is my favorite editor. These changes to my system make Vim available
|
||||
as the default in programs that use a different editor by default.
|
||||
![Person using a laptop][1]
|
||||
|
||||
I have used Linux for about 25 years and Unix for a few years before that. During that time, I have developed preferences for some tools that I use daily. One of the most important tools I use is the Vim editor.
|
||||
|
||||
I started using Vi when I learned Solaris in the early ‘90s because I was told that it would always be available on any system, which is true in my experience. I have tried other editors, and they all do the job. However, I find that Vim works best for me, and I use it so much that my Vim muscle memory causes me to attempt to use its command keystrokes even with other editors.
|
||||
|
||||
Plus, I just really like Vim.
|
||||
|
||||
Many configuration files use Vi instead of Vim, and you can run the `vi` command. However, the `vi` command is a link to `vim`.
|
||||
|
||||
Many Linux tools use editors that emulate or just call [Nano][2], [Emacs][3], or Vim. Some other tools allow users—like those with clear preferences—to link to their favorite editor. The two examples that affected me the most were Bash command-line editing, which defaults to Emacs, and the Alpine text-mode email client, which defaults to the Pico editor. In fact, the Pico editor was written explicitly for use in the Pine email client, which is the predecessor to Alpine.
|
||||
|
||||
Not all programs that use external editors are configurable. Some use only the editor specified by the developer. For those applications that are configurable, there are different methods for selecting your preferred editor.
|
||||
|
||||
### Linux command-line editing
|
||||
|
||||
Besides actually editing text files, the other tool I use that requires the most editing is the Bash shell. The default Bash editor is Emacs. Although I have used Emacs, I definitely prefer Vim. So many years ago, I switched the default editing style for Bash command-line editing from Emacs to Vim, which is much more comfortable for me.
|
||||
|
||||
There are a couple of ways to configure Bash. You can use a local configuration file, such as `/home/yourhomedirectory/.bashrc`, which only changes the default for your user account and not for other users on the same system. I prefer to make these types of changes global, which basically means my personal account and root. In this second case, you can create your own configuration file and place it in the `/etc/profile.d` directory.
|
||||
|
||||
I added a file named `myBashConfig.sh` to `/etc/profile.d`. There are files for all the installed shells in the `/etc/profile.d` directory. During the launch of a terminal session, each shell reads only the files intended for it based on the file name extensions. For example, the Bash shell only reads the files with a `.sh` extension.
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
<SNIP>
|
||||
alias vim='vim -c "colorscheme desert" '
|
||||
# Set vi for bash editing mode
|
||||
set -o vi
|
||||
# Set vi as the default editor for all apps that check this
|
||||
EDITOR=vi
|
||||
<SNIP>
|
||||
|
||||
```
|
||||
|
||||
The line **set -o vi** in this global Bash configuration file segment sets Vi as the default editor. The **-o** option on this **set** command defines vi as the editor. You need to close any running Bash sessions and open new ones for this to take effect.
|
||||
|
||||
At this point, you can now use all of your familiar Vim editing commands, including cursor movement. Just press the **Escape** key to enter Vim editing mode. I especially like the ability to use **b** multiple times to move the cursor back multiple words.
|
||||
|
||||
### Set Vim as the default for other programs
|
||||
|
||||
Some Linux command-line tools and programs check the **$EDITOR** environment variable to determine which editor to use. You can check the current value of this variable for yourself using the following command. I did this on one of my newly installed virtual machines to verify what the default actually is.
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
# echo $EDITOR
|
||||
/usr/bin/nano
|
||||
#
|
||||
|
||||
```
|
||||
|
||||
By default, Fedora programs that check the **$EDITOR** environment variable will use the Nano editor. Adding the line **EDITOR=vi** as shown in the snippet above to `myBashConfig.sh` changes the default to the Vi (Vim) editor. Not all command-line programs that use an external editor check this environment variable.
|
||||
|
||||
### Edit email in Alpine
|
||||
|
||||
A few weeks ago, I decided that Pico was just not working well for me as my email editor. I could make it work and did for some time after switching to [Alpine][4] from Thunderbird. I found that Pico was getting in my way when I tried to use Vim key sequences, impacting my productivity.
|
||||
|
||||
I read in the Alpine Help that it is possible to change the default editor. I decided to change it to Vim. This is actually very easy to do.
|
||||
|
||||
On the Alpine main menu, press the **S** key to enter setup and then **C** for configuration. In the _Composer Preferences_ section, select the _Enable Alternate Editor Command_ and _Enable Alternate Editor Implicitly_ items with an **X**. Several pages down in the _Advanced User Preferences_ section, find the **Editor** line. It should look like this if it has not already been changed.
|
||||
|
||||
|
||||
```
|
||||
`Editor = <No Value Set>`
|
||||
```
|
||||
|
||||
Highlight this **Editor** line with the cursor bar, and press **Enter** to edit the line. Change **<No Value Set>** to **vim**, press **Enter**, and then press the **E** key to exit and **Y** to save the changes you have made.
|
||||
|
||||
To edit an email message using Vim, just enter the email body, and Vim starts automatically, just like Pico does. All of my favorite editing capabilities are there because it is actually using Vim. Even the **Esc :wq** sequence to exit Vim is the same.
|
||||
|
||||
### Final thoughts
|
||||
|
||||
I much prefer Vim to other editors, and these changes to my system make it available as the default in programs that use a different editor by default. Some programs use the **$EDITOR** environment variable, so you only need to make that change once. Other programs like Alpine have user configuration options that you must set individually for each program.
|
||||
|
||||
This ability to select your preferred external editor is quite in line with the Unix Philosophy tenet, “Each program should do one thing and do it well.” Why write another editor when there are several perfectly good ones out there? And it also meets the Linux Philosophy tenet, “Use your favorite editor.”
|
||||
|
||||
Of course, you can change your default text-mode editor to Nano, Pico, EMACS, or any other one that you prefer.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/configure-vim-default-editor
|
||||
|
||||
作者:[David Both][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/dboth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/laptop_screen_desk_work_chat_text.png?itok=UXqIDRDD (Person using a laptop)
|
||||
[2]: https://opensource.com/article/20/12/gnu-nano
|
||||
[3]: https://opensource.com/tags/emacs
|
||||
[4]: https://opensource.com/article/21/5/alpine-linux-email
|
@ -1,151 +0,0 @@
|
||||
[#]: subject: "Manage your calendar from the Linux terminal with the konsolekalendar command"
|
||||
[#]: via: "https://opensource.com/article/22/2/manage-calendar-linux-konsolekalender-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Manage your calendar from the Linux terminal with the konsolekalendar command
|
||||
======
|
||||
KDE is well-suited for terminal-based calendaring on Linux. The
|
||||
konsolekalendar command lets you view and manage an iCal calendar from
|
||||
the terminal.
|
||||
![Calendar close up snapshot][1]
|
||||
|
||||
I'm a [KDE user][2], and for years I've been on a seemingly endless journey of discovery with the Plasma Desktop. If you were to ask me in public, I'd probably claim to know everything there is to know about the desktop I use every day of my life. But in truth, I've actually only just scratched the surface. It seems every day I learn a new KDE trick that either makes my life easier or just more fun, and my latest discovery is the `konsolekalendar` command, which lets you view and manage an iCal calendar from the terminal.
|
||||
|
||||
### Akonadi
|
||||
|
||||
The Akonadi project is a low-level KDE Framework that helps the Plasma Desktop keep track of all the Personal Information Manager (PIM) data. It's mostly for developers and includes lots of libraries that allow a programmer to create applications through which you can access your contacts, notes, emails, calendar, and so on. Some terminal commands are included in Akonadi, such as `akonadictl` to start and stop the Akonadi service, but they're mostly for troubleshooting. However, `konsolekalendar` is a user-facing command that provides you full access to all the data in the Kontact suite, including KMail, Notes, and the Calendar.
|
||||
|
||||
If you're running KDE's Plasma Desktop, then you already have the Kontact suite installed.
|
||||
|
||||
![Kontact UI][3]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][4])
|
||||
|
||||
You also already have Akonadi and its tools installed, so everything you need for terminal-based calendaring is in place!
|
||||
|
||||
### View your calendar from the terminal
|
||||
|
||||
You can host your own iCal calendaring service thanks to projects like [NextCloud][5] and [Radicale][6], or you may already have an iCal account with popular providers (for instance, Google). When you use Kontact for calendaring, you subscribe to a calendar object (a "collection" in Akonadi's terminology). When you make updates to your local calendar, the changes get sent back to your iCal server to synchronize your calendar server and client.
|
||||
|
||||
Whether or not you've used the calendaring part of Kontact yet, you have some default calendar objects in Kontact. You have one called **Personal Calendar** and **Birthdays & Anniversaries**.
|
||||
|
||||
Here's how to display the current day's calendar (**Personal Calendar** by default):
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ konsolekalendar
|
||||
Date: Saturday, January 15, 2022
|
||||
10:00 AM - 11:00 AM
|
||||
Summary: Covid booster shot
|
||||
UID: 8d8a1e38-c88c-4d84-99e5-23...
|
||||
\----------------------------------
|
||||
Date: Saturday, January 15, 2022
|
||||
12:00 PM - 01:00 PM
|
||||
Summary: Lunch
|
||||
UID: 7aa89a...
|
||||
\----------------------------------
|
||||
Date: Saturday, January 15, 2022
|
||||
01:00 PM - 04:45 PM
|
||||
Summary: Afternoon coding
|
||||
UID: 9cde38b...
|
||||
\----------------------------------
|
||||
Date: Saturday, January 15, 2022
|
||||
06:00 PM - 10:00 PM
|
||||
Summary: Planescape game
|
||||
UID: c73f7e98-722f-48a2-8006-66...
|
||||
\----------------------------------
|
||||
|
||||
```
|
||||
|
||||
### Add an event
|
||||
|
||||
To see all calendars you've subscribed to, use the `--list-calendars` option:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ konsolekalendar --list-calendars
|
||||
\----------------------------------
|
||||
3 - (Read only) Birthdays & Anniversaries
|
||||
11 - Personal Calendar
|
||||
60 - (Read only) Open Invitations
|
||||
61 - (Read only) Declined Invitations
|
||||
66 - Dnd
|
||||
67 - Work
|
||||
68 - Museum
|
||||
|
||||
```
|
||||
|
||||
The numbers on the left are calendar IDs. To add an event to a specific calendar, use the `--calendar` option, followed by the calendar ID:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ konsolekalendar --add --calendar 66 \
|
||||
\--date 2022-01-16 \
|
||||
\--time 20:00 --end-time 23:59 \
|
||||
\--summary "Another game" \
|
||||
\--description "Remember to bring dice" \
|
||||
Success: "Another game" inserted
|
||||
|
||||
```
|
||||
|
||||
### Delete an event
|
||||
|
||||
You can also remove events. Each event has a unique ID (UID), provided at the bottom of each event listing:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ konsolekalendar --list
|
||||
Date: Saturday, January 15, 2022
|
||||
06:00 PM - 10:00 PM
|
||||
Summary: Planescape game
|
||||
UID: c73f7e98-722f-48a2-8006-66aa8ddcf789
|
||||
|
||||
```
|
||||
|
||||
To delete an event, use the `--delete` option along with the `--uid` option:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ konsolekalendar --delete \
|
||||
\--uid c73f7e98-722f-48a2-8006-66aa8ddcf789
|
||||
|
||||
```
|
||||
|
||||
### Akonadi in the terminal
|
||||
|
||||
Everything you do with `konsolekalendar` is immediately performed in Akonadi and is reflected just as quickly in Kontact itself. Using one doesn't mean you have to give up the other. Thanks to their shared Akonadi backend, the two view and edit the same data. The `konsolekalendar` command is a work in progress. Future plans include integration with the Notes and Journal parts of Kontact, and there are many more options available than this article covered. If you're using the KDE desktop, try `konsolekalendar` and experience a PIM for your terminal!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/manage-calendar-linux-konsolekalender-kde
|
||||
|
||||
作者:[Seth Kenlon][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/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/calendar.jpg?itok=jEKbhvDT (Calendar close up snapshot)
|
||||
[2]: https://opensource.com/article/17/5/7-cool-kde-tweaks-will-improve-your-life
|
||||
[3]: https://opensource.com/sites/default/files/uploads/kontact.jpg (Kontact UI)
|
||||
[4]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[5]: https://opensource.com/article/21/1/nextcloud-productivity
|
||||
[6]: https://radicale.org/v3.html
|
@ -2,7 +2,7 @@
|
||||
[#]: via: "https://opensource.com/article/22/2/start-running-containers"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: translator: "MjSeven"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
@ -1,209 +0,0 @@
|
||||
[#]: subject: "Top 10 Most Beautiful Linux Distributions [Featured]"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/beautiful-linux-distributions-2022/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "amagicboy"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Top 10 Most Beautiful Linux Distributions [Featured]
|
||||
======
|
||||
WE GIVE YOU THE TOP 10 BEAUTIFUL LINUX DISTRIBUTIONS OF 2022. THEY ARE A
|
||||
VISUAL TREAT TO YOUR EYES WHILE BEING A ROBUST OPERATING SYSTEM.
|
||||
The most fantastic thing about [Linux Distributions][1] is you can customize them to any extent to satisfy your visual needs. Whether based on Ubuntu or Fedora, you have all the tools you need to customize a Linux desktop.
|
||||
|
||||
But, there are many Linux Distributions that looks stunning without any customization. The developers have made them so that you can experience the visual treat right after installation without any additional effort on customization.
|
||||
|
||||
Hence, we compiled a list of the most beautiful Linux distributions you can try right now and give your PC a visual makeover.
|
||||
|
||||
### Most Beautiful Linux Distributions of 2022
|
||||
|
||||
#### 1\. Zorin OS
|
||||
|
||||
The first Linux Distribution which we would like to feature is Zorin OS. The Zorin OS is a beautiful Linux distribution that uses Zorin Desktop based on GNOME. It is perfect for newcomers who wants a nice desktop but are also productive at the same time.
|
||||
|
||||
One of the unique features that Zorin OS brings is its ability to transform its look to make it like any other operating system. That means the taskbar, application menu, and the Dock can change with just one click option from its Layout settings, and this gives you the utmost flexibility and out of the box experience while using ZorinOS.
|
||||
|
||||
[Read more about Zorin OS][2]
|
||||
|
||||
![Zorin OS 16 Desktop][3]
|
||||
|
||||
#### 2\. Elementary OS
|
||||
|
||||
The elementaryOS is one of the most beautiful Linux distributions today based on Ubuntu Long Term Support (LTS) release. This Linux Distribution uses the stunning Pantheon Desktop environment whose look and feel is inspired by macOS.
|
||||
|
||||
The elementary OS is perfect for those coming from macOS to the Linux world as they would find many things familiar, such as gestures and window decorations.
|
||||
|
||||
However, you may not find many customization options available in elementary OS settings. You may need to depend on external script commands to make further customization. However, the default looks are beautiful and serve their purpose for the majority of the users.
|
||||
|
||||
The most significant advantage of elementary OS is its curated app store. The App Store provides you with all categories of applications specially designed for the elementary OS, which looks and works great.
|
||||
|
||||
[Read more about elementaryOS][4]
|
||||
|
||||
![elementary OS 6 ODIN Desktop][5]
|
||||
|
||||
#### 3\. Deepin OS
|
||||
|
||||
The third distribution which we would like to highlight is Deepin OS. The Deepin OS is based on Debian and was created by Deepin Technology Co from China. It uses its own Deepin Desktop Environment based on Qt. The Deepin desktop looks incredible with its widgets, colour schemes, window decorations, wallpapers that give you an out of the box visual treat.
|
||||
|
||||
With its well-polished visual components, you may think that it looks almost similar to macOS. And thanks to the Debian “stable” branch, Deepin OS is the perfect choice if you want an excellent looking Linux distribution with stability.
|
||||
|
||||
Why is Deepin OS beautiful?
|
||||
|
||||
* _Awesome Qt-based Deepin Desktop_
|
||||
* _Native widgets and dark theme support_
|
||||
* _Several options to customize the Dock_
|
||||
* _Transparency, Window effects, CursDockheme, Icon Theme support_
|
||||
* _Accent Color_
|
||||
|
||||
|
||||
|
||||
[Read more about Deepin OS][6]
|
||||
|
||||
![Deepin 20 Desktop][7]
|
||||
|
||||
#### 4\. Cutefish OS
|
||||
|
||||
The fourth Linux Distribution which we feature here is [CutefishOS][8]. This Debian and Ubuntu-based Linux distribution feature a natively developed Cutefish desktop. This Linux Distribution is currently under development. But due to its looks, its already making waves across the user’s base.
|
||||
|
||||
Under the hood, CutefishOS is built upon Qt and KDE Framework. This efficient Linux Distribution with Cutefish desktop features the global menu feature at the top bar out of the box.
|
||||
|
||||
The customization options are still being worked on as its currently under development. But with the latest release, you get the native dark mode, accent colour, animation effects, dock position (left, right, bottom), among other options.
|
||||
|
||||
If you want to experiment with a nice desktop that looks completely different, you may go ahead. Also, you may go over the complete review and tutorials of this desktop presented below.
|
||||
|
||||
[Cutefish OS Review][9]
|
||||
|
||||
![Cutefish OS][10]
|
||||
|
||||
#### 5\. Manjaro KDE Plasma
|
||||
|
||||
The Manjaro Linux KDE Edition is one of the best looking Linux distributions today. Based on Arch Linux, Manjaro KDE Edition features the stock KDE Plasma desktop environment with some additional tweaks and widgets. The green colour palette of Manjaro gives you a fresh look and feel. You can customize further with built-in KDE tools and settings and change icons and themes from KDE Stores.
|
||||
|
||||
The Manjar KDE Edition is a perfect combination of performance and beauty with the power of Arch Linux. And it is an ideal starting point for the new Arch Linux users.
|
||||
|
||||
[Read more about Manjaro KDE Desktop][11]
|
||||
|
||||
![Manjaro KDE Plasma][12]
|
||||
|
||||
#### 6\. Garuda Linux
|
||||
|
||||
The famous Garduda Linux is the 6th OS on this list. Garuda Linux is based on Arch Linux and brings a beautiful desktop for you. It features all major desktop environments with custom-designed icon themes and colour palettes. This operating system uses Zen Kernel, optimized for performance in your hardware.
|
||||
|
||||
[][13]
|
||||
|
||||
SEE ALSO: 10 Things to Do After Installing Fedora 33
|
||||
|
||||
The look and feel are stunning in Garuda Linux. The macOS style looks that you get out of the box. The combination of neon icon theme, lovely colour palette, blur and Transparency with the global menu is perfect for its own.
|
||||
|
||||
One of the primary advantages of Garuda is it provides you with the choice of all desktop environments – KDE Plasma, GNOME, Xfce, LXQt, MATE and others.
|
||||
|
||||
[Read more about Garuda Linux][14]
|
||||
|
||||
![Garuda Linux][15]
|
||||
|
||||
#### 7\. Linux Mint Cinnamon Edition
|
||||
|
||||
We all love Linux Mint because of its simplicity, elegance and stability. It is one of the widely used and famous Linux distributions today. And perhaps the most used Linux distribution after Ubuntu. However, it is not that fancy looking if you compare this with other Linux Distributions here in this list.
|
||||
|
||||
But the default Cinnamon desktop looks clean and perfect if you like the legacy user interface, which looks fantastic.
|
||||
|
||||
The Linux Mint Cinnamon edition is perfect for all users, especially new users of Linux or even you are migrating from Windows. The default looks and feels with Mint’s green colour pallette look refreshing.
|
||||
|
||||
If you are unable to decide an eye candy Linux distribution with stability, choose the Linux Mint Cinnamon edition without a doubt.
|
||||
|
||||
[Read more about Linux Mint][16]
|
||||
|
||||
![Linux Mint 20 – Cinnamon Edition Desktop][17]
|
||||
|
||||
#### 8\. Nitrux OS
|
||||
|
||||
[Nitrux Linux][18] is based on Debian, which features a modified version of KDE Plasma desktop called NX Desktop. This unique Linux distribution brings its own set of Nitrux applications built upon Maui kit and Qt. Nitrux is systemd-free and uses OpenRC as an init system. With all these unique features and stunning looks, it is one of the best Linux distributions today.
|
||||
|
||||
Nitrux OS default look is perfectly designed with modified KDE Plasma desktop with Kvantum theme engine, icon theme, colour palette and cursor theme. The team behind Nitrux OS also brings a separate desktop called Maui Shell, a beautiful convergent desktop that adapts itself based on screen size.
|
||||
|
||||
If you need a KDE Plasma desktop with out of the box modification with stability, then go for Nitrux OS. You won’t be disappointed.
|
||||
|
||||
[Read more about Nitrux OS][18]
|
||||
|
||||
![Nitrux 2.0 + Desktop][19]
|
||||
|
||||
#### 9\. Ubuntu Kylin
|
||||
|
||||
The Ubuntu Kylin is an official Ubuntu flavour designed explicitly for the Chinese people who use a simplified Chinese script. However, it supports another language as well.
|
||||
|
||||
This modified Ubuntu flavour uses Ubuntu Kaylin User Interface (aka UKUI). The UKUI desktop is created using Qt to support MATE Desktop components.
|
||||
|
||||
Ubuntu Kylin looks elegant, and it would remind you of a combination of GNOME and KDE Plasma in terms of looks and design.
|
||||
|
||||
It features a nicely designed icon set, bottom taskbar, nice application view, app switcher, rounded corner, and more These features are carefully crafted.
|
||||
|
||||
[Read more about Ubuntu Kylin][20]
|
||||
|
||||
![Ubuntu Kylin Desktop][21]
|
||||
|
||||
#### 10\. Pop OS
|
||||
|
||||
The Pop OS is developed by System76, which manufactures computer hardware. This Ubuntu-based Linux Distribution comes pre-installed in all the System6 hardware. However, you can separately download and install it from its official repository in your system.
|
||||
|
||||
The Pop OS features the default GNOME desktop with additional tweaks and configurations. This desktop features the pre-GNOME 40 era desktop with several extensions and tweaks pre-configured. For example, you get a bottom dock that can be configured to move around in the desktop, a launcher to launch applications, rounded corners and many such features. This desktop also features auto tiling and optimized keyboard navigation to make you more productive.
|
||||
|
||||
The look and feel are clean and beautifully designed with a colour palette, built-in dark mode, rounded corners in the application window, and icon theme.
|
||||
|
||||
[Read more about Pop OS][22]
|
||||
|
||||
![Pop OS 21.10 Desktop][23]
|
||||
|
||||
### Closing Notes
|
||||
|
||||
I hope this list of beautiful Linux distributions of 2022 helps you decide which one you want for your desktop or laptop. Because these are already configured to look beautiful, they are powerful.
|
||||
|
||||
Take your pick and start your Linux journey.
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][24], [Twitter][25], [YouTube][26], and [Facebook][27] and never miss an update!
|
||||
|
||||
##### Also Read
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/beautiful-linux-distributions-2022/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/category/distributions
|
||||
[2]: https://zorin.com
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2021/08/Zorin-OS-16-Desktop-1024x576.jpg
|
||||
[4]: https://elementary.io/
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2021/08/elementary-OS-6-ODIN-Desktop-1024x576.jpg
|
||||
[6]: https://www.deepin.org/en/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2020/09/Deepin-20-Desktop-1024x568.jpg
|
||||
[8]: https://en.cutefishos.com/
|
||||
[9]: https://www.debugpoint.com/2021/11/cutefish-os-review-2021/
|
||||
[10]: https://www.debugpoint.com/wp-content/uploads/2021/11/Cutefish-OS-1024x581.jpg
|
||||
[11]: https://manjaro.org/downloads/official/kde/
|
||||
[12]: https://www.debugpoint.com/wp-content/uploads/2022/03/Manjaro-KDE-Plasma-1024x576.jpg
|
||||
[13]: https://www.debugpoint.com/2020/10/10-things-to-do-fedora-33-after-install/
|
||||
[14]: https://garudalinux.org/
|
||||
[15]: https://www.debugpoint.com/wp-content/uploads/2022/03/Garuda-Linux-1024x577.jpg
|
||||
[16]: https://linuxmint.com/
|
||||
[17]: https://www.debugpoint.com/wp-content/uploads/2020/07/Linux-Mint-20-Cinnamon-Edition-Desktop-1024x763.png
|
||||
[18]: https://nxos.org/
|
||||
[19]: https://www.debugpoint.com/wp-content/uploads/2022/03/Nitrux-2.0-Desktop-1024x581.jpg
|
||||
[20]: https://www.ubuntukylin.com
|
||||
[21]: https://www.debugpoint.com/wp-content/uploads/2022/03/Ubuntu-Kylin-Desktop-1024x574.jpg
|
||||
[22]: https://pop.system76.com/
|
||||
[23]: https://www.debugpoint.com/wp-content/uploads/2021/12/Pop-OS-21.10-Desktop-1024x579.jpg
|
||||
[24]: https://t.me/debugpoint
|
||||
[25]: https://twitter.com/DebugPoint
|
||||
[26]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[27]: https://facebook.com/DebugPoint
|
@ -1,168 +0,0 @@
|
||||
[#]: subject: "Linux Mint Debian Edition 5 – Perfection with Stability [Review]"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/linux-mint-debian-edition-5-review/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Linux Mint Debian Edition 5 – Perfection with Stability [Review]
|
||||
======
|
||||
WE REVIEW THE RECENTLY RELEASED LINUX MINT DEBIAN EDITION 5 (LMDE 5) IN
|
||||
TERMS OF PERFORMANCE, STABILITY & USER-FRIENDLINESS. HERE’S WHAT WE HAVE
|
||||
FOUND.
|
||||
The Linux Mint team announced the release of Linux Mint Debian Edition LMDE 5 (LMDE 5) after more than two years since its predecessor LMDE 4 (Debbie). LMDE 5 is based on [Debian 11 Bullseye][1] that brings LTS Linux Kernel 5.10 and Debian package base. Most of the applications and packages are almost identical with Linux Mint 20.3 except the Kernel version.
|
||||
|
||||
That said, let’s dig in.
|
||||
|
||||
### Linux Mint Debian Edition 5 Review
|
||||
|
||||
We tested Linux Mint Debian Edition 5 (LMDE 5) in actual older hardware with the below spec.
|
||||
|
||||
* Intel Core i3 1st Gen
|
||||
* 4GB DDR3 SDRAM
|
||||
* Broadcom chip
|
||||
* NVIDIA® GeForce® 315M
|
||||
* SSD Storage
|
||||
|
||||
|
||||
|
||||
#### ISO Download, LIVE Medium and Installation
|
||||
|
||||
Finding the ISO and downloading it from the newly designed Linux Mint website is easy. The LIVE medium boot went fine, and the installation icon at the desktop kicked off the installer.
|
||||
|
||||
LMDE uses a modified version of the Debian installer. It is not Calamares. The vanilla Debian installer is tricky and somewhat [confusing for new users][2] [my opinion]. But Linux Mint team makes it very easy to install with just a few steps and removed all the confusing items from the Debian installer.
|
||||
|
||||
You need to provide the location, keyboard layout, name and credentials and you are ready to install. The partition system of the installer uses GParted, which is friendly and handy.
|
||||
|
||||
So, the installation went smooth in virtual machines and physical hardware for my test.
|
||||
|
||||
The physical system took 4 to 5 minutes, while the virtual system took around 3 minutes for installation.
|
||||
|
||||
#### First Impression
|
||||
|
||||
![Linux Mint Debian Edition 5 \(LMDE5\) Desktop][3]
|
||||
|
||||
If you were familiar with Linux Mint earlier with Cinnamon desktop, you would not find any difference in the Debian edition. They are the same. If you are new to Linux Mint Cinnamon, then a nice and clean desktop welcomes you after you finish your installation.
|
||||
|
||||
The desktop icons, well-adjusted colours and themes, bottom taskbar, system tray – everything is well organised and can get you started in no time.
|
||||
|
||||
Whether you use low-end or high-end hardware – Linux Mint Debian edition is fast on response and working in applications. The application switching and overall desktop response are solid.
|
||||
|
||||
You get well-tested applications and packages that seldom break based on Debian stability. That means no more worries about conflicting packages, missing updates and the usual issues with Linux systems.
|
||||
|
||||
#### Pre-Installed Applications
|
||||
|
||||
One of the advantages of Linux Mint (not only the Debian Edition) is its pre-loaded applications. Many Linux distributions do not include necessary applications in the ISO installer because of several reasons such as ISO size, etc.
|
||||
|
||||
But Linux Mint team thinks about their users and packages all the necessary applications that you need. This takes care of the needs of most of the user base. It helps reduce the end-users burden on searching and installing compatible applications after installing Linux Mint Debian Edition 5.
|
||||
|
||||
[][4]
|
||||
|
||||
SEE ALSO: Zorin OS 16 Lite Review - Perfect Combination of Beauty, Performance and Simplicity
|
||||
|
||||
For example, with Linux Mint Debian Edition 5, the following essential apps are installed by default and ready to use.
|
||||
|
||||
* Pencil Drawing App
|
||||
* Media: Celluloid media player, Hypnotix, Rythmbox
|
||||
* Torrent client Transmission 3.0
|
||||
* Complete Office suite: LibreOffice 7.0
|
||||
* Email Client: Thunderbird 91.0
|
||||
* Web browser: Firefox 97.0
|
||||
|
||||
|
||||
|
||||
That’s not all. You get a dedicated native application for all the below use cases. A user need not to look for a separate app for these.
|
||||
|
||||
* Screenshot and screensaver
|
||||
* Tool for reducing eye strain
|
||||
* USB format tool and Image Writer
|
||||
* Sticky Pad
|
||||
* Synaptic Package Manager
|
||||
* System backup and restore
|
||||
* Firewall utility
|
||||
|
||||
|
||||
|
||||
#### How LMDE5 is performing?
|
||||
|
||||
It is always fascinating to see a distro performing as per the expectation. And Linux Mint Debian Edition 5 performed well above expectations.
|
||||
|
||||
During an idle state, it is consuming 750 MB of RAM and the CPU is at 2%.
|
||||
|
||||
![Performance During the light workload][5]
|
||||
|
||||
Then I ran it through a heavy workload with the followings.
|
||||
|
||||
* Firefox with three tabs open and one of them playing one YouTube video
|
||||
* LibreOffice Calc one sheet open
|
||||
* Drawing app with one instance
|
||||
* Settings
|
||||
* One terminal window
|
||||
* File manager
|
||||
|
||||
|
||||
|
||||
With the above workload, it is consuming around 1.5 GB of RAM and the CPU is at 14%. Most of the resources are consumed by Firefox, obviously.
|
||||
|
||||
![Performance During heavy workload][6]
|
||||
|
||||
In my opinion, it is a perfect metric and well-optimised distribution for older hardware. The above metric is measured on the physical system.
|
||||
|
||||
#### Connectivity
|
||||
|
||||
Connectivity is an integral part of any OS. So, Linux Mint Debian Edition 5 can connect to WiFi (with an old Broadcom chip) and link to Bluetooth speakers without any additional tweaking.
|
||||
|
||||
The volume controls worked well with the Bluetooth daemon during my test.
|
||||
|
||||
Also, we tested the USB hot plug-in and it is detected and mounted automatically without any problem.
|
||||
|
||||
So, no surprises there, which is expected.
|
||||
|
||||
### Any Bugs?
|
||||
|
||||
I have not encountered any bugs during my test. Everything worked well.
|
||||
|
||||
But one of the problems I found when I closed my physical test system laptop lid. It went to standby. But did not wake up. I could not see the login screen. The screen is black without any cursor. I had to do a hard reboot to get into the system.
|
||||
|
||||
It might be a hardware-specific issue on my test device. I believe it will not be of any concern for newer systems.
|
||||
|
||||
### Summary
|
||||
|
||||
To wrap up the Linux Mint Debian Edition 5 review, it is by far the most stable and well optimised Linux Distribution. You can trust this version for your daily driver and if you are planning to use a system for two years or more. So, if you need a non-Ubuntu based stable system, fast, low maintenance and long-running daily driver for your old or new systems, this is a perfect choice. Go for it.
|
||||
|
||||
You can download Linux Mint Debian Edition 5 [on the official website][7].
|
||||
|
||||
Cheers.
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][8], [Twitter][9], [YouTube][10], and [Facebook][11] and never miss an update!
|
||||
|
||||
##### Also Read
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/linux-mint-debian-edition-5-review/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2021/05/debian-11-features/
|
||||
[2]: https://www.debugpoint.com/2021/01/install-debian-buster/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/03/Linux-Mint-Debian-Edition-5-LMDE5-Desktop-1024x580.jpg
|
||||
[4]: https://www.debugpoint.com/2021/12/zorin-os-16-lite-review-xfce/
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/03/Performance-During-light-workload-1024x606.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2022/03/Performance-During-heavy-workload-1024x601.jpg
|
||||
[7]: https://linuxmint.com/edition.php?id=297
|
||||
[8]: https://t.me/debugpoint
|
||||
[9]: https://twitter.com/DebugPoint
|
||||
[10]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[11]: https://facebook.com/DebugPoint
|
@ -1,221 +0,0 @@
|
||||
[#]: subject: "10 Lightweight Linux Distributions for your Old Hardware in 2022"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/lightweight-linux-distributions-2022/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
10 Lightweight Linux Distributions for your Old Hardware in 2022
|
||||
======
|
||||
WE HIGHLIGHT A LIST OF 10 LIGHTWEIGHT LINUX DISTRIBUTIONS IDEAL FOR YOUR
|
||||
OLDER PC IN 2022. WE GIVE YOU THEIR FEATURES AND WHAT MAKES THEM PERFECT
|
||||
FOR REVIVING OLDER HARDWARE.
|
||||
We believe that you should not throw away any hardware, especially PC and its components. Ideally, well-designed software should always run on any hardware. There are many [Linux Distributions][1] specifically designed for older hardware and PCs. And you can quickly revive them with the help of these Linux operating systems. In this post, we highlight ten such Linux Distributions which are lightweight and old hardware friendly in 2022.
|
||||
|
||||
### 10 Lightweight Linux Distributions 2022
|
||||
|
||||
#### 1\. Linux Lite
|
||||
|
||||
The first lightweight Linux Distribution we feature in this list for 2022 is Linux Lite. Linux Lite is a continually developed and improved Linux Distribution based on Ubuntu and Debian. This decade-old Linux Distribution is perfect for your older hardware which needs a friendly and well-designed distro. The team markets this distro as an ideal starting point for Windows users who ends up with not supported hardware with Windows. The primary advantages of this distro are well customized and nice-looking Xfce desktop with an Ubuntu base, the latest Kernel and, of course, a 32-bit ISO image.
|
||||
|
||||
![Linux Lite][2]
|
||||
|
||||
Advantages of Linux Lite:
|
||||
|
||||
* Ubuntu-based
|
||||
* Customized Xfce desktop
|
||||
* Native applications
|
||||
* 32-bit support
|
||||
* Active development
|
||||
* Minimum system requirement < 1 GB RAM
|
||||
|
||||
|
||||
|
||||
[Download Linux Lite][3]
|
||||
|
||||
#### 2\. Puppy Linux
|
||||
|
||||
The second distro that we feature in this list is Puppy Linux. Puppy Linux is a little different than traditional distros out there. It is designed to run from RAM without needing to install it in a physical system. If appropriately configured, you can save the sessions, plus it continues to work well even if you remove the bootable medium.
|
||||
|
||||
![Puppy Linux – one of the best lightweight Linux Distribution in 2022][4]
|
||||
|
||||
This Linux distro is binary compatible with Ubuntu LTS versions; the latest version is based on Ubuntu 20.04 LTS. Since Ubuntu dropped the 32-bit support, the newest version dropped the 32-bit version.
|
||||
|
||||
Puppy Linux use cases are perfect for older computers, Netbooks, hardware with less than 1GB of RAM. At the core, it is run by superfast JWM (Jow’s Window Manager), Puppy Package Manager that supports .deb, .rpm and its native PET packages.
|
||||
|
||||
Overall, it’s a perfect and well designed Linux Distribution for older hardware, hands down.
|
||||
|
||||
Features:
|
||||
|
||||
* Based on the Ubuntu LTS Version
|
||||
* It can run on low-end Netbooks
|
||||
* Works directly from RAM even after removing the bootable media
|
||||
* Unique package manager – Puppy Package Manager
|
||||
* Powered by JWM
|
||||
|
||||
|
||||
|
||||
#### 3\. BunsenLabs Linux
|
||||
|
||||
The third lightweight Linux distro in this list is BunsenLabs Linux, a successor of the Crunchbang project. The BunsenLabs Linux is based on the Debian Stable branch, bringing modern applications to your low-end system. This distro provides a 32-bit version image for low-end systems and a standard 64-bit system for your regular hardware. At the core, BunsenLabds is powered by a pre-configured OpenBox window manager with a stunning tint2 panel, pre-configured Conky and jgmenu.
|
||||
|
||||
![BunsenLabs Linux][5]
|
||||
|
||||
This is a well designed, superfast, stable and nice-looking distribution for older systems.
|
||||
|
||||
Feature summary:
|
||||
|
||||
* Based on Debian Stable branch
|
||||
* Openbox window manager with tint2 panel, conky and jgmenu
|
||||
* Provides a 32-bit installer
|
||||
* Help and support are available via official forums
|
||||
|
||||
|
||||
|
||||
[Download BunsenLabs Linux][6]
|
||||
|
||||
#### 4\. Lubuntu
|
||||
|
||||
Lubuntu is famous for being a lightweight Linux Distribution. It is an official Ubuntu Linux flavour that features the lightweight LxQt desktop environment. Lubuntu gives you modern Ubuntu Linux packages and technology while it features the LxQt for your low-end hardware. Although it might require some extra system resources compared to other distros in this list, it is still a go to Linux distro for older hardware.
|
||||
|
||||
![Lubuntu][7]
|
||||
|
||||
If you need a moderately lighter Linux Distribution which is stable and works out of the box, then choose Lubuntu.
|
||||
|
||||
[Download Lubuntu][8]
|
||||
|
||||
#### 5\. Absolute Linux
|
||||
|
||||
The fifth lightweight Linux distribution is Absolute Linux, based on Slackware Linux. This distro packages all necessary day to day applications in its installer image so that you get a complete distro out of the box. Absolute Linux features the IceWM and ROX Desktop, which gives you ultimate speed while using it in your older hardware. It is systemd-free, which offers an extra advantage over other distributions.
|
||||
|
||||
![Absolute Linux][9]
|
||||
|
||||
Feature Summary:
|
||||
|
||||
* Based on Slackware
|
||||
* Systemd-free
|
||||
* Packages necessary software
|
||||
* Powered by IceWM and package manager Slapt-get
|
||||
|
||||
|
||||
|
||||
[Download Absolute Linux][10]
|
||||
|
||||
#### 6\. antiX Linux
|
||||
|
||||
Yet another lightweight Linux distribution we want to highlight is antiX Linux. The antiX Linux is based on Debian stable branch and comes with several attractive features. At its core, it uses IceWM, Fluxbox, and ROX Desktop options, giving you an excellent and fast desktop experience. It is entirely systemd-free and uses sysVinit and runit system. The antiX Linux also gives you a 32-bit installer and has four variants – Full, Core, Base and net catering to different use cases.
|
||||
|
||||
![antiX Linux][11]
|
||||
|
||||
Features:
|
||||
|
||||
* Based on Debian stable
|
||||
* Provides a 32-bit installer
|
||||
* Systemd free
|
||||
* Powered by IceWM and other window manager flavours
|
||||
|
||||
|
||||
|
||||
[Download antiX Linux][12]
|
||||
|
||||
#### 7\. LXLE
|
||||
|
||||
The LXLE Linux is a spin of the Lubuntu LTS series with an LXDE desktop instead of an LXQt desktop. The choice of applications, installer and other features makes it a perfect distro for older hardware. It is ideal for reviving your old system with a stable Ubuntu-LTS base and a fast LXDE desktop environment.
|
||||
|
||||
![LXLE Linux][13]
|
||||
|
||||
However, in my personal opinion, I feel LXQt is a little faster than LXDE. Well, that feedback might be relative and can be different for you. There are not many Linux distributions today which give you an LXDE flavour. Hence it is one of the unique and lightweight Linux distributions for your daily use.
|
||||
|
||||
[Download LXLE][14]
|
||||
|
||||
#### 8\. Porteus Linux
|
||||
|
||||
The Porteus Linux is a remix of Slackware Linux that features the old KDE 4.0+ desktop environment (before the KDE Plasma series). This superfast Linux distribution is perfect for your antique hardware because it is based on bleeding edge Slackware and gives you a 32-bit version. This distro can run from Live USB or a CD or any bootable media and comes with just 300 MB of installer size.
|
||||
|
||||
[][15]
|
||||
|
||||
SEE ALSO: 10 Great Apps to Improve Your GNOME Experience [Part 3]
|
||||
|
||||
If you love the old KDE (like me!) and Slackware simplicity, this is a perfect distro for you, even your new hardware.
|
||||
|
||||
![Porteus Linux][16]
|
||||
|
||||
[Download Porteus Linux][17]
|
||||
|
||||
#### 9\. Q4OS
|
||||
|
||||
Q4OS is a unique Linux Distribution in this list. It targets the older Windows systems, which have become obsolete today. Many older PCs used to run Windows XP and Windows 7. They no longer work well with Windows and some modern Linux Distributions because the modern and updated OS requires much more computing power and resources.
|
||||
|
||||
Q4OS targets those use cases and give you a well designed Linux Distribution with features such as a 32-bit installer, Windows installer, Trinity Desktop environments, pre-made Windows themes, etc.
|
||||
|
||||
![MX Linux][18]
|
||||
|
||||
[Download Q4OS][19]
|
||||
|
||||
#### 10\. MX Linux
|
||||
|
||||
The final Linux Distribution in this list is the famous MX Linux which makes it mark in recent times with its features and uniqueness. However, I doubted whether I would list MX Linux as the lightweight. Because in my opinion, it is a medium-weight Linux Distribution if you consider its KDE Plasma flavour.
|
||||
|
||||
![MX Linux][20]
|
||||
|
||||
However, it has some features which make it a perfect candidate for lightweight Linux distributions. MX Linux is based on the Debian Stable branch and created with antiX components. It features its own MX Linux native applications for your additional workflow. You get KDE Plasma, Xfce and Fluxbox as desktop options.
|
||||
|
||||
[Download MX Linux][21]
|
||||
|
||||
### Summary & Conclusion
|
||||
|
||||
If you look closely, most of the lightweight Linux Distribution that we listed here is based on Debian Linux. It is truly the “Universal Operating System”. Modern Linux Desktop Environments like GNOME 40+, KDE Plasma with Systemd init systems are no longer compatible with older hardware. Also, as technology progresses, more software complexity is introduced, requiring higher-end systems.
|
||||
|
||||
That said, I hope you get some idea about which lightweight Linux distributions to choose for your old laptop or PC from this list. Each of them serves different tastes and needs with one goal: to revive your older systems. So, take your pick.
|
||||
|
||||
Cheers.
|
||||
|
||||
_Some image credit: Respective Linux Distributions_
|
||||
|
||||
_This article Top Ten Lightweight Linux Distributions of 2022 is filed under [Top Ten List][22]._
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][23], [Twitter][24], [YouTube][25], and [Facebook][26] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/lightweight-linux-distributions-2022/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/category/distributions
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/03/Linux-Lite-1024x576.jpg
|
||||
[3]: http://www.linuxliteos.com/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/03/Puppy-Linux-one-of-the-best-lightweight-Linux-Distribution-in-2022-1024x579.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/03/BunsenLabs-Linux.jpg
|
||||
[6]: https://www.bunsenlabs.org/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/03/Lubuntu-1024x576.jpg
|
||||
[8]: https://lubuntu.me/
|
||||
[9]: https://www.debugpoint.com/wp-content/uploads/2022/03/Absolute-Linux-1024x640.jpg
|
||||
[10]: https://www.absolutelinux.org/
|
||||
[11]: https://www.debugpoint.com/wp-content/uploads/2022/03/antiX-Linux-1024x640.jpg
|
||||
[12]: https://antixlinux.com/
|
||||
[13]: https://www.debugpoint.com/wp-content/uploads/2022/03/LXLE-Linux-1024x576.jpg
|
||||
[14]: http://www.lxle.net/
|
||||
[15]: https://www.debugpoint.com/2022/01/best-gnome-apps-part-3/
|
||||
[16]: https://www.debugpoint.com/wp-content/uploads/2022/03/Porteus-Linux-1024x576.jpg
|
||||
[17]: http://www.porteus.org/
|
||||
[18]: https://www.debugpoint.com/wp-content/uploads/2022/03/MX-Linux-1024x515.jpg
|
||||
[19]: https://q4os.org/
|
||||
[20]: https://www.debugpoint.com/wp-content/uploads/2022/03/MX-Linux-1-1024x515.jpg
|
||||
[21]: https://mxlinux.org/
|
||||
[22]: https://www.debugpoint.com/tag/top-10-list
|
||||
[23]: https://t.me/debugpoint
|
||||
[24]: https://twitter.com/DebugPoint
|
||||
[25]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[26]: https://facebook.com/DebugPoint
|
@ -1,173 +0,0 @@
|
||||
[#]: subject: "CrunchBang++ Linux – The Ultimate Lightweight and Stable Linux Distribution"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/crunchbang-linux-review/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
CrunchBang++ Linux – The Ultimate Lightweight and Stable Linux Distribution
|
||||
======
|
||||
WE REVIEW THE DEBIAN BASED, OPENBOX POWERED LIGHTWEIGHT LINUX
|
||||
DISTRIBUTION CRUNCHBANG++ LINUX AND GUIDE YOU IF YOU PLAN TO USE IT.
|
||||
The CrunchBang++ Linux is a successor of the unique CrunchBang project, which is now discontinued. The earlier CrunchBang Linux was popular because of its using very minimal system resources and being friendly on low-end hardware. CrunchBang++ also has a 32-bit installer (rare these days) for outdated hardware or PCs.
|
||||
|
||||
We received some comments about not featuring CrunchBang++ in our earlier article on [top lightweight Linux Distributions][1]. So, we wanted to do a deep dive on this super-thin Linux Distribution in terms of performance, Accessibility and other factors. Let’s dig in.
|
||||
|
||||
### CrunchBang++ Linux Review
|
||||
|
||||
![CrunchBang++ Linux Desktop with Openbox][2]
|
||||
|
||||
#### LIVE Medium and Installation
|
||||
|
||||
As of writing this review, CrunchBang++ is based on the latest Debian 11 Bullseye and provides both 32-bit and 64-bit ISO variants. You can get your copy from the [official website][3]. For this review, we have used the 64-bit installer. The 64-bit installer size is 1.6GB, which is perfect if you compare the popular Linux Distribution ISO size today. For example, the latest Ubuntu 64-bit desktop ISO is 3.2GB+, which is enormous.
|
||||
|
||||
The installer boot menu provides the option to test the LIVE image and kick off the installation. If you are planning to try the LIVE image first, go ahead. But you can not start the installation from the LIVE medium! Instead, you have to boot again and choose the install option. The Live desktop user id and password are both ‘live’.
|
||||
|
||||
![Installation in the boot menu][4]
|
||||
|
||||
The installation in both physical and virtual machines ([virt-manager][5]) went fine. CrunchBang++ uses Debian’s native installer, which is a little complex. But you can easily install it by following the on-screen instructions. You may want to check out our [Debian Installation guide][6] if you are new to Debian installer.
|
||||
|
||||
Installation time is around 5 to 10 minutes on average in virtual and physical systems.
|
||||
|
||||
#### First Look with Desktop
|
||||
|
||||
CrunchBang++ gives you the classic Openbox window manager experience. The login screen is surprisingly clean and perfect, with only the option to enter your credentials.
|
||||
|
||||
If you are running it for the first time, a welcome script will guide you to check the internet speed, update your system, etc.
|
||||
|
||||
![The welcome script][7]
|
||||
|
||||
The Openbox itself is fast and clean. The desktop brings a clean look with its pre-configured SBPP Openbox theme with the following components –
|
||||
|
||||
* [gmrun][8] – a lightweight application launcher
|
||||
* [Tint2][9] panel, which is at the top of the desktop
|
||||
* [dmenu][10] – the simple dynamic menu system
|
||||
|
||||
|
||||
|
||||
You can configure each of them with easy configuration options accessible from the right-click menu.
|
||||
By default, two workspaces are accessible via the top panel. The top panel also have the basic tray icons for your needs:
|
||||
|
||||
* Volume Control
|
||||
* Network connections
|
||||
* Language tool
|
||||
* Battery monitor
|
||||
* Clipboard manager
|
||||
|
||||
|
||||
|
||||
Being a window manager, you do not have an application view. But with the gmrun application launcher, it’s super easy to launch any application. However, the primary Openbox right-click menu gives you all the options whenever you need any application to launch.
|
||||
|
||||
#### Accessibility and applications
|
||||
|
||||
CrunchBang++ only includes the minimum required applications to keep the ISO and installation lightweight. The following applications are pre-installed.
|
||||
|
||||
* GIMP
|
||||
* Thunar File Manager
|
||||
* Catfish File Search
|
||||
* Gnumeric
|
||||
* VLC Media Player
|
||||
* Filezilla
|
||||
* Remote Desktop Client
|
||||
* Transmission Torrent Client
|
||||
* Screenshot utility
|
||||
* Geany Text Editor
|
||||
|
||||
|
||||
|
||||
[][11]
|
||||
|
||||
SEE ALSO: ExTiX 21.1 Released based on latest Deepin Desktop [Review]
|
||||
|
||||
The powerful Synaptic package manager takes care of all your software needs. LibreOffice is not installed by default, so you need to install it separately. There is no utility for centralized settings, so you may feel the lack of a settings manager, sometimes.
|
||||
|
||||
#### Performance and Resource Usage
|
||||
|
||||
The performance of CrunchBang++ is perfect for lightweight distribution.
|
||||
|
||||
This distro uses 585 MB of RAM, and the CPU is at 1% in an idle state. If you keep the system running for an hour or more in an inactive state, the RAM is further reduced to around 350 MB. This is an impressive metric.
|
||||
|
||||
![Performance During Idle State][12]
|
||||
|
||||
To test the heavy workload, we opened one instance of the below application in CrunchBang++:
|
||||
|
||||
* Firefox with two tabs
|
||||
* Thunar File Manager
|
||||
* GIMP
|
||||
* Gnumeric
|
||||
* Text Editor
|
||||
* Terminal
|
||||
* Catfish File Search
|
||||
|
||||
|
||||
|
||||
This workload uses 1.07 GB of RAM, and the CPU is at 5%-7%.
|
||||
|
||||
The default installation of this distro uses 4 GB of disk space.
|
||||
|
||||
![Performance During Heavy workload State][13]
|
||||
|
||||
#### Connectivity
|
||||
|
||||
We ran it through various Connectivity tests as outlined below. And it passed each of them except Bluetooth.
|
||||
|
||||
* Wifi detection and connection – works perfectly
|
||||
* It aligned correctly with multiple displays and resolution config (thanks to the pre-installed ARandR).
|
||||
* Auto-detection of USB (even in virtual machine mode) – works well
|
||||
|
||||
|
||||
|
||||
There is no utility available for Bluetooth enable, discovery and connect (like some of the Xfce desktop flavours). So, if you install a utility, you should be all set.
|
||||
|
||||
#### Things that did not go well with CrunchBang++
|
||||
|
||||
In my opinion, this Linux distribution should be used by little experienced users who are okay to navigate around errors in Linux in general and comfortable using the terminal when needed.
|
||||
|
||||
I found some of the items that I think are required with default installations. There is no way to configure the Mouse, Keyboard in this distro. No utility is pre-installed. You can, however, tweak them via the terminal. You may need to install additional applications to configure those.
|
||||
|
||||
There are some bugs in the right-click menu with recent applications and some in the Nitrogen wallpaper changer. However, they are not a showstopper for your day to day usage.
|
||||
|
||||
So, overall I think it’s stable and can work well despite the missing pieces.
|
||||
|
||||
### Summary and Conclusion
|
||||
|
||||
While wrapping up the CrunchBang++ review, I am compelled to say that it is one of the efficient and functional Linux distribution. It might not be the shiny and glittery desktop out there, but a stable and productive Linux Distribution that can run on any hardware. You can easily use it for your daily driver and keep on using it for years without formatting your entire system. A great piece of software from the people involved with CrunchBang++.
|
||||
|
||||
Cheers.
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][14], [Twitter][15], [YouTube][16], and [Facebook][17] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/crunchbang-linux-review/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.debugpoint.com/2022/03/lightweight-linux-distributions-2022/
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/04/CrunchBang-Linux-Desktop-with-Openbox-1024x576.jpg
|
||||
[3]: https://crunchbangplusplus.org/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/Installation-in-boot-menu.jpg
|
||||
[5]: https://www.debugpoint.com/2020/11/virt-manager/
|
||||
[6]: https://www.debugpoint.com/2021/01/install-debian-buster/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/04/The-welcome-script.jpg
|
||||
[8]: https://github.com/WdesktopX/gmrun
|
||||
[9]: https://gitlab.com/o9000/tint2
|
||||
[10]: https://tools.suckless.org/dmenu/
|
||||
[11]: https://www.debugpoint.com/2021/01/extix-21-1-review/
|
||||
[12]: https://www.debugpoint.com/wp-content/uploads/2022/04/Performance-During-Idle-State.jpg
|
||||
[13]: https://www.debugpoint.com/wp-content/uploads/2022/04/Performance-During-Heavy-workload-State.jpg
|
||||
[14]: https://t.me/debugpoint
|
||||
[15]: https://twitter.com/DebugPoint
|
||||
[16]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[17]: https://facebook.com/DebugPoint
|
@ -1,133 +0,0 @@
|
||||
[#]: subject: "Peergos: An Open-Source Google Drive Alternative That You Can Self-Host"
|
||||
[#]: via: "https://itsfoss.com/peergos/"
|
||||
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Peergos: An Open-Source Google Drive Alternative That You Can Self-Host
|
||||
======
|
||||
|
||||
Google Drive is one of the most popular cloud storage services.
|
||||
|
||||
And, for all the right reasons, it offers flexible pricing, regional pricing, and many other advantages.
|
||||
|
||||
Unfortunately, it does not offer end-to-end encryption. Moreover, it is not an open-source offering.
|
||||
|
||||
So, do we have an open-source replacement for Google Drive?
|
||||
|
||||
Sure, [free cloud storage services][1] are available, but they aren’t open-source nor entirely secure/private.
|
||||
|
||||
Fret not, we have an excellent open-source solution, i.e., **Peergos**.
|
||||
|
||||
### Peergos: A Peer-to-Peer Open-Source Cloud Storage Service With a Mini Social Network Platform
|
||||
|
||||
![][2]
|
||||
|
||||
[Peergos][3] is not just an ordinary alternative to Google Drive. It is much more than just a private web storage platform.
|
||||
|
||||
With Peergos, you get an end-to-end encrypted private webspace built on top of [IPFS protocol][4] (peer-to-peer).
|
||||
|
||||
The use of such a protocol makes it a decentralized storage platform which is resistant to censorship.
|
||||
|
||||
Not just limited to its security/privacy, you also get the ability to socialize with your friends in the platform using the newsfeed.
|
||||
|
||||
For instance, you upload photos and share them with your friends, other users (your friends) can see them in their newsfeed and interact just like a social media platform.
|
||||
|
||||
You also get to add to-do tasks, organize a calendar, and share it with collaborators/friends as required.
|
||||
|
||||
In other words, you can also consider Peergos as a [Nextcloud][5] replacement to some extent.
|
||||
|
||||
You can opt to self-host Peergos or opt for their cloud offering starts for free (200 MB storage) and can be upgraded to 50 GB for **£5** /month or 500 GB for **£25 /month**.
|
||||
|
||||
Let me highlight some of the key features that you get with Peergos.
|
||||
|
||||
### Features of Peergos
|
||||
|
||||
![][6]
|
||||
|
||||
Considering you get a variety of functionalities with Peergos, here are the highlights:
|
||||
|
||||
* End-to-End encryption for storage.
|
||||
* Ability to share your photos, video, and documents.
|
||||
* Generate links to let other users download your file, if required.
|
||||
* Keeps your activity private without recording your usage.
|
||||
* You can self-host Peergos, giving you complete control.
|
||||
* Private metadata, keeping your contact list, file size, directory structure and other information hidden.
|
||||
* Offering a decentralized storage that you can access seamlessly.
|
||||
* Open-source and audited.
|
||||
* Social media network abilities.
|
||||
* To-do list, and task management.
|
||||
* Collaboration features.
|
||||
* Markdown support.
|
||||
* Ability to view PDF documents.
|
||||
* Access calendar, create and organize events.
|
||||
* Website directory, which can be accessed using a personalized URL or local port if you self-host.
|
||||
|
||||
|
||||
|
||||
Peergos is a feature-rich offering that lets you store your files without worrying about trusting the company.
|
||||
|
||||
While it is not entirely anonymous, Peergos as a service does not record any of your information.
|
||||
|
||||
Moreover, you get the ability to self-host, if you want total control of everything.
|
||||
|
||||
### Get Started with Peergos
|
||||
|
||||
You need to [sign up][7] (for the cloud option) or self-host it as per the instructions in its [GitHub page][8].
|
||||
|
||||
![][9]
|
||||
|
||||
The free space of 200 MB is pretty low. However, if you want to store some of your important documents, and select collection of photos, this could be useful for some.
|
||||
|
||||
The premium upgrade has the option to go up to 500 GB of storage for **£25** per month.
|
||||
|
||||
![][10]
|
||||
|
||||
Navigating around the platform is pretty easy and the user interface looks good.
|
||||
|
||||
![][11]
|
||||
|
||||
It does support a dark mode, so you can toggle it anytime you need it. The sharing options available should be sufficient for all kinds of collaboration.
|
||||
|
||||
The ability to control access to your shared files using groups is an interesting idea.
|
||||
|
||||
![][12]
|
||||
|
||||
[Peergos][3]
|
||||
|
||||
### Final Thoughts
|
||||
|
||||
Peergos is a unique offering that you can self-host. It is open-source and offers all the goodies for a privacy enthusiast to store files and collaborate securely.
|
||||
|
||||
The cloud offering may not be attractive for its low free storage space. But, if you really like the concept, you can choose to upgrade to a premium plan with more storage.
|
||||
|
||||
If you wanted an open-source alternative to Google Drive, Peergos can be an interesting pick.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/peergos/
|
||||
|
||||
作者:[Ankush Das][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/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/cloud-services-linux/
|
||||
[2]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/04/peergos-home.png?resize=800%2C623&ssl=1
|
||||
[3]: https://peergos.org/
|
||||
[4]: https://ipfs.io/
|
||||
[5]: https://itsfoss.com/nextcloud/
|
||||
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/04/peergos-social.png?resize=800%2C633&ssl=1
|
||||
[7]: https://peergos.net/?signup=true
|
||||
[8]: https://github.com/peergos/peergos
|
||||
[9]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-sign-up.png?resize=800%2C684&ssl=1
|
||||
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-signup.png?resize=800%2C481&ssl=1
|
||||
[11]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-dark.png?resize=800%2C513&ssl=1
|
||||
[12]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/03/peergos-sharing.png?resize=800%2C715&ssl=1
|
@ -1,137 +0,0 @@
|
||||
[#]: subject: "Ex-Snap Advocate at Ubuntu Creates a Tool to Help You Migrate from Snap to Flatpak"
|
||||
[#]: via: "https://news.itsfoss.com/unsnap-migrate-snap-to-flatpak/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Ex-Snap Advocate at Ubuntu Creates a Tool to Help You Migrate from Snap to Flatpak
|
||||
======
|
||||
|
||||
Don’t like using Snap?
|
||||
|
||||
Well, you can always stick to the traditional binary packages (deb/rpm) or opt for [Flatpak][1].
|
||||
|
||||
But, what if you already rely on apps from the Snap store?
|
||||
|
||||
It will be time-consuming to manually remove the apps, get rid of Snap, install Flatpak, and install all the Flatpak packages.
|
||||
|
||||
That’s where “Unsnap” comes to the rescue.
|
||||
|
||||
Unsnap is an open-source utility developed by a former Snap advocate at Canonical, **Alan Pope** to help you quickly migrate from using snap packages to Flatpaks.
|
||||
|
||||
### Unsnap: Here’s How it Works
|
||||
|
||||
Note that the utility is still in its pre-alpha phase, you can test it out, but you may want to do some research if you want to help improve it and try it for yourself.
|
||||
|
||||
Basically, the tool generates scripts to help you do the following (in the particular order):
|
||||
|
||||
* Backup existing Snaps.
|
||||
* Install Flatpak (if not already present).
|
||||
* Enable Flathub.
|
||||
* Install the Flatpaks for the same Snap applications.
|
||||
* Remove Snap applications for the Flatpaks installed.
|
||||
* Remove all Snaps.
|
||||
|
||||
|
||||
|
||||
While the scripts are generated automatically when you run the tool, you can choose to run those scripts manually or automatically one-by-one to switch away to Flatpaks.
|
||||
|
||||
### How to Test Unsnap?
|
||||
|
||||
![][2]
|
||||
|
||||
You might have a vague idea of how it’s achieved looking at the screenshot above. You can also refer to its [GitHub page][3] for the latest information.
|
||||
|
||||
For reference, let me highlight the steps for you:
|
||||
|
||||
#### 1\. Clone the GitHub Repository
|
||||
|
||||
Make sure you have [Git installed on your Linux distro][4]. Once done, you can type in the following command:
|
||||
|
||||
```
|
||||
|
||||
git clone https://github.com/popey/unsnap
|
||||
|
||||
```
|
||||
|
||||
#### 2\. Navigate to the directory
|
||||
|
||||
Once you clone the repo, you will have the **unsnap** directory on your system.
|
||||
|
||||
Navigate to the directory by typing in:
|
||||
|
||||
```
|
||||
|
||||
cd unsnap
|
||||
|
||||
```
|
||||
|
||||
#### 3\. Run the Tool
|
||||
|
||||
After navigating to the target directory, simply run the **unsnap** utility using the command:
|
||||
|
||||
```
|
||||
|
||||
./unsnap
|
||||
|
||||
```
|
||||
|
||||
It will check for existing snaps, Flatpaks, and more to set things up.
|
||||
|
||||
As you can notice in the screenshot above, it already detects that my system has Flatpak setup, so it skips generating the scripts for those tasks.
|
||||
|
||||
In the process, it also learns about the Snap packages installed on your system to find equivalent Flatpaks when you run the generated scripts.
|
||||
|
||||
If you want to run all the scripts immediately, you can type in:
|
||||
|
||||
```
|
||||
|
||||
./unsnap auto
|
||||
|
||||
```
|
||||
|
||||
![][2]
|
||||
|
||||
If you want to take control without the auto option, you can find the scripts generated reside inside a log directory, as shown in the image below:
|
||||
|
||||
![][2]
|
||||
|
||||
Here’s the order of the scripts that you should follow:
|
||||
|
||||
* 00-backup
|
||||
* 01-install-flatpak
|
||||
* 02-enable-flathub
|
||||
* 03-install-flatpaks
|
||||
* 04-remove-snaps
|
||||
* 99-remove-snapd
|
||||
|
||||
|
||||
|
||||
In my example, I already have Flatpak set up, so I proceed with running the backup script, and then installing the Flatpak, so on. Here’s how it looks like:
|
||||
|
||||
![][2]
|
||||
|
||||
You should keep in mind that this tool is under heavy development and may not work as expected. So, you if you rely on numerous Snap packages, you should experiment using the tool in a virtual machine or a test machine and wait for the tool to improve with a stable release.
|
||||
|
||||
_Let me know your thoughts on Unsnap in the comments below._
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/unsnap-migrate-snap-to-flatpak/
|
||||
|
||||
作者:[Ankush Das][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://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/flatpak-guide/
|
||||
[2]: data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjU4NyIgd2lkdGg9IjgzMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjEiLz4=
|
||||
[3]: https://github.com/popey/unsnap
|
||||
[4]: https://itsfoss.com/install-git-ubuntu/
|
391
sources/tech/20220408 Samba as AD and Domain Controller.md
Normal file
391
sources/tech/20220408 Samba as AD and Domain Controller.md
Normal file
@ -0,0 +1,391 @@
|
||||
[#]: subject: "Samba as AD and Domain Controller"
|
||||
[#]: via: "https://fedoramagazine.org/samba-as-ad-and-domain-controller/"
|
||||
[#]: author: "Daniel Kühl https://fedoramagazine.org/author/dklima/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Samba as AD and Domain Controller
|
||||
======
|
||||
|
||||
![Samba AD Domain Controller][1]
|
||||
|
||||
Photo by [Eric Schirtzinger][2] on [Unsplash][3]
|
||||
|
||||
Having a server with Samba providing AD and Domain Controller functionality will provide you with a very mature and professional way to have a centralized place with all users and groups information. It will free you from the burden of having to manage users and groups on each server. This solution is useful for authenticating applications such as WordPress, FTP servers, HTTP servers, you name it.
|
||||
|
||||
This step-by-step tutorial about setting up Samba as an AD and Domain Controller will demonstrate to you how you can achieve this solution for your network, servers, and applications.
|
||||
|
||||
### Pre-requisites
|
||||
|
||||
A fresh Fedora Linux 35 server installation.
|
||||
|
||||
### Definitions
|
||||
|
||||
**Hostname**: dc1
|
||||
**Domain**: onda.org
|
||||
**IP**: 10.1.1.10/24
|
||||
|
||||
### Considerations
|
||||
|
||||
* Once the domain was chosen, you can’t change it, be wise;
|
||||
* In the _/etc/hosts_ file, the server name can’t be on _127.0.0.1_ line, it must be on its IP address line;
|
||||
* Use a fixed IP address for the server, as a result, the server’s IP won’t change;
|
||||
* Once you provision the DC server, do not provision another one, join other ones to the domain instead;
|
||||
* For the DNS server, we will choose _SAMBA_INTERNAL_, so we can have the DNS forwarding feature;
|
||||
* It is necessary to have a time synchronization service running in the server, like _chrony_ or _ntp_, so you can avoid numerous problems from not having the server and clients synchronized with the same time;
|
||||
|
||||
|
||||
|
||||
### Samba installation
|
||||
|
||||
Let’s install the required software to get through this guide. It will provide all the applications you will need.
|
||||
|
||||
```
|
||||
|
||||
sudo dnf install samba samba-dc samba-client heimdal-workstation
|
||||
|
||||
```
|
||||
|
||||
![Samba installation][4]
|
||||
|
||||
### Configurations
|
||||
|
||||
For setting up Samba as an AD and Domain Controller, you will have to prepare the environment with a functional configuration before you start using it.
|
||||
|
||||
#### Firewall
|
||||
|
||||
You will need to allow some UDP and TCP ports through the firewall so that clients will be able to connect to the Domain Controller.
|
||||
|
||||
I will show you two methods to add them. Choose the one that suits you best.
|
||||
|
||||
##### First method
|
||||
|
||||
This is the most straightforward method, _firewalld_ comes with a service with all ports needed to open Samba DC, which is called _samba-dc_. Add it to the firewall rules:
|
||||
|
||||
Add the service:
|
||||
|
||||
```
|
||||
|
||||
sudo firewall-cmd --permanent --add-service samba-dc
|
||||
|
||||
```
|
||||
|
||||
##### Second method
|
||||
|
||||
Alternatively, you can add the rules from the command line:
|
||||
|
||||
```
|
||||
|
||||
sudo firewall-cmd --permanent --add-port={53/udp,53/tcp,88/udp,88/tcp,123/udp,135/tcp,137/udp,138/udp,139/tcp,389/udp,389/tcp,445/tcp,464/udp,464/tcp,636/tcp,3268/tcp,3269/tcp,49152-65535/tcp}
|
||||
|
||||
```
|
||||
|
||||
Reload _firewalld_:
|
||||
|
||||
```
|
||||
|
||||
sudo firewall-cmd --reload
|
||||
|
||||
```
|
||||
|
||||
For more information about _firewalld_, check the following article: [Control the firewall at the command line][5]
|
||||
|
||||
#### SELinux
|
||||
|
||||
To run a Samba DC and running with SELinux in enforcing mode, it is necessary to set some samba booleans for SELinux to on. After these booleans are set, it should not be necessary to disable SELinux.
|
||||
|
||||
```
|
||||
|
||||
sudo setsebool -P samba_create_home_dirs=on samba_domain_controller=on samba_enable_home_dirs=on samba_portmapper=on use_samba_home_dirs=on
|
||||
|
||||
```
|
||||
|
||||
Restore the default SELinux security contexts for files:
|
||||
|
||||
```
|
||||
|
||||
sudo restorecon -Rv /
|
||||
|
||||
```
|
||||
|
||||
#### Samba
|
||||
|
||||
First, remove the _/etc/samba/smb.conf_ file if it exists:
|
||||
|
||||
```
|
||||
|
||||
sudo rm /etc/samba/smb.conf
|
||||
|
||||
```
|
||||
|
||||
Samba uses its own DNS service, and for that reason, the service won’t start if _systemd-resolved_ is running, that is why it is necessary to edit its configuration to stop listening on port 53 and use Samba’s DNS.
|
||||
|
||||
Create the directory _/etc/systemd/resolved.conf.d/_ if it does not exist:
|
||||
|
||||
```
|
||||
|
||||
sudo mkdir /etc/systemd/resolved.conf.d/
|
||||
|
||||
```
|
||||
|
||||
Create the file _/etc/systemd/resolved.conf.d/custom.conf_ that contains the custom config:
|
||||
|
||||
```
|
||||
|
||||
[Resolve]
|
||||
DNSStubListener=no
|
||||
Domains=onda.org
|
||||
DNS=10.1.1.10
|
||||
|
||||
```
|
||||
|
||||
**Remember to change the _DNS_ and _Domains_ entries to be your Samba DC server.**
|
||||
|
||||
![][6]
|
||||
|
||||
Restart the _systemd-resolved_ service:
|
||||
|
||||
```
|
||||
|
||||
sudo systemctl restart systemd-resolved
|
||||
|
||||
```
|
||||
|
||||
Finally, provision the Samba configuration. _samba-tool_ provides every step needed to make Samba an AD server.
|
||||
|
||||
Using the _samba-tool_, provision the Samba configuration:
|
||||
|
||||
```
|
||||
|
||||
sudo samba-tool domain provision --server-role=dc --use-rfc2307 --dns-backend=SAMBA_INTERNAL --realm=ONDA.ORG --domain=ONDA --adminpass=sVbOQ66iCD3hHShg
|
||||
|
||||
```
|
||||
|
||||
![Samba domain provisioning][7]
|
||||
|
||||
The _‐‐use-rfc2307_ argument provides POSIX attributes to Active Directory, which stores Unix user and group information on LDAP ([rfc2307.txt][8]).
|
||||
|
||||
Make sure that you have the correct _dns forwarder_ address set in _/etc/samba/smb.conf_. Concerning this tutorial, it should be **different** from the server’s own IP address 10.1.1.10, in my case I set to 8.8.8.8, however your mileage may vary:
|
||||
|
||||
![Changing the dns forwarder value on /etc/samba/smb.conf file][9]
|
||||
|
||||
After changing the _dns forwarder value_, restart _samba_ service:
|
||||
|
||||
```
|
||||
|
||||
sudo systemctl restart samba
|
||||
|
||||
```
|
||||
|
||||
#### Kerberos
|
||||
|
||||
After Samba installation, it was provided a _krb5.conf_ file that we will use:
|
||||
|
||||
```
|
||||
|
||||
sudo cp /usr/share/samba/setup/krb5.conf /etc/krb5.conf.d/samba-dc
|
||||
|
||||
```
|
||||
|
||||
Edit _/etc/krb5.conf.d/samba-dc_ content to match your organization information:
|
||||
|
||||
```
|
||||
|
||||
[libdefaults]
|
||||
default_realm = ONDA.ORG
|
||||
dns_lookup_realm = false
|
||||
dns_lookup_kdc = true
|
||||
|
||||
[realms]
|
||||
ONDA.ORG = {
|
||||
default_domain = ONDA
|
||||
}
|
||||
|
||||
[domain_realm]
|
||||
dc1.onda.org = ONDA.ORG
|
||||
|
||||
```
|
||||
|
||||
#### Starting and enabling Samba on boot time
|
||||
|
||||
To make sure that Samba will start on system initialization, enable and start it:
|
||||
|
||||
```
|
||||
|
||||
sudo systemctl enable samba
|
||||
sudo systemctl start samba
|
||||
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
#### Connectivity
|
||||
|
||||
```
|
||||
|
||||
$ smbclient -L localhost -N
|
||||
|
||||
```
|
||||
|
||||
As a result of _smbclient_ command, shows that connection **was successful.
|
||||
|
||||
```
|
||||
|
||||
Anonymous login successful
|
||||
Sharename Type Comment
|
||||
--------- ---- -------
|
||||
sysvol Disk
|
||||
netlogon Disk
|
||||
IPC$ IPC IPC Service (Samba 4.15.6)
|
||||
SMB1 disabled -- no workgroup available
|
||||
|
||||
```
|
||||
|
||||
![smbclient connection test][10]
|
||||
|
||||
Now, test the _Administrator_ login to _netlogon_ share:
|
||||
|
||||
```
|
||||
|
||||
$ smbclient //localhost/netlogon -UAdministrator -c 'ls'
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
Password for [ONDA\Administrator]:
|
||||
. D 0 Sat Mar 26 05:45:13 2022
|
||||
.. D 0 Sat Mar 26 05:45:18 2022
|
||||
|
||||
8154588 blocks of size 1024. 7307736 blocks available
|
||||
|
||||
```
|
||||
|
||||
![smbclient Administrator connection test][11]
|
||||
|
||||
#### DNS test
|
||||
|
||||
To test if the name resolution is working, execute the following commands:
|
||||
|
||||
```
|
||||
|
||||
$ host -t SRV _ldap._tcp.onda.org.
|
||||
_ldap._tcp.onda.org has SRV record 0 100 389 dc1.onda.org.
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
$ host -t SRV _kerberos._udp.onda.org.
|
||||
_kerberos._udp.onda.org has SRV record 0 100 88 dc1.onda.org.
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
$ host -t A dc1.onda.org.
|
||||
dc1.onda.org has address 10.1.1.10
|
||||
|
||||
```
|
||||
|
||||
If you get the error:
|
||||
|
||||
```
|
||||
|
||||
-bash: host: command not found
|
||||
|
||||
```
|
||||
|
||||
Install the _bind-utils_ package:
|
||||
|
||||
```
|
||||
|
||||
sudo dnf install bind-utils
|
||||
|
||||
```
|
||||
|
||||
#### Kerberos test
|
||||
|
||||
Testing Kerberos is important because it generates the required tickets to let clients authenticate with encryption. It heavily relies on correct time.
|
||||
|
||||
It can’t be stressed enough to have date and time set correctly, and that is why it is so important to have a time synchronization service running on both clients and servers.
|
||||
|
||||
```
|
||||
|
||||
$ /usr/lib/heimdal/bin/kinit administrator
|
||||
$ /usr/lib/heimdal/bin/klist
|
||||
|
||||
```
|
||||
|
||||
![Kerberos ticket validation][12]
|
||||
|
||||
### Adding a user to the Domain
|
||||
|
||||
_samba-tool_ provides us an interface for executing Domain administration tasks, so we can add a user to the Domain easily.
|
||||
|
||||
The _samba-tool_ help is very comprehensive:
|
||||
|
||||
```
|
||||
|
||||
$ samba-tool user add --help
|
||||
|
||||
```
|
||||
|
||||
Adding user _danielk_ to the domain:
|
||||
|
||||
```
|
||||
|
||||
sudo samba-tool user add danielk --unix-home=/home/danielk --login-shell=/bin/bash --gecos 'Daniel K.' --given-name=Daniel --surname='Kühl' --mail-address='danielk@onda.org'
|
||||
|
||||
```
|
||||
|
||||
![Adding user to the Domain][13]
|
||||
|
||||
To list the users on Domain:
|
||||
|
||||
```
|
||||
|
||||
sudo samba-tool user list
|
||||
|
||||
```
|
||||
|
||||
### Wrap up and conclusion
|
||||
|
||||
We started out by installing Samba and required applications in a fresh Fedora Linux 35 installation. We’ve also explained the problems that this solution solves. Thereafter, we did an initial configuration that prepares the environment to be ready to Samba to operate as an AD and Domain Controller.
|
||||
|
||||
Then, we proceeded to cover how to have Samba up and running alongside Fedora Linux security features, like having it working with _firewalld_ and SELinux enabled. We did some important testing to make sure everything was fine and ended by showing a bit on how to administrate users using _samba-tool_.
|
||||
|
||||
To summarize, if you want to establish a robust solution for centralizing authentication across your network, servers (If one wanted to, one could even join a Windows 10 client to this Samba domain [_tested with Windows 10 Professional version 20H2_]) and services, consider using this approach as part of your infrastructure.
|
||||
|
||||
Now that you know how to have a Samba as AD and Domain Controller solution, what would you like to see covered next? Share your thoughts in the [comments below][14].
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://fedoramagazine.org/samba-as-ad-and-domain-controller/
|
||||
|
||||
作者:[Daniel Kühl][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://fedoramagazine.org/author/dklima/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://fedoramagazine.org/wp-content/uploads/2022/04/samba-addc-816x346.jpg
|
||||
[2]: https://unsplash.com/@eschirtz?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[3]: https://unsplash.com/s/photos/tree?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[4]: https://fedoramagazine.org/wp-content/uploads/2022/03/samba-install-1.gif
|
||||
[5]: https://fedoramagazine.org/control-the-firewall-at-the-command-line/
|
||||
[6]: https://fedoramagazine.org/wp-content/uploads/2022/04/samba-systemd-resolved.gif
|
||||
[7]: https://fedoramagazine.org/wp-content/uploads/2022/03/samba-domain-provision.gif
|
||||
[8]: https://www.rfc-editor.org/rfc/rfc2307.txt
|
||||
[9]: https://fedoramagazine.org/wp-content/uploads/2022/04/samba-dns-forwarder.gif
|
||||
[10]: https://fedoramagazine.org/wp-content/uploads/2022/03/samba-testing1.gif
|
||||
[11]: https://fedoramagazine.org/wp-content/uploads/2022/03/samba-testing2.gif
|
||||
[12]: https://fedoramagazine.org/wp-content/uploads/2022/03/samba-kerberos.gif
|
||||
[13]: https://fedoramagazine.org/wp-content/uploads/2022/04/samba-adding-user-1.gif
|
||||
[14]: tmp.RAEqol0F4Y#comments
|
@ -0,0 +1,173 @@
|
||||
[#]: subject: "LibreWolf vs Firefox: Comparing the Privacy Heroes of Open-Source Browsers"
|
||||
[#]: via: "https://itsfoss.com/librewolf-vs-firefox/"
|
||||
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
LibreWolf vs Firefox: Comparing the Privacy Heroes of Open-Source Browsers
|
||||
======
|
||||
|
||||
Firefox is one of the best cross-platform [open-source web browsers][1].
|
||||
|
||||
Not to mention, it is the only viable alternative as a Chromium-based replacement. Or, is it?
|
||||
|
||||
LibreWolf is yet another interesting option, which is originally a Firefox fork that attempts to do better than Firefox to enhance privacy/security right out of the box.
|
||||
|
||||
But, is it really useful to choose LibreWolf over Firefox? What are the differences? Let us take a look.
|
||||
|
||||
### The User Interface
|
||||
|
||||
Considering [LibreWolf][2] is a Firefox fork, the user interface is the same with a few subtle changes.
|
||||
|
||||
![Firefox UI][3]
|
||||
|
||||
For instance, it does not feature the link to the Firefox website in the bookmark menu and gets rid of the “Add to Pocket” button.
|
||||
|
||||
Instead, you can find the icon to an extension, and the download manager to the right of the address bar.
|
||||
|
||||
![LibreWolf UI][4]
|
||||
|
||||
Yes, you no longer have to head to the menu to access the downloads.
|
||||
|
||||
If you consider the extras in Firefox as annoyances, LibreWolf should be a clean experience.
|
||||
|
||||
### Search Providers
|
||||
|
||||
By default, Firefox utilizes Google as its search engine, considering they are official partners, i.e., Google pays to be the default search engine.
|
||||
|
||||
![][5]
|
||||
|
||||
While you can easily change the default search provider to DuckDuckGo, Startpage, or anything else, the default remains a big deal for most users.
|
||||
|
||||
When it comes to LibreWolf, the default search engine is DuckDuckGo. It is known to be one of the best privacy-friendly search engines out there.
|
||||
|
||||
![][6]
|
||||
|
||||
It should be noted that the privacy-focused search engines may not be as good as Google for some use-cases. So, if the search engine choice does not bother you, Firefox can be just fine.
|
||||
|
||||
However, if you want to keep your search history private to yourself, LibreWolf’s default search provider can prove to be a better option.
|
||||
|
||||
### Hardened Privacy
|
||||
|
||||
Mozilla Firefox is incredibly customizable. If you want to put the effort, you can enhance the digital privacy on Firefox.
|
||||
|
||||
However, if you want to avoid investing a lot of time tweaking the Firefox experience, LibreWolf can be a good pick.
|
||||
|
||||
LibreWolf features some of the best settings out-of-the-box to ensure you get rid of the trackers online and have a safe online experience.
|
||||
|
||||
For instance, it features the UBlock content blocker by default to eliminate trackers/scripts that track your online activities. The default search engine as DuckDuckGo also helps to an extent.
|
||||
|
||||
![][7]
|
||||
|
||||
Furthermore, LibreWolf enables the Strict mode of Firefox’s Enhanced Tracking Protection. In other words, it blocks trackers aggressively, which might result in some web pages not working as expected.
|
||||
|
||||
![][8]
|
||||
|
||||
While LibreWolf recommends not changing these settings, you can choose to use Firefox if you notice web pages breaking with the settings.
|
||||
|
||||
Firefox uses the basic protection enabled to get rid of common trackers without breaking the user experience on web pages.
|
||||
|
||||
In addition to these settings, LibreWolf also deletes cookies and site data upon exit by default. This can be annoying if you want to stay signed in to websites and resume your browsing session quickly.
|
||||
|
||||
When it comes to Firefox, it does feature the same option, but it remains disabled by default. So, if you want to avoid tweaking built-in settings for a convenient experience, you should pick Firefox.
|
||||
|
||||
![][9]
|
||||
|
||||
No wonder why Firefox is still one of the [best browsers available for Linux][10]. Most of the users prefer convenience to enhance privacy while still being able to use the browser cross-platform.
|
||||
|
||||
### Google Safe Browsing
|
||||
|
||||
Google Safe Browsing is a useful service that warns/flags suspicious websites for malicious activities.
|
||||
|
||||
Most browsers use it to enable a safe user experience. You do not need to be an expert at spotting sites with phishing/malware, Google Safe Browsing helps you detect them.
|
||||
|
||||
Mozilla Firefox uses it with a different name “**Phishing Protection**“, which is enabled by default.
|
||||
|
||||
However, with LibreWolf the Google Safe Browsing service comes disabled by default to avoid connecting to Google services. You can enable it, but it is not something that users look for when setting up their browsers.
|
||||
|
||||
![][11]
|
||||
|
||||
So, if you want additional help in avoiding malicious sites, Firefox should be a good out-of-the-box solution. And, if you know what you’re doing, you can go with LibreWolf, and enable the setting when/if required.
|
||||
|
||||
### Extras
|
||||
|
||||
LibreWolf gets rid of any additional offerings on Firefox.
|
||||
|
||||
For instance, LibreWolf does not have any connections to the Mozilla server by default. Some of the changes that it reflects include:
|
||||
|
||||
* You do not get the sync/sign-in functionality with LibreWolf.
|
||||
* No Add to Pocket button
|
||||
* You do not load the Mozilla add-ons/themes on the extensions page.
|
||||
|
||||
|
||||
|
||||
![][12]
|
||||
|
||||
If you want to use the Mozilla account to sync your history/bookmarks and browser data, Firefox is the best bet. There’s also Firefox VPN, if you prefer using it.
|
||||
|
||||
![][13]
|
||||
|
||||
However, if you do not trust any of the Mozilla services and prefer to sever any connections to them on your browser, LibreWolf is your friend.
|
||||
|
||||
### Cross-Platform Support
|
||||
|
||||
Firefox is available for Android and iOS, and works well with a wide range of screen sizes and devices.
|
||||
|
||||
Unfortunately, LibreWolf is limited to the desktop platforms like macOS, Windows, OpenBSD, and Linux.
|
||||
|
||||
### Community-Based vs Backed by Organization
|
||||
|
||||
[LibreWolf][14] is a community-powered project maintained by a few passionate contributors to promote privacy, security, and user freedom.
|
||||
|
||||
If you prefer what LibreWolf has to offer, it should not be a problem to go with it. Even with a small team, they follow the latest Firefox releases and push an update as soon as possible.
|
||||
|
||||
In contrast, the Mozilla Foundation is a much bigger organization and has been setting extraordinary examples to promote customizability, privacy, and security.
|
||||
|
||||
You will be receiving updates faster than LibreWolf, which is an important aspect if you are worried about your browser’s security.
|
||||
|
||||
There are no critical downsides of Firefox being a part of something bigger, but there may be some future decisions (or changes) that you may not like, put forward by Mozilla for its users.
|
||||
|
||||
But, LibreWolf as a community project will keep user preferences as its priority.
|
||||
|
||||
### Final Verdict
|
||||
|
||||
If convenience is your thing where you require sync/sign-in account features, Mozilla-specific offerings, and essential privacy protections, Mozilla Firefox should suit you better.
|
||||
|
||||
In case you do not want cloud-sync features, extras, and hardcore privacy-focused settings out of the box, LibreWolf will be the perfect solution.
|
||||
|
||||
Performance-wise, both should offer similar experiences. The benchmarks test (Basemark 3.0, Speedometer 2.0) didn’t work with LibreWolf for some reason, so I did not include any performance comparison chart.
|
||||
|
||||
I will prefer using Firefox because I do need the convenience of account-based sync without aggressive blocking capability. However, LibreWolf is a solid alternative for those who want to switch away from Firefox or just want to try something that’s laser-focused on user freedom and privacy.
|
||||
|
||||
What will it be for you? Let me know your thoughts in the comments below.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/librewolf-vs-firefox/
|
||||
|
||||
作者:[Ankush Das][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/ankush/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/open-source-browsers-linux/
|
||||
[2]: https://itsfoss.com/librewolf/
|
||||
[3]: https://itsfoss.com/wp-content/uploads/2022/04/firefox-ui-1.png
|
||||
[4]: https://itsfoss.com/wp-content/uploads/2022/04/librewolf-ui-1.png
|
||||
[5]: https://itsfoss.com/wp-content/uploads/2022/04/firefox-google-search.png
|
||||
[6]: https://itsfoss.com/wp-content/uploads/2022/04/librewolf-duckduckgo.png
|
||||
[7]: https://itsfoss.com/wp-content/uploads/2022/04/librewolf-ublock-origin.png
|
||||
[8]: https://itsfoss.com/wp-content/uploads/2022/04/librewolf-privacy-settings.png
|
||||
[9]: https://itsfoss.com/wp-content/uploads/2022/04/firefox-privacy-settings.png
|
||||
[10]: https://itsfoss.com/best-browsers-ubuntu-linux/
|
||||
[11]: https://itsfoss.com/wp-content/uploads/2022/04/librewolf-security.png
|
||||
[12]: https://itsfoss.com/wp-content/uploads/2022/04/firefox-extras.png
|
||||
[13]: https://itsfoss.com/wp-content/uploads/2022/04/firefox-sign-in.png
|
||||
[14]: https://librewolf.net/
|
@ -0,0 +1,306 @@
|
||||
[#]: subject: "3-2-1 Backup plan with Fedora ARM server"
|
||||
[#]: via: "https://fedoramagazine.org/3-2-1-backup-plan-with-fedora-arm-server/"
|
||||
[#]: author: "Hanku Lee https://fedoramagazine.org/author/hankuoffroad/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
3-2-1 Backup plan with Fedora ARM server
|
||||
======
|
||||
|
||||
![][1]
|
||||
|
||||
Photo by [Markus Winkler][2] on [Unsplash][3]
|
||||
|
||||
Fedora Server Edition works on Single Board Computers (SBC) like Raspberry Pi. This article is aimed at data backup and restoration of personal data for users who want to take advantage of solid server systems and built-in tools like Cockpit. It describes 3 levels of backup.
|
||||
|
||||
### Pre-requisites
|
||||
|
||||
To use this guide, all you need is a working Fedora Linux workstation and the following items.
|
||||
|
||||
* You should read, understand, and practice the requirements as documented in the Fedora Docs for [server installation][4] and [administration][5]
|
||||
* An SBC (Single Board Computer), tested for Fedora Linux. Check [hardware status here][6].
|
||||
* [Fedora ARM][7] [server][7] raw image & ARM image installer
|
||||
* A choice of microSD Card (64 GB / Class 10) and SSD device
|
||||
* Ethernet cable / DHCP reserved IP or static IP
|
||||
* A Linux client workstation with ssh keys prepared
|
||||
* Make a choice of cloud storage services
|
||||
* Have an additional Linux workstation available
|
||||
|
||||
|
||||
|
||||
With this setup, I opted for Raspberry Pi 3B+/4B+ (one for hot-swap) because of the price and availability at the time of writing this article. While the Pi server is remotely connected using Cockpit, you can position the Pi near the router for a neat set-up.
|
||||
|
||||
### Harden server security
|
||||
|
||||
After following through with server installation and administration on the SBC, it is a good practice to harden the server security with firewalld.
|
||||
|
||||
You must configure the firewall as soon as the server is online before connecting the storage device to the server. Firewalld is a zone-based firewall. It creates one pre-defined zone ‘FedoraServer’ after following through with the installation and administration guide in the Fedora Docs.
|
||||
|
||||
#### Rich rules in firewalld
|
||||
|
||||
Rich rules are used to block or allow a particular IP address or address range. The following rule accepts SSH connections only from the host with the registered IP (of client workstation) and drops other connections. Run the commands in Cockpit Terminal or terminal in client workstation connect to the server via ssh.
|
||||
|
||||
```
|
||||
|
||||
firewall-cmd --add-rich-rule='rule family=ipv4 source address=<registered_ip_address>/24 service name=ssh log prefix="SSH Logs" level="notice" accept'
|
||||
|
||||
```
|
||||
|
||||
#### Reject ping requests from all hosts
|
||||
|
||||
Use this command to set the icmp reject and disallow ping requests
|
||||
|
||||
```
|
||||
|
||||
firewall-cmd --add-rich-rule='rule protocol value=icmp reject'
|
||||
|
||||
```
|
||||
|
||||
To carry out additional firewall controls, such as managing ports and zones, please refer to the link below. Please be aware that misconfiguring the firewall may make it vulnerable to security breaches.
|
||||
|
||||
[Managing firewall in Cockpit][8]
|
||||
[firewalld rules][9]
|
||||
|
||||
### Configure storage for file server
|
||||
|
||||
The next step is to connect a storage device to the SBC and partition a newly attached storage device using Cockpit. With Cockpit’s graphical server management interface, managing a home lab (whether a single server or several servers) is much simpler than before. Fedora Linux server offers Cockpit as standard.
|
||||
|
||||
In this setup, an SSD device, powered by the USB port of the SBC, is placed in service without the need for an additional power supply.
|
||||
|
||||
* Connect the storage device to a USB port of the SBC
|
||||
* After Cockpit is running (as set up in the pre-requisites), visit **ip-address-of-machine:9090** in the web browser of your client workstation
|
||||
* After logging into Cockpit, click ‘Turn on administrative access’ at the top of the Cockpit page
|
||||
* Click the “Storage” on the left pane
|
||||
* Select the device under “Drives” section to format and partition a blank storage device
|
||||
|
||||
|
||||
|
||||
![Cockpit Storage management][10]
|
||||
|
||||
* On the screen of the selected storage device create a new partition table or format and create new partitions. When prompted to initialize disk, in the “Partitioning” type, select GPT partition
|
||||
* For a file system type from the drop-down list (XFS and ext4), choose ext4. This is suitable for an SBC with limited I/O capability (like USB 2.0 port) and limited bandwidth (less than 200MB/s)
|
||||
|
||||
|
||||
|
||||
![Create a partition in Cockpit][11]
|
||||
|
||||
* To create a single partition taking up all the storage space on the device, specify its mount point, such as “/media” and click “Ok”
|
||||
* Click “Create partition”, which creates a new partition mounted at “/media”.
|
||||
|
||||
|
||||
|
||||
### Create backups and restore from backups
|
||||
|
||||
Backups are rarely one-size-fits-all. There are a few choices to make such as where the data is backed up, the steps you take to backup data, identify any automation, and determine how to restore backed-up data.
|
||||
|
||||
![Backup workflow – version 1.0][12]
|
||||
|
||||
#### Backup 1. rsync from client to file server (Raspberry Pi)
|
||||
|
||||
The command used for this transfer was:
|
||||
|
||||
```
|
||||
|
||||
rsync -azP ~/source syncuser@host1:/destination
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
Options:
|
||||
-a, --archive
|
||||
-z, --compress
|
||||
-P, --progress
|
||||
|
||||
```
|
||||
|
||||
To run rsync with additional options, set the following flags:
|
||||
|
||||
Update destination files in-place
|
||||
|
||||
```
|
||||
|
||||
--inplace
|
||||
|
||||
```
|
||||
|
||||
Append data onto shorter files
|
||||
|
||||
```
|
||||
|
||||
--append
|
||||
|
||||
```
|
||||
|
||||
Source-side deduplication combined with compression is the most effective way to reduce the size of data to be backed up before it goes to backup storage.
|
||||
|
||||
I run this manually at the end of the day. Automation scripts are advantageous once I settled in with the cloud backup workflow.
|
||||
|
||||
For details on rsync, please visit the Fedora magazine article [here][13].
|
||||
|
||||
#### Backup 2. rsync from file server to primary cloud storage
|
||||
|
||||
Factors to consider when selecting cloud storage are;
|
||||
|
||||
* Cost: Upload, storage, and download fee
|
||||
* rsync, sftp supported
|
||||
* Data redundancy (RAID 10 or data center redundancy plan in place)
|
||||
* Snapshots
|
||||
|
||||
|
||||
|
||||
One of the cloud storage fitting these criteria is Hetzner’s hosted Nextcloud – [Storage Box][14]. You are not tied to a supplier and are free to switch without an exit penalty.
|
||||
|
||||
##### Generate SSH keys and create authorized key files in the file server
|
||||
|
||||
Use ssh-keygen to generate a new pair of SSH keys for the file server and cloud storage.
|
||||
|
||||
```
|
||||
|
||||
ssh-keygen
|
||||
Generating public/private rsa key pair.
|
||||
Enter file in which to save the key . . .
|
||||
|
||||
```
|
||||
|
||||
Insert the required public SSH keys into a new local authorized_keys file.
|
||||
|
||||
```
|
||||
|
||||
cat .ssh/id_rsa.pub >> storagebox_authorized_keys
|
||||
|
||||
```
|
||||
|
||||
##### Transfer keys to cloud storage
|
||||
|
||||
The next step is to upload the generated authorized_keys file to the Storage Box. To do this, create the directory .ssh with permission 700 and create the file authorized_keys with the public SSH keys and permission 600. Run the following command.
|
||||
|
||||
```
|
||||
|
||||
echo -e "mkdir .ssh \n chmod 700 .ssh \n put storagebox_authorized_keys .ssh/authorized_keys \n chmod 600 .ssh/authorized_keys" | sftp <username>@<username>.your-storagebox.de
|
||||
|
||||
```
|
||||
|
||||
##### Use rsync over ssh
|
||||
|
||||
Use rsync to synchronize the current state of your file directories to Storage Box.
|
||||
|
||||
```
|
||||
|
||||
rsync --progress -e 'ssh -p23' --recursive <local_directory> <username>@<username>.your-storagebox.de:<target_directory>
|
||||
|
||||
```
|
||||
|
||||
This process is called a push operation because it “pushes” a directory from the local system to a remote system.
|
||||
|
||||
##### Restore a directory from cloud storage
|
||||
|
||||
To restore a directory from the Storage Box, swap the directories:
|
||||
|
||||
```
|
||||
|
||||
rsync --progress -e 'ssh -p23' --recursive <username>@<username>.your-storagebox.de:<remote_directory> <local_directory>
|
||||
|
||||
```
|
||||
|
||||
#### Backup 3. Client backup to secondary cloud storage
|
||||
|
||||
[Deja Dup][15] is in the Fedora software repo, making it a quick backup solution for Fedora Workstation. It handles the GPG encryption, scheduling, and file inclusion (which directories to back up).
|
||||
|
||||
![Backing up to the secondary cloud][16]
|
||||
|
||||
![Restoring files from cloud storage][17]
|
||||
|
||||
### Archive personal data
|
||||
|
||||
Not every data needs a 3-2-1 backup strategy. That is personal data share. I repurposed a hand-me-down laptop with a 1TB HDD as an archive of personal data (family photos).
|
||||
|
||||
Go to “Sharing” in settings (in my case, the GNOME file manager) and toggle the slider to enable sharing.
|
||||
|
||||
![][18]
|
||||
|
||||
Turn on “file sharing”, “Networks” and “Required password”, which allows you to share your public folders with other workstations on your local network using WebDAV.
|
||||
|
||||
![][19]
|
||||
|
||||
### Prepare fallback options
|
||||
|
||||
Untested backups are no better than no backups at all. I take the ‘hot swap’ approach in a home lab environment where disruptions like frequent power outages or liquid damages do happen. However, my recommendations are far from disaster recovery plans or automatic failover in corporate IT.
|
||||
|
||||
* Dry run restoration of files on a regular basis
|
||||
* Backup ssh/GPG keys onto an external storage device
|
||||
* Copy a raw image of the Fedora ARM server onto an SD card
|
||||
* Keep snapshots of full backups at primary cloud storage
|
||||
* Automate backup process to minimize human error or oversight
|
||||
|
||||
|
||||
|
||||
### Track activity and troubleshoot with Cockpit
|
||||
|
||||
As your project grows, so does the number of servers you manage. Activity and alert tracking in Cockpit ease your administrative burden. You can achieve this in three ways using Cockpit’s graphical interface.
|
||||
|
||||
#### SELinux menu
|
||||
|
||||
How to diagnose network issues, find logs and troubleshoot in Cockpit
|
||||
|
||||
* Go to SELinux to check logs
|
||||
* Check “solution details”
|
||||
* Select “Apply this solution” when necessary
|
||||
* View automation script and run it if necessary
|
||||
|
||||
|
||||
|
||||
![SELinux logs][20]
|
||||
|
||||
#### Network or storage logs
|
||||
|
||||
Server logs track detailed metrics that correlate CPU load, memory usage, network activity, and storage performance with the system’s journal. Logs are organized under the network or storage dashboard.
|
||||
|
||||
![Storage logs in Cockpit][21]
|
||||
|
||||
#### Software updates
|
||||
|
||||
Cockpit helps security updates on preset time and frequency. You can run all updates when you need them.
|
||||
|
||||
![Software updates][22]
|
||||
|
||||
Congratulations on setting up a file/backup server with the Fedora ARM server edition.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://fedoramagazine.org/3-2-1-backup-plan-with-fedora-arm-server/
|
||||
|
||||
作者:[Hanku Lee][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://fedoramagazine.org/author/hankuoffroad/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://fedoramagazine.org/wp-content/uploads/2022/04/3-2-1_backup-816x345.jpg
|
||||
[2]: https://unsplash.com/@markuswinkler?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[3]: https://unsplash.com/s/photos/computer-backup?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[4]: https://docs.fedoraproject.org/en-US/fedora-server/server-installation-sbc/
|
||||
[5]: https://docs.fedoraproject.org/en-US/fedora-server/sysadmin-postinstall/
|
||||
[6]: https://docs.fedoraproject.org/en-US/quick-docs/raspberry-pi/
|
||||
[7]: https://arm.fedoraproject.org/
|
||||
[8]: https://fedoramagazine.org/managing-network-interfaces-and-firewalld-in-cockpit/
|
||||
[9]: https://www.redhat.com/sysadmin/firewalld-rules-and-scenarios
|
||||
[10]: https://fedoramagazine.org/wp-content/uploads/2022/03/Screenshot-from-2022-03-29-22-05-00b-1024x576.png
|
||||
[11]: https://fedoramagazine.org/wp-content/uploads/2022/03/Screenshot-from-2022-03-29-22-03-36a.png
|
||||
[12]: https://fedoramagazine.org/wp-content/uploads/2022/04/Backups3-1-1024x525.jpg
|
||||
[13]: https://fedoramagazine.org/copying-large-files-with-rsync-and-some-misconceptions/
|
||||
[14]: https://docs.hetzner.com/robot/storage-box/
|
||||
[15]: https://fedoramagazine.org/easy-backups-with-deja-dup/
|
||||
[16]: https://fedoramagazine.org/wp-content/uploads/2022/03/Screenshot-from-2022-03-29-22-47-30.png
|
||||
[17]: https://fedoramagazine.org/wp-content/uploads/2022/03/Screenshot-from-2022-03-29-22-41-57.png
|
||||
[18]: https://fedoramagazine.org/wp-content/uploads/2022/04/Screenshot-from-2022-04-14-20-48-49-1024x733.png
|
||||
[19]: https://fedoramagazine.org/wp-content/uploads/2022/04/Screenshot-from-2022-04-14-20-51-18st.png
|
||||
[20]: https://fedoramagazine.org/wp-content/uploads/2022/04/Screenshot-from-2022-04-02-11-24-30b-1024x441.png
|
||||
[21]: https://fedoramagazine.org/wp-content/uploads/2022/04/Screenshot-from-2022-04-04-21-47-06SL-1024x259.png
|
||||
[22]: https://fedoramagazine.org/wp-content/uploads/2022/04/Screenshot-from-2022-04-04-21-35-42b.png
|
@ -0,0 +1,115 @@
|
||||
[#]: subject: "How to Upgrade to Ubuntu 22.04 “Jammy Jellyfish” From Ubuntu 20.04 LTS"
|
||||
[#]: via: "https://www.debugpoint.com/2022/04/upgrade-ubuntu-22-04-from-20-04/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
How to Upgrade to Ubuntu 22.04 “Jammy Jellyfish” From Ubuntu 20.04 LTS
|
||||
======
|
||||
HERE ARE THE COMPLETE STEPS AND PRECAUTIONS YOU NEED TO TAKE BEFORE
|
||||
UPGRADING TO UBUNTU 22.04 LTS FROM UBUNTU 20.04 LTS.
|
||||
[Ubuntu 22.04 LTS Jammy Jellyfish][1] releases on April 21, 2022. I recommend you wait for a month or two after April 21st to upgrade. Ideally, it would be best if you plan to Upgrade to any major release after the first point release.
|
||||
|
||||
But if you are in a hurry or want to experience the stunning changes and features that Ubuntu 22.04 brings to the table, then read below the steps required for a flawless upgrade process.
|
||||
|
||||
### Before Upgrade
|
||||
|
||||
For any upgrade, it is always wiser to follow some best practices. These prevent some post-upgrade problems and lead to a successful upgrade process.
|
||||
|
||||
* Backup data to another drive or USB storage from your home directory includes your pictures, videos, or other personal files.
|
||||
* Keep a [LIVE USB ready with Ubuntu][2] if you run into an unstable system.
|
||||
* If you upgrade to a GNOME workstation, disable all the GNOME extensions because they will be incompatible as they work with GNOME 3.36+.
|
||||
* After a successful upgrade, you can enable the extensions one at a time.
|
||||
* Ensure that your system is up to date with packages by running the command `sudo apt update && sudo apt upgrade`
|
||||
* Close all your running applications.
|
||||
* Restart your system.
|
||||
|
||||
|
||||
|
||||
With that said, if you are ready, then follow the instructions below to Upgrade to Ubuntu 22.04 From Ubuntu 20.04 LTS.
|
||||
|
||||
### Upgrade to Ubuntu 22.04 from Ubuntu 20.04 and Ubuntu 21.10
|
||||
|
||||
#### Before April 21, 2022
|
||||
|
||||
If you want to upgrade before the release day, open a terminal window and run the following command.
|
||||
|
||||
```
|
||||
|
||||
sudo do-release-upgrade -d
|
||||
|
||||
```
|
||||
|
||||
![Upgrade to Ubuntu 22.04 LTS from Ubuntu 20.04 LTS][3]
|
||||
|
||||
The above command will override the system “focal” branches with “jammy” to get the new packages. Not only that, but the command will also disable all third-party PPA that you may have added over the years.
|
||||
|
||||
Furthermore, the command will take some time to finish depending on your internet speed.
|
||||
|
||||
In addition to that, keep a watch on the terminal for occasional prompts which require your input as Y/N. Also, if you cancel the upgrade process midway, the third party PPA will not be enabled. So, you have to enable them manually.
|
||||
|
||||
![Summary of the upgrade][4]
|
||||
|
||||
Finally, the command will calculate the size of the upgrade and give you the estimated time required with a summary as shown below. Please read it carefully and give your permission to upgrade to Ubuntu 22.04 LTS Jammy Jellyfish.
|
||||
|
||||
[][5]
|
||||
|
||||
SEE ALSO: Ubuntu 22.04 Jammy Jellyfish Daily Builds Are Now Available
|
||||
|
||||
After the upgrade process is complete, restart your system and enjoy the exciting Ubuntu 22.04 LTS.
|
||||
|
||||
#### After April 21, 2022
|
||||
|
||||
On the day or after April 21, 2022, Ubuntu will not give you any visual upgrade prompt for an upgrade until the first point release in July 2022 because the first point release is considered the most stable version after initial bugs are ironed out.
|
||||
|
||||
That said, you either wait until July, or you can force the upgrade. How? Open the Software and Updates, and go to the Updates tab. And change “notify me of new ubuntu version” to “any new version”.
|
||||
|
||||
Once you do that, you should see a prompt for an upgrade on the desktop. Follow the on-screen instructions and continue with the upgrade process.
|
||||
|
||||
The prompt also calculates the list of packages required to upgrade with the needed time, so read the updater output carefully. Once you are ready, start the process.
|
||||
|
||||
Finally, after the upgrade process is finished, reboot the system to enjoy the brand new Ubuntu 22.04 LTS Jammy Jellyfish.
|
||||
|
||||
#### Upgrade to Ubuntu 22.04 from Ubuntu 21.10
|
||||
|
||||
You can follow the above exact instructions for Ubuntu 21.10 as well. There are no extra steps required to Upgrade to Ubuntu 22.04 from Ubuntu 21.10.
|
||||
|
||||
#### How long does the upgrade to the Ubuntu 22.04 process take?
|
||||
|
||||
As per my test, the default install requires a little more than 30 minutes of total time to finish the entire upgrade process. It might be higher for your system based on how many software of packages you installed plus the age of your installation. So plan your time accordingly.
|
||||
|
||||
### Conclusion
|
||||
|
||||
Finally, I hope these steps help you successfully upgrade your Ubuntu system to Jammy Jellyfish. If you are planning to upgrade, I wish you all the best.
|
||||
|
||||
Do let me know in the comment box below how the upgrade process goes.
|
||||
|
||||
* * *
|
||||
|
||||
We bring the latest tech, software news and stuff that matters. Stay in touch via [Telegram][6], [Twitter][7], [YouTube][8], and [Facebook][9] and never miss an update!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/04/upgrade-ubuntu-22-04-from-20-04/
|
||||
|
||||
作者:[Arindam][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://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://releases.ubuntu.com/22.04/
|
||||
[2]: https://www.debugpoint.com/2018/09/how-to-create-ubuntu-linux-os-bootable-usb-in-windows/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/04/Upgrade-to-Ubuntu-22.04-LTS-from-Ubuntu-20.04-LTS-1024x540.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/04/Summary-of-the-upgrade-1024x581.jpg
|
||||
[5]: https://www.debugpoint.com/2021/10/ubuntu-22-04-daily-builds/
|
||||
[6]: https://t.me/debugpoint
|
||||
[7]: https://twitter.com/DebugPoint
|
||||
[8]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[9]: https://facebook.com/DebugPoint
|
@ -0,0 +1,74 @@
|
||||
[#]: subject: "Disable Animations in Cinnamon Desktop to Slightly Speed Up Your Linux Mint System"
|
||||
[#]: via: "https://itsfoss.com/disable-animations-cinnamon-desktop/"
|
||||
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Disable Animations in Cinnamon Desktop to Slightly Speed Up Your Linux Mint System
|
||||
======
|
||||
|
||||
Let’s face it.
|
||||
|
||||
Cinnamon is already a lightweight desktop environment when compared to the likes of GNOME. But it may not be as light on resources as Xfce.
|
||||
|
||||
If you have a system which is low on hardware and you want a little bit of performance boost without switching to an alternative desktop environment (DE) like Xfce or window manager (WM) like [Sway][1] or [Fluxbox][2].
|
||||
|
||||
Let me share a neat little trick that should help you speed up Linux Mint but only slightly.
|
||||
|
||||
### Disabling animation effects in Cinnamon desktop
|
||||
|
||||
_**First thing first, you must not expect a drastic improvement in overall desktop performance with this trick. Here’s why!**_
|
||||
|
||||
These animations or effects (as it is called in Mint) are noticed when you open, close applications windows, use the menu, have dialogue box popped up etc. Since these events do not happen continuously, you don’t get a constant boost.
|
||||
|
||||
Disabling these effects may help reduce the stutters if your system is really struggling. In those cases, every single bit helps. Let’s see how to do this!
|
||||
|
||||
Open the menu and look for effects here.
|
||||
|
||||
![Accessing Effects settings in Linux Mint Cinnamon][3]
|
||||
|
||||
It opens the ‘effects’ settings window and you’ll be at the ‘Enable Effects’ tab. You’ll have the options to disable (or enable) various available animation effects here.
|
||||
|
||||
![Disable animations in cinnamon Linux Mint Cinnamon Desktop][4]
|
||||
|
||||
You can choose to disable some or all effects.
|
||||
|
||||
If you go to the Customize tab, you can customize various effects you saw in the ‘Enable Effects’ tab.
|
||||
|
||||
![Customizing window animation Cinnamon in Linux mint][5]
|
||||
|
||||
The first column is the name of the effect, second one is the type of animation, third one is how the animation progresses and in the last one, you can configure how long the animation will take to complete.
|
||||
|
||||
If you select None, easeNone and 0 duration, it is equivalent to disabling the effect. Though, using the disable option in the other tab is an easier option.
|
||||
|
||||
### Is it worth the effort?
|
||||
|
||||
I wrote this tip because a reader asked if it was possible to customize Cinnamon and disable the animations.
|
||||
|
||||
Quite honestly, it doesn’t take much effort and it doesn’t make much difference. You’ll hardly notice the visual impacts or even the performance improvements.
|
||||
|
||||
However, if your system is struggling a lot, every tiny bit helps. You can also try using lightweight applications that consume fewer system resources. That may also help you a bit.
|
||||
|
||||
Do you have any similar small, ninja tips? Do share with me in the comment sections.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/disable-animations-cinnamon-desktop/
|
||||
|
||||
作者:[Abhishek Prakash][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/abhishek/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/sway-window-manager/
|
||||
[2]: http://fluxbox.org/
|
||||
[3]: https://itsfoss.com/wp-content/uploads/2022/04/accessing-effects-settings-mint-cinnamon-800x630.png
|
||||
[4]: https://itsfoss.com/wp-content/uploads/2022/04/disable-animations-cinnamon-Linux-mint-800x466.png
|
||||
[5]: https://itsfoss.com/wp-content/uploads/2022/04/customize-window-animation-cinnamon-linux-mint-800x571.png
|
69
sources/tech/20220417 How I scan family photos on Linux.md
Normal file
69
sources/tech/20220417 How I scan family photos on Linux.md
Normal file
@ -0,0 +1,69 @@
|
||||
[#]: subject: "How I scan family photos on Linux"
|
||||
[#]: via: "https://opensource.com/article/22/4/scan-family-photos-linux"
|
||||
[#]: author: "Alan Formy-Duval https://opensource.com/users/alanfdoss"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
How I scan family photos on Linux
|
||||
======
|
||||
With Linux, I can connect with my ancestors in unexpected ways.
|
||||
|
||||
![Camera][1]
|
||||
|
||||
Image by:
|
||||
|
||||
PublicDomainPictures. CC0.
|
||||
|
||||
Linux isn't just something that runs on servers and powers the internet. It's a safe place for your data, your family history and memories, working or having fun, and real life.
|
||||
|
||||
Case in point: Right now I'm in the middle of a project scanning old family photos. I have been using Fedora Linux with the GNOME desktop for a few years, so I didn't have to install any additional software packages. I just plug my scanner into the USB port, start up the scanning software (Document Scanner), and I'm good to go. Keep reading to see how I did it.
|
||||
|
||||
### Digitizing memories
|
||||
|
||||
Many people are interested in learning more about their family history, ancestry, and legacy. With the technology now available, digitizing old artifacts has become a common practice. Whether it's your 1980s cassette collection, high school artwork, or old family photos, putting them into a digital format is a modern method of preservation and future proofing.
|
||||
|
||||
My mom recently gave me some photos of some of my ancestors, so I have several images that I want to preserve. Scanning them not only provides a certain sense of permanence but also allows me to manipulate them in ways that were unheard of in the era when they were captured. For instance, I have a photo of my grandfather, who unfortunately passed a few years before my birth. By digitizing his photo, I can zoom in, get to know him, and maybe relate to him in a way that otherwise would be impossible.
|
||||
|
||||
### Workflow
|
||||
|
||||
The first thing to do is plug my Canon scanner into the USB port. When I open Document Scanner, it detects my Canon LiDE 210 scanner. Next, I place the photo onto the flatbed scanner. I adjust the settings for 2400 DPI image resolution to ensure I capture every detail.
|
||||
|
||||
Then I click scan. At this resolution the scan may take a while, but once it is complete, I can crop the image as needed and save it.
|
||||
|
||||
By the way, as I scan my photos and write this article, I'm also enjoying some of my favorite music with [Clementine][2], an open source audio player—on the same computer. Performance hit? Not a bit!
|
||||
|
||||
Once scanning is complete, I've also got the option of cropping the image and saving it as a PDF, JPG, or whatever format I choose.
|
||||
|
||||
### Real life
|
||||
|
||||
Allow me to introduce my grandfather and my Uncle George, circa 1944. George was a World War II vet having seen action in Europe battling the Nazis. My grandfather, on the right, was the foreman of a southeastern North Carolina lumber mill. While he didn't see the battlefield, he was in charge of captured Nazi POWs assigned to work at his mill. He described them as young boys that just wanted to go home to their families.
|
||||
|
||||
![Scan of photo of my grandfather][3]
|
||||
|
||||
Image by:
|
||||
|
||||
(Alan Formy-Duval, CC BY-SA 4.0)
|
||||
|
||||
### Final thoughts
|
||||
|
||||
As a dedicated Linux desktop user, I sometimes hear people say they don't use Linux because there are certain tasks it can't perform. Linux is all I use, and I haven't had that problem for roughly 14 years and counting. Whether you're looking for a pleasant pastime or a way to be more productive, there's likely a solution for you that runs on Linux.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/4/scan-family-photos-linux
|
||||
|
||||
作者:[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/sites/default/files/lead-images/camera-photography-film.jpg
|
||||
[2]: https://opensource.com/life/16/10/4-open-music-players-compared
|
||||
[3]: https://opensource.com/sites/default/files/2022-04/Scanner_Picture2022.png
|
@ -1,139 +0,0 @@
|
||||
[#]: subject: "Read and Organize Markdown Files in Linux Terminal With Glow"
|
||||
[#]: via: "https://itsfoss.com/glow-cli-tool-markdown/"
|
||||
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "hwlife"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
用 Glow 在 Linux 终端阅读和管理 Markdown 文件
|
||||
======
|
||||
|
||||
_**简要说明: Glow 是一个能让你在 Linux 终端渲染 Markdown 文件的命令行工具。你也可以用它来管理 Markdown 文件。**_
|
||||
|
||||
我喜欢 Markdown 。虽然我不是一个专业的 Markdown 用户,但我确定可以用 Markdown 写下许多文章。
|
||||
|
||||
如果你是 It’s FOSS 的常客,你可能已经遇到过 [Markdown 指南][1],编辑器和类似 Obsidian 的工具。我将再加个工具到这个名单。它叫做 [Glow][2] 并且不像之前涵盖的程序,Glow 能够让你在终端里阅读 Markdown 文件。
|
||||
|
||||
等等!你不能在终端里使用类似 cat , less 甚至是像常规的 [ Linux 命令阅读文本文件][3] 的 Vim 编辑器去阅读 Markdown 文件吗?
|
||||
|
||||
是的,你可以。但它会将所有代码按原样显示成原始 Markdown 文件,而不是显示正确的格式化文本。
|
||||
|
||||
![Glow renders the Markdown file][4]
|
||||
|
||||
注意 Glow 不是一个编辑器。你不能用它去写 Markdown 文本。
|
||||
|
||||
|
||||
### Markdown 爱好者将会喜欢 Glow 的功能
|
||||
|
||||
Glow 可以用两种格式来使用:[命令行界面和终端用户界面][5]。
|
||||
|
||||
简单的在一个 Markdown 文件使用 Glow 命令将在屏幕上显示整个渲染后的内容。
|
||||
|
||||
```
|
||||
|
||||
glow markdown_file
|
||||
|
||||
```
|
||||
|
||||
![Markdown display with Glow][6]
|
||||
|
||||
这是很不错,但是 Glow 可以做的更好。它有额外的参数打开终端用户界面模式(terminal user interface)并且允许你用它来做更多的事情。
|
||||
|
||||
|
||||
你可以在页面模式下使用页面参数来显示渲染后的文本(类似 less 命令显示文本没有弄乱屏幕一样)。
|
||||
|
||||
```
|
||||
|
||||
glow -p markdown_file
|
||||
|
||||
```
|
||||
|
||||
在页面视图中,你可以使用 **/ 键和 less 命令相同方法那样搜索特定的文本**。你可以按下**q 键退出** 这个视图。
|
||||
|
||||
![Pager view similar to the less command][7]
|
||||
|
||||
|
||||
不止这些。你可以使用 -a 选项,它将查找当前目录和它子目录中的所有 Markdown 文件。
|
||||
|
||||
```
|
||||
|
||||
glow -a
|
||||
|
||||
```
|
||||
|
||||
你可以用方向键在屏幕上滚动文件。上下键向上和向下移动,左右键按照页数移动。
|
||||
|
||||
![With -a option, Glow finds and displays all Markdown files in current directory][8]
|
||||
|
||||
你可以查看显示在底部的帮助选项。在这个视图查找选项允许你根据文件名查找文件(不是它们的内容).
|
||||
|
||||
![You can search files by their name][9]
|
||||
|
||||
这里也有标签。当然,你可以在标签中通过 Tab 键来回移动。
|
||||
|
||||
隐藏标签像一个书签。当你浏览文件或是查看它们的内容时,你可以按下 s 键来创建一个隐藏标签 / 书签。这个书签将只会在当前目录下可见。
|
||||
|
||||
|
||||
你可以按下 x 键来移除书签(不是文件)或者按下 m 键来添加一个备注。
|
||||
|
||||
![You can bookmark files by stashing them with s key][10]
|
||||
|
||||
消息标签显示更新日志和来自 Glow 开发者(们)的其他消息。
|
||||
|
||||
![The news tab shows messages from the developers][11]
|
||||
|
||||
当你已经找到你想找的文件,你可以通过按下回车键来查看它们。因为你在终端用户界面模式,所以你这里会有额外的键盘选项。选项可以通过按下 ? 键来显示。
|
||||
|
||||
![You can view keyboard shortcuts by pressing the ? key][12]
|
||||
|
||||
### 在 Linux 上安装 Glow
|
||||
|
||||
Glow 在 Linux 和 macOS 上是可用的。你可以在 macOS 和[ Linux 上使用 Homebrew ][13]来安装它,然而,我建议你在这里使用 Linux 安装包。
|
||||
|
||||
Glow 在 Void, Solus 和 Arch Linux 的仓库里是可用的。你可以用它们的包管理器来安装它们。
|
||||
|
||||
在基于 Arch 的发行版上,使用:
|
||||
|
||||
```
|
||||
|
||||
sudo pacman -S glow
|
||||
|
||||
```
|
||||
|
||||
对于 Ubuntu,Debian ,Fedora 和 SUSE ,在各种架构下它们有 .DEB 和 .RPM 二进制包可用,并且你可以在它们的发布页找到它们。
|
||||
|
||||
[Download Glow for other Linux distros][14]
|
||||
|
||||
### 结尾
|
||||
|
||||
总之,Glow 是在终端里的一个美化视图和管理 Markdown 的便利工具。像许多其他的命令行工具一样,它不是每个人都适合。如果你经常在终端并喜欢 Markdown 文件,你可以尝试使用一下。当你用过后,请在评论区里分享你使用它的体验。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/glow-cli-tool-markdown/
|
||||
|
||||
作者:[Abhishek Prakash][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hwlife](https://github.com/hwlife)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/abhishek/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/markdown-guide/
|
||||
[2]: https://github.com/charmbracelet/glow
|
||||
[3]: https://linuxhandbook.com/view-file-linux/
|
||||
[4]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/markdown-display-with-cat.png?resize=1572%2C962&ssl=1
|
||||
[5]: https://itsfoss.com/gui-cli-tui/
|
||||
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/markdown-display-with-glow.png?resize=800%2C490&ssl=1
|
||||
[7]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/pager-view-with-glow.png?resize=800%2C451&ssl=1
|
||||
[8]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/glow-collection.png?resize=800%2C451&ssl=1
|
||||
[9]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/find-files-in-glow.png?resize=800%2C451&ssl=1
|
||||
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/stash-feature-glow.png?resize=800%2C374&ssl=1
|
||||
[11]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/glow-news-tab.png?resize=800%2C451&ssl=1
|
||||
[12]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2022/01/display-help-in-file-view-in-glow.png?resize=800%2C490&ssl=1
|
||||
[13]: https://itsfoss.com/homebrew-linux/
|
||||
[14]: https://github.com/charmbracelet/glow/releases
|
@ -1,117 +0,0 @@
|
||||
[#]: subject: "Nautilus File Manager Looks Amazing with GTK4 and Libadwaita – A Deep Dive"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/gnome-files-43/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
使用 GTK4 和 Libadwaita 让 Nautilus 文件管理器看起来很出色 - 深入研究
|
||||
======
|
||||
我们测试了 GNOME Files v43 的开发版本,并向你介绍了其外观、功能和性能的细节。
|
||||
|
||||
GNOME Files(以前的 Nautilus)也许是当今 GNOME 生态空间中使用最多的桌面应用。而且,自其首次发布以来,它从未接受过什么大修,而其他的 GNOME 应用和桌面本身都转移到了一个较新的技术栈。
|
||||
|
||||
现在一切都变了。GNOME 开发者正在为整个桌面和 Files 采用 GTK4 和 libadwaita。
|
||||
|
||||
GNOME Files v43,将在 2022 年晚些时候与 GNOME 43 一起发布,将令人印象深刻。这个急需的[重做][1]带来了原生的深色模式,出色的 UI 以及出色的 libadwaita 触控和 GTK4 性能提升。
|
||||
|
||||
### GNOME Files 43
|
||||
|
||||
我们安装了 GNOME Files 43 的 Flatpak 开发版本,下面是我们的发现。
|
||||
|
||||
第一眼,你应该注意到漂亮的 UI 触控,这要感谢 Libadwaita。关闭按钮是漂亮的圆形,而地址栏、选择高亮器和整个文件窗口都有适当的间距和圆角。
|
||||
|
||||
所有的组件都没有出现边框高亮线。
|
||||
|
||||
下面是 v43(左)和 v42(右)的深浅模式的快速比较。
|
||||
|
||||
![GNOME Files 43 and 42 – Light Mode Comparison][2]
|
||||
|
||||
![GNOME Files 43 and 42 – Dark Mode Comparison][3]
|
||||
|
||||
地址栏的文件夹分隔符保持不变。然而,字体却有了些许润色。地址栏的上下文菜单改变了。这个选项没有了。取而代之的是 **Open in Other application** 菜单。一个新的选项 **Create Link** 被引入。我想许多用户会怀念在终端打开的选项。
|
||||
|
||||
![New option in address bar menu][4]
|
||||
|
||||
另一个重要的变化是你应该注意到两个主要的工具条菜单:a)视图按钮和 b)主设置菜单。这些上下文菜单项显示键盘快捷键以及菜单项。 这也使它们看起来更加突出。
|
||||
|
||||
![The Hamburger menu now have keyboard shortcuts][5]
|
||||
|
||||
文件夹的上下文菜单现在有一个向上的小箭头,指向从它弹出的文件夹。文件夹的右键上下文菜单以组为单位组织得很好。例如,打开动作是分组的,而剪切、复制、粘贴在上下文菜单中以横杠的形式明显分开。
|
||||
|
||||
![Context Menu for folder changes][6]
|
||||
|
||||
我还注意到一个新的选项 “Paste into the folder”,这个很好。
|
||||
|
||||
Nautilus 搜索几乎与 Files 42 相同,只是在 Files 43 中你可以通过创建日期/时间搜索。
|
||||
|
||||
然而,我注意到一个令人兴奋的变化。上下文菜单中的文件关联的应用名称被移除。例如,如果你今天试图在 Files 42 中打开一个文本文件,它在上下文菜单中显示与之相关的应用名称。在 Files 43 中,它只显示 “Open”。我觉得这种改变是不必要的。之前的情况更好。
|
||||
|
||||
![A subtle change in context menu for file association][7]
|
||||
|
||||
所以,这就是我在这个应用的新 GTK4 版本中发现的整体变化。但它看起来不错?不是吗。此外,如果你是直接从 Ubuntu 20.04 LTS 来的,其中包含 Files 3.38,那么也许你的体验会是“哇”。如果你将 Files 43 与 Files 3.38 进行比较,大部分的部分都发生了变化。对于这些用户来说,这将是一个相当不错的体验。
|
||||
|
||||
You should remember version 43 is still in development so that things may change in the coming days in the final shipment.
|
||||
|
||||
### 愿望清单
|
||||
|
||||
如果我比较各种 Linux 文件管理器,其他的选择远远多于今天的 GNOME Files。
|
||||
|
||||
我同意。
|
||||
|
||||
例如,Nemo 或 Dolphin - 这两个最好的文件管理器在各方面都胜过 Files。比较一下功能,GNOME Files 没有一些流行的功能:
|
||||
|
||||
* 双面板或分割视图
|
||||
* 从上下文菜单中打开一个根文件夹是困难的
|
||||
* 一个用于文件夹浏览的向上箭头
|
||||
* 没有从上下文菜单中创建一个新文件(文本、电子表格等)的选项
|
||||
* 更多的排序和搜索功能
|
||||
|
||||
|
||||
|
||||
我们希望这些功能能尽快出现在 GNOME Files 中。
|
||||
|
||||
### 何时能用
|
||||
|
||||
如上所述,这个版本的 GNOME Files 将与 GNOME 43 一起提供。因此,从Linux 发行计划的角度来看,你应该在 2022 年 10 月周期的 Ubuntu 22.10 和今年晚些时候的 Fedora 37 上拥有它。
|
||||
|
||||
不幸的是,[Ubuntu 22.04 LTS][9](Jammy Jellyfish)和带 [GNOME 42][10] 的 [Fedora 36][11] 将不会有 GNOME Files 43。主要原因是时间表不匹配,而且它是要移植到 GTK4 和彻底测试的复杂应用之一。然而,大部分上述的内部功能仍然会在 Files 42 中。但它可能缺少漂亮的 UI 变化和主题。
|
||||
|
||||
尽管如此,我相信这个流行的文件管理器看起来不错,当它发布时,用户应该会很兴奋地使用它。让我知道你对 GNOME Files 43 的新变化的看法,请在下面的评论框中留言。
|
||||
|
||||
祝贺你。
|
||||
|
||||
* * *
|
||||
|
||||
我们带来最新的技术、软件新闻和重要的东西。通过 [Telegram][12]、[Twitter][13]、[YouTube][14] 和 [Facebook][15] 保持联系,不要错过任何更新!
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/gnome-files-43/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者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/lujun9972
|
||||
[1]: https://gitlab.gnome.org/GNOME/nautilus
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/03/GNOME-Files-43-and-42-Light-Mode-Comparison-1024x502.jpg
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/03/GNOME-Files-43-and-42-Dark-Mode-Comparison-1024x493.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/03/New-option-in-address-bar-menu-1024x267.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/03/The-Hamburger-menu-now-have-keyboard-shortcuts-1024x331.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2022/03/Context-Menu-for-folder-changes-1024x560.jpg
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/03/A-subtle-change-in-context-menu-for-file-association-1024x524.jpg
|
||||
[9]: https://www.debugpoint.com/2022/01/ubuntu-22-04-lts/
|
||||
[10]: https://www.debugpoint.com/2021/12/gnome-42/
|
||||
[11]: https://www.debugpoint.com/2022/02/fedora-36/
|
||||
[12]: https://t.me/debugpoint
|
||||
[13]: https://twitter.com/DebugPoint
|
||||
[14]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[15]: https://facebook.com/DebugPoint
|
@ -0,0 +1,208 @@
|
||||
[#]: subject: "Top 10 Most Beautiful Linux Distributions [Featured]"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/beautiful-linux-distributions-2022/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "amagicboy"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
精选10个最美的 Linux 发行版
|
||||
======
|
||||
|
||||
我们选出 2022 年 10 个最美的Linux发行版,保证系统稳定的前提下,会给您良好的视觉体验。
|
||||
|
||||
定制化拓展 Linux 发行版以满足需求是非常有意思的事。无论是 Ubuntu 还是 Fedora ,都有各种各样的工具去定制化 Linux 桌面。
|
||||
|
||||
但是,有很多不需要任何定制化而且令人眼前一亮的 Linux 发行版。它们的开发者使它们在安装后不需要再定制化就能有一个非常好的视觉效果。
|
||||
|
||||
现在,我们编制了一份最美 Linux 发行版列表,您可以现在尝试来更新您电脑的视觉外观。
|
||||
|
||||
### 2022 最美的 Linux 发行版
|
||||
|
||||
#### 1\. Zorin OS
|
||||
|
||||
最先介绍的 Linux 发行版是 Zorin OS. Zorin OS 使用基于 GNOME 的 Zorin Desktop ,非常适合追求美观的桌面和生产力的新用户。
|
||||
|
||||
Zorin OS 最有特点的功能之一是它可以随意转化为其他操作系统桌面,这意味着只需要设置布局选项,就可以改变任务栏、应用菜单、 Dock 栏,给用户最大的的灵活性,安装即用。
|
||||
|
||||
[阅读有关 Zorin OS 更多信息][2]
|
||||
|
||||
![Zorin OS 16 桌面][3]
|
||||
|
||||
#### 2\. Elementary OS
|
||||
|
||||
Elementary OS 是基于 Ubuntu 长期稳定支持(LTS) 发行版中最美观的一个。它使用吸引人的 Pantheon 桌面环境,其外观和使用体验受到了 macOS 的启发。
|
||||
|
||||
Elementary OS 非常适合从 maxOS 进入 Linux 世界的新用户,因为他们会发现许多熟悉的东西,比如手势和窗口样式。
|
||||
|
||||
但是,Elementary OS 不能通过设置菜单定制化大部分功能,只能依靠拓展脚本命令拓展功能。但是,系统默认桌面十分美观,能满足大部分人的需求。
|
||||
|
||||
Elementary OS 最具特色是它精心设计的应用商店。应用商店提供所有类别的应用,特别是那些专为 Elementary OS 定制而且外观精美、功能强大的应用。
|
||||
|
||||
[阅读有关 elementaryOS 更多信息][4]
|
||||
|
||||
![elementary OS 6 ODIN 桌面][5]
|
||||
|
||||
#### 3\. Deepin OS
|
||||
|
||||
第三个介绍的 Linux 发行版是 Deepin OS . Deepin OS 基于 Debian ,由中国 Deepin 科技公司开发。它使用基于 QT 的自研桌面环境。 Deepin 桌面部件、配色方案、窗口样式、壁纸看起来都非常不错,给用户安装即享的视觉体验。
|
||||
|
||||
Deepin OS 一流的视觉组件和 macOS 非常相似。并且由于 Deepin 的稳定分支,如果您想要一个外观精美且稳定的 Linux 发行版,Deepin 是最适合的选择。
|
||||
|
||||
为什么 Deepin OS 体验很好?
|
||||
* _基于 QT 的酷炫桌面_
|
||||
* _原生部件及支持暗色主题_
|
||||
* _多项选择定制化 Dock 栏_
|
||||
* _透明性、窗口效果、 CursDockheme , 图标主题_
|
||||
* _强调色_
|
||||
|
||||
[阅读有关 Deepin OS 更多信息][6]
|
||||
|
||||
![ Deepin 20 桌面][7]
|
||||
|
||||
#### 4\. Cutefish OS
|
||||
|
||||
第四个介绍的 Linux 发行版是 [CutefishOS][8] .这种基于 Debian 和 Ubuntu 的 Linux 发行版特点是本地开发的 Cutefish 桌面。 Cutefish OS 还在发展中,但由于它的外观, Cutefish OS 已经在用户群体中掀起波澜。
|
||||
|
||||
Cutefish OS 底层基于 QT 和 KDE 框架构建。这种带有 Cutefish 桌面的 Linux 发行版顶部有丰富的全局菜单。
|
||||
|
||||
在 Cutefish OS 发展过程中也支持定制化。但在最新的发行版中, Cutefish OS 支持深色模式,强调色、动画效果、任务栏位置(左、右、下)等其他选项。
|
||||
|
||||
|
||||
如果您想体验完全不同的桌面风格,可以尝试 Cutefish OS . 您也可以查看下面提供的关于此桌面的完整评论和教程。
|
||||
|
||||
[Cutefish OS 评论][9]
|
||||
|
||||
![Cutefish OS][10]
|
||||
|
||||
#### 5\. Manjaro KED Plasma
|
||||
|
||||
Manjaro KDE 是现在外观最好看的 Linux 发行版之一。 Manjaro KDE 基于 Arch Linux ,以 KDE Plasma 为特色,添加了一些额外调整工具和窗口。 Manjaro 的绿色调色板给您全新的外观和体验。 您可以通过 KDE 构建工具定制化功能,在 KDE Stores 中也可以设置和改变图标主题。
|
||||
|
||||
Manjaro KDE 是 Arch Linux 性能和外观最完美的结合体。对于 Arch Linux 新用户来说, Manjaro 是一个理想的开始。
|
||||
|
||||
[阅读有关 Manjaro KED 更多信息][11]
|
||||
|
||||
![Manjaro KDE Plasma][12]
|
||||
|
||||
#### 6\. Garuda Linux
|
||||
|
||||
出名的 Garuda Linux 是榜单上的第六位。 Garuda Linux 基于 Arch Linux ,带有美观的桌面,特点是支持所有主流桌面的定制化图标、主题。 Garuda Linux 使用 Zen 内核,优化了硬件性能。
|
||||
|
||||
[][13]
|
||||
|
||||
补充: 安装 Fedora 33 后要做的 10 件事
|
||||
|
||||
Garuda Linux 的外观和体验令人印象深刻。 macOS 风格看起来非常的方便。 Neon 图标主题、亲切的调色板、全局菜单的模糊和透明性的结合是其自身的完美选择。
|
||||
|
||||
Garuda 最主要的优点是支持所有桌面环境 — KDE Plasma , GNOME , Xfce , LXQT , MATE , 等等。
|
||||
|
||||
[阅读有关 Garuda Linux 更多信息][14]
|
||||
|
||||
![Garuda Linux][15]
|
||||
|
||||
#### 7\. Linux Mint Cinnamon Edition
|
||||
|
||||
我们推荐 Linux Mint 是因为它非常的简洁,优美和稳定。它是目前最被广泛使用和出名的 Linux 发行版之一,或许仅在 Ubuntu 使用人数之下。但和本列表中其他 Linux 发行版比较起来,它看起来不是很精致。
|
||||
|
||||
但是如果您喜欢看起来很棒的经典用户桌面,默认的 Cinnamon 桌面看起来干净且完美。
|
||||
|
||||
Linux Mint 发行版对所有用户都非常友好,特别是第一次使用 Linux 或者从 Windows 转到 Linux 的用户。默认的 Mint 绿色调色板外观和体验都能使人耳目一新。
|
||||
|
||||
如果您无法确定一个稳定的令人眼花缭乱的 Linux 发行版,那就毫不犹豫的选择 Linux Mint 吧。
|
||||
|
||||
[阅读有关 Linux Mint 更多信息][16]
|
||||
|
||||
![Linux Mint 20 — Cinnamon 版本桌面][17]
|
||||
|
||||
#### 8\. Nitrux OS
|
||||
|
||||
[Nitrux Linux][18] 基于 Debian ,其特点是名为 NX 桌面的 KDE Plasma 修改版。独特的 Linux 发行版有一套使用 Maui 套件和 QT 编译的 Nitrux 应用。 Nitrux 是开源的 Linux 发行版,使用 OpenRC 作为初始化系统。独特的功能和外观, Nitrux 是目前最好的 Linux 发行版之一。
|
||||
|
||||
Nitrux OS 默认外观与经过改进的 KDE Plasma 桌面完美结合,带有 Kvantum 主题引擎、图标主题、配色表、鼠标主题功能。 Nitrux OS 背后团队还开发了名为 Maui Shell 的独立聚合桌面,可以根据屏幕大小进行自我调整。
|
||||
|
||||
如果您需要一款稳定方便的 KDE Plasma 桌面,那么 Nitrux OS 非常适合您。您不会失望的。
|
||||
|
||||
[阅读有关 Nitrux OS 更多信息][18]
|
||||
|
||||
![Nitrux 2.0 桌面][19]
|
||||
|
||||
#### 9\. Ubuntu Kylin
|
||||
|
||||
Ubuntu Kylin 是专门为使用简体中文脚本的中国人设计的官方版本。但它同时也支持其他语言。
|
||||
|
||||
定制化的 Ubuntu 版本使用 Ubuntu Kaylin 用户桌面( aka UKUI )。 UKUI 桌面使用 Qt 开发,支持 MATE 桌面组件。
|
||||
|
||||
Ubuntu Kylin 看起来精致,就像是 GNOME 和 KDE Plasma 在外观和设计上的结合。
|
||||
|
||||
Ubuntu Kylin 特点是其精美设计的图标系统,底部的任务栏,漂亮的应用视图,应用切换器,圆的窗口对角和更多精心制作的功能。
|
||||
|
||||
[阅读有关 Ubuntu Kylin 更多信息][20]
|
||||
|
||||
![Ubuntu Kylin 桌面][21]
|
||||
|
||||
#### 10\. Pop OS
|
||||
|
||||
Pop OS 是从管理计算机硬件的 System76 发展而来。 此 Linux 发行版在所有 System6 硬件上都预安装。但是,您可以从官方仓库下载然后安装。
|
||||
|
||||
Pop OS 特点是默认的带有额外调整和配置的 GNOME 桌面。此桌面具有 GNOME 40 时代之前的特点,预配置了多个拓展和调整。比如您可以获得可以配置自由调整的底部任务栏、一个用于启动应用程序的启动器、窗口圆角等许多此类功能。此桌面还有自动平铺和优化的键盘导航功能,可提高您的工作效率。
|
||||
|
||||
Pop OS 的颜色搭配、深色模式、应用窗口的圆角、图标主题,使它的外观和体验都非常的舒服和赏心悦目。
|
||||
|
||||
[阅读有关 Pop OS 更多信息][22]
|
||||
|
||||
![Pop OS 21.10 桌面][23]
|
||||
|
||||
### 结语
|
||||
|
||||
希望这份 2022 最美 Linux 发行版榜单能帮你选择您想要的桌面或者系统。 因为这些 Linux 发行版已经配置成看起来很漂亮,而且他们性能很强大。
|
||||
|
||||
选择并开始您的 Linux 之旅吧。
|
||||
|
||||
* * *
|
||||
|
||||
我们介绍最新的技术、软件新闻和重要资讯。通过 [Telegram][24] , [Twitter][25] , [YouTube][26] , [Facebook][27] 保持联系,不要错过任何更新!
|
||||
|
||||
##### 另请阅读
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/beautiful-linux-distributions-2022/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[amagicboy](https://github.com/amagicboy)
|
||||
校对:[校对者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/lujun9972
|
||||
[1]: https://www.debugpoint.com/category/distributions
|
||||
[2]: https://zorin.com
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2021/08/Zorin-OS-16-Desktop-1024x576.jpg
|
||||
[4]: https://elementary.io/
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2021/08/elementary-OS-6-ODIN-Desktop-1024x576.jpg
|
||||
[6]: https://www.deepin.org/en/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2020/09/Deepin-20-Desktop-1024x568.jpg
|
||||
[8]: https://en.cutefishos.com/
|
||||
[9]: https://www.debugpoint.com/2021/11/cutefish-os-review-2021/
|
||||
[10]: https://www.debugpoint.com/wp-content/uploads/2021/11/Cutefish-OS-1024x581.jpg
|
||||
[11]: https://manjaro.org/downloads/official/kde/
|
||||
[12]: https://www.debugpoint.com/wp-content/uploads/2022/03/Manjaro-KDE-Plasma-1024x576.jpg
|
||||
[13]: https://www.debugpoint.com/2020/10/10-things-to-do-fedora-33-after-install/
|
||||
[14]: https://garudalinux.org/
|
||||
[15]: https://www.debugpoint.com/wp-content/uploads/2022/03/Garuda-Linux-1024x577.jpg
|
||||
[16]: https://linuxmint.com/
|
||||
[17]: https://www.debugpoint.com/wp-content/uploads/2020/07/Linux-Mint-20-Cinnamon-Edition-Desktop-1024x763.png
|
||||
[18]: https://nxos.org/
|
||||
[19]: https://www.debugpoint.com/wp-content/uploads/2022/03/Nitrux-2.0-Desktop-1024x581.jpg
|
||||
[20]: https://www.ubuntukylin.com
|
||||
[21]: https://www.debugpoint.com/wp-content/uploads/2022/03/Ubuntu-Kylin-Desktop-1024x574.jpg
|
||||
[22]: https://pop.system76.com/
|
||||
[23]: https://www.debugpoint.com/wp-content/uploads/2021/12/Pop-OS-21.10-Desktop-1024x579.jpg
|
||||
[24]: https://t.me/debugpoint
|
||||
[25]: https://twitter.com/DebugPoint
|
||||
[26]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[27]: https://facebook.com/DebugPoint
|
@ -0,0 +1,220 @@
|
||||
[#]: subject: "10 Lightweight Linux Distributions for your Old Hardware in 2022"
|
||||
[#]: via: "https://www.debugpoint.com/2022/03/lightweight-linux-distributions-2022/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
2022 年最适合用于旧计算机的 10 款 Linux 发行版
|
||||
======
|
||||
我们重点推荐一份关于 10 款轻量级 Linux 发行版的列表,它们是 2022年最适合你的较旧的 PC 的发行版。我们将向你们介绍它们的特色,以及为什么它们会成为复活较旧硬件的完美之选。
|
||||
|
||||
我们认为你不应该扔掉任何的硬件,尤其是 PC 以及配件。在理想的情况下,设计良好的软件总是能够在任意硬件上运行。这里有很多专门针对较旧的硬件和 PC 的 [Linux 发行版][1] 。你可以在这些 Linux 操作系统的帮助快速地复活它们。在这篇文章中,我们重点推荐 10 款这样的 Linux 发行版,它们是 2022年 轻量级的并对较旧硬件友好的。
|
||||
|
||||
### 2022 年的 10 款轻量级 Linux 发行版
|
||||
|
||||
#### 1\. Linux Lite
|
||||
|
||||
在 2022 年的这份列表中,我们推出的第一款轻量级 Linux 发行版是 Linux Lite 。Linux Lite 是一款基于 Ubuntu 和 Debian 的正在不断发展和完善的 Linux 发行版。这款有十年开发历史的 Linux 发行版非常适合于你的比较旧的硬件,这些硬件需要友好且设计良好的发行版。该开发团队以这个发行版支持不再被 Windows 所支持的硬件且是这些 Windows 用户的理想的起点为卖点。这个发行版的主要优势是良好的自定义和极好看的 Xfce 桌面,并使用 Ubuntu 的基础、最新的内核,当然,还带有一个 32-位 ISO 镜像。
|
||||
|
||||
![Linux Lite][2]
|
||||
|
||||
Linux Lite 的优势:
|
||||
|
||||
* 基于 Ubuntu
|
||||
* 自定义的 Xfce 桌面环境
|
||||
* 本机原生应用程序
|
||||
* 支持 32 位
|
||||
* 积极开发
|
||||
* 最小系统要求 1 GB RAM
|
||||
|
||||
|
||||
|
||||
[下载 Linux Lite][3]
|
||||
|
||||
#### 2\. Puppy Linux
|
||||
|
||||
在这份列表中的第二个重要的发行版是 Puppy Linux 。Puppy Linux 与传统发行版稍有不同。在这里,它被设计成在 RAM 中运行,而不需要在物理机系统中安装。如果恰当地配置,你可以保留会话期间,此外,即使你移除可启动媒介,它也可以继续很好地工作。
|
||||
|
||||
![Puppy Linux – one of the best lightweight Linux Distribution in 2022][4]
|
||||
|
||||
这个 Linux 发行版与 Ubuntu 的 LTS 版本在二进制文件方面是兼容的;其最新的版本是基于 Ubuntu 20.04 LTS 的。因为 Ubuntu 放弃了 32-位的支持,所以其最新版本也放弃了 32-位 的支持。
|
||||
|
||||
Puppy Linux 的特殊使用情况非常适合于较旧的计算机、上网本以及小于 1GB RAM 的硬件。它的核心是,运行超快速的 JWM (Jow’s Window Manager), Puppy 软件包管理器支持 .deb 、.rpm 及其原生的 PET 软件包。
|
||||
|
||||
总的来说,它是一款完美的和设计良好的 Linux 发行版,适合于唾手可得的较旧的硬件。
|
||||
|
||||
特色:
|
||||
|
||||
* 基于 Ubuntu 的 LTS 版本
|
||||
* 它能够在低端的上网本上运行
|
||||
* 即使在移除可启动介质后,也可以直接从 RAM 工作
|
||||
* 特有的软件包管理器 – Puppy 软件包管理器
|
||||
* JWM 桌面环境
|
||||
|
||||
|
||||
|
||||
#### 3\. BunsenLabs Linux
|
||||
|
||||
在这份列表中的第三款 Linux 发行版是 BunsenLabs Linux ,Crunchbang 项目的一个继任者。BunsenLabs Linux 基于 Debian 的 Stable 分支, 将现代的应用程序带到你的低端硬件系统。这个发行版为低端硬件系统提供一个 32-位 版本的镜像,并为你的常规硬件系统提供一个标准的 64-位 版本的镜像。它的核心是,BunsenLabds 由一个预配置的OpenBox 窗口管理器所驱动,并带有令人惊艳的 tint2 面板,预配置的 Conky 和 jgmenu 。
|
||||
|
||||
![BunsenLabs Linux][5]
|
||||
|
||||
这是一款设计良好、超快速、稳定和极好看的针对较旧系统的发行版。
|
||||
|
||||
特色概要:
|
||||
|
||||
* 基于 Debian 的 Stable 分支
|
||||
* Openbox 窗口管理器,附带 tint2 面板、conky 和 jgmenu
|
||||
* 提供 32-位 安装程序
|
||||
* 可以通过官方论坛获取帮助和支持
|
||||
|
||||
|
||||
|
||||
[下载 BunsenLabs Linux][6]
|
||||
|
||||
#### 4\. Lubuntu
|
||||
|
||||
Lubuntu 是一款著名的轻量级 Linux 发行版。它是一款官方的 Ubuntu Linux 衍生特色版本,其特点是使用轻量级 LxQt桌面环境。Lubuntu 在给予你现代的 Ubuntu Linux 软件包和技术的同时,也针对你的低端硬件提供 LxQt 桌面环境。尽管与这份列表中的其它的发行版相比,它可能需要一些额外的系统资源,但是对于较旧的硬件系统来说,它仍然是一个可接受的 Linux 发行版。
|
||||
|
||||
![Lubuntu][7]
|
||||
|
||||
如果你需要一款稳定且开箱即用的适中型轻量的 Linux 发行版,那么,请选择 Lubuntu 。
|
||||
|
||||
[下载 Lubuntu][8]
|
||||
|
||||
#### 5\. Absolute Linux
|
||||
|
||||
第五款轻量级 Linux 发行版是 Absolute Linux ,基于 Slackware Linux 。这个发行版在其安装程序镜像中打包了所有日常需要的应用程序,以便你可以获得一款开箱即用的发行版。Absolute Linux 以使用 IceWM 和 ROX 桌面环境为特色,在你的较旧的硬件中使用它们时,它们将给予你终极的速度。它是 systemd 自由的,它提供超出其它的发行版的额外优势。
|
||||
|
||||
![Absolute Linux][9]
|
||||
|
||||
特色概要:
|
||||
|
||||
* 基于 Slackware
|
||||
* Systemd-自由
|
||||
* 打包必要的软件包
|
||||
* IceWM 桌面环境,Slapt-get 软件包管理器
|
||||
|
||||
|
||||
|
||||
[下载 Absolute Linux][10]
|
||||
|
||||
#### 6\. antiX Linux
|
||||
|
||||
我们想重点推荐的另一款轻量级 Linux 发行版是 antiX Linux 。antiX Linux 基于 Debian 的 stable 分支,并带来一些诱人的特色。它的核心是,它使用 IceWM 、Fluxbox 和 ROX 桌面环境选项,给予你一种极好的和快速的桌面体验。它完全是 systemd 自由的,使用 sysVinit 和 runit 系统。antiX Linux 也给予你一个 32-位 安装程序,并且还有种变体 – 完全体、核心体、基本体以及网络体,以满足不同的实际使用情况。
|
||||
|
||||
![antiX Linux][11]
|
||||
|
||||
特色:
|
||||
|
||||
* 基于 Debian 的 stable 分支
|
||||
* 通过 32-位 安装程序
|
||||
* Systemd-自由
|
||||
* IceWM 桌面环境,其它的窗口管理器衍生特色版本
|
||||
|
||||
|
||||
|
||||
[下载 antiX Linux][12]
|
||||
|
||||
#### 7\. LXLE
|
||||
|
||||
LXLE Linux 是 Lubuntu LTS 系列的一种变体,使用 LXDE 桌面环境而不再使用 LXQt 桌面环境。应用程序、安装程序以及其它的特色的选择使其成针对较旧的硬件系统的一款完美的发行版。它非常适合于复活你的旧硬件系统,使用稳定的 Ubuntu-LTS 基础和快速的 LXDE 桌面环境。
|
||||
|
||||
![LXLE Linux][13]
|
||||
|
||||
然而,就我个人见解,我感觉 LXQt 比 LXDE 稍快一点。好吧,这种反馈可能是因人而异的,对你来说可能是不同的。现在,这里没有多少 Linux 发行版向你提供 LXDE 桌面环境的衍生特色版本。因此,对于你的日常使用的来说,它可能是独特的一款轻量级的 Linux 发行版。
|
||||
|
||||
[下载 LXLE][14]
|
||||
|
||||
#### 8\. Porteus Linux
|
||||
|
||||
Porteus Linux 是 Slackware Linux 的一款混成版本,以旧的 KDE 4.0+ 桌面环境 (在 KDE Plasma 系列之前的版本) 为特色。这款超快的 Linux 发行版非常适合于你的考古级的硬件系统,因为它基于最先进的 Slackware ,并且向你提供一款 32-位 的版本。这款发行版可以从 Live USB 或 Live CD 或任意可启动媒介中运行,安装程序仅 300 MB 大小。
|
||||
|
||||
[][15]
|
||||
|
||||
请参考: 10 款改善你的 GNOME 体验的重要应用程序 [部分 3]
|
||||
|
||||
如果你喜欢老的 KDE (像我一样!) 和 Slackware 的简单易用,对你来说这将会是一个完美的发行版,甚至针对你的新硬件也是一样。
|
||||
|
||||
![Porteus Linux][16]
|
||||
|
||||
[下载 Porteus Linux][17]
|
||||
|
||||
#### 9\. Q4OS
|
||||
|
||||
Q4OS 是这份列表中的一款独特的 Linux 发行版。它针对现今已经过时的较旧的 windows 系统。曾经很多较旧的 PC 运行 Windows XP 和 Windows 7 。它们在 windows 和一些现代的 Linux 发行版下不再能很好地工作,因为现代的及其更新的操作系统要求更多的计算能力和资源。
|
||||
|
||||
Q4OS 针对这些实际使用实例,给予你一款设计良好的 Linux 发行版,附带有一个 32-位 安装程序、在 Windows 系统中的安装程序、Trinity 桌面环境、预制的 Windows 主题等等。
|
||||
|
||||
![MX Linux][18]
|
||||
|
||||
[下载 Q4OS][19]
|
||||
|
||||
#### 10\. MX Linux
|
||||
|
||||
在这份列表中的最后一款 Linux 发行版是著名的 MX Linux ,它凭借其特色和独特性在当今时代留下的印记。然而,我都怀疑是否应该将 MX Linux 列为轻量级。因为在我看来,如果你推敲它的 KDE Plasma 衍生特色版本的味道时,它应该是中等级的 Linux 发行版。
|
||||
|
||||
![MX Linux][20]
|
||||
|
||||
不管怎么说,它所有的一些特色使其成为一款轻量级 Linux 发行版的完美候选版本。MX Linux 基于 Debian 的 Stable 分支,并使用了 antiX 组件创建。它重点向你推荐它自己的用于附加工作流的 MX Linux 原生应用程序。你可以获取使用 KDE Plasma 、Xfce 和 Fluxbox 作为桌面环境的选项。
|
||||
|
||||
[下载 MX Linux][21]
|
||||
|
||||
### 总结
|
||||
|
||||
如果你仔细地阅读会发现,我们在这里所列出的大多数的轻量级 Linux 发行版都基于 Debian Linux 。它是真正的 “通用操作系统”。现代的 Linux 桌面环境,像 GNOME 40+ 、KDE Plasma 和 Systemd init 系统,不再兼容较旧的硬件系统。此外,随着技术的进步,引入了更多的软件复杂性,需要更高端的硬件系统。
|
||||
|
||||
尽管如此,我希望你可以从这份列表中获取一些为你的旧笔记本电脑或 PC 选择哪款轻量级 Linux 发行版的灵感。每一款发行版都提供不同的体验,但是都有共同的目标:复活你的较旧的硬件系统。所以,任君采撷。
|
||||
|
||||
谢谢。
|
||||
|
||||
_一些图像文件的版权: 各自的 Linux 发行版_
|
||||
|
||||
_这篇 2022年 最佳的 10 款轻量级 Linux 发行版收录在 [Top Ten List][22] 中。_
|
||||
|
||||
* * *
|
||||
|
||||
我们带来最新的科技、软件新闻和重要的题材。通过 [Telegram][23]、[Twitter][24][YouTube][25] 和 [Facebook][26] 保持联系、不错过一次更新!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/2022/03/lightweight-linux-distributions-2022/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[robsean](https://github.com/robsean)
|
||||
校对:[校对者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/lujun9972
|
||||
[1]: https://www.debugpoint.com/category/distributions
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/03/Linux-Lite-1024x576.jpg
|
||||
[3]: http://www.linuxliteos.com/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/03/Puppy-Linux-one-of-the-best-lightweight-Linux-Distribution-in-2022-1024x579.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/03/BunsenLabs-Linux.jpg
|
||||
[6]: https://www.bunsenlabs.org/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/03/Lubuntu-1024x576.jpg
|
||||
[8]: https://lubuntu.me/
|
||||
[9]: https://www.debugpoint.com/wp-content/uploads/2022/03/Absolute-Linux-1024x640.jpg
|
||||
[10]: https://www.absolutelinux.org/
|
||||
[11]: https://www.debugpoint.com/wp-content/uploads/2022/03/antiX-Linux-1024x640.jpg
|
||||
[12]: https://antixlinux.com/
|
||||
[13]: https://www.debugpoint.com/wp-content/uploads/2022/03/LXLE-Linux-1024x576.jpg
|
||||
[14]: http://www.lxle.net/
|
||||
[15]: https://www.debugpoint.com/2022/01/best-gnome-apps-part-3/
|
||||
[16]: https://www.debugpoint.com/wp-content/uploads/2022/03/Porteus-Linux-1024x576.jpg
|
||||
[17]: http://www.porteus.org/
|
||||
[18]: https://www.debugpoint.com/wp-content/uploads/2022/03/MX-Linux-1024x515.jpg
|
||||
[19]: https://q4os.org/
|
||||
[20]: https://www.debugpoint.com/wp-content/uploads/2022/03/MX-Linux-1-1024x515.jpg
|
||||
[21]: https://mxlinux.org/
|
||||
[22]: https://www.debugpoint.com/tag/top-10-list
|
||||
[23]: https://t.me/debugpoint
|
||||
[24]: https://twitter.com/DebugPoint
|
||||
[25]: https://www.youtube.com/c/debugpoint?sub_confirmation=1
|
||||
[26]: https://facebook.com/DebugPoint
|
@ -0,0 +1,188 @@
|
||||
[#]: subject: "A list of new(ish) command line tools"
|
||||
[#]: via: "https://jvns.ca/blog/2022/04/12/a-list-of-new-ish--command-line-tools/"
|
||||
[#]: author: "Julia Evans https://jvns.ca/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
一个新的命令行工具列表
|
||||
======
|
||||
|
||||
你好!今天我[在 twitter][1] 询问了一些新的命令行工具,比如 `ripgrep` 和 `fd` 以及 `fzf` 和 `exa` 以及 `bat`。
|
||||
|
||||
我收到了一大堆我没有听说过的工具的回复,所以我想我应该在这里列出一个清单。很多人还指出了 [modern-unix][2] 的列表。
|
||||
|
||||
### 标准工具的替代物
|
||||
|
||||
* [ripgrep][3]、[ag][4]、[ack][5] (grep)
|
||||
* [exa][6]、[lsd][7] (ls)
|
||||
* [mosh][8] (ssh)
|
||||
* [bat][9] (cat)
|
||||
* [delta][10] (git 分页器)
|
||||
* [fd][11] (find)
|
||||
* [drill][12]、[dog][13] (dig)
|
||||
* [duf][14] (df)
|
||||
* [dust][15]、ncdu (du)
|
||||
* [pgcli][16] (psql)
|
||||
* [btm][17]、[btop][18]、[glances][19]、[gtop][20]、[zenith][21] (top)
|
||||
* [tldr][22] (类似 man)
|
||||
* [sd][23] (sed)
|
||||
* [difftastic][24] (diff)
|
||||
* mtr (traceroute)
|
||||
* [plocate][25] (locate)
|
||||
* xxd、[hexyl][26] (hexdump)
|
||||
|
||||
|
||||
|
||||
### 新的发明
|
||||
|
||||
这里有一些不完全是替代标准工具的工具:
|
||||
|
||||
* [z][27]、[fasd][28]、[autojump][29]、[zoxide][30] (使查找文件/改变目录更容易的工具)
|
||||
* [broot][31]、[nnn][32]、[ranger][33] (文件管理器)
|
||||
* [direnv][34] (根据当前目录加载环境变量)
|
||||
* [fzf][35]、[peco][36] (“模糊查找器”)
|
||||
* [croc][37] and [magic-wormhole][38] (将文件从一台计算机发送到另一台)
|
||||
* [hyperfine][39] 基准测试
|
||||
* [httpie][40]、[curlie][41]、[xh][42] (用于发出 HTTP 请求)
|
||||
* [entr][43] (当文件改变时运行任意命令)
|
||||
* [asdf][44] (多语言的版本管理器)
|
||||
* [tig][45]、[lazygit][46] (git 的交互界面)
|
||||
* [lazydocker][47] (docker 的交互式界面)
|
||||
* [choose][48] (awk/cut 的基础)
|
||||
* [ctop][49] (容器的 top)
|
||||
* [fuck][50] (自动纠正命令行错误)
|
||||
* [tmate][51] (与朋友分享你的终端)
|
||||
* [lnav][52]、[angle-grinder][53] (管理日志的工具)
|
||||
* [mdp][54]、[glow][55] (在终端显示 markdown 的方法)
|
||||
* pbcopy/pbpaste (用于剪贴板标准输入/标准输出,可能不是“新的”,但被提到了很多。你可以使用 xclip 在 Linux 上做同样的事情。)
|
||||
|
||||
|
||||
|
||||
**JSON/YAML/CSV 工具:**
|
||||
|
||||
* [jq][57] (一个很好的 JSON 处理工具)
|
||||
* [jc][58] (将各种工具的输出转换成 JSON)
|
||||
* [jo][59] (创建 JSON 对象)
|
||||
* [yq][60] (类似 `jq`,但用于 YAML)。还有[另一个 yq][61] 。
|
||||
* [fq][62] (类似 `jq`,但用于二进制)
|
||||
* [htmlq][63] (类似 `jq`,但用于 HTML)
|
||||
* [fx][64] (交互式 json 工具)
|
||||
* [jless][65] (json 分页器)
|
||||
* [xsv][66] (一个用于 csv 文件的命令行工具,来自 burntsushi)
|
||||
* [visidata][67] (“一个用于表格数据的交互式多功能工具”)
|
||||
* [miller][68] (“像 awk/sed/cut/join/sort 一样用于 CSV/TSV/JSON/JSON 行”)
|
||||
|
||||
|
||||
|
||||
**grep 工具:**
|
||||
|
||||
* [pdfgrep][69] (用于 PDF 的 grep)
|
||||
* [gron][70] (使 JSON 可 grep)
|
||||
* [ripgrep-all][71] (ripgrep,但包括 PDF、zip、ebooks 等)
|
||||
|
||||
|
||||
|
||||
### 不太新的工具
|
||||
|
||||
下面是一些不那么新的工具,人们提到的不那么知名的工具:
|
||||
|
||||
* pv (“pipe viewer”, 给你一个管道的进度条)
|
||||
* vidir (来自 [moreutils][72],让你在 vim 中批量重命名/删除文件)
|
||||
* sponge、ts、parallel (也来自 moreutils)
|
||||
|
||||
|
||||
|
||||
### 我的一些最爱
|
||||
|
||||
我最喜欢的是 `entr`、`ripgrep`、`git-delta`、`httpie`、`plocate`和 `jq`,这些都是我已经使用的。
|
||||
|
||||
我有兴趣尝试 `direnv`、`btm`、`z`、`xsv` 和 `duf`,但我认为我了解到的最令人兴奋的工具是 `vidir`。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://jvns.ca/blog/2022/04/12/a-list-of-new-ish--command-line-tools/
|
||||
|
||||
作者:[Julia Evans][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://jvns.ca/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://twitter.com/b0rk/status/1513903221466664962
|
||||
[2]: https://github.com/ibraheemdev/modern-unix
|
||||
[3]: https://github.com/BurntSushi/ripgrep/
|
||||
[4]: https://github.com/ggreer/the_silver_searcher
|
||||
[5]: https://github.com/beyondgrep/ack3
|
||||
[6]: https://github.com/ogham/exa
|
||||
[7]: https://github.com/Peltoche/lsd
|
||||
[8]: https://mosh.org/
|
||||
[9]: https://github.com/sharkdp/bat
|
||||
[10]: https://github.com/dandavison/delta
|
||||
[11]: https://github.com/sharkdp/fd
|
||||
[12]: https://www.nlnetlabs.nl/projects/ldns/about/
|
||||
[13]: https://github.com/ogham/dog
|
||||
[14]: https://github.com/muesli/duf
|
||||
[15]: https://github.com/bootandy/dust
|
||||
[16]: https://www.pgcli.com/
|
||||
[17]: https://github.com/ClementTsang/bottom
|
||||
[18]: https://github.com/aristocratos/btop
|
||||
[19]: https://github.com/nicolargo/glances
|
||||
[20]: https://github.com/aksakalli/gtop
|
||||
[21]: https://github.com/bvaisvil/zenith
|
||||
[22]: https://tldr.sh/
|
||||
[23]: https://github.com/chmln/sd
|
||||
[24]: https://github.com/Wilfred/difftastic
|
||||
[25]: https://plocate.sesse.net/
|
||||
[26]: https://github.com/sharkdp/hexyl
|
||||
[27]: https://github.com/rupa/z
|
||||
[28]: https://github.com/clvv/fasd
|
||||
[29]: https://github.com/wting/autojump
|
||||
[30]: https://github.com/ajeetdsouza/zoxide
|
||||
[31]: https://github.com/Canop/broot
|
||||
[32]: https://github.com/jarun/nnn
|
||||
[33]: https://github.com/ranger/ranger
|
||||
[34]: https://github.com/direnv/direnv
|
||||
[35]: https://github.com/junegunn/fzf
|
||||
[36]: https://github.com/peco/peco
|
||||
[37]: https://github.com/schollz/croc
|
||||
[38]: https://github.com/magic-wormhole/magic-wormhole
|
||||
[39]: https://github.com/sharkdp/hyperfine
|
||||
[40]: https://httpie.io/
|
||||
[41]: https://github.com/rs/curlie
|
||||
[42]: https://github.com/ducaale/xh
|
||||
[43]: https://github.com/eradman/entr
|
||||
[44]: https://github.com/asdf-vm/asdf
|
||||
[45]: https://github.com/jonas/tig
|
||||
[46]: https://github.com/jesseduffield/lazygit
|
||||
[47]: https://github.com/jesseduffield/lazydocker
|
||||
[48]: https://github.com/theryangeary/choose
|
||||
[49]: https://github.com/bcicen/ctop
|
||||
[50]: https://github.com/nvbn/thefuck
|
||||
[51]: https://tmate.io/
|
||||
[52]: https://github.com/tstack/lnav
|
||||
[53]: https://github.com/rcoh/angle-grinder
|
||||
[54]: https://github.com/visit1985/mdp
|
||||
[55]: https://github.com/charmbracelet/glow
|
||||
[56]: https://stackoverflow.com/questions/5130968/how-can-i-copy-the-output-of-a-command-directly-into-my-clipboard/41843618#41843618
|
||||
[57]: https://stedolan.github.io/jq/
|
||||
[58]: https://github.com/kellyjonbrazil/jc
|
||||
[59]: https://github.com/jpmens/jo
|
||||
[60]: https://github.com/mikefarah/yq
|
||||
[61]: https://github.com/kislyuk/yq
|
||||
[62]: https://github.com/wader/fq
|
||||
[63]: https://github.com/mgdm/htmlq
|
||||
[64]: https://github.com/antonmedv/fx
|
||||
[65]: https://github.com/PaulJuliusMartinez/jless
|
||||
[66]: https://github.com/BurntSushi/xsv
|
||||
[67]: https://www.visidata.org/
|
||||
[68]: https://github.com/johnkerl/miller
|
||||
[69]: https://pdfgrep.org/
|
||||
[70]: https://github.com/tomnomnom/gron
|
||||
[71]: https://github.com/phiresky/ripgrep-all
|
||||
[72]: https://joeyh.name/code/moreutils
|
@ -0,0 +1,116 @@
|
||||
[#]: subject: "Meet Lite XL: A Lightweight, Open-Source Text Editor for Linux Users"
|
||||
[#]: via: "https://itsfoss.com/lite-xl/"
|
||||
[#]: author: "Marco Carmona https://itsfoss.com/author/marco/"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
认识一下 Lite XL:为 Linux 用户提供的轻量级、开源的文本编辑器
|
||||
======
|
||||
|
||||
**简介:** _你是否在寻找一个新的_文本编辑器_替代品?你应该试试这个轻量级的、_简单的_、快速的、功能丰富的、可扩展性极强的编辑器_。
|
||||
|
||||
当然,有很多文本编辑器或代码编辑器可以使用。一些流行的包括 Eclipse、[Visual Studio Code][1]、[PyCharm][2]、[Atom][3]、[IntelliJ][4],以及 [Sublime Text][5]。
|
||||
|
||||
但是你想尝试一些有趣的东西,完全专注于给你一个最小的体验吗?
|
||||
|
||||
认识一下 _**Lite XL**_ 编辑器。
|
||||
|
||||
说实话,在上周之前我对它一无所知。但是,它成功地以其**极简主义的设计**和它**在编码时的速度**让我吃惊,但最重要的事实是它与 Visual Studio Code 相似。
|
||||
|
||||
所以,在开始之前,让我告诉你,如果你是一个 [Visual Studio Code 粉丝][6],你绝对应该试试 _**Lite XL**_。它可能不是绝对的替代品,而是类似于使用场景的精简版。
|
||||
|
||||
![Showing how Lite XL looks][7]
|
||||
|
||||
### Lite XL:用 Lua 编写的轻量级文本编辑器
|
||||
|
||||
Lite XL 是一个有趣的用 Lua 编写的开源文本编辑器(特别是为建立轻量级应用而定制)。
|
||||
|
||||
它也可用于 Windows、Linux 和 macOS。但是,在所有可用的[现代文本编辑器][8]中,为什么是 Lite XL?
|
||||
|
||||
![Lite XL Customize Configuration][9]
|
||||
|
||||
通常情况下,我们并不关心文本编辑器在大多数时候会消耗我们系统的资源。然而,在创建 bash、python 或任何其他类型的脚本时,你会依赖文本编辑器,而它的资源效率越高越好。
|
||||
|
||||
当然,文本编辑器并不像其他一些应用那样对资源要求很高。但是,如果这对你很重要的话,我观察到的情况是这样的:
|
||||
|
||||
Lite XL 只使用了 **3MB** 的磁盘,并消耗了大约 **20MB** 内存,而 Visual Studio Code 使用将近 550MB 内存。
|
||||
|
||||
**你能看到这些类似的编辑器之间的这种奇妙的差别吗?**
|
||||
|
||||
不仅仅是资源使用量,它也是高度可定制的。
|
||||
|
||||
请注意,在不同的系统配置下,资源使用统计数字会有所不同。
|
||||
|
||||
### Lite XL的特点
|
||||
|
||||
![][10]
|
||||
|
||||
As per the official information available, some of its most popular features include:
|
||||
|
||||
* **跨平台:** 它目前可以在 Windows、Linux 和 macOS 上使用。
|
||||
* **轻量:** 正如我们之前所描述的,它的使用量几乎没有超过 10MB 的内存。
|
||||
* **可扩展:** 作为一个最小化的产品,并不意味着不能定制。Lite XL 可以通过一些可用的插件来扩展其功能,例如,[类似 VSC 的智能提示][11]。
|
||||
* **多光标编辑:** 在 Lite XL 中,你可以使用多个光标进行编辑,这听起来很美妙。
|
||||
* **集成的终端:** 像 Visual Studio Code 一样,Lite XL 实现了它的终端。
|
||||
* 支持高DPI显示。
|
||||
* 可使用额外的颜色主题。
|
||||
* 支持硬件加速渲染。
|
||||
* 支持硬件加速渲染。
|
||||
|
||||
|
||||
|
||||
### 如何在 Linux 中安装 Lite XL
|
||||
|
||||
Lite XL 为 Linux 发行版提供了一个 AppImage 文件。你可以按照我们的 [AppImage 指南][12]来开始使用。
|
||||
|
||||
你可以在其 [GitHub 仓库][13]中找到 AppImage 文件。
|
||||
|
||||
当你前往其 GitHub 发布区,直接进入 Assets 并下载 _**LiteXL_x86_64.Appimage**_ 文件。
|
||||
|
||||
![Downloading Appimage file][14]
|
||||
|
||||
AppImage 文件将被下载到你的下载目录中,因此,在双击该文件之前,请验证它是否允许作为程序执行。
|
||||
|
||||
![Verifying execution permissions][15]
|
||||
|
||||
这就好了! 现在你可以双击该文件,开始在你的系统中使用 _***Lite XL***_。
|
||||
|
||||
[Lite XL][16]
|
||||
|
||||
如果你对探索 Lite XL 感兴趣,你可以参与其 [GitHub 仓库][13],访问官方网站,或加入其 [Discord 社区][17]。
|
||||
|
||||
_你喜欢用什么来编辑文本和代码?你是否专注使用轻量级的程序,或者与你的使用情况无关?请在下面的评论中告诉我你的想法。_
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/lite-xl/
|
||||
|
||||
作者:[Marco Carmona][a]
|
||||
选题:[lujun9972][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/author/marco/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://itsfoss.com/install-visual-studio-code-ubuntu/
|
||||
[2]: https://itsfoss.com/install-pycharm-ubuntu/
|
||||
[3]: https://itsfoss.com/install-atom-ubuntu/
|
||||
[4]: https://itsfoss.com/install-intellij-ubuntu-linux/
|
||||
[5]: https://itsfoss.com/sublime-text-3-linux/
|
||||
[6]: https://itsfoss.com/visual-studio-code-vs-atom/
|
||||
[7]: https://itsfoss.com/wp-content/uploads/2022/04/lite-xl-editor-screenshot.png
|
||||
[8]: https://itsfoss.com/best-modern-open-source-code-editors-for-linux/
|
||||
[9]: https://itsfoss.com/wp-content/uploads/2022/04/lite-xl-screenshot-2.png
|
||||
[10]: https://itsfoss.com/wp-content/uploads/2022/04/lite-xl-screnshot-1.png
|
||||
[11]: https://github.com/lite-xl/lite-xl-lsp
|
||||
[12]: https://itsfoss.com/use-appimage-linux/
|
||||
[13]: https://github.com/lite-xl/lite-xl
|
||||
[14]: https://itsfoss.com/wp-content/uploads/2022/04/Downloading_Appimage_file-800x447.png
|
||||
[15]: https://itsfoss.com/wp-content/uploads/2022/04/Verifying_execution_permissions-800x535.png
|
||||
[16]: https://lite-xl.com/
|
||||
[17]: https://discord.gg/RWzqC3nx7K
|
Loading…
Reference in New Issue
Block a user