mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-31 23:30:11 +08:00
Merge remote-tracking branch 'LCTT/master'
This commit is contained in:
commit
93ac68d850
@ -0,0 +1,220 @@
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "mr-ping"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-12125-1.html"
|
||||
[#]: subject: "Different Ways To Update Linux Kernel For Ubuntu"
|
||||
[#]: via: "https://www.ostechnix.com/different-ways-to-update-linux-kernel-for-ubuntu/"
|
||||
[#]: author: "SK https://www.ostechnix.com/author/sk/"
|
||||
|
||||
升级 Ubuntu Linux 内核的几种不同方法
|
||||
======
|
||||
|
||||
![](https://www.ostechnix.com/wp-content/uploads/2019/01/ubuntu-linux-kernel-720x340.png)
|
||||
|
||||
这个指南里介绍了 7 种为 Ubuntu 升级 Linux 内核的不同方法。这 7 种方法里,有 5 种需要重启系统来使新内核生效,其他两种则不用。升级之前,**强烈建议你将重要数据进行备份!** 这里提到的所有方法只在 Ubuntu 中测试过。我们并不确定这些方法是不是也能适用于其他 Ubuntu 的特色发行版(如: Xubuntu)和衍生发行版(如:Linux Mint)。
|
||||
|
||||
### 第一部分:需要重启的内核升级
|
||||
|
||||
以下方法需要你重启系统以便新的内核生效。以下所有方法都建议在个人系统或测试系统中进行。重要的事儿再说一遍,请备份好你 Ubuntu 中的重要数据、配置文件和其他重要的东西。
|
||||
|
||||
#### 方法 1 - 使用 dpkg 升级 Linux 内核(手动方式)
|
||||
|
||||
这个方法可以帮助你从 [kernel.ubuntu.com][1] 网站手动下载可用的最新 Linux 内核。如果你打算安装最新版(而不是稳定版或者正式发布版),那这种方法对你会很有用。从以上链接下载 Linux 内核版本。编写这个指南的时候,最新的可用版本是 **5.0-rc1**,最新的稳定版是 **v4.20**。
|
||||
|
||||
![][3]
|
||||
|
||||
点击你所选择的 Linux 内核版本链接,找到你对应的架构(“Build for XXX”)的那部分。然后下载符合以下格式的两个文件(其中 X.Y.Z 是最高版本号):
|
||||
|
||||
1. linux-image-*X.Y.Z*-generic-*.deb
|
||||
2. linux-modules-X.Y.Z*-generic-*.deb
|
||||
|
||||
在终端中改变到文件所在的目录,然后执行此命令手动安装内核:
|
||||
|
||||
```
|
||||
$ sudo dpkg --install *.deb
|
||||
```
|
||||
|
||||
重启系统,使用新内核:
|
||||
|
||||
```
|
||||
$ sudo reboot
|
||||
```
|
||||
|
||||
检查是否如你所愿:
|
||||
|
||||
```
|
||||
$ uname -r
|
||||
```
|
||||
|
||||
对于分步的说明,请查看下列链接中对应的部分。
|
||||
|
||||
+ [在基于 RPM 和 DEB 的系统中安装 Linux 内核 4.15](https://www.ostechnix.com/install-linux-kernel-4-15-rpm-deb-based-systems/)
|
||||
|
||||
以上的指南是针对的是 4.15 版本,不过安装最新版本的所有的步骤都是一样的。
|
||||
|
||||
**优势:** 不必联网(你可以从任何系统中下载 Linux 内核来使用)
|
||||
|
||||
**缺点:** 手动更新,需要重启系统。
|
||||
|
||||
#### 方法 2 - 用 apt-get 来升级 Linux 内核(推荐方法)
|
||||
|
||||
这是在类 Ubuntu 系统中升级 Linux 内核的推荐方法。不同于上一个方法,这种方法会从 Ubuntu 官方仓库下载、安装内核版本,而不是从 **kernel.ubuntu.com**网站。
|
||||
|
||||
要升级包括内核的整个系统,只需要执行:
|
||||
|
||||
```
|
||||
$ sudo apt-get update
|
||||
$ sudo apt-get upgrade
|
||||
```
|
||||
|
||||
如果只希望升级内核,运行:
|
||||
|
||||
```
|
||||
$ sudo apt-get upgrade linux-image-generic
|
||||
```
|
||||
|
||||
**优势:** 简单。推荐方法。
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
从官方库中升级内核是最接近开箱即用的方法,并且不会出什么问题。如果是生产环境的系统,这是最为推荐的升级 Linux 内核的方法。
|
||||
|
||||
方法 1 和方法 2 都需要用户去介入到升级 Linux 内核的过程中。而下边的方法(3、 4、 5)则几乎是全自动的。
|
||||
|
||||
#### 方法 3 - 使用 Ukuu 升级 Linux 内核
|
||||
|
||||
**Ukuu**是一个 Gtk GUI 和命令行工具,它可以从 kernel.ubuntu.com 下载最新的 Linux 主线内核,并自动安装到你的 Ubuntu 桌面版和服务器版中。Ukku 不仅简化了手动下载和安装新内核的过程,同时也会帮助你安全地移除旧的和不再需要的内核。更多细节可以参照以下指南。
|
||||
|
||||
+ [Ukuu:在 Ubuntu 系统中安装和升级 Linux 内核的简单方法](https://www.ostechnix.com/ukuu-an-easy-way-to-install-and-upgrade-linux-kernel-in-ubuntu-based-systems/)
|
||||
|
||||
**优势:** 易于安装使用。自动安装主线内核。
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
#### 方法 4 - 使用 UKTools 升级 Linux 内核
|
||||
|
||||
跟 Ukuu 差不多,**UKTools** 也会从 kernel.ubuntu.com 网站获取最新的稳定内核并且自动安装到 Ubuntu 以及类似于 Linux Mint 的延伸发行版中。关于UKTools的更多详情,请参见下面的链接。
|
||||
|
||||
+ [UKTools:升级Ubuntu及其衍生产品中的最新Linux内核](https://www.ostechnix.com/uktools-upgrade-latest-linux-kernel-in-ubuntu-and-derivatives/)
|
||||
|
||||
**优势:** 简单,自动。
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
#### 方法 5 - 使用 Linux 内核实用程序更新 Linux 内核
|
||||
|
||||
**Linux 内核实用程序**是目前另一个用于升级类 Ubuntu 系统 Linux 内核的程序。实质上,它是一个由一系列 Bash 脚本构成的合集,用于编译并且可以选择性地为 Debian(LCTT 译注:Ubuntu 的上游发行版)及其衍生发行版升级内核。它包含三个实用程序,一个用于手动编译、安装来自于 [http://www.kernel.org][4] 网站的源码内核,另一个用于安装来自 <https://kernel.ubuntu.com> 网站的预编译的内核,第三个脚本用于移除旧内核。更多细节请浏览以下链接。
|
||||
|
||||
+ [Linux 内核实用程序:编译和更新最新的 Linux 内核的脚本,适用于 Debian 及其衍生产品](https://www.ostechnix.com/linux-kernel-utilities-scripts-compile-update-latest-linux-kernel-debian-derivatives/)
|
||||
|
||||
**优势:** 简单,自动。
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
### 第二部分:无需重启的内核升级
|
||||
|
||||
我之前说过,上边所有的方法都需要你重启服务器(LCTT 译注:也可以是桌面版)来启用新内核。如果是个人系统或者测试系统,可以这么办。但对于无法停机的生产环境系统该怎么办呢?一点问题没有,这时候<ruby>实时补丁<rt>livepatching</rt></ruby>就派上用场了。
|
||||
|
||||
**实时补丁**(或者叫热补丁)允许你在不重启的情况下安装 Linux 更新或补丁,使你的服务器处于最新的安全级别。这对 web 主机、游戏服务器这类需要不间断在线的服务器来说是很有价值的。事实上,任何情况下,服务器都应该保持在不间断运行的状态下。由于 Linux 供应商只会在出于修复安全漏洞的目的下维护补丁,所以如果安全性是你最关注的问题时,这种方式再适合不过了。
|
||||
|
||||
以下两种方法不需要重启,对于生产环境和执行关键任务的 Ubuntu 服务器的 Linux 内核更新非常有用。
|
||||
|
||||
#### 方法 6 – 使用 Canonical 实时补丁服务来更新 Linux 内核
|
||||
|
||||
![][5]
|
||||
|
||||
[Canonical 实时补丁服务][6]可以在不需要重启 Ubuntu 系统的情况下自动应用内核更新、补丁和安全补丁。它可以减少Ubuntu系统的停机时间,并保证系统的安全。Canonical 实时补丁服务可以在安装过程当中或安装之后进行设置。如果你使用的是 Ubuntu 桌面版,软件更新器会自动检查内核补丁的更新,并通知你。在基于控制台的系统中,则需要你定期运行 `apt-get update` 命令来进行升级。由于需要你手动运行 `apt-get upgrade` 命令它才会安装内核的安全补丁,所以算是半自动的。
|
||||
|
||||
实时补丁对三个及以下系统免费,如果多于三个,你需要升级成名为 **Ubuntu Advantage** 的企业支持方案套件。这个套件包括 **Kernel 实时补丁**及以下服务:
|
||||
|
||||
* 扩展安全维护 – Ubuntu 生命周期后的重要安全更新
|
||||
* Landscape – 针对大规模使用 Ubuntu 的系统管理工具
|
||||
* 知识库 – 由 Ubuntu 专家撰写的私人文章和教程
|
||||
* 电话和网站支持
|
||||
|
||||
**价格**
|
||||
|
||||
Ubuntu Advantage 包含三种付费计划,即基本计划、标准计划和高级计划。最基础的计划(基本计划)从 **单物理节点 225 美元/年**和**单VPS 75美元/年**开始计价。对于 Ubuntu 服务器版和桌面版看上去没有按月订阅。你可以在[此处][7]浏览所有计划的细节信息。
|
||||
|
||||
**优势:** 简单。半自动化。无需重启。支持三个免费系统。
|
||||
|
||||
**缺点:** 4 个以上主机的话非常昂贵。没有补丁回滚。
|
||||
|
||||
##### 开启 Canonical 实时补丁
|
||||
|
||||
如果你想在安装后设置实时补丁服务,依照以下方法逐步执行:
|
||||
|
||||
从 [https://auth.livepatch.canonical.com/][8] 获取一个密钥。
|
||||
|
||||
```
|
||||
$ sudo snap install canonical-livepatch
|
||||
$ sudo canonical-livepatch enable your-key
|
||||
```
|
||||
|
||||
#### 方法 7 - 使用 KernelCare 升级 Linux 内核
|
||||
|
||||
![][9]
|
||||
|
||||
[KernelCare][10] 是最新的实时补丁方案。它是 [CloudLinux][11] 推出的产品。KernelCare 可以运行在 Ubuntu 和其他的 Linux 发行版中。它每四个小时检查一遍补丁的发布,并在无需确认的情况下安装它们。如果更新后存在问题,可以将补丁进行回滚。
|
||||
|
||||
**价格**
|
||||
|
||||
费用,每台服务器:**4 美元/月**,**45 美元/年**。
|
||||
|
||||
跟 Ubuntu 实时补丁相比,KernelCare 看起来非常便宜、实惠。好的方面在于**也可以按月订阅**。另一个前者不具备的功能是支持其他 Linux 发行版,如 Red Hat、CentOS、Debian、Oracle Linux、Amazon Linux 以及 OpenVZ、Proxmox 等虚拟化平台。
|
||||
|
||||
你可以在[此处][12]了解 KernelCare 的所有特性和简介,以及所有的付费计划的细节。
|
||||
|
||||
**优势:** 简单。全自动化。覆盖范围更广的操作系统。补丁回滚。无需重启。对非营利组织提供免费许可。价格低廉。
|
||||
|
||||
**缺点:** 不是免费的(除了30天的试用期)。
|
||||
|
||||
##### 开启 KernelCare 服务
|
||||
|
||||
在 [https://cloudlinux.com/kernelcare-free-trial5][14] 获取一个 30 天免费试用密钥。
|
||||
|
||||
执行以下命令开启 KernelCare 并注册秘钥。
|
||||
|
||||
```
|
||||
$ sudo wget -qq -O - https://repo.cloudlinux.com/kernelcare/kernelcare_install.sh | bash
|
||||
$ sudo /usr/bin/kcarectl --register KEY
|
||||
```
|
||||
|
||||
如果你正在寻找一种经济实惠且可靠的商业服务来保持 Linux 服务器上的 Linux 内核更新,那么 KernelCare 是个不错的选择。
|
||||
|
||||
*由来自 Cloud Linux 的技术撰稿人和内容作者 Paul A. Jacobs 提供。*
|
||||
|
||||
到此,希望这边文章能对你有所帮助。如果你觉得还有其他的工具和方法需要列在这里,可以在留言区给我们留言。我会根据反馈检查和更新这篇指南的。
|
||||
|
||||
接下来会有更多好东西给大家呈现,敬请期待。
|
||||
|
||||
Cheers!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.ostechnix.com/different-ways-to-update-linux-kernel-for-ubuntu/
|
||||
|
||||
作者:[SK][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[mr-ping](https://github.com/mr-ping)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.ostechnix.com/author/sk/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: http://kernel.ubuntu.com/~kernel-ppa/mainline/
|
||||
[2]: data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7
|
||||
[3]: http://www.ostechnix.com/wp-content/uploads/2019/01/Ubuntu-mainline-kernel.png
|
||||
[4]: http://www.kernel.org
|
||||
[5]: http://www.ostechnix.com/wp-content/uploads/2019/01/Livepatch.png
|
||||
[6]: https://www.ubuntu.com/livepatch
|
||||
[7]: https://www.ubuntu.com/support/plans-and-pricing
|
||||
[8]: https://auth.livepatch.canonical.com/
|
||||
[9]: http://www.ostechnix.com/wp-content/uploads/2019/01/KernelCare.png
|
||||
[10]: https://www.kernelcare.com/
|
||||
[11]: https://www.cloudlinux.com/
|
||||
[12]: https://www.kernelcare.com/update-kernel-linux/
|
||||
[13]: https://www.kernelcare.com/pricing/
|
||||
[14]: https://cloudlinux.com/kernelcare-free-trial5
|
@ -1,26 +1,26 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (geekpi)
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-12124-1.html)
|
||||
[#]: subject: (Here’s How to Find Out Which Desktop Environment You are Using)
|
||||
[#]: via: (https://itsfoss.com/find-desktop-environment/)
|
||||
[#]: author: (Abhishek Prakash https://itsfoss.com/author/abhishek/)
|
||||
|
||||
这是找出你所使用的桌面环境的方法
|
||||
如何找出你所使用的桌面环境
|
||||
======
|
||||
|
||||
如果你是 Linux 新用户,并在一个 Linux 论坛中寻求帮助,那么你可能会被问以下问题:
|
||||
|
||||
_**“你使用的是哪个桌面环境?”**_
|
||||
> “你使用的是哪个桌面环境?”
|
||||
|
||||
你知道什么是桌面环境,但你如何知道你使用的是哪一个?我会告诉你如何找到它。我将首先展示命令行方法,因为这适用于[各种 Linux 发行版][1]。我还将展示如何通过图形方式获得。
|
||||
你知道什么是<ruby>桌面环境<rt>desktop environment</rt></ruby>(DE),但你如何知道你使用的是哪一个?我会告诉你如何找到它。我将首先展示命令行方法,因为这适用于[各种 Linux 发行版][1]。我还将展示如何通过图形方式获得。
|
||||
|
||||
### 检查你使用的是哪个桌面环境
|
||||
|
||||
![][2]
|
||||
|
||||
你可以[在 Linux 中使用 echo 命令][3]在终端中显示 XDG_CURRENT_DESKTOP 变量的值。
|
||||
你可以[在 Linux 中使用 echo 命令][3]在终端中显示 `XDG_CURRENT_DESKTOP` 变量的值。
|
||||
|
||||
打开终端并复制粘贴此命令:
|
||||
|
||||
@ -37,15 +37,15 @@ ubuntu:GNOME
|
||||
|
||||
尽管此命令可以快速告诉你正在使用哪个桌面环境,但它不会提供任何其他信息。
|
||||
|
||||
在某些情况下,了解桌面环境版本(也称为 DE)可能很重要。软件的每个新版本都会带来新功能或删除某些功能。[GNOME 3.36][6] 引入了“请勿打扰”选项,以关闭所有桌面通知。
|
||||
在某些情况下,了解桌面环境版本可能很重要。软件的每个新版本都会带来新功能或删除某些功能。[GNOME 3.36][6] 引入了“请勿打扰”选项,以关闭所有桌面通知。
|
||||
|
||||
假设你了解了此新的“请勿打扰”功能。你确认自己正在使用 GNOME,但是在 GNOME 桌面上看不到此选项。如果你可以检查系统上已安装的 GNOME 桌面版本,那么这会很清楚。
|
||||
假设你了解了这个新的“请勿打扰”功能。你确认自己正在使用 GNOME,但是在 GNOME 桌面上看不到此选项。如果你可以检查系统上已安装的 GNOME 桌面版本,那么这会很清楚。
|
||||
|
||||
我将先向你展示命令检查桌面环境版本,因为你可以在任何运行桌面环境的 Linux 中使用它。
|
||||
|
||||
### 如何获取桌面环境版本
|
||||
|
||||
与获取桌面环境的名称不同。获取其版本号并不直接,因为它没有标准的命令或环境变量可以提供此信息。
|
||||
与获取桌面环境的名称不同。获取其版本号的方法并不直接,因为它没有标准的命令或环境变量可以提供此信息。
|
||||
|
||||
在 Linux 中获取桌面环境信息的一种方法是使用 [Screenfetch][7] 之类的工具。此[命令行工具以 ascii 格式显示 Linux 发行版的 logo][8] 以及一些基本的系统信息。桌面环境版本就是其中之一。
|
||||
|
||||
@ -57,7 +57,7 @@ sudo apt install screenfetch
|
||||
|
||||
对于其他 Linux 发行版,请使用系统的软件包管理器来安装此程序。
|
||||
|
||||
安装后,只需在终端中输入 screenfetch 即可,它应该显示桌面环境版本以及其他系统信息。
|
||||
安装后,只需在终端中输入 `screenfetch` 即可,它应该显示桌面环境版本以及其他系统信息。
|
||||
|
||||
![Check Desktop Environment Version][10]
|
||||
|
||||
@ -67,7 +67,7 @@ sudo apt install screenfetch
|
||||
|
||||
### 使用 GUI 检查桌面环境版本
|
||||
|
||||
几乎所有桌面环境在其 “Settings-About” 部分中都提供了基本的系统详细信息。
|
||||
几乎所有桌面环境在其 “Settings”->“About” 部分中都提供了基本的系统详细信息。
|
||||
|
||||
一个主要问题是,大多数桌面环境看起来都不同,因此我无法展示每个桌面环境的确切步骤。我将展示 GNOME 的,让你在桌面上发现它。
|
||||
|
||||
@ -90,7 +90,7 @@ via: https://itsfoss.com/find-desktop-environment/
|
||||
作者:[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/) 荣誉推出
|
||||
|
@ -0,0 +1,116 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (My 10 guiding principles for open source community management)
|
||||
[#]: via: (https://opensource.com/article/20/4/open-source-community-management)
|
||||
[#]: author: (Florian Effenberger https://opensource.com/users/floeff)
|
||||
|
||||
My 10 guiding principles for open source community management
|
||||
======
|
||||
It's not just about subject matter expertise; leadership in the open
|
||||
source world requires special skills and processes.
|
||||
![community team brainstorming ideas][1]
|
||||
|
||||
Many activities these days, be they sports, social work, arts or free and open source software, are organized in some sort of community. If backed by a respective legal entity, this not only helps with getting donations and entering contracts but also puts statutes and rules in place that establish the values and ideals all contributors share and abide by.
|
||||
|
||||
Inside these communities, there can be various roles. Some of them have formal requirements and annual or biannual elections, e.g., the board of directors or the supervisory board; others exist ad hoc within dynamically grown groups and can change frequently. Either of those are ideally composed of experienced and enthusiastic community members who take leadership and responsibility.
|
||||
|
||||
Many regular contributors will, therefore, eventually face the question of whether to accept a certain role. Based on my experience with being a board member of the former German associations [OpenOffice.org][2] Deutschland e.V. and Freies Office Deutschland e.V., previous chairman and current executive director of [The Document Foundation][3] and founding member of the Munich [Open-Source-Treffen e.V.][4], I would like to share some personal insights on the topic.
|
||||
|
||||
These views are purely my own, and your mileage might vary. It is likely that others had both similar and different experiences, so I'm looking forward to any feedback and thoughts you might have.
|
||||
|
||||
### 1\. Cooperation
|
||||
|
||||
A community is all about cooperation. Boards, groups, and bodies are no different in this regard. Usually, you don't know who will co-serve on an elected committee with you until shortly before you start your duty. Therefore, it is important to cooperate openly with your new colleagues in a transparent, trustworthy, and effective way, within the committee as well as the larger community.
|
||||
|
||||
Sharing a common understanding of responsibilities and duties, and even more importantly, of your goals, visions, and plans can help a lot. It's not necessary for these to all be totally aligned in the first place, as long as there are consensus and compromise to help you identify goals that benefit the community and their objectives at large. In a vivid and diverse community, several goals can often be pursued at once, as most won't be mutually exclusive or otherwise prohibitive.
|
||||
|
||||
And then let's not forget one thing: the fun! Be proud that you have been entrusted by your peers to drive the community and its projects toward a bright future. Be proud that you can help steer the ship and shape the soul of something that is important to you. As is often the case in life, cooperating and working together with others is key to success. Joining forces is not only easier but also much more fun than working alone.
|
||||
|
||||
### 2\. Commitment
|
||||
|
||||
Taking over a role is something that can and should make you proud. See this as something you have been entrusted with for a certain amount of time because your contributions have been recognized by the community as extraordinary and remarkable. You acted in a visible and trustworthy fashion, and people credit you with leadership skills.
|
||||
|
||||
Depending on the role you take, the honor often comes with a fair amount of new responsibility beyond what you already do, and it might involve subjects yet unknown to you. In other words: Be ready to put in some time and effort.
|
||||
|
||||
How much time such a commitment takes obviously depends on multiple factors: what specific role you take, how many contributors you have to coordinate with, how large your organization is, and of course, what kind of projects you run. [In one of its annual reports][5], board members of The Document Foundation explained that every year "they each donate 15 to 20 days of activity to TDF for Board duties in addition to other volunteering" and the members of its membership committee donate "between 10 and 15 days of activity."
|
||||
|
||||
### 3\. Variety
|
||||
|
||||
Should you be elected into an organizations' formal body, you will see yourself responsible for representing the entity from a marketing perspective, but also from a legal and organizational point of view. Other than the more glamorous parts, these duties often also entail regular meetings, annual budget planning and reserve building, tax filings and annual activity reports, team management, trademark and copyright handling, planning and overseeing tenders, and all sorts of expected and unexpected legal matters and fostering liaisons with other entities, all of which are rather unglamorous tasks rarely seen by the general public.
|
||||
|
||||
That requires the willingness to learn in a variety of areas and for having a rather high tolerance for frustration. Luckily, most of the groups I know are composed of members with different skills, so it's likely someone is either already experienced in or willing to learn one or more of the respective areas. Looking at The Document Foundation's [rules of procedure][6] for the board, a total of 13 different areas of oversight can be identified, each one staffed with one or more volunteers, matched to their area of interest.
|
||||
|
||||
### 4\. Delegation
|
||||
|
||||
Handling all the work alone as a pure volunteer will sooner or later become an impossible task and, unless you have magical superpowers, it's strongly advisable to share these with other seat holders, volunteers, and, if they exist, staff and external professionals. Often, growing organizational demands luckily come together with the financial growth of the entity, which makes paying professionals for certain tasks quite feasible and sensible. Accounting, administration, and legal advice are prime examples of things to outsource (unless that's the service you already provide, of course).
|
||||
|
||||
If you oversee a large part of the organization, you primarily need to focus on strategy and the mission at large, so it is advisable to delegate many tasks to others. Remember, the community has entrusted you to steer the ship, to oversee the big picture; don't bother yourself with every little detail and micromanagement, but get enough insight to oversee those you task and trust that they do a good job.
|
||||
|
||||
### 5\. Responsibility
|
||||
|
||||
In the end, however, it still is the ultimate and shared responsibility of all representatives to oversee and coordinate the work, ensure all duties are fulfilled, and, especially for board members, take care that all legal obligations are met. Remember, donors trust you to make good use of their money, so you have a huge responsibility.
|
||||
|
||||
In nearly all legislations, there exist numerous rules and regulations you are bound by, and the unfortunate tendency is often to make things more complicated instead of relaxing them.
|
||||
|
||||
In case something goes wrong, those most exposed are first in line to be confronted with that, both from a social and legal point of view.
|
||||
|
||||
### 6\. Social
|
||||
|
||||
Depending on the size of the organization and your role, you might not only have responsibility for tasks and projects, but also for a paid team. Keep in mind that, for many, their economic situation depends on the success of your organization. Job security and a positive work environment are important factors to keep a happy and dedicated team.
|
||||
|
||||
Gaining the skills and finding the time as a pure volunteer to oversee a large full-time team is demanding. Interacting by talking, listening, and being open helps a lot for both your team and the organization. In many organizations, the paid team is there to serve your community, to drive forward the success of the project, to take away annoying administrative tasks from you, and to work on tasks that support and enable your contributors.
|
||||
|
||||
Working at charities can be a bit different from companies. Given most of your income consists of donor's money, you have less monetary flexibility than commercial employers. However, you provide a far superior experience than many traditional businesses. Use that as your advantage—your team does something for the good cause, can work with people around the world, can really make a difference, and at the same time make a living out of what they love. Communicate frequently, and don't forget to laud people if they do a good job, especially in remote working environments.
|
||||
|
||||
### 7\. Diversity
|
||||
|
||||
Crucial and essential is that representatives reflect the diversity of the community—different genders, religions, languages, cultures, backgrounds, and experiences add an incredibly exciting variety that you should aim hard to achieve in any board, committee, and group. While this can turn out to be challenging in the beginning, it for sure will enrich your community in ways you never dared to dream of before.
|
||||
|
||||
This diversity is one of the most important and exciting assets a larger community offers; you'll soon learn how it widens the view, helps you to question your own thoughts and positions, and contributes greatly to your overall efforts. If you run an open source community, do exactly as the name suggests—be open, be passionate, and try to get to the bottom of things!
|
||||
|
||||
### 8\. Coordination
|
||||
|
||||
Having members from around the globe can make you face some practical problems though—most notably, languages and time zones. While English as a common denominator is spoken widely in Europe, it might be different for other countries, and including those who don't speak English as their mother tongue is key if you have a large community. You risk losing vital insight into what your worldwide community does if you don't manage to connect to them.
|
||||
|
||||
Something the law of physics at least currently doesn't allow is overcoming the different time zones. Finding suitable meeting slots for participants on different continents, matching everyone's working schedule, and providing a work-life balance aren't trivial requirements, especially when you want to include a paid team. As you end your workday, colleagues from a different continent are just about to start theirs. While the volunteers need meeting times after office hours, your staff would probably rather not stay in the office until late or during the weekends.
|
||||
|
||||
Likely there isn't an ideal meeting time, but you will end up finding a compromise that works for most people, possibly including alternate meeting times. A word to the wise: use calendar invites and meeting planners with time zones to avoid confusion, especially during times of daylight savings changes.
|
||||
|
||||
The choice of medium is important as well—all stakeholders need to be aware of and included in important discussions. Some of these are thus better done in email; others are easier to handle on the phone. You might also find it convenient to prepare initial discussions via emails and have the final vote on the phone.
|
||||
|
||||
Properly prefixing email subjects with votes and discussions can likewise be helpful to handle the influx of messages and catch people's attention. The same is true for meeting intervals, agendas, deadlines, quorum requirements, and sunset periods—these need to reflect everyone's needs, factoring in availabilities, vacations, and absences. The rationale behind this is that taking a role requires continuous, active participation in many communities, to keep up with what's going on, and that is much easier when the rules are clear.
|
||||
|
||||
Depending on your setup and the jurisdiction you're in, votes and meetings also have formal requirements you have to stick to.
|
||||
|
||||
### 9\. Trust
|
||||
|
||||
Trustworthiness is probably one of the most important characteristics for anyone who fills a leadership role. Email conversations lack tone and gestures, making it harder to understand moods, emotions, and intentions. Thus it's even more important to assume best intentions on each side, trying to avoid what is known as confirmation bias, i.e., interpreting actions and words in a way that seems to confirm your existing negative assumptions.
|
||||
|
||||
Trust especially comes into play when the entity is located in a country whose language you don't speak or whose legal system you are not familiar with—you will have to rely on translation services and people acting as gateways, be they volunteers or paid professionals.
|
||||
|
||||
### 10\. Reward
|
||||
|
||||
Filling a community role usually means plenty of hard work on top of your existing duties, but there are plenty of rewards for all that work. It is a very honorable and truly exciting opportunity that will not only enrich your professional life (and makes a good item on a CV) but beyond that, enriches your personality, your skills, and your point of view. If you're passionate about what you do, if you're open to new things, if you want to shape the future of what you love—then you indeed might be a great candidate to serve the community and lead by example.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/20/4/open-source-community-management
|
||||
|
||||
作者:[Florian Effenberger][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/floeff
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/meeting_discussion_brainstorm.png?itok=7_m4CC8S (community team brainstorming ideas)
|
||||
[2]: http://OpenOffice.org
|
||||
[3]: https://www.documentfoundation.org/
|
||||
[4]: https://www.opensourcetreffen.de/
|
||||
[5]: https://wiki.documentfoundation.org/File:AnnualReport2016LR.pdf
|
||||
[6]: https://wiki.documentfoundation.org/TDF/BoD_rules
|
@ -0,0 +1,250 @@
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: ( )
|
||||
[#]: reviewer: ( )
|
||||
[#]: publisher: ( )
|
||||
[#]: url: ( )
|
||||
[#]: subject: (Getting Started With Pacman Commands in Arch-based Linux Distributions)
|
||||
[#]: via: (https://itsfoss.com/pacman-command/)
|
||||
[#]: author: (Dimitrios Savvopoulos https://itsfoss.com/author/dimitrios/)
|
||||
|
||||
Getting Started With Pacman Commands in Arch-based Linux Distributions
|
||||
======
|
||||
|
||||
_**Brief: This beginner’s guide shows you what you can do with pacmancommands in Linux, how to use them to find new packages, install and upgrade new packages, and clean your system.**_
|
||||
|
||||
The [pacman][1] package manager is one of the main difference between [Arch Linux][2] and other major distributions like Red Hat and Ubuntu/Debian. It combines a simple binary package format with an easy-to-use [build system][3]. The aim of pacman is to easily manage packages, either from the [official repositories][4] or the user’s own builds.
|
||||
|
||||
If you ever used Ubuntu or Debian-based distributions, you might have used the apt-get or apt commands. Pacman is the equivalent in Arch Linux. If you [just installed Arch Linux][5], one of the first few [things to do after installing Arch Linux][6] is to learn to use pacman commands.
|
||||
|
||||
In this beginner’s guide, I’ll explain some of the essential usage of the pacmand command that you should know for managing your Arch-based system.
|
||||
|
||||
### Essential pacman commands Arch Linux users should know
|
||||
|
||||
![][7]
|
||||
|
||||
Like other package managers, pacman can synchronize package lists with the software repositories to allow the user to download and install packages with a simple command by solving all required dependencies.
|
||||
|
||||
#### Install packages with pacman
|
||||
|
||||
You can install a single package or multiple packages using pacman command in this fashion:
|
||||
|
||||
```
|
||||
pacman -S _package_name1_ _package_name2_ ...
|
||||
```
|
||||
|
||||
![Installing a package][8]
|
||||
|
||||
The -S stands for synchronization. It means that pacman first synchronizes
|
||||
|
||||
The pacman database categorises the installed packages in two groups according to the reason why they were installed:
|
||||
|
||||
* **explicitly-installed**: the packages that were installed by a generic pacman -S or -U command
|
||||
* **dependencies**: the packages that were implicitly installed because [required][9] by another package that was explicitly installed.
|
||||
|
||||
|
||||
|
||||
#### Remove an installed package
|
||||
|
||||
To remove a single package, leaving all of its dependencies installed:
|
||||
|
||||
```
|
||||
pacman -R package_name_
|
||||
```
|
||||
|
||||
![Removing a package][10]
|
||||
|
||||
To remove a package and its dependencies which are not required by any other installed package:
|
||||
|
||||
```
|
||||
pacman -Rs _package_name_
|
||||
```
|
||||
|
||||
To remove dependencies that are no longer needed. For example, the package which needed the dependencies was removed.
|
||||
|
||||
```
|
||||
pacman -Qdtq | pacman -Rs -
|
||||
```
|
||||
|
||||
#### Upgrading packages
|
||||
|
||||
Pacman provides an easy way to [update Arch Linux][11]. You can update all installed packages with just one command. This could take a while depending on how up-to-date the system is.
|
||||
|
||||
The following command synchronizes the repository databases _and_ updates the system’s packages, excluding “local” packages that are not in the configured repositories:
|
||||
|
||||
```
|
||||
pacman -Syu
|
||||
```
|
||||
|
||||
* S stands for sync
|
||||
* y is for refresh (local
|
||||
* u is for system update
|
||||
|
||||
|
||||
|
||||
Basically it is saying that sync to central repository (master package database), refresh the local copy of the master package database and then perform the system update (by updating all packages that have a newer version available).
|
||||
|
||||
![System update][12]
|
||||
|
||||
Attention!
|
||||
|
||||
If you are an Arch Linux user before upgrading, it is advised to visit the [Arch Linux home page][2] to check the latest news for out-of-the-ordinary updates. If manual intervention is needed an appropriate news post will be made. Alternatively you can subscribe to the [RSS feed][13] or the [arch-announce mailing list][14].
|
||||
|
||||
Be also mindful to look over the appropriate [forum][15] before upgrading fundamental software (such as the kernel, xorg, systemd, or glibc), for any reported problems.
|
||||
|
||||
**Partial upgrades are unsupported** at a rolling release distribution such as Arch and Manjaro. That means when new library versions are pushed to the repositories, all the packages in the repositories need to be rebuilt against the libraries. For example, if two packages depend on the same library, upgrading only one package, might break the other package which depends on an older version of the library.
|
||||
|
||||
#### Use pacman to search for packages
|
||||
|
||||
Pacman queries the local package database with the -Q flag, the sync database with the -S flag and the files database with the -F flag.
|
||||
|
||||
Pacman can search for packages in the database, both in packages’ names and descriptions:
|
||||
|
||||
```
|
||||
pacman -Ss _string1_ _string2_ ...
|
||||
```
|
||||
|
||||
![Searching for a package][16]
|
||||
|
||||
To search for already installed packages:
|
||||
|
||||
```
|
||||
pacman -Qs _string1_ _string2_ ...
|
||||
```
|
||||
|
||||
To search for package file names in remote packages:
|
||||
|
||||
```
|
||||
pacman -F _string1_ _string2_ ...
|
||||
```
|
||||
|
||||
To view the dependency tree of a package:
|
||||
|
||||
```
|
||||
pactree _package_naenter code hereme_
|
||||
```
|
||||
|
||||
#### Cleaning the package cache
|
||||
|
||||
Pacman stores its downloaded packages in /var/cache/pacman/pkg/ and does not remove the old or uninstalled versions automatically. This has some advantages:
|
||||
|
||||
1. It allows to [downgrade][17] a package without the need to retrieve the previous version through other sources.
|
||||
2. A package that has been uninstalled can easily be reinstalled directly from the cache folder.
|
||||
|
||||
|
||||
|
||||
However, it is necessary to clean up the cache periodically to prevent the folder to grow in size.
|
||||
|
||||
The [paccache(8)][18] script, provided within the [pacman-contrib][19] package, deletes all cached versions of installed and uninstalled packages, except for the most recent 3, by default:
|
||||
|
||||
```
|
||||
paccache -r
|
||||
```
|
||||
|
||||
![Clear cache][20]
|
||||
|
||||
To remove all the cached packages that are not currently installed, and the unused sync database, execute:
|
||||
|
||||
```
|
||||
pacman -Sc
|
||||
```
|
||||
|
||||
To remove all files from the cache, use the clean switch twice, this is the most aggressive approach and will leave nothing in the cache folder:
|
||||
|
||||
```
|
||||
pacman -Scc
|
||||
```
|
||||
|
||||
#### Installing local or third-party packages
|
||||
|
||||
Install a ‘local’ package that is not from a remote repository:
|
||||
|
||||
```
|
||||
pacman -U _/path/to/package/package_name-version.pkg.tar.xz_
|
||||
```
|
||||
|
||||
Install a ‘remote’ package, not contained in an official repository:
|
||||
|
||||
```
|
||||
pacman -U http://www.example.com/repo/example.pkg.tar.xz
|
||||
```
|
||||
|
||||
### Bonus: Troubleshooting common errors with pacman
|
||||
|
||||
Here are some common errors you may encounter while managing packages with pacman.
|
||||
|
||||
#### Failed to commit transaction (conflicting files)
|
||||
|
||||
If you see the following error:
|
||||
|
||||
```
|
||||
error: could not prepare transaction
|
||||
error: failed to commit transaction (conflicting files)
|
||||
package: /path/to/file exists in filesystem
|
||||
Errors occurred, no packages were upgraded.
|
||||
```
|
||||
|
||||
This is happening because pacman has detected a file conflict and will not overwrite files for you.
|
||||
|
||||
A safe way to solve this is to first check if another package owns the file (pacman -Qo _/path/to/file_). If the file is owned by another package, file a bug report. If the file is not owned by another package, rename the file which ‘exists in filesystem’ and re-issue the update command. If all goes well, the file may then be removed.
|
||||
|
||||
Instead of manually renaming and later removing all the files that belong to the package in question, you may explicitly run _**pacman -S –overwrite glob package**_ to force pacman to overwrite files that match _glob_.
|
||||
|
||||
#### Failed to commit transaction (invalid or corrupted package)
|
||||
|
||||
Look for .part files (partially downloaded packages) in /var/cache/pacman/pkg/ and remove them. It is often caused by usage of a custom XferCommand in pacman.conf.
|
||||
|
||||
#### Failed to init transaction (unable to lock database)
|
||||
|
||||
When pacman is about to alter the package database, for example installing a package, it creates a lock file at /var/lib/pacman/db.lck. This prevents another instance of pacman from trying to alter the package database at the same time.
|
||||
|
||||
If pacman is interrupted while changing the database, this stale lock file can remain. If you are certain that no instances of pacman are running then delete the lock file.
|
||||
|
||||
Check if a process is holding the lock file:
|
||||
|
||||
```
|
||||
lsof /var/lib/pacman/db.lck
|
||||
```
|
||||
|
||||
If the above command doesn’t return anything, you can remove the lock file:
|
||||
|
||||
```
|
||||
rm /var/lib/pacman/db.lck
|
||||
```
|
||||
|
||||
If you find the PID of the process holding the lock file with lsof command output, kill it first and then remove the lock file.
|
||||
|
||||
I hope you like my humble effort in explaining the basic pacman commands. Please leave your comments below and don’t forget to subscribe on our social media. Stay safe!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/pacman-command/
|
||||
|
||||
作者:[Dimitrios Savvopoulos][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/dimitrios/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://www.archlinux.org/pacman/
|
||||
[2]: https://www.archlinux.org/
|
||||
[3]: https://wiki.archlinux.org/index.php/Arch_Build_System
|
||||
[4]: https://wiki.archlinux.org/index.php/Official_repositories
|
||||
[5]: https://itsfoss.com/install-arch-linux/
|
||||
[6]: https://itsfoss.com/things-to-do-after-installing-arch-linux/
|
||||
[7]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2020/04/essential-pacman-commands.jpg?ssl=1
|
||||
[8]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2020/04/sudo-pacman-S.png?ssl=1
|
||||
[9]: https://wiki.archlinux.org/index.php/Dependency
|
||||
[10]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2020/04/sudo-pacman-R.png?ssl=1
|
||||
[11]: https://itsfoss.com/update-arch-linux/
|
||||
[12]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2020/04/sudo-pacman-Syu.png?ssl=1
|
||||
[13]: https://www.archlinux.org/feeds/news/
|
||||
[14]: https://mailman.archlinux.org/mailman/listinfo/arch-announce/
|
||||
[15]: https://bbs.archlinux.org/
|
||||
[16]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2020/04/sudo-pacman-Ss.png?ssl=1
|
||||
[17]: https://wiki.archlinux.org/index.php/Downgrade
|
||||
[18]: https://jlk.fjfi.cvut.cz/arch/manpages/man/paccache.8
|
||||
[19]: https://www.archlinux.org/packages/?name=pacman-contrib
|
||||
[20]: https://i1.wp.com/itsfoss.com/wp-content/uploads/2020/04/sudo-paccache-r.png?ssl=1
|
@ -1,229 +0,0 @@
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "mr-ping"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: subject: "Different Ways To Update Linux Kernel For Ubuntu"
|
||||
[#]: via: "https://www.ostechnix.com/different-ways-to-update-linux-kernel-for-ubuntu/"
|
||||
[#]: author: "SK https://www.ostechnix.com/author/sk/"
|
||||
|
||||
|
||||
升级Ubuntu Linux核心的几种不同方法
|
||||
======
|
||||
|
||||
![](https://www.ostechnix.com/wp-content/uploads/2019/01/ubuntu-linux-kernel-720x340.png)
|
||||
|
||||
这个指南里介绍了7种为Ubuntu升级Linux核心的不同方法。这7种方法里,有5种需要重启系统来使新核心生效,其他两种则不用。升级之前,**强烈建议您将重要数据进行备份!** 这里提到的所有方法只在Ubuntu中测试过。我们并不确定这些方法是不是也能适用于其他Ubuntu的特色发行版(如:Xubuntu)和衍生发行版(如:Linux Mint)。
|
||||
|
||||
### 第一部分: 需要重启的核心升级
|
||||
|
||||
以下方法需要您重启系统以便新的核心生效。所有方法都建议在个人系统或测试系统中进行。重要的事儿再说一遍,请备份好您Ubuntu中的重要数据、配置文件和其他重要的东西。
|
||||
|
||||
### 方法1 - 使用dpkg升级Linux核心(手动方式)
|
||||
|
||||
这个方法里会帮助你手动从**[kernel.ubuntu.com][1]**网站下载可用的最新Linux核心。如果你打算安装最新版(而不是稳定版或者正式发布版),那这种方法对你会很有用。从以上链接下载Linux核心版本。编写这个指南的时候,最新的可用版本是**5.0-rc1**,最新的稳定版是**v4.20**.
|
||||
|
||||
![][3]
|
||||
|
||||
基于你的选择,点击相应的Linux核心版本链接,找到你对应的架构(‘Build for XXX’)的那部分。然后下载符合以下格式的两个文件(其中 X.Y.Z 是最高版本号):
|
||||
|
||||
1. linux-image-*X.Y.Z*-generic-*.deb
|
||||
2. linux-modules-X.Y.Z*-generic-*.deb
|
||||
|
||||
在终端中修改文件所在的目录,然后执行命令,手动安装核心:
|
||||
|
||||
```
|
||||
$ sudo dpkg --install *.deb
|
||||
```
|
||||
|
||||
重启系统,使用新核心:
|
||||
|
||||
```
|
||||
$ sudo reboot
|
||||
```
|
||||
|
||||
检查是否如你所愿:
|
||||
|
||||
```
|
||||
$ uname -r
|
||||
```
|
||||
|
||||
对于分步的说明,请查看以下名为“Install Linux Kernel 4.15 LTS On DEB based systems”的文章。
|
||||
|
||||
+ [Install Linux Kernel 4.15 In RPM And DEB Based Systems](https://www.ostechnix.com/install-linux-kernel-4-15-rpm-deb-based-systems/)
|
||||
|
||||
以上的指南是针对的是4.15版本,不过安装最新版本的所有的步骤都是一样的。
|
||||
|
||||
**优势:** 不必联网(你可以从任何系统中下载Linux核心来使用)
|
||||
|
||||
**缺点:** 手动更新,需要重启系统。
|
||||
|
||||
#### 方法2 - 用apt-get来升级Linux核心(推荐方法)
|
||||
|
||||
这是在类Ubuntu系统中升级Linux核心的推荐方法。不同于上一个方法,这种方法会从Ubuntu官方仓库下载、安装核心版本而不是从 **kernel.ubuntu.com**网站。
|
||||
|
||||
要升级包括核心的整个系统,只需要执行:
|
||||
|
||||
```
|
||||
$ sudo apt-get update
|
||||
|
||||
$ sudo apt-get upgrade
|
||||
```
|
||||
|
||||
如果只希望升级核心,运行:
|
||||
|
||||
```
|
||||
$ sudo apt-get upgrade linux-image-generic
|
||||
```
|
||||
|
||||
**优势:** 简单。推荐方法。
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
从官方库中升级核心是最接近开箱即用的方法,并且不会出什么问题。如果是生产环境的系统,这是最为推荐的升级Linux核心的方法。
|
||||
|
||||
方法1和方法2都需要用户去介入到升级Linux核心的过程中。而下边的方法(3、 4、 5)则几乎是全自动的。
|
||||
|
||||
#### 方法3 - 使用Ukuu升级Linux核心
|
||||
|
||||
**Ukuu**是一个用于从**kernel.ubuntu.com**下载Linux核心,并且将其自动安装到Ubuntu桌面系统和服务器系统中的Gtk图形化界面和命令行工具。Ukku并不是单单简化了手动下载、安装新核心的过程,同时也会帮助你移除旧的和不再需要的核心。更多细节可以参照以下指南。
|
||||
|
||||
+ [Ukuu – An Easy Way To Install And Upgrade Linux Kernel In Ubuntu-based Systems](https://www.ostechnix.com/ukuu-an-easy-way-to-install-and-upgrade-linux-kernel-in-ubuntu-based-systems/)
|
||||
|
||||
**优势:** 易于安装使用。自动安装主线核心。
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
#### 方法4 - 使用UKTools升级Linux核心
|
||||
|
||||
跟Ukuu差不多,**UKTools**也会从**kernel.ubuntu.com**网站获取最新的核心并且自动安装到Ubuntu以及类似于Linux Mint的延伸发行版中。
|
||||
|
||||
+ [UKTools – Upgrade Latest Linux Kernel In Ubuntu And Derivatives](https://www.ostechnix.com/uktools-upgrade-latest-linux-kernel-in-ubuntu-and-derivatives/)
|
||||
|
||||
**优势:** 简单,自动
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
#### 方法5 - 使用Linux核心工具集(Linux Kernel Utilities)安装Linux核心
|
||||
|
||||
**Linux Kernel Utilities**是目前另一个用于升级类Ubuntu系统Linux核心的程序。实质上,它是一个由一系列Bash脚本构成的合集,用于编译并且可以选择性地为Debian(译者注:Ubuntu的上游发行版)及其衍生发行版升级核心。它包含三个工具集,一个用于手动编译、安装来自于 [**http://www.kernel.org**][4] 网站的源码核心,另一个用于安装来自**<https://kernel.ubuntu.com>**网站的事先编译好的核心,第三个脚本用于移除旧核心。更多细节请浏览以下链接。
|
||||
|
||||
+ [Linux Kernel Utilities – Scripts To Compile And Update Latest Linux Kernel For Debian And Derivatives](https://www.ostechnix.com/linux-kernel-utilities-scripts-compile-update-latest-linux-kernel-debian-derivatives/)
|
||||
|
||||
**优势:** 简单,自动
|
||||
|
||||
**缺点:** 需要联网,需要重启。
|
||||
|
||||
### 第二部分 – Kernel Updates without reboot
|
||||
|
||||
我之前说过,上边所有的方法都需要你去重启服务器(译者注:也可以是桌面版)来启用新核心。如果是个人系统或者测试系统,可以这么办。但对于无法停机的生产环境系统该怎么办呢?一点问题没有,这时候**实时补丁(livepatching)**就派上用场了。
|
||||
|
||||
**实时补丁**(或者叫热补丁)允许你在不需要重启的情况下安装Linux升级或补丁来保证你的服务器处于最新的安全等级之下。这对web主机、游戏服务器这类需要不间断在线的服务器来说是很有价值的。事实上,任何情况下,服务器都应该保持在不间断运行的状态下。由于Linux供应商只会在出于修复安全漏洞的目的下维护补丁,所以如果安全性是你的点,这种方式再适合不过了。
|
||||
|
||||
以下两种方法可以在不需要重启的情况下为生产环境和执行关键任务的Ubuntu服务器更新Linux核心。
|
||||
|
||||
#### 方法6 – 使用Canonical实时补丁服务(Canonical Livepatch Service)来更新Linux核心
|
||||
|
||||
![][5]
|
||||
|
||||
[**Canonical Livepatch Service**][6] 可以在不需要重启Ubuntu系统的情况下执行核心升级、补丁和安全的热修复等操作,在减少服务器宕机的情况下保障其安全。Canonical Livepatch Service 可以在安装过程当中或安装之后尽心设置. 如果你使用的是Ubuntu桌面版,软件更新器会自动检查核心补丁的更新,并且通知你。在基于控制台的系统中,则需要你主动运行apt-get update命令来进行升级。由于需要你手动运行“apt-get upgrade”命令它才会安装核心的安全补丁,所以算是半自动的。
|
||||
|
||||
Livepatch对三个及以下系统免费,如果多于三个,你需要升级成名为**Ubuntu Advantage**的企业支持方案套件。这个套件包括**Kernel Livepatching**及以下服务:
|
||||
|
||||
* Extended Security Maintenance – Ubuntu生命周期后的重要安全更新
|
||||
* Landscape – 针对大规模使用Ubuntu的系统管理工具
|
||||
* Knowledge Base – 由Ubuntu专家撰写的私人文章和教程
|
||||
* 电话和网站支持
|
||||
|
||||
**价格**
|
||||
|
||||
Ubuntu Advantage包含三种付费计划, 必备(Essential), 标准(Standard)和 高级(Advanced).最基础的计划(Essential 计划)从 **单物理节点 225 美元/年**和**单VPS 75美元/年**开始计价。看上去应该不支持针对Ubuntu服务器版和桌面版的按月订阅。你可以在 [**此处**][7]浏览所有计划的细节信息。
|
||||
|
||||
**优势:** 简单。半自动化。无需重启。支持三个免费系统。
|
||||
|
||||
**缺点:** 4个以上主机的话非常昂贵. 没有补丁回滚。
|
||||
|
||||
**开启 Canonical Livepatch Service**
|
||||
|
||||
如果你想在安装后设置实时补丁服务,依照以下方法逐步执行:
|
||||
|
||||
从 [**https://auth.livepatch.canonical.com/**][8] 获取一个秘钥.
|
||||
|
||||
```
|
||||
$ sudo snap install canonical-livepatch
|
||||
|
||||
$ sudo canonical-livepatch enable your-key
|
||||
```
|
||||
|
||||
#### 方法7- 使用KernelCare升级Linux内核
|
||||
|
||||
![][9]
|
||||
|
||||
[**KernelCare**][10] 是所有实时补丁方案中最新的一个. 它是 [CloudLinux][11]推出的产品. KernelCare 可以运行在Ubuntu和其他的Linux特殊发行版中. 它每四个小时检查一遍补丁的发布,并在无需确认的情况下安装它们. 如果更新后存在问题,可以将补丁进行回滚。
|
||||
|
||||
**价格**
|
||||
|
||||
费用,每台服务器:**4 美元/月** , **45 美元/年**.
|
||||
|
||||
跟Ubuntu Livepatch相比,kernelCare看起来非常便宜、实惠。好的方面在于**也可以按月订阅**。另一个前者不具备的功能是支持如Red Hat, CentOS, Debian, Oracle Linux, Amazon Linux 以及 OpenVZ, Proxmox 这种虚拟平台等等的其他Linux发行版。
|
||||
|
||||
你可以在 [**此处**][12] 了解KernelCare的所有特性和简介,以及所有的付费计划的细节。
|
||||
|
||||
**优势:** 简单。全自动化。范围更广的操作系统覆盖。补丁回滚。无需重启。对非盈利组织提供免费许可。价格低廉。
|
||||
|
||||
**缺点:** 除了30天试用外无免费计划。
|
||||
|
||||
**开启 KernelCare Service**
|
||||
|
||||
此处 [**https://cloudlinux.com/kernelcare-free-trial5**][14] 获取30天免费试用秘钥。
|
||||
|
||||
执行以下命令开启KernelCare并注册秘钥。
|
||||
|
||||
```
|
||||
$ sudo wget -qq -O - https://repo.cloudlinux.com/kernelcare/kernelcare_install.sh | bash
|
||||
|
||||
$ sudo /usr/bin/kcarectl --register KEY
|
||||
```
|
||||
|
||||
如果你的目标是价格实惠,并且通过可靠的社区服务来保障你的Linux服务器核心的更新,那KernelCare是个不错的选择。
|
||||
|
||||
|
||||
*由来自Cloud Linux的技术撰稿人和内容作者**Paul A. Jacobs**撰写。*
|
||||
|
||||
**推荐阅读:**
|
||||
|
||||
到此,希望这边文章能对你有所帮助。如果你觉得还有其他的工具和方法需要列在这里,可以在留言区给我们留言。我会根据反馈检查和更新这篇指南的。
|
||||
|
||||
接下来会有更多好东西给大家呈现,敬请期待。
|
||||
|
||||
Cheers!
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.ostechnix.com/different-ways-to-update-linux-kernel-for-ubuntu/
|
||||
|
||||
作者:[SK][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[mr-ping](https://github.com/mr-ping)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.ostechnix.com/author/sk/
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: http://kernel.ubuntu.com/~kernel-ppa/mainline/
|
||||
[2]: data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7
|
||||
[3]: http://www.ostechnix.com/wp-content/uploads/2019/01/Ubuntu-mainline-kernel.png
|
||||
[4]: http://www.kernel.org
|
||||
[5]: http://www.ostechnix.com/wp-content/uploads/2019/01/Livepatch.png
|
||||
[6]: https://www.ubuntu.com/livepatch
|
||||
[7]: https://www.ubuntu.com/support/plans-and-pricing
|
||||
[8]: https://auth.livepatch.canonical.com/
|
||||
[9]: http://www.ostechnix.com/wp-content/uploads/2019/01/KernelCare.png
|
||||
[10]: https://www.kernelcare.com/
|
||||
[11]: https://www.cloudlinux.com/
|
||||
[12]: https://www.kernelcare.com/update-kernel-linux/
|
||||
[13]: https://www.kernelcare.com/pricing/
|
||||
[14]: https://cloudlinux.com/kernelcare-free-trial5
|
Loading…
Reference in New Issue
Block a user