Apa jenis partisi id / sistem file untuk UDF?

10

Ini mungkin sepele untuk memeriksa menggunakan cfdisk pada CD / DVD / Blu-Ray berformat UDF, tetapi saya tidak memiliki keduanya.

Saya telah membuat partisi berformat UDF pada hard drive USB untuk berbagi data antara Linux dan komputer Windows (FAT tidak menangani file 4GB, dukungan hak akses NTFS tidak stabil di Linux). Saya hanya memiliki satu masalah sekarang - Windows menolak untuk me-mount partisi karena id jenis sistem file diatur ke '83' ('Linux'). Saya telah melihat cukup luas dan tidak dapat menemukan nomor apa yang harus saya taruh di sana?

(tindak lanjut: " Dengan alat apa saya harus memformat hard drive sebagai UDF? ")

skolima
sumber
2
Saya tidak berpikir bahwa Anda akan mendapatkan hasil yang berarti dari mengeksekusi cfdisk pada CD, DVD atau Blu-Ray. Partisi diatur oleh beberapa byte MBR, yang kebetulan ada di harddisk dan pen drive, bukan di disket atau media optik.
Juliano

Jawaban:

9

Jawabannya adalah tipe partisi 06 (FAT16). Jangan tanya kenapa, tanyakan Microsoft.


sumber
5+ tahun kemudian, jawaban sederhana ini sangat membantu saya. Terima kasih "user48160" siapa pun dan di mana pun Anda berada sekarang!
JakeGould
6

Ternyata tidak ada tabel partisi untuk UDF dan tidak ada ID partisi yang ditetapkan untuknya. Sistem file ini harus menjangkau seluruh disk agar dapat dikenali oleh Windows. Memformat hard drive karena UDF tidak menyentuh tabel partisi yang ada (hati-hati - ini akan berisi informasi basi, dan jika Anda memasang drive Anda menggunakannya, Anda akan menghancurkan data!).

Sebagai rasa ingin tahu - UDF 2.5 dan yang lebih baru membuat partisi terpisah (satu atau dua per disk) untuk metadata. Namun, partisi tersebut juga tidak terlihat di tabel partisi DOS standar.

skolima
sumber
1
Hanya diformat sebagai UDF salah satu partisi logis (MBR) pada hard drive saya dan Windows 7 tidak punya masalah dengan itu
MarcH
@ MarkH: jadi apa ID partisi yang dimiliki Windows atau beberapa alat melaporkan bahwa partisi itu? (kesulitan untuk merumuskan pertanyaan, maaf jika itu sakit terbentuk)
ata
@ Joaco gulir ke bawah untuk jawabannya. Atau lihat BOOTICE.
MarcH
Beberapa alat partisi memungkinkan Anda membuat partisi tanpa sistem file. Persis apa yang Anda butuhkan untuk menetapkan huruf drive di Windows dan kemudian UDF memformatnya.
DanMan
3

Jawaban singkat: Saya akan menyarankan untuk menggunakan MBR id 0x07 untuk partisi UDF.


Jawaban panjang:

Linux tidak peduli tentang id partisi MBR dan mengabaikannya (*).

Windows 2000 dan yang lebih baru dapat menetapkan huruf drive ke beberapa partisi dengan id PartitionType jika dan hanya jika IsRecognizedPartition (PartitionType) benar. Selain itu untuk partisi non-FT harus berpendapat bahwa IsFTPartition (PartitionType) salah (jika tidak partisi tersebut terdeteksi sebagai FT dan bukan FAT / NTFS / UDF / ...).

Kondisi IsRecognizedPartition (PartitionType) &&! IsFTPartition (PartitionType) berlaku untuk id partisi MBR ini: 0x01, 0x04, 0x06, 0x07, 0x0B, 0x0C, 0x0E (**). Yang berarti bahwa Windows 2000 (dan baru) dapat mengenali dan menggunakan partisi UDF jika id partisi MBR adalah salah satunya. Mungkin tidak ada batasan lain dan sistem file yang didukung menerima partisi dengan id MBR tersebut. Yang berarti id MBR tersebut tidak digunakan untuk mendeteksi sistem file.

