FreeBSDでブートドライブの未使用領域を利用する方法

FreeBSDでブートドライブの未使用領域を利用する方法

私は古いFreeBSDサーバー(7.3-RELEASEを実行しています)を持っており、余分なストレージスペースが必要です。実際にはいくつかの機能があります。元の20G SCSIドライブは300G SCSIドライブに置き換えられているため、理論的にはまだ280Gを使用できます。

この空間を活用したいです。最善の方法は、未使用のスペースを既存のドライブの新しいスライスとしてフォーマットすることだと思いますが、既存のスライスのデータを削除せずにこれを行う方法はわかりません。これを実行しながら見つけることができるほとんどの文書は、初期インストールについて説明しています。初期インストール中にスライスとパーティションを設定する方法を知っていますが、初期インストール後にドライブで未使用のスペースを解放する方法はわかりません。

(スライスを拡張して既存のスライスにパーティションを追加したいのですが、これはより危険だと聞きました。)

これを行う簡単な方法はを使用することだと思いましたが、/stand/sysinstall設定 - > FDiskまたは設定 - >タブに移動すると、次のメッセージが表示されます。

No disks found!  Please verify that your disk controller is being
properly probed at boot time.  See the Hardware Guide on the
Documentation menu for clues on diagnosing this type of problem.

このメッセージを受信したときに実際にディスクが不足していたので、これは間違いなく間違っています。しかし、sysinstallが起動ディスクを操作するのが好きではないかもしれません。

出力fdisk da0

******* Working on device /dev/da0 *******
parameters extracted from in-core disklabel are:
cylinders=2235 heads=255 sectors/track=63 (16065 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=2235 heads=255 sectors/track=63 (16065 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
    start 63, size 35905212 (17531 Meg), flag 80 (active)
        beg: cyl 0/ head 1/ sector 1;
        end: cyl 1023/ head 254/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>

出力bsdlabel da0s1

# /dev/da0s1:
8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  a:  2097152        0    4.2BSD     2048 16384    89
  b:  2097152  2097152      swap
  c: 35905212        0    unused        0     0         # "raw" part, don't edit
  e:  2097152  4194304    4.2BSD     2048 16384    89
  f: 29613756  6291456    4.2BSD     2048 16384    89

修正する:

私はこの目的でSadeを使用しようとする提案に同意しません。残念ながら、Thadには多くのスペースが表示されません。

         0         63         62        -     12     unused        0
        63   35905212   35905274    da0s1      8    freebsd      165
  35905275      10501   35915775        -     12     unused        0

これはちょっとした路地かもしれません。どういうわけかドライブ構造を調べる必要がありますか?ドライブはRAID 1ミラーリングセットと呼ばれることがあります。もともとミラーリングされたドライブはすべて20G SCSIドライブでしたが、今では300Gドライブに置き換えられました。役に立つと、一時的に鏡を壊すことがあります。

答え1

20GBディスク! ? 16GBまたは32GB USBサムドライブを購入してください。ボックスに接続します(/ dev / daNとしてマウントされます(Nは未使用の次の低DAデバイスです)。sysinstallを使用してUSBドライブを1つの大きなパーティションにフォーマットし、ディスク全体をサムドライブにコピーします。があり、他のバックアップがない場合は、2つのサムドライブを使用できます):

sysinstall (configure -> fdisk & label)
cd /mnt/root
dump -0aL -f - / | restore xf -

次に、/mnt/root/etc/fstab を編集し、次の fstab エントリを使用してサムドライブを起動するように FreeBSD に指示します。

/dev/da0s1a /   ufs ro   1  1

BIOSがUSBリムーバブルメディアから起動するように設定されている場合、次の再起動時にサムドライブから起動します。それ以外の場合は、BIOS設定を変更するか、メインディスクの/ etc / fstabを編集してサムドライブから起動できます。これで完全で検証済みのバックアップがあるので、RAID BIOSに移動してボリュームを削除し、新しい(より大きな)ボリュームを作成します。その後、標準のFreeBSDユーティリティを使用して新しいボリュームをフォーマットできます。

答え2

したがって、古いディスクを交換するときは、デフォルトでddを使用して既存のディスク全体を新しいディスクにコピーするように聞こえます。したがって、別のfdiskパーティションda0s2を作成してから、別のBSDパーティションda0s2aを配置できる必要があります。これを行うには、sysinstallやsadeの代わりにgeomを使用します。出力を表示できる場合は、gpart listおそらく新しいパーティションの作成プロセスを案内することができます。もちろんバックアップなどはぜひしてください。

もちろん、より良いアプローチは9.1にアップグレードし、パーティションを拡張し、成長を使用して既存のFSを拡張して新しいディスク領域が同じFSに属することです。 (通常私は別々の/ varと/ usrを使って作業を少し分離するのが好きですが、最近ほとんどの人はそうしません。そのサイズのディスクでは少し面倒です。

(ああ、最高のものはZFSに切り替えることですが、システムに20GBのディスクがある場合、おそらく32ビットでRAMが多くないため、ZFSには理想的ではありません...)

編集:ミラーに関する部分を完全に見逃しました。はい、ミラーを壊すこともこれを達成する1つの方法です。それはハードウェアRAIDイメ​​ージですか、それともソフトウェアRAIDイメ​​ージですか?

関連情報