web-dev-qa-db-ja.com

SSH経由でLinuxをリモートインストールする方法

現在RHEL 3.4(x86)を実行しているサーバーにUbuntu Server 10.04(x86)をリモートでインストールする必要があります。何か問題が発生した場合、誰もが再起動ボタンを押すことができないので、私は非常に注意する必要があります。

Linuxをリモートでインストールしたことはありますか?どちらの方法をお勧めしますか?気を付けることについて何かアドバイスはありますか?


更新:

ご協力いただきありがとうございます。なんとか「運転中にタイヤ交換」

私の方法の主なコンポーネントは HOWTO-DebianをリモートLinuxシステムにインストールするgrub legacy:Booting once-onlygrub single boot and kernel panic reboot 、および buntu Community Documentation:InstallationFromKnoppix

これが私がしたことの概要です:

  1. 既存Ubuntuサーバーでdebootstrapを実行します
  2. RHEL 3.4サーバーのswapパーティションにファイルを転送します
  3. スワップパーティションで起動します(debootstrapシステム)。
  4. ファイルを元のルートパーティションに転送する
  5. 新しいUbuntuシステムで起動し、tasksel、apt-getなどでインストールを完了します。

VM=でメソッドをテストし、サーバーに適用しました。幸運にもすべてがスムーズに進みました:)

23
netvope

私はここの他の回答の意見に同意します:RHEL 3.4にUbuntuをリモートでインストールすることは可能ですが可能性がありますが、おそらく踏みにじるでしょう一部非常に薄い氷。

あなたが持つかもしれない最大の問題は、既存のシステムのカーネルとlibcの時代です。それは2.4.xシリーズのカーネルですか?もしそうなら、私はあなたがこれを止めることができるかどうか確信がありません、あなたのインストール中のある時点で、あなたはUbuntuのカーネルとlibcで実行するためにコンパイルされたツールを実行する必要があるでしょう、そしてそれらは適切に機能しないかもしれません(またはまったく)古いランタイム環境。リモートサーバーで2.6.xシリーズのカーネルを実行していない場合、成功する可能性はあまりないと思います。

それでも試してみたいと思われる場合は、私が知っているガイドがいくつかあります。

どちらのガイドも古いので、カットアンドペーストガイドに近いものとして扱うことはできません。ここで他の人のアドバイスに従い、ローカルサーバーまたはVMでドライランを実行することを強くお勧めします。実際に進む前に解決する必要のある間違いや問題があるからです。

8
Steven Monday

OSをリモートでインストールする場合のベストプラクティスは、リモートで電源を入れ直してサーバーのコンソールを表示できる帯域外管理(HP ilo、Dell drac)を備えたサーバーハードウェアを購入することです。それ以外のことはしないでください。

12
Mark Wagner

