Abhishek Prakash 发布的文章

Amazon 已经推出了自己的基于 Linux 的开源操作系统 Bottlerocket(“瓶装火箭”)。但在你兴奋地想要尝试安装和运行它之前,我必须告诉你,它不是常规的如 Ubuntu、Fedora 或 Debian 这样的 Linux 发行版。那它是什么?

Bottlerocket:来自 Amazon 的 Linux 发行版,用于运行容器

如果你不了解 Linux 容器,建议你阅读 Red Hat 的这篇文章

自从首次提出云计算一词以来,IT 行业发生了许多变化。得益于 Amazon AWS、Google、Linode、Digital Ocean 等云服务器提供商,部署 Linux 服务器(通常在虚拟机中运行)只需几秒钟。最重要的是,你可以借助 Docker 和 Kubernetes 之类的工具在这些服务器上以容器形式部署应用和服务。

问题是,当你唯一目的是在 Linux 系统上运行容器时,并不总是需要完整的 Linux 发行版。这就是为什么容器专用 Linux 仅提供必要软件包的原因。这将大大减少操作系统的大小,从而进一步减少部署时间。

Bottlerocket Linux 由 Amazon Web Services(AWS)专门构建,用于在虚拟机或裸机上运行容器。它支持 docker 镜像和其他遵循 OCI 镜像格式的镜像。

Bottlerocket Linux 的特性

这是来自 Amazon 的新 Linux 发行版提供的特性:

没有逐包更新

传统的 Linux 发行版更新过程由更新单个软件包组成。Bottlerocket 改用基于镜像的更新。

由于采用了这种方法,可以避免冲突和破坏,并可以进行快速而完整的回滚(如有必要)。

只读文件系统

Bottlerocket 还使用了只读主文件系统。在启动时通过 dm-verity 检查其完整性。在其他安全措施上,也不建议使用 SSH 访问,并且只能通过管理容器(附加机制)使用。

AWS 已经统治了云世界。

自动更新

你可以使用 Amazon EKS 之类的编排服务来自动执行 Bottlerocket 更新。

Amazon 还声称,与通用 Linux 发行版相比,仅包含运行容器的基本软件可以减少攻击面。

你怎么看?

Amazon 并不是第一个创建“容器专用 Linux” 的公司。我认为 CoreOS 是最早的此类发行版之一。CoreOS 被 Red Hat 收购,Red Hat 又被 IBM 收购。Red Hat 公司最近停用了 CoreOS,并用 Fedora CoreOS 代替了它。

云服务器是一个巨大的行业,它将继续发展壮大。像 Amazon 这样的巨头将竭尽所能与它竞争对手保持一致或领先。我认为,Bottlerocket 是对 IBM Fedora CoreOS(目前)的应答。

尽管 Bottlerocket 仓库可在 GitHub 上找到,但我还没发现就绪的镜像(LCTT 译注:源代码已经提供)。在撰写本文时,它仅可在 AWS 上预览

你对此有何看法?Amazon 会从 Bottlerocket 获得什么?如果你以前使用过 CoreOS 之类的软件,你会切换到 Bottlerocket 么?


via: https://itsfoss.com/bottlerocket-linux/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

elementary OS 正在构建一个应用中心生态系统,你可以在其中购买用于 Linux 发行版的开源应用程序。

众筹构建一个开源应用中心

elementary OS 最近宣布,它正在众筹举办一个构建应用中心的活动,你可以从这个应用中心购买开源应用程序。应用中心中的应用程序将为 Flatpak 格式。

尽管这是 elementary OS 发起的活动,但这个新的应用中心也将适用于其他发行版。

该活动旨在资助在美国科罗拉多州丹佛市进行的一项一周个人开发冲刺活动,其中包括来自 elementary OS、EndlessFlathubGNOME 的开发人员。

众筹活动已经超过了筹集 1 万美元的目标(LCTT 译注:截止至本译文发布,已近 15000 美金)。但你仍然可以为其提供资金,因为其他资金将用于开发 elementary OS。

这个应用中心将带来什么功能

其重点是提供“安全”应用程序,因此使用 Flatpak 应用来提供受限的应用程序。在这种格式下,默认情况下将会限制应用程序访问系统或个人文件,并在技术层面上将它们与其他应用程序隔离。

仅当你明确表示同意时,应用程序才能访问操作系统和个人文件。

除了安全性,Flatpak 还捆绑了所有依赖项。这样,即使当前 Linux 发行版中不提供这些依赖项,应用程序开发人员也可以利用这种最先进的技术使用它。

