web-dev-qa-db-ja.com

ドライブを分離する方法は?

質問

Linuxの起動時に、「vmlinuz…」行に追加できるオプションがあります。これにより、OSが(少なくともそのセッションで)NVMe SSDを表示またはアクセスできなくなり、他のすべてのハードウェアを検出およびマウントできるようになります。

環境

私はLinuxにかなり慣れておらず、まだ学んでいます。各OSインスタンスが他のインスタンスから効果的に「エアギャップ」されているマルチブートセットアップを(異なるパーティションではなく、異なるドライブから)作成したいと思います。次に、起動時にBIOSで起動するドライブと、起動するドライブを選択できます。そのOSは他のドライブを認識できません。

ドライブを物理的に交換することが実用的でないラップトップを使用しており(少なくとも頻繁には)、NVMeドライブからWin 10 Proを実行して(デバイスマネージャーでSATAドライブを無効にして)、さまざまなLinuxディストリビューションをいじくり回したいと思っています。 NVMeドライブ上のデータを安全に保ちながら、SATAドライブまたはLive CD(NVMeドライブは見えない状態)からそれらを実行します。

いくつかのシステム情報

  • BIOS
    AMI Aptio 2.18.126
    ファームウェアVer1.05.03
  • チップセット
    Intel Z170
  • プロセッサフ​​ァミリ
    Skylake
  • NVMeドライブ
    Samsung 950 Pro
  • SATAドライブ
    Samsung 850 Pro

@ EugenRieck、@ davidgo、@ TwistyImpersonator、@ dirkt、@ KamilMaciorowski、そして時間を割いて返信してくれたすべての人に感謝します。

ダークの質問に答えて。私が目指していたのは、データとOSを備えた「ドライブa」が「ドライブb」で実行されるものから分離されたマルチブートセットアップでした。理想的には、ハードウェアスイッチを介して、BIOSで選択したドライブ(またはドライブポート)を無効にするのが便利ですが、私のシステムにはそのオプションがありません。コマンドラインを介して起動時にLinuxカーネルオプションを構成することを参照していることがいくつかあるので、その方法でドライブを無効にできるかどうか疑問に思いました。このアプローチは、事前構成されたLive CDのようなものや、「ドライブb」にインストールしてセットアップするものすべてに簡単に適用できるため、便利なように縫い合わされています。 (その方法の詳細については、Eugenに再度感謝します)。 Davidが彼の投稿で言ったことから、そのようなカーネルコマンドはオーバーライドされていないように思えます。たとえば、IPTablesの構成を間違えたり、a =の構成を間違えたりした場合、少しのマルウェアがNVMeドライブに到達するというこのようなアプローチではかなり些細なことです。 VMまたは、いくつかのユニークなクリエイティブ機能を備えているように見えたが、実際には破損しているパッケージをインストールします。それは正しいですか?

2
user969571

これはかなり簡単です。modprobe.blacklist=nvmeのブートコマンドラインパラメータがその仕事をします。

[〜#〜]編集[〜#〜]

コメントで求められているように、ここにいくつかの背景があります:

  • modprobeは、デバイスが検出されたときにドライバーが自動的に読み込まれるメカニズムです。そのため、PCIeバスでNVMeドライブが検出されると、ドライバーをロードするために呼び出されます。
  • ドライバーを自動的にロードしたくない状況がいくつかあるため(正規の例はnouveau対ベンダーのバイナリnvidiaドライバーです)、このメカニズムには「ブラックリスト」機能が含まれています。停止します。ドライバーの自動読み込み。
  • このブラックリストは、/etc/modprobe.dでファイルを編集するか、カーネルコマンドラインを介して開始できます。あなたの質問がブートコマンドラインを明示的に述べているので、私は後者を使用しました。
  • ブロックデバイスとしてNVMeドライブにアクセスできるようにするドライバー(カーネルモジュール)は、当然のことながら「nvme」と呼ばれます。

これらすべてをまとめると、前述のコマンドラインになります。特に風変わりなラップトップでは、このようなパラメータを使用することは絶対に珍しいことではありません。基本的には、WindowsデバイスマネージャーでSATAドライバーを無効にするのとまったく同じです。

3
Eugen Rieck