Làm cách nào để ngăn chặn việc đánh số lại đĩa khi khởi động lại trong OS X?


12

Tôi có 3 ổ đĩa vật lý trong Mac Pro với Mac OS X 10.6.4. Thỉnh thoảng sau khi khởi động lại máy, việc đánh số đĩa thay đổi sao cho / dev / đĩa # không tham chiếu cùng ổ đĩa như trước khi khởi động lại.

Thí dụ

/dev/disk0 -> 64GB SSD drive
/dev/disk1 -> 640GB Hitachi
/dev/disk2 -> 160GB WD (BootCamp)

Sau khi khởi động lại, ánh xạ có thể là

/dev/disk0 -> 160GB WD (BootCamp)
/dev/disk1 -> 640GB Hitachi
/dev/disk2 -> 64GB SSD drive

Khó hiểu hơn nữa là việc ánh xạ lại không nhất quán. Đối với hầu hết các công cụ này là không liên quan. Tuy nhiên, tôi cũng đã cài đặt Parallels để cho phép truy cập vào phân vùng BootCamp từ bên trong OS X. Parallels sử dụng đường dẫn / dev / đĩa # trong tệp cấu hình của nó, vì vậy, sau khi khởi động lại OS XI, hãy khởi chạy Parallels và nó cho tôi biết rằng đĩa không còn tồn tại .

Có cách nào để bảo OS X luôn gán ổ đĩa đã cho cho / dev / đĩa0 không?


3
Điều này không nằm trong lĩnh vực chuyên môn của tôi, nhưng có thể làm gì với UUID âm lượng không?
fideli

@fideli: Đừng biết ... đó là những gì tôi cần sự giúp đỡ trường hợp.
Paul Alexander

Trong Linux, các đĩa có các liên kết tượng trưng như / dev / đĩa / by-uuid / [đĩa-uuid] không thay đổi ngay cả khi đánh số. Có lẽ OSX tương tự?
trời

Câu trả lời:


2

Theo như tôi hiểu thì MacOS không có khả năng đó, mặc dù để chạy song song, nó có thể không thực sự cần thiết.

sử dụng macports và cài đặt e2fspross với một bản vá nhỏ:

diff -r e2fsprogs-1.41.12/misc/Makefile e2fsprogs-1.41.12.patched/misc/Makefile
399c399
>       $(LIBEXT2FS) $(LIBCOM_ERR)
---
<       $(LIBEXT2FS)
401,402c401

bạn có thể sử dụng blkid -s UUID / dev / rdisk * để liệt kê các phân vùng, đĩa và nhận uuids tương ứng của chúng (đối với bất kỳ hệ thống tệp được hỗ trợ nào khá nhiều).

Sau đó, việc thêm một liên kết mềm với 'ln -s' hoặc tạo một nút thiết bị thay thế bằng mknod sẽ hoạt động (và sau đó tham chiếu thiết bị psudo- / clone từ Parallels). Tôi đã thực hiện các thủ thuật tương tự với Fusion, nhưng tôi chưa cài đặt Paralells ngay bây giờ (vì vậy tôi không thể kiểm tra)

stat -f "% Sr% Z" / dev / rdisk s cung cấp cho bạn bản đồ qua thiết bị đến chính, thứ yếu sẽ được sử dụng nếu tương tự không chấp nhận liên kết mềm với thiết bị.

có thể được sử dụng như trong ví dụ sau:

some@host:/e2fsprogs-1.41.12$ blkid -s UUID /dev/rdisk*s* 
/dev/rdisk0s1: UUID="76D6-1701" 
/dev/rdisk0s2: UUID="654F73AE51849687" 
/dev/rdisk1s1: UUID="51FC4E72-BFA9-4DBD-9A5C-0E5H731DB0ED" 
some@host:/e2fsprogs-1.41.12$ stat -f "%Sr %Z" /dev/rdisk*
rdisk0 14,0
rdisk0s1 14,1
rdisk0s2 14,2
rdisk1 14,3
rdisk1s1 14,4

# okay, UUID 51FC4E72-BFA9-4DBD-9A5C-0E5H731DB0ED is a partition
# on the disk we want to use. so we make a 'private' device node
# pointing to the device containing that partition.

some@host:/e2fsprogs-1.41.12$ sudo mknod /dev/pdisk1 b 14 3

# just a quick verify that the mknod worked as expected ...
some@host:/~$ sudo dd if=/dev/rdisk1  count=10 2>/dev/null | md5 
19d55b28485771bc80acdddbd1b45faf
some@host:/~$ sudo dd if=/dev/pdisk1  count=10 2>/dev/null | md5 
19d55b28485771bc80acdddbd1b45faf

Bây giờ, điều duy nhất còn lại là viết một tập lệnh và sử dụng các hướng dẫn trong http://support.apple.com/kb/HT2420?viewlocale=en_US để làm cho nó chạy khi khởi động.

