Làm cách nào để truy cập đúng phần mềm Windows RAID 0?


12

Tôi là một người dùng Ubuntu mới với bản cài đặt mới và rất háo hức để bắt đầu với nó. Tuy nhiên, tất cả dữ liệu quan trọng của tôi là trên mảng RAID 0 của phần mềm Windows và tôi cần dữ liệu đó để ở đó vì tôi cũng khởi động kép Windows. Tôi cần quyền truy cập vào dữ liệu này trên Ubuntu và thực sự không thể thực hiện được bất cứ điều gì thực sự cho đến khi tôi có quyền truy cập.

Tôi đã nghiên cứu chủ đề này tốt nhất có thể, và tôi đã tìm được một bài viết rất hữu ích:

Bài đăng mô tả cách tải Ubuntu để xem mảng Windows RAID 0 được tạo thành từ hai ổ đĩa. Lệnh chính được sử dụng là sudo mdadm --build /dev/md0 --chunk=64 --level=0 --raid-devices=2 /dev/sdd2 /dev/sdc2. Theo người dùng đó và các áp phích khác trong chuỗi, nó thực sự hoạt động. Thật tuyệt.

Tôi chưa thử làm theo các hướng dẫn này. Tại sao? Bài đăng bao gồm một cảnh báo về cách bạn không được viết cho nó nếu bạn nhập sai kích thước khối; thật dễ hiểu khi điều đó có thể gây ra vấn đề. Mối quan tâm của tôi là thiết lập của tôi khác với ví dụ của họ và tôi không chắc chắn rằng các lệnh nên được nhập chính xác giống nhau cho thiết lập của tôi. Tôi sợ phá vỡ nó bằng cách làm sai, và do đó mong muốn nhận được lời khuyên của ai đó có kinh nghiệm hơn.

Đây là cách thiết lập của tôi khác với ví dụ của họ:

  1. Tôi có ba ổ 1 TB, không phải hai ổ (với bất kỳ kích thước nào họ đã sử dụng).
  2. Tôi có hai phân vùng RAID 0 trải rộng trên ba ổ đĩa đó: một ổ 500 GB và 2,3 TB. Điều này có nghĩa là tôi KHÔNG cần sử dụng các đĩa đầy đủ khi tạo mảng RAID, mà thay vào đó chỉ sử dụng một phần của chúng.
  3. Tôi đã sử dụng kích thước khối không mặc định cho ít nhất một trong các phân vùng RAID 0 của mình khi tôi thiết lập chúng cách đây nhiều năm. Tôi không biết kích thước khối này có giống với kích thước khối mà họ đề cập hay không. Phân vùng 500 GB của tôi có kích thước khối là 4 kb (4096 byte mỗi cụm) và phân vùng 2,3 TB của tôi có kích thước khối là 64 kb (65536 byte mỗi cụm).

Đầu ra có liên quan từ sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL(chỉ cho ba ổ RAID0) là:

NAME   FSTYPE   SIZE MOUNTPOINT            LABEL
sdb           931.5G            
├─sdb1            1M            
├─sdb2          127M            
└─sdb3        931.4G            
sdc           931.5G            
├─sdc1            1M            
├─sdc2          127M            
└─sdc3        931.4G            
sdd           931.5G            
├─sdd1        166.7G            
└─sdd2        764.7G 

Đầu ra có liên quan từ cat /proc/partitions(chỉ cho ba ổ RAID0) là:

8       16  976762584 sdb
8       17       1024 sdb1
8       18     130048 sdb2
8       19  976631478 sdb3
8       32  976762584 sdc
8       33       1024 sdc1
8       34     130048 sdc2
8       35  976631478 sdc3
8       48  976762584 sdd
8       49  174763008 sdd1
8       50  801865728 sdd2

Chương trình "Đĩa" trong Ubuntu hiển thị các phân vùng sau cho các ổ đĩa của tôi:

/dev/sdb:   GUID Partition Table .
/dev/sdb1:  1.0 MB, Microsoft LDM metadata.
/dev/sdb2:  133 MB, Microsoft Reserved.
/dev/sdb3:  1.0 TB, Microsoft LDM data.
/dev/sdc:   GUID Partition Table partitioning.
/dev/sdc1:  1.0 MB, Microsoft LDM metadata.
/dev/sdc2:  133 MB, Microsoft Reserved.
/dev/sdc3:  1.0 TB, Microsoft LDM data.
/dev/sdd:   Master Boot Record partitioning.
/dev/sdd1:  179 GB, Unknown.
/dev/sdd2:  821 GB, Unknown.
/dev/sdd:   136 MB, Unallocated space.

