私は専用サーバーを使用しており、このプロバイダーはUbuntu 16.04をほとんど何もインストールしません。たとえば、これらのコマンドはどれも存在しないため、1つずつインストールする必要があります。
curl
、nano
、tmux
、htop
、iptables
、ifconfig
および私がこれらの基本的なものの多く思い出さないでください。
以前は別の専用サーバープロバイダーを使用していましたが、それらの画像にはこれらの基本的なものが付属しています。
新しい専用サーバーを入手するたびに(そして大量に入手します)、OSを再インストールして、スナップショット機能もない場合は、これらを1つずつインストールするのは面倒です。
上記の各アプリに対して毎回apt install xx
を実行する必要なしに、基本的なものをまとめて取得できるコマンドはありますか?
これらをインストールする最速のソリューションは、デフォルトでこれらのツールとスクリプトに依存するubuntu-server
パッケージセットをインストールすることです。次に、不要なツールの削除をスクリプト化できます。
ただし、そうすると、ubuntu-server
が削除され(メタパッケージであり、削除してもシステムが壊れることはありません)、その後いつでもapt autoremove
を実行すると、これらのツールはシステム上の依存ポイントがubuntu-server
だったため、削除される可能性があります
あなたが望んでいるものを超えて取得するスクリプトを作成していますか?
必要なツールの最小限のセットのみを取得する必要があるため、他の誰かが作成した事前定義セットを使用するよりも、独自の最小セットを作成する方がよい(おそらく、不要なパッケージが含まれる )
@Rinzwindがコメントで述べたように、スクリプトには、不要なデフォルトのインストール済みパッケージの削除も含まれている可能性があります(つまり、システムが実際に必要とする最小限のパッケージを実現するため)。
実行したくない場合はapt install <packagename>
毎回、1行にまとめることができます
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
ただし、これを覚えておいてくださいすべてのパッケージを設定 !!
したがって、これは同じOSバージョン、つまりUbuntu 16.04からUbuntu 16.04でのみ行うことをお勧めします。古いUbuntu 16.04から新しいUbuntu 18.04にこれを行うと、新しいUbuntu 18.04が壊れます。
これを定期的に行う場合は、Ansible、Chef、Puppetなどの構成管理ツールの使用を検討してください。
必要な構成でbootstrap playbook/recipe/script(それらはすべて異なる呼び出し))を作成でき、ツールは構成が満たされていることを確認します。これには、インストールされたパッケージ、ユーザー、グループを含めることができます、sshキー、パスワード...基本的に設定可能なすべてのもの。