Cygwinを使用してSDメモリカードから画像をコピーする方法


30

簡単に言えば、私はWindows 7マシンで作業しており、SDカードから画像を削除したい(Raspberry Piからカードをバックアップする)。Cygwinを使用しようとしていますが、あまり成功していません。

/devディレクトリを調べると、SDカードがsddand として表示されているようsdd1です。ただし、次のコマンドを実行すると:

dd if=/dev/sdd of=RPi.img

私は次を取得します:

dd: '/ dev / sdd'を開く:許可が拒否されました

私はddをMacおよびLinuxで問題なく使用し、同様の構文を使用しました。Cygwinには何が欠けていますか?


試しましたdd if=/dev/sdd1 of RPi.imgか?
クルーグ

これを行うと、4 GBのSDメモリカードから最大59 MBのファイルしか取得できません。基本的に、カードをリーダーに挿入すると、Windowsが「見る」カードの部分のみを取得します。完全な画像ではありません。
グランドアドミラル

Windowsで試す代わりに、LinuxマシンまたはLinux LiveCDを使用できますか?
クルーグ

私はラップトップの内部リーダーを使用しているため、仮想LinuxマシンではSDメモリーカードが表示されないようです(VMware PlayerとVirtualBoxを試しました)。それからそれを締めくくります...私はラップトップにもCDバーナーを持っていません。:)私は自宅で使用できるMacを持っています。現在の状況で機能するものを見つけようとしていました。cygwinは機能するはずだったようです。
提督

4
「cat / proc / partitions」を使用して、接続されているSDメモリーカードの名前を取得できることもわかりました。
提督

回答:


27

そうでPermission deniedはないため、エラーが発生しますroot。それはCygwinのコンテキストでは奇妙に聞こえますが、それは家に当たります。

id通常起動したCygwinシェルでステータス()を照会すると、次のようなものが得られます。