Tetapi ada beberapa rekomendasi oleh Microsoft ketika PartitionType tertentu harus digunakan:

  • 0x01 - Partisi primer atau drive logis FAT12 (volume kurang dari 32.680 sektor)
  • 0x04 - Partisi FAT16 atau drive logis (32.680–65.535 sektor atau 16 MB – 33 MB)
  • 0x06 - Partisi BIGDOS FAT16 atau drive logis (33 MB – 4 GB)
  • 0x07 - Sistem File yang Dapat Diinstal (partisi NTFS atau drive logis)
  • 0x0B - Partisi FAT32 atau drive logis
  • 0x0C - Partisi FAT32 atau drive logis menggunakan ekstensi BIOS INT 13h (***)
  • 0x0E - Partisi BIGDOS FAT16 atau drive logis menggunakan ekstensi BIOS INT 13h (***)

Dan juga arti dari Microsoft:

  • 0x01 - Menentukan partisi dengan entri FAT 12-bit.
  • 0x04 - Menentukan partisi dengan entri FAT 16-bit.
  • 0x06 - Menentukan partisi besar MS-DOS V4.
  • 0x07 - Menentukan partisi IFS.
  • 0x0B - Menentukan partisi FAT32.
  • 0x0C - Windows 95/98: Menentukan partisi yang menggunakan layanan INT 13 yang diperluas.

Di Wikipedia dapat ditemukan juga beberapa rekomendasi:

  • 0x01 - CHS / LBA - DOS 2.0+ - FAT12 sebagai partisi utama dalam fisik pertama 32 MB disk ... (selain itu gunakan 0x06 sebagai gantinya)
  • 0x04 - CHS / LBA - DOS 3.0+ - FAT16 dengan kurang dari 65536 sektor (32 MB) ... (selain itu gunakan 0x06 sebagai gantinya)
  • 0x06 - CHS / LBA - DOS 3.31+ - FAT16B dengan 65536 atau lebih sektor. Itu harus berada di disk fisik 8 GB pertama ... (selain itu gunakan 0x0E sebagai gantinya). Juga digunakan untuk volume FAT12 dan FAT16 di partisi primer jika mereka tidak berada di disk fisik 32 MB pertama.
  • 0x07 - CHS / LBA - OS / 2 1.2+, Windows NT / CE - IFS / HPFS / NTFS / exFAT / QNX
  • 0x0B - CHS / LBA - DOS 7.1+ - FAT32 dengan pengalamatan CHS
  • 0x0C - LBA - DOS 7.1+ - FAT32 dengan LBA
  • 0x0E - LBA - DOS 7.0+ - FAT16B dengan LBA

Untuk melengkapi daftar id, berikut adalah beberapa informasi tentang sistem lama yang tidak mendukung partisi hard disk berformat UDF.

Windows NT 4.0 dan yang lebih lama dapat menetapkan huruf pengandar hanya untuk partisi dengan MBR id: 0x01, 0x04, 0x06, 0x07.

Windows berbasis DOS (95, 98 dan ME) dapat menetapkan huruf drive hanya untuk partisi dengan id MBR: 0x01, 0x04, 0x06, 0x0B, 0x0C, 0x0E. MS-DOS sendiri hanya dapat mengakses partisi dengan id MBR: 0x01, 0x04, 0x06. Perhatikan bahwa sistem ini menggunakan id partisi MBR untuk mendeteksi sistem file. ID partisi MBR harus cocok dengan sistem file pada partisi.

Kesimpulan:

Lihatlah ukuran partisi: 0x01 dan 0x04 harus digunakan hanya untuk partisi dalam disk 32MB pertama. 0x06 hanya pada 8GB disk pertama. 0x0B untuk pengalamatan CHS yang memiliki batas untuk disk 8GB. Jadi tanpa batasan seperti itu hanya id: 0x07, 0x0C dan 0x0E. Karena 0x0C dan 0x0E digunakan untuk partisi FAT, saya sarankan untuk memilih 0x07 . Ini berarti untuk partisi IFS (Installable File System) dan menurut Wikipedia, Microsoft menambahkan dukungan untuk UDF ke dalam Windows 2000 IFS API. Penggunaan 0x0C atau 0x0E akan menyebabkan sistem berbasis DOS untuk menunjukkan partisi itu sebagai FAT, bahkan itu akan diformat sebagai UDF. Partisi dengan MBR id 0x07 disembunyikan di sistem itu. Mereka tidak mendukung UDF, oleh karena itu pilihan yang lebih baik adalah 0x0C atau 0x0E.

