添加 ISO 后,USB 磁盘卡在只读状态

添加 ISO 后,USB 磁盘卡在只读状态

这个问题可能之前有人问过,但我找不到,所以我会再问一次。以下是我所做的:

sudo dd if=./windows.iso of=/dev/sdb

#sdb 是 64gb 的 USB 磁盘

之后,我无法添加到磁盘,因此我将其格式化为 NTFS,并尝试手动复制文件,此时我收到此错误:

在此处输入图片描述

我认为这不是一个 Ubuntu 的问题,而是一个 dd 的问题,或者是我使用 dd 的能力的问题,因为我之前在 mint 和 cyanogenmod 上使用 dd 时也遇到过同样的问题。

答案1

一个快速修复(以及一种破解)使其退出只读模式(这将删除 USB 设备的内容!)是在 ubuntu 中打开“启动磁盘创建器”并选择擦除该设备,它将退出只读模式。

“这有效。但是为什么呢?我怎样才能在终端中做到这一点?”

我不知道具体原因,但似乎与 Python 有关。我正在做一些调查,并将报告任何发现。

如何在终端中:

根据这个帖子您可以使用 hdparm 更改只读属性,如下所示(假设设备是 /dev/sdb):

sudo hdparm -r0 /dev/sdb

然后,重新安装设备。这可能涉及简单地拔下并重新插入设备,或者您可以运行以下命令以读/写模式重新安装设备:

sudo mount -o remount,rw /dev/sdb /media/$USER/8E22-6590

答案2

首先找出设备:lsblk

假设 USB 驱动器处于 状态/dev/sdb。如果其任何分区已挂载,则将其全部卸载。

让我们将设备清零。这将彻底清除其所有分区和数据。请确保您使用的是dd正确的设备,以防万一/dev/sdb

$ sudo dd if=/dev/zero of=/dev/sdb; sudo sync

使用您选择的任何磁盘实用程序(、、gdisk)并在其上创建一个分区。fdiskgparted

$ sudo gdisk /dev/sdb

Command (? for help): n
Partition number (1-128, default 1): <enter>
First sector (34-15634398, default = 2048) or {+-}size{KMGTP}: <enter>
Last sector (2048-15634398, default = 15634398) or {+-}size{KMGTP}: <enter>
Hex code or GUID (L to show codes, Enter = AF00): 0700
Changed system type of partition to 'Microsoft basic data'

Command (? for help): w
    Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!!

Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/disk1.
The operation has completed successfully.

gdisk 不会创建文件系统,因此运行..

$ sudo mkfs.vfat /dev/sdb1

答案3

每次我将可启动 CD/DVD 复制到闪存驱动器时,我都会使用一个名为 unetbootin 的实用程序。它使闪存驱动器在各个方面都与光盘驱动器完全相同,这意味着它的只读状态保持不变。

如果要在闪存驱动器上创建 Ubuntu 安装,则必须采用老式方法,即直接将 Ubuntu 安装到闪存介质上,就像它是硬盘一样。它与将其安装到硬盘上一样,难度不大,但这是(据我所知)实现真正安装的唯一方法。

如果你看过我的个人简介,你就会发现,好几年来我一直都在做这件事,维护一个完美的(IMHO)主安装,并将主安装克隆到空白的高速 USB 闪存驱动器上。

相关内容