AppCenter 还具有钱包功能,可以保存你的信用卡详细信息。这样,你无需每次输入卡的详细信息即可快速为应用付费。

这个新的开源“应用中心”也将适用于其他 Linux 发行版。

受到了 elementary OS 自己的“按需付费”应用中心模型成功的启发

几年前,elementary OS 推出了自己的应用中心。应用中心的“按需付费”方法很受欢迎。开发人员可以为其开源应用设置最低金额,而用户可以选择支付等于或高于最低金额的金额。

这帮助了几位独立开发人员可以对其开源应用程序接受付款。该应用中心现在拥有约 160 个原生应用程序,elementary OS 表示已通过应用中心向开发人员支付了数千美元。

受到此应用中心实验在 elementary OS 中的成功的启发,他们现在也希望将此应用中心的方法也引入其他发行版。

如果应用程序是开源的,你怎么为此付费?

某些人仍然对 FOSS(自由而开源)的概念感到困惑。在这里,该软件的“源代码”是“开源的”,任何人都可以“自由”进行修改和重新分发。

但这并不意味着开源软件必须免费。一些开发者依靠捐赠,而另一些则收取支持费用。

获得开源应用程序的报酬可能会鼓励开发人员创建 Linux 应用程序

让我们拭目以待

就个人而言,我不是 Flatpak 或 Snap 包格式的忠实拥护者。它们确实有其优点,但是它们花费了相对更多的时间来启动,并且它们的包大小很大。如果安装了多个此类 Snap 或 Flatpak 软件包,磁盘空间就会慢慢耗尽。

也需要对这个新的应用程序生态系统中的假冒和欺诈开发者保持警惕。想象一下,如果某些骗子开始创建冷门的开源应用程序的 Flatpak 程序包,并将其放在应用中心上?我希望开发人员采用某种机制来淘汰此类应用程序。

我确实希望这个新的应用中心能够复制在 elementary OS 中已经看到的成功。对于桌面 Linux 的开源应用程序,我们绝对需要更好的生态系统。

你对此有何看法?这是正确的方法吗?你对改进应用中心有什么建议?


via: https://itsfoss.com/appcenter-for-everyone/

作者:Abhishek Prakash 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

在 Ubuntu 上安装 Git 非常容易。它存在于 Ubuntu 的主仓库中,你可以像这样使用 apt 命令安装它:

sudo apt install git

很简单?是不是?

只有一点点小问题(这可能根本不是问题),就是它安装的 Git 版本。

在 LTS 系统上,软件稳定性至关重要,这就是为什么 Ubuntu 18.04 和其他发行版经常提供较旧但稳定的软件版本的原因,它们都经过发行版的良好测试。

这就是为什么当你检查 Git 版本时,会看到安装的版本会比 Git 网站上当前最新 Git 版本旧:

$ git --version
git version 2.17.1

在编写本教程时,网站上提供的版本为 2.25。那么,如何在 Ubuntu 上安装最新的 Git?

在基于 Ubuntu 的 Linux 发行版上安装最新的 Git

一种方法是从源代码安装。这种很酷又老派的方法不适合所有人。值得庆幸的是,Ubuntu Git 维护团队提供了 PPA,莫可以使用它轻松地安装最新的稳定 Git 版本。

sudo add-apt-repository ppa:git-core/ppa
sudo apt update
sudo apt install git

即使你以前使用 apt 安装了 Git,它也将更新为最新的稳定版本。

$ git --version
git version 2.25.0

使用PPA 的好处在于,如果发布了新的 Git 稳定版本,那么就可以通过系统更新获得它。仅更新 Ubuntu 来获取最新的 Git 稳定版本。

配置 Git (推荐给开发者)

如果你出于开发目的安装了 Git,你会很快开始克隆仓库,进行更改并提交更改。

如果你尝试提交代码,那么你可能会看到 “Please tell me who you are” 这样的错误:

$ git commit -m "update readme"

*** Please tell me who you are.

Run

  git config --global user.email "[email protected]"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'abhishek@itsfoss.(none)')

这是因为你还没配置必要的个人信息。

正如错误已经暗示的那样,你可以像这样设置全局 Git 配置:

git config --global user.name "Your Name"
git config --global user.email "[email protected]"

你可以使用以下命令检查 Git 配置:

git config --list

它应该显示如下输出:

[email protected]
user.name=Your Name

配置保存在 ~/.gitconfig 中。你可以手动修改配置。

结尾

我希望这个小教程可以帮助你在 Ubuntu 上安装 Git。使用 PPA,你可以轻松获得最新的 Git 版本。

