起動可能なUSBドライブを作成しましたamd64用Debianネットワークインストーラ。インストーラにいくつかの無料ファームウェアを含めたいのですが、USBドライブにあるインストーラのファイルシステムは読み取り専用です。
無料ではなくファームウェアを含むインストーラがあることを知っていますが、学習目的でそれを書き込み可能にする方法を知りたいです。これにより、独自のカスタムインストーラを作成できます。
まず、以前のchmodを使ってみました。
$ sudo chmod 777 -R 'media/maxim/Debian 9.4.0 amd64 n'
ただし、USBドライブ上のすべてのファイルとフォルダに次のエラーが発生します。
chmod: changing permissions of 'Debian 9.4.0 amd64 n': Read-only file system
インターネット検索の後、chmodはファイル権限を変更するには書き込み権限が必要なので、chmodは私が望むものを達成できないことに気づきました。
その後、次のコマンドを試しました。
$ sudo hdparm -r0 /dev/sdb1
/dev/sdb1:
setting readonly to 0 (off)
readonly = 0 (off)
しかし、うまくいきません。それでも読み取り専用です。私も/dev/sdb
同じ結果を持って代わりにこれを試しました/dev/sdb1
。
それからrwで再インストールしてみましたが、やはり動作しませんでした。
$ sudo mount -o remount,rw /dev/sdb1
mount: /media/maxim/Debian 9.4.0 amd64 n: cannot remount /dev/sdb1 read-write, is write-protected.
だから基本的に私の質問は:DebianインストーラのファイルシステムをUSBドライブに書き込むことができる方法は何ですか?
答え1
インストーラはISO9660(CD-ROM)ファイルシステムです。書き込み可能にする方法はありません。その場で変更することはできません。再構築する必要があります。
より低いレベルでは、書き込み可能なファイルシステム(たとえば)のディレクトリにファイルをコピー~/myinstaller
、変更、およびgenisoimage
新しいISOイメージを使用または作成しようとしますxorriso
。イメージを起動可能にするには、いくつかのオプションを追加する必要があります。
手を汚したくない場合は、debian-cd
公式のDebianインストールイメージをビルドするパッケージを入手して、カスタムインストーラをビルドしてください。または、必要なカスタマイズがで提供されていることを確認してくださいsimple-cdd
。
答え2
Wumpusは正しいです。ただし、Debian インストーラは ISO を再パッケージ化しなくてもファームウェアでパーティションを接続する準備ができていると約束します。バラより https://www.debian.org/releases/stretch/amd64/ch04s03.html.en、「sdX2」および「tar」に関するパラグラフ4.3.1の終わり。
つまり、Debian netinst ISOの生成に使用されたxorrisoオプションは、「/.disk/mkisofs」というISOファイルに公開されます。その大部分はJigdo製作のためのもので、「-jigdo」で始まります。省略できます。
特定の起動可能なISOの起動オプションに関する提案を受け取るには、次の手順を実行します。
xorriso -indev debian-9.4.0-amd64-netinst.iso -report_system_area as_mkisofs
推奨される「--interval:local_fs:...-netinst.iso」の代わりに、ファイルパス「/usr/lib/ISOLINUX/isohdpfx.bin」を使用するか、ISOからMBRテンプレートファイルを切り取ることができます。
dd if=debian-9.4.0-amd64-netinst.iso bs=1 count=432 of=isohdpfx.bin