我正在运行 Ubuntu 18.04。我想在我的计算机上安装node
。nodenpm
的 apt 存储库版本是 8.x,而我想要的是 12.x 版本(当前 LTS 版本)。
我遵循了这里的指南:https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-18-04
根据指南,我下载了
curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh
然后运行它
sudo -E ./nodesource_setup.sh
但是,我的机器无法运行,sudo apt update
并显示以下(完整)输出:
maxim@fujitsu:~/scripts$ sudo apt update
Hit:1 http://gb.archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://gb.archive.ubuntu.com/ubuntu bionic-updates InRelease
Get:3 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Hit:4 http://gb.archive.ubuntu.com/ubuntu bionic-backports InRelease
E: Repository 'http://security.ubuntu.com/ubuntu bionic-security InRelease' changed its 'Suite' value from 'bionic-updates' to 'bionic-security'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
Do you want to accept these changes and continue updating from this repository? [y/N] N
Fetched 88.7 kB in 8s (10.5 kB/s)
Reading package lists... Done
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/bionic-security/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.
这个答案建议使用apt update
而不是apt-get update
。尽管如此,我还是运行apt update
。
这回答了建议对提示回答“Y”。
这个 github 问题Docker 社区的人士明确表示,这样做不是一个好主意。
然而,这个答案,表明有时存储库会更改软件包源的名称。
所以我的问题是,在这里回答 Y 可以吗?我不想盲目地接受包管理器向我抛出的任何错误。
答案1
如果您不回答Y
这个问题,apt-get(或 apt)就永远无法正常工作。
安全存储库将其“Suite”值设置为“bionic-security”似乎是合理的。bionic-updates
我不知道为什么会这样,但这可能是一个错误。
至于apt-get
contra apt
, apt 在 Ubuntu 16.04 中被引入,作为包系统的一个新界面 - 请参见:https://itsfoss.com/apt-vs-apt-get-difference/
答案2
要修复“改变了它的“Suite”值“问题运行以下命令:
sudo apt clean
sudo apt autoclean
sudo apt update && sudo apt upgrade