ドキュメントの手順に従って、新しい EBS ボリュームを作成し、それをインスタンス (1 つだけ) に接続しました。再起動してシャットダウン/起動を試みましたが、デバイスが FreeBSD インスタンス内に表示されません。 と しかありませ/dev/ada0
ん/dev/ada0a
。
FreeBSDインスタンスでこれを動作させるには、他に何か必要な手順がありますか?Amazonが使用している抽象化レイヤーについては何も知りません。問題はFreeBSDにあると思います。デバイスの命名異なります。
答え1
@hasufell、あなたのコメントは正しいです。BSD インスタンス上のデバイスは、Linux/std AWS 命名規則を使用して命名されていません。私もあなたと同じデバイス名を取得しましたxbd5
が、エントリのシステム ログを確認することでデバイス名を確認できます<Virtual Block Device>
(grep dmesg/messages または AWS インスタンス コントロール パネルから - インスタンスを選択してから、[アクション] -> [インスタンス設定] -> [システム ログの取得])。100 GB のデバイスは、ログに次のように表示されることがあります。
xbd5: 102400MB <Virtual Block Device> at device/vbd/51792 on xenbusb_front0
を実行するsysctl kern.disks
と、次のような表示が出るはずです:
kern.disks: xbd5 ada0
...ada0
は最初の EBS ボリュームで、xbd5
は新しく接続されたボリュームです。
次に、新しいボリュームをマウントします。
newfs /dev/xbd5
mkdir /yourvol
mount /dev/xbd5 /yourvol
起動時にマウントするには以下を追加します/etc/fstab
:
/dev/xbd5 /yourvol ufs rw 0 2
答え2
最初のパーティションが「freebsd-ufs」タイプでない場合は、パーティション番号を追加する必要があるかもしれません。たとえば、メンテナンスの目的でマシン A のブート ボリュームをマシン B にマウントする場合、最初のパーティションのタイプは である可能性がありfreebsd-boot
、mount /dev/<device> /yourvol
「そのようなファイルまたはディレクトリはありません」というエラーで失敗します。
一般的な解決策として、空のボリュームで作業しているか、新しいボリュームが設定されているかどうか、最初のパーティションが「freebsd-ufs」タイプであるかどうかに関係なく、次のようにしてパーティションをマウント操作に追加できます。
実行して
gpart show
、「freebsd-ufs」タイプの最初のパーティションを見つけます。走る
mount /dev/<device>p<partition> /yourvol
たとえば、gpart show
次のように表示されます。
=> 3 31457269 xbd5 GPT (15G)
3 111 1 freebsd-boot (56K)
114 1600 2 efi (800K)
1714 31455558 3 freebsd-ufs (15G)
次のようにマウントします:
mount /dev/xbd5p3 /yourvol