web-dev-qa-db-ja.com

未割り当てのディスク領域からフォーマットされていないパーティションを作成する

partedの出力は次のとおりです。

$> parted /dev/sda print free
Model: ATA Hitachi HUA72302 (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
        32.3kB  1049kB  1016kB           Free Space
 1      1049kB  33.6GB  33.6GB  primary               raid
 2      33.6GB  67.1GB  33.6GB  primary               raid
 3      67.1GB  67.7GB  524MB   primary  ext4         boot, raid
        67.7GB  2000GB  1933GB           Free Space

CentOS 7.1では、これらの空き1933GBにフォーマットされていない空のパーティションを作成するための手順は何ですか? (ターミナルツールのみを使用)

4
msciwoj

わかったのでここに答えを載せます。

最初に、上記と同様のコマンドを使用してディスクレイアウトを照会しますが、セクターとユニットを要求します。

> parted /dev/sda unit s print free
Model: ATA Hitachi HUA72302 (scsi)
Disk /dev/sda: 3907029168s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start       End          Size         Type     File system  Flags
        63s         2047s        1985s                 Free Space
 1      2048s       65570815s    65568768s    primary               raid
 2      65570816s   66594815s    1024000s     primary  ext4         boot, raid
 3      66594816s   132163583s   65568768s    primary               raid
 4      132163584s  3907029167s  3774865584s  primary

132163584sは、空き領域の開始セクターに注意してください(freeスイッチを使用しない場合、前のパーティションは+1になります)。その後、残りは次のように簡単です:

parted /dev/sda mkpart primary ext4 132163584s -- -1s

-1sは、ディスクの終わりである終了セクターです。 --は、バッチモードで-1sを使用し、parted: invalid option -- '1'エラーを回避します(インタラクティブモードでpartedを実行する場合、これは必要ありません)。

4
msciwoj

別の方法(fdiskコマンドを使用)を追加して、未割り当て領域からパーティションを作成するだけです。 fdiskはいくつかのLinuxディストリビューションで使用できます。少なくともCentos、Ubuntu、Debianはこのコマンドを持っています。

重要な注意事項:次のコマンドを実行する前に、操作するディスクを確認してください。私の場合は/dev/sdaですが、 あなたのものは異なる場合があります。間違ったディスクを使用すると、ディスクとデータが破壊される可能性があります

まず、ディスクの未割り当て領域がある場所を確認します。

Sudo parted /dev/sda unit s print free

次の図に出力が示されています。2GB(約)の未割り当てスペースがあることがわかります。未割り当て領域は、ファイルシステム列の下に「空き領域」がある行に対応します。

enter image description here

次に、fdiskを対話モードで実行します。

Sudo fdisk /dev/sda

fdiskの実行後、次の手順を実行します。

  • 新しいパーティションを作成するには、nと入力します。
  • プライマリパーティションの場合はpと入力します(これは私の場合ですが、別のパーティションでもかまいません)。
  • パーティションの最初のセクターの値を入力します(この値は、Sudo parted /dev/sda unit s print freeコマンドの[開始]列から、つまり前の図から取得できます)。私の場合、これは値308582400になります(末尾のsは不要です)
  • パーティションの最後のセクターの値を入力します(前の手順と同様に、この値はSudo parted /dev/sda unit s print freeコマンドの "End"列から、つまり前の図から取得できます)。私の場合、これは値312581807になります(ここでも、末尾のsは不要です)
  • wと入力して、変更をディスクに書き込みます

この後、システムを再起動するか、Sudo partprobeコマンドを実行して、パーティションの変更をカーネルで使用できるようにする必要があります。

この時点で終了でき、パーティションが作成されます。パーティションに特定の用途があるため、パーティションにタグを付けたい場合。スワップパーティションの場合、wの文字をfdiskコマンドに入力する前に以下の手順を実行できます(つまり、変更をディスクに書き込む前に、つまり、以下の手順が前の手順「Type w to write ... ")。

  • 新しく作成したパーティションにタグを付けるには、tと入力します
  • タグを付けるパーティションの番号を入力します。今作成したパーティションです。私の場合は3になります(fdiskコマンドは、新しく作成されたパーティションに割り当てられた番号を通知します)
  • パーティションのタイプを入力します(私の場合、スワップパーティションの場合は82ですが、Lと入力してすべてのタイプをリストし、適切なタイプを選択できます)
  • wと入力して、変更をディスクに書き込みます

以下は、実行された前のすべてのステップと出力を示すスクリーンショットです。

enter image description here

新しいパーティションを作成した後の最終的な結果を以下に示します。次のコマンドを実行すると、自分のものを表示できます

Sudo fdisk -l /dev/sda

enter image description here

0
jchanger