我想通过使用命令添加存储库来安装 Oracle Virtualbox apt-add-repository
。为了获得使用 apt 命令的经验,我不想直接修改 sources.list 文件。我知道我还需要添加密钥。我在Ubuntu 手册插入以下命令:
sudo sh -c "echo 'deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free' > /etc/apt/sources.list.d/virtualbox.list" && wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add - && sudo apt-get update && sudo apt-get install virtualbox-5.0
不幸的是,我不明白它的作用。有人可以“拆解”这个命令并给我一份我应该使用的命令的单独列表吗?
答案1
当您遇到不懂的命令时,请使用手册页。
这个大命令可以分为三个主要部分:
- 将 VirtualBox 存储库添加到系统
- 注册 Oracle 公钥
- 安装 Oracle VirtualBox
1. 将 VirtualBox 存储库添加到系统
sudo sh -c "echo 'deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free' > /etc/apt/sources.list.d/virtualbox.list"
让我们分解一下每个部分:
sh -c
如果你输入,man sh
你将获得:
-c Read commands from the command_string operand
instead of from the standard input. Special
parameter 0 will be set from the command_name operand
and the positional parameters ($1, $2, etc.)
set from the remaining argument operands.
现在 :
deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free
是 VirtualBox 包所在的地址。
当你运行该命令时,lsb_release -cs
它将输出你的 Ubuntu 版本:
$ lsb_release -cs
trusty
>
是重定向运算符。它将先前的输出写入以下文件:
/etc/apt/sources.list.d/virtualbox.list
当你跑步时
echo 'deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free'
它将在你的终端输出:
deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free
跑步
echo 'deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free' > /etc/apt/sources.list.d/virtualbox.list
将写入以下行:
deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free
到/etc/apt/sources.list.d/virtualbox.list
文件而不是提供终端输出。
笔记 :这不是建议使用的方法。它可能会导致两次运行时出现重复条目。
将 VirtualBox 存储库添加到系统的推荐方法是add-apt-repository
:
sudo add-apt-repository "deb http://download.virtualbox.org/virtualbox/debian trusty contrib"
代替可靠与您当前的 Ubuntu 版本。
2. 注册 Oracle 公钥
wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
man wget
输出 :
DESCRIPTION
GNU Wget is a free utility for non-interactive download of files from
the Web
[...]
-q
--quiet
Turn off Wget's output.
使用此命令您可以下载 VirtualBox 公钥...
wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O-
...并将其注册到系统(“-” 是什么意思?):
sudo apt-key add -
3.安装 Oracle VirtualBox
sudo apt-get update
man apt-get
输出 :
update
update is used to resynchronize the package index files from their
sources. The indexes of available packages are fetched from the
location(s) specified in /etc/apt/sources.list.
最后sudo apt-get install virtualbox-5.0
安装该virtualbox-5.0
包。
如果您需要进一步说明,请随时询问。
您可以在以下答案中找到更多信息@takkat。
这里列出了安装 VirtualBox 所需的所有独立命令。