web-dev-qa-db-ja.com

cryptsetup:デバイスのヘッダーを消去できません

Ubuntu 14.04で外付けハードドライブを暗号化しようとしています このガイド 。私はext4にフォーマットすることから始めました:

$ Sudo mkfs.ext4 /dev/sde1
mke2fs 1.42.9 (4-Feb-2014)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
9773056 inodes, 39072470 blocks
1953623 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
1193 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done     

そして、初期化を続行しましたが、次のエラーが返されます。

$ Sudo cryptsetup -y -v luksFormat /dev/sde1

WARNING!
========
This will overwrite data on /dev/sde1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase: 
Verify passphrase: 
Cannot wipe header on device /dev/sde1.
Command failed with code 5: Cannot wipe header on device /dev/sde1.

これまでのところ、このエラーに関してウェブ上で役に立つものは何もありませんでした。何が間違っているのでしょうか?

アップデートIXen2050によって提起された質問 に答えます。フォーマット前にbablocksを書き込みモードで実行しましたが、エラーは報告されませんでした。

システムメッセージにもっと注意を払って、暗号化を再試行しました。ドライブを接続した直後のdmesg出力は次のとおりです。

$ dmesg
[ 3208.032228] usb 2-1.4: new high-speed USB device number 7 using ehci-pci
[ 3208.140990] usb 2-1.4: New USB device found, idVendor=059f, idProduct=0651
[ 3208.141001] usb 2-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3208.141024] usb 2-1.4: Product: LaCie Hard Drive USB
[ 3208.141031] usb 2-1.4: Manufacturer: LaCie
[ 3208.141037] usb 2-1.4: SerialNumber: 10000E000BD8A671
[ 3208.177576] usb-storage 2-1.4:1.0: USB Mass Storage device detected
[ 3208.178112] scsi4 : usb-storage 2-1.4:1.0
[ 3208.178183] usbcore: registered new interface driver usb-storage
[ 3209.176917] scsi 4:0:0:0: Direct-Access     SEAGATE  ST3160812A       3.AA PQ: 0 ANSI: 2
[ 3209.177561] sd 4:0:0:0: Attached scsi generic sg2 type 0
[ 3209.181342] sd 4:0:0:0: [sdb] 312581808 512-byte logical blocks: (160 GB/149 GiB)
[ 3209.182337] sd 4:0:0:0: [sdb] Write Protect is off
[ 3209.182348] sd 4:0:0:0: [sdb] Mode Sense: 53 00 00 08
[ 3209.183339] sd 4:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 3209.201618]  sdb: sdb1
[ 3209.229465] sd 4:0:0:0: [sdb] Attached SCSI disk

次に、マウントされていないことを確認しました。

$ findmnt /dev/sdb
$ findmnt /dev/sdb1
$

初期化の別の試み:

$ Sudo cryptsetup -y -v luksFormat /dev/sdb1

WARNING!
========
This will overwrite data on /dev/sdb1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase: 
Verify passphrase: 
Cannot wipe header on device /dev/sdb1.
Command failed with code 5: Cannot wipe header on device /dev/sdb1.

ログに2つの新しい行が表示されます。

$ tail /var/log/syslog
Dec  8 09:18:20 MekanikDestruktiwKommandoh kernel: [ 3698.016311] end_request: critical target error, dev sdb, sector 0
Dec  8 09:18:28 MekanikDestruktiwKommandoh wpa_supplicant[1188]: wlan0: CTRL-EVENT-SCAN-STARTED 

セクター0で何か問題が発生しているように見えますが、何がはっきりしているかはわかりません。

アップデートIIXen2050による新しい提案 を試してください。最初にセクター0にゼロを書き込む:

$ Sudo dd if=/dev/zero of=/dev/sdb1 bs=1M count=10
10+0 records in
10+0 records out
10485760 bytes (10 MB) copied, 0.564427 s, 18.6 MB/s

この後、cryptsetup初期化はまだ失敗します。 wipefsは奇妙な警告を返します:

$ Sudo wipefs -a /dev/sdb
wipefs: WARNING: /dev/sdb: appears to contain 'dos' partition table

そしてどうやら何もしません。次に、cryptsetupフラグを指定してdebugを実行しました。新しいものを大量に出力しましたが、エラーに関する詳細情報は提供していません。

$ Sudo cryptsetup --debug -y -v luksFormat /dev/sdb
# cryptsetup 1.6.1 processing "cryptsetup --debug -y -v luksFormat /dev/sdb"
# Running command luksFormat.
# Locking memory.
# Installing SIGINT/SIGTERM handler.
# Unblocking interruption on signal.

WARNING!
========
This will overwrite data on /dev/sdb irrevocably.

Are you sure? (Type uppercase yes): YES
# Allocating crypt device /dev/sdb context.
# Trying to open and read device /dev/sdb.
# Initialising device-mapper backend library.
# Timeout set to 0 miliseconds.
# Iteration time set to 1000 miliseconds.
# Interactive passphrase entry requested.
Enter passphrase: 
Verify passphrase: 
# Formatting device /dev/sdb as type LUKS1.
# Crypto backend (gcrypt 1.5.3) initialized.
# Topology: IO (512/0), offset = 0; Required alignment is 1048576 bytes.
# Generating LUKS header version 1 using hash sha1, aes, xts-plain64, MK 32 bytes
# Crypto backend (gcrypt 1.5.3) initialized.
# KDF pbkdf2, hash sha1: 356173 iterations per second.
# Data offset 4096, UUID 5fa9c58f-b047-4c9e-a6e8-26a9a433a438, digest iterations 43375
Cannot wipe header on device /dev/sdb.
# Releasing crypt device /dev/sdb context.
# Releasing device-mapper backend.
# Unlocking memory.
Command failed with code 5: Cannot wipe header on device /dev/sdb.
1
Luís de Sousa

ある仲間は、次のような行でターゲットパーティションの最初の数メガに手動でゼロを書き込むことで、この(または非常に類似した)エラーを解決しました。

 dd if=/dev/zero of=[target] bs=1M count=2

または、上書きFS問題)の場合、wipefsは上記の/ではなく動作する可能性があります。

また、別の情報では、詳細情報を取得するためにcryptsetupで「--debug」オプションを使用しました。最初に試す価値があります。


「Update II」情報テストでは/ dev/sdb1を使用してから/ dev/sdbを使用しますが、違いがあるかどうかはわかりません。

ここに別の男 言う」私はフロッピー、サムドライブ、ハードドライブに「セクター0」の問題がありましたが、これらはすべてLinux Live CDに入れることで修正され、 dd if=/dev/zero of=/dev/hdN bs=1024 count=1024 "

このバグレポートのコメント 別の外部USBハードドライブと「end_request:重大なターゲットエラー、dev sdb、セクター0」 Ubuntu 12.04は動作したが、14.04は動作しなかったと言われているようです。 他の人が言う おそらく、USB電源が不良または不適切であるか、ハードウェア(エンクロージャ、ワイヤ、ハードドライブ)に障害がある

結果とアドバイスが入り混じっています。 USBエンクロージャーでも最高の運がなかったので、別のエンクロージャーまたはデスクトップ/エサタケーブルへの直接接続を試してみたいと思います。

1
Xen2050