Linux上でのオペレーティングシステムイメージのインストール

ddツールを使用するとマシンのパーティションが上書きされる可能性があることに気を付けてください。 以下の手順において、間違ったデバイスを選択してしまうと、あなたのメインLinuxのパーティションを削除してしまうかも知れません。 注意してください。

  • 現在マウントされているデバイスを調べるために、df -hを実行してください。
  • あなたのコンピュータにSDカードスロットがある場合、カードを差し込んでください。 もしスロットが無い場合には、SDカードリーダに差し込んで、 コンピュータにリーダを接続してください。
  • 再度df -hを実行してください。 新しく現れたデバイスがあなたのSDカードです。 左の列は、/dev/mmcblk0p1/dev/sdd1のように表示され、 SDカードのデバイス名を表します。 表示名の最後の部分(それぞれのp11)は パーティションナンバーですが、ここでは1つのパーティションだけではなくSDカードの全体に書き込みをしたいです。 ですので、SDカード全体を示すために、デバイス名から該当部分を削除した名前 (例えば/dev/mmcblk0/dev/sdd)を使用する必要があります。 dfの出力内で、SDカードは1回以上表示される可能性があることに気を付けてください。 これは以前にラズベリーパイのイメージをSDカードに書き込んでいる場合に起こり、 ラズベリーパイのSDイメージは複数のパーティションを持っているためです。
  • ここまでで、SDカードのデバイス名が分かりました。 SDイメージをコピーしている間にファイルの読み書きがされないように、 これをアンマウントする必要があります。
  • umount /dev/sdd1を、sdd1の部分を あなたのSDカードのデバイス名(パーティションナンバーを含む)に置き換えて実行してください。
  • SDカードに複数のパーティションがあることによりdfの出力に 1回より多くあなたのSDカードが表示された場合は、 それらのパーティションすべてをアンマウントする必要があります。
  • 最後に、下記のコマンドでSDカードにイメージを書き込んでください。 入力ファイルif=の引数をあなたの.imgファイルへのパスに置き換え、 出力ファイルof=の引数を/dev/addを正しいデバイス名に置き換えることに注意してください。 デバイス名を間違えるとハードディスク内のすべてのデータを失いますので、これはとても重要です。 上で説明したようにデバイス名が、1つのパーティションではなく、SDカード全体の名前であることも確認してください。 例えば、sdds1sddp1ではなくsddを、 mmcblk0p1ではなくmmcblk0を使用してください。
    dd bs=4M if=2015-02-16-raspbian-wheezy.img of=/dev/sdd
  • ほとんどの場合、ブロックサイズを4Mに設定するとうまく動作します。 もしダメであれば、かなり時間はかかりますが1Mで試してみてください。
  • もしルート権限でログインしていない場合には、コマンドの最初にsudoを置く 必要があることに気を付けてください。
  • ddコマンドは進捗情報を表示しないため、フリーズしているように見えるかも知れません。 SDカードへの書き込みが終わるまでには5分以上かかるでしょう。 もしカードリーダにLEDが付いているのであれば、書き込み中に光るかも知れません。 書き込み動作の進捗を調べるためには、pkill -USR1 -n -x dd を別のターミナルから実行してください。 管理者権限でログインしていない場合は、sudoをつけて実行してください。 進捗はpkillを実行したウインドウではなく、元のウインドウに表示されます。 バッファリングがありますので、すぐには表示されないかも知れません。
  • ddの代わりにdcflddを使用することも可能です。 これは、どれだけ書き込まれたについて進捗を表示してくれます。
  • SDカードに書かれたイメージをddによって確認することができます。 SDカード上のイメージをハードディスク上に戻して、 元のイメージと同じサイズになるよう切り詰めたものを diff(またはmd5sum)を実行して 元のファイルと比較することです。
  • SDカードは元のイメージよりもサイズが大きい可能性があり、 ddはカード全体のコピーを作成します。 従って、元のサイズと同じサイズになるよう新しいイメージを切り詰めなければいけません。 if=の引数を正しいデバイス名に置き換えることに注意してください。 diffが、それらのファイルが同じものであると示さなければなりません。
    dd bs=4M if=/dev/sdd of=from-sd-card.img
    truncate --reference 2015-02-16-raspbian-wheezy.img from-sd-card.img
    diff -s from-sd-card.img 2015-02-16-raspbian-wheezy.img
  • SDカードを安全にアンマウントするために、syncを実行して、 書き込みキャッシュがフラッシュされることを保証してください。
  • SDカードをカードリーダから取り外してください。

このページについて

このページはラズベリーパイ財団が権利を保有するRaspberry Pi Documentation五十嵐システムズが日本語訳したものです。
Creative Commons Attribution 4.0 International Licenceのもとで公開されております。
原文はhttps://github.com/raspberrypi/documentationの成果によって作成されています。

なお、このページは2015年6月に翻訳しており、それ以後の更新内容は翻訳に反映していないため、内容が原文とは異なる場合があります。