GPT:

Layout partisi GPT keluar dari pertanyaan ini, tetapi memiliki masalah yang sama seperti MBR. Tidak ada GUID partisi (setara GPT untuk MBR id) yang ditetapkan untuk UDF. Karena Windows XP x64 mendukung UDF dan dapat mengenali partisi data GPT hanya dengan GUID EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (Partisi Data Dasar Microsoft), itu adalah satu-satunya pilihan yang mungkin untuk GPT.

Sumber:

(*) Ada satu pengecualian: MBR Id 0x05, 0x0F dan 0x85 digunakan untuk mendeteksi partisi MBR yang diperluas.
(**) Definisi kedua panggilan tersebut dapat ditemukan dalam file WinIoCtl.h karena dinyatakan sebagai makro C.
(***) Ekstensi BIOS INT 13h berarti penggunaan LBA sebagai ganti CHS.

Pali
sumber
Halaman ini menunjukkan bahwa partisi 0x0E harus lebih kecil dari 2 GiB. Yang berarti untuk UDF, harus 0x07 atau 0x0C. Yang terakhir terdengar lebih baik bagi saya, terutama ketika Anda membaca halaman yang ditautkan. Penelitian yang mengesankan, tutup!
Milind R
2

Pada CD dan DVD yang saya tangani, tidak ada tabel partisi. Di hard drive USB Anda, Anda telah menulis tabel partisi ke media. Saya menduga jika Anda memformat seluruh drive sebagai disk UDF tanpa tabel partisi, Windows tidak akan memiliki masalah untuk memasangnya.

Anda tidak mengatakan berapa ukuran USB drive Anda, dan Anda mungkin enggan mendedikasikan seluruh drive sebagai UDF, Anda dapat mencoba mengatur tipe partisi dengan fdisk sebagai NTFS atau salah satu dari tipe MS 'didukung' lainnya.

codeDr
sumber
Saya juga mem-boot Linux dari drive yang sama, jadi saya perlu satu partisi dengan format yang didukung oleh grub. Saya baru tahu bahwa grub2 (percobaan) dapat mem-boot Linux dari UDF, jadi saya akan coba ini.
skolima
0

Saya punya masalah yang sama. Hard disk USB saya adalah 320GB. Tabel partisi terlihat seperti ini:

Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x44fdfe06

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       27963   224612766    c  W95 FAT32 (LBA)
/dev/sda2           27964       38913    87955875    5  Extended
/dev/sda5           27964       33366    43399566    7  HPFS/NTFS
/dev/sda6           33367       38913    44556246   83  Linux

Partisi sda5 adalah rev UDF. 1,5 dan shoulb dapat dibaca oleh Windows XP dan di atasnya. Linux tentu saja membacanya dengan benar. Namun Windows bingung. Ia mengenali partisi sebagai NTFS dan kemudian menganggapnya sebagai partisi mentah.

Eksperimen saya dengan UDF pada pendrive menunjukkan bahwa sistem cenderung mengira UDF dengan FAT. Mereka menafsirkan UDF sebagai FAT. Itu harus kesamaan yang cukup besar karena saya bisa melihat struktur direktori karakter acak. Linux mengatakan bahwa disk rusak tetapi tidak menolak untuk menggunakannya.

Saya pikir UDF (setidaknya rev 1.5) tidak didukung dengan baik pada drive USB.


sumber
1
Jika media dulu memiliki FAT, mungkin masih ada yang menyebabkan UDF menjadi bingung dengan FAT. Anda harus memastikan FAT dihapus / di-zeroed sebelum memformat dengan UDF.
osvein