web-dev-qa-db-ja.com

Linuxを使用して暗号化されたハードドライブをフォーマットする方法は?

私はLinuxの経験があまりありませんが、周りにはたくさんの情報があるので、通常は必要なものを学ぶことができます。しかし、Linuxで「マウント」が何を意味するのか理解できませんでした。 Windowsを使用している間、私は単に何か(たとえば、USBペンドライブ)を接続すると、Windowsは「ねえ、それを閲覧しますか?」と尋ねます。十分に理解します。

暗号化された古いHDを持っていて、パスワードを忘れてしまいました。必要なものはすべて他の場所で実際に安全だったので、当時は無視していましたが、今度は別の目的でHDをもう一度使用したいと思います。 HDをフォーマットしたい言葉。

次に、SystemRescueCdを使用して試してみました。これは、すでにSystemRescueCdからの起動を試みており、HDを正常にマウントできたためです。問題は、私が行うことをマウントすることです(コピーアンドペースト、気に留めてください)

mount /dev/fd0 /mnt/FolderIJustCreated

ただし、今回はHDタイプを認識しないため動作せず、HDタイプもわからないため、-tを入力しても仕方がありません。つまり、fat32であるはずでしたが、暗号化によってそれが破壊されると思います。では、どうすればこのタイプレスHDをマウントできますか?

さらに、「/ dev/fd0」の部分がどこから来たのか理解できませんでした。つまり、マウントしているものがすでにシステムの/ dev /フォルダーにあるということですか?

1
ShizukaSM

私はLinuxの経験があまりありませんが、周りにはたくさんの情報があるので、通常は必要なものを学ぶことができます。しかし、Linuxで「マウント」が何を意味するのか理解できませんでした。 Windowsを使用している間、私は単に何か(たとえば、USBペンドライブ)を接続すると、Windowsは「ねえ、それを閲覧しますか?」と尋ねます。十分に理解します。

ZipまたはRARアーカイブを使用したことがある場合、ディスクのマウントは、そのようなアーカイブを開くのと多少似ています。最大の違いは、オペレーティングシステム自体によって実行されることです(個別のプログラムによって実行されるのではありません)。

  • アーカイブを開くときは、基本的に、.Zipファイルの内容を読み取り、内部のアーカイブファイルへのアクセスを許可するようにプログラムに指示します。
  • ディスクをマウントするときは、ディスクの内容を読み取り、内部のファイルへのアクセスを許可するようにOSに指示します。

Windowsは主にデスクトップOSであり、「デスクトップ」部分が完全に統合されており、ディスクのマウントを自動的に処理します。 Linuxでは、ほとんどのデスクトップ環境で自動化されていますが、Linuxでは、必要に応じて「デスクトップ」とそのすべての自動化を取り除くことができます。 (Linuxは単なるカーネルであり、他のすべてはすでに個別のコンポーネントとして提供されています。)たとえば、USBポートを持たない、または必要としないサーバー、ルーター、テレビ、携帯電話などで使用されます。さまざまな「レスキュー」CD 、SystemRescueCdと同様に、リスクが発生する可能性があるため、自動マウントも避けてください。破損したディスクからデータを回復しようとしている場合、それをマウントしようとすると、さらに破損する可能性があります。

問題は、私が行うことをマウントすることです(コピーアンドペースト、気に留めてください)

mount /dev/fd0 /mnt/FolderIJustCreated

ただし、今回はHDタイプを認識しないため動作せず、HDタイプもわからないため、-tを入力しても仕方がありません。つまり、fat32であるはずでしたが、暗号化によってそれが破壊されると思います。では、どうすればこのタイプレスHDをマウントできますか?

まず、HDに向けていることを確認してください。 /dev/fd0は常に0番目を意味しますフロッピーディスク。ハードディスクの名前は通常/dev/sda/dev/sdb ...です(古いLinuxバージョンでは、/dev/hda/dev/hdb、... – SystemRescueCdの古さはわかりません。)

また、ほとんどの場合、そのディスク上の特定のパーティションmountを指定する必要があります。パーティションが1つしかない場合でも、個別のデバイスノードがあります。ディスク全体が/dev/sdaの場合、そのパーティションは/dev/sda1/dev/sda2などになります。 HD全体には「タイプ」がありません。代わりに、各パーティションが行います。または、さらに正確に言うと、各パーティションに存在するfilesystemsには、FAT32やext2などのタイプがあります。

次に、はい。ディスクが暗号化されている場合、直接マウントすることはできません。最初にロックを解除する必要があります。暗号化に使用されたプログラム(BitLocker)がわからないため、その方法について1つの答えはありません。 TrueCrypt? LUKS?まったく違うもの?それらのいくつかは、Windowsでのみ動作します。

