フォーマットせずにパーティションを2つに分割する方法は?

フォーマットせずにパーティションを2つに分割する方法は?

私のSSDには現在1つのパーティションしかありません。ここにLinuxコードがあります。私はUbuntuディストリビューションを使用しています。

$ lsblk -l /dev/sda
NAME MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda    8:0    0 298.1G  0 disk
sda1   8:1    0 298.1G  0 part /

フォーマットせずにこのパーティションを2つに分割できますか?それではどうですか?

ベストアンサー1

できますか?確かに。

あなたはすべきですか?いいえ

sdaプライマリドライブを縮小して(推奨されていない)データ損失のリスクなしに追加のストレージを抽出して分離する必要がある場合は、より安全なアプローチはfallocateループデバイスを作成することです。

fallocateシステムで作成するのに適していますswapが、パーティション化が不可能な場合でも便利です。

まず、ループドライブ用のマウントポイントを作成します。

mkdir /NewDrive

これでループデバイスの作成に進むことができます。

fallocate -l 5G NewStorage

NewStorage上記のコマンドは、5 GB未満のファイルサイズでファイルを生成します。これにより確認できます。ls -h

ストレージは分割されずに分離されたので、それを使用してファイルシステムを作成する必要があります。

mkfs.ext4 NewStorage

これによりファイルシステムが作成されますext4。これで、以前に作成したディレクトリにインストールできます。

mount NewStorage /NewDrive

今、あなたのlsblkコマンドは次のような結果を返さなければなりません。

lsblk 
NAME MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda    8:0    0 298.1G  0 disk
sda1   8:1    0 298.1G  0 part /
loop0  7:0    0     5G  0 loop /NewDrive

つまり、データ損失のリスクやサイズの縮小は不要です。

システムで使用されているすべてのアクティブループデバイスを表示するには、次のものを使用できます。losetup

losetup
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0         0      0         1  0 /path/TO/NewDrive

おすすめ記事