如果你有任何疑问或建议,请随时在评论部分提问。也欢迎直接写“谢谢” :)


via: https://itsfoss.com/install-git-ubuntu/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

从普通的 Linux 用户到 Linux 创建者 Linus Torvalds,每个人都对 WireGuard 很感兴趣。什么是 WireGuard,它为何如此特别?

什么是 WireGuard?

WireGuard 是一个易于配置、快速且安全的开源 VPN,它利用了最新的加密技术。目的是提供一种更快、更简单、更精简的通用 VPN,它可以轻松地在树莓派这类低端设备到高端服务器上部署。

IPsec 和 OpenVPN 等大多数其他解决方案是几十年前开发的。安全研究人员和内核开发人员 Jason Donenfeld 意识到它们速度慢且难以正确配置和管理。

这让他创建了一个新的开源 VPN 协议和解决方案,它更加快速、安全、易于部署和管理。

WireGuard 最初是为 Linux 开发的,但现在可用于 Windows、macOS、BSD、iOS 和 Android。它仍在活跃开发中。

为什么 WireGuard 如此受欢迎?

除了可以跨平台之外,WireGuard 的最大优点之一就是易于部署。配置和部署 WireGuard 就像配置和使用 SSH 一样容易。

看看 WireGuard 设置指南。安装 WireGuard、生成公钥和私钥(像 SSH 一样),设置防火墙规则并启动服务。现在将它和 OpenVPN 设置指南进行比较——有太多要做的了。

WireGuard 的另一个好处是它有一个仅 4000 行代码的精简代码库。将它与 OpenVPN(另一个流行的开源 VPN)的 100,000 行代码相比。显然,调试 WireGuard 更加容易。

不要因其简单而小看它。WireGuard 支持所有最新的加密技术,例如 Noise 协议框架Curve25519ChaCha20Poly1305BLAKE2SipHash24HKDF 和安全受信任结构。

由于 WireGuard 运行在内核空间,因此可以高速提供安全的网络。

这些是 WireGuard 越来越受欢迎的一些原因。Linux 创造者 Linus Torvalds 非常喜欢 WireGuard,以至于将其合并到 Linux Kernel 5.6 中:

我能否再次声明对它的爱,并希望它能很快合并?也许代码不是完美的,但我不在乎,与 OpenVPN 和 IPSec 的恐怖相比,这是一件艺术品。

Linus Torvalds

如果 WireGuard 已经可用,那么将其包含在 Linux 内核中有什么大惊小怪的?

这可能会让新的 Linux 用户感到困惑。你知道可以在 Linux 上安装和配置 WireGuard VPN 服务器,但同时也会看到 Linux Kernel 5.6 将包含 WireGuard 的消息。让我向您解释。

目前,你可以将 WireGuard 作为内核模块安装在 Linux 中。而诸如 VLC、GIMP 等常规应用安装在 Linux 内核之上(在 用户空间中),而不是内部。

当将 WireGuard 安装为内核模块时,基本上需要你自行修改 Linux 内核并向其添加代码。从 5.6 内核开始,你无需手动添加内核模块。默认情况下它将包含在内核中。

在 5.6 内核中包含 WireGuard 很有可能扩展 WireGuard 的采用,从而改变当前的 VPN 场景

总结

WireGuard 之所以受欢迎是有充分理由的。诸如 Mullvad VPN 之类的一些流行的关注隐私的 VPN 已经在使用 WireGuard,并且在不久的将来,采用率可能还会增长。

希望你对 WireGuard 有所了解。与往常一样,欢迎提供反馈。


via: https://itsfoss.com/wireguard/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

如果你刚刚安装了 Ubuntu 或其他 Ubuntu 特色版本 如 Kubuntu、Lubuntu 等,你会注意到系统无法播放某些音频或视频文件。

对于视频文件,你可以在 Ubuntu 上安装 VLCVLCLinux 上的最佳视频播放器之一,它几乎可以播放任何视频文件格式。但你仍然会遇到无法播放音频和 flash 的麻烦。

好消息是 Ubuntu 提供了一个软件包来安装所有基本的媒体编解码器:ubuntu-restricted-extras。

什么是 Ubuntu Restricted Extras?

ubuntu-restricted-extras 是一个包含各种基本软件,如 Flash 插件、unrargstreamer、mp4、Ubuntu 中的 Chromium 浏览器的编解码器等的软件包。

由于这些软件不是开源软件,并且其中一些涉及软件专利,因此 Ubuntu 默认情况下不会安装它们。你必须使用 multiverse 仓库,它是 Ubuntu 专门为用户提供非开源软件而创建的仓库。