ただし、ディスク上の既存のデータをすべて破棄して新たにフォーマットするだけの場合は、マウントは必要ありません。 mkfsを使用して、新しい空のファイルシステムを作成できます。つまり、ディスクをフォーマットできます。下記参照。

その前に、mightすべてのパーティションを削除し、新しい空のパーティションを作成する必要があります。ただし、すべての場合に必要なわけではありません。以下のpまたはprintコマンドでディスクスペース全体をカバーするパーティションが1つだけ表示されている場合は、他の手順をスキップして、パーティションを直接フォーマットできます。ただし、一部のディスク暗号化プログラムは、異常な方法でパーティションテーブルを変更した可能性があります。

  • SystemRescueCdがグラフィカルインターフェイスを実行している場合は、メニューにGPartedが含まれている可能性があります。

  • partedの使用:

    1. parted /dev/sdaを実行します。
    2. print freeを使用して、パーティションテーブルの内容を確認します。
    3. mktable msdosを使用して、新しいパーティションテーブルを作成します。
    4. mkpart primary fat32 1 100%を使用して新しいパーティションを作成します(必要に応じてfat32ntfsに置き換えます。fdiskの「タイプ」と同じです。これは実際にはパーティションに含まれるファイルシステムには影響しません)。
    5. 終了parted withquit
  • fdiskの使用:

    1. fdisk /dev/sdaを実行します(HD全体のデバイス名を付けます)。
    2. pを使用して、パーティションテーブルの内容を確認します。
    3. すでに単一のパーティションしか表示されていない場合は、qを使用して終了できますfdisk
    4. oコマンドを使用して、新しい空のパーティションテーブルを作成します。
    5. nを使用して、新しいパーティションを作成します。すべての質問に対してEnterキーを押すと機能するはずですが、参考までに、次の回答を入力する必要があります。タイプとして「プライマリ」の場合はp、数値として1、最初のセクターとして2048、最後のセクターについて尋ねられたらEnterキーを押すだけです。ディスク全体。
    6. tを使用して、パーティションの「タイプ」を変更します。ディスク上でFAT32ファイルシステムを使用する場合は0cを、NTFSを使用する場合は07を指定します。 (ただし、パーティションタイプは単なる数値であり、実際にはパーティションを決定しませんコンテンツ正直なところ、Windowsが0cとの違いを気にするかどうかはわかりません07。Linuxは間違いなくそうではありません。)
    7. wを使用して、変更を実際にディスクに書き込みます。

この後、ディスクのスペース全体をカバーする1つのパーティションを持つディスクができあがります。ディスクが/dev/sdaの場合、このパーティションは/dev/sda1になります。現在、ガベージ(暗号化されたデータの残り)が含まれているだけなので、mkfsコマンドの1つを使用してファイルシステムを作成します。

  • FAT32ファイルシステムを作成するには、mkfs.vfat /dev/sda1を実行します。

  • NTFSファイルシステムを作成するには、mkfs.ntfs /dev/sda1を実行します。

  • または、SystemRescueCdにmkfs.ntfsがない場合は、ディスクをWindowsコンピューターに接続し、そこで[フォーマット]オプションを使用します。

NTFSは、Linuxでの使用が少し難しくなる可能性があり、WindowsでもUSBドライブで使用すると問題が発生する可能性があります。一方、特に大きなディスクでは、FAT32よりもはるかに信頼性が高くなります。

このステップの後、/dev/sda1をマウントして使用できます。

さらに、「/ dev/fd0」の部分がどこから来たのか理解できませんでした。つまり、マウントしているものがすでにシステムの/ dev /フォルダーにあるということですか?

はい。 Linuxでは、/ dev /内の特別なファイル(デバイスノード)を介して多くのデバイスにアクセスできます。プログラムが/dev/fd0から読み取ると、フロッピーディスクに保存されている生データが表示されます(ファイルシステムをバイパスします)。同様に、/dev/sda(および/dev/sda1などのパーティション)を介してHDのコンテンツにアクセスし、/dev/rtc0を介してコンピューターの時計を制御し、/ dev/fb0, play audio by writing to/dev/snd/pcmC0D0p`を介して画面のコンテンツにアクセスできます。

fdiskparted、およびmkfs.*プログラムは、これを使用してパーティションテーブルを編集したり、新しいファイルシステムを作成したりします。

(Windowsでは、多くのデバイスにも同様の名前があります(例:\\.\Device\Harddisk0\Partition0)が、多少分離されており、どのフォルダーにも表示されません。)

デバイスノードはファイルとして表示されるため、多くの場合、そのように使用されます。 /dev/zeroはゼロバイトの無限のソースとして使用され、/dev/(u)randomはランダムデータのソースとして使用され、/dev/nullはそれに書き込まれたすべてのものを破棄するだけです。

3
user1686