Amazon Linux 2 仮想マシンのログインとパスワード
Amazon Linux 2 について聞いたことがあるかもしれません。これは、Amazon が開発した AWS オペレーティング システムです。無料で提供され、テスト用の仮想マシン アプライアンスも入手できます。これは、このトピックに関する記事で示したように、私が行ったことです。
テスト中に遭遇した 1 つの障害は、ログインでした。通常、SSH を使用して EC2 インスタンスにログインします。しかし、本質的にオフラインの仮想マシンには何を使用しますか? root/ec2-user の組み合わせをオンラインで見つけることができず、シングル モードでパスワードを変更しようとする通常の方法は機能しませんでした。したがって、このガイド。テストを開始できるように、Amazon Linux 2 仮想マシンのログイン認証情報を手動で変更する方法を示します。
ログインプロンプト
さて、画像をダウンロードします。ブート。ログイン。
シングルモード
長年の Linux ユーザーは、このトリックを覚えているでしょう。システムを強制的にシングル モードにし、ルートを書き込み可能として再マウントし、パスワードを変更して再起動します。私たちは皆、これを何度も行ってきました。残念ながら、もうできません。
ブート メニューのブート オプションに init=/bin/bash を追加しようとしたところ、システムでカーネル パニックが発生しました。これがカーネルの何かなのか、Amazon Linux が素晴らしい systemd を使用しているのか、それとも別の何かなのかはわかりませんが、古くて実績のある方法は役に立ちませんでした.
オンラインで読むと、何の新しい情報も得られなかった数百万の bin-bash エントリは別として、RHEL バージョン 7 のパスワードを変更する方法に関する詳細な記事を見つけました。このチュートリアルでは、RHEL 6 から RHEL 7 への移行に関するより哲学的な概念についても言及しています。 、そしてこれが RHCSA 試験の一部であるという事実。つまり何?シンプルさはどこへ行った?
とにかく、暴言を吐くことをお約束しますが、記事にあるように、カーネル行に rd.break を追加すると役立つかもしれません。Amazon Linux 2 は RHEL ベースなので、そうしようと思いました。ただ、何もしませんでした。 Amazon Linux は問題なく正常に起動しました。これも望ましい結果をもたらしませんでした。
Amazonには、これを行う方法を説明する非常に短く漠然とした一節があります.彼らは、cloud-init 構成 ISO を作成する必要があると言い、仮想化プラットフォームのドキュメントを紹介します。あまり役に立ちません。
VDI を手動でマウントする
これについては過去に話しました。ファイルシステムの内容を編集できるように、仮想マシンのディスクとパーティションをループバック デバイスとしてマウントする方法を説明しました。 partx を使用して KVM マシンのクローンを作成しました。ここでも同じことを行い、仮想マシン イメージ ファイルシステムをマウントして表示するさらに別の方法を紹介します。
同様のトリックを行う qemu-nbd ツールが必要です。このユーティリティは、ほとんどのディストリビューションで qemu-kvm パッケージの一部として利用できるため、インストールします。次に、ツールを使用します。実行に失敗した場合は、nbd (ネットワーク ブロック デバイス) モジュールをメモリに手動でロードする必要がある場合があります。したがって、一連のコマンド (sudo または root として):
modprobe nbd
qemu-nbd -c /dev/nbd0 <仮想マシン vdi ハードディスクの名前>
ダウンロードした Amazon Linux 2 vdi イメージを見つけて、上記のコマンドにマップします。 /dev/nbd0 を特に使用する必要はありません。任意の番号を使用できますが、順番に作業する方が簡単でクリーンです。
ブロック デバイスがマップされると、そのパーティションが /dev/nbd0p* の下に表示されます。数値は、p1、p2 など、実際のハード ディスク パーティション レイアウトと一致します。これも、partx で行ったこととほぼ同じです。次のステップは、目的のパーティションをどこかにマウントすることです:
マウント /dev/nbd0pX /mountpoint
このコマンドを実行すると、Amazon Linux 2 vdi ファイルシステム (パーティション) の内容が目的のマウントポイント (/mnt など) で公開され、操作できるようになります。
/etc/shadow ファイルを編集する
次に、パスワードを変更します。これを行う方法は次のとおりです。実際に仮想マシンを実行しているネイティブ Linux で、新しいユーザーを作成します。好きなように呼び出すことができます。アマゾンとしましょう。パスワードを作成。 /etc/shadow ファイルを開きます。パスワードが暗号化され、2 つのコロン区切り文字の間に長いハッシュとして表示されていることがわかります。偉大な。これが私たちが必要としているものです。次のようなもの:
amazon:$123456$dedoimedo:11111:0:99999:6:::
ここで、以前の Amazon Linux 2 ファイルシステムのマウントポイント (/mnt など) に移動し、そのシャドウ ファイルをテキスト エディターで開きます。
<テキストエディタ> /mnt/etc/shadow
デフォルトのユーザーが実際には ec2-user と呼ばれることに気付くでしょう。あなたがこれを知らなかったとしても、今あなたは知っています。また、パスワード用のハッシュもあります。それが何であるかはわかりませんが、それは問題ではありません。ハッシュをローカル amazon ユーザーのものに置き換えます。ファイルを保存し、vdi をアンマウントします。
再起動、ログイン、仕事、楽しみ
仮想マシンを再起動します。ログイン プロンプトが表示されたら、そこに入力した正しいユーザー名とパスワードを使用して、自分自身を正しく識別します。これでログインが完了し、仮想マシン アプライアンスの操作を開始できます。さて、Amazon Linux でそれを行いましたが、このトリックはそこにあるすべての Linux ディストリビューションとファイルシステムに適用されます。システムメンテナンスを正常に実行できない場合は、このトリックを使用して制限を回避し、ファイルシステムに必要な変更を加えることができます。これは、仮想マシンにとって非常に便利です。これは KVM で行いましたが、現在は VirtualBox でも行っています。
結論
Amazon Linux 2 のテストに熱心であるが、ログイン認証情報に問題があり、独自の ISO イメージを作成したくない場合、または EC2 を使用する完全で適切な方法を理解しようとしている場合は、次を使用できます。 partx または qemu-nbd を使用して仮想ハードディスクをマウントし、シャドウ ファイルを手動で編集します。これは、シングル モードやレスキュー モードなどで起動しても問題が解決しない場合に備えて、保証された回避策です。
Amazon Linux 2 は、いくつかのかなり興味深い機能を備えた楽しいオペレーティング システムのように見えますが、最初のログイン/パスワードのような技術的/官僚的な手抜きのために、それらを見逃すのは残念です.つまり、どのディストリビューションのように、デフォルト セットが存在してはならないという理由はありません。さらに、init=/bin/bash に対する Linux インフラストラクチャの一般的な変更は役に立ちません。願わくば、この記事が必要な技術的ノウハウと、旅を始めるための冒険心に火をつけてくれることを願っています。何よりも、ディストリビューションに依存しないことです。どの仮想マシン アプライアンスでも、どのファイル システムでも、テストに必要な変更を加えることができます。探索を楽しんでください。
乾杯。
-
Linux の VMware Workstation - 素晴らしい!
私は仮想化製品、特に VMware の大ファンです。 Player、Server、ESXi、それらはすべて、さまざまなオペレーティング システムの複数のインスタンスを一度に実行することに関して、コンピューター ユーザーにさまざまな創造的で便利なソリューションを提供します。 VMware 製品は、仮想化パックのリーダーとして際立っています。その製品の一部は、ESX や Workstation などの完全な機能を備えた次のレベルのソフトウェアを購入するように誘導することを目的として、Player や Server などの個人使用は無料です。 ESX は間違いなく家庭での使用にはやり過ぎですが、
-
仮想マシンでの 3D アクセラレーション - パート 3:Linux ホストと Linux ゲスト - VMGL - (Im)possible?
これは、仮想化に関する 3 回目の記事です。そして多分一番難しい。これまでのところ、VMware 製品では DirectX がサポートされ、VirtualBox では OpenGL がサポートされていますが、いずれも Windows ゲストのみが利用できます。ホスト プラットフォームの選択は問題ではありませんでした。しかし、Linux ゲストはどうでしょうか? これはいけないと思いました。しかし、Linux ゲストで VMGL というアプリケーションを使用して 3D を楽しむ方法を紹介している linux.com の記事を読みました。それは有望以上に見えました。見栄えが良かったです。でも難