请阅读本文以了解有关各种 Ubuntu 仓库的更多信息

如何安装 Ubuntu Restricted Extras?

令我惊讶的是,我发现软件中心未列出 Ubuntu Restricted Extras。不管怎样,你都可以使用命令行安装该软件包,这非常简单。

在菜单中搜索或使用终端键盘快捷键 Ctrl+Alt+T 打开终端。

由于 ubuntu-restrcited-extras 软件包在 multiverse 仓库中,因此你应验证系统上已启用 multiverse 仓库:

sudo add-apt-repository multiverse

然后你可以使用以下命令安装:

sudo apt install ubuntu-restricted-extras

输入回车后,你会被要求输入密码,当你输入密码时,屏幕不会有显示。这是正常的。输入你的密码并回车。

它将显示大量要安装的包。按回车确认选择。

你会看到 EULA(最终用户许可协议),如下所示:

Press Tab key to select OK and press Enter key

浏览此页面可能会很麻烦,但是请放心。只需按 Tab 键,它将高亮选项。当高亮在正确的选项上,按下回车确认你的选择。

Press Tab key to highlight Yes and press Enter key

安装完成后,由于新安装的媒体编解码器,你应该可以播放 MP3 和其他媒体格式了。

在 Kubuntu、Lubuntu、Xubuntu 上安装受限制的额外软件包

请记住,Kubuntu、Lubuntu 和 Xubuntu 都有此软件包,并有各自不同的名称。它们本应使用相同的名字,但不幸的是并不是。

在 Kubuntu 上,使用以下命令:

sudo apt install kubuntu-restricted-extras

在 Lubuntu 上,使用:

sudo apt install lubuntu-restricted-extras

在 Xubuntu 上,你应该使用:

sudo apt install xubuntu-restricted-extras

我一直建议将 ubuntu-restricted-extras 作为安装 Ubuntu 后要做的基本事情之一。只需一个命令即可在 Ubuntu 中安装多个编解码器。

希望你喜欢 Ubuntu 初学者系列中这一技巧。以后,我将分享更多此类技巧。


via: https://itsfoss.com/install-media-codecs-ubuntu/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

终端 Terminal 是 Linux 系统的关键部分。它能让你通过 shell 访问 Linux 系统。Linux 上有多个终端应用(技术上称为终端仿真器)。

大多数桌面环境都有自己的终端实现。它们的外观可能有所不同,并且可能有不同的快捷键。例如,Guake 终端对高级用户非常有用,它提供了一些可能无法在发行版默认终端中使用的功能。

你可以在系统上安装其他终端,并将其设为默认,并能通过快捷键 Ctrl+Alt+T 打开。

现在问题来了,如何在 Ubuntu 中更改默认终端。它没有遵循更改 Ubuntu 中的默认应用的标准方式,要怎么做?

更改 Ubuntu 中的默认终端

在基于 Debian 的发行版中,有一个方便的命令行程序,称为 update-alternatives,可用于处理默认应用。

你可以使用它来更改默认的命令行文本编辑器、终端等。为此,请运行以下命令:

sudo update-alternatives --config x-terminal-emulator

它将显示系统上存在的所有可作为默认值的终端仿真器。当前的默认终端标有星号。

abhishek@nuc:~$ sudo update-alternatives --config x-terminal-emulator 
There are 2 choices for the alternative x-terminal-emulator (providing /usr/bin/x-terminal-emulator).

  Selection    Path                             Priority   Status
------------------------------------------------------------
  0            /usr/bin/gnome-terminal.wrapper   40        auto mode
  1            /usr/bin/gnome-terminal.wrapper   40        manual mode
* 2            /usr/bin/st                       15        manual mode

Press <enter> to keep the current choice[*], or type selection number:

你要做的就是输入选择编号。对我而言,我想使用 GNOME 终端,而不是来自 Regolith 桌面的终端。

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/bin/gnome-terminal.wrapper to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in manual mode

自动模式 vs 手动模式

你可能已经在 update-alternatives 命令的输出中注意到了自动模式和手动模式。

如果选择自动模式,那么在安装或删除软件包时,系统可能会自动决定默认应用。该决定受优先级数字的影响(如上一节中的命令输出所示)。

假设你的系统上安装了 5 个终端仿真器,并删除了默认的仿真器。现在,你的系统将检查哪些仿真器处于自动模式。如果有多个,它将​​选择优先级最高的一个作为默认仿真器。

我希望你觉得这个小技巧有用。随时欢迎提出问题和建议。


via: https://itsfoss.com/change-default-terminal-ubuntu/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出