有没有在 Ubuntu 16.04 上安装基本应用程序的命令?

有没有在 Ubuntu 16.04 上安装基本应用程序的命令?

我使用的是专用服务器,该提供商几乎无需任何操作即可安装 Ubuntu 16.04。例如,这些命令都不存在,因此我需要逐个安装它们:

curl,,,,,还有nano更多我不记得的基本内容。tmuxhtopiptablesifconfig

我曾经使用过另一家专用服务器提供商,他们的图像会附带这些基本内容。

现在,每次我获得新的专用服务器(我有很多)和/或当我重新安装操作系统时,逐个安装它们很麻烦,而且它们也没有快照功能。

是否有一个命令可以让我获取捆绑包中的某些基本内容,而不必apt install xx每次都为上面提到的每个应用程序运行它?

答案1

安装这些工具的最快解决方案是安装ubuntu-server默认依赖这些工具和脚本的软件包集。然后,您可以编写脚本来删除不需要的工具。

但是,如果你这样做了,它ubuntu-server就会被删除(它是一个元包,如果删除它,不会破坏你的系统),然后如果你apt autoremove在之后的任何时候运行,这些工具将有机会被删除,因为它们在系统上的唯一依赖点是ubuntu-server

答案2

创建一个脚本来获取你想要的东西是否超出了你的能力范围?

你应该只抓取你需要的最少的工具集,所以最好创建自己的最小工具集,而不是使用别人创建的预定义工具集(它可能包含你不需要的包

正如@Rinzwind 在评论中所说,您的脚本可能还包括删除您不需要的默认安装的软件包(即帮助实现您的系统实际需要的最小软件包)。

答案3

如果你不想apt install <packagename>每次都运行,你可以将它们合并在一行中

apt install curl nano tmux htop iptables net-tools

或者,如果你有一个参考服务器,你可以使用

在原始服务器上

dpkg --get-selections > /tmp/selections.list 

在新服务器上

dpkg --set-selection < /tmp/selections.list
apt-get dselect-upgrade

然而,请记住这一点设置所有包!!

因此建议只在相同的操作系统版本上执行此操作,即从 Ubuntu 16.04 到 Ubuntu 16.04。如果您从旧的 Ubuntu 16.04 执行此操作到新的 Ubuntu 18.04,您将破坏新的 Ubuntu 18.04。

答案4

如果您经常这样做,请考虑使用配置管理工具,如 Ansible、Chef、Puppet 等...

您可以创建一个具有所需配置的引导剧本/配方/脚本(它们都叫法不同),该工具会确保满足您的配置。这可以包括已安装的软件包、用户、组、ssh 密钥、密码……基本上所有可以配置的内容。

相关内容