Tôi hy vọng tôi đã cung cấp đủ thông tin ở đây. Vì vậy, bây giờ, câu hỏi của tôi là: lệnh thích hợp để tôi nhập với thiết lập của mình là gì, để tôi có thể truy cập cả hai phân vùng Windows RAID 0 từ Ubuntu?

Cảm ơn bạn rất nhiều trước.

Câu trả lời:


16

Cuối cùng tôi cũng đã làm được điều này nhờ vào bài đăng Stack Overflow này: Khôi phục Windows Spned Disks (LDM) với Linux?

Rất khó để phát hiện ra thông tin khó nắm bắt này. Phải mất nhiều ngày tìm kiếm và tôi đoán rằng tôi đã không tìm thấy nó vì bài đăng không đề cập đến RAID, vì vậy nó không xuất hiện trong kết quả tìm kiếm của tôi. Nó chắc chắn hoạt động cho phần mềm Windows 0 RAID của tôi, mặc dù.

Giải pháp:

Giải pháp thực sự khá đơn giản. Có một công cụ tuyệt vời được chế tạo riêng cho mục đích này, được gọi là ldmtool. Nó có khả năng đọc và làm việc với các đĩa động Windows sử dụng LDM (Logical Disk Manager). Nó không được cài đặt theo mặc định, nhưng được bao gồm trong kho Ubuntu. Tất cả tôi phải làm là thực hiện hai lệnh:

sudo apt-get install ldmtool
sudo ldmtool create all

Lệnh đầu tiên cài đặt ldmtoolvà lệnh thứ hai tự động tạo ánh xạ thiết bị cho tất cả các đĩa động Windows được kết nối. Các ánh xạ này được đặt trong /dev/mapper/và có thể được gắn thủ công mount -t ntfs /dev/mapper/mapfilename, nhưng tôi không cần phải làm điều đó - Ubuntu tự động gắn chúng cho tôi sau khi tôi chạy hai lệnh trên. Đó là tất cả những gì tôi phải làm và tôi có thể truy cập chúng ngay lập tức từ trình duyệt tệp!

Bài đăng được liên kết bao gồm một gợi ý để thực hiện điều này tự động mỗi khi khởi động. Chỉ cần mở tệp /etc/init/mountall.confvà thêm dòng [ -x /usr/bin/ldmtool ] && ldmtool create all >/dev/null || truengay trước exec mountall ...dòng gần cuối tệp.

Tín dụng đầy đủ cho giải pháp này được gửi đến Christian Hudon, người đã đăng nó như một câu trả lời trên Stack Overflow. Cảm ơn!

Để thêm một số thông tin vào đây, tôi đã sử dụng một số ldmtoollệnh khác để truy vấn khối lượng của mình để biết thông tin:

sudo ldmtool scan /dev/sdd
[
  "e856a65f-e558-11e1-ae19-bc5ff435f790"
]

sudo ldmtool show diskgroup e856a65f-e558-11e1-ae19-bc5ff435f790
{
  "name" : "Dan-PC-Dg0",
  "guid" : "e856a65f-e558-11e1-ae19-bc5ff435f790",
  "volumes" : [
    "Volume1",
    "Volume2"
  ],
  "disks" : [
    "Disk1",
    "Disk2",
    "Disk3"
  ]
}

sudo ldmtool show volume e856a65f-e558-11e1-ae19-bc5ff435f790 Volume1
{
  "name" : "Volume1",
  "type" : "striped",
  "size" : 1048578048,
  "chunk-size" : 128,
  "hint" : "D:",
  "partitions" : [
    "Disk1-01",
    "Disk2-01",
    "Disk3-01"
  ]
}

sudo ldmtool show volume e856a65f-e558-11e1-ae19-bc5ff435f790 Volume2
{
  "name" : "Volume2",
  "type" : "striped",
  "size" : 4811194368,
  "chunk-size" : 128,
  "hint" : "E:",
  "partitions" : [
    "Disk1-02",
    "Disk2-02",
    "Disk3-02"
  ]
}