$ id
uid=1001(user) gid=545(Users) groups=545(Users),555(Remote Desktop Users),513(None)
$ dd if=/dev/sda bs=1000 count=1 | wc -c
dd: opening `/dev/sda': Permission denied
0

Windows 7ではroot、Cygwin になるための秘the は、昇格したセッションを開始することです。つまり、Cygwinアイコンを右クリックして、「管理者として実行」を選択します。今はまだroot自分自身ではありませんが、少なくともrootのグループでは:

$ id
uid=1001(user) gid=545(Users) groups=545(Users),0(root),544(Administrators),555(Remote Desktop Users),513(None)

そして今、ddあなたがUn * xから慣れているように動作します:

$ dd if=/dev/sda bs=1000 count=1 | wc -c
1+0 records in
1+0 records out
1000 bytes (1.0 kB) copied, 0.00104424 s, 958 kB/s
1000

非常に興味深い、そしてそれは動作します。ありがとう!この方法とUSB Image Toolの両方が解決策を提供しますが、この答えは私の最初の質問により直接的に関連しているので受け入れます。
グランドアドミラル

私はこのようにルートのメンバーではありません。何か変わったことはありますか?
-Pysis

1
@Pysis:今日のアップデートの時点で、現在のcygwinバージョン(CYGWIN_NT-6.1-WOW 2.7.0(0.306 / 5/3)2017-02-12 13:13 i686 Cygwin)で、この方法でルートになることができます。たぶんSOのstackoverflow.com/q/4090301はあなたのために役立つかもしれません!?
mpy

cygwin1.dllから2.6.1があるようです(cygcheck)。「0(ルート)」は取得できませんが、「401408(ローカルアカウントおよび管理者グループのメンバー)」、「544(管理者)」、および「401504(高必須レベル)」の代わりに取得しますWindows 10 Pro x64-bitシステムでは「必須レベル(中)」)。コンテキストは、私が実行したかっfdiskたということですが、それでも助けにはならないようです。ただしdd、ここでは好奇心が強いブロックデバイスストリームファイルなど、特権アクセスで他のツールをうまく実行できたかもしれません。
-Pysis

@Pysis:これはW10と関係があるのでしょうか?!-残念ながら、私はW7のみを使用しているため、推測することしかできません。
mpy

11

最近、WindowsでUSBドライブのクローンを作成する必要がありました。私のドライブは追加のソフトウェアを備えたマルチブートなので、FS上のすべてのファイルをコピーしたくありませんでした。DDは明確な選択でしたが、私はLinuxを使用していなかったため、動作させるためにやらなければならないことがいくつかありました。

cygwinをインストールして、以下を実行しました。

最初に、f:ボリュームがどの/ dev / sdXデバイスであるかを把握する必要がありました。そのためには、cygwinでこのコマンドを実行します。(ヒント:必ずcygwinを管理者権限で起動してください。* cygwinを右クリックして、「管理者として実行」)

    cat /proc/partitions
which should output:
   8 0 3813383838 sda
   8 1       4031 sda3 C:\
   8 15  30588303 sdb 
   8 15  30588303 sdb1 E:\
   8 21  30530020 sdc
   8 22  30530020 sdc1 F:\

etc ...ここで、F:ドライブをE:ドライブに複製することを明確に確認できます。次のコマンドを発行します。

実際にはもう1つのステップがあります。デバイスのルートを見つける必要があります。デバイスのサイズのsd *を探します。上記のように8GB、16GB、32GBをバイトとして拡張するなど、サイズがよく知られているはずなので、この全体は簡単です。

dd if=/dev/sdc of=/dev/sdb bs=8M

私の画像は32GBでした。そして、カーソルを点滅させてただ座って待ちたくありませんでした。進行状況を確認したいので、cygwinに「pv」をインストールしました。

dd if=/dev/sdc | pv | dd of=/dev/sdb bs=8M

サムドライブを画像にコピーする場合は、次を実行します。

dd if=/dev/sdX | pv | dd of=/cygdrive/c/Users/Myname/Desktop/mythumbdrive.img bs=8M

お役に立てれば


2

USB Image Toolのようなものは機能しますか?
または、Cygwinの使用を主張していますか?...


Cygwinの使用を主張しません。SDメモリーカードを表示するとき、そのツールは少し奇妙でした(情報が消えることもありますが、Windowsが何かをしていたのかもしれません)が、動作しているようで、本当に高速でした。コンピューターに4 GBのファイルがありますが、これは予想したサイズです。念のため、実際の「dd」コマンドのバージョンと比較してみます。それがよさそうであれば、あなたの答えを受け入れます。ありがとう!
提督

さて、ファイルは一致しませんでしたが、それは私のせいかもしれません。最初の画像を取得した後、RPiについては考えずに起動したと思います。さて、少なくとも今私が望んでいたバックアップがあり、Windowsで機能する道を試すツールがあります。最悪の場合、私はただ家に帰り、健全なコンピューター/ OSを使用します。:)
提督

2

私はdd for Windowsで成功しました。これは移植ではなく書き換えだと思います。オープンソースであり、Cygwinに依存しません。

特に気に入ったのはdd --list、すべてのディスクデバイスと、必要なデバイスを識別するのに十分な情報を一覧表示するコマンドです。


1

HDD Raw Copy Toolは、SDカードのコピーを作成できます。保存ダイアログで「Raw image(dd image)」を選択すると、ddで作成されたものと同じになります。イメージも復元できます。

私はそれがcygwin経由ではないことを知っていますが、個人的にはrawデバイスにアクセスすることを信用しません。


Raw画像を保存するオプションはどこで入手できますか?ソース(SDメモリカード)と宛先(HDD)を選択できる場所を確認しましたが、[スタート]ボタンがありました。次に何が起こるかが明確ではなかったため、プログラムを終了しました。
提督

最初にドライブをダブルクリックしてから、次の画面で「ファイル」オプションをダブルクリックして、画像の保存先を選択できます。
yuikonnu

0

私がいることがわかりRaspberryPi.orgは今推奨しているWin32のディスクイメージャを SDメモリーカードに画像を書き込むため。また、カードから画像を読み取るので、今試しています。


システムディスクを破壊するという報告があるので、私はその1つに触れることを拒否します。まれですが、ハードウェアに依存するため、リスクを冒すつもりはありません。
tjmoore 14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.