AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 55089
Accepted
skolima
skolima
Asked: 2009-08-18 08:23:04 +0800 CST2009-08-18 08:23:04 +0800 CST 2009-08-18 08:23:04 +0800 CST

我应该使用什么工具将硬盘驱动器格式化为 UDF?

  • 772

(这是“ UDF 的分区 id / 文件系统类型是什么? ”的后续内容)

我知道将硬盘驱动器格式化为 UDF 的两种方法:

  • Windows Vista 或更高版本:“ format x: /fs:UDF”(请勿使用/q!)
  • Linux:“ mkudffs --media-type=hd --blocksize=512 /dev/sdx”

问题是“其他”操作系统根本无法识别磁盘已格式化:无论我尝试什么命令,它都拒绝安装它。

如何将硬盘驱动器格式化为 UDF,以便 Windows 和 Linux 都可以使用它?

编辑:更新了命令,现在结果应该可以在任一操作系统中使用。

windows
  • 3 3 个回答
  • 32445 Views

3 个回答

  • Voted
  1. Best Answer
    skolima
    2009-08-19T01:35:55+08:002009-08-19T01:35:55+08:00

    事实证明,使用/qWindows 上的开关是罪魁祸首:它启用了“快速格式化”,即格式化过程在后台继续进行,每次写入磁盘。一旦完成,驱动器就可以由 Linux 处理。

    • 17
  2. j0nam1el
    2014-08-30T06:36:44+08:002014-08-30T06:36:44+08:00

    在格式化 UDF 时,有一点需要注意,那就是在格式化 UDF 时使用正确的块大小是多么重要。如此处所述,使用与物理扇区大小不匹配的配置块大小可能意味着某些操作系统将无法将驱动器检测为有效的 UDF。

    受上面链接的答案(以及我的其他研究/测试)的启发,我编写了一个脚本来自动化 UDF 中的格式化过程——使用正确检测到的扇区大小。请参阅GitHub 上的 format-udf。显着特点:

    • 以通用磁盘格式 (UDF) 格式化块驱动器(硬盘驱动器或闪存驱动器)
      • 用于最大兼容性的 UDF 修订版 2.01
      • 前 4096 个扇区被清零以擦除任何现有的 MBR(正确的 UDF 检测所必需的)
    • 生成的文件系统可以跨多个操作系统系列(Windows、OS X 和 Linux)读取/写入
    • 在任何具有 Bash 环境的操作系统上运行

    由于最后一点,我写的这个脚本不能在 Windows 上使用。但是,该脚本将在 OS X 和 Linux 上运行。这样做之后,Windows 应该能够神奇地检测到新格式化的 UDF 驱动器。

    要直接回答发布的问题,format-udf 将:

    • 根据操作系统和环境选择合适的格式化工具(mkudffsLinux上)
    • 自动检测并填充格式化所需的所有参数(包括blocksize)
    • 最大限度地提高操作系统兼容性(有关兼容性图表,请参阅 GitHub 页面)
    • 产生询问者正在寻找的最大功能集(和最小限制)
    • 7
  3. Simon
    2009-10-09T14:28:00+08:002009-10-09T14:28:00+08:00

    您如何将您在上一个问题中的发现(UDF 文件系统应该在整个磁盘上创建,而不是在分区上创建)与那个 Windows 命令(“format x: /fs:UDF”)相协调?在我的尝试中,Windows 只为分区提供驱动器号。

    至于兼容性的格式化,我认为关键在于块大小。由于大多数硬盘驱动器和 USB 闪存棒的块大小为 512 字节,因此我在创建该块大小的 FS 时具有最大的兼容性。我认为 format.com 正在使用该块大小,而 mkudffs 有一个用于更改块大小的命令开关。当我使用 512 字节块时,我只能让 OS X 和 Windows 挂载文件系统。旧版本的 Linux 假定块大小为 2048,但您始终可以使用“-o bs=512”进行挂载。

    整个磁盘与分区问题仍然会导致兼容性问题。当我格式化整个磁盘时,Windows 不会挂载,而 OS X 在确定其文件系统时不会超出分区的类型编号,这迫使我手动挂载它。Linux 不在乎,只要我给它适当的设备名称(sda vs sda1)。

    总之,我发现最兼容的设置是类型为 06(FAT16)的单个分区,使用 UDF 格式化,块大小为 512。在 Windows 上自动运行,在 Linux 和 OS X 上进行少量手动干预。

    • 5

相关问题

  • 知道任何适用于 Windows 的快速可编写脚本的 ftp 客户端吗?[关闭]

  • 如果 Windows 服务崩溃,如何自动重新启动它?

  • 如何在笔记本电脑上使用 Tobit David?[关闭]

  • 无法安排任务(访问被拒绝)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve