web-dev-qa-db-ja.com

データを失わずにコマンドラインでfat32パーティションのサイズを変更する

Linuxマシンでファット32パーティションのサイズを変更しようとしています。以下はシステムの仕様です。

  1. これはPCではないため、UIベースのツールは適用できません。
  2. サイズを変更しようとしているこのメモリパーティションには、既にファイル形式のデータがあります。私はそれらを失うことはできません。
  3. パーティションを使用領域だけに縮小し、残りの領域を別のパーティションに移動しようとしています。
  4. できれば、システムを再起動せずに、パーティションをアンマウントしても問題ありません。

編集:このパーティションからのデータのバックアップは私が探しているものではありません。データを失わずに試すことができる方法があるかどうかを確認しようとしています。タスクというよりも分析のようなものです。

今まで試したこと:gpartedにはUIが必要なので、partedツールを使用してみました。このパーティションを縮小することはできますが、ファイルの断片化により不必要な問題が発生します。たとえば、ファイルシステムチェックを実行するときに縮小した後、いくつかのファイルでチェーンが見つからないなどのエラーが表示されます。

Extファイルシステムのみをサポートしているため、resizee2fsなどのツールは使用できません(ここで間違っている場合は修正してください)。

ツールfatresizeを使用してみましたが、debianに正常にインストールすることはできますが、armのインストール可能ファイルを取得することはできません。

誰かができる情報を手伝ってくれますか?

2

まあ、最初に「既にファイルの形でデータを持っている。私はそれらを失うことはできない」場合、あなたの最初のステップはあなたが何かをする前にそれらをバックアップすることです。

パーティションのサイズ変更と移動によってデータが失われることはほとんどありません。他のすべてが失敗した場合、ほとんどの場合、photorecでファイルを変更できます- http://www.cgsecurity.org/wiki/PhotoRec -それはそうするための痛み。

第二に、使用中のパーティションのサイズを変更したり移動したりすることはできません。これが、ライブUSBからこれらの操作を行うことを勧める主な理由です。

ですから、何であれ、ライブUSBから起動せずにルートパーティションを移動またはサイズ変更することはできません(例外はLVMへの追加です)。

問題のパーティションが使用されていない、つまりマウントされていない限り、移動およびサイズ変更できます。

サーバーでGUIを使用せずにコマンドラインを使用してパーティションのサイズを変更するにはどうすればよいですか? を参照してください

そうでない場合、あなたの質問は次の理由で終了する可能性があります。

  1. Debianを実行しています

  2. 情報の不足-パーティションスキームを投稿しておらず、移動するもの、マウントされているパーティション、および取得しているコマンドとエラーメッセージをお知らせください。

3
Panther

ファイルの形式でデータを安全な場所にコピーする(必要に応じてバックアップを呼び出す)をお勧めしますが、この場合は一時的な場所でもあります。 LinuxツールでFATファイルシステムを圧縮します。 Windowsツールで実行できる場合があります(FAT32はMicrosoftファイルシステムです)。

そのため、データをファイルの形式で安全な場所にコピーした後、次のことができます。

  • 別のドライブから起動し、変更したいこのドライブのすべてのパーティションをアンマウントします

  • パーティションを編集します(最も簡単にFAT32パーティションを削除し、必要なサイズの新しいパーティションを作成します。

  • 新しいパーティションにFAT32ファイルシステムを作成します

  • パーティションテーブルに他の変更を加えます...

  • ファイルを安全な場所から新しいFAT32パーティションにコピーします。

1
sudodus