Làm cách nào để loại bỏ iso 9660 khỏi USB?


21

Tôi bằng cách nào đó đã quản lý để ghi một hình ảnh iso 9660 vào ổ USB của mình, điều này khiến tất cả máy tính của tôi nghĩ rằng thiết bị thực sự là một đĩa CD. Tôi đã thử nhiều phương pháp loại bỏ phân vùng này, nhưng dường như không có gì hoạt động. Tôi đã thử fdisk, nói rằng

$ fdisk -l / dev / sdb
Không thể mở / dev / sdb
sự cố chia tay khi tôi cố gắng sử dụng nó trên thiết bị này.

Tôi thậm chí đã thử

$ dd nếu = / dev / zero of = / dev / sdb
nhưng nó chỉ bị treo mà không có đầu ra (trên màn hình hoặc trên đĩa). Tuy nhiên, khi tôi cắm USB vào, nó sẽ gắn kết và tôi có thể xem (nhưng không chỉnh sửa) các tệp trên đó.

chỉnh sửa : bây giờ kết quả là

$ dd nếu = / dev / zero of = / dev / sdb
dd: mở `/ dev / sdb ': Hệ thống tệp chỉ đọc

Tôi cũng đã thử định dạng lại nó trên Windows, nhưng nó đã kết thúc quá trình định dạng và sau đó nói "Không thể định dạng ổ đĩa".

Làm cách nào để xóa phân vùng này và đưa toàn bộ ổ USB của tôi trở lại bình thường?

EDIT 1 : Thử đơn giản mkfskhông hoạt động:

$ sudo mkfs -t vfat / dev / sdb
mkfs.vfat 3.0.0 (28 tháng 9 năm 2008)
mkfs.vfat: Sẽ không thử tạo hệ thống tệp trên thiết bị toàn đĩa '/ dev / sdb' (sử dụng -I nếu muốn)
Tôi không thể làm mkfstrên /dev/sdb1vì không có phân vùng như vậy, như thể hiện:
$ ls / dev | grep sdb
sdb

EDIT 2 : Đây là thông tin được đăng bởi dmesg khi tôi cắm thiết bị vào:

$ dmesg
.
. (bắn tỉa)
.
usb 2-1: Đã tìm thấy thiết bị USB mới, idVendor = 058f, idSản phẩm = 6387
usb 2-1: Chuỗi thiết bị USB mới: Mfr = 1, Product = 2, serialNumber = 3
usb 2-1: Sản phẩm: Lưu trữ lớn
usb 2-1: Nhà sản xuất: Chung
usb 2-1: Số sê-ri: G0905000000000010885
lưu trữ usb: thiết bị được tìm thấy tại 4
lưu trữ usb: chờ thiết bị ổn định trước khi quét
lưu trữ usb: quét thiết bị hoàn tất
scsi 6: 0: 0: 0: Ổ đĩa FLASH truy cập trực tiếp AU_USB20 8.07 PQ: 0 ANSI: 2
sd 6: 0: 0: 0: [sdb] 4069376 lĩnh vực phần cứng 512 byte (2084 MB)
sd 6: 0: 0: 0: [sdb] Write Protect bị tắt
sd 6: 0: 0: 0: [sdb] Cảm giác chế độ: 03 00 00 00
sd 6: 0: 0: 0: [sdb] Giả sử bộ nhớ cache của ổ đĩa: ghi qua
sd 6: 0: 0: 0: [sdb] 4069376 lĩnh vực phần cứng 512 byte (2084 MB)
sd 6: 0: 0: 0: [sdb] Write Protect bị tắt
sd 6: 0: 0: 0: [sdb] Cảm giác chế độ: 03 00 00 00
sd 6: 0: 0: 0: [sdb] Giả sử bộ nhớ cache của ổ đĩa: ghi qua
 sdb: bảng phân vùng không xác định
sd 6: 0: 0: 0: [sdb] Đĩa rời SCSI đính kèm
sd 6: 0: 0: 0: Đã đính kèm scg generic sg2 loại 0
Tiện ích mở rộng ISO 9660: Microsoft Joliet Cấp 3
Tiện ích mở rộng ISO 9660: RRIP_1991A
SELinux: đã khởi tạo (dev sdb, gõ iso9660), sử dụng genfs_contexts
CE: hpet tăng min_delta_ns lên 15000 nsec
Điều này cho thấy rằng thiết bị được định dạng như ISO 9660 và nó /dev/sdb .

EDIT 3 : Đây là thông báo mà tôi tìm thấy ở dưới cùng dmesgsau khi chạy cfdiskvà ghi một bảng phân vùng mới vào đĩa:

SELinux: đã khởi tạo (dev sdb, gõ iso9660), sử dụng genfs_contexts
sd 17: 0: 0: 0: [sdb] Thiết bị chưa sẵn sàng: Khóa Sense: Chưa sẵn sàng [hiện tại] 
sd 17: 0: 0: 0: [sdb] Thiết bị chưa sẵn sàng: <> ASC = 0xff ASCQ = 0xffASC = 0xff <> ASCQ = 0xff
end_Vquest: Lỗi I / O, dev sdb, sector 0
Lỗi I / O bộ đệm trên sdb thiết bị, khối logic 0
mất trang viết do lỗi I / O trên sdb


Bạn có chắc chắn nó luôn tải ở / dev / sdb không? Nếu bạn nhìn vào phần cuối của / var / log / message sau khi thiết bị được cài đặt, bạn sẽ thấy các thông điệp tường trình liên quan đến autoountount của nó.
mas

3
Bạn có chắc chắn nó không được gắn với cdfs hoặc tương đương không?
RBerteig

1
@ Slink84: Tôi nghĩ rằng tôi vừa mới đi sudo dd if=some.iso of=/dev/sdb- Tôi không thể nhớ làm bất cứ điều gì khác có thể làm điều đó
a_m0d

1
Hình ảnh là hình ảnh tiêu chuẩn eeebfox-3.0.0 - không biết ai là người tạo ra thiết bị, nhưng tôi nghĩ rằng đó là Toshiba
a_m0d

1
Từ cặp VID / PID, nó được tạo ra bởi "Alcor Micro Corp" và là "Transcend JetFlash Flash Drive". Tôi sử dụng danh sách tại linux-usb.org/usb.ids để tìm kiếm những thứ này.
RBerteig

Câu trả lời:


7

Được rồi, hóa ra trong trường hợp này, một cái gì đó (có thể khi tôi viết hệ thống tệp iso-9660 vào ổ đĩa) đã kích hoạt một số hình thức bảo vệ ghi nội bộ trên ổ đĩa. Không công tắc giữ / bảo vệ ghi bên ngoài, nhưng đây là đầu ra dmesgkhi tôi chạy

dd if=/dev/zero of=/dev/sdb

là gốc:

sd 9: 0: 0: 0: [sdb] Thêm. Sense: Viết được bảo vệ
end_Vquest: Lỗi I / O, dev sdb, sector 4028744
sd 9: 0: 0: 0: [sdb] Kết quả: hostbyte = DID_OK driverbyte = DRIVER_SENSE, SUGGEST_OK
sd 9: 0: 0: 0: [sdb] Khóa Sense: Bảo vệ dữ liệu [hiện tại] 
Thông tin fld = 0x0

Lưu ý các ý kiến ​​trong đó về bảo vệ! Tuy nhiên, khi tôi cắm thiết bị vào, tôi nhận được,

scsi 10: 0: 0: 0: Ổ đĩa FLASH truy cập trực tiếp AU_USB20 8.07 PQ: 0 ANSI: 2
sd 10: 0: 0: 0: [sdb] 4069376 lĩnh vực phần cứng 512 byte (2084 MB)
sd 10: 0: 0: 0: [sdb] Viết Bảo vệ bị tắt
sd 10: 0: 0: 0: [sdb] Ý thức chế độ: 03 00 00 00
sd 10: 0: 0: 0: [sdb] Giả sử bộ nhớ cache của ổ đĩa: ghi qua
sd 10: 0: 0: 0: [sdb] 4069376 lĩnh vực phần cứng 512 byte (2084 MB)
sd 10: 0: 0: 0: [sdb] Viết Bảo vệ bị tắt
sd 10: 0: 0: 0: [sdb] Ý thức chế độ: 03 00 00 00
sd 10: 0: 0: 0: [sdb] Giả sử bộ nhớ cache của ổ đĩa: ghi qua

Lưu ý rằng thông báo này nói rằng thiết bị không được bảo vệ ghi! Thật không may, có vẻ như đĩa đã có nó (tức là kaput ).


Trước đây tôi đã nghe về các thiết bị flash bị biến thành cục gạch nếu bạn đã từng sử dụng hệ thống tập tin không phải là FAT với chúng (vì chúng đã sử dụng FAT để biết khối nào không được sử dụng và có thể bị loại bỏ). Tôi đã không nghe về điều đó trong một thời gian dài và tôi không thể tìm thấy bất cứ điều gì về nó với một tìm kiếm nhanh trên Google.
CesarB

Cho đến nay tôi đã tìm thấy một người đề cập đến sự phụ thuộc của FAT: linux.derkeiler.com/Mail-Lists/Debian/2008-08/msg00761.html
CesarB

Rất tiếc khi biết rằng nó đã chết ... Heh, tôi nên vui mừng vì tôi đã không quản lý được vấn đề của bạn:] Mặc dù tôi đã thử nó trên một ổ đĩa 'dùng một lần' cũ, nhưng vẫn rất buồn khi mất nó đường.
Kirill Strizhak

vâng, đặc biệt là vì nó chỉ khoảng một tuần tuổi! ồ ...
a_m0d

1
Tìm thấy những gì tôi đang tìm kiếm: lkml.org/lkml/2009/3/16/363 ("Một số nhà sản xuất SDD (tôi không biết cái nào) thực sự đang kiểm tra bảng phân vùng và làm những việc khác nhau. Tôi biết điều này bởi vì họ bị gạch vĩnh viễn nếu một người viết bảng phân vùng không hợp lệ. ")
CesarB

6

Tôi chưa quen với công cụ quản trị hệ thống Linux này, vì vậy khi tôi gặp vấn đề tương tự, tôi đã chọc và không có sự điên rồ nào với phương pháp của mình nhưng đã tìm cách loại bỏ iso9660 fs và lấy lại ổ ngón tay cái.

sudo fdisk -l  /dev/sdb1

trả lại

Disk /dev/sdb1: 16.0 GB, 16037969920 bytes
64 heads, 32 sectors/track, 15295 cylinders, total 31324160 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: 0x57155aa7

     Device Boot      Start         End      Blocks   Id  System
/dev/sdb1p1            2048    31324159    15661056    5  Extended

Vì vậy, sau đó tôi đã cố gắng

sudo fdisk /dev/sdb1

Command (m for help): m
Command action
  . . .

theo dõi bởi

Command (m for help): d Extended
Selected partition 1

Command (m for help): v
Remaining 31324159 unallocated 512-byte sectors

Sau đó, khi được nhắc lại chọn fdisk để tạo bảng phân vùng dos trống (thứ mà tôi nghĩ rằng tôi có thể ghi đè lên bất cứ thứ gì tôi muốn sau này)

Command (m for help): v
Remaining 31324159 unallocated 512-byte sectors

Command (m for help): o
Building a new DOS disklabel with disk identifier 0xea06616f.
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)

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

Tôi lấy các tin nhắn trả về có nghĩa là ít nhất tôi đã "phá vỡ" iso9660 fs nên đã tiếp tục thử mkfs

sudo mkfs /dev/sdb1

mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
979200 inodes, 3915520 blocks
.195776 blocks (5.00%) reserved for the super user
First data block=0
.Maximum filesystem blocks=4009754624
120 block groups
32768 blocks per group, 32768 fragments per group
8160 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Tất cả điều này để lại cho tôi với thư mục "mất + tìm thấy" trên ổ ngón tay cái.

sudo mount /dev/sdb1 /media/
ls /media/
lost+found

Cuối cùng, tôi đã truy cập trang web Ubuntu ( http://www.ubfox.com/doad/ubfox/doad , phần 2) và sử dụng cây gậy để tạo một hình ảnh có thể khởi động của Ubuntu để sử dụng thử và nó cho tôi. Vẻ đẹp của hình ảnh Ubuntu được thực hiện trên thanh theo cách này là chúng có thể bị xóa dễ dàng và thanh được lấy lại để sử dụng khác.

Tôi đề cập đến bước cuối cùng này bởi vì nhìn nhận lại tôi tự hỏi liệu tôi đã làm điều đó ngay từ đầu rằng nó sẽ hoạt động chưa, tôi không biết. Như đã đề cập, tôi chưa quen với công cụ Linux này và đang thử các bản phân phối khác nhau (ví dụ Fedora, Ubuntu, v.v.) trên đĩa CD trực tiếp với bất kỳ phương tiện nào thuận tiện nhất và tôi chắc chắn sẽ phá vỡ nhiều thứ trên đường đi.


Tôi rất muốn thử các bước của bạn để xem liệu điều đó có khắc phục được không, nhưng tôi dường như không còn cây gậy nữa, thật tiếc là tôi không biết liệu họ có giúp được không. Tuy nhiên, điều này vẫn có thể hữu ích cho những người khác có cùng vấn đề.
a_m0d

5
mkdosfs -I /dev/sdb

sẽ tạo một hệ thống tập tin vfat trên ổ đĩa. -I phải được thông qua nếu bạn muốn hệ thống tệp được tạo trên toàn bộ ổ đĩa chứ không phải trên một phân vùng. Nếu bạn muốn phân vùng ổ đĩa trước, hãy sử dụng fdisk. Tất nhiên fdisk không thể đọc ổ đĩa ngay bây giờ, vì nó không có bất kỳ phân vùng nào. Nhưng tôi chắc chắn rằng nó sẽ có thể viết cho nó.


Không hoạt động - chỉ in số phiên bản và thoát. Ngoài ra, fdisk là "Không thể ghi / dev / sdb"
a_m0d

tôi vừa thử lệnh và nó ghi vào thiết bị được chỉ định. Nó cũng chỉ in số phiên bản. Bạn có thể kiểm tra điều này với một tệp thông thường mà bạn đã tạo bằng dd. Bạn có thể thấy những thay đổi mà nó thực hiện với od. Tôi đoán đó là một vấn đề phần cứng.
Kim

1
điều này giúp tôi loại bỏ hình ảnh có thể khởi động của Centos khi tất cả các giải pháp trên đều thất bại.

2

Nhìn vào dmesgđoạn trích, có vẻ như một cái gì đó là tự động gắn ổ đĩa (kiểm tra với mount). Trước khi làm bất cứ điều gì với nó, bạn nên cầm nó bằng tay.

Sau đó, zero khối với bảng phân vùng ( dd if=/dev/zero of=... bs=512 count=1) và chạy một công cụ phân vùng để tạo lại một bảng phân vùng trống. Sau đó, rút ​​phích cắm và cắm lại (không cần thiết, nhưng ...) và tạo / định dạng các phân vùng bạn muốn trên đó. Sau khi tạo các phân vùng (có lẽ bạn sẽ phải rút phích cắm và cắm lại), bạn nên có /dev/sdb1hoặc một cái gì đó tương tự, đó là nơi bạn nên tạo hệ thống tập tin.

Lưu ý rằng tất cả các bước nên được thực hiện dưới dạng root (có sudohoặc tương đương). Hãy cẩn thận để không viết sai tên thiết bị, hoặc bạn có thể xóa đĩa cứng của bạn!


1
Tôi đã làm điều đó, nhưng mặc dù toàn bộ đĩa dường như chứa đầy số không, nhưng nó vẫn bằng cách nào đó gắn kết và đọc đĩa!
a_m0d

1

Tôi vẫn cảm thấy rằng chúng ta đang cho rằng một cái gì đó sẽ trở thành sai sự thật. Vì thiết bị có thể đọc được, dòng này ít nhất sẽ cho phép bạn xem dữ liệu cho chính mình, thay vì phụ thuộc vào các diễn giải của các chương trình khác.

dd nếu = / dev / sdb đếm = 1 | xxd -g1 -u

Ngoài ra, có lẽ chúng ta có thể tách các vấn đề với nút dev khỏi các vấn đề với những gì trên thiết bị, bằng cách buộc nó vào một cổng khác. Hoặc cắm nó vào giắc USB khác hoặc cắm ổ đĩa khác trước để chiếm sdb.


hmm ... sử dụng lệnh này cho tôi biết rằng thiết bị chứa đầy số không, điều này có lẽ là do cuối cùng tôi đã xoay sở dd if=/dev/zero of=/dev/sdbđể chạy trên nó. Nhưng fedora vẫn gắn thiết bị dưới dạng ISO9660 fs khi được cắm!
a_m0d

Linux vẫn sử dụng / etc / fstab chứ? Đó là nơi những "hiệp hội" này từng được lưu trữ.
gbarry

Không, nó sử dụng (tôi nghĩ) udev, hoặc bất cứ thứ gì nó tự động gắn ổ đĩa.
a_m0d

1

Hiện tại ổ USB của bạn không có bảng phân vùng, hệ thống tệp iso9660 nằm trực tiếp trên toàn bộ đĩa (giống như một đĩa CD)

sd 6:0:0:0: [sdb] Assuming drive cache: write through
 sdb: unknown partition table

Tôi nghĩ bạn cần tạo một phân vùng trước

sudo cfdisk /dev/sdb

(đảm bảo rằng nó không được gắn trước đó) trong ứng dụng fdisk tạo phân vùng mới.

sau đó, tạo hệ thống tập tin trên phân vùng mới

sudo mkfs -t vfat /dev/sdb1

Đã thử điều này; cfdisk không tạo ra bất kỳ thông báo lỗi nào, nhưng xem nhanh dmesgcho thấy thực sự có thông báo lỗi. (xem Chỉnh sửa 3 trong câu hỏi ở trên)
a_m0d

1

Tôi đã có cùng một vấn đề như bạn. Tuy nhiên, tôi đã có thể tìm thấy một giải pháp từ một nơi đáng ngạc nhiên. Một máy tính xách tay cũ có Windows 98SE, đây là hệ thống Windows cuối cùng tôi từng sở hữu. Dù sao, chỉ cần đặt nó vào và khi bạn cố truy cập vào ổ đĩa, Windows sẽ hỏi bạn có muốn định dạng nó không. Nhấp vào có và bạn sẽ có một ổ đĩa định dạng fat16 có đầy đủ chức năng. Tôi không biết nếu nó hoạt động với các phiên bản Windows mới hơn. May mắn nhất.


Tất cả các cách lên đến Windows 8 :)
Sebastian Godelet

1

Có lẽ với một đơn giản

mkfs -t vfat /dev/sdb1

Không hoạt động - xem chỉnh sửa để đặt câu hỏi
a_m0d

1

Tối qua tôi đã làm

dd if=fedora.iso of=sdx  

Sau bốn giờ, tôi đã có một viên gạch iso9660 không thể thay đổi, không thể thay đổi. Theo dòng suy nghĩ của David, tôi đã gọi Ubuntu là 'người tạo đĩa khởi động' (Loại 'người tạo đĩa khởi động' trong dấu gạch ngang) và chỉ chọn 'xóa'. Điều đó đã làm nó.

Ổ USB sau đó đã được báo cáo là FAT32 và tất cả đều tốt.


Đôi khi nó là thích hợp để sử dụng một cái búa, như thế này. Tôi tự hỏi những gì trong một số lĩnh vực đầu tiên của ổ đĩa.
vgoff

0

Tháo ổ đĩa và xem nếu bạn vẫn có thể đọc từ nó. Tôi tự hỏi nếu bằng cách nào đó / dev / usb (hoặc bất cứ nơi nào bạn đọc từ) đã trở thành một thư mục tập tin bình thường.


Đã thử điều này - khi tôi cắm lại, nó sẽ hoạt động tốt và tôi có thể đọc mọi thứ tốt. Theo đó mount, nó là một hệ thống tập tin iso9660. Tuy nhiên, gparted chỉ hiển thị 2GB dung lượng chưa được phân bổ trên ổ đĩa. ddphàn nàn rằng / dev / sdb là một hệ thống tệp chỉ đọc
a_m0d

0

Bạn đã thử gắn lại nó với tùy chọn -t chưa?

umount / dev / sdb
sudo mount -t vfat / dev / sdb / mnt / point

Nếu điều đó không hiệu quả, tôi sẽ cố gắng tái tạo nó sau này khi tôi về nhà. Có vẻ như một vấn đề thú vị. Sẽ rất vui khi tinker với:]


Hah, nah, không hoạt động, vì mounttrước tiên hãy kiểm tra loại tệp
a_m0d

Đúng, nghi ngờ càng nhiều:] Ok, không còn ý tưởng 'ngoài màu xanh' nữa.
Kirill Strizhak

0

Cách tốt nhất và đúng đắn để làm điều đó là:

# wipefs --all /dev/sdX

Theo wipefshướng dẫn:

wipefs có thể xóa các chữ ký hệ thống tập tin, đột kích hoặc bảng phân vùng (chuỗi ma thuật) khỏi thiết bị được chỉ định để làm cho các chữ ký trở nên vô hình đối với libblkid.

wipefs không tự xóa hệ thống tập tin cũng như bất kỳ dữ liệu nào khác khỏi thiết bị. Khi được sử dụng mà không có bất kỳ tùy chọn nào, wipefs liệt kê tất cả các hệ thống tệp hiển thị và phần bù của chữ ký cơ bản của chúng.

wipefs gọi BLKRRPART ioctl khi nó đã xóa một chữ ký bảng phân vùng để thông báo cho kernel về sự thay đổi.

Điều này có nhiều ưu điểm như thông báo cho kernel về sự thay đổi (vì vậy bạn không gặp phải bất kỳ lỗi nào khi định dạng sau đó), không xóa dữ liệu cũng như hệ thống tập tin , v.v.


-1

U3 có một tiện ích để loại bỏ phân vùng U3 của họ. Nó cũng loại bỏ phân vùng / thiết bị được tạo bởi tiện ích tạo ra iso 9660. Điều này chỉ được xác nhận trên thanh usb u3, nhưng hiện tại nó có thể được định dạng và phục hồi toàn bộ không gian dưới dạng ổ đĩa flash. Bạn có thể cho nó một shot.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.