Merge remote-tracking branch 'LCTT/master'

This commit is contained in:
Xingyu Wang 2019-08-28 09:41:49 +08:00
commit 1985ce457d
6 changed files with 644 additions and 649 deletions

View File

@ -0,0 +1,81 @@
[#]: collector: (lujun9972)
[#]: translator: (zionfuo)
[#]: reviewer: (wxy)
[#]: publisher: (wxy)
[#]: url: (https://linux.cn/article-11275-1.html)
[#]: subject: (Blockchain 2.0 An Introduction To Hyperledger Project (HLP) [Part 8])
[#]: via: (https://www.ostechnix.com/blockchain-2-0-an-introduction-to-hyperledger-project-hlp/)
[#]: author: (editor https://www.ostechnix.com/author/editor/)
区块链 2.0Hyperledger 项目简介(八)
======
![Introduction To Hyperledger Project][1]
一旦一个新技术平台在积极发展和商业利益方面达到了一定程度的受欢迎程度,全球的主要公司和小型的初创企业都急于抓住这块蛋糕。在当时 Linux 就是这样的一个平台。一旦实现了其应用程序的普及,个人、公司和机构就开始对其表现出兴趣,到 2000 年Linux 基金会就成立了。
Linux 基金会旨在通过赞助他们的开发团队来将 Linux 作为一个平台来标准化和发展。Linux 基金会是一个由软件和 IT 巨头([如微软、甲骨文、三星、思科、 IBM 、英特尔等][7]支持的非营利组织。这不包括为改进该平台而提供服务的数百名个人开发者。多年来Linux 基金会已经在旗下开展了许多项目。**Hyperledger** 项目是迄今为止发展最快的项目。
在将技术推进至可用且有用的方面上,这种联合主导的开发具有很多优势。为大型项目提供开发标准、库和所有后端协议既昂贵又耗费资源,而且不会从中产生丝毫收入。因此,对于公司来说,通过支持这些组织来汇集他们的资源来开发常见的那些 “烦人” 部分是有很意义的,以及随后完成这些标准部分的工作以简单地即插即用和定制他们的产品。除了这种模型的经济性之外,这种合作努力还产生了标准,使其容易使用和集成到优秀的产品和服务中。
上述联盟模式,在曾经或当下的创新包括 WiFiWi-Fi 联盟)、移动电话等标准。
### Hyperledger 项目HLP简介
Hyperledger 项目HLP于 2015 年 12 月由 Linux 基金会启动,目前是其孵化的增长最快的项目之一。它是一个<ruby>伞式组织<rt>umbrella organization</rt></ruby>,用于合作开发和推进基于[区块链][2]的分布式账本技术 (DLT) 的工具和标准。支持该项目的主要行业参与者包括 IBM、英特尔 和 SAP Ariba [等][3]。HLP 旨在为个人和公司创建框架,以便根据需要创建共享和封闭的区块链,以满足他们自己的需求。其设计原则是开发一个专注于隐私和未来可审计性的全球可部署、可扩展、强大的区块链平台。[^2] 同样要注意的是大多数提出的区块链及其框架。
### 开发目标和构造:即插即用
虽然面向企业的平台有以太坊联盟之类的产品但根据定义HLP 是面向企业的,并得到行业巨头的支持,他们在 HLP 旗下的许多模块中做出贡献并进一步发展。HLP 还孵化开发的周边项目并这些创意项目推向公众。HLP 的成员贡献了他们自己的力量,例如 IBM 为如何协作开发贡献了他们的 Fabric 平台。该代码库由 IBM 在其项目组内部研发,并开源出来供所有成员使用。
这些过程使得 HLP 中的模块具有高度灵活的插件框架,这将支持企业环境中的快速开发和部署。此外,默认情况下,其他对比的平台是开放的<ruby>免许可链<rt>permission-less blockchain</rt></ruby>或是<ruby>公有链<rt>public blockchain</rt></ruby>甚至可以将它们应用到特定应用当中。HLP 模块本身支持该功能。
有关公有链和私有链的差异和用例更多地涵盖在[这篇][4]比较文章当中。
根据该项目执行董事 Brian Behlendorf 的说法Hyperledger 项目的使命有四个。
分别是:
1. 创建企业级 DLT 框架和标准,任何人都可以移植以满足其特定的行业或个人需求。
2. 创建一个强大的开源社区来帮助生态系统发展。
3. 促进所述的生态系统的行业成员(如成员公司)的参与。
4. 为 HLP 社区提供中立且无偏见的基础设施,以收集和分享相关的更新和发展。
可以在这里访问[原始文档][5]。
### HLP 的架构
HLP 由 12 个项目组成,这些项目被归类为独立的模块,每个项目通常都是结构化的,可以独立开发其模块的。在孵化之前,首先对它们的能力和活力进行研究。该组织的任何成员都可以提出附加建议。在项目孵化后,就会进行积极开发,然后才会推出。这些模块之间的互操作性具有很高的优先级,因此这些组之间的定期通信由社区维护。目前,这些项目中有 4 个被归类为活跃项目。被标为活跃意味着它们已经准备好使用,但还没有准备好发布主要版本。这 4 个模块可以说是推动区块链革命的最重要或相当基本的模块。稍后我们将详细介绍各个模块及其功能。然而Hyperledger Fabric 平台的简要描述,可以说是其中最受欢迎的。
### Hyperledger Fabric
Hyperledger Fabric 是一个完全开源的、基于区块链的许可 (非公开) DLT 平台,设计时考虑了企业的使用。该平台提供了适合企业环境的功能和结构。它是高度模块化的,允许开发人员在不同的共识协议、链上代码协议([智能合约][6]或身份管理系统等中进行选择。这是一个基于区块链的许可平台它利用身份管理系统这意味着参与者将知道彼此在企业环境中的身份。Fabric 允许以各种主流编程语言 (包括 Java、Javascript、Go 等) 开发智能合约(“<ruby>链码<rt>chaincode</rt></ruby>”,是 Hyperledger 团队使用的术语。这使得机构和企业可以利用他们在该领域的现有人才而无需雇佣或重新培训开发人员来开发他们自己的智能合约。与标准订单验证系统相比Fabric 还使用<ruby>执行顺序验证<rt>execute-order-validate</rt></ruby>系统来处理智能合约以提供更好的可靠性这些系统由提供智能合约功能的其他平台使用。与标准订单验证系统相比Fabric还使用执行顺序验证系统来处理智能合约以提供更好的可靠性这些系统由提供智能合约功能的其他平台使用。Fabric 的其他功能还有可插拔性能、身份管理系统、数据库管理系统、共识平台等,这些功能使它在竞争中保持领先地位。
### 结论
诸如 Hyperledger Fabric 平台这样的项目能够在主流用例中更快地采用区块链技术。Hyperledger 社区结构本身支持开放治理原则,并且由于所有项目都是作为开源平台引导的,因此这提高了团队在履行承诺时表现出来的安全性和责任感。
由于此类项目的主要应用涉及与企业合作及进一步开发平台和标准,因此 Hyperledger 项目目前在其他类似项目前面处于有利地位。
[^2]: E. Androulaki et al., “Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains,” 2018.
--------------------------------------------------------------------------------
via: https://www.ostechnix.com/blockchain-2-0-an-introduction-to-hyperledger-project-hlp/
作者:[ostechnix][a]
选题:[lujun9972][b]
译者:[zionfuo](https://github.com/zionfuo)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.ostechnix.com/author/editor/
[b]: https://github.com/lujun9972
[1]: https://www.ostechnix.com/wp-content/uploads/2019/04/Introduction-To-Hyperledger-Project-720x340.png
[2]: https://linux.cn/article-10650-1.html
[3]: https://www.hyperledger.org/members
[4]: https://linux.cn/article-11080-1.html
[5]: http://www.hitachi.com/rev/archive/2017/r2017_01/expert/index.html
[6]: https://linux.cn/article-10956-1.html
[7]: https://www.theinquirer.net/inquirer/news/2182438/samsung-takes-seat-intel-ibm-linux-foundation

View File

@ -1,156 +0,0 @@
[#]: collector: (lujun9972)
[#]: translator: (beamrolling)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (How to Install VirtualBox on Ubuntu [Beginners Tutorial])
[#]: via: (https://itsfoss.com/install-virtualbox-ubuntu)
[#]: author: (Abhishek Prakash https://itsfoss.com/author/abhishek/)
How to Install VirtualBox on Ubuntu [Beginners Tutorial]
======
**This beginners tutorial explains various ways to install VirtualBox on Ubuntu and other Debian-based Linux distributions.**
Oracles free and open source offering [VirtualBox][1] is an excellent virtualization tool, specially for desktop operating systems. I prefer using it over [VMWare Workstation in Linux][2], another virtualization tool.
You can use virtualization software like VirtualBox for installing and using another operating system within a virtual machine.
For example, you can [install Linux on VirtualBox inside Windows][3]. Similarly, you can also [install Windows inside Linux using VirtualBox][4].
You can also use VirtualBox for installing another Linux distribution in your current Linux system. Actually, this is what I use it for. If I hear about a nice Linux distribution, instead of installing it on a real system, I test it on a virtual machine. Its more convenient when you just want to try out a distribution before making a decision about installing it on your actual machine.
![Linux installed inside Linux using VirtualBox][5]Ubuntu 18.10 installed inside Ubuntu 18.04
In this beginners tutorial, Ill show you various ways of installing Oracle VirtualBox on Ubuntu and other Debian-based distributions.
### Installing VirtualBox on Ubuntu and Debian based Linux distributions
The installation methods mentioned here should also work for other Debian and Ubuntu-based Linux distributions such as Linux Mint, elementary OS etc.
#### Method 1: Install VirtualBox from Ubuntu Repository
**Pros** : Easy installation
**Cons** : Installs older version
The easiest way to install VirtualBox on Ubuntu would be to search for it in the Software Center and install it from there.
![VirtualBox in Ubuntu Software Center][6]VirtualBox is available in Ubuntu Software Center
You can also install it from the command line using the command:
```
sudo apt install virtualbox
```
However, if you [check the package version before installing it][7], youll see that the VirtualBox provided by Ubuntus repository is quite old.
For example, the current VirtualBox version at the time of writing this tutorial is 6.0 but the one in Software Center is 5.2. This means you wont get the newer features introduced in the [latest version of VirtualBox][8].
#### Method 2: Install VirtualBox using Deb file from Oracles website
**Pros** : Easily install the latest version
**Cons** : Cant upgrade to newer version
If you want to use the latest version of VirtualBox on Ubuntu, the easiest way would be to [use the deb file][9].
Oracle provides read to use binary files for VirtualBox releases. If you look at its download page, youll see the option to download the deb installer files for Ubuntu and other distributions.
![VirtualBox Linux Download][10]
You just have to download this deb file and double click on it to install it. Its as simple as that.
However, the problem with this method is that you wont get automatically updated to the newer VirtualBox releases. The only way is to remove the existing version, download the newer version and install it again. Thats not very convenient, is it?
#### Method 3: Install VirualBox using Oracles repository
**Pros** : Automatically updates with system updates
**Cons** : Slightly complicated installation
Now this is the command line method and it may seem complicated to you but it has advantages over the previous two methods. Youll get the latest version of VirtualBox and it will be automatically updated to the future releases. Thats what you would want, I presume.
To install VirtualBox using command line, you add the Oracle VirtualBoxs repository in your list of repositories. You add its GPG key so that your system trusts this repository. Now when you install VirtualBox, it will be installed from Oracles repository instead of Ubuntus repository. If there is a new version released, VirtualBox install will be updated along with the system updates. Lets see how to do that.
First, add the key for the repository. You can download and add the key using this single command.
```
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
```
```
Important for Mint users
The next step will work for Ubuntu only. If you are using Linux Mint or some other distribution based on Ubuntu, replace $(lsb_release -cs) in the command with the Ubuntu version your current version is based on. For example, Linux Mint 19 series users should use bionic and Mint 18 series users should use xenial. Something like this
sudo add-apt-repository “deb [arch=amd64] <http://download.virtualbox.org/virtualbox/debian> **bionic** contrib“
```
Now add the Oracle VirtualBox repository in the list of repositories using this command:
```
sudo add-apt-repository "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib"
```
If you have read my article on [checking Ubuntu version][11], you probably know that lsb_release -cs will print the codename of your Ubuntu system.
**Note** : If you see [add-apt-repository command not found][12] error, youll have to install software-properties-common package.
Now that you have the correct repository added, refresh the list of available packages through these repositories and install VirtualBox.
```
sudo apt update && sudo apt install virtualbox-6.0
```
**Tip** : A good idea would be to type sudo apt install **virtualbox** and hit tab to see the various VirtualBox versions available for installation and then select one of them by typing it completely.
![Install VirtualBox via terminal][13]
### How to remove VirtualBox from Ubuntu
Now that you have learned to install VirtualBox, I would also mention the steps to remove it.
If you installed it from the Software Center, the easiest way to remove the application is from the Software Center itself. You just have to find it in the [list of installed applications][14] and click the Remove button.
Another ways is to use the command line.
```
sudo apt remove virtualbox virtualbox-*
```
Note that this will not remove the virtual machines and the files associated with the operating systems you installed using VirtualBox. Thats not entirely a bad thing because you may want to keep them safe to use it later or in some other system.
**In the end…**
I hope you were able to pick one of the methods to install VirtualBox. Ill also write about using it effectively in another article. For the moment, if you have and tips or suggestions or any questions, feel free to leave a comment below.
--------------------------------------------------------------------------------
via: https://itsfoss.com/install-virtualbox-ubuntu
作者:[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://www.virtualbox.org
[2]: https://itsfoss.com/install-vmware-player-ubuntu-1310/
[3]: https://itsfoss.com/install-linux-in-virtualbox/
[4]: https://itsfoss.com/install-windows-10-virtualbox-linux/
[5]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/02/linux-inside-linux-virtualbox.png?resize=800%2C450&ssl=1
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2019/02/virtualbox-ubuntu-software-center.jpg?ssl=1
[7]: https://itsfoss.com/know-program-version-before-install-ubuntu/
[8]: https://itsfoss.com/oracle-virtualbox-release/
[9]: https://itsfoss.com/install-deb-files-ubuntu/
[10]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/02/virtualbox-download.jpg?resize=800%2C433&ssl=1
[11]: https://itsfoss.com/how-to-know-ubuntu-unity-version/
[12]: https://itsfoss.com/add-apt-repository-command-not-found/
[13]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2019/02/install-virtualbox-ubuntu-terminal.png?resize=800%2C165&ssl=1
[14]: https://itsfoss.com/list-installed-packages-ubuntu/

View File

@ -1,407 +0,0 @@
[#]: collector: (lujun9972)
[#]: translator: (hello-wn)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (How to Delete Lines from a File Using the sed Command)
[#]: via: (https://www.2daygeek.com/linux-remove-delete-lines-in-file-sed-command/)
[#]: author: (Magesh Maruthamuthu https://www.2daygeek.com/author/magesh/)
How to Delete Lines from a File Using the sed Command
======
Sed command stands for Stream Editor, is used to perform basic text transformations in Linux.
sed is one of the important command, which plays major role for file manipulation. It can be used to delete or remove specific lines which matches a given pattern.
Also, its used to remove a particular line in a file.
Its capable to delete expressions as well from a file, which can be identified by a specifying delimiter (such as a comma, tab, or space).
There are fifteen examples are listed in this article, which helps you to become a master in sed command.
If you understand and remember all these commands that can be useful in many ways. Also, it saves lot of time when you have some requirements to perform sed command.
**`Note:`**` ` Since its demonstration purpose so, i use sed command without `-i` option which prints the contents of the file on Linux terminal by removing the lines.
But, if you would like to remove the lines from the source file in real environment then use `-i` option with sed command.
To test this, i have created the sed-demo.txt file and added the following contents with line number for better understanding.
```
# cat sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 1) How to Delete First Line from a File?
If you would like to delete first line from a file, use the following syntax.
**`N`**` ` denotes Nth line in a file and d option in sed command is used to delete a line.
**Syntax:**
```
sed 'Nd' file
```
The below sed command removes the first line in sed-demo.txt file.
```
# sed '1d' sed-demo.txt
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 2) How to Delete Last Line from a File?
If you would like to delete first line from a file, use the following syntax.
The **`$`**` ` denotes the last line of a file.
The below sed command removes the last line in sed-demo.txt file.
```
# sed '$d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
```
### 3) How to Delete Particular Line from a File?
The below sed command removes the third line in sed-demo.txt file.
```
# sed '3d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 4) How to Delete Range of Lines from a File?
The below sed command removes the lines ranging from 5 to 7.
```
# sed '5,7d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
8 Debian
9 Ubuntu
10 openSUSE
```
### 5) How to Delete Multiple Lines from a File?
The sed command is capable to removes set of given lines.
In this example, the following sed command removes 1st line, 5th line, 9th line, and last line.
```
# sed '1d;5d;9d;$d' sed-demo.txt
2 Unix Operating System
3 RHEL
4 Red Hat
6 Arch Linux
7 CentOS
8 Debian
```
### 5a) How to Delete Lines Other Than the Specified Range from a File?
Use the following sed command to remove all the lines from the file only except specified range.
```
# sed '3,6!d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
```
### 6) How to Delete Empty or Blank Lines from a File?
The following sed command removes the empty or blank lines from sed-demo.txt file.
```
# sed '/^$/d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 7) How to Delete Lines That Contain a Pattern from a File?
The following sed command removes the lines in sed-demo.txt file which match the **`System`**` ` pattern.
```
# sed '/System/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 8) How to Delete Lines That Containing One of Multiple Strings from a File?
The following sed command removes the lines in sed-demo.txt file which match the **`System`**` ` or **`Linux`**` ` pattern.
```
# sed '/System\|Linux/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 9) How to Delete Lines That Begin with Specified Character from a File?
The following sed command removes all the lines that start with given character.
To test this, i have created another file called sed-demo-1.txt with following contents.
```
# cat sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
Arch Linux - 1
2 - Manjaro
3 4 5 6
```
The following sed command removes all the lines that start with character **`R`**` `.
```
# sed '/^R/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
Fedora
debian
ubuntu
Arch Linux - 1
2 - Manjaro
3 4 5 6
```
The following sed command removes all the lines that start with character either **`R`**` ` or **`F`**` `.
```
# sed '/^[RF]/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
debian
ubuntu
Arch Linux - 1
2 - Manjaro
3 4 5 6
```
### 10) How to Delete Lines That End with Specified Character from a File?
The following sed command removes all the lines that end with character **`m`**` `.
```
# sed '/m$/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
The following sed command removes all the lines that end with character either **`x`**` ` or **`m`**` `.
```
# sed '/[xm]$/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 11) How to Delete All Lines That Start with Capital Letters
Use the following sed command to remove all the lines that start with entirely in capital letters.
```
# sed '/^[A-Z]/d' sed-demo-1.txt
debian
ubuntu
2 - Manjaro
3 4 5 6
```
### 12) How to Delete a Matching Pattern Lines with Specified Range in a File?
The below sed command removes the pattern **`Linux`**` ` only if it is present in the lines from 1 to 6.
```
# sed '1,6{/Linux/d;}' sed-demo.txt
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 13) How to Delete Pattern Matching Line and also the Next Line?
Use the following sed command to delete the line which containing the pattern System and also the next line.
```
# sed '/System/{N;d;}' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 14) How Delete lines that contains Digits from a File?
The below sed command removes all the lines that contains digits.
```
# sed '/[0-9]/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
```
The below sed command removes all the lines Begin with digits.
```
# sed '/^[0-9]/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
Arch Linux - 1
```
The below sed command removes all the lines End with digits.
```
# sed '/[0-9]$/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
2 - Manjaro
```
### 15) How Delete lines that contains Alphabetic Characters from a File?
The below sed command removes all the lines that contains alphabetic characters.
```
# sed '/[A-Za-z]/d' sed-demo-1.txt
3 4 5 6
```
--------------------------------------------------------------------------------
via: https://www.2daygeek.com/linux-remove-delete-lines-in-file-sed-command/
作者:[Magesh Maruthamuthu][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.2daygeek.com/author/magesh/
[b]: https://github.com/lujun9972

View File

@ -0,0 +1,158 @@
[#]: collector: (lujun9972)
[#]: translator: (beamrolling)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (How to Install VirtualBox on Ubuntu [Beginners Tutorial])
[#]: via: (https://itsfoss.com/install-virtualbox-ubuntu)
[#]: author: (Abhishek Prakash https://itsfoss.com/author/abhishek/)
如何在 Ubuntu 上安装 VirtualBox [新手教程]
======
**本新手教程解释了在 Ubuntu 和其他基于 Debian 的 Linux 发行版上安装 VirtualBox 的各种方法。**
Oracle 公司的免费开源产品 [VirtualBox][1] 是一款出色的虚拟化工具,专门用于桌面操作系统。和 [Linux 上的 VMWare Workstation][2] — 另一款虚拟化工具,相比起来,我更喜欢它。
你可以使用 VirtualBox 等虚拟化软件在虚拟机中安装和使用其他操作系统。
例如,你可以[在 Windows 上的 VirtualBox 中安装 Linux][3]。同样地,你也可以[用 VirtualBox 在 Linux 中安装 Windows][4]。
你也可以用 VirtualBox 在你当前的 Linux 系统中安装别的 Linux 发行版。事实上,这就是我用它的原因。如果我听说了一个不错的 Linux 发行版,我会在虚拟机上测试它,而不是安装在真实的系统上。当你想要在安装之前尝试一下别的发行版时,用虚拟机会很方便。
![Linux installed inside Linux using VirtualBox][5]安装在 Ubuntu 18.04 内的 Ubuntu 18.10
在本新手教程中,我将向你展示在 Ubuntu 和其他基于 Debian 的 Linux 发行版上安装 VirtualBox 的各种方法。
### 在 Ubuntu 和基于 Debian 的 Linux 发行版上安装 VirtualBox
这里提出的安装方法也适用于其他基于 Debian 和 Ubuntu 的 Linux 发行版,如 Linux Mintelementar OS 等。
#### 方法 1从 Ubuntu 仓库安装 VirtualBox
**优点** : 安装简便
**缺点** : 下载旧版本
在 Ubuntu 上下载 VirtualBox 最简单的方法可能是从软件中心查找并下载。
![VirtualBox in Ubuntu Software Center][6]VirtualBox 在 Ubuntu 软件中心提供
你也可以使用该条命令从命令行安装:
```
sudo apt install virtualbox
```
然而,如果[在安装前检查软件包版本][7],你会看到 Ubuntu 仓库提供的 VirtualBox 版本已经很老了。
举个例子,在写下本教程时 VirtualBox 的最新版本是 6.0,但是在软件中心提供的是 5.2。这意味着你无法获得[最新版 VirtualBox ][8]中引入的新功能。
#### 方法 2使用 Oracle 网站上的 Deb 文件安装 VirtualBox
**优点** : 容易安装最新版本
**缺点** : 不能更新
如果你想要在 Ubuntu 上使用 VirtualBox 的最新版本,最简单的方法就是[使用 Deb 文件][9]。
建议阅读[如何在 Ubuntu Linux 上下载 GNOME](https://itsfoss.com/fix-white-screen-login-arch-linux/great )
Oracle 为 VirtiualBox 版本提供了开箱可用的二进制文件。如果查看其下载页面,你将看到为 Ubuntu 和其他发行版下载 deb 安装程序的选项。
![VirtualBox Linux Download][10]
你只需要下载 deb 文件并双击它即可安装。就是这么简单。
然而,这种方法的问题在于你不能自动更新到最新的 VirtualBox 版本。唯一的办法是移除现有版本,下载最新版本并再次安装。不太方便,是吧?
#### 方法 3用 Oracle 的仓库安装 VirtualBox
**优点** : 自动更新
**缺点** : 安装略微复杂
现在介绍的是命令行安装方法,它看起来可能比较复杂,但与前两种方法相比,它更具有优势。你将获得 VirtualBox 的最新版本,并且未来它还将自动更新到更新的版本。我想那就是你想要的。
要通过命令行安装 VirtualBox请在你的仓库列表中添加 Oracle VirtualBox 的仓库。添加 GPG 密钥以便你的系统信任此仓库。现在,当你安装 VirtualBox 时,它会从 Oracle 仓库而不是 Ubuntu 仓库安装。如果发布了新版本,本地 VirtualBox 将跟随一起更新。让我们看看怎么做到这一点:
首先,添加仓库的密钥。你可以通过这一条命令下载和添加密钥:
```
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
```
```
Mint 用户请注意:
下一步只适用于 Ubuntu。如果你使用的是 Linux Mint 或其他基于 Ubuntu 的发行版,请将命令行中的 $(lsb_release -cs) 替换成你当前版本所基于的 Ubuntu 版本。例如Linux Mint 19 系列用户应该使用 bionicMint 18 系列用户应该使用 xenial像这样
sudo add-apt-repository “deb [arch=amd64] <http://download.virtualbox.org/virtualbox/debian> **bionic** contrib“
```
现在用以下命令来将 Oracle VirtualBox 仓库添加到仓库列表中:
```
sudo add-apt-repository "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib"
```
如果你有读过我的文章[检查 Ubuntu 版本][11],你大概知道 lsb_release -cs 将打印你的 Ubuntu 系统的代号。
**注** : 如果你看到 [add-apt-repository command not found][12] 错误,你需要下载 software-properties-common 包。
现在你已经添加了正确的仓库,请通过此仓库刷新可用包列表并安装 VirtualBox:
```
sudo apt update && sudo apt install virtualbox-6.0
```
**提示** : 一个好方法是输入 sudo apt install **virtualbox-** 并点击 tab 以查看可用于安装的各种 VirtualBox 版本,然后通过补全命令来选择其中一个版本。
![Install VirtualBox via terminal][13]
### 如何从 Ubuntu 中删除 VirtualBox
现在你已经学会了如何安装 VirtualBox我还想和你提一下删除它的步骤。
如果你是从软件中心安装的,那么删除它最简单的方法是从软件中心下手。你只需要在[已安装的应用程序列表][14]中找到它,然后单击”删除“按钮。
另一种方式是使用命令行:
```
sudo apt remove virtualbox virtualbox-*
```
请注意,这不会删除你用 VirtualBox 安装的操作系统关联的虚拟机和文件。这并不是一件坏事,因为你可能希望以后或在其他系统中使用它们是安全的。
**最后…**
我希望你能在以上方法中选择一种安装 VirtualBox。我还将在另一篇文章中写到如何有效地使用 VirtualBox。目前如果你有点子、建议或任何问题请随时在下面发表评论。
--------------------------------------------------------------------------------
via: https://itsfoss.com/install-virtualbox-ubuntu
作者:[Abhishek Prakash][a]
选题:[lujun9972][b]
译者:[beamrolling](https://github.com/beamrolling)
校对:[校对者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://www.virtualbox.org
[2]: https://itsfoss.com/install-vmware-player-ubuntu-1310/
[3]: https://itsfoss.com/install-linux-in-virtualbox/
[4]: https://itsfoss.com/install-windows-10-virtualbox-linux/
[5]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/02/linux-inside-linux-virtualbox.png?resize=800%2C450&ssl=1
[6]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2019/02/virtualbox-ubuntu-software-center.jpg?ssl=1
[7]: https://itsfoss.com/know-program-version-before-install-ubuntu/
[8]: https://itsfoss.com/oracle-virtualbox-release/
[9]: https://itsfoss.com/install-deb-files-ubuntu/
[10]: https://i2.wp.com/itsfoss.com/wp-content/uploads/2019/02/virtualbox-download.jpg?resize=800%2C433&ssl=1
[11]: https://itsfoss.com/how-to-know-ubuntu-unity-version/
[12]: https://itsfoss.com/add-apt-repository-command-not-found/
[13]: https://i0.wp.com/itsfoss.com/wp-content/uploads/2019/02/install-virtualbox-ubuntu-terminal.png?resize=800%2C165&ssl=1
[14]: https://itsfoss.com/list-installed-packages-ubuntu/

View File

@ -1,86 +0,0 @@
[#]: collector: (lujun9972)
[#]: translator: (zionfuo)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (Blockchain 2.0 An Introduction To Hyperledger Project (HLP) [Part 8])
[#]: via: (https://www.ostechnix.com/blockchain-2-0-an-introduction-to-hyperledger-project-hlp/)
[#]: author: (editor https://www.ostechnix.com/author/editor/)
区块链2.0Hyperledger项目简介
======
![Introduction To Hyperledger Project][1]
一旦,一个新技术平台在积极发展和商业利益方面达到了普及的门槛,全球的主要公司和小型的初创企业都急于抓住这块蛋糕。在当时**Linux**就是这样的平台。一旦实现了其应用程序的普及个人、公司和机构就开始对其表现出兴趣到2000年**Linux基金会**成立了。
Linux 基金会旨在通过赞助他们的开发团队来制定规范和开发Linux作为平台。Linux基金会是一个由软件和IT巨头如微软、甲骨文、三星、思科、 IBM 、英特尔等[[1][7]]支持的非营利组织。这不包括为改善平台而提供服务的数百名个人开发者。多年来Linux基金会已经开展了许多项目。**Hyperledger**项目是迄今为止发展最快的项目。
在将技术推进至可用且有用的方面上,这种联合主导的开发具有很多优势。为大型项目提供开发标准、库和所有后端协议既昂贵又资源密集型,而且不会从中产生丝毫收入。因此, 对于公司来说,通过支持这些组织来汇集他们的资源来开发常见的那些 “烦人” 部分是有很意义的,以及随后完成这些标准部分的工作以简单地即插即用和定制他们的产品。除了模型的经济性之外,这种合作努力还产生了标准,使其容易使用和集成到优秀的产品和服务中。
上述联盟模式在曾经或当下使WiFi (The Wi-Fi alliance) 、移动电话等标准在制定方面得到了创新。
### Hyperledger (HLP) 项目简介
Hyperledger 项目于 2015年12月由 Linux 基金会启动目前是其孵化的增长最快的项目之一。它是一个伞式组织umbrella organization用于合作开发和推进基于[区块链][2]的分布式账本技术 (DLT) 的工具和标准。支持该项目的主要行业参与者包括**IBM**、**英特尔**和**SAP Ariba**[等][3]。HLP 旨在为个人和公司创建框架,以便根据需要创建共享和封闭的区块链,以满足他们自己的需求。设计原则是开发一个专注于隐私和未来可审计性的全球可部署、可扩展、强大的区块链平台。
### 开发目标和构造: 即插即用
虽然面向企业的平台有以太坊联盟之类的产品但根据定义HLP是面向企业的并得到行业巨头的支持他们在HLP旗下的许多模块中做出贡献并进一步发展。还孵化开发的周边项目并这些创意项目推向公众。Hyperledger 项目的成员贡献了他们自己的力量例如IBM如何为协作开发贡献他们的Fabric平台。该代码库由IBM在其内部研究和开发并开源出来供所有成员使用。
这些过程使得 HLP 中的模块具有高度灵活的插件框架,这将支持企业设置中的快速开发和推出。此外,默认情况下,其他类似的平台是开放的**无需许可链**permission-less blockchain或是**公有链**public blockchainHLP模块本身就是支持通过调试可以适应特定的功能。
在这篇关于[公有链和私有链][4]的比较入门文章中,更多地涵盖了公有链和私有链的差异和用例。
根据项目执行董事**Brian Behlendorf**的说法Hyperledger项目的使命有四个。
分别是:
1. 创建企业级DLT框架和标准任何人都可以移植以满足其特定的工业或个人需求。
2. 创建一个强大的开源社区来帮助生态系统。
3. 促进所述生态系统的行业成员(如成员公司)的参与。
4. 为HLP社区提供中立且无偏见的基础设施以收集和分享相关的更新和发展。
可以在这里访问[原始文档][5]。
### HLP的架构
HLP由12个项目组成这些项目被归类为独立的模块每个项目通常都是独立构建和工作的以开发他们的模块。在孵化之前首先对它们的能力和生存能力进行研究。组织的任何成员都可以提出增加的建议。在项目孵化后就会出现积极开发然后才会推出。这些模块之间的互操作性被赋予了很高的优先级因此这些组之间的定期通信由社区维护。目前这些项目中有4个被归类为活动项目。活动标签意味着这些标签已经准备好使用但还没有准备好发布重大版本。这4个模块可以说是推动区块链革命的最重要或最基本的模块。稍后我们将详细介绍各个模块及其功能。然而Hyperledger Fabric平台的简要描述可以说是其中最受欢迎的。
### Hyperledger Fabric
**Hyperledger Fabric**[2]是一个完全开源的、基于区块链的许可 (非公开) DLT 平台,设计时考虑了企业的使用。该平台提供了适合企业环境的功能和结构。它是高度模块化的,允许开发人员在不同的一致协议、**链码协议**([智能合约][6]) 或身份管理系统等中进行选择。这是一个基于区块链的许可平台利用身份管理系统这意味着参与者将知道彼此在企业环境中需要的身份。Fabric允许以各种主流编程语言 (包括Java、Javascript、Go等) 开发智能合约(“链码”是Hyperledger团队使用的术语)。这使得机构和企业可以利用他们在该领域的现有人才而无需雇佣或重新培训开发人员来开发他们自己的智能合约。与标准订单验证系统相比Fabric还使用执行顺序验证系统来处理智能合约以提供更好的可靠性这些系统由提供智能合约功能的其他平台使用。与标准订单验证系统相比Fabric还使用执行顺序验证系统来处理智能合约以提供更好的可靠性这些系统由提供智能合约功能的其他平台使用。可插拔性能、身份管理系统、数据库管理系统、共识平台等是Fabric的其他功能这些功能使它在竞争中保持领先地位。
### 结论
诸如Hyperledger Fabric平台这样的项目能够在主流用例中更快地采用区块链技术。Hyperledger社区结构本身支持开放治理原则并且由于所有项目都是作为开源平台引导的因此这提高了团队在履行承诺时表现出来的安全性和责任感。
由于此类项目的主要应用涉及与企业合作及进一步开发平台和标准因此Hyperledger项目目前在其他类似项目前面处于有利地位。
**参考资料**
* **[1][Samsung takes a seat with Intel and IBM at the Linux Foundation | TheINQUIRER][7]**
* **[2] E. Androulaki et al., “Hyperledger Fabric: A Distributed Operating System for Permissioned Blockchains,” 2018.**
--------------------------------------------------------------------------------
via: https://www.ostechnix.com/blockchain-2-0-an-introduction-to-hyperledger-project-hlp/
作者:[editor][a]
选题:[lujun9972][b]
译者:[zionfuo](https://github.com/zionfuo)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.ostechnix.com/author/editor/
[b]: https://github.com/lujun9972
[1]: https://www.ostechnix.com/wp-content/uploads/2019/04/Introduction-To-Hyperledger-Project-720x340.png
[2]: https://www.ostechnix.com/blockchain-2-0-an-introduction/
[3]: https://www.hyperledger.org/members
[4]: https://www.ostechnix.com/blockchain-2-0-public-vs-private-blockchain-comparison/
[5]: http://www.hitachi.com/rev/archive/2017/r2017_01/expert/index.html
[6]: https://www.ostechnix.com/blockchain-2-0-explaining-smart-contracts-and-its-types/
[7]: https://www.theinquirer.net/inquirer/news/2182438/samsung-takes-seat-intel-ibm-linux-foundation

View File

@ -0,0 +1,405 @@
[#]: collector: (lujun9972)
[#]: translator: (hello-wn)
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: subject: (How to Delete Lines from a File Using the sed Command)
[#]: via: (https://www.2daygeek.com/linux-remove-delete-lines-in-file-sed-command/)
[#]: author: (Magesh Maruthamuthu https://www.2daygeek.com/author/magesh/)
如何使用 sed 命令删除文件中的行
======
Sed 代表<ruby>流编辑器<rt>Stream Editor</rt></ruby>,常用于 Linux 中基本的文本处理。
sed 命令是 Linux 中的重要命令之一,在文件处理方面有着重要作用。可用于删除或移动与给定模式匹配的特定行,还可以删除文件中的特定行。
它还能够从文件中删除表达式,文件可以通过指定分隔符(例如逗号、制表符或空格)进行标识。
本文列出了 15 个使用范例,它们可以帮助你掌握 sed 命令。
如果你能理解并且记住这些命令,在你需要使用 sed 时,这些命令就能派上用场,帮你节约很多时间。
**`注意:`**` ` 为了方便演示,我在执行 sed 命令时,不使用 `-i` 选项,因为这个选项会直接修改文件内容。
但是,如果你想在实际环境中从源文件中删除行,请在 sed 命令中使用 `-i` 选项。
演示之前,我创建了 sed-demo.txt 文件,并添加了以下内容和相应行号以便更好地理解。
```
# cat sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 1) 如何删除文件的第一行?
使用以下语法删除文件首行。
**`N`**` ` 表示文件中的第 N 行,`d`选项在 sed 命令中用于删除一行。
**语法:**
```
sed 'Nd' file
```
使用以下 sed 命令删除 sed-demo.txt 中的第一行。
```
# sed '1d' sed-demo.txt
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 2) 如何删除文件的最后一行?
使用以下语法删除文件最后一行。
**`$`**` ` 符号表示文件的最后一行。
使用以下 sed 命令删除 sed-demo.txt 中的最后一行。
```
# sed '$d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
```
### 3) 如何删除指定行?
使用以下 sed 命令删除 sed-demo.txt 中的第 3 行。
```
# sed '3d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 4) 如何删除指定范围内的行?
使用以下 sed 命令删除 sed-demo.txt 中的第 5 到 7 行。
```
# sed '5,7d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
8 Debian
9 Ubuntu
10 openSUSE
```
### 5) 如何删除多行内容?
sed 命令能够删除给定行的集合。
本例中,下面的 sed 命令删除了第 1 行、第 5 行、第 9 行和最后一行。
```
# sed '1d;5d;9d;$d' sed-demo.txt
2 Unix Operating System
3 RHEL
4 Red Hat
6 Arch Linux
7 CentOS
8 Debian
```
### 5a) 如何删除指定范围以外的行?
使用以下 sed 命令删除 sed-demo.txt 中第 3 到 6 行范围以外的所有行。
```
# sed '3,6!d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
```
### 6) 如何删除空行?
使用以下 sed 命令删除 sed-demo.txt 中的空行。
```
# sed '/^$/d' sed-demo.txt
1 Linux Operating System
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 7) 如何删除包含某个<ruby>表达式<rt>Pattern</rt></ruby>的行?
使用以下 sed 命令删除 sed-demo.txt 中匹配到 **`System`**` ` 表达式的行。
```
# sed '/System/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 8) 如何删除包含字符串集合中某个字符串的行?
使用以下 sed 命令删除 sed-demo.txt 中匹配到 **`System`**` ` 或 **`Linux`**` ` 表达式的行。
```
# sed '/System\|Linux/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 9) 如何删除以指定字符开头的行?
为了测试,我创建了 sed-demo-1.txt 文件,并添加了以下内容。
```
# cat sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
Arch Linux - 1
2 - Manjaro
3 4 5 6
```
使用以下 sed 命令删除以 **`R`**` ` 字符开头的所有行。
```
# sed '/^R/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
Fedora
debian
ubuntu
Arch Linux - 1
2 - Manjaro
3 4 5 6
```
使用以下 sed 命令删除 **`R`**` ` 或者 **`F`**` ` 字符开头的所有行。
```
# sed '/^[RF]/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
debian
ubuntu
Arch Linux - 1
2 - Manjaro
3 4 5 6
```
### 10) 如何删除以指定字符结尾的行?
使用以下 sed 命令删除 **`m`**` ` 字符结尾的所有行。
```
# sed '/m$/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
使用以下 sed 命令删除 **`x`**` ` 或者 **`m`**` ` 字符结尾的所有行。
```
# sed '/[xm]$/d' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 11) 如何删除所有大写字母开头的行?
使用以下 sed 命令删除所有大写字母开头的行。
```
# sed '/^[A-Z]/d' sed-demo-1.txt
debian
ubuntu
2 - Manjaro
3 4 5 6
```
### 12) 如何删除指定范围内匹配到<ruby>表达式<rt>Pattern</rt></ruby>的行?
使用以下 sed 命令删除第 1 到 6 行中包含 **`Linux`**` ` 表达式的行。
```
# sed '1,6{/Linux/d;}' sed-demo.txt
2 Unix Operating System
3 RHEL
4 Red Hat
5 Fedora
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 13) 如何删除匹配到<ruby>表达式<rt>Pattern</rt></ruby>的行及其下一行?
使用以下 sed 命令删除包含 `System` 表达式的行以及它的下一行。
```
# sed '/System/{N;d;}' sed-demo.txt
3 RHEL
4 Red Hat
5 Fedora
6 Arch Linux
7 CentOS
8 Debian
9 Ubuntu
10 openSUSE
```
### 14) 如何删除包含数字的行?
使用以下 sed 命令删除所有包含数字的行。
```
# sed '/[0-9]/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
```
使用以下 sed 命令删除所有以数字开头的行。
```
# sed '/^[0-9]/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
Arch Linux - 1
```
使用以下 sed 命令删除所有以数字结尾的行。
```
# sed '/[0-9]$/d' sed-demo-1.txt
Linux Operating System
Unix Operating System
RHEL
Red Hat
Fedora
debian
ubuntu
2 - Manjaro
```
### 15) 如何删除包含字母的行?
使用以下 sed 命令删除所有包含字母的行。
```
# sed '/[A-Za-z]/d' sed-demo-1.txt
3 4 5 6
```
--------------------------------------------------------------------------------
via: https://www.2daygeek.com/linux-remove-delete-lines-in-file-sed-command/
作者:[Magesh Maruthamuthu][a]
选题:[lujun9972][b]
译者:[hello-wn](https://github.com/hello-wn)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.2daygeek.com/author/magesh/
[b]: https://github.com/lujun9972