UbuntuライブUSBを作成しました。
$ dd if=/path/to/ubuntu.iso of=/dev/sdb
ディストリビューションをインストールしました。さて、USBを再び通常のストレージ使用に切り替えたいと思います。
$ lsblk
sdb 8:16 1 15G 0 disk
├─sdb1 8:17 1 1,4G 0 part # Ubuntu is here
└─sdb2 8:18 1 2,3M 0 part # Extra space I guess
$ sudo gdisk /dev/sdb
> p # list patitions
Command (? for help): p
Disk /dev/sdb: 0 sectors, 0 bytes
Logical sector size: 512 bytes
Disk identifier (GUID): A9CA0E15-8539-47B8-9BD1-4942D18E789B
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 18446744073709551582
Partitions will be aligned on 2048-sector boundaries
Total free space is 0 sectors (0 bytes)
Number Start (sector) End (sector) Size Code Name
ご覧のとおり、リストされているパーティションがなく、ディスクが空であるように見えます。
それでも私は新しいものを作ってみました。
Command (? for help): n
Partition number (1-128, default 1):
First sector (34-18446744073709551582, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-18446744073709551582, default = 18446744073709551582) or {+-}size{KMGTP}:
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
次に、変更を作成します。
Command (? for help): w
Caution! Secondary header was placed beyond the disk's limits! Moving the
header, but other problems may occur!
Warning! The claimed last usable sector is incorrect! Do you want to correct
this problem? (Y/N): Y
Have adjusted the second header and last usable sector value.
Problem: partition 1 is too big for the disk.
Aborting write operation!
Aborting write of new partition table.
だから動作しません。私は何が間違っていましたか?現在、彼のUSB SickはまだLive USBとして使用できます。
編集1
いいですね。答えを受ける前に、各パーティションをフォーマットしてみました。
$ sudo mkfs.ext4 /dev/sdb1
$ sudo mkfs.ext4 /dev/sdb2
その後、パーティションIDを確認しました。
$ blkid /dev/sdb*
/dev/sdb1: UUID="eea83bc3-408b-4287-8c35-0cceeee837bb" TYPE="ext4"
/dev/sdb2: UUID="1138f1f8-0840-44fe-bb89-935993ed83af" TYPE="ext4"
以下を試してくださいfdisk
。
$ sudo fdisk /dev/sdb
fdisk: unable to read /dev/sdb: Invalid argument
その後、Alex Stragies
提案されているようにファイル署名を削除しました。
$ dd if=/dev/zero of=/dev/sdb count=4 bs=1M
fdisk
今回は効果がありました:
$ sudo fdisk /dev/sdb
私は新しいものを作りますmsdos
partition table
:
> o
Building a new DOS disklabel with disk identifier 0xb4151e51.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
You must set cylinders.
You can do this from the extra functions menu.
変更を保存して終了しますfdisk
。
> w
The partition table has been altered!
Syncing disks.
これでパーティションをチェックすると、fdisk
私のデバイスは16 GBではなく約4 MBと表示されます!私のUSBフラッシュドライブは約16GBでなければなりません。
$ sudo fdisk /dev/sdb
> p
Disk /dev/sdb: 4 MB, 4194304 bytes
131 heads, 2 sectors/track, 31 cylinders, total 8192 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 1 8191 4095+ ee GPT
gdiskを使用してください:
$ sudo gdisk /dev/sdb
> p
Disk /dev/sdb: 8192 sectors, 4.0 MiB
Logical sector size: 512 bytes
Disk identifier (GUID): 5A262CEA-114A-4DF7-B2D3-99634D40398A
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 8158
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 8158 3.0 MiB 8300 Linux filesystem
これを使用すると、lsblk
デバイスの容量が15GBで、2つのボリューム、つまり1,4Gと2,3Mがあることがわかります。
$ lsblck
sdb 8:16 1 15G 0 disk
├─sdb1 8:17 1 1,4G 0 part
└─sdb2 8:18 1 2,3M 0 part
どうしたの?私はここで完全に迷子になった
編集2
私はdd
countとfdisk
。 count = 2000を使用してdd
2 GBをコピーできます。
$ dd if=/dev/zero of=/dev/sdb count=2000 bs=1M
しかし、それはすべてです。を指定すると、count=3000
2GBのみがコピーされます。
明らかに、私は3年前にこの問題に遭遇し、以前のUSBスティックに問題がある可能性があることを聞いて諦めました。 Ubuntu Live USBスティックとしても使用してからフォーマットしましたが、破損しているため見つかりませんでした。今、同じ状況でUbuntuでもこれが起こっています。以前は何度もArch Linux USBスティックとして使用していましたが、再フォーマットしても失敗したことはありません。ユーザーは、ライブUSBスティックの作成(Ubuntuを使用)に関連する同じ問題を説明する別のスレッドをインターネットで見つけました。しかし、まだ明確な解決策を見つけることができませんでした。再フォーマットしたり、未割り当て領域のための新しいパーティションを作成したりするなどの提案をした人を読んだことがあります。明らかに誰かはすでにこの問題を経験して防弾解決策を見つけたでしょうか?それともUSBスティックが永久に紛失したのでしょうか?
ベストアンサー1
fdiskはiso9660ファイルシステムを見ているため、デバイスを開くことができない可能性があります。
これは確認できますblkid /dev/sdb*
。
とにかく、私はこれを試してみることができます:
dd if=/dev/zero of=/dev/sdb count=4 bs=1M
これにより、最初からすべてのファイルシステム署名が削除されます。fdisk /dev/sdb
もう一度お試しくださいタスクの開始
o
(新しいMS-DOSパーティションテーブルの作成)次にパーティションを追加し、キーを押して
n
からp
Enterキーを数回押して最大サイズを選択します。 (そうでない場合、fdiskは小さな仮想パーティションを作成します)t
必要に応じてパーティションタイプの変更を使用してください。
インストールがブロックデバイスの変更を確実に検出し、そのためにカーネルマップを更新できることを確認する必要があります。不明な場合と間にpartprobe
力を加えてください。dd
fdisk