新しいディストリビューションを適切な場所にインストールすることはできますが、非常に困難です。それはあなたがほぼ間違いなく[〜#〜] [〜#〜]初めて正しく理解するものではありません。実際、3度目または4度目で正解できれば幸運です。

さらに、誰もあなたがフォローできるランドリーリストをあなたに与えることができなくなり、これが起こります。正確なディスクパーティションやファイルシステムのレイアウト、ハードウェア構成などに応じて、さまざまな代替手段を試してみる必要があります。

そうは言っても、私がしなければならなかった場合に私がそのようなことをやろうとする方法は次のとおりです:

  • 既存のマシンと可能な限り同じように構成されたマシンを入手します。ハードドライブ、ネットワークカード、ディスクアダプター、RAMなどの名前を付けます。
  • このマシンをセットアップして、そのホストの現在のセットアップを模倣します。
  • このテストシステムで実行する必要があることを試してください。
  • 「ライブ」システムで再現できるように、大量のメモを取ってください。
  • 最終的な移行を行う前に、テストシステムでこれらのメモをもう一度実行してください。

あなたを助けることができるかもしれないいくつかのテクニック:

  • 新しいパーティションにインストールするか、既存のファイルシステムに上書きしてインストールするかを決定します。新しいパーティションを作成した場合、古いパーティションを起動することでいつでもバックアウトできます。ただし、これはおそらく、オフラインで実行する必要がある現在のファイルシステムを縮小する必要があることを意味します。 これを行った2007年にいくつかメモを書きました
  • テストマシンの小さなパーティションにインストールを行ってから、IPアドレスなどの適切な変更を加え、このファイルシステムイメージを「dd」して、新しいパーティションへの基本インストールの作成に使用できます。これは、新しいインストール用に別のパーティションを使用している場合のみです。
  • 代わりに、ルートファイルシステムをサブディレクトリに配置し、initrdで「cd/target; mv * oldroot; mv oldroot/newos/*」のようにすることができます。古いディレクトリをすべて適切な場所に移動し、新しいディレクトリを適切な場所に配置します。これは、initrdが「pivotroot」を実行する前に、おそらくファイルシステムをマウントした直後に実行する必要があります。
  • Initrdスクリプトにコードを追加すると、システムの起動中にあらゆる種類の素晴らしいことを実行できます。詳細については、上記で参照したブログ投稿を参照してください。
  • これで失敗することを期待してください。それは非常に危険な努力です。 (上記の)ファイルシステムのサイズ変更を行ったところ、正しく再起動したときにショックを受けました。
  • ブートセクターについて何を実行するかを決定する必要があります。LILOまたはGRUBを実行していますか?現在のブートローダーを使い続けたいですか、それとも10.04に切り替えますか?おそらく理想的なのは、既存のローダーを使用して新しいOSを起動し、そのOSから「grub-install」を実行して新しいOSを配置することです。

幸運を!必要になります。 :-)

5

私は、プレシードに基づいた簡単な解決策を書きます。

https://github.com/mhf-ir/ubuntu-overssh-reinstallation

Sshがインストールされているubuntuのバージョンがインストールされている必要があります。 preseedファイルを提供するための別のhttpサーバー。多くのデータセンターで何度もテストしました。

Ubuntuを使用している場合は、KVM/IPMI/VNCまたはリモートアプリケーションを使用せずに、sshを介して再インストールおよび再パーティション化できます。 sshを使用するだけです。そして、ubuntuサーバーのnetiso/miniisoを使用した純粋なインストール。

これは grub image loader に基づいており、ネットワーク設定とsshパスワードを含むカスタムisoファイルを起動します。

1
sweb

別のパーティションがある場合は、そのパーティションをVMにインストールするために使用できます。これにより、ディスク全体が表示されます。両方のVMおよびホストまたはパーティションテーブルで安全にプレイします。別の方法は、ネットワークから起動し、preseedまたはキックスタートを使用してインストールを行うことです。リモートでプレイする前に、ローカル環境を試してください。

1
  1. 幸運を。

  2. これは、状況によっては可能です(ここでは適用されない場合があります)。

  3. これはきつい;ローカル(必要に応じて仮想)マシンで練習することをお勧めします。たくさん。

0
Slartibartfast

サーバーに1回だけアクセスできる場合は、システムにKVM over IPポートを追加します。CDWで$ 310 Lantronix Spider 1-port を見つけました「再起動ボタン」やメディアをイジェクトすることはできませんが、再起動時にBIOSに入り、ブート順序を変更してCDが無視されるようにすることはできます。

0
zerolagtime

テストとして、以前にやったことがあります。ただし、フォールバックプランがない場合は、お勧めしません。

必要なすべてのアプリケーションが既にロードされている場合、システムはかなり信頼できることがわかります。私はddを正常に実行し、ターゲットサーバーの最初の8 GB程度をデフォルトのUbuntuインストールで上書きした後、問題なくサーバーをUbuntuで再起動しました。次に、そこからパーティションを拡張して、ドライブの残りの部分をいっぱいにすることができます。

新しいパーティションをセットアップし、そこに新しいインストールをデブートストラップし、ブートローダーを変更してこの新しいパーティションで起動することもできます。繰り返しますが、失敗を期待し、成功を期待してください。

0
Jeff McJunkin