Nhưng điều đó sẽ cho người khác kết thúc ...


Hey cảm ơn cho câu trả lời chi tiết. Đang thử mknodvới Fusion nhưng đưa ra lỗi ./vmware-rawdiskCreator create /dev/pdisk1 fullDevice ~/5tc ide Unable to create the source raw disk: The specified device is not a valid physical disk device (20).Bất kỳ manh mối nào? Chúc mừng
Alexandre G

Câu trả lời này rất hữu ích cho tôi cho cùng một vấn đề, nhưng với VMware Fusion. Thật không may sau đó, VMware dường như không thích đường dẫn thiết bị đĩa không chuẩn (trong tệp vmdk, tham chiếu đĩa / phân vùng). Trông giống như nó đang chuyển chúng đến các thư viện kiểu đĩa sử dụng, không biết phải làm gì với chúng. Rất gần ... Sự thay thế trong trường hợp của tôi có lẽ là lập trình lại tệp vmdk theo khám phá.
Tom

1

Tôi đã nghe những người Mac thông minh hơn tôi ngụ ý rằng việc đánh số đĩa có phần tùy ý và người ta không thể phụ thuộc vào cùng một thiết bị có cùng số sau khi khởi động lại. Nó đã được đề cập trong tài liệu tham khảo để tạo các lát RAID thông qua Diskutil trong Terminal.

Không có tiện ích cấp thấp nào tôi tìm thấy, như đĩautil, pdisk hoặc gpt, dường như có thể ảnh hưởng đến việc đánh số đĩa. Tôi sợ nó có thể không kiểm soát được.


1
Huh, tôi không nghĩ rằng câu trả lời là -1 xấu. Đôi khi câu trả lời là "bạn không thể làm điều đó."
Theo Belk

1

Để xem tên đường dẫn của tệp thiết bị ký tự cho các ổ đĩa trên đĩa cứng bên trong của bạn, hãy mở ứng dụng Terminal, nằm trong / Ứng dụng / Tiện ích. Nhập nội dung sau, theo sau là phím Trả về:

df

Bạn có thể thấy tên đường dẫn đầy đủ cho các tệp thiết bị ký tự cho các ổ đĩa hiện tại bằng cách mở Terminal, sau đó nhập (nhấn Return sau mỗi dòng):

cd /dev
ls -lias

Mỗi phân vùng (có hiển thị trong Finder hay không) trên mỗi ổ đĩa được gắn sẽ có hai tệp trong danh sách cho thư mục / dev. Tên của các tệp xác định cả thiết bị theo số và phân vùng trên thiết bị theo số của thiết bị. Bạn có thể phải cuộn một chút trong cửa sổ Terminal để tìm các tệp.


0

Cố gắng thêm các mục vào bạn /etc/fstab.

An /etc/fstab example:

# Identifier, mount point, fs type, options1
UUID=DF000C7E-AE0C-3B15-B730-DFD2EF15CB91 /export ufs ro
UUID=FAB060E9-79F7-33FF-BE85-E1D3ABD3EDEA none hfs rw,noauto
LABEL=This40Is40The40Volume40Name none msdos ro

Mã định danh được sử dụng để xác định âm lượng; LABEL là tên âm lượng, UUID là Ổ đĩa nhận dạng duy nhất phổ quát. Bạn có thể sử dụng cả hai, nhưng UUID là lựa chọn tốt nhất vì đổi tên âm lượng sẽ không thay đổi định danh này.

Từ http://macosx.com/forums/mac-os-x-system-mac-software/314314-stop-disk-unmounting-automounting.html


Điều này chỉ thay đổi nơi ổ đĩa được gắn kết trong thư mục / Tập. Nó không có bất kỳ ảnh hưởng nào đến nó / dev / đĩa ??? phân công.
Paul Alexander

0

Số lượng ổ đĩa được dựa trên khi thiết bị vật lý được liệt kê trong khi khởi động. Điều này cũng đã xảy ra với tôi trên Windows. Tôi đã xem xét lâu và khó để giải quyết vấn đề này và tôi không tìm thấy. Tôi đã có thể nhận được các đĩa theo thứ tự "chính xác" khi tôi chuyển đổi cáp SATA, nhưng đây chỉ là một sửa chữa tạm thời. Trong trường hợp của bạn, vì Parallels phụ thuộc vào việc đánh số đĩa cho một đường dẫn, tốt nhất nên tạo một tập lệnh để cập nhật tệp cấu hình đó khi khởi động.


0

Tôi đã gặp vấn đề này trước đây, họ thường thay đổi sau khi tôi thực hiện cập nhật hoặc cài đặt một cái gì đó, nhưng trở lại đánh số ban đầu sau khi khởi động lại lần thứ hai. Điều này rõ ràng không lý tưởng, nhưng dường như có tác dụng với tôi ...

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.