Không cần thiết phải chạy các lệnh trên, cũng như ldmtool create alltất cả các công việc cần thiết để tạo ánh xạ. Tôi chỉ đưa chúng vào vì tôi đã bao gồm thông tin về thiết lập của mình trong câu hỏi, vì vậy thông tin này có thể hữu ích cho bất kỳ ai đi qua bài đăng này sau. Cụ thể, chúng ta có thể thấy rằng theo ldmtoolcả hai khối lượng động của tôi đều sử dụng kích thước khối 128, mặc dù được tạo với các kích thước khối khác nhau trong Windows. Tôi đoán điều này có nghĩa là kích thước khối và kích thước khối không phải là thuật ngữ đồng nghĩa. Các lệnh ldmtool show diskldmtool show partitioncó thể được sử dụng để hiển thị thêm thông tin.


Giải pháp 5 tuổi vẫn hoạt động trong Ubuntu 18. Cảm ơn.
Khủng hoảng

2

Ubuntu 14.04 LTS mount raid 1 được tạo bởi windows 7 bằng cách sử dụng ldmtool bởi một người mới. ** **

Tôi đã từng gặp vấn đề tương tự. Sử dụng câu trả lời ở trên, tôi đã may mắn và được gắn kết với

gksu gedit /etc/init/mountall.conf 

bằng cách thay đổi dòng

 [ -x /usr/bin/ldmtool ] && ldmtool create all >/dev/null || true

đến

/bin/ldmtool create all >/dev/null || true

sau đó thêm vào

/bin/mount /dev/mapper/ldm_vol_NAME-Dg0_volume1 /media/WHEREVER

Bây giờ mountall.conf của tôi trông như thế này

     **fi
/usr/bin/ldmtool create all >/dev/null || true
/bin/mount -o rw /dev/mapper/ldm_vol_OCTO-CORE-Dg0_Volume1 /media/m
    exec mountall --daemon $force_fsck $fsck_fix $debug_arg
end script**

trước đây tôi có một kịch bản để làm tương tự với 2 dòng

/usr/bin/ldmtool create all >/dev/null || true

/bin/mount -o rw /dev/mapper/ldm_vol_OCTO-CORE-Dg0_Volume1 /media/m

và thêm

sh /home/ron/mirror to the end of /etc/rc.local 

bây giờ nó được gắn kết khi Ubuntu khởi động

Tôi không biết rằng điều này sẽ làm việc cho bạn!


2

Các câu trả lời khác chỉ hoạt động một phần trong Mint 18.3.

Việc tự động gắn các ổ Raid0 khó khăn hơn một chút vì chỉnh sửa /etc/init/mountall.confkhông bao giờ hoạt động trong hệ thống của tôi và tôi muốn có thể gắn âm lượng được kéo dài bằng cách sử dụng một định nghĩa /etc/fstabvà không sử dụng tập lệnh /etc/rc.local.

Vì vậy, đây là những gì tôi đã làm:

sudo apt-get install ldmtool

Đã kiểm tra rằng âm lượng đã được nhận ra và có thể được gắn chính xác với:

sudo ldmtool create all

Biết rằng hệ thống của tôi có thể nhìn và ghi vào các ổ đĩa. Tôi đã tạo một dịch vụ (theo hướng dẫn từ trang web này :( https://wiki.archlinux.org/index.php/Docate_Disks )

đã tạo một tệp etc/systemd/system/được gọi ldmtool.servicevới mô tả của dịch vụ:

[Unit]
Description=Windows Dynamic Disk Mount
Before=local-fs-pre.target
DefaultDependencies=no
[Service]
Type=simple
User=root
ExecStart=/usr/bin/ldmtool create all
[Install]
WantedBy=local-fs-pre.target

Để kích hoạt dịch vụ khi khởi động:

sudo systemctl is-enabled ldmtool

Để tìm UUID của âm lượng được sử dụng:

sudo blkid

Cung cấp cho tôi thông tin sau: /dev/mapper/ldm_vol_XXX-Dg0_Volume1: LABEL="6TB_Raid" UUID="0A281FC6281FAFA5" TYPE="ntfs"

Vì vậy, tôi đã tạo ra một dòng trong /etc/fstabđó đọc:

UUID=0A281FC6281FAFA5 /media/6TB_Raid ntfs-3g  auto,users,uid=1000,gid=100,dmask=027,fmask=137,utf8  0  0

Âm lượng là có mỗi khi tôi khởi động.

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.